commit c027a474a68065391c8773f6e83ed5412657e369 Author: Oleg Nesterov Date: Sat Jul 30 16:35:02 2011 +0200 oom: task->mm == NULL doesn't mean the memory was freed exit_mm() sets ->mm == NULL then it does mmput()->exit_mmap() which frees the memory. However select_bad_process() checks ->mm != NULL before TIF_MEMDIE, so it continues to kill other tasks even if we have the oom-killed task freeing its memory. Change select_bad_process() to check ->mm after TIF_MEMDIE, but skip the tasks which have already passed exit_notify() to ensure a zombie with TIF_MEMDIE set can't block oom-killer. Alternatively we could probably clear TIF_MEMDIE after exit_mmap(). Signed-off-by: Oleg Nesterov Reviewed-by: KOSAKI Motohiro Signed-off-by: Linus Torvalds commit cfe22345ad5ef29e192e157fdc3e17d357e4bc24 Merge: 60ad446 424c3d4 Author: Linus Torvalds Date: Mon Aug 1 14:05:46 2011 -1000 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: (23 commits) regulator: Improve WM831x DVS VSEL selection algorithm regulator: Bootstrap wm831x DVS VSEL value from ON VSEL if not already set regulator: Set up GPIO for WM831x VSEL before enabling VSEL mode regulator: Add EPEs to the MODULE_ALIAS() for wm831x-dcdc regulator: Fix WM831x DCDC DVS VSEL bootstrapping regulator: Fix WM831x regulator ID lookups for multiple WM831xs regulator: Fix argument format type errors in error prints regulator: Fix memory leak in set_machine_constraints() error paths regulator: Make core more chatty about some errors regulator: tps65910: Fix array access out of bounds bug regulator: tps65910: Add missing breaks in switch/case regulator: tps65910: Fix a memory leak in tps65910_probe error path regulator: TWL: Remove entry of RES_ID for 6030 macros ASoC: tlv320aic3x: Add correct hw registers to Line1 cross connect muxes regulator: Add basic per consumer debugfs regulator: Add rdev_crit() macro regulator: Refactor supply implementation to work as regular consumers regulator: Include the device name in the microamps_requested_ file regulator: Increase the limit on sysfs file names regulator: Properly register dummy regulator driver ... commit 60ad4466821a96913a9b567115e194ed1087c2d7 Merge: 1b8e949 79a77c5 Author: Linus Torvalds Date: Mon Aug 1 13:56:03 2011 -1000 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (60 commits) ext4: prevent memory leaks from ext4_mb_init_backend() on error path ext4: use EXT4_BAD_INO for buddy cache to avoid colliding with valid inode # ext4: use ext4_msg() instead of printk in mballoc ext4: use ext4_kvzalloc()/ext4_kvmalloc() for s_group_desc and s_group_info ext4: introduce ext4_kvmalloc(), ext4_kzalloc(), and ext4_kvfree() ext4: use the correct error exit path in ext4_init_inode_table() ext4: add missing kfree() on error return path in add_new_gdb() ext4: change umode_t in tracepoint headers to be an explicit __u16 ext4: fix races in ext4_sync_parent() ext4: Fix overflow caused by missing cast in ext4_fallocate() ext4: add action of moving index in ext4_ext_rm_idx for Punch Hole ext4: simplify parameters of reserve_backup_gdb() ext4: simplify parameters of add_new_gdb() ext4: remove lock_buffer in bclean() and setup_new_group_blocks() ext4: simplify journal handling in setup_new_group_blocks() ext4: let setup_new_group_blocks() set multiple bits at a time ext4: fix a typo in ext4_group_extend() ext4: let ext4_group_add_blocks() handle 0 blocks quickly ext4: let ext4_group_add_blocks() return an error code ext4: rename ext4_add_groupblocks() to ext4_group_add_blocks() ... Fix up conflict in fs/ext4/inode.c: commit aacfc19c626e ("fs: simplify the blockdev_direct_IO prototype") had changed the ext4_ind_direct_IO() function for the new simplified calling convention, while commit dae1e52cb126 ("ext4: move ext4_ind_* functions from inode.c to indirect.c") moved the function to another file. commit 1b8e94993c4752d98c33903aa836acc15f7e6d5c Merge: 12ff47e 206d440 Author: Linus Torvalds Date: Mon Aug 1 13:48:31 2011 -1000 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: xfs: Fix build breakage in xfs_iops.c when CONFIG_FS_POSIX_ACL is not set VFS: Reorganise shrink_dcache_for_umount_subtree() after demise of dcache_lock VFS: Remove dentry->d_lock locking from shrink_dcache_for_umount_subtree() VFS: Remove detached-dentry counter from shrink_dcache_for_umount_subtree() switch posix_acl_chmod() to umode_t switch posix_acl_from_mode() to umode_t switch posix_acl_equiv_mode() to umode_t * switch posix_acl_create() to umode_t * block: initialise bd_super in bdget() vfs: avoid call to inode_lru_list_del() if possible vfs: avoid taking inode_hash_lock on pipes and sockets vfs: conditionally call inode_wb_list_del() VFS: Fix automount for negative autofs dentries Btrfs: load the key from the dir item in readdir into a fake dentry devtmpfs: missing initialialization in never-hit case hppfs: missing include commit 12ff47e7f5fb64c566f62e6cf6a3b291c51bd337 Merge: 73bcbac 1ae105a Author: Linus Torvalds Date: Mon Aug 1 13:46:37 2011 -1000 Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (37 commits) Improve slave/cyclic DMA engine documentation dmaengine: pl08x: handle the rest of enums in pl08x_width DMA: PL08x: cleanup selection of burst size DMA: PL08x: avoid recalculating cctl at each prepare DMA: PL08x: cleanup selection of buswidth DMA: PL08x: constify plchan->cd and plat->slave_channels DMA: PL08x: separately store source/destination cctl DMA: PL08x: separately store source/destination slave address DMA: PL08x: clean up LLI debugging DMA: PL08x: select LLI bus only once per LLI setup DMA: PL08x: remove unused constants ARM: mxs-dma: reset after disable channel dma: intel_mid_dma: remove redundant pci_set_drvdata calls dma: mxs-dma: fix unterminated platform_device_id table dmaengine: pl330: make platform data optional dmaengine: imx-sdma: return proper error if kzalloc fails pch_dma: Fix CTL register access issue dmaengine: mxs-dma: skip request_irq for NO_IRQ dmaengine/coh901318: fix slave submission semantics dmaengine/ste_dma40: allow memory buswidth/burst to be configured ... Fix trivial whitespace conflict in drivers/dma/mv_xor.c commit 73bcbac130a59f236ae78ed70ef7a05b45caa19e Merge: a2d7730 badc144 Author: Linus Torvalds Date: Mon Aug 1 13:41:43 2011 -1000 Merge branch 'gpiolib' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'gpiolib' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] Hook up gpiolib support commit a2d773023552f68baa2db2226dfd6d761c0df5da Merge: 72f9adf 7644c16 Author: Linus Torvalds Date: Mon Aug 1 13:40:51 2011 -1000 Merge branch 'pstore-efi' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'pstore-efi' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: efivars: Introduce PSTORE_EFI_ATTRIBUTES efivars: Use string functions in pstore_write efivars: introduce utf16_strncmp efivars: String functions efi: Add support for using efivars as a pstore backend pstore: Allow the user to explicitly choose a backend pstore: Make "part" unsigned pstore: Add extra context for writes and erases pstore: Extend API for more flexibility in new backends commit 72f9adfd20e3be8a33ff3ef96cec787ed97b9ba9 Merge: 5f66d2b 37f86b4 Author: Linus Torvalds Date: Mon Aug 1 13:39:40 2011 -1000 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb: kdb,kgdb: Allow arbitrary kgdb magic knock sequences kdb: Remove all references to DOING_KGDB2 kdb,kgdb: Implement switch and pass buffer from kdb -> gdb kdb: cleanup unused variables missed in the original kdb merge commit 79a77c5ac34cc27ccbfbdf7113b41cdd93534eab Author: Yu Jian Date: Mon Aug 1 17:41:46 2011 -0400 ext4: prevent memory leaks from ext4_mb_init_backend() on error path In ext4_mb_init(), if the s_locality_group allocation fails it will currently cause the allocations made in ext4_mb_init_backend() to be leaked. Moving the ext4_mb_init_backend() allocation after the s_locality_group allocation avoids that problem. Signed-off-by: Yu Jian Signed-off-by: Andreas Dilger Signed-off-by: "Theodore Ts'o" commit 48e6061bf4bb25eec151b91f22fd90a5b9a4920a Author: Yu Jian Date: Mon Aug 1 17:41:39 2011 -0400 ext4: use EXT4_BAD_INO for buddy cache to avoid colliding with valid inode # Signed-off-by: Yu Jian Signed-off-by: Andreas Dilger Signed-off-by: "Theodore Ts'o" commit 9d8b9ec44234b2f6e0225300632d250210c04f11 Author: Theodore Ts'o Date: Mon Aug 1 17:41:35 2011 -0400 ext4: use ext4_msg() instead of printk in mballoc Signed-off-by: "Theodore Ts'o" commit 37f86b469d73fc2f2a925536fb99b8f513f641b7 Author: Jason Wessel Date: Tue May 24 10:43:06 2011 -0500 kdb,kgdb: Allow arbitrary kgdb magic knock sequences The first packet that gdb sends when the kernel is in kdb mode seems to change with every release of gdb. Instead of continuing to add many different gdb packets, change kdb to automatically look for any thing that looks like a gdb packet. Example 1 cold start test: echo g > /proc/sysrq-trigger $D#44+ Example 2 cold start test: echo g > /proc/sysrq-trigger $3#33 The second one should re-enter kdb's shell right away and is purely a test. Signed-off-by: Jason Wessel commit d613d828e8987a1f794378022f900b454fa95403 Author: Jason Wessel Date: Mon May 23 13:22:54 2011 -0500 kdb: Remove all references to DOING_KGDB2 The DOING_KGDB2 was originally a state variable for one of the two ways to automatically transition from kdb to kgdb. Purge all these variables and just use one single state for the transition. Signed-off-by: Jason Wessel commit f679c4985bb2e7de9d39a5d40b6031361c4ad861 Author: Jason Wessel Date: Mon May 23 13:17:41 2011 -0500 kdb,kgdb: Implement switch and pass buffer from kdb -> gdb When switching from kdb mode to kgdb mode packets were getting lost depending on the size of the fifo queue of the serial chip. When gdb initially connects if it is in kdb mode it should entirely send any character buffer over to the gdbstub when switching connections. Previously kdb was zero'ing out the character buffer and this could lead to gdb failing to connect at all, or a lengthy pause could occur on the initial connect. Signed-off-by: Jason Wessel commit 3bdb65ec95e6cccffc40102d7c003047c45da90c Author: Jason Wessel Date: Thu Jun 30 14:12:00 2011 -0500 kdb: cleanup unused variables missed in the original kdb merge The BTARGS and BTSYMARG variables do not have any function in the mainline version of kdb. Reported-by: Tim Bird Signed-off-by: Jason Wessel commit 424c3d4a2c7d4ac3467a4849f8ccc230f670c35a Merge: 02f8c6a 88cda60 Author: Liam Girdwood Date: Mon Aug 1 18:25:06 2011 +0100 Merge branch 'for-next' into for-linus commit 5f66d2b58ca879e70740c82422354144845d6dd3 Merge: 4a2d732 762dfd1 Author: Linus Torvalds Date: Mon Aug 1 06:14:25 2011 -1000 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: CIFS: Cleanup demupltiplex thread exiting code CIFS: Move mid search to a separate function CIFS: Move RFC1002 check to a separate function CIFS: Simplify socket reading in demultiplex thread CIFS: Move buffer allocation to a separate function cifs: remove unneeded variable initialization in cifs_reconnect_tcon cifs: simplify refcounting for oplock breaks cifs: fix compiler warning in CIFSSMBQAllEAs cifs: fix name parsing in CIFSSMBQAllEAs cifs: don't start signing too early cifs: trivial: goto out here is unnecessary cifs: advertise the right receive buffer size to the server commit 4a2d732f5d1a2adf38a5baaa2f27094024be65e9 Merge: 965e32b 867f503 Author: Linus Torvalds Date: Mon Aug 1 06:13:48 2011 -1000 Merge branch 'gpio/next' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/next' of git://git.secretlab.ca/git/linux-2.6: gpio_msm: Move Qualcomm MSM v2 gpio driver into drivers gpio_msm: Move Qualcomm v6 MSM driver into drivers msm: gpio: Fold register defs into C file msm: gpiomux: Move public API to public header msm: gpio: Remove ifdefs on gpio chip registers msm: gpio: Remove chip-specific register definitions msm: Remove chip-ifdefs for GPIO io mappings msm: gpio: Remove unsupported devices gpio: ab8500: fix MODULE_ALIAS for ab8500 of/gpio: export of_gpio_simple_xlate commit 965e32b18d6b6bbcb79f4a7308fc8bdb4d03e813 Merge: e10b87d df5d3ed Author: Linus Torvalds Date: Mon Aug 1 06:13:05 2011 -1000 Merge branch 'for-3.1-rc1' of git://gitorious.org/linux-omap-dss2/linux * 'for-3.1-rc1' of git://gitorious.org/linux-omap-dss2/linux: (31 commits) OMAP: DSS2: HDMI: fix hdmi clock name HACK: OMAP: DSS2: clk hack for OMAP2/3 OMAP: DSS2: DSS: Fix context save/restore OMAP: DSS2: DISPC: Fix context save/restore OMAP: DSS2: Remove ctx loss count from dss.c OMAP: DSS2: Remove unused code from display.c OMAP: DSS2: DISPC: remove finegrained clk enables/disables OMAP: DSS2: Remove unused opt_clock_available OMAP: DSS2: Use PM runtime & HWMOD support OMAP: DSS2: Remove CONFIG_OMAP2_DSS_SLEEP_BEFORE_RESET OMAP: DSS2: Remove core_dump_clocks OMAP: DSS2: DPI: remove unneeded SYSCK enable/disable OMAP: DSS2: Use omap_pm_get_dev_context_loss_count to get ctx loss count OMAP: DSS2: rewrite use of context_loss_count OMAP: DSS2: Remove clk optimization at dss init OMAP: DSS2: Fix init and unit sequence OMAP: DSS2: Clean up probe for DSS & DSI OMAP: DSS2: Handle dpll4_m4_ck in dss_get/put_clocks OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 OMAP: DSS2: DSI: sync when disabling a display ... commit e10b87d2b5b4574cdf3a5a19b22ca88b91ba7151 Merge: 3da3f87 536628d Author: Linus Torvalds Date: Mon Aug 1 06:10:16 2011 -1000 Merge branch 'sh-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x * 'sh-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x: (39 commits) SH: static should be at beginning of declaration sh: move CLKDEV_xxx_ID macro to sh_clk.h sh: clock-shx3: add CLKDEV_ICK_ID for cleanup sh: clock-sh7786: add CLKDEV_ICK_ID for cleanup sh: clock-sh7785: add CLKDEV_ICK_ID for cleanup sh: clock-sh7757: add CLKDEV_ICK_ID for cleanup sh: clock-sh7366: add CLKDEV_ICK_ID for cleanup sh: clock-sh7343: add CLKDEV_ICK_ID for cleanup sh: clock-sh7722: add CLKDEV_ICK_ID for cleanup sh: clock-sh7724: add CLKDEV_ICK_ID for cleanup sh: clock-sh7366: modify I2C clock settings sh: clock-sh7343: modify I2C clock settings sh: clock-sh7723: modify I2C clock settings sh: clock-sh7722: modify I2C clock settings sh: clock-sh7724: modify I2C clock settings serial: sh-sci: Fix up pretty name printing for port IRQs. serial: sh-sci: Kill off per-port enable/disable callbacks. serial: sh-sci: Add missing module description/author bits. serial: sh-sci: Regtype probing doesn't need to be fatal. sh: Tidy up pre-clkdev clk_get() error handling. ... commit 867f503d580eafbcc342141bae53cf6a27d413b1 Merge: 5b8ce5e 1a5ab4b Author: Grant Likely Date: Mon Aug 1 15:16:05 2011 +0100 Merge branch 'msm-move-gpio' of git://codeaurora.org/quic/kernel/davidb/linux-msm into gpio/next Conflicts: drivers/gpio/Kconfig drivers/gpio/Makefile commit 762dfd10573606c4afccd29267fcc79ec9f9599b Author: Pavel Shilovsky Date: Mon Aug 1 13:19:44 2011 +0400 CIFS: Cleanup demupltiplex thread exiting code Reviewed-and-Tested-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit ad69bae178b86bf9f7e3f96d27492fba2052f187 Author: Pavel Shilovsky Date: Mon Aug 1 13:19:43 2011 +0400 CIFS: Move mid search to a separate function Reviewed-and-Tested-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 98bac62c9f1d6151dca7e8087aacce2e90fd43d3 Author: Pavel Shilovsky Date: Mon Aug 1 13:19:42 2011 +0400 CIFS: Move RFC1002 check to a separate function Reviewed-and-Tested-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit e7015fb1c508fe9b8c97707755ce08f5ace0afb9 Author: Pavel Shilovsky Date: Mon Aug 1 13:19:41 2011 +0400 CIFS: Simplify socket reading in demultiplex thread Move reading to separate function and remove csocket variable. Also change semantic in a little: goto incomplete_rcv only when we get -EAGAIN (or a familiar error) while reading rfc1002 header. In this case we don't check for echo timeout when we don't get whole header at once, as it was before. Reviewed-and-Tested-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit f18a5f21c25707b4fe64b326e2b4d150565e7300 Author: Theodore Ts'o Date: Mon Aug 1 08:45:38 2011 -0400 ext4: use ext4_kvzalloc()/ext4_kvmalloc() for s_group_desc and s_group_info Signed-off-by: "Theodore Ts'o" commit 9933fc0ac1ac14b795819cd63d05ea92112f690a Author: Theodore Ts'o Date: Mon Aug 1 08:45:02 2011 -0400 ext4: introduce ext4_kvmalloc(), ext4_kzalloc(), and ext4_kvfree() Introduce new helper functions which try kmalloc, and then fall back to vmalloc if necessary, and use them for allocating and deallocating s_flex_groups. Signed-off-by: "Theodore Ts'o" commit 3d9c2472a53ee1d26de9803899037aeeb44ccef1 Author: Pavel Shilovsky Date: Mon Aug 1 13:19:40 2011 +0400 CIFS: Move buffer allocation to a separate function Reviewed-and-Tested-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 1a5ab4b3e6087726dfc00207b36c91d3061468e8 Author: David Brown Date: Mon May 16 15:53:38 2011 -0700 gpio_msm: Move Qualcomm MSM v2 gpio driver into drivers Migrate the driver for the v7-based MSM chips into drivers/gpio. The driver is unchanged, only moved. Change-Id: I810db5b50b71cdca4e869aa0d0310f7f48781a55 Signed-off-by: David Brown Acked-by: Linus Walleij Acked-by: Nicolas Pitre commit 74d10d7461693ad001f81f0a380b44d526d3f1de Author: David Brown Date: Mon May 16 13:57:39 2011 -0700 gpio_msm: Move Qualcomm v6 MSM driver into drivers Migrate the driver for the v6-based MSM chips into drivers/gpio. The driver is unchanged, only moved. Change-Id: I03ba597b95b4d62b42da112a8efac88d67aa40f9 Signed-off-by: David Brown Acked-by: Linus Walleij Acked-by: Nicolas Pitre commit 9def3efc4856597bc6bb9611f444defc898d2e0d Author: David Brown Date: Mon Jun 6 14:09:45 2011 -0700 msm: gpio: Fold register defs into C file No need to have a separate header file containing only register definitions that are used by a single driver. Fold these into the gpio driver. Signed-off-by: David Brown commit 030a77fc9b805a38a2ffaea42728557282b81275 Author: David Brown Date: Mon May 16 13:32:15 2011 -0700 msm: gpiomux: Move public API to public header The gpiomux.h header contains some SOC ifdefs. However, the API that is actually used by the GPIO driver only uses two functions that are general. Move these general definitions into a public header file. Change-Id: Ia5df8af87dba268225598d56908e523bcfc24ef6 Signed-off-by: David Brown Acked-by: Linus Walleij Acked-by: Nicolas Pitre commit 10eb5f6bcbdc5e460e5500e1dbc39b2e7713ebfd Author: David Brown Date: Thu May 12 01:28:01 2011 -0700 msm: gpio: Remove ifdefs on gpio chip registers Select the GPIO register configuration at runtime rather than through idefs. Change-Id: I02ea0a3d61bc81669f32097c32420f0688552231 Signed-off-by: David Brown Acked-by: Linus Walleij Acked-by: Nicolas Pitre commit 2e01d2c593d1cc5ed48cab6c07493185e4ac7a68 Author: David Brown Date: Thu May 12 01:16:46 2011 -0700 msm: gpio: Remove chip-specific register definitions Put an SOC prefix on each GPIO register definition, eliminating the need to have SOC ifdefs around the definitions. Change-Id: I5a01fd328a89ce1be610847934d6e118f5465e42 Signed-off-by: David Brown Acked-by: Linus Walleij Acked-by: Nicolas Pitre commit 03db0729b7603202f7d3a2bf2ec7e89a1ad44a17 Author: David Brown Date: Thu May 12 00:54:36 2011 -0700 msm: Remove chip-ifdefs for GPIO io mappings The two GPIO controllers are always mapped to the same virtual address across all MSM devices. Instead of selecting this at compile time, determine the physical address at runtime, eliminating yet something else preventing multiple MSM targets from being compiled into the same kernel. Change-Id: I1672219d978ab6243526adeda6badf49472baa27 Signed-off-by: David Brown Acked-by: Linus Walleij Acked-by: Nicolas Pitre commit ce427c384ea4b7ec48c7e6367b7b64457eba87b3 Author: David Brown Date: Thu May 12 00:33:38 2011 -0700 msm: gpio: Remove unsupported devices The MSM7x25 and MSM7x27 devices are not yet supported in the kernel. Remove #ifdef-based tables supporting these chips for now. Change-Id: I4d9f5abc4cc0942ce75a067097b072489493c1b8 Signed-off-by: David Brown Acked-by: Linus Walleij Acked-by: Nicolas Pitre commit df5d3ed23cf73ee0763a8963003bda9b69d9620f Author: Tomi Valkeinen Date: Mon Aug 1 14:54:44 2011 +0300 OMAP: DSS2: HDMI: fix hdmi clock name The HDMI clock (hdmi_clk) is missing in the current OMAP4 HWMOD database. Fix this in the DSS driver by using the old clock name (dss_48mhz_clk). Signed-off-by: Tomi Valkeinen commit 9ede365aa6f74428a1f69c21ca1cf21213167576 Author: Tomi Valkeinen Date: Mon Aug 1 14:32:23 2011 +0300 HACK: OMAP: DSS2: clk hack for OMAP2/3 The HWMOD data for OMAP2 and 3 are currently not up to date regarding DSS (OMAP4 HWMOD data is fine). This patch makes the DSS driver to get the opt clocks needed for OMAP2/3 with the old clock names, thus allowing DSS driver to use runtime PM. The HWMOD databases should be fixes ASAP, and this patch can be reverted after that. Signed-off-by: Tomi Valkeinen commit 33853a0dde359ded0534204eb6857ad5166d515b Author: Yongqiang Yang Date: Mon Aug 1 06:32:19 2011 -0400 ext4: use the correct error exit path in ext4_init_inode_table() This patch lets ext4_init_inode_table() handle errors right. ext4_init_inode_table() should down_write() alloc_sem which has been up_write()ed and stop the started journal handle. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 206d440f64030b6425841bf7cb38e26a5ea0c382 Author: Markus Trippelsdorf Date: Tue Jul 26 11:15:20 2011 +0200 xfs: Fix build breakage in xfs_iops.c when CONFIG_FS_POSIX_ACL is not set commit 4e34e719e45, that takes the ACL checks to common code, accidentely broke the build when CONFIG_FS_POSIX_ACL is not set: CC fs/xfs/linux-2.6/xfs_iops.o fs/xfs/linux-2.6/xfs_iops.c:1025:14: error: ‘xfs_get_acl’ undeclared here (not in a function) Fix this by declaring xfs_get_acl a static inline function. Signed-off-by: Markus Trippelsdorf Signed-off-by: Al Viro commit 43c1c9cd244098012441b90c32304f11f1258d43 Author: David Howells Date: Tue Jun 7 14:09:30 2011 +0100 VFS: Reorganise shrink_dcache_for_umount_subtree() after demise of dcache_lock Reorganise shrink_dcache_for_umount_subtree() in light of the demise of dcache_lock. Without that dcache_lock, there is no need for the batching of removal of dentries from the system under it (we wanted to make intensive use of the locked data whilst we held it, but didn't want to hold it for long at a time). This works, provided the preceding patch is correct in its removal of locking on dentry->d_lock on the basis that no one should be locking these dentries any more as the whole superblock is defunct. With this patch, the calls to dentry_lru_del() and __d_shrink() are placed at the point where each dentry is detached handled. It is possible that, as an alternative, the batching should still be done - but only for dentry_lru_del() of all a dentry's children in one go. In such a case, the batching would be done under dcache_lru_lock. Signed-off-by: David Howells Signed-off-by: Al Viro commit c6627c60c07c43b51ef88e352627fa786d1e1592 Author: David Howells Date: Tue Jun 7 14:09:20 2011 +0100 VFS: Remove dentry->d_lock locking from shrink_dcache_for_umount_subtree() Locks of the dcache_lock were replaced by locks of dentry->d_lock in commits such as: 2304450783dfde7b0b94ae234edd0dbffa865073 2fd6b7f50797f2e993eea59e0a0b8c6399c811dc as part of the RCU-based pathwalk changes, despite the fact that the caller (shrink_dcache_for_umount()) notes in the banner comment the reasons that d_lock is not necessary in these functions: /* * destroy the dentries attached to a superblock on unmounting * - we don't need to use dentry->d_lock because: * - the superblock is detached from all mountings and open files, so the * dentry trees will not be rearranged by the VFS * - s_umount is write-locked, so the memory pressure shrinker will ignore * any dentries belonging to this superblock that it comes across * - the filesystem itself is no longer permitted to rearrange the dentries * in this superblock */ So remove these locks. If the locks are actually necessary, then this banner comment should be altered instead. The hash table chains are protected by 1-bit locks in the hash table heads, so those shouldn't be a problem. Note that to make this work, __d_drop() has to be split so that the RCUwalk barrier can be avoided. This causes problems otherwise as it has an assertion that dentry->d_lock is locked - but there is no need for that as no one else can be trying to access this dentry, except to step over it (and that should be handled by d_free(), I think). Signed-off-by: David Howells Cc: Nick Piggin Signed-off-by: Al Viro commit 35f40ef00204c456f5c181c0e7f54e25bb93cd49 Author: David Howells Date: Tue Jun 7 14:09:10 2011 +0100 VFS: Remove detached-dentry counter from shrink_dcache_for_umount_subtree() Remove the detached-dentry counter from shrink_dcache_for_umount_subtree() as the value it computes is no longer used as of commit 312d3ca856d369bb04d0443846b85b4cdde6fa8a which made the nr_dentry counters summed per-CPU rather than global atomic. Signed-off-by: David Howells Signed-off-by: Al Viro commit 86bc704db0ab7e69230f79bc7d124e063259abc6 Author: Al Viro Date: Sat Jul 23 19:03:11 2011 -0400 switch posix_acl_chmod() to umode_t again, that's what all callers pass to it Signed-off-by: Al Viro commit 3a5fba19b080b365d67866db38e32e6a4a2089e8 Author: Al Viro Date: Sat Jul 23 19:01:48 2011 -0400 switch posix_acl_from_mode() to umode_t ... seeing that this is what all callers pass to it anyway. Signed-off-by: Al Viro commit d6952123b53cc8b334df69bba2cd0063b0d88f68 Author: Al Viro Date: Sat Jul 23 18:56:36 2011 -0400 switch posix_acl_equiv_mode() to umode_t * ... so that &inode->i_mode could be passed to it Signed-off-by: Al Viro commit d3fb612076eebec6f67257db0c7a9666ac7e5892 Author: Al Viro Date: Sat Jul 23 18:37:50 2011 -0400 switch posix_acl_create() to umode_t * so we can pass &inode->i_mode to it Signed-off-by: Al Viro commit 782b94cdf577b4df1feb376f372dccc28e66a771 Author: Lachlan McIlroy Date: Thu Jun 30 11:01:45 2011 +1000 block: initialise bd_super in bdget() bd_super is currently reset to NULL in kill_block_super() so we rely on previous users of the block_device object to initialise this value for the next user. This quirk was exposed on RHEL5 when a third party filesystem did not always use kill_block_super() and therefore bd_super wasn't being reset when a block_device object was recycled within the cache. This may not be a problem upstream but makes sense to be defensive. Signed-off-by: Lachlan McIlroy Reviewed-by: Eric Sandeen Signed-off-by: Al Viro commit c4ae0c65455c1bb30d1b71c6dd9a1a62aadde8ef Author: Eric Dumazet Date: Thu Jul 28 06:55:13 2011 +0200 vfs: avoid call to inode_lru_list_del() if possible inode_lru_list_del() is expensive because of per superblock lru locking, while some inodes are not in lru list. Adding a check in iput_final() can speedup pipe/sockets workloads on SMP. Signed-off-by: Eric Dumazet Signed-off-by: Al Viro commit f2ee7abf4c40c8e6bffced923a7c01ea2d1f6c97 Author: Eric Dumazet Date: Thu Jul 28 06:41:09 2011 +0200 vfs: avoid taking inode_hash_lock on pipes and sockets Some inodes (pipes, sockets, ...) are not hashed, no need to take contended inode_hash_lock at dismantle time. nice speedup on SMP machines on socket intensive workloads. Signed-off-by: Eric Dumazet Signed-off-by: Al Viro commit b12362bdb61a230a67daa77bcd2a11e59b2802e1 Author: Eric Dumazet Date: Thu Jul 28 06:11:47 2011 +0200 vfs: conditionally call inode_wb_list_del() Some inodes (pipes, sockets, ...) are not in bdi writeback list. evict() can avoid calling inode_wb_list_del() and its expensive spinlock by checking inode i_wb_list being empty or not. At this point, no other cpu/user can concurrently manipulate this inode i_wb_list Signed-off-by: Eric Dumazet Signed-off-by: Al Viro commit 5a30d8a2b8ddd5102c440c7e5a7c8e1fd729c818 Author: David Howells Date: Mon Jul 11 14:20:57 2011 +0100 VFS: Fix automount for negative autofs dentries Autofs may set the DCACHE_NEED_AUTOMOUNT flag on negative dentries. These need attention from the automounter daemon regardless of the LOOKUP_FOLLOW flag. Signed-off-by: David Howells Acked-by: Ian Kent Signed-off-by: Al Viro commit b4aff1f874f679320c03e3d97b60fc7babfd4623 Author: Josef Bacik Date: Tue Jun 28 16:18:59 2011 -0400 Btrfs: load the key from the dir item in readdir into a fake dentry In btrfs we have 2 indexes for inodes. One is for readdir, it's in this nice sequential order and works out brilliantly for readdir. However if you use ls, it usually stat's each file it gets from readdir. This is where the second index comes in, which is based on a hash of the name of the file. So then the lookup has to lookup this index, and then lookup the inode. The index lookup is going to be in random order (since its based on the name hash), which gives us less than stellar performance. Since we know the inode location from the readdir index, I create a dummy dentry and copy the location key into dentry->d_fsdata. Then on lookup if we have d_fsdata we use that location to lookup the inode, avoiding looking up the other directory index. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit 3da3f872aa175f59e20766ed30aaea67fd4fa7d1 Merge: 968e75f e178ccb Author: Linus Torvalds Date: Sun Jul 31 14:31:44 2011 -1000 Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (46 commits) mfd: Fix mismatch in twl4030 mutex lock-unlock mfd: twl6030-pwm.c needs MODULE_LICENSE mfd: Fix the omap-usb-host clock API usage on usbhs_disable() mfd: Acknowledge WM8994 IRQs before reporting mfd: Acknowlege all WM831x IRQs before we handle them mfd: Avoid two assignments if failures happen in tps65910_i2c_probe regulator: Storing tps65912 error codes in u8 mfd: Don't leak init_data in tps65910_i2c_probe regulator: aat2870: Add AAT2870 regulator driver backlight: Add AAT2870 backlight driver mfd: Add AAT2870 mfd driver mfd: Remove dead code from max8997-irq mfd: Move TPS55910 Kconfig option mfd: Fix missing stmpe kerneldoc mfd: Fix off-by-one value range checking for tps65912_i2c_write mfd: Add devices for WM831x clocking module mfd: Remove comp{1,2}_threshold sysfs entries in tps65911_comparator_remove mfd: Don't ask about the TPS65912 core driver in Kconfig mfd: Fix off by one in WM831x IRQ code mfd: Add tps65921 support from twl-core ... commit 968e75fc13b6d582f42ce44172e13ba58157e11f Merge: a00ed25 d3690f8 Author: Linus Torvalds Date: Sun Jul 31 14:30:59 2011 -1000 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: m68k/math-emu: Remove unnecessary code m68k/math-emu: Remove commented out old code m68k: Kill warning in setup_arch() when compiling for Sun3 m68k/atari: Prefix GPIO_{IN,OUT} with CODEC_ sparc: iounmap() and *_free_coherent() - Use lookup_resource() m68k/atari: Reserve some ST-RAM early on for device buffer use m68k/amiga: Chip RAM - Use lookup_resource() resources: Add lookup_resource() sparc: _sparc_find_resource() should check for exact matches m68k/amiga: Chip RAM - Offset resource end by CHIP_PHYSADDR m68k/amiga: Chip RAM - Use resource_size() to fix off-by-one error m68k/amiga: Chip RAM - Change chipavail to an atomic_t m68k/amiga: Chip RAM - Always allocate from the start of memory m68k/amiga: Chip RAM - Convert from printk() to pr_*() m68k/amiga: Chip RAM - Use tabs for indentation commit a00ed25cce6fe856388f89c7cd40da0eee7666a6 Author: Trond Myklebust Date: Sun Jul 31 16:39:04 2011 -0400 NFS: Re-enable compilation of nfs with !CONFIG_NFS_V4 || !CONFIG_NFS_V4_1 Fix two recently introduced compile problems: Fix a typo in fs/nfs/pnfs.h Move the pnfs_blksize declaration outside the CONFIG_NFS_V4 section in struct nfs_server. Reported-by: Jens Axboe Signed-off-by: Trond Myklebust Signed-off-by: Linus Torvalds commit e178ccb33569da17dc897a08a3865441b813bdfb Author: Sanjeev Premi Date: Mon Jul 11 20:50:31 2011 +0530 mfd: Fix mismatch in twl4030 mutex lock-unlock A mutex is locked on entry into twl4030_madc_conversion(). Immediate return on some error conditions leaves the mutex locked. This patch ensures that mutex is always unlocked before leaving the function. Signed-off-by: Sanjeev Premi Cc: Keerthy Signed-off-by: Samuel Ortiz commit 2b959e7f87491453f3220bb8ab11da7ccb7f6515 Author: Randy Dunlap Date: Fri Jul 22 17:17:08 2011 -0700 mfd: twl6030-pwm.c needs MODULE_LICENSE twl6030_pwm: module license 'unspecified' taints kernel. Signed-off-by: Randy Dunlap Acked-by: Hemanth V Acked-by: Felipe Balbi Signed-off-by: Samuel Ortiz commit e2e49d57194c1c3cee078a249e854a4c1d57170d Author: Keshava Munegowda Date: Fri Jul 22 18:39:30 2011 +0530 mfd: Fix the omap-usb-host clock API usage on usbhs_disable() usbhs_disable function was invoking clk_enable() instead of clk_disable(), thus only increasing the clock usage counter and preventing this particular clock from being ever turned off. Because of this, the power domain of omap4 the USB Host subsystem would never reach lower power states.This patch calls clk_disable() in usbhs_disable function Signed-off-by: Keshava Munegowda Signed-off-by: Samuel Ortiz commit ccd80c7142ba178f5395fe69244e6c4611100511 Author: Mark Brown Date: Thu Jul 21 10:09:24 2011 +0100 mfd: Acknowledge WM8994 IRQs before reporting This ensures we never have a window where we've handled an interrupt but not told the hardware about it. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 88c939770db375244b00ba92e901fa92677a7164 Author: Mark Brown Date: Wed Jul 20 17:05:13 2011 +0100 mfd: Acknowlege all WM831x IRQs before we handle them Ensure that we never have a window where we've handled an interrupt (and therefore need to be notified of new events) but haven't yet told the interrupt controller that this is the case (so any new events will be discarded). Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit b1224cd113d4441edee4a58a1e2e428141247c0d Author: Jesper Juhl Date: Wed Jul 13 23:22:26 2011 +0200 mfd: Avoid two assignments if failures happen in tps65910_i2c_probe In drivers/mfd/tps65910.c:tps65910_i2c_probe() there's potential for a tiny optimization. We assign to init_data->irq and init_data->irq_base long before we need them, and there are two potential exits from the function before they are needed. Moving the assignments below these two potential exits means we completely avoid doing them in these two (failure) cases. Signed-off-by: Jesper Juhl Acked-by: Graeme Gregory Signed-off-by: Samuel Ortiz commit 6daa663dc42957ca6c794a84fe07fa09f0273ff9 Author: Dan Carpenter Date: Wed Jul 6 21:57:18 2011 +0300 regulator: Storing tps65912 error codes in u8 get_ctrl_reg() returns -EINVAL so the error handling won't work here if reg is a u8. Signed-off-by: Dan Carpenter Signed-off-by: Samuel Ortiz commit dc7e412d431db5da7fa252f4c3ed475ef4af3e8a Author: Jesper Juhl Date: Wed Jul 6 00:29:07 2011 +0200 mfd: Don't leak init_data in tps65910_i2c_probe There are a couple of situations where we leak init_data in drivers/mfd/tps65910.c:tps65910_i2c_probe() - this patch should take care of them. Signed-off-by: Jesper Juhl Signed-off-by: Samuel Ortiz commit f7eb6c5e8e5e1e96c36763778e9a78b9da6fcd31 Author: Jin Park Date: Mon Jul 4 17:43:42 2011 +0900 regulator: aat2870: Add AAT2870 regulator driver Add regulator driver for AnalogicTech AAT2870. Signed-off-by: Jin Park Acked-by: Mark Brown Signed-off-by: Samuel Ortiz commit 4b0d711be39f927200e4aaee51176091f9ba22e2 Author: Jin Park Date: Wed Jun 29 23:06:51 2011 +0900 backlight: Add AAT2870 backlight driver Add backlight driver for AnalogicTech AAT2870. Signed-off-by: Jin Park Signed-off-by: Samuel Ortiz commit 09d6292befba8c6319d9471803149573ea6ed170 Author: Jin Park Date: Mon Jul 4 19:48:12 2011 +0200 mfd: Add AAT2870 mfd driver Add mfd core driver for AnalogicTech AAT2870. The AAT2870 is communication through I2C and contains backlight and regulator components. Signed-off-by: Jin Park Signed-off-by: Samuel Ortiz commit 7785bf11f312624101462d7dc840e27344899873 Author: Jesper Juhl Date: Sat Jul 2 22:38:11 2011 +0200 mfd: Remove dead code from max8997-irq We either hit one of the case's or the default in the switch statement in get_i2c(), so the 'return ERR_PTR(-EINVAL);' at the end of the function is just dead code - remove it. Signed-off-by: Jesper Juhl Acked-by: MyungJoo Ham Signed-off-by: Samuel Ortiz commit 54f323b1325499574d92c85201971df096c25b79 Author: Linus Walleij Date: Mon Jul 4 17:34:16 2011 +0200 mfd: Move TPS55910 Kconfig option Having another TPS chip at the end of the Kconfig when all it's relatives are grouped together in their own section seems totally counter-intuitive. Move it, also in the Makefile. Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit 4dcaa6b6df354fa44b3072bed3cb13aad7e5fbd4 Author: Om Prakash Date: Mon Jun 27 09:54:22 2011 +0200 mfd: Fix missing stmpe kerneldoc Generating kerneldoc for STMPE result in warnings, so fix this by adding missing documentation. Signed-off-by: Om Prakash Reviewed-by: Rabin Vincent Reviewed-by: Jonas Aberg Reviewed-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit 63c8a58d226a0701272b54015a8d73643d72cd3d Author: Axel Lin Date: Fri Jun 24 15:34:16 2011 +0800 mfd: Fix off-by-one value range checking for tps65912_i2c_write If bytes == (TPS6591X_MAX_REGISTER + 1), we have a buffer overflow when doing memcpy(&msg[1], src, bytes). Signed-off-by: Axel Lin Signed-off-by: Samuel Ortiz commit a5e06781f073842beb81d088eb787f0ea23d6499 Author: Mark Brown Date: Fri Jun 24 12:17:07 2011 +0100 mfd: Add devices for WM831x clocking module With the new generic clk API that should appear at some point we should be able to support the clocking sensibly in Linux. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 2f2233413a7aab688e6484abf0941f8ca34da1bd Author: Axel Lin Date: Thu Jun 23 10:19:16 2011 +0800 mfd: Remove comp{1,2}_threshold sysfs entries in tps65911_comparator_remove Signed-off-by: Axel Lin Signed-off-by: Samuel Ortiz commit 5608801baf0ffd06a428de3496fa10b3b7d789e9 Author: Mark Brown Date: Wed Jun 22 14:53:58 2011 +0100 mfd: Don't ask about the TPS65912 core driver in Kconfig The user has to select the I2C and SPI drivers individually and they select the core driver for the device so there's no point in presenting the user with an option for the core driver. Signed-off-by: Mark Brown Acked-by: Randy Dunlap Signed-off-by: Samuel Ortiz commit 08256712a2705f3ced3e54c3728932c9c39b58ad Author: Dimitris Papastamos Date: Wed Jun 22 00:23:08 2011 +0100 mfd: Fix off by one in WM831x IRQ code The GPIO IRQs aren't the first IRQs defined, we need to subtract the base for the GPIOs as well to use them for array indexes. Signed-off-by: Dimitris Papastamos Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 59dead5a0c65abed0fe997a69692c11fcd0b11ca Author: Oleg Drokin Date: Fri Jul 1 13:34:13 2011 +0200 mfd: Add tps65921 support from twl-core Very similar to TPS65920 List of differences: http://www.ti.com/litv/pdf/swcu066b Signed-off-by: Oleg Drokin Signed-off-by: Samuel Ortiz commit c7e1da477293b4b5e0bef3639b3734e28d5d55f7 Author: Mark Brown Date: Tue Jun 21 11:12:23 2011 +0100 mfd: Add WM831x clock control register definitions Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit b00cd68eb3f6c81525e43f6259b65665ef32499a Author: Mark Brown Date: Mon Jun 20 12:25:58 2011 +0100 mfd: Ensure value written by wm831x_set_bits() is within the mask Purely for defensiveness. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit ec2328c30bf09fe31e77889090eeb1a965325f53 Author: Mark Brown Date: Mon Jun 20 11:47:55 2011 +0100 mfd: Implement tps65910 IRQ cleanup The tps65910_irq_exit() cleanup function was generating a warning from sparse due to the lack of a prototype. This wasn't causing GCC warnings as the driver wasn't cleaning up its IRQs on exit at all so there was no use of an unprototyped function. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 19921ef61217fff600202b819c05bb078f254619 Author: Alexander Stein Date: Thu Jun 16 13:05:49 2011 +0200 mfd: Add tunnelcreek watchdog to lpc_sch devices Tunnel Creek has an additional watchdog core. Signed-off-by: Alexander Stein Signed-off-by: Samuel Ortiz commit 0a1b089738cf2165ee8678e2483fce3c40389d4a Author: Linus Walleij Date: Thu Jun 9 23:57:57 2011 +0200 mfd: Clean-up ab8500 register file This adds a previously undefined test register and removed a number of double-defined accessory detect registers (they are already defined higher up in the file. Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit 6af75ecd5772eee4d7be974a881fd5a25f218b0b Author: Linus Walleij Date: Thu Jun 9 23:57:45 2011 +0200 mfd: Update ab8500 subdevice list This synchronize the subdevice entries for the AB8500 MFD driver with the latest development of subdrivers for things like battery charging and temperature monitoring. Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit 5cef8df5e335a5bc9147c5cafdce348981f5c5b5 Author: Robert Rosengren Date: Thu Jun 9 23:57:33 2011 +0200 mfd: ab8500-core MFD devices marked as initdata Internal MFD device structs are marked as __devinitdata since the kernel will allocate memory for the same when calling mfd_add_devices. Signed-off-by: Robert Rosengren Reviewed-by: Mattias Wallin Reviewed-by: Johan Palsson Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit 9260ad98dcb0e6ec3a9ee6b13699cf52c684dfd2 Author: Margarita Olaya Date: Thu Jun 9 14:50:27 2011 -0500 tps65912: add regulator driver The tps65912 consist of 4 DCDCs and 10 LDOs. The output voltages can be configured by the SPI or I2C interface, they are meant to supply power to the main processor and other components. Signed-off-by: Margarita Olaya Cabrera Acked-by: Mark Brown Acked-by: Liam Girdwood Signed-off-by: Samuel Ortiz commit 668a6cc710ee054af2b059d27bbec746ead0fbca Author: Margarita Olaya Date: Thu Jun 9 14:50:19 2011 -0500 tps65912: gpio: add gpio driver TPS65912 has five GPIOs that can be configured for different purposes. Signed-off-by: Margarita Olaya Cabrera Acked-by: Grant Likely Acked-by: Liam Girdwood Signed-off-by: Samuel Ortiz commit d49a0f3f14a763242b71244019d7881ee06e0658 Author: Margarita Olaya Date: Thu Jun 9 14:50:13 2011 -0500 tps65912: irq: add interrupt controller This module controls the interrupt handling for the tps65912. The interrupt sources can be the following: - GPIO - PWRON signal - PWRHOLD signal - Temperature detection Signed-off-by: Margarita Olaya Cabrera Acked-by: Samuel Ortiz Acked-by: Liam Girdwood Signed-off-by: Samuel Ortiz commit 36e52873c6393b569f2befcdd1847929211892b8 Author: Margarita Olaya Date: Thu Jun 9 14:50:00 2011 -0500 mfd: tps65912: Add new mfd device The tps65912 chip is a power management IC. It contains the following components: - Regulators - GPIO controller The core driver is registered as a platform driver, it provides communication through I2C and SPI interfaces. Signed-off-by: Margarita Olaya Cabrera Acked-by: Samuel Ortiz Acked-by: Liam Girdwood Signed-off-by: Samuel Ortiz commit 8504d638041d50901b8bfba4fe646bd0bbb5cbb9 Author: Peter Huewe Date: Mon Jun 6 22:43:32 2011 +0200 mfd: Use kstrtoul_from_user in ab8500 This patch replaces the code for getting an unsigned long from a userspace buffer by a simple call to kstroul_from_user. This makes it easier to read and less error prone. Signed-off-by: Peter Huewe Signed-off-by: Samuel Ortiz commit 402fb487005d0fcbd4ce627b10426b3491ac0590 Author: Peter Huewe Date: Mon Jun 6 22:43:31 2011 +0200 mfd: Use kstrtoul_from_user in ab3550 This patch replaces the code for getting an unsigned long from a userspace buffer by a simple call to kstroul_from_user. This makes it easier to read and less error prone. Signed-off-by: Peter Huewe Signed-off-by: Samuel Ortiz commit 914e6d4e36015180bdcb6b99e96adc6293b7c2c6 Author: Lars-Peter Clausen Date: Fri Jun 3 03:14:26 2011 +0200 mfd: Use generic irq chip for jz4740-adc Use the generic irq chip framework for implementing the irq chip for the jz4740-adc driver. Signed-off-by: Lars-Peter Clausen Cc: Thomas Gleixner Signed-off-by: Samuel Ortiz commit f85dbda076a11c18b396f8acfff929e53159e56d Author: Mark Brown Date: Fri Jun 17 12:19:41 2011 +0100 mfd: Fix error handling if BUG() isn't enabled in WM8994 Even if we would've BUG()ed we should still tidy up after ourselves if that isn't enabled in the kernel config. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 98ae1ccaf62d5006884e01159bf7a63174b0fc03 Author: Mark Brown Date: Tue Jun 7 11:49:42 2011 +0100 mfd: Fix WM8994 IRQ register cache restore on resume When the byte swap was factored out into the per-register I/O functions the register restore for the IRQ mask cache (which we use and store in CPU native format for the interrupt handler) was not updated to do a byte swap when it uses the bulk I/O. Fix this by writing the cache out one register at a time. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 78bb3688ea1830672b8095fb6388593f582cd591 Author: Mark Brown Date: Tue Jun 7 11:47:28 2011 +0100 mfd: Support multiple active WM831x AUXADC conversions The WM831x AUXADC hardware can schedule multiple conversions at once, allowing higher performance when more than one source is in use as we can have the hardware start new conversions without having to wait for a register write. Take advantage of this in the interrupt driven case, maintaining a list of callers that are waiting for AUXADC conversions and completing them all simultaneously. The external interface of the AUXADC is not changed so there will be limited use of the feature immediately. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit a2495bc727e2dd8421fb85c80e38f9a4a4c1e58e Author: Mark Brown Date: Thu Jun 2 19:18:55 2011 +0100 mfd: Restructure wm8994-core device revision handling Switch on the device type before revision since anything we do here will be device as well as revision specific. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit d1738aef387ab9591a6d13b00945e248b942c53f Author: Sascha Hauer Date: Thu Jun 2 19:18:54 2011 +0100 mfd: Allocate wm835x irq descs dynamically This allows boards to leave the irq_base field unitialized and prevents them having to reserve irqs in the platform. pdata can be optional for irq support now. Without pdata the driver allocates some free irq range. With pdata and irq_base > 0 the driver allocates exactly the specified irq. Without pdata the irq defaults to IRQF_TRIGGER_LOW. Signed-off-by: Sascha Hauer Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit e69b6de181167a132eee7c38c7e4b47dea3d8e49 Author: Mark Brown Date: Thu Jun 2 19:18:53 2011 +0100 mfd: Refactor wm831x AUXADC handling into a separate file In preparation for some additional work on the wm831x AUXADC code move the support into a separate file. This is a simple code motion patch, there should be no functional changes. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit c1a82780b41e78f31636c49279ce940afe60a453 Author: Mark Brown Date: Thu Jun 2 19:18:52 2011 +0100 mfd: Read wm831x AUXADC conversion results before acknowledging interrupt Ensure that there's no possibility of loosing an AUXADC interrupt by reading the conversion result in the IRQ handler when using interrupts. Otherwise it's possible that under very heavy load a new conversion could be initiated before the acknowledgement for a previous interrupt has happened. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 5c05a8d1f0105ada3cb04be5b70686fc6b272619 Author: Mark Brown Date: Thu Jun 2 19:18:51 2011 +0100 mfd: Support dynamic allocation of IRQ range for wm831x Use irq_allocate_desc() to get the IRQ range, which turns into a noop on non-sparse systems. Since all existing users are non-sparse there should be no compatibility issues. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit b9d03d999b46f0897492f3aac3e794312e5282db Author: Mark Brown Date: Thu Jun 2 19:18:50 2011 +0100 mfd: Only register wm831x RTC device if the 32.768kHz crystal is enabled The RTC uses the 32.768kHz crystal so if it's not enabled (and it can only be enabled via OTP or InstantConfig, not runtime software) the RTC can't function. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 266a5e02fe2690637b2318c9fc5c3513937128f4 Author: Mark Brown Date: Thu Jun 2 19:18:49 2011 +0100 mfd: Allow touchscreen to be disabled on wm831x devices Allow platform data to flag the touchscreen as disabled so that if the touch driver is built in we don't end up causing lots of work by spuriously detecting touchscreen activity on systems where it isn't in use. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit eb503dc16b04d07a42a37892da73c74461fd06da Author: Mark Brown Date: Thu Jun 2 19:18:48 2011 +0100 mfd: Implement support for multiple WM831x devices Systems using this functionality will be uncommon. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit ca7a71824ac957b1b9d3322656c05aad38d7275c Author: Mark Brown Date: Thu Jun 2 19:18:47 2011 +0100 mfd: Fix bus lock interaction for WM831x IRQ set_type() operation The WM831x IRQ set_type() operation is doing a direct register write when called but since set_type() is called with the bus lock held this isn't legal and could cause deadlocks in the IRQ core. Fix this by posting the updates into an array and syncing in the bus_sync_unlock() callback. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit c4a5534a1b61cdffaa83187efe63712f75544726 Author: Jeff Layton Date: Thu Jul 28 12:40:36 2011 -0400 cifs: remove unneeded variable initialization in cifs_reconnect_tcon Reported-and-acked-by: David Howells Signed-off-by: Jeff Layton Signed-off-by: Steve French commit ad635942c869ad8fc9af270d4998c42b4e978b32 Author: Jeff Layton Date: Tue Jul 26 12:20:17 2011 -0400 cifs: simplify refcounting for oplock breaks Currently, we take a sb->s_active reference and a cifsFileInfo reference when an oplock break workqueue job is queued. This is unnecessary and more complicated than it needs to be. Also as Al points out, deactivate_super has non-trivial locking implications so it's best to avoid that if we can. Instead, just cancel any pending oplock breaks for this filehandle synchronously in cifsFileInfo_put after taking it off the lists. That should ensure that this job doesn't outlive the structures it depends on. Reported-by: Al Viro Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 5980fc966bb347801f3fcc39a2ef2a1e14fbf8cb Author: Jeff Layton Date: Thu Jul 28 12:48:26 2011 -0400 cifs: fix compiler warning in CIFSSMBQAllEAs The recent fix to the above function causes this compiler warning to pop on some gcc versions: CC [M] fs/cifs/cifssmb.o fs/cifs/cifssmb.c: In function ‘CIFSSMBQAllEAs’: fs/cifs/cifssmb.c:5708: warning: ‘ea_name_len’ may be used uninitialized in this function Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 91d065c47317cd5f6577fa077cca3383c8d9243d Author: Jeff Layton Date: Tue Jul 26 18:23:47 2011 -0400 cifs: fix name parsing in CIFSSMBQAllEAs The code that matches EA names in CIFSSMBQAllEAs is incorrect. It uses strncmp to do the comparison with the length limited to the name_len sent in the response. Problem: Suppose we're looking for an attribute named "foobar" and have an attribute before it in the EA list named "foo". The comparison will succeed since we're only looking at the first 3 characters. Fix this by also comparing the length of the provided ea_name with the name_len in the response. If they're not equal then it shouldn't match. Reported-by: Jian Li Signed-off-by: Jeff Layton Reviewed-by: Pavel Shilovsky Signed-off-by: Steve French commit 998d6fcb24d25b7889ec39118cf98d5089ac4c11 Author: Jeff Layton Date: Tue Jul 26 12:21:17 2011 -0400 cifs: don't start signing too early Sniffing traffic on the wire shows that windows clients send a zeroed out signature field in a NEGOTIATE request, and send "BSRSPYL" in the signature field during SESSION_SETUP. Make the cifs client behave the same way. It doesn't seem to make much difference in any server that I've tested against, but it's probably best to follow windows behavior as closely as possible here. Signed-off-by: Jeff Layton Reviewed-by: Shirish Pargaonkar Signed-off-by: Steve French commit 1f1cff0be05f59d5939edf28ff5ca0c6fd0a8e1c Author: Jeff Layton Date: Tue Jul 26 12:20:18 2011 -0400 cifs: trivial: goto out here is unnecessary ...and remove some obsolete comments. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit c4d3396b261473ded6f370edd1e79ba34e089d7e Author: Jeff Layton Date: Tue Jul 26 12:20:18 2011 -0400 cifs: advertise the right receive buffer size to the server Currently, we mirror the same size back to the server that it sends us. That makes little sense. Instead we should be sending the server the maximum buffer size that we can handle -- CIFSMaxBufSize minus the 4 byte RFC1001 header. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 24c3047095fa3954f114bfff2e37b8fcbb216396 Merge: 6581058 71cdd40 Author: Linus Torvalds Date: Sun Jul 31 06:26:50 2011 -1000 Merge branch 'nfs-for-3.1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs * 'nfs-for-3.1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (28 commits) pnfsblock: write_pagelist handle zero invalid extents pnfsblock: note written INVAL areas for layoutcommit pnfsblock: bl_write_pagelist pnfsblock: bl_read_pagelist pnfsblock: cleanup_layoutcommit pnfsblock: encode_layoutcommit pnfsblock: merge rw extents pnfsblock: add extent manipulation functions pnfsblock: bl_find_get_extent pnfsblock: xdr decode pnfs_block_layout4 pnfsblock: call and parse getdevicelist pnfsblock: merge extents pnfsblock: lseg alloc and free pnfsblock: remove device operations pnfsblock: add device operations pnfsblock: basic extent code pnfsblock: use pageio_ops api pnfsblock: add blocklayout Kconfig option, Makefile, and stubs pnfs: cleanup_layoutcommit pnfs: ask for layout_blksize and save it in nfs_server ... commit 6581058f44533f9d45548bcfe986c125376859e9 Merge: fa9d594 eacbbae Author: Linus Torvalds Date: Sun Jul 31 06:25:37 2011 -1000 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: slab: use NUMA_NO_NODE slab: remove one NR_CPUS dependency commit fa9d594c46679485c5e3642d2bd9e874a7e07b19 Merge: f0d15c9 0e99581 Author: Linus Torvalds Date: Sun Jul 31 06:25:09 2011 -1000 Merge branch 'urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback * 'urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback: don't busy retry the inode on failed grab_super_passive() commit f0d15c96d4ddcf32b6f910c4c2487ee705e4d493 Merge: 4d8a93c f8c6391 Author: Linus Torvalds Date: Sun Jul 31 06:24:50 2011 -1000 Merge git://git.infradead.org/battery-2.6 * git://git.infradead.org/battery-2.6: gpio-charger: Fix checking return value of request_any_context_irq power_supply: MAX17042: Support additional properties max8903_charger: Allow platform data to be __initdata power_supply: Add charger driver for MAX8998/LP3974 power_supply: Add charger driver for MAX8997/8966 max17042_battery: Remove obsolete cleanup for clientdata twl4030_charger: Fix warnings wm831x_power: Support multiple instances wm831x_backup: Support multiple instances apm_power: Fix style error in macros s3c_adc_battery: Fix annotation for s3c_adc_battery_probe() bq20z75: Enable detection after registering bq20z75: Add support for external notification commit 4d8a93c7e542c364b1c2ad1dd406ede85080eab9 Merge: f33c596 029e9f7 Author: Linus Torvalds Date: Sun Jul 31 06:23:40 2011 -1000 Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/cpupowerutils * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/cpupowerutils: cpupower: Do detect IDA (opportunistic processor performance) via cpuid cpupower: Show Intel turbo ratio support via ./cpupower frequency-info cpupowerutils: increase MAX_LINE_LEN cpupower: Rename package from cpupowerutils to cpupower cpupowerutils: Rename: libcpufreq->libcpupower cpupowerutils: use kernel version-derived version string cpupowerutils: utils - ConfigStyle bugfixes cpupowerutils: helpers - ConfigStyle bugfixes cpupowerutils: idle_monitor - ConfigStyle bugfixes cpupowerutils: lib - ConfigStyle bugfixes cpupowerutils: bench - ConfigStyle bugfixes cpupowerutils: do not update po files on each and every compile cpupowerutils: remove ccdv, use kernel quiet/verbose mechanism cpupowerutils: use COPYING, CREDITS from top-level directory cpupowerutils - cpufrequtils extended with quite some features commit f33c596a2f921696391801b637ed50d514634079 Merge: 250f8e3 74411c0 Author: Linus Torvalds Date: Sun Jul 31 06:23:08 2011 -1000 Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: smc91c92_cs.c: fix bogus compiler warning orinoco_cs: be more careful when matching cards with ID 0x0156:0x0002 hostap_cs: support cards with "Version 01.02" as third product ID pcmcia: add PCMCIA_DEVICE_MANF_CARD_PROD_ID3 pxa2xx pcmcia - stargate 2 use gpio array. pcmcia: pxa2xx: remove empty socket_init / socket_resume functions. drivers:pcmcia:soc_common: make socket_init and socket_suspend optional commit 71cdd40fd498f12679070def668f6a4719ddbd1c Author: Peng Tao Date: Sat Jul 30 20:52:56 2011 -0400 pnfsblock: write_pagelist handle zero invalid extents For invalid extents, find other pages in the same fsblock and write them out. [pnfsblock: write_begin] Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Peng Tao Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 31e6306a4046926b598484f1cacf69309382eac6 Author: Fred Isaman Date: Sat Jul 30 20:52:55 2011 -0400 pnfsblock: note written INVAL areas for layoutcommit Signed-off-by: Peng Tao Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 650e2d39bd8f6b99f39b5009dbed9fbd3bb65e54 Author: Fred Isaman Date: Sat Jul 30 20:52:54 2011 -0400 pnfsblock: bl_write_pagelist Note: When upper layer's read/write request cannot be fulfilled, the block layout driver shouldn't silently mark the page as error. It should do what can be done and leave the rest to the upper layer. To do so, we should set rdata/wdata->res.count properly. When upper layer re-send the read/write request to finish the rest part of the request, pgbase is the position where we should start at. [pnfsblock: bl_write_pagelist support functions] [pnfsblock: bl_write_pagelist adjust for missing PG_USE_PNFS] Signed-off-by: Fred Isaman [pnfsblock: handle errors when read or write pagelist.] Signed-off-by: Zhang Jingwang [pnfs-block: use new write_pagelist api] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees [SQUASHME: pnfsblock: mds_offset is set in the generic layer] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy [pnfsblock: mark IO error with NFS_LAYOUT_{RW|RO}_FAILED] Signed-off-by: Peng Tao [pnfsblock: SQUASHME: adjust to API change] Signed-off-by: Fred Isaman [pnfsblock: fixup blksize alignment in bl_setup_layoutcommit] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [pnfsblock: bl_write_pagelist adjust for missing PG_USE_PNFS] Signed-off-by: Fred Isaman [pnfsblock: handle errors when read or write pagelist.] Signed-off-by: Zhang Jingwang [pnfs-block: use new write_pagelist api] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 9549ec01b0dcf1c1eb277cba60067236b3f48508 Author: Fred Isaman Date: Sat Jul 30 20:52:53 2011 -0400 pnfsblock: bl_read_pagelist Note: When upper layer's read/write request cannot be fulfilled, the block layout driver shouldn't silently mark the page as error. It should do what can be done and leave the rest to the upper layer. To do so, we should set rdata/wdata->res.count properly. When upper layer re-send the read/write request to finish the rest part of the request, pgbase is the position where we should start at. [pnfsblock: mark IO error with NFS_LAYOUT_{RW|RO}_FAILED] Signed-off-by: Peng Tao [pnfsblock: read path error handling] Signed-off-by: Fred Isaman [pnfsblock: handle errors when read or write pagelist.] Signed-off-by: Zhang Jingwang [pnfs-block: use new read_pagelist api] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit b2be7811dd94816f3df76708c8eb7f55bf7289e2 Author: Fred Isaman Date: Sat Jul 30 20:52:52 2011 -0400 pnfsblock: cleanup_layoutcommit In blocklayout driver. There are two things happening while layoutcommit/cleanup. 1. the modified extents are encoded. 2. On cleanup the extents are put back on the layout rw extents list, for reads. In the new system where actual xdr encoding is done in encode_layoutcommit() directly into xdr buffer, these are the new commit stages: 1. On setup_layoutcommit, the range is adjusted as before and a structure is allocated for communication with bl_encode_layoutcommit && bl_cleanup_layoutcommit (Generic layer provides a void-star to hang it on) 2. bl_encode_layoutcommit is called to do the actual encoding directly into xdr. The commit-extent-list is not freed and is stored on above structure. FIXME: The code is not yet converted to the new XDR cleanup 3. On cleanup the commit-extent-list is put back by a call to set_to_rw() as before, but with no need for XDR decoding of the list as before. And the commit-extent-list is freed. Finally allocated structure is freed. [rm inode and pnfs_layout_hdr args from cleanup_layoutcommit()] Signed-off-by: Jim Rees [pnfsblock: introduce bl_committing list] Signed-off-by: Peng Tao [pnfsblock: SQUASHME: adjust to API change] Signed-off-by: Fred Isaman [blocklayout: encode_layoutcommit implementation] Signed-off-by: Boaz Harrosh [pnfsblock: fix bug setting up layoutcommit.] Signed-off-by: Tao Guo [pnfsblock: cleanup_layoutcommit wants a status parameter] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 90ace12ac42f65d1f077c5ef5ec2efafdcac338f Author: Fred Isaman Date: Sat Jul 30 20:52:51 2011 -0400 pnfsblock: encode_layoutcommit In blocklayout driver. There are two things happening while layoutcommit/cleanup. 1. the modified extents are encoded. 2. On cleanup the extents are put back on the layout rw extents list, for reads. In the new system where actual xdr encoding is done in encode_layoutcommit() directly into xdr buffer, these are the new commit stages: 1. On setup_layoutcommit, the range is adjusted as before and a structure is allocated for communication with bl_encode_layoutcommit && bl_cleanup_layoutcommit (Generic layer provides a void-star to hang it on) 2. bl_encode_layoutcommit is called to do the actual encoding directly into xdr. The commit-extent-list is not freed and is stored on above structure. FIXME: The code is not yet converted to the new XDR cleanup 3. On cleanup the commit-extent-list is put back by a call to set_to_rw() as before, but with no need for XDR decoding of the list as before. And the commit-extent-list is freed. Finally allocated structure is freed. [rm inode and pnfs_layout_hdr args from cleanup_layoutcommit()] [pnfsblock: get rid of deprecated xdr macros] Signed-off-by: Jim Rees Signed-off-by: Peng Tao Signed-off-by: Fred Isaman [blocklayout: encode_layoutcommit implementation] Signed-off-by: Boaz Harrosh [pnfsblock: fix bug setting up layoutcommit.] Signed-off-by: Tao Guo [pnfsblock: prevent commit list corruption] [pnfsblock: fix layoutcommit with an empty opaque] Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 9f3770422c771da32c1d14e650c695eec27dbd1d Author: Fred Isaman Date: Sat Jul 30 20:52:50 2011 -0400 pnfsblock: merge rw extents Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit c1c2a4cd352269f1fb585b4a5c63abe24dd946c6 Author: Fred Isaman Date: Sat Jul 30 20:52:49 2011 -0400 pnfsblock: add extent manipulation functions Adds working implementations of various support functions to handle INVAL extents, needed by writes, such as bl_mark_sectors_init and bl_is_sector_init. [pnfsblock: fix 64-bit compiler warnings for extent manipulation] Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [Implement release_inval_marks] Signed-off-by: Zhang Jingwang Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 6d742ba538f98164f3c5e05cdcadb4ec6ddf504f Author: Fred Isaman Date: Sat Jul 30 20:52:48 2011 -0400 pnfsblock: bl_find_get_extent Implement bl_find_get_extent(), one of the core extent manipulation routines. [pnfsblock: Lookup list entry of layouts and tags in reverse order] Signed-off-by: Zhang Jingwang Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Jim Rees pnfsblock: fix print format warnings for sector_t and size_t gcc spews warnings about these on x86_64, e.g.: fs/nfs/blocklayout/blocklayout.c:74: warning: format ‘%Lu’ expects type ‘long long unsigned int’, but argument 2 has type ‘sector_t’ fs/nfs/blocklayout/blocklayout.c:388: warning: format ‘%d’ expects type ‘int’, but argument 5 has type ‘size_t’ Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit e9437ccef92a28ba4c9009404bb8c9b5672dc54a Author: Fred Isaman Date: Sat Jul 30 20:52:47 2011 -0400 pnfsblock: xdr decode pnfs_block_layout4 XDR decodes the block layout payload sent in LAYOUTGET result, storing the result in an extent list. [pnfsblock: get rid of deprecated xdr macros] Signed-off-by: Jim Rees Signed-off-by: Fred Isaman [pnfsblock: fix bug getting pnfs_layout_type in translate_devid().] Signed-off-by: Tao Guo Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 2f9fd182607e7b3bdca35f6ed7f2fae539f7c46b Author: Fred Isaman Date: Sat Jul 30 20:52:46 2011 -0400 pnfsblock: call and parse getdevicelist Call GETDEVICELIST during mount, then call and parse GETDEVICEINFO for each device returned. [pnfsblock: get rid of deprecated xdr macros] Signed-off-by: Jim Rees [pnfsblock: fix pnfs_deviceid references] Signed-off-by: Fred Isaman [pnfsblock: fix print format warnings for sector_t and size_t] [pnfs-block: #include ] [pnfsblock: no PNFS_NFS_SERVER] Signed-off-by: Benny Halevy [pnfsblock: fix bug determining size of striped volume] [pnfsblock: fix oops when using multiple devices] Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [pnfsblock: get rid of vmap and deviceid->area structure] Signed-off-by: Peng Tao Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 03341d2cc91c700fc38883e572043a6a8f17dd5c Author: Fred Isaman Date: Sat Jul 30 20:52:45 2011 -0400 pnfsblock: merge extents Replace a stub, so that extents underlying the layouts are properly added, merged, or ignored as necessary. Signed-off-by: Fred Isaman [pnfsblock: delete the new node before put it] Signed-off-by: Mingyang Guo Signed-off-by: Benny Halevy Signed-off-by: Peng Tao Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit a60d2ebd93d3c5db5b6913c4844b8e6bd3b5538e Author: Fred Isaman Date: Sat Jul 30 20:52:44 2011 -0400 pnfsblock: lseg alloc and free Signed-off-by: Fred Isaman [pnfsblock: fix bug getting pnfs_layout_type in translate_devid().] Signed-off-by: Tao Guo Signed-off-by: Benny Halevy Signed-off-by: Zhang Jingwang Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 025a70ed6518f635f66f314d6959718be79638db Author: Jim Rees Date: Sat Jul 30 20:52:43 2011 -0400 pnfsblock: remove device operations Signed-off-by: Jim Rees Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [upcall bugfixes] Signed-off-by: Peng Tao Signed-off-by: Trond Myklebust commit fe0a9b740881d181e3c96c1f6f6043e252692ffe Author: Jim Rees Date: Sat Jul 30 20:52:42 2011 -0400 pnfsblock: add device operations Signed-off-by: Jim Rees Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [upcall bugfixes] Signed-off-by: Peng Tao Signed-off-by: Trond Myklebust commit 9e69296999362c4e4b2821b64389b47e86e4821b Author: Fred Isaman Date: Sat Jul 30 20:52:41 2011 -0400 pnfsblock: basic extent code Adds structures and basic create/delete code for extents. Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Zhang Jingwang Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit e9643fe80d1a1e0ad6acdf43138c39b5709fdbbe Author: Benny Halevy Date: Sat Jul 30 20:52:40 2011 -0400 pnfsblock: use pageio_ops api [pnfsblock: use pnfs_generic_pg_init_read/write] Signed-off-by: Peng Tao Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 155e7524f28fa374da041434085050693c3df45b Author: Fred Isaman Date: Sat Jul 30 20:52:39 2011 -0400 pnfsblock: add blocklayout Kconfig option, Makefile, and stubs Define a configuration variable to enable/disable compilation of the block driver code. Add the minimal structure for a pnfs block layout driver, and empty list-heads that will hold the extent data [pnfsblock: make NFS_V4_1 select PNFS_BLOCK] Signed-off-by: Peng Tao Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy [pnfs-block: fix CONFIG_PNFS_BLOCK dependencies] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [pnfsblock: SQUASHME: adjust to API change] Signed-off-by: Fred Isaman [pnfs: move pnfs_layout_type inline in nfs_inode] Signed-off-by: Benny Halevy [blocklayout: encode_layoutcommit implementation] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [pnfsblock: layout alloc and free] Signed-off-by: Fred Isaman [pnfs: move pnfs_layout_type inline in nfs_inode] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [pnfsblock: define module alias] Signed-off-by: Peng Tao [rm inode and pnfs_layout_hdr args from cleanup_layoutcommit()] Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit db29c089094b2e686ebc9ed9f002be4a4f94b1f8 Author: Andy Adamson Date: Sat Jul 30 20:52:38 2011 -0400 pnfs: cleanup_layoutcommit This gives layout driver a chance to cleanup structures they put in at encode_layoutcommit. Signed-off-by: Andy Adamson [fixup layout header pointer for layoutcommit] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy [rm inode and pnfs_layout_hdr args from cleanup_layoutcommit()] Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit dae100c2b1b9463996aab9162f2258145c43f7df Author: Fred Isaman Date: Sat Jul 30 20:52:37 2011 -0400 pnfs: ask for layout_blksize and save it in nfs_server Block layout needs it to determine IO size. Signed-off-by: Fred Isaman Signed-off-by: Tao Guo Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 738fd0f360359aecc7fcd7604bbe9e854d81fb1f Author: Benny Halevy Date: Sat Jul 30 20:52:36 2011 -0400 pnfs: add set-clear layoutdriver interface To allow layout driver to issue getdevicelist at mount time, and clean up at umount time. [fixup non NFS_V4_1 set_pnfs_layoutdriver definition] [pnfs: pass mntfh down the init_pnfs path] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 7f11d8d38d64739e190581e015a2a2730ff54e2a Author: Andy Adamson Date: Sat Jul 30 20:52:35 2011 -0400 pnfs: GETDEVICELIST The block driver uses GETDEVICELIST Signed-off-by: Andy Adamson [pass struct nfs_server * to getdevicelist] [get machince creds for getdevicelist] [fix getdevicelist decode sizing] Signed-off-by: Benny Halevy Signed-off-by: Benny Halevy Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 3557c6c3be5b2ca0b11365db7f8a813253eb520b Author: Peng Tao Date: Sat Jul 30 20:52:34 2011 -0400 pnfs: use lwb as layoutcommit length Using NFS4_MAX_UINT64 will break current protocol. [Needed in v3.0] CC: Stable Tree Signed-off-by: Peng Tao Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit a9bae5666d0510ad69bdb437371c9a3e6b770705 Author: Peng Tao Date: Sat Jul 30 20:52:33 2011 -0400 pnfs: let layoutcommit handle a list of lseg There can be multiple lseg per file, so layoutcommit should be able to handle it. [Needed in v3.0] CC: Stable Tree Signed-off-by: Peng Tao Signed-off-by: Boaz Harrosh Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit 9fa4075878a5faac872a63f4a97ce79c776264e9 Author: Peng Tao Date: Sat Jul 30 20:52:32 2011 -0400 pnfs: save layoutcommit cred at layout header init No need to save it for every lseg. No need to save it at every pnfs_set_layoutcommit. [Needed in v3.0] CC: Stable Tree Signed-off-by: Peng Tao Signed-off-by: Boaz Harrosh Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit acff5880539fe33897d016c0f3dcf062e67c61b6 Author: Peng Tao Date: Sat Jul 30 20:52:31 2011 -0400 pnfs: save layoutcommit lwb at layout header No need to save it for every lseg. [Needed in v3.0] CC: Stable Tree Signed-off-by: Peng Tao Signed-off-by: Jim Rees Signed-off-by: Trond Myklebust commit eacbbae385bf492229e84024863960d3160547c7 Author: Andrew Morton Date: Thu Jul 28 13:59:49 2011 -0700 slab: use NUMA_NO_NODE Use the nice enumerated constant. Cc: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Pekka Enberg commit 0e995816f4fb69cef602b7fe82da68ced6be3b41 Author: Wu Fengguang Date: Fri Jul 29 22:14:35 2011 -0600 don't busy retry the inode on failed grab_super_passive() This fixes a soft lockup on conditions a) the flusher is working on a work by __bdi_start_writeback(), while b) someone else calls writeback_inodes_sb*() or sync_inodes_sb(), which grab sb->s_umount and enqueue a new work for the flusher to execute The s_umount grabbed by (b) will fail the grab_super_passive() in (a). Then if the inode is requeued, wb_writeback() will busy retry on it. As a result, wb_writeback() loops for ever without releasing wb->list_lock, which further blocks other tasks. Fix the busy loop by redirtying the inode. This may undesirably delay the writeback of the inode, however most likely it will be picked up soon by the queued work by writeback_inodes_sb*(), sync_inodes_sb() or even writeback_inodes_wb(). bug url: http://www.spinics.net/lists/linux-fsdevel/msg47292.html Reported-by: Christoph Hellwig Tested-by: Christoph Hellwig Signed-off-by: Wu Fengguang commit 250f8e3db646028353a2a737ddb7a894c97a1098 Merge: 464c909 5903417 Author: Linus Torvalds Date: Sat Jul 30 10:51:11 2011 -1000 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: sungem: fix compile failure caused by trivial #include consolidation commit d3690f8b713f9710e68214ca38fb8b07b587a2a7 Author: Greg Dietsche Date: Thu Jun 16 11:42:07 2011 -0500 m68k/math-emu: Remove unnecessary code Remove unnecessary code that matches this coccinelle pattern if (...) return ret; return ret; Signed-off-by: Greg Dietsche Signed-off-by: Geert Uytterhoeven commit ffe6c42aa3f731f8707e49c39b4b37310ed363e9 Author: Geert Uytterhoeven Date: Sun Jun 12 11:01:21 2011 +0200 m68k/math-emu: Remove commented out old code It's been unused for ages, and contains bugs (e.g. incorrect shifts in lsl64()). Reported-by: Jonathan Elchison Signed-off-by: Geert Uytterhoeven commit b2cb92417d301f46801695243df5061a9bd31dd5 Author: Geert Uytterhoeven Date: Wed Jun 8 20:31:32 2011 +0200 m68k: Kill warning in setup_arch() when compiling for Sun3 arch/m68k/kernel/setup_mm.c: In function ‘setup_arch’: arch/m68k/kernel/setup_mm.c:219: warning: unused variable ‘i’ Signed-off-by: Geert Uytterhoeven commit 398476195a561271654ecce0fa27330688d326df Author: Geert Uytterhoeven Date: Wed Jun 8 20:20:58 2011 +0200 m68k/atari: Prefix GPIO_{IN,OUT} with CODEC_ These defines are way to generic, and cause conflicts: drivers/net/wireless/rtlwifi/rtl8192c/../rtl8192ce/reg.h:369:1: warning: "GPIO_IN" redefined drivers/net/wireless/rtlwifi/rtl8192c/../rtl8192ce/reg.h:370:1: warning: "GPIO_OUT" redefined drivers/net/wireless/rtlwifi/rtl8192se/reg.h:252:1: warning: "GPIO_IN" redefined drivers/net/wireless/rtlwifi/rtl8192se/reg.h:253:1: warning: "GPIO_OUT" redefined Signed-off-by: Geert Uytterhoeven commit a0e997c20a2fbe25b0f97fb7521cdbda341c7f0a Author: Geert Uytterhoeven Date: Sat May 7 20:58:02 2011 +0200 sparc: iounmap() and *_free_coherent() - Use lookup_resource() Replace a custom implementation (which doesn't lock the resource tree) by a call to lookup_resource() Signed-off-by: Geert Uytterhoeven Acked-by: David S. Miller commit 217bbd81885587b462311fab1b04172926c59f1e Author: Michael Schmitz Date: Mon Nov 1 19:54:00 2010 +0100 m68k/atari: Reserve some ST-RAM early on for device buffer use Based on an original patch from Michael Schmitz: Because mem_init() is now called before device init, devices that rely on ST-RAM may find all ST-RAM already allocated to other users by the time device init happens. In particular, a large initrd RAM disk may use up enough of ST-RAM to cause atari_stram_alloc() to resort to __get_dma_pages() allocation. In the current state of Atari memory management, all of RAM is marked DMA capable, so __get_dma_pages() may well return RAM that is not in actual fact DMA capable. Using this for frame buffer or SCSI DMA buffer causes subtle failure. The ST-RAM allocator has been changed to allocate memory from a pool of reserved ST-RAM of configurable size, set aside on ST-RAM init (i.e. before mem_init()). As long as this pool is not exhausted, allocation of real ST-RAM can be guaranteed. Other changes: - Replace the custom allocator in the ST-RAM pool by the existing allocator in the resource subsystem, - Remove mem_init_done and its hook, as memory init is now done before device init, - Remove /proc/stram, as ST-RAM usage now shows up under /proc/iomem, e.g. 005f2000-006f1fff : ST-RAM Pool 005f2000-0063dfff : atafb 0063e000-00641fff : ataflop 00642000-00642fff : SCSI Signed-off-by: Michael Schmitz [Andreas Schwab : Use memparse()] [Geert: Use the resource subsystem instead of a custom allocator] Signed-off-by: Geert Uytterhoeven commit b7785e954348465e1926d9c10ff3e49c207d4ec6 Author: Geert Uytterhoeven Date: Sat May 7 20:56:00 2011 +0200 m68k/amiga: Chip RAM - Use lookup_resource() Replace a custom implementation (which doesn't lock the resource tree) by a call to lookup_resource() Signed-off-by: Geert Uytterhoeven commit 1c388919d89ca35741e9c4d3255adf87f76f0c06 Author: Geert Uytterhoeven Date: Sat May 7 20:53:16 2011 +0200 resources: Add lookup_resource() Add a function to find an existing resource by a resource start address. This allows to implement simple allocators (with a malloc/free-alike API) on top of the resource system. Signed-off-by: Geert Uytterhoeven commit 88efd0bbc0fe403a9948e6f94cc48b9f15ee4861 Author: Geert Uytterhoeven Date: Sat May 7 15:08:36 2011 +0200 sparc: _sparc_find_resource() should check for exact matches The address that's passed to _sparc_find_resource() should always be the start address of a resource: - iounmap() passes a page-aligned virtual address, while the original address was created by adding the in-page offset to the resource's start address, - sbus_free_coherent() and pci32_free_coherent() should be passed an address obtained from sbus_alloc_coherent() resp. pci32_alloc_coherent(), which is always a resource's start address. Hence replace the range check by a check for an exact match. Signed-off-by: Geert Uytterhoeven Acked-by: David S. Miller commit 1dad6c7bd7dd158ef874f7382615cedc21a1f48d Author: Geert Uytterhoeven Date: Sun May 22 11:09:02 2011 +0200 m68k/amiga: Chip RAM - Offset resource end by CHIP_PHYSADDR Technically, the end of Chip RAM should be offset by CHIP_PHYSADDR (which is zero). Signed-off-by: Geert Uytterhoeven commit cb4f9988f86746fff3183d31381deb2b2a421a3a Author: Geert Uytterhoeven Date: Wed Apr 27 10:28:19 2011 +0200 m68k/amiga: Chip RAM - Use resource_size() to fix off-by-one error Signed-off-by: Geert Uytterhoeven commit cab49bc95d848a85d7108f896f6d21283f25f54c Author: Geert Uytterhoeven Date: Sun Apr 24 23:40:51 2011 +0200 m68k/amiga: Chip RAM - Change chipavail to an atomic_t While the core resource handling code is safe, our global counter must still be protected against concurrent modifications. Signed-off-by: Geert Uytterhoeven commit 3a17bfa4fb37e7f8e06ef31feafec559bd4c6699 Author: Geert Uytterhoeven Date: Sun Apr 24 23:19:05 2011 +0200 m68k/amiga: Chip RAM - Always allocate from the start of memory As of commit 5df1abdbd37af2ae317a1c5b5944173284dc55d6 ('m68k/amiga: Fix "debug=mem"'), "debug=mem" no longer uses amiga_chip_alloc_res(), so we can remove the hack to prefer memory at the safe end. This allows to simplify the code and make amiga_chip_alloc() just call amiga_chip_alloc_res() internally. Signed-off-by: Geert Uytterhoeven commit b4f6f45302a9440e26f71dab0b95906bcc3bd13a Author: Geert Uytterhoeven Date: Sun Apr 24 22:55:20 2011 +0200 m68k/amiga: Chip RAM - Convert from printk() to pr_*() and fix a few formattings: - resource sizes are now resource_size_t, use %pR to make it future proof, - use %lu for unsigned long. Signed-off-by: Geert Uytterhoeven commit 5be3246306e613055505f4950411f5497d97edb0 Author: Geert Uytterhoeven Date: Sat May 21 20:46:39 2011 +0200 m68k/amiga: Chip RAM - Use tabs for indentation Signed-off-by: Geert Uytterhoeven commit 464c9098bbc17b4596aa12191a7e646a28e7587a Merge: 4c677e2 f90be42 Author: Linus Torvalds Date: Sat Jul 30 08:57:57 2011 -1000 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: (24 commits) hwmon: (lm90) Refactor reading of config2 register hwmon: (lm90) Make SA56004 detection more robust hwmon: (lm90) Simplify handling of extended local temp register hwmon: (pmbus) Add client driver for LM25066, LM5064, and LM5066 hwmon: (max34440) Add support for peak attributes hwmon: (max8688) Add support for peak attributes hwmon: (max16064) Add support for peak attributes hwmon: (adm1275) Add support for peak attributes hwmon: (pmbus) Add support for peak attributes hwmon: Add new attributes to sysfs ABI hwmon: (pmbus) Strengthen check for status register existence hwmon: (pmbus) Add support for virtual pages hwmon: (pmbus) Support reading and writing of word registers in device specific code hwmon: (pmbus) Increase attribute name size hwmon: (pmbus) Add ADP4000, NCP4200 and NCP4208 to list of supported devices hwmon: (pmbus) Add support for VID output voltage mode hwmon: (pmbus) Move PMBus drivers to drivers/hwmon/pmbus hwmon: (coretemp) Add core/pkg threshold support to Coretemp hwmon: (lm95241) Add support for LM95231 hwmon: LM95245 driver ... commit 4c677e2eefdba9c5bfc4474e2e91b26ae8458a1d Author: Vasiliy Kulikov Date: Fri Jul 29 03:56:40 2011 +0400 shm: optimize locking and ipc_namespace getting shm_lock() does a lookup of shm segment in shm_ids(ns).ipcs_idr, which is redundant as we already know shmid_kernel address. An actual lock is also not required for reads until we really want to destroy the segment. exit_shm() and shm_destroy_orphaned() may avoid the loop by checking whether there is at least one segment in current ipc_namespace. The check of nsproxy and ipc_ns against NULL is redundant as exit_shm() is called from do_exit() before the call to exit_notify(), so the dereferencing current->nsproxy->ipc_ns is guaranteed to be safe. Reported-by: Oleg Nesterov Signed-off-by: Vasiliy Kulikov Acked-by: Serge Hallyn Signed-off-by: Linus Torvalds commit 5774ed014f02120db9a6945a1ecebeb97c2acccb Author: Vasiliy Kulikov Date: Fri Jul 29 03:55:31 2011 +0400 shm: handle separate PID namespaces case shm_try_destroy_orphaned() and shm_try_destroy_current() didn't handle the case of separate PID namespaces, but a single IPC namespace. If there are tasks with the same PID values using the same shmem object, the wrong destroy decision could be reached. On shm segment creation store the pointer to the creator task in shmid_kernel->shm_creator field and zero it on task exit. Then use the ->shm_creator insread of shm_cprid in both functions. As shmid_kernel object is already locked at this stage, no additional locking is needed. Signed-off-by: Vasiliy Kulikov Acked-by: Serge Hallyn Signed-off-by: Linus Torvalds commit 374e4e3ec347d4f70e1417ce3e1c454f133dab72 Author: Bryan Schumaker Date: Fri Jul 29 11:49:06 2011 -0400 Additional readdir cookie loop information Print out the name of the file that triggers the cookie loop message to make it slightly easier to track down the cause. Signed-off-by: Bryan Schumaker Signed-off-by: Trond Myklebust commit 6c6e3b828b2a13b923b9465fc4316c5bdc92291f Merge: c11abbb d272281 Author: Linus Torvalds Date: Sat Jul 30 08:36:02 2011 -1000 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (71 commits) [SCSI] fcoe: cleanup cpu selection for incoming requests [SCSI] fcoe: add fip retry to avoid missing critical keep alive [SCSI] libfc: fix warn on in lport retry [SCSI] libfc: Remove the reference to FCP packet from scsi_cmnd in case of error [SCSI] libfc: cleanup sending SRR request [SCSI] libfc: two minor changes in comments [SCSI] libfc, fcoe: ignore rx frame with wrong xid info [SCSI] libfc: release exchg cache [SCSI] libfc: use FC_MAX_ERROR_CNT [SCSI] fcoe: remove unused ptype field in fcoe_rcv_info [SCSI] bnx2fc: Update copyright and bump version to 1.0.4 [SCSI] bnx2fc: Tx BDs cache in write tasks [SCSI] bnx2fc: Do not arm CQ when there are no CQEs [SCSI] bnx2fc: hold tgt lock when calling cmd_release [SCSI] bnx2fc: Enable support for sequence level error recovery [SCSI] bnx2fc: HSI changes for tape [SCSI] bnx2fc: Handle REC_TOV error code from firmware [SCSI] bnx2fc: REC/SRR link service request and response handling [SCSI] bnx2fc: Support 'sequence cleanup' task [SCSI] dh_rdac: Associate HBA and storage in rdac_controller to support partitions in storage ... commit 0c0308066ca53fdf1423895f3a42838b67b3a5a8 Author: Trond Myklebust Date: Sat Jul 30 12:45:35 2011 -0400 NFS: Fix spurious readdir cookie loop messages If the directory contents change, then we have to accept that the file->f_pos value may shrink if we do a 'search-by-cookie'. In that case, we should turn off the loop detection and let the NFS client try to recover. The patch also fixes a second loop detection bug by ensuring that after turning on the ctx->duped flag, we read at least one new cookie into ctx->dir_cookie before attempting to match with ctx->dup_cookie. Reported-by: Petr Vandrovec Cc: stable@kernel.org [2.6.39+] Signed-off-by: Trond Myklebust commit c11abbbaa3252875c5740a6880b9a1a6f1e2a870 Merge: 1d3fe4a 9e577e8 Author: Linus Torvalds Date: Sat Jul 30 08:21:48 2011 -1000 Merge branch 'slub/lockless' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 * 'slub/lockless' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: (21 commits) slub: When allocating a new slab also prep the first object slub: disable interrupts in cmpxchg_double_slab when falling back to pagelock Avoid duplicate _count variables in page_struct Revert "SLUB: Fix build breakage in linux/mm_types.h" SLUB: Fix build breakage in linux/mm_types.h slub: slabinfo update for cmpxchg handling slub: Not necessary to check for empty slab on load_freelist slub: fast release on full slab slub: Add statistics for the case that the current slab does not match the node slub: Get rid of the another_slab label slub: Avoid disabling interrupts in free slowpath slub: Disable interrupts in free_debug processing slub: Invert locking and avoid slab lock slub: Rework allocator fastpaths slub: Pass kmem_cache struct to lock and freeze slab slub: explicit list_lock taking slub: Add cmpxchg_double_slab() mm: Rearrange struct page slub: Move page->frozen handling near where the page->freelist handling occurs slub: Do not use frozen page flag but a bit in the page counters ... commit c49bafa3842751b8955a962859f42d307673d75d Author: Dan Carpenter Date: Sat Jul 30 12:58:41 2011 -0400 ext4: add missing kfree() on error return path in add_new_gdb() We added some more error handling in b40971426a "ext4: add error checking to calls to ext4_handle_dirty_metadata()". But we need to call kfree() as well to avoid a memory leak. Signed-off-by: Dan Carpenter Signed-off-by: "Theodore Ts'o" commit 59be8e7280c10fd8f078ba6dc2bcdc2b1453b6ab Author: Theodore Ts'o Date: Sat Jul 30 12:38:46 2011 -0400 ext4: change umode_t in tracepoint headers to be an explicit __u16 As requested by Al Viro, since umode_t may be changing to a u32 for some architectures. Signed-off-by: "Theodore Ts'o" Cc: Al Viro commit d59729f4e794f814b25ccd2aebfbe606242c4544 Author: Theodore Ts'o Date: Sat Jul 30 12:34:19 2011 -0400 ext4: fix races in ext4_sync_parent() Fix problems if fsync() races against a rename of a parent directory as pointed out by Al Viro in his own inimitable way: >While we are at it, could somebody please explain what the hell is ext4 >doing in >static int ext4_sync_parent(struct inode *inode) >{ > struct writeback_control wbc; > struct dentry *dentry = NULL; > int ret = 0; > > while (inode && ext4_test_inode_state(inode, EXT4_STATE_NEWENTRY)) { > ext4_clear_inode_state(inode, EXT4_STATE_NEWENTRY); > dentry = list_entry(inode->i_dentry.next, > struct dentry, d_alias); > if (!dentry || !dentry->d_parent || !dentry->d_parent->d_inode) > break; > inode = dentry->d_parent->d_inode; > ret = sync_mapping_buffers(inode->i_mapping); > ... >Note that dentry obviously can't be NULL there. dentry->d_parent is never >NULL. And dentry->d_parent would better not be negative, for crying out >loud! What's worse, there's no guarantees that dentry->d_parent will >remain our parent over that sync_mapping_buffers() *and* that inode won't >just be freed under us (after rename() and memory pressure leading to >eviction of what used to be our dentry->d_parent)...... Reported-by: Al Viro Signed-off-by: "Theodore Ts'o" commit 1d3fe4a75b691285cded47c9f1a91b30d25287b0 Merge: 664a41b 2a11c8e Author: Linus Torvalds Date: Sat Jul 30 00:17:06 2011 -0700 Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: (25 commits) kconfig: Introduce IS_ENABLED(), IS_BUILTIN() and IS_MODULE() xconfig: Abort close if configuration cannot be saved kconfig: fix missing "0x" prefix from S_HEX symbol in autoconf.h kconfig/nconf: remove useless conditionnal kconfig/nconf: prevent segfault on empty menu kconfig/nconf: use the generic menu_get_ext_help() nconfig: Avoid Wunused-but-set warning kconfig/conf: mark xfgets() private kconfig: remove pending prototypes for kconfig_load() kconfig/conf: add command line options' description kconfig/conf: reduce the scope of `defconfig_file' kconfig: use calloc() for expr allocation kconfig: introduce specialized printer kconfig: do not overwrite symbol direct dependency in assignment kconfig/gconf: silent missing prototype warnings kconfig/gconf: kill deadcode kconfig: nuke LKC_DIRECT_LINK cruft kconfig: nuke reference to SWIG kconfig: add missing inclusion kconfig: add missing inclusion ... Fix up conflicts in scripts/kconfig/Makefile commit 664a41b8a91bf78a01a751e15175e0008977685a Merge: 983236b ee2ce3a Author: Linus Torvalds Date: Sat Jul 30 00:08:53 2011 -0700 Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (430 commits) [media] ir-mce_kbd-decoder: include module.h for its facilities [media] ov5642: include module.h for its facilities [media] em28xx: Fix DVB-C maxsize for em2884 [media] tda18271c2dd: Fix saw filter configuration for DVB-C @6MHz [media] v4l: mt9v032: Fix Bayer pattern [media] V4L: mt9m111: rewrite set_pixfmt [media] V4L: mt9m111: fix missing return value check mt9m111_reg_clear [media] V4L: initial driver for ov5642 CMOS sensor [media] V4L: sh_mobile_ceu_camera: fix Oops when USERPTR mapping fails [media] V4L: soc-camera: remove soc-camera bus and devices on it [media] V4L: soc-camera: un-export the soc-camera bus [media] V4L: sh_mobile_csi2: switch away from using the soc-camera bus notifier [media] V4L: add media bus configuration subdev operations [media] V4L: soc-camera: group struct field initialisations together [media] V4L: soc-camera: remove now unused soc-camera specific PM hooks [media] V4L: pxa-camera: switch to using standard PM hooks [media] NetUP Dual DVB-T/C CI RF: force card hardware revision by module param [media] Don't OOPS if videobuf_dvb_get_frontend return NULL [media] NetUP Dual DVB-T/C CI RF: load firmware according card revision [media] omap3isp: Support configurable HS/VS polarities ... Fix up conflicts: - arch/arm/mach-omap2/board-rx51-peripherals.c: cleanup regulator supply definitions in mach-omap2 vs OMAP3: RX-51: define vdds_csib regulator supply - drivers/staging/tm6000/tm6000-alsa.c (trivial) commit 983236b5741e557451f3ed4ec5ebf1f62a5b2c15 Merge: 74aec4e a5a7bbc Author: Linus Torvalds Date: Fri Jul 29 23:45:06 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: Fix build breakage in xfs_iops.c when CONFIG_FS_POSIX_ACL is not set commit 74aec4e0dd93d4202d3d5a692723f39cc5332b15 Merge: c32e7d6 985ca0e Author: Linus Torvalds Date: Fri Jul 29 23:43:50 2011 -0700 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6 * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6: ecryptfs: Make inode bdi consistent with superblock bdi eCryptfs: Unlock keys needed by ecryptfsd commit c32e7d669ef827f97d1aae8f6b34542665defbf6 Merge: dbfe898 0642d2e Author: Linus Torvalds Date: Fri Jul 29 23:43:32 2011 -0700 Merge branch 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/balloon: Fix compile errors - missing header files. xen/grant: Fix compile warning. xen/pciback: remove duplicated #include commit dbfe89877741726c30efb41f0132e247a78c3681 Author: Greg Dietsche Date: Fri Jul 29 16:46:16 2011 +0100 frv: remove unnecessary code remove unnecessary code that matches this coccinelle pattern if (...) return ret; return ret; Signed-off-by: Greg Dietsche Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 83c1b31794a9e3cb30edabef7e57fbdbe129c5ce Author: James Bottomley Date: Fri Jul 29 17:11:32 2011 +0400 ramoops: fix compile failure on parisc Fixes this: drivers/char/ramoops.c: In function 'ramoops_init': drivers/char/ramoops.c:221: error: implicit declaration of function 'IS_ERR' drivers/char/ramoops.c:222: error: implicit declaration of function 'PTR_ERR' If it actually builds on other platforms, it's probably getting linux/err.h via some other #include. Signed-off-by: James Bottomley Signed-off-by: Linus Torvalds commit f85f19de90a9997583bb26e6f1f9297a4e152c18 Merge: b993fdb 7b87c9d Author: Linus Torvalds Date: Fri Jul 29 23:35:05 2011 -0700 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: PCI: remove printks about disabled bridge windows PCI: fold pci_calc_resource_flags() into decode_bar() PCI: treat mem BAR type "11" (reserved) as 32-bit, not 64-bit, BAR PCI: correct pcie_set_readrq write size PCI: pciehp: change wait time for valid configuration access x86/PCI: Preserve existing pci=bfsort whitelist for Dell systems PCI: ARI is a PCIe v2 feature x86/PCI: quirks: Use pci_dev->revision PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. PCI hotplug: cpqphp: use pci_dev->vendor PCI hotplug: cpqphp: use pci_dev->subsystem_{vendor|device} x86/PCI: config space accessor functions should not ignore the segment argument PCI: Assign values to 'pci_obff_signal_type' enumeration constants x86/PCI: reduce severity of host bridge window conflict warnings PCI: enumerate the PCI device only removed out PCI hieratchy of OS when re-scanning PCI PCI: PCIe AER: add aer_recover_queue x86/PCI: select direct access mode for mmconfig option PCI hotplug: Rename is_ejectable which also exists in dock.c commit b993fdbc7fe26f96b59003a3552c418a71aa0a9f Merge: 8f57be8 b3c4b98 Author: Linus Torvalds Date: Fri Jul 29 23:33:40 2011 -0700 Merge branch 'upstream/xen-tracing2' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen * 'upstream/xen-tracing2' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen: xen/tracing: fix compile errors when tracing is disabled. commit 8f57be8ee44d92ef161c5af685aedbb717db96e0 Merge: cb7dee8 fb149f9 Author: Linus Torvalds Date: Fri Jul 29 23:32:53 2011 -0700 Merge branch 'at91/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'at91/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: at91: add arch specific ioremap support at91: factorize sram init at91: move register clocks to soc generic init at91: move clock subsystem init to soc generic init at91: use structure to store the current soc at91: remove AT91_DBGU offset from dbgu register macro at91: factorize at91 interrupts init to soc at91: introduce commom AT91_BASE_SYS commit cb7dee8d22f3e9320424e769d860fbd9712a0666 Merge: 49267fc 6124a4e Author: Linus Torvalds Date: Fri Jul 29 23:32:02 2011 -0700 Merge branch 'next/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (21 commits) arm/dt: tegra devicetree support arm/versatile: Add device tree support dt/irq: add irq_domain_generate_simple() helper irq: add irq_domain translation infrastructure dmaengine: imx-sdma: add device tree probe support dmaengine: imx-sdma: sdma_get_firmware does not need to copy fw_name dmaengine: imx-sdma: use platform_device_id to identify sdma version mmc: sdhci-esdhc-imx: add device tree probe support mmc: sdhci-pltfm: dt device does not pass parent to sdhci_alloc_host mmc: sdhci-esdhc-imx: get rid of the uses of cpu_is_mx() mmc: sdhci-esdhc-imx: do not reference platform data after probe mmc: sdhci-esdhc-imx: extend card_detect and write_protect support for mx5 net/fec: add device tree probe support net: ibm_newemac: convert it to use of_get_phy_mode dt/net: add helper function of_get_phy_mode net/fec: gasket needs to be enabled for some i.mx serial/imx: add device tree probe support serial/imx: get rid of the uses of cpu_is_mx1() arm/dt: Add dtb make rule arm/dt: Add skeleton dtsi file ... commit 49267fc82ad2825132be3b016d8eb58a90cb0c36 Merge: 2313bcd 18cb63b Author: Linus Torvalds Date: Fri Jul 29 23:31:22 2011 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: ARM: zynq: remove incorrectly deleted file ARM: tegra: only select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC commit 2313bcdcc9ff1e42f51b200dc65ddaae14c347f4 Merge: 59ed2bb 3f43f68 Author: Linus Torvalds Date: Fri Jul 29 23:28:47 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-watchdog * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-watchdog: (25 commits) watchdog: WatchDog Timer Driver Core - Add minimum and max timeout watchdog: WatchDog Timer Driver Core - Add ioctl call watchdog: WatchDog Timer Driver Core - Add nowayout feature watchdog: WatchDog Timer Driver Core - Add Magic Close feature watchdog: WatchDog Timer Driver Core - Add WDIOC_SETTIMEOUT and WDIOC_GETTIMEOUT ioctl watchdog: WatchDog Timer Driver Core - Add WDIOC_SETOPTIONS ioctl watchdog: WatchDog Timer Driver Core - Add WDIOC_KEEPALIVE ioctl watchdog: WatchDog Timer Driver Core - Add basic ioctl functionality watchdog: WatchDog Timer Driver Core - Add basic framework watchdog: hpwdt: add next gen HP servers watchdog: it8712f_wdt.c: improve includes watchdog: at91sam9/wdt: move register header to drivers watchdog: Add Xilinx watchdog timer driver watchdog: remove empty pm-functions watchdog: sp805: Flush posted writes in enable/disable. watchdog: sp805: Don't write 0 to the load value register. watchdog: imx2_wdt: add device tree probe support watchdog: s3c2410: Add support for device tree based probe watchdog: mpcore_wdt: Add suspend/resume support. watchdog: mtx1-wdt: use dev_{err,info} instead of printk() ... commit 59ed2bb27492f74ab898ee1e26c69dfd78444640 Author: Linus Torvalds Date: Fri Jul 29 23:21:50 2011 -0700 ext2: remove duplicate 'ext2_get_acl()' define When commit 4e34e719e457 ("fs: take the ACL checks to common code") changed the xyz_check_acl() functions into the more natural xyz_get_acl() interface, we grew two copies of the #define ext2_get_acl NULL define for the non-acl case. Remove the extra one. Reported-by: Marco Stornelli Cc: Christoph Hellwig Cc: Al Viro Signed-off-by: Linus Torvalds commit 2a11c8ea20bf850b3a2c60db8c2e7497d28aba99 Author: Michal Marek Date: Wed Jul 20 17:38:57 2011 +0200 kconfig: Introduce IS_ENABLED(), IS_BUILTIN() and IS_MODULE() Replace the config_is_*() macros with a variant that allows for grepping for usage of CONFIG_* options in the code. Usage: if (IS_ENABLED(CONFIG_NUMA)) or #if IS_ENABLED(CONFIG_NUMA) The IS_ENABLED() macro evaluates to 1 if the argument is set (to either 'y' or 'm'), IS_BUILTIN() tests if the option is 'y' and IS_MODULE() test if the option is 'm'. Only boolean and tristate options are supported. Reviewed-by: Arnaud Lacombe Acked-by: Randy Dunlap Signed-off-by: Michal Marek commit 029e9f73667f9b4661ac9886f706d75d26850260 Author: Thomas Renninger Date: Thu Jul 21 11:54:54 2011 +0200 cpupower: Do detect IDA (opportunistic processor performance) via cpuid IA32-Intel Devel guide Volume 3A - 14.3.2.1 ------------------------------------------- ... Opportunistic processor performance operation can be disabled by setting bit 38 of IA32_MISC_ENABLES. This mechanism is intended for BIOS only. If IA32_MISC_ENABLES[38] is set, CPUID.06H:EAX[1] will return 0. Better detect things via cpuid, this cleans up the code a bit and the MSR parts were not working correctly anyway. Signed-off-by: Thomas Renninger CC: lenb@kernel.org CC: linux@dominikbrodowski.net CC: cpufreq@vger.kernel.org Signed-off-by: Dominik Brodowski commit 8fb2e440b223b966f74a04a48f6f71f288fa671b Author: Thomas Renninger Date: Thu Jul 21 11:54:53 2011 +0200 cpupower: Show Intel turbo ratio support via ./cpupower frequency-info This adds the last piece missing from turbostat (if called with -v). It shows on Intel machines supporting Turbo Boost how many cores have to be active/idle to enter which boost mode (frequency). Whether the HW really enters these boost modes can be verified via ./cpupower monitor. Signed-off-by: Thomas Renninger CC: lenb@kernel.org CC: linux@dominikbrodowski.net CC: cpufreq@vger.kernel.org Signed-off-by: Dominik Brodowski commit a5a7bbcc0137e5cdad21cce0962f6be0b7ecf173 Author: Markus Trippelsdorf Date: Tue Jul 26 11:15:20 2011 +0200 xfs: Fix build breakage in xfs_iops.c when CONFIG_FS_POSIX_ACL is not set commit 4e34e719e45, that takes the ACL checks to common code, accidentely broke the build when CONFIG_FS_POSIX_ACL is not set: CC fs/xfs/linux-2.6/xfs_iops.o fs/xfs/linux-2.6/xfs_iops.c:1025:14: error: ‘xfs_get_acl’ undeclared here (not in a function) Fix this by declaring xfs_get_acl a static inline function. Signed-off-by: Markus Trippelsdorf Signed-off-by: Alex Elder commit 76b659a31df5174d71832b7882ef31b32e1f8d59 Author: Roman Vasiyarov Date: Mon Apr 25 21:34:23 2011 +0400 cpupowerutils: increase MAX_LINE_LEN larger sysfs data (>255 bytes) was truncated and thus used improperly [linux@dominikbrodowski.net: adapted to cpupowerutils] Signed-off-by: Roman Vasiyarov Signed-off-by: Dominik Brodowski commit ee3db6fcafa0b0023c1f5242452e9e4e6e3021c6 Author: Thomas Renninger Date: Thu Apr 21 17:50:26 2011 +0200 cpupower: Rename package from cpupowerutils to cpupower Signed-off-by: Thomas Renninger Signed-off-by: Dominik Brodowski commit 4c22337f866cd3559023372a2111352a7610dfee Author: Thomas Renninger Date: Thu Apr 21 17:50:25 2011 +0200 cpupowerutils: Rename: libcpufreq->libcpupower [linux@dominikbrodowski.net: fix .gitignore] Signed-off-by: Thomas Renninger Signed-off-by: Dominik Brodowski commit af594f0ceb73c5bd984c89f3386bd7e8ecc471f5 Author: Dominik Brodowski Date: Wed Apr 20 20:01:39 2011 +0200 cpupowerutils: use kernel version-derived version string As cpupowerutils is intended to be included into the kernel sources, use the kernel versioning instead of a custom version. The script utils/version-gen.sh is largely based on the script already found in tools/perf/util/PERF-VERSION-GEN . Signed-off-by: Dominik Brodowski commit a1ce5ba2b7d08ab6347dc254f86f70e91c5f1a44 Author: Dominik Brodowski Date: Tue Apr 19 20:33:50 2011 +0200 cpupowerutils: utils - ConfigStyle bugfixes Signed-off-by: Dominik Brodowski commit 2cd005cac6d586b8ca324814a9c58ed0c08ffe40 Author: Dominik Brodowski Date: Tue Apr 19 20:16:05 2011 +0200 cpupowerutils: helpers - ConfigStyle bugfixes Signed-off-by: Dominik Brodowski commit b510b54127a4d4112a9a3f200339719bcb463c15 Author: Dominik Brodowski Date: Tue Apr 19 19:58:59 2011 +0200 cpupowerutils: idle_monitor - ConfigStyle bugfixes Signed-off-by: Dominik Brodowski commit 6c2b8185517fea46bdb1e4e70c7005901fcc89ab Author: Dominik Brodowski Date: Tue Apr 19 19:42:33 2011 +0200 cpupowerutils: lib - ConfigStyle bugfixes Signed-off-by: Dominik Brodowski commit 02af3cb5aac13d8ef7edb7876260564b7d42ad2b Author: Dominik Brodowski Date: Tue Apr 19 19:20:12 2011 +0200 cpupowerutils: bench - ConfigStyle bugfixes Signed-off-by: Dominik Brodowski commit f5ac0641d129348399a8f39c95e7a16dc6e19f53 Author: Dominik Brodowski Date: Tue Apr 19 18:52:44 2011 +0200 cpupowerutils: do not update po files on each and every compile Signed-off-by: Dominik Brodowski commit 7443af9c9b99ed8eb1eb4496ca1769adba64776b Author: Dominik Brodowski Date: Tue Apr 19 09:03:52 2011 +0200 cpupowerutils: remove ccdv, use kernel quiet/verbose mechanism Use the quiet/verbose mechanism found in kernel tools, without relying on the special tool "ccdv" Signed-off-by: Dominik Brodowski commit c5db37fa0a84a6fd05e669dae3a706fa84012f73 Author: Dominik Brodowski Date: Tue Apr 12 22:50:19 2011 +0200 cpupowerutils: use COPYING, CREDITS from top-level directory Signed-off-by: Dominik Brodowski commit 7fe2f6399a84760a9af8896ac152728250f82adb Author: Dominik Brodowski Date: Wed Mar 30 16:30:11 2011 +0200 cpupowerutils - cpufrequtils extended with quite some features CPU power consumption vs performance tuning is no longer limited to CPU frequency switching anymore: deep sleep states, traditional dynamic frequency scaling and hidden turbo/boost frequencies are tied close together and depend on each other. The first two exist on different architectures like PPC, Itanium and ARM, the latter (so far) only on X86. On X86 the APU (CPU+GPU) will only run most efficiently if CPU and GPU has proper power management in place. Users and Developers want to have *one* tool to get an overview what their system supports and to monitor and debug CPU power management in detail. The tool should compile and work on as many architectures as possible. Once this tool stabilizes a bit, it is intended to replace the Intel-specific tools in tools/power/x86 Signed-off-by: Dominik Brodowski commit 74411c04540404a1ff29d254584ef393e150aeda Author: Dominik Brodowski Date: Fri Jul 29 18:27:34 2011 +0200 smc91c92_cs.c: fix bogus compiler warning On a recent compile, I got this warning: CC [M] drivers/net/pcmcia/smc91c92_cs.o drivers/net/pcmcia/smc91c92_cs.c: In function ‘smc91c92_probe’: drivers/net/pcmcia/smc91c92_cs.c:812:12: warning: ‘j’ may be used uninitialized in this function However, "j" is only used in a branch which has the same condition as a previous branch, where j is set, e.g. int j; if (CONDITION) j = VALUE ... if (CONDITION) printk(j) Still, avoid this warning, as it is easy to circumvent. Signed-off-by: Dominik Brodowski commit 49e58a932f6a35ad3d4888b5f66b27d4e20d990d Author: Pavel Roskin Date: Tue Jul 26 18:52:48 2011 -0400 orinoco_cs: be more careful when matching cards with ID 0x0156:0x0002 Without CONFIG_HERMES_PRISM, only match cards that have "Version 01.01" as the third product ID. Those have Agere firmware. With CONFIG_HERMES_PRISM, match all 0x0156:0x0002 cards. Signed-off-by: Pavel Roskin Signed-off-by: Dominik Brodowski commit 0a1013c76b52d8f8327f32498ea977d4b6662d45 Author: Pavel Roskin Date: Tue Jul 26 18:52:41 2011 -0400 hostap_cs: support cards with "Version 01.02" as third product ID Cards with numeric ID 0x0156:0x0002 and third ID "Version 01.02" can be assumed to have Intersil firmware. Cards with Agere firmware use "Version 01.01". Signed-off-by: Pavel Roskin Signed-off-by: Dominik Brodowski commit 14b9f27886ce69c5f11445d107dd020f6fc5754b Author: Pavel Roskin Date: Tue Jul 26 18:52:35 2011 -0400 pcmcia: add PCMCIA_DEVICE_MANF_CARD_PROD_ID3 This is needed to match wireless cards with Intersil firmware that have ID 0x0156:0x0002 and the third ID "Version 01.02". Such cards are currently matched by orinoco_cs, which doesn't support WPA. They should be matched by hostap_cs. The first and the second product ID vary widely, so there are few users with some particular IDs. Of those, very few can submit a patch for hostap_cs or write a useful bugreport. It's still important to support their hardware properly. With PCMCIA_DEVICE_MANF_CARD_PROD_ID3, it should be possible to cover the remaining Intersil based designs that kept the numeric ID and the "version" of the reference design. Signed-off-by: Pavel Roskin Signed-off-by: Dominik Brodowski commit 5be56a62a2868f4b7733c7c51106a8b0a88b9380 Author: Jonathan Cameron Date: Wed Jul 13 15:54:58 2011 +0100 pxa2xx pcmcia - stargate 2 use gpio array. Kill off the buff gpio as not used anywhere. Signed-off-by: Jonathan Cameron Signed-off-by: Dominik Brodowski commit 7594549e8acec8123c45e26750b7820d9e938760 Author: Jonathan Cameron Date: Wed Jul 13 15:54:57 2011 +0100 pcmcia: pxa2xx: remove empty socket_init / socket_resume functions. Now the are optional, let us get rid of the ones that don't have any content. Signed-off-by: Jonathan Cameron Signed-off-by: Dominik Brodowski commit a747ce835e69069f9bccfb7791008127012cbf32 Author: Jonathan Cameron Date: Wed Jul 13 15:54:56 2011 +0100 drivers:pcmcia:soc_common: make socket_init and socket_suspend optional 10 boards define these empty, probably indicating not everyone has a use for them. Signed-off-by: Jonathan Cameron Signed-off-by: Dominik Brodowski commit ee2ce3a0b43d14d792d34cf88e7bc2091096744b Author: Stephen Rothwell Date: Fri Jul 29 15:41:45 2011 +1000 [media] ir-mce_kbd-decoder: include module.h for its facilities drivers/media/rc/ir-mce_kbd-decoder.c:446:16: error: expected declaration specifiers or '...' before string constant drivers/media/rc/ir-mce_kbd-decoder.c:446:1: warning: data definition has no type or storage class drivers/media/rc/ir-mce_kbd-decoder.c:446:1: warning: type defaults to 'int' in declaration of 'MODULE_LICENSE' drivers/media/rc/ir-mce_kbd-decoder.c:446:16: warning: function declaration isn't a prototype drivers/media/rc/ir-mce_kbd-decoder.c:447:15: error: expected declaration specifiers or '...' before string constant drivers/media/rc/ir-mce_kbd-decoder.c:447:1: warning: data definition has no type or storage class drivers/media/rc/ir-mce_kbd-decoder.c:447:1: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR' drivers/media/rc/ir-mce_kbd-decoder.c:447:15: warning: function declaration isn't a prototype drivers/media/rc/ir-mce_kbd-decoder.c:448:20: error: expected declaration specifiers or '...' before string constant drivers/media/rc/ir-mce_kbd-decoder.c:448:1: warning: data definition has no type or storage class drivers/media/rc/ir-mce_kbd-decoder.c:448:1: warning: type defaults to 'int' in declaration of 'MODULE_DESCRIPTION' drivers/media/rc/ir-mce_kbd-decoder.c:448:20: warning: function declaration isn't a prototype Signed-off-by: Stephen Rothwell Signed-off-by: Mauro Carvalho Chehab commit d208c97c93512e771f36f8bb6e0ca0b83e6ed962 Author: Stephen Rothwell Date: Fri Jul 29 15:30:00 2011 +1000 [media] ov5642: include module.h for its facilities drivers/media/video/ov5642.c:985:1: warning: data definition has no type or storage class drivers/media/video/ov5642.c:985:1: warning: type defaults to 'int' in declaration of 'MODULE_DEVICE_TABLE' drivers/media/video/ov5642.c:985:1: warning: parameter names (without types) in function declaration drivers/media/video/ov5642.c: In function 'ov5642_mod_init': drivers/media/video/ov5642.c:998:9: error: 'THIS_MODULE' undeclared (first use in this function) drivers/media/video/ov5642.c:998:9: note: each undeclared identifier is reported only once for each function it appears in drivers/media/video/ov5642.c: At top level: drivers/media/video/ov5642.c:1009:20: error: expected declaration specifiers or '...' before string constant drivers/media/video/ov5642.c:1009:1: warning: data definition has no type or storage class drivers/media/video/ov5642.c:1009:1: warning: type defaults to 'int' in declaration of 'MODULE_DESCRIPTION' drivers/media/video/ov5642.c:1009:20: warning: function declaration isn't a prototype drivers/media/video/ov5642.c:1010:15: error: expected declaration specifiers or '...' before string constant drivers/media/video/ov5642.c:1010:1: warning: data definition has no type or storage class drivers/media/video/ov5642.c:1010:1: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR' drivers/media/video/ov5642.c:1010:15: warning: function declaration isn't a prototype drivers/media/video/ov5642.c:1011:16: error: expected declaration specifiers or '...' before string constant drivers/media/video/ov5642.c:1011:1: warning: data definition has no type or storage class drivers/media/video/ov5642.c:1011:1: warning: type defaults to 'int' in declaration of 'MODULE_LICENSE' drivers/media/video/ov5642.c:1011:16: warning: function declaration isn't a prototype drivers/media/video/ov5642.c: In function 'ov5642_mod_init': drivers/media/video/ov5642.c:999:1: warning: control reaches end of non-void function Signed-off-by: Stephen Rothwell Signed-off-by: Mauro Carvalho Chehab commit 5903417cd66d87a126f5cf27a846fc0985093f06 Author: Jiri Kosina Date: Fri Jul 29 17:31:16 2011 +0200 sungem: fix compile failure caused by trivial #include consolidation Only Sparc and PPC actually have the asm/prom.h include and as such they can't be moved outside of the ifdefs. Reported-by: James Bottomley Signed-off-by: Jiri Kosina commit 985ca0e626e195ea08a1a82b8dbeb6719747429a Author: Thieu Le Date: Tue Jul 26 16:15:10 2011 -0700 ecryptfs: Make inode bdi consistent with superblock bdi Make the inode mapping bdi consistent with the superblock bdi so that dirty pages are flushed properly. Signed-off-by: Thieu Le Cc: [2.6.39+] Signed-off-by: Tyler Hicks commit b2987a5e05ec7a1af7ca42e5d5349d7a22753031 Author: Tyler Hicks Date: Tue Jul 26 19:47:08 2011 -0500 eCryptfs: Unlock keys needed by ecryptfsd Fixes a regression caused by b5695d04634fa4ccca7dcbc05bb4a66522f02e0b Kernel keyring keys containing eCryptfs authentication tokens should not be write locked when calling out to ecryptfsd to wrap and unwrap file encryption keys. The eCryptfs kernel code can not hold the key's write lock because ecryptfsd needs to request the key after receiving such a request from the kernel. Without this fix, all file opens and creates will timeout and fail when using the eCryptfs PKI infrastructure. This is not an issue when using passphrase-based mount keys, which is the most widely deployed eCryptfs configuration. Signed-off-by: Tyler Hicks Acked-by: Roberto Sassu Tested-by: Roberto Sassu Tested-by: Alexis Hafner1 Cc: [2.6.39+] commit f90be42fb383f39aa814b8e14de138da8973e5c1 Author: Jean Delvare Date: Sun Jul 24 20:37:05 2011 +0200 hwmon: (lm90) Refactor reading of config2 register Several vendors implement a second configuration register, which we check during device detection. Refactor the code to avoid duplication. Signed-off-by: Jean Delvare Cc: Stijn Devriendt Cc: Guenter Roeck Signed-off-by: Guenter Roeck commit 6d101c588f0fe08ef00f16c1a93762dd5d563df7 Author: Jean Delvare Date: Sun Jul 24 20:36:15 2011 +0200 hwmon: (lm90) Make SA56004 detection more robust With a device ID register value of 0, the SA56004 detection is rather weak. Check several other register too to confirm the detection, as we do for other supported devices. Signed-off-by: Jean Delvare Cc: Stijn Devriendt Cc: Guenter Roeck Acked-by: Stijn Devriendt Signed-off-by: Guenter Roeck commit a095f687f1e19c54147bd51f735717508a49e225 Author: Jean Delvare Date: Wed Jul 27 23:22:25 2011 -0700 hwmon: (lm90) Simplify handling of extended local temp register The optional extended local temperature register can never have address 0, as this address is already used by another register. Thus we can get rid of flag LM90_HAVE_LOCAL_EXT and simply rely on reg_local_ext being non-zero to determine if a given chip has this extension or not. This makes the code more simple. Signed-off-by: Jean Delvare Cc: Stijn Devriendt Cc: Guenter Roeck Signed-off-by: Guenter Roeck commit 03e9bd8dbcee60c2e22fd54f9f28f0d32da218c3 Author: Guenter Roeck Date: Fri Jul 8 10:43:57 2011 -0700 hwmon: (pmbus) Add client driver for LM25066, LM5064, and LM5066 PMBus client driver supporting National Semiconductor LM25066, LM5064, and LM5066. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 98591dbe633eace43a20ffa2907861fbef97237b Author: Guenter Roeck Date: Sat Jul 9 13:17:43 2011 -0700 hwmon: (max34440) Add support for peak attributes Add support for voltage, current, and temperature peak (historic maximum) attributes. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 70e94b276c21638a0a37908f6696a6b122944dea Author: Guenter Roeck Date: Sat Jul 9 13:11:44 2011 -0700 hwmon: (max8688) Add support for peak attributes Add support for voltage, current, and temperature peak (historic maximum) attributes. Signed-off-by: Guenter Roeck commit 8ebed854506301f4f67e75c73cae967d4a45ab4d Author: Guenter Roeck Date: Sat Jul 9 13:10:19 2011 -0700 hwmon: (max16064) Add support for peak attributes Add support for voltage and temperature peak (historic maximum) attributes. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit c576e30cd0c9814b3b45772d46924d796f538dee Author: Guenter Roeck Date: Sat Jul 9 11:17:33 2011 -0700 hwmon: (adm1275) Add support for peak attributes Add support for voltage and current peak (historic maximum) attributes. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 6f183d33a02e686608f708ef713b6423db39bcba Author: Guenter Roeck Date: Sat Jul 9 08:30:26 2011 -0700 hwmon: (pmbus) Add support for peak attributes Most PMBus devices provide manufacturer specific commands to read low and/or high peak values for some or all of its sensors. To support providing those values as lowest/highest attributes to the user, introduce virtual PMBus commands. Those commands reside outside the normal command set and have to be implemented in device specific code, which map the virtual commands to device specific commands. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 0084e9faabbc1e228fda9c8a78ef1ea8ee97a9ae Author: Guenter Roeck Date: Sat Jul 9 10:32:11 2011 -0700 hwmon: Add new attributes to sysfs ABI Add the following attributes to the sysfs ABI. in[0-*]_average in[0-*]_lowest in[0-*]_highest in[0-*]_reset_history in_reset_history curr[1-*]_average curr[1-*]_lowest curr[1-*]_highest curr[1-*]_reset_history curr_reset_history Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit c6bfb767e431d3a236eab439d3660ff562598c84 Author: Guenter Roeck Date: Sat Jul 9 12:06:45 2011 -0700 hwmon: (pmbus) Strengthen check for status register existence With virtual register page support, it is now possible that the status register on virtual pages does not exist or is itself virtual. To take this into account when creating alarm attributes, generate those attributes only if the status register on the respective page is known to exist. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 9c1ed8941d30fd6252e84a9941e6507e497d242b Author: Guenter Roeck Date: Sat Jul 9 07:41:01 2011 -0700 hwmon: (pmbus) Add support for virtual pages Some PMBus chips have non-standard sensor registers. An easy way to support such sensors is to introduce virtual pages and map the non-standard registers into standard registers on an extra page. For this to work, the code verifying if the configured number of pages exists has to be removed. Since a wrong number of pages can only be configured in a front-end driver, this should not have a practical impact since the resulting errors should be found during development and testing. Also, functions to read the chip status while checking if a command register exists must be modified to no longer set the page register before reading the status, since the physical page associated with the checked register may not exist. This does not make a functional difference since the page was already set when the attempt to read the register was made. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 46243f3ab44ad0d2e9ca62e6485ca433659f3881 Author: Guenter Roeck Date: Fri Jul 8 10:41:24 2011 -0700 hwmon: (pmbus) Support reading and writing of word registers in device specific code Some PMBus devices use non-standard registers for some of the sensors and/or limits. To support such devices, add code to support reading and writing of word size registers in device specific code. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 2bd05bf4d2a5807dcc1c52788b842827e5ef0ee9 Author: Guenter Roeck Date: Sat Jul 9 08:58:49 2011 -0700 hwmon: (pmbus) Increase attribute name size Some hwmon sysfs attributes have a length of 20 bytes (plus terminating 0). I2C_NAME_SIZE is defined as 20 and thus can not be used to define the length of hwmon sysfs attributes. Replace it with PMBUS_NAME_SIZE, set to 24. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit e0455e380b5bdf8dff7c8e29423d2446d9f59040 Author: Guenter Roeck Date: Sat Jun 25 15:13:44 2011 -0700 hwmon: (pmbus) Add ADP4000, NCP4200 and NCP4208 to list of supported devices Add ADP4000, NCP4200 and NCP4208 to the list of devices supported by the generic PMBus driver, and add device IDs to enable explicit instantiation. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson Acked-by: Jean Delvare commit 1061d8518f8bde548a03a5ff77dbe9a4202ad826 Author: Guenter Roeck Date: Sat Jun 25 11:21:49 2011 -0700 hwmon: (pmbus) Add support for VID output voltage mode In VID mode, output voltages are measured and reported as VID values, and have to be converted to voltages using VID conversion tables or functions. Support is added for VR11 only at this time. This patch enables support for PMBus devices supporting VID VR11 based output voltage selection such as NCP4200 and NCP4208. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 5b8ce5eb81220b6329c467f76d1bfc9959dbfffc Author: Axel Lin Date: Thu Jul 28 22:16:49 2011 +0800 gpio: ab8500: fix MODULE_ALIAS for ab8500 Since 43cc71eed1250755986da4c0f9898f9a635cb3bf (platform: prefix MODALIAS with "platform:"), the platform modalias is prefixed with "platform:". This patch changes the MODULE_ALIAS to "platform:ab8500-gpio". Signed-off-by: Axel Lin Acked-by: Linus Walleij Signed-off-by: Grant Likely commit 3038bbdf7404ae3948385cbde30df946579d4e3a Author: Jamie Iles Date: Thu Jul 28 16:25:41 2011 +0100 of/gpio: export of_gpio_simple_xlate Allow GPIO drivers to use of_gpio_simple_xlate. This is useful for the generic GPIO driver for example where gpio_chip is embedded in bgpio_chip and doesn't need of_mm_gpio_chip but has a simple 1:1 GPIO mapping. Cc: Anton Vorontsov Cc: Grant Likely Signed-off-by: Jamie Iles Signed-off-by: Grant Likely commit f7acc4bb86594d78aa41c07b7670df3e03738b18 Author: Mauro Carvalho Chehab Date: Thu Jul 28 15:42:00 2011 -0300 [media] em28xx: Fix DVB-C maxsize for em2884 The logic at em28xx_isoc_dvb_max_packetsize() sucks, at least for newer the needed packet size. Yet, it is better than nothing. Rewrite the code in order to change the default to 752 for em2884 and newer chips and provide a better way to handle per-chipset specifics. For em2874, the current default should be enough, as the only em2874 board is currently a 1-seg ISDB-T board, so, it needs only a limited amount of bandwidth. Signed-off-by: Mauro Carvalho Chehab commit cf845297d592339bcf0839298c4319633df3173a Author: Mauro Carvalho Chehab Date: Thu Jul 28 15:49:43 2011 -0300 [media] tda18271c2dd: Fix saw filter configuration for DVB-C @6MHz Currently, the driver assumes that all QAM carriers are spaced with 8MHz. This is wrong, and may decrease QoS on Countries like Brazil, that have DVB-C carriers with 6MHz-spaced. Fortunately, both ITU-T J-83 and EN 300 429 specifies a way to associate the symbol rate with the bandwidth needed for it. For ITU-T J-83 2007 annex A, the maximum symbol rate for 6 MHz is: 6 MHz / 1.15 = 5217391 Bauds For ITU-T J-83 2007 annex C, the maximum symbol rate for 6 MHz is: 6 MHz / 1.13 = 5309735 Bauds. As this tuner is currently used only for DRX-K, and it is currently hard-coded to annex A, I've opted to use the roll-off factor of 0.15, instead of 0.13. If we ever support annex C, the better would be to add a DVB S2API call to allow changing between Annex A and C, and add the 0.13 roll-off factor to it. This code is currently being used on other frontends, so I think we should later add a core function with this code, to warrant that it will be properly implemented everywhere. Signed-off-by: Mauro Carvalho Chehab commit 9d2ecfb768bd2f8b41816a23b0f1dda026fef41d Author: Guenter Roeck Date: Tue Jul 12 07:15:19 2011 -0700 hwmon: (pmbus) Move PMBus drivers to drivers/hwmon/pmbus Since the number of PMBus drivers is getting large, move them into directory drivers/hwmon/pmbus to improve readability and scalability. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 18cb63b3f3ee4abd483544a664f0e720c7e5fd9f Author: Arnd Bergmann Date: Thu Jul 28 14:33:40 2011 +0000 ARM: zynq: remove incorrectly deleted file My previous commit left the file empty and present in the Makefile, which is a bit dirty and caused problems with 'make distclean', as pointed out by David Howells. This hopefully cleans it up the right way. Signed-off-by: Arnd Bergmann Acked-by: David Howells Acked-by: John Linn commit 6124a4e430b64d1577438c8648c59e996d02e73e Merge: 8e267f3 580975d Author: Arnd Bergmann Date: Thu Jul 28 15:25:46 2011 +0000 Merge branch 'imx/dt' into next/dt commit fb149f9e2835446e02e796081635520b881dc351 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sat May 7 11:16:00 2011 +0800 at91: add arch specific ioremap support Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit f0051d82a68abcf35418d49db1c82e6f0e514d78 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue May 10 03:20:09 2011 +0800 at91: factorize sram init Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit 51ddec7617bd0d4c73c44a8862faac5d7d97eb03 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sun Apr 24 18:15:34 2011 +0800 at91: move register clocks to soc generic init Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit 465393749da3a3229f6067246c7e8f97f7cc833d Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sun Apr 24 18:20:28 2011 +0800 at91: move clock subsystem init to soc generic init Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit 8c3583b634d5705d8f604c0d9392bc273d19c256 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sat Apr 23 22:12:57 2011 +0800 at91: use structure to store the current soc instead of reading the registers everytime the current implementation respect the following constrain: - allow 1 to n soc to be enabled - allow to have a virtual cpu type and subtype - always detect the cpu type and subtype and report it - detect if the soc support is enabled - prepare for sysfs export support - drop soc specific code via compiler when the soc not enabled (via cpu_is_xxx) Today if we read the exid we will have the same value for 9g35 and 9m11 and we will need to check the cidr too with the new implementation we just need to check the soc subtype this will also allow to have specific virtual subtype for rm9200 which the board will have to specify via at91rm9200_set_type(int) as we have no way to detect it. this implementation is inspired by the SH cpu detection support Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit 1ff5b1b411bf8a8157ae949a1b3ed8666d96c1db Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue May 3 01:11:25 2011 +0800 at91: remove AT91_DBGU offset from dbgu register macro to make the soc base specified at runtime instead of compiled time Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD commit 92100c12ca1bc5f347ff41c1413f9db07c4d276c Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sat Apr 23 15:28:34 2011 +0800 at91: factorize at91 interrupts init to soc they are the same except the default priority Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit 21d08b9d5536ac418bbce4f419fe2b528b7ddf31 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sat Apr 23 15:28:34 2011 +0800 at91: introduce commom AT91_BASE_SYS On all at91 except rm9200 and x40 have the System Controller starts at address 0xffffc000 and has a size of 16KiB. On rm9200 it's start at 0xfffe4000 of 111KiB with non reserved data starting at 0xfffff000 This patch removes the individual definitions of AT91_BASE_SYS and replaces them with a common version at base 0xfffffc000 and size 16KiB and map the same memory space Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit 55f9c40ff632d03c527d6a6ceddcda0a224587a6 Merge: d5eab91 eb7caf3 Author: Linus Torvalds Date: Thu Jul 28 05:59:19 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc: n2_crypto: Attach on Niagara-T3. n2rng: Attach on Niagara-T3. sparc: Detect and handle UltraSPARC-T3 cpu types. sparc: Don't do expensive hypervisor PCR write unless necessary. sparc: Add T3 sun4v cpu type and hypervisor group defines. sparc: Don't leave sparc_pmu_type NULL on sun4v. commit d5eab9152a3b4ce962c02ad0a0e4d0ec94aadd92 Merge: 6140333 a051294 Author: Linus Torvalds Date: Thu Jul 28 05:58:19 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (32 commits) tg3: Remove 5719 jumbo frames and TSO blocks tg3: Break larger frags into 4k chunks for 5719 tg3: Add tx BD budgeting code tg3: Consolidate code that calls tg3_tx_set_bd() tg3: Add partial fragment unmapping code tg3: Generalize tg3_skb_error_unmap() tg3: Remove short DMA check for 1st fragment tg3: Simplify tx bd assignments tg3: Reintroduce tg3_tx_ring_info ASIX: Use only 11 bits of header for data size ASIX: Simplify condition in rx_fixup() Fix cdc-phonet build bonding: reduce noise during init bonding: fix string comparison errors net: Audit drivers to identify those needing IFF_TX_SKB_SHARING cleared net: add IFF_SKB_TX_SHARED flag to priv_flags net: sock_sendmsg_nosec() is static forcedeth: fix vlans gianfar: fix bug caused by 87c288c6e9aa31720b72e2bc2d665e24e1653c3e gro: Only reset frag0 when skb can be pulled ... commit 6140333d3656f62ac7e6a5af87e7fe92cfb8d655 Merge: 6f56c21 58c54fc Author: Linus Torvalds Date: Thu Jul 28 05:50:27 2011 -0700 Merge branch 'for-linus' of git://neil.brown.name/md * 'for-linus' of git://neil.brown.name/md: (75 commits) md/raid10: handle further errors during fix_read_error better. md/raid10: Handle read errors during recovery better. md/raid10: simplify read error handling during recovery. md/raid10: record bad blocks due to write errors during resync/recovery. md/raid10: attempt to fix read errors during resync/check md/raid10: Handle write errors by updating badblock log. md/raid10: clear bad-block record when write succeeds. md/raid10: avoid writing to known bad blocks on known bad drives. md/raid10 record bad blocks as needed during recovery. md/raid10: avoid reading known bad blocks during resync/recovery. md/raid10 - avoid reading from known bad blocks - part 3 md/raid10: avoid reading from known bad blocks - part 2 md/raid10: avoid reading from known bad blocks - part 1 md/raid10: Split handle_read_error out from raid10d. md/raid10: simplify/reindent some loops. md/raid5: Clear bad blocks on successful write. md/raid5. Don't write to known bad block on doubtful devices. md/raid5: write errors should be recorded as bad blocks if possible. md/raid5: use bad-block log to improve handling of uncorrectable read errors. md/raid5: avoid reading from known bad blocks. ... commit 6f56c218666b5c7eff354364357307d18c10058b Merge: 95b6886 8d34e6d Author: Linus Torvalds Date: Thu Jul 28 05:49:31 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: sound: oss: rename local change_bits to avoid powerpc bitsops.h definition ALSA: hda - Fix duplicated DAC assignments for Realtek ALSA: asihpi - off by one in asihpi_hpi_ioctl() ALSA: hda - Fix Oops with Realtek quirks with NULL adc_nids ALSA: asihpi - bug fix pa use before init. ALSA: hda - Add support for vref-out based mute LED control on IDT codecs commit acfe7d74484d6ccb25a80b8ff259fceceac0473e Author: Eric Dumazet Date: Mon Jul 25 08:55:42 2011 +0200 slab: remove one NR_CPUS dependency Reduce high order allocations in do_tune_cpucache() for some setups. (NR_CPUS=4096 -> we need 64KB) Signed-off-by: Eric Dumazet Acked-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 88cda60e512373ca18a663ee66dc2550800223eb Author: Mark Brown Date: Mon Jul 25 22:20:34 2011 +0100 regulator: Improve WM831x DVS VSEL selection algorithm Rather than using the maximum voltage we get passed to select the DVS voltage to use remember the highest voltage we've ever seen. This improves how the driver works when the consumer permits higher voltages than it will ever selects in order to support the widest possible voltage range. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit c439b8f46ee79147139e124621dbc9e1e7804655 Author: Mark Brown Date: Mon Jul 25 22:20:33 2011 +0100 regulator: Bootstrap wm831x DVS VSEL value from ON VSEL if not already set If we don't have a DVS VSEL value already set when we start up then start it off with the value currently being used for ON. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit b47ba9fdd336b318a6a6431e6a4556df99272277 Author: Mark Brown Date: Mon Jul 25 22:20:32 2011 +0100 regulator: Set up GPIO for WM831x VSEL before enabling VSEL mode If the VSEL is not in use prior to us starting up then we need to make sure we initialise the GPIO before we push the DVS control to being done by the GPIO. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 24b4315051ef2b9155d23ccbad528daab3b65eb6 Author: Mark Brown Date: Mon Jul 25 22:20:31 2011 +0100 regulator: Add EPEs to the MODULE_ALIAS() for wm831x-dcdc Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit a1b81dd3ff2c622d0f4e3954bf9b5dd47a0f13a0 Author: Mark Brown Date: Mon Jul 25 22:20:30 2011 +0100 regulator: Fix WM831x DCDC DVS VSEL bootstrapping Read our initial VSEL from the correct register. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 137a6354305455d585fe99fe5e9949acd895b045 Author: Mark Brown Date: Mon Jul 25 22:20:29 2011 +0100 regulator: Fix WM831x regulator ID lookups for multiple WM831xs With multiple wm831x devices the device IDs used for the regulators will not always be contiguous so simply taking the modulus is not sufficient to look up the ID, we need to reverse the way the ID is generated. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit eb7caf35951b1a56aabee028c1b20727abccc34f Author: David S. Miller Date: Thu Jul 28 01:30:07 2011 -0700 n2_crypto: Attach on Niagara-T3. A small modification was necessary since in the machine description for 'n2cp' and 'ncp' nodes, there no longer is an 'intr' property. That's OK because this property was always nothing more than an array of integers '1' ... 'nr_inos + 1' so we can just compute it in-place. Signed-off-by: David S. Miller commit 24f146696184cbe4b440179064a45dfddaad4cc4 Author: David S. Miller Date: Wed Jul 27 23:33:03 2011 -0700 n2rng: Attach on Niagara-T3. And stop referring to Victoria Falls, as the attribute we're talking about is whether the rng is multi-unit capable which applies to several chip variants now. Signed-off-by: David S. Miller commit d272281c390eb6c3f1e70ed0337c9e619d99cd9c Author: Vasu Dev Date: Wed Jul 27 15:11:10 2011 -0700 [SCSI] fcoe: cleanup cpu selection for incoming requests Cleanup to: - have selection for all types of frames, not just FCP. - remove redundant cpu_online check once fcoe_select_cpu called as this is not required since later code flow check for offlined cpu. - Simplify fcoe_select_cpu() by removing unnecessary checks to skip curr_cpu, this also fixes possibly infinite loop in case of curr_cpu is the only cpu while iterating in the loop. This cleanup mainly applies to target as incoming request are mostly for target, therefore Kiran has verified the patch with target also. Signed-off-by: Vasu Dev Tested-by: Kiran Patil Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 980f5156ab2d75e0462f3811e8a92acd06b0577b Author: Vasu Dev Date: Wed Jul 27 15:11:05 2011 -0700 [SCSI] fcoe: add fip retry to avoid missing critical keep alive Use pending queue to retry FIP frame in case its tx fails and use common pending queue for both fcoe and fip frames using fcoe_port_send. Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 320036e083bb2a0f60820b51cb9f0bfa651ee62f Author: Vasu Dev Date: Wed Jul 27 15:11:00 2011 -0700 [SCSI] libfc: fix warn on in lport retry The lport retry timer hits warn on in case it has become ready in response from fip login from fcoe_ctlr_flogi_send(), this is possible but safe code path, therefore removing this warn on. Jun 22 03:16:30 10.0.16.6 [488198.316517] host3: Assigned Port ID 180f02 Jun 22 03:16:32 10.0.16.6 [488200.091561] ------------[ cut here ]------------ Jun 22 03:16:32 10.0.16.6 [488200.091586] WARNING: at drivers/scsi/libfc/fc_lport.c:1355 fc_lport_timeout+0xd9/0xe0 [libfc]() Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit c9d24a76184b3ecbedc66d45f840c3dfd921f12b Author: Neerav Parikh Date: Wed Jul 27 15:10:54 2011 -0700 [SCSI] libfc: Remove the reference to FCP packet from scsi_cmnd in case of error fc_queuecommand() allocates an FCP packet for each SCSI command and sends it out on the wire. In the process it stores the reference to the FCP packet in the scsi_cmnd structure. Now, in case under stress testing the libfc exchange layer runs out of exchanges the fc_queuecommand() may not be able to send out commands out on the wire. In such a scenario if there is an error in sending the FCP packet out the wire; fc_queuecommand() deletes the FCP packet from internal queue, releases the FCP packet and returns a SCSI_MLQUEUE_HOST_BUSY status to the scsi-ml. But, the reference to the FCP packet set in the scsi_cmnd is not removed from the scsi_cmnd in this code path. This might lead to a crash under stress testing where the scsi_cmnd failed by fc_queuecommand() comes up to fc_eh_abort() via scsi eh thread. fc_eh_abort() will get reference to the FCP packet to be aborted from the scsi_cmnd for further FCP abort related processing and then try to release the FCP packet that has already been released. This patch removes the FCP packet reference from the scsi_cmnd before returning back from fc_queuecommand() in case of an error in sending out the FCP packet. Signed-off-by: Neerav Parikh Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 85982127273be0474e9505c0aac35973a0a013f8 Author: Hillf Danton Date: Wed Jul 27 15:10:49 2011 -0700 [SCSI] libfc: cleanup sending SRR request The variable on stack, namely cdb_op, is not used but removed. [ Patch reworked by Robert Love due to invalid patch format ] Signed-off-by: Hillf Danton Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 547fb12b7a1c8de6bb57a68553f2319430a3541a Author: Hillf Danton Date: Wed Jul 27 15:10:44 2011 -0700 [SCSI] libfc: two minor changes in comments One change is to cleanup typo in comment for fc_fcp_recv(), another corrects the misleading comment for fc_fcp_abts_resp(). [ Patch reworked by Robert Love due to invalid patch format ] Signed-off-by: Hillf Danton Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 324f667833d7ddd9501ed8c0e3ec5754ddb1b695 Author: Vasu Dev Date: Wed Jul 27 15:10:39 2011 -0700 [SCSI] libfc, fcoe: ignore rx frame with wrong xid info Drop the rx frame having xid with wrong cpu info or received with xid not matching to our xid. Not dropping such frame is causing panic as that causes accessing data struct beyond their bounds. Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 6f06e3a7b2f2d840d42a0c2b9906f444e8f2eba6 Author: Hillf Danton Date: Wed Jul 27 15:10:34 2011 -0700 [SCSI] libfc: release exchg cache If fail to create workqueue, the newly created cache for exchg has to be released. Signed-off-by: Hillf Danton Reviewed-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 688fd36427050a87b19f6830c882ee77bb851ecf Author: Hillf Danton Date: Wed Jul 27 15:10:28 2011 -0700 [SCSI] libfc: use FC_MAX_ERROR_CNT Though defined, FC_MAX_ERROR_CNT is not used. It is used now for CRC error in the path of receiving FCP frame. Signed-off-by: Hillf Danton Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 302ff541d981e58cd455fdbd6a90bd74d0f2109b Author: Yi Zou Date: Wed Jul 27 15:10:23 2011 -0700 [SCSI] fcoe: remove unused ptype field in fcoe_rcv_info There is no need to cache the ptype in fcoe_rcv_info struct as it is never used anywhere. Signed-off-by: Yi Zou Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 9b35baae3a62c33a73a6fd8bf4d1b6c4e3b5b5f3 Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:13 2011 -0700 [SCSI] bnx2fc: Update copyright and bump version to 1.0.4 Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 3c75108fce9be6c72c45e50973b3cbb0fcdb4f19 Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:12 2011 -0700 [SCSI] bnx2fc: Tx BDs cache in write tasks When there is a single BD for the entire data to be transmitted, use the BD inside the SGL context and set the cached SGE indication in the task context Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 3f43f68e29f1dcb853d70280c7412fc0ef9a0da6 Author: Wim Van Sebroeck Date: Fri Jul 22 19:00:16 2011 +0000 watchdog: WatchDog Timer Driver Core - Add minimum and max timeout Add min_timeout (minimum timeout) and max_timeout values so that the framework can check if the new timeout value is between the minimum and maximum timeout values. If both values are 0, then the framework will leave the check for the watchdog device driver itself. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 78d88fc01202b088573c962e2885556a5e99bf74 Author: Wim Van Sebroeck Date: Fri Jul 22 18:59:49 2011 +0000 watchdog: WatchDog Timer Driver Core - Add ioctl call Add support for extra ioctl calls by adding a ioctl watchdog operation. This operation will be called before we do our own handling of ioctl commands. This way we can override the internal ioctl command handling and we can also add extra ioctl commands. The ioctl watchdog operation should return the appropriate error codes or -ENOIOCTLCMD if the ioctl command should be handled through the internal ioctl handling of the framework. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 7e192b9c4234d29bdc20ac8d0a67edf7624b4206 Author: Wim Van Sebroeck Date: Fri Jul 22 18:59:17 2011 +0000 watchdog: WatchDog Timer Driver Core - Add nowayout feature Add support for the nowayout feature to the WatchDog Timer Driver Core framework. This feature prevents the watchdog timer from being stopped. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 017cf0805105496ab1880e236cb3e4bf156fb915 Author: Wim Van Sebroeck Date: Fri Jul 22 18:58:54 2011 +0000 watchdog: WatchDog Timer Driver Core - Add Magic Close feature Add support for the Magic Close feature to the WatchDog Timer Driver Core framework. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 014d694e5d59e4219803cd14deaae496d86e4910 Author: Wim Van Sebroeck Date: Fri Jul 22 18:58:21 2011 +0000 watchdog: WatchDog Timer Driver Core - Add WDIOC_SETTIMEOUT and WDIOC_GETTIMEOUT ioctl This part add's the WDIOC_SETTIMEOUT and WDIOC_GETTIMEOUT ioctl functionality to the WatchDog Timer Driver Core framework. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 234445b4e4542f3e0f216459245ab369a18adcf2 Author: Wim Van Sebroeck Date: Fri Jul 22 18:57:55 2011 +0000 watchdog: WatchDog Timer Driver Core - Add WDIOC_SETOPTIONS ioctl This part add's the WDIOC_SETOPTIONS ioctl functionality to the WatchDog Timer Driver Core framework. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit c2dc00e494cc476551b9beeb883910391ff59737 Author: Wim Van Sebroeck Date: Fri Jul 22 18:57:23 2011 +0000 watchdog: WatchDog Timer Driver Core - Add WDIOC_KEEPALIVE ioctl This part add's the WDIOC_KEEPALIVE ioctl functionality to the WatchDog Timer Driver Core framework. Please note that the WDIOF_KEEPALIVEPING bit has to be set in the watchdog_info options field. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 2fa03560ab3a6dd83cad9bfd5692179fc2ceabb3 Author: Wim Van Sebroeck Date: Fri Jul 22 18:56:38 2011 +0000 watchdog: WatchDog Timer Driver Core - Add basic ioctl functionality This part add's the basic ioctl functionality to the WatchDog Timer Driver Core framework. The supported ioctl call's are: WDIOC_GETSUPPORT WDIOC_GETSTATUS WDIOC_GETBOOTSTATUS Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 43316044d4f64da008d6aca7d4b60771b9a24eb8 Author: Wim Van Sebroeck Date: Fri Jul 22 18:55:18 2011 +0000 watchdog: WatchDog Timer Driver Core - Add basic framework The WatchDog Timer Driver Core is a framework that contains the common code for all watchdog-driver's. It also introduces a watchdog device structure and the operations that go with it. This is the introduction of this framework. This part supports the minimal watchdog userspace API (or with other words: the functionality to use /dev/watchdog's open, release and write functionality as defined in the simplest watchdog API). Extra functionality will follow in the next set of patches. Signed-off-by: Alan Cox Signed-off-by: Wim Van Sebroeck Acked-by: Arnd Bergmann Acked-by: Wolfram Sang commit 5efc7a6222f6408d29d6beb1142a302f31dc9eac Author: Thomas Mingarelli Date: Tue Jul 26 14:05:53 2011 +0100 watchdog: hpwdt: add next gen HP servers This patch is required to enable hpwdt to work on next generation HP servers with iLO. Signed-off-by: Thomas Mingarelli Signed-off-by: Wim Van Sebroeck commit fd08bd622d255252095a7d5b20b8305916c6f64e Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:11 2011 -0700 [SCSI] bnx2fc: Do not arm CQ when there are no CQEs Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit bd4d5de8b9b97ff100342948c39634b44c43fe81 Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:10 2011 -0700 [SCSI] bnx2fc: hold tgt lock when calling cmd_release Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 72812ee0bd2098a7709dbcff61395fbba3f27cda Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:09 2011 -0700 [SCSI] bnx2fc: Enable support for sequence level error recovery Driver advertises its support for 'retry' bit and 'conf completion' bit in PRLI params to enable support for 'sequence level error recovery' Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit f3820b719d91a0ed1e26831b1cfdcdf1641ab586 Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:08 2011 -0700 [SCSI] bnx2fc: HSI changes for tape Program the firmware task structure with init_flags indicating the device is 'sequence level error recovery' capable. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 7b594769120b43b8da1ff8f7b4c31a47fabd6ac0 Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:07 2011 -0700 [SCSI] bnx2fc: Handle REC_TOV error code from firmware Driver decides to initiate REC on REC_TOV timer pop. The firmware maintains the REC timer and informs the driver as a firmware error message, which is an unsolicited event to the driver. Driver also issues REC on other unsolicited events from firmware that indicate data loss. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 744469542951d32979a8dcb1dbed560bfed1745e Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:06 2011 -0700 [SCSI] bnx2fc: REC/SRR link service request and response handling Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 6c5a7ce4f176b641fd11e59be4df31ee3e6202dd Author: Bhanu Prakash Gollapudi Date: Wed Jul 27 11:32:05 2011 -0700 [SCSI] bnx2fc: Support 'sequence cleanup' task For the devices that support sequence level error recovery, based on the REC response, the firmware has to be informed about the offset from which the retransmission should happen. Driver initiates sequence cleanup task to firmware so that the firmware can program the task. Upon the sequence cleanup completion, SRR is issued to retransmit the sequence. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit d6857595394f1fa5c5752eae9bb6045c067fa41e Author: Chandra Seetharaman Date: Wed Jul 27 11:22:56 2011 -0700 [SCSI] dh_rdac: Associate HBA and storage in rdac_controller to support partitions in storage rdac hardware handler assumes that there is one-to-one relation ship between the host and the controller w.r.t lun. IOW, it does not support "multiple storage partitions" within a storage. Example: HBA1 and HBA2 see lun 0 and 1 in storage A (1) HBA3 and HBA4 see lun 0 and 1 in storage A (2) HBA5 and HBA6 see lun 0 and 1 in storage A (3) luns 0 and 1 in (1), (2) and (3) are totally different. But, rdac handler treats the lun 0s (and lun 1s) as the same when sending a mode select to the controller, which is wrong. This patch makes the rdac hardware handler associate HBA and the storage w.r.t lun (and not the host itself). Signed-off-by: Chandra Seetharaman Signed-off-by: James Bottomley commit 8e267f3da5f117d2f1316cf6ddf740f93f1c73aa Author: Grant Likely Date: Tue Jul 19 17:26:54 2011 -0600 arm/dt: tegra devicetree support Everything required to populate NVIDIA Tegra devices from the device tree. This patch adds a new DT_MACHINE_DESC() which matches against a tegra20 device tree. So far it only registers the on-chip devices, but it will be refined in follow on patches to configure clocks and pin IO from the device tree also. Signed-off-by: Grant Likely commit 3ba7222ac992d24d09ccd0b55940b54849eef752 Author: Grant Likely Date: Tue Jul 26 03:19:06 2011 -0600 arm/versatile: Add device tree support For testing the dt work, define a dt-enabled versatile platform. This patch adds a new versatile platform for when using the device tree. Add platform and amba devices are discovered and registered by parsing the device tree. Clocks and initial io mappings are still configured statically. This patch still depends on some static platform_data for a few devices which is passed via the auxdata structure to of_platform_populate(), but it is a viable starting point until the drivers can get all configuration data out of the device tree. Signed-off-by: Grant Likely commit 7e71330169d8056536b299290544980bccc6b300 Author: Grant Likely Date: Tue Jul 26 03:19:06 2011 -0600 dt/irq: add irq_domain_generate_simple() helper irq_domain_generate_simple() is an easy way to generate an irq translation domain for simple irq controllers. It assumes a flat 1:1 mapping from hardware irq number to an offset of the first linux irq number assigned to the controller Signed-off-by: Grant Likely commit 08a543ad33fc188650801bd36eed4ffe272643e1 Author: Grant Likely Date: Tue Jul 26 03:19:06 2011 -0600 irq: add irq_domain translation infrastructure This patch adds irq_domain infrastructure for translating from hardware irq numbers to linux irqs. This is particularly important for architectures adding device tree support because the current implementation (excluding PowerPC and SPARC) cannot handle translation for more than a single interrupt controller. irq_domain supports device tree translation for any number of interrupt controllers. This patch converts x86, Microblaze, ARM and MIPS to use irq_domain for device tree irq translation. x86 is untested beyond compiling it, irq_domain is enabled for MIPS and Microblaze, but the old behaviour is preserved until the core code is modified to actually register an irq_domain yet. On ARM it works and is required for much of the new ARM device tree board support. PowerPC has /not/ been converted to use this new infrastructure. It is still missing some features before it can replace the virq infrastructure already in powerpc (see documentation on irq_domain_map/unmap for details). Followup patches will add the missing pieces and migrate PowerPC to use irq_domain. SPARC has its own method of managing interrupts from the device tree and is unaffected by this change. Acked-by: Ralf Baechle Signed-off-by: Grant Likely commit c814a4c7c4aad795835583344353963a0a673eb0 Author: Durgadoss R Date: Tue Jul 12 07:07:16 2011 -0400 hwmon: (coretemp) Add core/pkg threshold support to Coretemp This patch adds the core and pkg support to coretemp. These thresholds can be configured via the sysfs interfaces tempX_max and tempX_max_hyst. An interrupt is generated when CPU temperature reaches or crosses above tempX_max OR drops below tempX_max_hyst. This patch is based on the documentation in IA Manual vol 3A, that can be downloaded from here: http://download.intel.com/design/processor/manuals/253668.pdf Signed-off-by: Durgadoss R Signed-off-by: Guenter Roeck commit 8c1d04192e2ef1e6d38e9d5e9c500e5330d20339 Author: Guenter Roeck Date: Tue Jul 5 13:31:48 2011 -0700 hwmon: (lm95241) Add support for LM95231 LM95231 is fully compatible to LM95241; only necessary change is to add chip detection. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare commit fffd80ccc1e6c7e5f13741e17a7d80582ae21fcc Author: Alexander Stein Date: Tue Jun 28 15:11:23 2011 +0000 hwmon: LM95245 driver A hwmon driver for the National Semiconductor LM95245 dual temperature sensors chip. Signed-off-by: Alexander Stein Signed-off-by: Guenter Roeck commit 2ef017935d698b1c7c7421a7ebe20579d8f904dd Author: Stijn Devriendt Date: Mon Jun 6 10:40:45 2011 +0000 hwmon: (lm90) Add support for Philips SA56004 Add support for Philips SA56004, an LM86 compatible temperature sensor. Signed-off-by: Stijn Devriendt Signed-off-by: Guenter Roeck commit f22aaaa70d8c24e5dc7d23a219c4beace8354b65 Author: Donggeun Kim Date: Mon Jun 20 16:48:19 2011 +0900 hwmon: Driver for NTC Thermistors Add support for NTC Thermistor series. In this release, the following thermistors are supported: NCP15WB473, NCP18WB473, NCP03WB473, and NCP15WL333. This driver is based on the datasheet of MURATA. The driver in the patch does conversion from the raw ADC value (either voltage or resistence) to temperature. In order to use voltage values as input, the circuit schematics should be provided with the platform data. A compensation table for each type of thermistor is provided for the conversion. Signed-off-by: Donggeun Kim Signed-off-by: MyungJoo Ham Signed-off-by: KyungMin Park Reviewed-by: Shubhrajyoti D Signed-off-by: Guenter Roeck commit dabaa0d2b4085a2037d80a40b86ba215f00b601e Author: Guenter Roeck Date: Thu Jun 9 18:05:16 2011 -0700 hwmon: (max1668) Add support for tempX_fault attributes MAX1668 and compatibles have several external temperature sensors, but only a single FAULT status bit. If a fault occurs, the temperature reported on the affected sensors is 127 degrees C. Use this knowledge to report fault on external sensors. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare commit 731b4cace10f105a81d622b70f9a35f577612d63 Author: David George Date: Thu Jun 2 08:43:45 2011 -0700 hwmon: Driver for MAX1668 This patch adds support for MAX1668 and compatible temperature sensors. Signed-off-by: David George [guenter.roeck@ericsson.com: minor cleanup of probe error path] Signed-off-by: Guenter Roeck commit a051294423b015c5c89f2ed78f7fe0893b775098 Author: Matt Carlson Date: Wed Jul 27 14:20:54 2011 +0000 tg3: Remove 5719 jumbo frames and TSO blocks The A0 revision of this chip is the only device that requires these features to be disabled. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit e31aa9870627106aebddd280aab8ecb2f493246a Author: Matt Carlson Date: Wed Jul 27 14:20:53 2011 +0000 tg3: Break larger frags into 4k chunks for 5719 The 5719 has bug where RDMAs larger than 4k can cause problems. This patch works around the problem by dividing larger DMA requests into something the hardware can handle. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 84b67b27e9531e9a70c9e8cd952d66c55f4d0ddb Author: Matt Carlson Date: Wed Jul 27 14:20:52 2011 +0000 tg3: Add tx BD budgeting code As the driver breaks large skb fragments into smaller submissions to the hardware, there is a new danger that BDs might get exhausted before all fragments have been mapped. This patch adds code to make sure tx BDs aren't oversubscribed and flag the condition if it happens. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit d1a3b7377d3b6a01ec5f70adb32173b13233aabf Author: Matt Carlson Date: Wed Jul 27 14:20:51 2011 +0000 tg3: Consolidate code that calls tg3_tx_set_bd() This patch consolidates all code that populates tx BDs into a single routine. Setting tx BDs needs to be more carefully controlled to see if workarounds need to be applied. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit e01ee14d499e5d09c0a9db0cac2545a018849e3d Author: Matt Carlson Date: Wed Jul 27 14:20:50 2011 +0000 tg3: Add partial fragment unmapping code The following patches are going to break skb fragments into smaller sizes. This patch attempts to make the change easier to digest by only addressing the skb teardown portion. The patch modifies the driver to skip over any BDs that have a flag set that indicates the BD isn't the beginning of an skb fragment. Such BDs were a result of segmentation and do not need a pci_unmap_page() call. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 0d681b27b0efc962a3038a316e78373de7bfe1ce Author: Matt Carlson Date: Wed Jul 27 14:20:49 2011 +0000 tg3: Generalize tg3_skb_error_unmap() In the following patches, unmapping skb fragments will get just as complicated as mapping them. This patch generalizes tg3_skb_error_unmap() and makes it the one-stop-shop for skb unmapping. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 13350ea78bd687a229af0f6052d2f45aa50a6524 Author: Matt Carlson Date: Wed Jul 27 14:20:48 2011 +0000 tg3: Remove short DMA check for 1st fragment The first fragment of an skb should always be greater than 8 bytes. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 92cd3a17ce9c719abb4c28dee3438e0c641f8de4 Author: Matt Carlson Date: Wed Jul 27 14:20:47 2011 +0000 tg3: Simplify tx bd assignments In the following patches, the process the driver will use to assign skb fragments to transmit BDs will get more complicated. To prepare for that new code, this patch seeks to simplify how transmit BDs are populated. It does this by separating the code that assigns the BD members from the logic that controls how the fields are set. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit df8944cf5cd3794c46e95e0404038376ee7f8dda Author: Matt Carlson Date: Wed Jul 27 14:20:46 2011 +0000 tg3: Reintroduce tg3_tx_ring_info The following patches will require the use of an additional flag in the ring_info structure. The use of this flag is tx path specific, so this patch defines a specialized ring_info structure. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit bca0beb9363f8487ac902931a50eb00180a2d14a Author: Marek Vasut Date: Tue Jul 26 16:44:47 2011 +0000 ASIX: Use only 11 bits of header for data size The AX88772B uses only 11 bits of the header for the actual size. The other bits are used for something else. This causes dmesg full of messages: asix_rx_fixup() Bad Header Length This patch trims the check to only 11 bits. I believe on older chips, the remaining 5 top bits are unused. Signed-off-by: Marek Vasut Signed-off-by: David S. Miller commit bc466e678d0a98f445bf3f9c76fedf18e7dcc6b0 Author: Marek Vasut Date: Tue Jul 26 16:44:46 2011 +0000 ASIX: Simplify condition in rx_fixup() Signed-off-by: Marek Vasut Signed-off-by: David S. Miller commit a0295a3b6775ab88f5883684e14bbda8d287822d Author: Chris Clayton Date: Tue Jul 26 12:20:22 2011 +0000 Fix cdc-phonet build Try to send to correct address this time! ---------- Forwarded Message ---------- Subject: [PATCH] Fix cdc-phonet build Date: Saturday 23 Jul 2011 From: Chris Clayton To: linux-net@vger.kernel.org cdc-phonet does not presently build on linux-3.0 because there is no entry for it in drivers/net/Makefile. This patch adds that entry. Signed-off-by: Chris Clayton Signed-off-by: David S. Miller commit b2730f4f842b987c818023a8003e6426cf996985 Author: Andy Gospodarek Date: Wed Jul 27 10:09:26 2011 +0000 bonding: reduce noise during init On Tue, Jul 26, 2011 at 05:40:27PM -0700, Joe Perches wrote: > On Tue, 2011-07-26 at 17:37 -0700, Jay Vosburgh wrote: > > Joe Perches wrote: > > >I'd prefer you don't separate the format string > > >into multiple pieces. > > Why not? To me, it looks easier to read split into sections > > that don't wrap lines. > > Harder to grep for a dmesg and the > defect rate of these split formats is > typically higher than single strings > because of bad spacing between string > segments. > I noticed that you took some time back in late 2009 to 'consolidate' the split format-strings present in the bonding driver at the time and I've decided I'm fine to leave them the way they are. The main point of my patch was to change the output and I would like to get that included. Here is my updated patch... Subject: [PATCH net-next-2.6 v2] bonding: reduce noise during init Many are using sysfs to configure bonding rather than module options, so there is no need for bonding to throw this warning in normal cases. Keep the message around when debugging is enabled as it might be useful for someone desperate enough to enable debugging, but eliminate it otherwise. Signed-off-by: Andy Gospodarek Signed-off-by: David S. Miller commit f4bb2e9c4fa9e5fdddf90589703613fd1a9c519f Author: Andy Gospodarek Date: Tue Jul 26 11:12:27 2011 +0000 bonding: fix string comparison errors When a bond contains a device where one name is the subset of another (eth1 and eth10, for example), one cannot properly set the primary device or the currently active device. This was reported and based on work by Takuma Umeya. I also verified the problem and tested that this fix resolves it. V2: A few did not like the the current code or my changes, so I refactored bonding_store_primary and bonding_store_active_slave to be a bit cleaner, dropped the use of strnicmp since we did not really need the comparison to be case insensitive, and formatted the input string from sysfs so a comparison to IFNAMSIZ could be used. I also discovered an error in bonding_store_active_slave that would modify bond->primary_slave rather than bond->curr_active_slave before forcing the bonding driver to choose a new active slave. V3: Actually sending the proper patch.... Signed-off-by: Andy Gospodarek Reported-by: Takuma Umeya Signed-off-by: David S. Miller commit 550fd08c2cebad61c548def135f67aba284c6162 Author: Neil Horman Date: Tue Jul 26 06:05:38 2011 +0000 net: Audit drivers to identify those needing IFF_TX_SKB_SHARING cleared After the last patch, We are left in a state in which only drivers calling ether_setup have IFF_TX_SKB_SHARING set (we assume that drivers touching real hardware call ether_setup for their net_devices and don't hold any state in their skbs. There are a handful of drivers that violate this assumption of course, and need to be fixed up. This patch identifies those drivers, and marks them as not being able to support the safe transmission of skbs by clearning the IFF_TX_SKB_SHARING flag in priv_flags Signed-off-by: Neil Horman CC: Karsten Keil CC: "David S. Miller" CC: Jay Vosburgh CC: Andy Gospodarek CC: Patrick McHardy CC: Krzysztof Halasa CC: "John W. Linville" CC: Greg Kroah-Hartman CC: Marcel Holtmann CC: Johannes Berg Signed-off-by: David S. Miller commit d8873315065f1f527c7c380402cf59b1e1d0ae36 Author: Neil Horman Date: Tue Jul 26 06:05:37 2011 +0000 net: add IFF_SKB_TX_SHARED flag to priv_flags Pktgen attempts to transmit shared skbs to net devices, which can't be used by some drivers as they keep state information in skbs. This patch adds a flag marking drivers as being able to handle shared skbs in their tx path. Drivers are defaulted to being unable to do so, but calling ether_setup enables this flag, as 90% of the drivers calling ether_setup touch real hardware and can handle shared skbs. A subsequent patch will audit drivers to ensure that the flag is set properly Signed-off-by: Neil Horman Reported-by: Jiri Pirko CC: Robert Olsson CC: Eric Dumazet CC: Alexey Dobriyan CC: David S. Miller Signed-off-by: David S. Miller commit 894dc24ce75aa238ce96422a36b1537ccf2d8831 Author: Eric Dumazet Date: Tue Jul 26 02:39:41 2011 +0000 net: sock_sendmsg_nosec() is static Signed-off-by: Eric Dumazet CC: Anton Blanchard Signed-off-by: David S. Miller commit 0891b0e08937aaec2c4734acb94c5ff8042313bb Author: Jiri Pirko Date: Tue Jul 26 10:19:28 2011 +0000 forcedeth: fix vlans For some reason, when rxaccel is disabled, NV_RX3_VLAN_TAG_PRESENT is still set and some pseudorandom vids appear. So check for NETIF_F_HW_VLAN_RX as well. Also set correctly hw_features and set vlan mode on probe. Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit b852b720877e6b8e12b95a7cb4e00ea351b8cbfc Author: Sebastian Pöhn Date: Tue Jul 26 00:03:13 2011 +0000 gianfar: fix bug caused by 87c288c6e9aa31720b72e2bc2d665e24e1653c3e commit 87c288c6e9aa31720b72e2bc2d665e24e1653c3e "gianfar: do vlan cleanup" has two issues: # permutation of rx and tx flags # enabling vlan tag insertion by default (this leads to unusable connections on some configurations) If VLAN insertion is requested (via ethtool) it will be set at an other point ... Signed-off-by: Sebastian Poehn Signed-off-by: David S. Miller commit b49179c071b89423e1f6c50f6fa3d48d8158bc35 Merge: 17dd759 e5036c2 Author: David S. Miller Date: Wed Jul 27 22:18:47 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 4ba991d3eb379fbaa22049e7002341e97a673685 Author: David S. Miller Date: Wed Jul 27 21:06:16 2011 -0700 sparc: Detect and handle UltraSPARC-T3 cpu types. The cpu compatible string we look for is "SPARC-T3". As far as memset/memcpy optimizations go, we treat this chip the same as Niagara-T2/T2+. Use cache initializing stores for memset, and use perfetch, FPU block loads, cache initializing stores, and block stores for copies. We use the Niagara-T2 perf support, since T3 is a close relative in this regard. Later we'll add support for the new events T3 can report, plus enable T3's new "sample" mode. For now I haven't added any new ELF hwcap flags. We probably need to add a couple, for example: T2 and T3 both support the population count instruction in hardware. T3 supports VIS3 instructions, including support (finally) for partitioned shift. One can also now move directly between float and integer registers. T3 supports instructions meant to help with Galois Field and other HPC calculations, such as XOR multiply. Also there are "OP and negate" instructions, for example "fnmul" which is multiply-and-negate. T3 recognizes the transactional memory opcodes, however since transactional memory isn't supported: 1) 'commit' behaves as a NOP and 2) 'chkpt' always branches 3) 'rdcps' returns all zeros and 4) 'wrcps' behaves as a NOP. So we'll need about 3 new elf capability flags in the end to represent all of these things. Signed-off-by: David S. Miller commit 314ff52727fe94dfbe07f3a9a489ab3ca8d8df5a Author: David S. Miller Date: Wed Jul 27 20:46:25 2011 -0700 sparc: Don't do expensive hypervisor PCR write unless necessary. The hypervisor call is only necessary if hypervisor events are being requested. So if we're not tracking hypervisor events, simply do a direct register write. Signed-off-by: David S. Miller commit 15e3608d7c273947dbf2eadbcaa66e51143928fb Author: David S. Miller Date: Wed Jul 27 20:42:51 2011 -0700 sparc: Add T3 sun4v cpu type and hypervisor group defines. Signed-off-by: David S. Miller commit facfddef2c76110b8e321921f7e54518c3dd1579 Author: David S. Miller Date: Wed Jul 27 20:25:57 2011 -0700 sparc: Don't leave sparc_pmu_type NULL on sun4v. Otherwise we'll crash in the sparc perf init code. Signed-off-by: David S. Miller commit 9d108d25487bf958f8093409a4c0bee6169edba6 Author: Al Viro Date: Wed Jul 27 22:27:33 2011 -0400 devtmpfs: missing initialialization in never-hit case create_path() on something without a single / in it will return err without initializing it. It actually can't happen (we call that thing only if create on the same path returns -ENOENT, which won't happen happen for single-component path), but in this case initializing err to 0 is more than making compiler to STFU - would be the right thing to return on such paths; the function creates a parent directory of given pathname and in that case it has no work to do... Signed-off-by: Al Viro commit 95b6886526bb510b8370b625a49bc0ab3b8ff10f Merge: 2271220 29412f0 Author: Linus Torvalds Date: Wed Jul 27 19:26:38 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (54 commits) tpm_nsc: Fix bug when loading multiple TPM drivers tpm: Move tpm_tis_reenable_interrupts out of CONFIG_PNP block tpm: Fix compilation warning when CONFIG_PNP is not defined TOMOYO: Update kernel-doc. tpm: Fix a typo tpm_tis: Probing function for Intel iTPM bug tpm_tis: Fix the probing for interrupts tpm_tis: Delay ACPI S3 suspend while the TPM is busy tpm_tis: Re-enable interrupts upon (S3) resume tpm: Fix display of data in pubek sysfs entry tpm_tis: Add timeouts sysfs entry tpm: Adjust interface timeouts if they are too small tpm: Use interface timeouts returned from the TPM tpm_tis: Introduce durations sysfs entry tpm: Adjust the durations if they are too small tpm: Use durations returned from TPM TOMOYO: Enable conditional ACL. TOMOYO: Allow using argv[]/envp[] of execve() as conditions. TOMOYO: Allow using executable's realpath and symlink's target as conditions. TOMOYO: Allow using owner/group etc. of file objects as conditions. ... Fix up trivial conflict in security/tomoyo/realpath.c commit d6b722aa383a467a43d09ee38e866981abba08ab Author: Al Viro Date: Wed Jul 27 22:21:58 2011 -0400 hppfs: missing include Signed-off-by: Al Viro commit 29ae07b702cb77dbc24b0843f15ee8cf8a642311 Author: Utako Kusaka Date: Wed Jul 27 22:11:20 2011 -0400 ext4: Fix overflow caused by missing cast in ext4_fallocate() The logical block number in map.l_blk is a __u32, and so before we shift it left, by the block size, we neeed cast it to a 64-bit size. Otherwise i_size can be corrupted on an ENOSPC. # df -T /mnt/mp1 Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/sda6 ext4 9843276 153056 9190200 2% /mnt/mp1 # fallocate -o 0 -l 2199023251456 /mnt/mp1/testfile fallocate: /mnt/mp1/testfile: fallocate failed: No space left on device # stat /mnt/mp1/testfile File: `/mnt/mp1/testfile' Size: 4293656576 Blocks: 19380440 IO Block: 4096 regular file Device: 806h/2054d Inode: 12 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2011-07-25 13:01:31.414490496 +0900 Modify: 2011-07-25 13:01:31.414490496 +0900 Change: 2011-07-25 13:01:31.454490495 +0900 Signed-off-by: Utako Kusaka Signed-off-by: "Theodore Ts'o" -- fs/ext4/extents.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 58c54fcca3bac5bf9290cfed31c76e4c4bfbabaf Author: NeilBrown Date: Thu Jul 28 11:39:25 2011 +1000 md/raid10: handle further errors during fix_read_error better. If we find more read/write errors we should record a bad block before failing the device. Signed-off-by: NeilBrown commit 5e5702898e93eee7d69b6efde109609a89a61001 Author: NeilBrown Date: Thu Jul 28 11:39:25 2011 +1000 md/raid10: Handle read errors during recovery better. Currently when we get a read error during recovery, we simply abort the recovery. Instead, repeat the read in page-sized blocks. On successful reads, write to the target. On read errors, record a bad block on the destination, and only if that fails do we abort the recovery. As we now retry reads we need to know where we read from. This was in bi_sector but that can be changed during a read attempt. So store the correct from_addr and to_addr in the r10_bio for later access. Signed-off-by: NeilBrown commit e684e41db3bad44f1262341300b827c0d94ae220 Author: NeilBrown Date: Thu Jul 28 11:39:25 2011 +1000 md/raid10: simplify read error handling during recovery. If a read error is detected during recovery the code currently fails the read device. This isn't really necessary. recovery_request_write will signal a write error to end_sync_write and it will record a write error on the destination device which will record a bad block there or kick it from the array. So just remove this call to do md_error. Signed-off-by: NeilBrown commit 1a0b7cd82657a590f163b090bd9123a3a6b9aae4 Author: NeilBrown Date: Thu Jul 28 11:39:25 2011 +1000 md/raid10: record bad blocks due to write errors during resync/recovery. If we get a write error during resync/recovery don't fail the device but instead record a bad block. If that fails we can then fail the device. Signed-off-by: NeilBrown commit f84ee364dd15af11cada1e673f94128f62db189e Author: NeilBrown Date: Thu Jul 28 11:39:25 2011 +1000 md/raid10: attempt to fix read errors during resync/check We already attempt to fix read errors found during normal IO and a 'repair' process. It is best to try to repair them at any time they are found, so move a test so that during sync and check a read error will be corrected by over-writing with good data. If both (all) devices have known bad blocks in the sync section we won't try to fix even though the bad blocks might not overlap. That should be considered later. Also if we hit a read error during recovery we don't try to fix it. It would only be possible to fix if there were at least three copies of data, which is not very common with RAID10. But it should still be considered later. Signed-off-by: NeilBrown commit bd870a16c5946d86126f7203db3c73b71de0a1d8 Author: NeilBrown Date: Thu Jul 28 11:39:24 2011 +1000 md/raid10: Handle write errors by updating badblock log. When we get a write error (in the data area, not in metadata), update the badblock log rather than failing the whole device. As the write may well be many blocks, we trying writing each block individually and only log the ones which fail. Signed-off-by: NeilBrown commit 749c55e942d91cb27045fe2eb313aa5afe68ae0b Author: NeilBrown Date: Thu Jul 28 11:39:24 2011 +1000 md/raid10: clear bad-block record when write succeeds. If we succeed in writing to a block that was recorded as being bad, we clear the bad-block record. This requires some delayed handling as the bad-block-list update has to happen in process-context. Signed-off-by: NeilBrown commit d4432c23be957ff061f7b23fd60e8506cb472a55 Author: NeilBrown Date: Thu Jul 28 11:39:24 2011 +1000 md/raid10: avoid writing to known bad blocks on known bad drives. Writing to known bad blocks on drives that have seen a write error is asking for trouble. So try to avoid these blocks. Signed-off-by: NeilBrown commit e875ecea266a543e643b19e44cf472f1412708f9 Author: NeilBrown Date: Thu Jul 28 11:39:24 2011 +1000 md/raid10 record bad blocks as needed during recovery. When recovering one or more devices, if all the good devices have bad blocks we should record a bad block on the device being rebuilt. If this fails, we need to abort the recovery. To ensure we don't think that we aborted later than we actually did, we need to move the check for MD_RECOVERY_INTR earlier in md_do_sync, in particular before mddev->curr_resync is updated. Signed-off-by: NeilBrown commit 40c356ce5ad1a6be817825e1da1bc7494349cc6d Author: NeilBrown Date: Thu Jul 28 11:39:24 2011 +1000 md/raid10: avoid reading known bad blocks during resync/recovery. During resync/recovery limit the size of the request to avoid reading into a bad block that does not start at-or-before the current read address. Similarly if there is a bad block at this address, don't allow the current request to extend beyond the end of that bad block. Now that we don't ever read from known bad blocks, it is safe to allow devices with those blocks into the array. Signed-off-by: NeilBrown commit 8dbed5cebdf6796bf2618457b3653cf820934366 Author: NeilBrown Date: Thu Jul 28 11:39:24 2011 +1000 md/raid10 - avoid reading from known bad blocks - part 3 When attempting to repair a read error, don't read from devices with a known bad block. As we are only reading PAGE_SIZE blocks, we don't try to narrow down to smaller regions in the hope that only part of this page is bad - it isn't worth the effort. Signed-off-by: NeilBrown commit 7399c31bc92a26bb8388a73f8e14acadcc512fe5 Author: NeilBrown Date: Thu Jul 28 11:39:23 2011 +1000 md/raid10: avoid reading from known bad blocks - part 2 When redirecting a read error to a different device, we must again avoid bad blocks and possibly split the request. Spin_lock typo fixed thanks to Dan Carpenter Signed-off-by: NeilBrown commit 856e08e23762dfb92ffc68fd0a8d228f9e152160 Author: NeilBrown Date: Thu Jul 28 11:39:23 2011 +1000 md/raid10: avoid reading from known bad blocks - part 1 This patch just covers the basic read path: 1/ read_balance needs to check for badblocks, and return not only the chosen slot, but also how many good blocks are available there. 2/ read submission must be ready to issue multiple reads to different devices as different bad blocks on different devices could mean that a single large read cannot be served by any one device, but can still be served by the array. This requires keeping count of the number of outstanding requests per bio. This count is stored in 'bi_phys_segments' On read error we currently just fail the request if another target cannot handle the whole request. Next patch refines that a bit. Signed-off-by: NeilBrown commit 560f8e5532d63a314271bfb99d3d1d53c938ed14 Author: NeilBrown Date: Thu Jul 28 11:39:23 2011 +1000 md/raid10: Split handle_read_error out from raid10d. raid10d() is too big and is about to get bigger, so split handle_read_error() out as a separate function. Signed-off-by: NeilBrown commit 1294b9c973251a5e68b62c9b40dd914517bda675 Author: NeilBrown Date: Thu Jul 28 11:39:23 2011 +1000 md/raid10: simplify/reindent some loops. When a loop ends with a large if, it can be neater to change the if to invert the condition and just 'continue'. Then the body of the if can be indented to a lower level. Signed-off-by: NeilBrown commit b84db560ead5417b5594349512baf8837959df4f Author: NeilBrown Date: Thu Jul 28 11:39:23 2011 +1000 md/raid5: Clear bad blocks on successful write. On a successful write to a known bad block, flag the sh so that raid5d can remove the known bad block from the list. Signed-off-by: NeilBrown commit 73e92e51b7969ef5477dd28fe2ae4d77675896f4 Author: NeilBrown Date: Thu Jul 28 11:39:22 2011 +1000 md/raid5. Don't write to known bad block on doubtful devices. If a device has seen write errors, don't write to any known bad blocks on that device. Signed-off-by: NeilBrown commit bc2607f393bd4fb844c1886a02af929ca0372056 Author: NeilBrown Date: Thu Jul 28 11:39:22 2011 +1000 md/raid5: write errors should be recorded as bad blocks if possible. When a write error is detected, don't mark the device as failed immediately but rather record the fact for handle_stripe to deal with. Handle_stripe then attempts to record a bad block. Only if that fails does the device get marked as faulty. Signed-off-by: NeilBrown commit 7f0da59bdc2f65795a57009d78f7753d3aea1de3 Author: NeilBrown Date: Thu Jul 28 11:39:22 2011 +1000 md/raid5: use bad-block log to improve handling of uncorrectable read errors. If we get an uncorrectable read error - record a bad block rather than failing the device. And if these errors (which may be due to known bad blocks) cause recovery to be impossible, record a bad block on the recovering devices, or abort the recovery. As we might abort a recovery without failing a device we need to teach RAID5 about recovery_disabled handling. Signed-off-by: NeilBrown commit 31c176ecdf3563140e6395249eda51a18130d9f6 Author: NeilBrown Date: Thu Jul 28 11:39:22 2011 +1000 md/raid5: avoid reading from known bad blocks. There are two times that we might read in raid5: 1/ when a read request fits within a chunk on a single working device. In this case, if there is any bad block in the range of the read, we simply fail the cache-bypass read and perform the read though the stripe cache. 2/ when reading into the stripe cache. In this case we mark as failed any device which has a bad block in that strip (1 page wide). Note that we will both avoid reading and avoid writing. This is correct (as we will never read from the block, there is no point writing), but not optimal (as writing could 'fix' the error) - that will be addressed later. If we have not seen any write errors on the device yet, we treat a bad block like a recent read error. This will encourage an attempt to fix the read error which will either generate a write error, or will ensure good data is stored there. We don't yet forget the bad block in that case. That comes later. Now that we honour bad blocks when reading we can allow devices with bad blocks into the array. Signed-off-by: NeilBrown commit 62096bce231b3760882ed91205fc84682d6b0529 Author: NeilBrown Date: Thu Jul 28 11:38:13 2011 +1000 md/raid1: factor several functions out or raid1d() raid1d is too big with several deep branches. So separate them out into their own functions. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 3a9f28a5117e00a868dd8b4395f9a707ae56764b Author: NeilBrown Date: Thu Jul 28 11:33:42 2011 +1000 md/raid1: improve handling of read failure during recovery. If we cannot read a block from anywhere during recovery, there is now a better approach than just giving up. We can record a bad block on each device and keep going - being careful not to clear the bad block when a write succeeds as it might - it will be a write of incorrect data. We have now reached the state where - for raid1 - we only call md_error if md_set_badblocks has failed. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit d8f05d2995d467a91db1af01637e6ffd94660ca8 Author: NeilBrown Date: Thu Jul 28 11:33:00 2011 +1000 md/raid1: record badblocks found during resync etc. If we find a bad block while writing as part of resync/recovery we need to report that back to raid1d which must record the bad block, or fail the device. Similarly when fixing a read error, a further error should just record a bad block if possible rather than failing the device. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit cd5ff9a16f0831f68c1024d5d776075b5123b034 Author: NeilBrown Date: Thu Jul 28 11:32:41 2011 +1000 md/raid1: Handle write errors by updating badblock log. When we get a write error (in the data area, not in metadata), update the badblock log rather than failing the whole device. As the write may well be many blocks, we trying writing each block individually and only log the ones which fail. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 2ca68f5ed7383733102ee53cd8fa4021ecc3b275 Author: NeilBrown Date: Thu Jul 28 11:32:10 2011 +1000 md/raid1: store behind-write pages in bi_vecs. When performing write-behind we allocate pages to store the data during write. Previously we just keep a list of pages. Now we keep a list of bi_vec which includes offset and size. This means that the r1bio has complete information to create a new bio which will be needed for retrying after write errors. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 4367af556133723d0f443e14ca8170d9447317cb Author: NeilBrown Date: Thu Jul 28 11:31:49 2011 +1000 md/raid1: clear bad-block record when write succeeds. If we succeed in writing to a block that was recorded as being bad, we clear the bad-block record. This requires some delayed handling as the bad-block-list update has to happen in process-context. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 1f68f0c4b677ccd6935ff61e4e6888787505f8dc Author: NeilBrown Date: Thu Jul 28 11:31:48 2011 +1000 md/raid1: avoid writing to known-bad blocks on known-bad drives. If we have seen any write error on a drive, then don't write to any known-bad blocks on that drive. If necessary, we divide the write request up into pieces just like we do for reads, so each piece is either all written or all not written to any given drive. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 0b7d83865cb7a60b1768212c1e60b8fd7c280506 Author: Namhyung Kim Date: Thu Jul 28 11:31:48 2011 +1000 md: update documentation for md/rdev/state sysfs interface Previous patches in the bad block series extended behavior of rdev's 'state' interface but lacked documentation update. Fix it. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit de393cdea66cbd63c90725663f400c76faf1b255 Author: NeilBrown Date: Thu Jul 28 11:31:48 2011 +1000 md: make it easier to wait for bad blocks to be acknowledged. It is only safe to choose not to write to a bad block if that bad block is safely recorded in metadata - i.e. if it has been 'acknowledged'. If it hasn't we need to wait for the acknowledgement. We support that using rdev->blocked wait and md_wait_for_blocked_rdev by introducing a new device flag 'BlockedBadBlock'. This flag is only advisory. It is cleared whenever we acknowledge a bad block, so that a waiter can re-check the particular bad blocks that it is interested it. It should be set by a caller when they find they need to wait. This (set after test) is inherently racy, but as md_wait_for_blocked_rdev already has a timeout, losing the race will have minimal impact. When we clear "Blocked" was also clear "BlockedBadBlocks" incase it was set incorrectly (see above race). We also modify the way we manage 'Blocked' to fit better with the new handling of 'BlockedBadBlocks' and to make it consistent between externally managed and internally managed metadata. This requires that each raidXd loop checks if the metadata needs to be written and triggers a write (md_check_recovery) if needed. Otherwise a queued write request might cause raidXd to wait for the metadata to write, and only that thread can write it. Before writing metadata, we set FaultRecorded for all devices that are Faulty, then after writing the metadata we clear Blocked for any device for which the Fault was certainly Recorded. The 'faulty' device flag now appears in sysfs if the device is faulty *or* it has unacknowledged bad blocks. So user-space which does not understand bad blocks can continue to function correctly. User space which does, should not assume a device is faulty until it sees the 'faulty' flag, and then sees the list of unacknowledged bad blocks is empty. Signed-off-by: NeilBrown commit d7a9d443bc8a75a24873c0506f50051edfedc714 Author: NeilBrown Date: Thu Jul 28 11:31:48 2011 +1000 md: add 'write_error' flag to component devices. If a device has ever seen a write error, we will want to handle known-bad-blocks differently. So create an appropriate state flag and export it via sysfs. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 06f603851fa90bcd236328438278d4dc8b655495 Author: NeilBrown Date: Thu Jul 28 11:31:48 2011 +1000 md/raid1: avoid reading known bad blocks during resync When performing resync/etc, keep the size of the request small enough that it doesn't overlap any known bad blocks. Devices with badblocks at the start of the request are completely excluded. If there is nowhere to read from due to bad blocks, record a bad block on each target device. Now that we never read from known-bad-blocks we can allow devices with known-bad-blocks into a RAID1. Signed-off-by: NeilBrown commit d2eb35acfdccbe2a3622ed6cc441a5482148423b Author: NeilBrown Date: Thu Jul 28 11:31:48 2011 +1000 md/raid1: avoid reading from known bad blocks. Now that we have a bad block list, we should not read from those blocks. There are several main parts to this: 1/ read_balance needs to check for bad blocks, and return not only the chosen device, but also how many good blocks are available there. 2/ fix_read_error needs to avoid trying to read from bad blocks. 3/ read submission must be ready to issue multiple reads to different devices as different bad blocks on different devices could mean that a single large read cannot be served by any one device, but can still be served by the array. This requires keeping count of the number of outstanding requests per bio. This count is stored in 'bi_phys_segments' 4/ retrying a read needs to also be ready to submit a smaller read and queue another request for the rest. This does not yet handle bad blocks when reading to perform resync, recovery, or check. 'md_trim_bio' will also be used for RAID10, so put it in md.c and export it. Signed-off-by: NeilBrown commit 9f2f3830789a4c9c1af2d1437d407c43e05136e6 Author: NeilBrown Date: Thu Jul 28 11:31:47 2011 +1000 md: Disable bad blocks and v0.90 metadata. v0.90 metadata cannot record bad blocks, so when loading metadata for such a device, set shift to -1. Signed-off-by: NeilBrown commit 2699b67223aca6b1450fc2f72e40fada952afc85 Author: NeilBrown Date: Thu Jul 28 11:31:47 2011 +1000 md: load/store badblock list from v1.x metadata Space must have been allocated when array was created. A feature flag is set when the badblock list is non-empty, to ensure old kernels don't load and trust the whole device. We only update the on-disk badblocklist when it has changed. If the badblocklist (or other metadata) is stored on a bad block, we don't cope very well. If metadata has no room for bad block, flag bad-blocks as disabled, and do the same for 0.90 metadata. Signed-off-by: NeilBrown commit 34b343cff4354ab9864be83be88405fd53d928a0 Author: NeilBrown Date: Thu Jul 28 11:31:47 2011 +1000 md: don't allow arrays to contain devices with bad blocks. As no personality understand bad block lists yet, we must reject any device that is known to contain bad blocks. As the personalities get taught, these tests can be removed. This only applies to raid1/raid5/raid10. For linear/raid0/multipath/faulty the whole concept of bad blocks doesn't mean anything so there is no point adding the checks. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 6e0d2d0312fb20c1edac1b2c849068c1c7944abf Author: Namhyung Kim Date: Thu Jul 28 11:31:47 2011 +1000 md: add documentation for bad block log Previous patch in the bad block series added new sysfs interfaces ([unacknowledged_]bad_blocks) for each rdev without documentation. Add it. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 16c791a5af3e50d0c11760485fd68e5829f3be4d Author: NeilBrown Date: Thu Jul 28 11:31:47 2011 +1000 md/bad-block-log: add sysfs interface for accessing bad-block-log. This can show the log (providing it fits in one page) and allows bad blocks to be 'acknowledged' meaning that they have safely been recorded in metadata. Clearing bad blocks is not allowed via sysfs (except for code testing). A bad block can only be cleared when a write to the block succeeds. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 2230dfe4ccc3add340dc6d437965b2de1d269fde Author: NeilBrown Date: Thu Jul 28 11:31:46 2011 +1000 md: beginnings of bad block management. This the first step in allowing md to track bad-blocks per-device so that we can fail individual blocks rather than the whole device. This patch just adds a data structure for recording bad blocks, with routines to add, remove, search the list. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 0e1147b001793593624e80b3c0a1790822b6baca Author: Robin Dong Date: Wed Jul 27 21:29:33 2011 -0400 ext4: add action of moving index in ext4_ext_rm_idx for Punch Hole The old function ext4_ext_rm_idx is used only for truncate case because it just remove last index in extent-index-block. When punching hole, it usually needed to remove "middle" index, therefore we must move indexes which after it forward. (I create a file with 1 depth extent tree and punch hole in the middle of it, the last index in index-block strangly gone, so I find out this bug) Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit 668f4dc5593327fadc95b33189c375f7178ef88e Author: Yongqiang Yang Date: Wed Jul 27 21:23:13 2011 -0400 ext4: simplify parameters of reserve_backup_gdb() The reserve_backup_gdb() function only needs the block group number; there's no need to pass a pointer to struct ext4_new_group_data to it. Signed-off-by: Yongqiang Yang commit 2f919710143cb2025157c3c193ee22de86f3ed73 Author: Yongqiang Yang Date: Wed Jul 27 21:16:33 2011 -0400 ext4: simplify parameters of add_new_gdb() add_new_gdb() only needs the block group number; there is no need to pass a pointer to struct ext4_new_group_data to add_new_gdb(). Instead of filling in a pointer the struct buffer_head in add_new_gdb(), it's simpler to have the caller fetch it from the s_group_desc[] array. [Fixed error path to handle the case where struct buffer_head *primary hasn't been set yet. -- Ted] Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit e6075e984d100c12bb79267639c3f661d9788a67 Author: Yongqiang Yang Date: Wed Jul 27 20:40:18 2011 -0400 ext4: remove lock_buffer in bclean() and setup_new_group_blocks() There is no need to lock the buffers since no one else should be touching these buffers besides the file system. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 22712200e175e0df5c7f9edfe6c6bf5c94c23b83 Merge: 597a67e ff95acb Author: Linus Torvalds Date: Wed Jul 27 16:43:52 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: Btrfs: make sure reserve_metadata_bytes doesn't leak out strange errors Btrfs: use the commit_root for reading free_space_inode crcs Btrfs: reduce extent_state lock contention for metadata Btrfs: remove lockdep magic from btrfs_next_leaf Btrfs: make a lockdep class for each root Btrfs: switch the btrfs tree locks to reader/writer Btrfs: fix deadlock when throttling transactions Btrfs: stop using highmem for extent_buffers Btrfs: fix BUG_ON() caused by ENOSPC when relocating space Btrfs: tag pages for writeback in sync Btrfs: fix enospc problems with delalloc Btrfs: don't flush delalloc arbitrarily Btrfs: use find_or_create_page instead of grab_cache_page Btrfs: use a worker thread to do caching Btrfs: fix how we merge extent states and deal with cached states Btrfs: use the normal checksumming infrastructure for free space cache Btrfs: serialize flushers in reserve_metadata_bytes Btrfs: do transaction space reservation before joining the transaction Btrfs: try to only do one btrfs_search_slot in do_setxattr commit a519b26dbe6533416d21b552053b0bf687f878d7 Author: NeilBrown Date: Thu Jul 28 07:56:24 2011 +1000 md: remove suspicious size_of() When calling bioset_create we pass the size of the front_pad as sizeof(mddev) which looks suspicious as mddev is a pointer and so it looks like a common mistake where sizeof(*mddev) was intended. The size is actually correct as we want to store a pointer in the front padding of the bios created by the bioset, so make the intent more explicit by using sizeof(mddev_t *) Reported-by: Zdenek Kabelac Signed-off-by: NeilBrown commit 86cf786c04541c18febc897686a0d5bea29ce688 Author: Laurent Pinchart Date: Sun Nov 28 15:07:20 2010 -0300 [media] v4l: mt9v032: Fix Bayer pattern Compute crop rectangle boundaries to ensure a GRBG Bayer pattern. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 7c58e7d06cf2566537714257094b852de6c294c3 Author: Michael Grzeschik Date: Tue Jul 12 12:39:05 2011 -0300 [media] V4L: mt9m111: rewrite set_pixfmt added new bit offset defines, more supported BE colour formats and also support BGR565 swapped pixel formats removed pixfmt helper functions and option flags setting the configuration register directly in set_pixfmt added reg_mask function reg_mask is basically the same as clearing & setting registers, but it is more convenient and faster (saves one rw cycle). Signed-off-by: Michael Grzeschik Signed-off-by: Philipp Wiesner Acked-by: Robert Jarzmik [g.liakhovetski@gmx.de: remove Bayer swap, forward-port, rename macros] Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 9c56cbf9aadff79c25ccd424ae422971efd5c1a4 Author: Michael Grzeschik Date: Tue Jul 12 12:39:03 2011 -0300 [media] V4L: mt9m111: fix missing return value check mt9m111_reg_clear Signed-off-by: Michael Grzeschik Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit b52a851d9182e8a20704152d537c7e19ed34cc99 Author: Bastian Hecht Date: Fri Jun 24 07:57:36 2011 -0300 [media] V4L: initial driver for ov5642 CMOS sensor This is an initial driver release for the Omnivision 5642 CMOS sensor. Signed-off-by: Bastian Hecht Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit cb74cf5349a6a9225bbab278a808d5a0739c3b2c Author: Guennadi Liakhovetski Date: Mon Jul 4 12:15:14 2011 -0300 [media] V4L: sh_mobile_ceu_camera: fix Oops when USERPTR mapping fails If vb2_dma_contig_get_userptr() fails on a videobuffer, driver's .buf_init() method will not be called and the list will not be initialised. Trying to remove an uninitialised element from a list leads to a NULL-dereference. Signed-off-by: Guennadi Liakhovetski Tested-by: Bastian Hecht Signed-off-by: Mauro Carvalho Chehab commit 7dfff95366f48bf66f77c17cdc9ebd8be696ac5d Author: Guennadi Liakhovetski Date: Fri Jul 15 20:03:38 2011 -0300 [media] V4L: soc-camera: remove soc-camera bus and devices on it Now that v4l2 subdevices have got their own device objects, having one more device in soc-camera clients became redundant and confusing. This patch removes those devices and the soc-camera bus, they used to reside on. Signed-off-by: Guennadi Liakhovetski Acked-by: Paul Mundt Signed-off-by: Mauro Carvalho Chehab commit d33b290a149dafe2e3cc2901ec726bea09a2c0f4 Author: Guennadi Liakhovetski Date: Fri Jul 1 11:31:35 2011 -0300 [media] V4L: soc-camera: un-export the soc-camera bus The soc-camera bus is now completely local again. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 6b526fed0e688e3926bd43a09f2f36cba3983ce2 Author: Guennadi Liakhovetski Date: Fri Jul 1 11:19:58 2011 -0300 [media] V4L: sh_mobile_csi2: switch away from using the soc-camera bus notifier This moves us one more step closer to eliminating the soc-camera bus and devices on it. Besides, as a side effect, CSI-2 runtime PM on sh-mobile secomes finer grained now: we only have to power on the interface, when the device nodes are open. Signed-off-by: Guennadi Liakhovetski Acked-by: Paul Mundt Signed-off-by: Mauro Carvalho Chehab commit 91c7953005247c9563408bbdbf35e27de33e6ec3 Author: Guennadi Liakhovetski Date: Fri Jul 1 14:31:17 2011 -0300 [media] V4L: add media bus configuration subdev operations Add media bus configuration types and two subdev operations to get supported mediabus configurations and to set a specific configuration. Subdevs can support several configurations, e.g., they can send video data on 1 or several lanes, can be configured to use a specific CSI-2 channel, in such cases subdevice drivers return bitmasks with all respective bits set. When a set-configuration operation is called, it has to specify a non-ambiguous configuration. Signed-off-by: Stanimir Varbanov Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 7a05dfeddee9ffc2405230759ef32ecb603e3f48 Author: Guennadi Liakhovetski Date: Wed Jun 29 07:46:40 2011 -0300 [media] V4L: soc-camera: group struct field initialisations together Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 033d7463f816315308ffec6f69576d820bfbab0c Author: Guennadi Liakhovetski Date: Wed Jun 29 07:43:48 2011 -0300 [media] V4L: soc-camera: remove now unused soc-camera specific PM hooks soc-camera host drivers shall be implementing their PM, using standard kernel methods, soc-camera specific hooks can die. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 7254026cedd42d75009f8a7f2999045007dd444e Author: Guennadi Liakhovetski Date: Wed Jun 29 11:45:01 2011 -0300 [media] V4L: pxa-camera: switch to using standard PM hooks The pxa-camera driver doesn't need soc-camera specific PM callbacks, switch it to using the standard PM hooks instead. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 2d12421dd39e39f9cacd9c7a58359c0f85823343 Author: Abylay Ospan Date: Mon Jul 18 04:14:28 2011 -0300 [media] NetUP Dual DVB-T/C CI RF: force card hardware revision by module param Currently available two hardware revision: 0x1 firmware filename: dvb-netup-altera-01.fw 0x4 firmware filename: dvb-netup-altera-04.fw Signed-off-by: Abylay Ospan Signed-off-by: Mauro Carvalho Chehab commit e66131cee501ee720b7b58a4b87073b8fbaaaba6 Author: Abylay Ospan Date: Fri Jul 15 15:01:07 2011 -0300 [media] Don't OOPS if videobuf_dvb_get_frontend return NULL Signed-off-by: Abylay Ospan Signed-off-by: Mauro Carvalho Chehab commit b8f0d306b73162f9c9870ce5cd7b33b8204fcccc Author: Abylay Ospan Date: Thu Jul 14 05:20:29 2011 -0300 [media] NetUP Dual DVB-T/C CI RF: load firmware according card revision Currently available two hardware revision: 0x1 firmware filename: dvb-netup-altera-01.fw 0x4 firmware filename: dvb-netup-altera-04.fw Signed-off-by: Abylay Ospan Signed-off-by: Mauro Carvalho Chehab commit 1752cd5d3e7ac53025e3010219d06d2b962e1395 Author: Laurent Pinchart Date: Wed May 25 04:16:28 2011 -0300 [media] omap3isp: Support configurable HS/VS polarities Add two fields to the ISP parallel platform data to set the HS and VS signals polarities. Signed-off-by: Laurent Pinchart Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit 75ccf268d504070b70b6d964b06e2f0626856b5a Author: Kalle Jokiniemi Date: Tue May 3 07:41:23 2011 -0300 [media] OMAP3: RX-51: define vdds_csib regulator supply The RX-51 uses the CSIb IO complex for camera operation. The board file is missing definition for the regulator supplying the CSIb complex, so this is added for better power management. Signed-off-by: Kalle Jokiniemi Acked-by: Laurent Pinchart Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit 65d76488f65011a68202eae7c01062390474bb1f Author: Kalle Jokiniemi Date: Tue May 3 07:41:22 2011 -0300 [media] OMAP3: ISP: Add regulator control for omap34xx The current omap3isp driver is missing regulator handling for CSIb complex in omap34xx based devices. This patch adds a mechanism for this to the omap3isp driver. Signed-off-by: Kalle Jokiniemi Acked-by: Laurent Pinchart Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit 118314c0169f25b1456232def5ca48d15e5036f0 Author: Amber Jain Date: Tue Apr 19 09:23:51 2011 -0300 [media] V4l2: OMAP: VOUT: Minor Cleanup, removing the unnecessary code Minor changes to remove the unused code from omap_vout driver. Signed-off-by: Amber Jain Signed-off-by: Samreen Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit 72915e851da9aeea2bf619f8f52ab0ee4bc241ca Author: Amber Jain Date: Thu Jul 7 06:03:25 2011 -0300 [media] V4L2: OMAP: VOUT: dma map and unmap v4l2 buffers in qbuf and dqbuf Add support to map the buffer using dma_map_single during qbuf which inturn calls cache flush and unmap the same during dqbuf. This is done to prevent the artifacts seen because of cache-coherency issues on OMAP4 Signed-off-by: Amber Jain Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit 5251dd6c07ad4a921c1cf40d9bf41f842364f936 Author: Amber Jain Date: Thu Jun 2 02:30:10 2011 -0300 [media] V4L2: OMAP: VOUT: isr handling extended for DPI and HDMI interface Extending the omap vout isr handling for: - HDMI interface. These are the new interfaces added to OMAP4 DSS. Signed-off-by: Amber Jain Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit 445e258fa286cb83818b731ef4075a8cc183f2f3 Author: archit taneja Date: Tue Jun 14 03:54:47 2011 -0300 [media] OMAP_VOUT: Create separate file for VRFB related API's Introduce omap_vout_vrfb.c and omap_vout_vrfb.h, for all VRFB related API's, making OMAP_VOUT driver independent from VRFB. This is required for OMAP4 DSS, since OMAP4 doesn't have VRFB block. Added new enum vout_rotation_type and "rotation_type" member to omapvideo_info, this is initialized based on the arch type in omap_vout_probe. The rotation_type var is now used to choose between vrfb and non-vrfb calls. Signed-off-by: Archit Taneja Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit b366888a9020f933bdab8f15f8d4a63e988ce6b3 Author: archit taneja Date: Tue Jun 14 03:54:46 2011 -0300 [media] OMAP_VOUT: CLEANUP: Make rotation related helper functions more descriptive Rename rotation_enabled() and rotate_90_or_270() to is_rotation_enabled() and is_rotation_90_or_270() to make them more descriptive. Signed-off-by: Archit Taneja Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit a137ac870ba7df53e0c68cf2af2c79a71a2050c0 Author: archit taneja Date: Tue Jun 14 03:54:45 2011 -0300 [media] OMAP_VOUT: CLEANUP: Move generic functions and macros to common files Move the inline functions rotate_90_or_270(), rotation_enabled(), and calc_rotation() from omap_vout.c to omap_voutdef.h. Move the independent functions omap_vout_alloc_buffer() and omap_vout_free_buffer() to omap_voutlib.c. Remove extern identifier from function definitions in omap_voutlib.h Add static identifier to functions that are used locally in omap_vout.c Signed-off-by: Archit Taneja Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit e213e438ce2a7451572f1c00ed87893ca25d3ea9 Author: Amber Jain Date: Tue May 31 11:45:36 2011 -0300 [media] OMAP2: V4L2: Remove GFP_DMA allocation as ZONE_DMA is not configured on OMAP Remove GFP_DMA from the __get_free_pages() call from omap24xxcam as ZONE_DMA is not configured on OMAP. Earlier the page allocator used to return a page from ZONE_NORMAL even when GFP_DMA is passed and CONFIG_ZONE_DMA is disabled. As a result of commit a197b59ae6e8bee56fcef37ea2482dc08414e2ac, page allocator returns null in such a scenario with a warning emitted to kernel log. Signed-off-by: Amber Jain Acked-by: Sakari Ailus Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit e831599cb8bed4e6aa2a336ec2e3aaf74dee6353 Author: Amber Jain Date: Tue May 31 11:45:35 2011 -0300 [media] V4L2: omap_vout: Remove GFP_DMA allocation as ZONE_DMA is not configured on OMAP Remove GFP_DMA from the __get_free_pages() call from omap_vout as ZONE_DMA is not configured on OMAP. Earlier the page allocator used to return a page from ZONE_NORMAL even when GFP_DMA is passed and CONFIG_ZONE_DMA is disabled. As a result of commit a197b59ae6e8bee56fcef37ea2482dc08414e2ac, page allocator returns null in such a scenario with a warning emitted to kernel log. Signed-off-by: Amber Jain Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit 949d9264589b759df66d40d497d14ecc49681b3a Author: Kirill Smelkov Date: Fri Jul 22 11:47:22 2011 -0300 [media] uvcvideo: Add FIX_BANDWIDTH quirk to HP Webcam on HP Mini 5103 netbook The camera there identifies itself as being manufactured by Cheng Uei Precision Industry Co., Ltd (Foxlink), and product is titled as "HP Webcam [2 MP Fixed]". I was trying to get 2 USB video capture devices to work simultaneously, and noticed that the above mentioned webcam always requires packet size = 3072 bytes per micro frame (~= 23.4 MB/s isoc bandwidth), which is far more than enough to get standard NTSC 640x480x2x30 = ~17.6 MB/s isoc bandwidth. As there are alt interfaces with smaller MxPS T: Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 2 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=05c8 ProdID=0403 Rev= 1.06 S: Manufacturer=Foxlink S: Product=HP Webcam [2 MP Fixed] S: SerialNumber=200909240102 C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=500mA A: FirstIf#= 0 IfCount= 2 Cls=0e(video) Sub=03 Prot=00 I:* If#= 0 Alt= 0 #EPs= 1 Cls=0e(video) Sub=01 Prot=00 Driver=uvcvideo E: Ad=83(I) Atr=03(Int.) MxPS= 16 Ivl=4ms I:* If#= 1 Alt= 0 #EPs= 0 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo I: If#= 1 Alt= 1 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo E: Ad=81(I) Atr=05(Isoc) MxPS= 128 Ivl=125us I: If#= 1 Alt= 2 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo E: Ad=81(I) Atr=05(Isoc) MxPS= 512 Ivl=125us I: If#= 1 Alt= 3 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo E: Ad=81(I) Atr=05(Isoc) MxPS=1024 Ivl=125us I: If#= 1 Alt= 4 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo E: Ad=81(I) Atr=05(Isoc) MxPS=1536 Ivl=125us I: If#= 1 Alt= 5 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo E: Ad=81(I) Atr=05(Isoc) MxPS=2048 Ivl=125us I: If#= 1 Alt= 6 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo E: Ad=81(I) Atr=05(Isoc) MxPS=2688 Ivl=125us I: If#= 1 Alt= 7 #EPs= 1 Cls=0e(video) Sub=02 Prot=00 Driver=uvcvideo E: Ad=81(I) Atr=05(Isoc) MxPS=3072 Ivl=125us UVC_QUIRK_FIX_BANDWIDTH helps here and NTSC video can be served with MxPS=2688 i.e. 20.5 MB/s isoc bandwidth. In terms of microframe time allocation, before the quirk NTSC video required 60 usecs / microframe and 53 usecs / microframe after. Acked-by: Laurent Pinchart Signed-off-by: Kirill Smelkov Signed-off-by: Mauro Carvalho Chehab commit d749fb663ef3b891ca5f30650ec2089ec945ce07 Author: Devin Heitmueller Date: Sun Jul 24 17:23:09 2011 -0300 [media] au8522: set signal field to 100% when signal present The signal state field in G_TUNER is typically scaled from 0-100%. Since we don't know the signal level, we really would prefer the field to contain 100% than 1/256, which in many utilities (such as v4l2-ctl) rounds to 0% even when a signal is actually present. This patch makes the behavior consistent with other drivers. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit de99d5328c6d54694471da28711a05adec708c3b Author: Devin Heitmueller Date: Sun Jul 24 17:07:07 2011 -0300 [media] cx231xx: Provide signal lock status in G_INPUT Make use of the signal state registers to properly populate the signal lock registers in the cx231xx driver. This allows applications to know whether there is a signal present even in devices which lack a tuner (since such apps typically won't call G_TUNER if no tuner is present). [mchehab@redhat.com: Fix CodingStyle: don't use {} for one-line if's] Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 44ecf1df9493e6684cd1bb34abb107a0ffe1078a Author: Devin Heitmueller Date: Sun Jul 24 15:44:43 2011 -0300 [media] cx231xx: Fix power ramping issue On platforms that have CONFIG_HZ set to 100, the power ramp time effectively ends up being 10ms. However, on those that have a higher CONFIG_HZ, the time ends up *actually* being 5ms, which doesn't allow enough time for the hardware to be fully powered up before attempting to address it via i2c. Change the constant to 10ms, which is long enough for the hardware to power up, and won't really be anymore time than it was previously on platforms with CONFIG_HZ being 100. Credit goes to Mauro Carvalho Chehab and Gerd Hoffmann who previously investigated this issue. Tested with the Hauppauge USBLive 2, with which the problem was readily reproducible after setting CONFIG_HZ to 1000. Signed-off-by: Devin Heitmueller Cc: Mauro Carvalho Chehab Cc: Gerd Hoffmann Signed-off-by: Mauro Carvalho Chehab commit 992299e84a4891275ea5924e30b66ce39a701e5e Author: Devin Heitmueller Date: Sat Jul 23 22:17:17 2011 -0300 [media] Fix regression introduced which broke the Hauppauge USBLive 2 The following patch addresses the regression introduced in the cx231xx driver which stopped the Hauppauge USBLive2 from working. Confirmed working by both myself and the user who reported the issue on the KernelLabs blog (Robert DeLuca). At some point during refactoring of the cx231xx driver, the USBLive 2 device became broken. This patch results in the device working again. Thanks to Robert DeLuca for sponsoring this work. Signed-off-by: Devin Heitmueller Cc: Robert DeLuca Signed-off-by: Mauro Carvalho Chehab commit c0c5e71e46638e5264c193db8636132e036a4c56 Author: Stephan Lachowsky Date: Tue May 31 19:24:21 2011 -0300 [media] uvcvideo: Fix control mapping for devices with multiple chains The search for matching extension units fails to take account of the current chain. In the case where you have two distinct video chains, both containing an XU with the same GUID but different unit ids, you will be unable to perform a mapping on the second chain because entity on the first chain will always be found first Fix this by only searching the current chain when performing a control mapping. This is analogous to the search used by uvc_find_control(), and is the correct behaviour. Signed-off-by: Stephan Lachowsky Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit fa14001480fb264b916ed6406ead24205dc1a86c Author: Sergei Shtylyov Date: Fri Jul 22 15:16:04 2011 -0300 [media] bt8xx: use pci_dev->subsystem_{vendor|device} The driver reads PCI subsystem IDs from the PCI configuration registers while they are already stored by the PCI subsystem in the 'subsystem_{vendor|device}' fields of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: Mauro Carvalho Chehab commit 119faf90ed79adfd4a8930f62c3b9592adf5d250 Author: Mauro Carvalho Chehab Date: Sun Jul 24 09:11:36 2011 -0300 [media] drxk: Fix the logic that selects between DVB-C annex A and C Fix the DRX-K logic that selects between DVB-C annex A and C Fix a typo where DVB-C annex type is set via setEnvParameters, but the driver, uses, instead, setParamParameters[2]. While here, cleans up the code, fixing a bad identation at the fallback code for other types of firmware, and put the multiple-line comments into the Linux CodingStyle. Acked-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit f07a0bc111829707f1277c19467a7129ddb5aeb1 Author: Mauro Carvalho Chehab Date: Thu Jul 21 22:30:27 2011 -0300 [media] drxk: Fix read debug message Signed-off-by: Mauro Carvalho Chehab commit e716adacef360fde5a5327ee95aa33dfca276c61 Author: Mauro Carvalho Chehab Date: Thu Jul 21 19:35:04 2011 -0300 [media] drxk: Fix error return code during drxk init Signed-off-by: Mauro Carvalho Chehab commit ab12f41f62ee8824bb2eec12c8dcbfb31dd4572a Author: Mauro Carvalho Chehab Date: Fri Jul 15 09:35:58 2011 -0300 [media] drxk: Remove goto/break after return After return, we don't need any other statement to change the function flux ;) Reported-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 320ed23ebf135a3403a7068ede7ca7915675bd47 Author: Mauro Carvalho Chehab Date: Fri Jul 15 01:14:17 2011 -0300 [media] drxk: Fix a bug at some switches that broke DVB-T The error propagation changeset c23bf4402 broke the DVB-T code. The legacy way for propagate errors was: do { status = foo_func() if (status < 0) break; } while (0); return status; However, on a few places, it was doing: do { switch(foo) { case bar: status = foo_func() if (status < 0) break; break; } switch(foo2) { case bar: status = foo_func() if (status < 0) break; break; } ... } while (0); return (status) The inner error break were not working, as it were breaking only the switch, instead of the do. The solution used were to do a s/break/goto error/ at the inner breaks, but preserving the last break. Onfortunately, on a few switches, the replacement were applied also to the final break for the case statements. Fix the broken logic, by reverting them to break, where pertinent, in order to fix DVB-T support. Signed-off-by: Mauro Carvalho Chehab commit c4c3a3d32a2eac18dba04683bb5b7357402405c7 Author: Mauro Carvalho Chehab Date: Thu Jul 14 22:23:18 2011 -0300 [media] Remove the double symbol increment hack from drxk_hard Both ngene and ddbrige calls dvb_attach once for drxk_attach. The logic used there, and by tda18271c2dd driver is different from similar logic on other frontends. The right fix is to change them to use the same logic, but, while we don't do that, we need to patch em28xx-dvb in order to do cope with ngene/ddbridge magic. While here, document why drxk_t_release should do nothing. Signed-off-by: Mauro Carvalho Chehab commit 33ba28eebc3e1758e6adc1fcec9e1e3151bac453 Author: Mauro Carvalho Chehab Date: Thu Jul 14 21:48:00 2011 -0300 [media] em28xx: Add other Terratec H5 USB ID's Signed-off-by: Mauro Carvalho Chehab commit 106ff9e013f60e2f40687d4f8b43c164873b5544 Author: Mauro Carvalho Chehab Date: Fri Jul 15 08:49:06 2011 -0300 Revert "[media] DVB: dvb_frontend: off by one in dtv_property_dump()" This reverts commit a3e4adf274f86b2363fedaa964297cb38526cef0. As pointed by Andread Oberritter : That's wrong, because the array size is DTV_MAX_COMMAND + 1. Using the ARRAY_SIZE macro instead might reduce the confusion. Also, changeset 3995223038 already fixed this issue. Reported-by: Andread Oberritter Signed-off-by: Mauro Carvalho Chehab commit bded70d296a976da1b52ff5d7f574551fbc503bb Author: istvan_v@mailbox.hu Date: Mon Jul 11 11:07:43 2011 -0300 [media] cx88: implemented luma notch filter control The following patch adds a new control that makes it possible to set the luma notch filter type to finetune picture quality. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit eea16e3661f7177ba106780a2f6cbf373d73bab1 Author: istvan_v@mailbox.hu Date: Mon Jul 11 11:02:19 2011 -0300 [media] cx88: implemented sharpness control This patch implements support for a sharpness control, using the luma peaking filter feature of cx2388x. [mchehab@redhat.com: use cx_andor instead of cx_write] Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit fef1c8d01847f05f01bf04dbae4409d72ed9a2cd Author: Tomasz Stanislawski Date: Wed Feb 2 05:40:08 2011 -0300 [media] v4l: s5p-tv: add TV Mixer driver for Samsung S5P platform Add driver for TV Mixer on Samsung platforms from S5P family. Mixer is responsible for merging images from three layers and passing result to the output. Drivers are using: - v4l2 framework - videobuf2 - runtime PM Signed-off-by: Tomasz Stanislawski Signed-off-by: Kyungmin Park Reviewed-by: Marek Szyprowski Reviewed-by: Sylwester Nawrocki Reviewed-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 9a498400fede652a5ada51e74ae47bba99c7ed07 Author: Tomasz Stanislawski Date: Wed Feb 2 05:40:08 2011 -0300 [media] v4l: s5p-tv: add SDO driver for Samsung S5P platform Add drivers for Standard Definition output (SDO) on Samsung platforms from S5P family. The driver provides control over streaming analog TV via Composite connector. Driver is using: - v4l2 framework - runtime PM Signed-off-by: Tomasz Stanislawski Signed-off-by: Kyungmin Park Reviewed-by: Marek Szyprowski Reviewed-by: Sylwester Nawrocki Reviewed-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit a52074ee7ad0b9ed4b4180c843d1c3114374e172 Author: Tomasz Stanislawski Date: Wed Mar 2 13:16:37 2011 -0300 [media] v4l: s5p-tv: add drivers for HDMI on Samsung S5P platform Add drivers for HDMI outputs on Samsung platforms from S5P family. Drivers are using: - v4l2 framework - runtime PM Signed-off-by: Tomasz Stanislawski Signed-off-by: Kyungmin Park Reviewed-by: Marek Szyprowski Reviewed-by: Sylwester Nawrocki Reviewed-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 5930ab2ba089e05c8de594c36836724f8df7725e Author: Tomasz Stanislawski Date: Wed Jun 29 07:16:15 2011 -0300 [media] v4l: add g_std_output callback to V4L2 subdev Callback is used to acquire current analog TV standard from a subdev. It is used to avoid keeping current standard in top-level driver. Signed-off-by: Tomasz Stanislawski Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 8b32dd0d3f9221719507700fa396d280143b4da1 Author: Tomasz Stanislawski Date: Wed Jun 29 07:01:28 2011 -0300 [media] v4l: add g_dv_preset callback to V4L2 subdev Callback is used to acquire current digital video preset from a subdev. It is used to avoid keeping dv preset in top-level driver. Signed-off-by: Tomasz Stanislawski Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 839cf81346b5145f0959b28652612eabaed48d47 Author: Tomasz Stanislawski Date: Wed Mar 2 13:16:37 2011 -0300 [media] v4l: add g_tvnorms_output callback to V4L2 subdev Callback is used to acquire TV norms supported by a subdev. It is used to avoid having standards in top-level driver. Signed-off-by: Tomasz Stanislawski Signed-off-by: Kyungmin Park Reviewed-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 243bf1a24d991f57398aa9d24e408ca83abc6135 Author: Devin Heitmueller Date: Thu Jul 14 12:44:46 2011 -0300 [media] cx88: properly maintain decoder config when using MPEG encoder The cx88 driver would force core->input to always be zero when doing the the request_acquire(). While it wasn't actually changing the input register in the hardware, the driver makes decision based on the current input. In particular, it decides whether to do things like enabling the comb filter when on a composite input but disabling it on s-video. So for example, on the HVR-1300, using the s-video input with the MPEG encoder would end up with the video decoder core configured as though the input type were composite. In short, the driver state did not match the hardware state. This patch does two things: 1. It forces the input to zero only if actually switching to DVB mode. This prevents the input from changing when the blackbird driver opens the device. 2. Keep track of what the input was set to when switching to DVB, and reset it back when done. This eliminates a condition where for example the user had the analog side of the board set to capture on the s-video input, then he used DVB for a bit, then the analog input would unexpectedly be set to the tuner input. This work was sponsored by Anevia S.A. Signed-off-by: Devin Heitmueller Cc: Florent Audebert Signed-off-by: Mauro Carvalho Chehab commit af935746781088f28904601469671d244d2f653b Author: Kamil Debski Date: Tue Jun 21 10:51:26 2011 -0300 [media] MFC: Add MFC 5.1 V4L2 driver Multi Format Codec 5.1 is a hardware video coding acceleration module found in the S5PV210 and Exynos4 Samsung SoCs. It is capable of handling a range of video codecs and this driver provides a V4L2 interface for video decoding and encoding. Signed-off-by: Kamil Debski Signed-off-by: Kyungmin Park Cc: Jeongtae Park Signed-off-by: Mauro Carvalho Chehab commit c53f9f00e5ddf72046698d6a378384e29fc9795f Author: Jarod Wilson Date: Wed Jul 13 18:26:07 2011 -0300 [media] redrat3: improve compat with lirc userspace decode This is admittedly a bit of a hack, but if we change our timeout value to something longer and fudge our synthesized trailing space sample based on the initial pulse sample, rc-core decode continues to work just fine with both rc-6 and rc-5, and now lirc userspace decode shows proper repeats for both of those protocols as well. Also tested NEC successfully with both decode options. We do still need a reset timer callback using the hardware's timeout value to make sure we actually process samples correctly, regardless of our somewhat hacky timeout and synthesized trailer above. This also adds a missing del_timer_sync call to the module unload path. CC: Chris Dodge CC: Andrew Vincer CC: Stephen Cox Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 2c594ffae40306ba1a5a5d59186cd3d49dc3ad6a Author: Jarod Wilson Date: Wed Jul 13 18:26:06 2011 -0300 [media] redrat3: cap duration in the right place Trying to cap duration before multiplying it was obviously wrong. CC: Chris Dodge CC: Andrew Vincer CC: Stephen Cox Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 68b2a69d10bf29cf5dcd779be18f96c8be8326d5 Author: Jarod Wilson Date: Wed Jul 13 18:26:05 2011 -0300 [media] redrat3: sending extra trailing space was useless We already add a trailing space, this wasn't doing anything useful, and actually confused lirc userspace a bit. Rip it out. CC: Chris Dodge CC: Andrew Vincer CC: Stephen Cox Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit f5f2cc646af13b0cf74b9d676408473123c9ea76 Author: Jarod Wilson Date: Wed Jul 13 18:09:48 2011 -0300 [media] rc-core support for Microsoft IR keyboard/mouse This is a custom IR protocol decoder, for the RC-6-ish protocol used by the Microsoft Remote Keyboard, apparently developed internally at Microsoft, and officially dubbed MCIR-2, per their March 2011 remote and transceiver requirements and specifications document, which also touches on this IR keyboard/mouse device. Its a standard keyboard with embedded thumb stick mouse pointer and mouse buttons, along with a number of media keys. The media keys are standard RC-6, identical to the signals from the stock MCE remotes, and will be handled as such. The keyboard and mouse signals will be decoded and delivered to the system by an input device registered specifically by this driver. Successfully tested with multiple mceusb-driven transceivers, as well as with fintek-cir and redrat3 hardware. Essentially, any raw IR hardware with enough sampling resolution should be able to use this decoder, nothing about it is at all receiver-hardware-specific. This work is inspired by lirc_mod_mce: The documentation there and code aided in understanding and decoding the protocol, but the bulk of the code is actually borrowed more from the existing in-kernel decoders than anything. I did recycle the keyboard keycode table, a few defines, and some of the keyboard and mouse data parsing bits from lirc_mod_mce though. Special thanks to James Meyer for providing the hardware, and being patient with me as I took forever to get around to writing this. callback routine to ensure we don't get any stuck keys, and used symbolic names for the keytable. Also cc'ing Florian this time, who I believe is the original mod-mce author... CC: Florian Demski Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit a062d04bb9adec35dd0c51f848c4c64a8a2224cd Author: Emilio David Diaus Lopez Date: Tue Jul 12 19:53:39 2011 -0300 [media] af9015: add support for Sveon STV22 [1b80:e401] Signed-off-by: Emilio David Diaus Lopez Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 713d9b5d98c78a4c48eaa172e2b35b40056cb4f4 Author: Antti Palosaari Date: Sat Jun 18 10:24:53 2011 -0300 [media] af9015: remove 2nd I2C-adapter It is useless. There is only one physical I2C-adapter. 2nd adapter was added originally due to some plans for allowing only one demod to access bus at time. But I never implemented proper locking... Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 3509cbdface46cf39908124580a2a3b35f7e2783 Author: Antti Palosaari Date: Fri Jun 17 21:21:32 2011 -0300 [media] af9015: remove old FW based IR polling code Remove old code which is not used anymore since IR code is read directly from memory nowadays. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 709d92083af0b0529f6e1d11d17718c9a1da8f01 Author: Antti Palosaari Date: Fri Jun 17 21:16:38 2011 -0300 [media] af9015: add more I2C msg checks Return EOPNOTSUPP for too long messages. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 16b2dc2a8b44ec796791af9f69cce22f7cde0410 Author: Antti Palosaari Date: Thu Jun 16 20:02:41 2011 -0300 [media] af9015: small optimization Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit ae81aab3fa6fe540947d1829a126f2071727b641 Author: Antti Palosaari Date: Wed Jun 15 11:29:47 2011 -0300 [media] af9015: map remote for MSI DIGIVOX Duo Reported-by: Jacek M. Holeczek Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 879b0d795734b809b55facbca908f63ec9a0d64a Author: Juergen Lock Date: Sun Jun 12 17:25:12 2011 -0300 [media] af9015: setup rc keytable for LC-Power LC-USB-DVBT That's this tuner: The credit card sized remote more or less works if I set remote=4, so I added the hash to get it autodetected. (`more or less' there meaning sometimes buttons are `stuck on repeat', i.e. ir-keytable -t keeps repeating the same scancode until i press another button.) Signed-off-by: Juergen Lock Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 8afe9119e25809b044d9b5afbe2fb2853a5bd10c Author: Jesper Juhl Date: Wed Jul 13 17:58:13 2011 -0300 [media] media, Micronas dvb-t: Fix mem leaks, don't needlessly zero mem, fix spelling In drivers/media/dvb/frontends/drxd_hard.c::load_firmware() I see 3 small issues: 1) When the 'fw' variable goes out of scope we'll leak the memory allocated to it by request_firmware() by neglecting to call release_firmware(). 2) After a successful request_firmware() we allocate fw->size bytes of memory using kzalloc() only to immediately overwrite all that memory with memcpy(), so asking for zeroed memory seems like wasted effort - just use kmalloc(). 3) In one of the error messages "no memory" lacks a space and is written as "nomemory". This patch fixes all 3 issues. Signed-off-by: Jesper Juhl Signed-off-by: Mauro Carvalho Chehab commit 9b67693ccf23eb9cc57dd364f515057860a1f339 Author: Jarod Wilson Date: Wed Jul 13 17:57:42 2011 -0300 [media] rc-rc6-mce: minor keymap updates Microsoft's Windows Media Center specification and requirements doc from 2011.03.18 now refers to the former Power Toggle button as the Sleep Toggle, and recommends using a new moon sleep icon for it. Its the same key, but its apparently always been meant to put the system to sleep, not power it off. Adjust accordingly. While we're here, lets also remove the duplicate KEY_PLAYPAUSE entry. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit ef60e8f5d58752879cc69d9746133f2416ac206a Author: Julia Lawall Date: Mon Jul 4 11:11:41 2011 -0300 [media] drivers/media/video/cx231xx/cx231xx-cards.c: add missing kfree Clear the cx231xx_devused variable and free dev in the error handling code, as done in the error handling code nearby. The semantic match that finds this problem is as follows: // @r@ identifier x; @@ kfree(x) @@ identifier r.x; expression E1!=0,E2,E3,E4; statement S; @@ ( if (<+...x...+>) S | if (...) { ... when != kfree(x) when != if (...) { ... kfree(x); ... } when != x = E3 * return E1; } ... when != x = E2 if (...) { ... when != x = E4 kfree(x); ... return ...; } ) // Signed-off-by: Julia Lawall Signed-off-by: Mauro Carvalho Chehab commit ee893e9adccd7dc22a6cfc5d4f49e7dd0baead0c Author: Julia Lawall Date: Mon Jul 4 11:11:42 2011 -0300 [media] drivers/media/video: add missing kfree Free the recently allocated qcam in each case. The semantic match that finds this problem is as follows: // @r@ identifier x; @@ kfree(x) @@ identifier r.x; expression E1!=0,E2,E3,E4; statement S; @@ ( if (<+...x...+>) S | if (...) { ... when != kfree(x) when != if (...) { ... kfree(x); ... } when != x = E3 * return E1; } ... when != x = E2 if (...) { ... when != x = E4 kfree(x); ... return ...; } ) // Signed-off-by: Julia Lawall Signed-off-by: Mauro Carvalho Chehab commit 37f9619dd5df9f1c9878ac53e27033519b8760ec Author: Adam M. Dutko Date: Thu Jun 23 11:57:45 2011 -0300 [media] TM6000: alsa: Clean up kernel coding style errors There were several coding style errors as reported by checkpatch.pl. This patch should fix those errors with the single exception of the open square bracket issue on line 45. [mchehab@redhat.com: Fix a merge conflict] Signed-off-by: Adam M. Dutko Signed-off-by: Mauro Carvalho Chehab commit 51b6d717fb8e261e9705d66351f425561f114d4b Author: Mauro Carvalho Chehab Date: Wed Jul 13 19:15:57 2011 -0300 [media] tm6000: remove a check for NO_PCM_LOCK This was likely used by some test. There's no sense on keeping it upstream. Signed-off-by: Mauro Carvalho Chehab commit bca3ba7904426bb94ee1a91e6e88831483fb5d53 Author: Dan Carpenter Date: Thu May 26 05:44:52 2011 -0300 [media] DVB: dvb_frontend: off by one in dtv_property_dump() If the tvp->cmd == DTV_MAX_COMMAND then we read past the end of the array. Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit 0cf8af57f1865148efcb40a43ddd04d5a709820e Author: istvan_v@mailbox.hu Date: Mon Jul 11 10:58:35 2011 -0300 [media] cx23885: added support for card 107d:6f39 This patch, based on code by Mirek Slugen, implements support for the Leadtek WinFast PxDVR3200 H card with XC4000 tuner (107d:6f39). Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 0d334f7f7ad7566d7ee6b0b1a8bc92e83b21b941 Author: Jesper Juhl Date: Sat Jul 9 18:22:17 2011 -0300 [media] drivers/media: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for drivers/media/video/omap/omap_vout.c This gets rid of warnings like when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Mauro Carvalho Chehab commit 9f26392a6afbb8ecf9d19037f137162142c8f04b Author: Jonathan Corbet Date: Fri Jul 8 17:50:50 2011 -0300 [media] marvell-cam: clean up a couple of unused cam structure fields Delete a couple of leftover fields whose time has passed. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 7498469f619e1ba380fc90042a2b1736c7c6942c Author: Jonathan Corbet Date: Fri Jul 8 17:50:49 2011 -0300 [media] marvell-cam: Allow selection of supported buffer modes The Marvell camera core can support all three videobuf2 buffer modes, which is slick, but it also requires that all three modes be built and present, even though only one is likely to be used. This patch allows the supported modes to be selected at configuration time, reducing the footprint of the driver. Prior to this patch, the MMP camera driver looked like this: mmp_camera 19092 0 videobuf2_core 15542 1 mmp_camera videobuf2_dma_sg 3173 1 mmp_camera videobuf2_dma_contig 2188 1 mmp_camera videobuf2_vmalloc 1718 1 mmp_camera videobuf2_memops 2100 3 videobuf2_dma_sg,videobuf2_dma_contig,videobuf2_vmalloc Afterward, instead, with scatter/gather only configured: mmp_camera 16021 0 videobuf2_core 15542 1 mmp_camera videobuf2_dma_sg 3173 1 mmp_camera videobuf2_memops 2100 1 videobuf2_dma_sg The total goes from 43,813 bytes to 36,836. The emphasis has been on simplicity and minimal #ifdef use rather than on squeezing out every possible byte of code. For configuration, the driver simply looks at which videobuf2 modes have been configured in and supports them all; it's simplistic but should be good enough. The cafe driver is set to support vmalloc and dma-contig; mmp supports only dma-sg, since that's the only mode that really makes sense to use. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 221a8248b9ca62a7304115782dca46a3f014f454 Author: Jonathan Corbet Date: Fri Jul 8 17:50:48 2011 -0300 [media] marvell-cam: power down mmp camera on registration failure If registration does not work, we don't want to leave the sensor powered on. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit c9fb8bfaf1df361e54e330956dd45e3bec72f60a Author: Jonathan Corbet Date: Fri Jul 8 17:50:47 2011 -0300 [media] marvell-cam: remove {min,max}_buffers parameters Somewhere along the way the code stopped actually paying any attention to them, and I doubt anybody has ever made use of them. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit d43dae75cc1140bf27a59aa6d8e8bc7a00f009cc Author: Jonathan Corbet Date: Fri Jul 8 17:50:46 2011 -0300 [media] marvell-cam: core code reorganization This code shows signs of having been mucked with over the last five years or so; things were kind of mixed up. This patch reorders functions into a more rational organization which, with luck, will facilitate making the buffer modes selectable at configuration time. Code movement only: no functional changes here. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 983587c82189ac6c83fcd7a8914021f49098e473 Author: Jonathan Corbet Date: Fri Jul 8 17:50:45 2011 -0300 [media] marvell-cam: delete struct mcam_sio_buffer This structure got passed over in the videobuf2 conversion; it has no reason to exist now. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 731884ba61d414563a75a5795f140432d786420f Author: Jean Delvare Date: Fri Jul 8 06:00:37 2011 -0300 [media] tea5764: Fix module parameter permissions The third parameter of module_param is supposed to represent sysfs file permissions. A value of "1" leads to the following: $ ls -l /sys/module/radio_tea5764/parameters/ total 0 I am changing it to "0" to align with the other module parameters in this driver. Signed-off-by: Jean Delvare Cc: Mauro Carvalho Chehab Cc: Fabio Belavenuto Signed-off-by: Mauro Carvalho Chehab commit dbe8740ddecfbeb81d97dd6e85e0298081a6085d Author: Carlos Corbacho Date: Sat Jun 25 10:24:28 2011 -0300 [media] Make Compro VideoMate Vista T750F actually work Based on the work of John Newbigin, Davor Emard and others who contributed on the mailing lists. The previous 'support' for this card was a partial merge of John's changes that, as far as I can tell, never actually got the thing working (no DVB-T, analog tuner not initialised). Initialise the analog tuner properly and hook up the DVB tuner and demodulator. DVB-T and analog now work (though I can't tune every DVB channel, but I think there's an issue with the aerial and signal boosters here that is causing me problems). Signed-off-by: Carlos Corbacho Signed-off-by: Mauro Carvalho Chehab commit 01434faf6d82f791c701d299f898bf261a724342 Author: Mauro Carvalho Chehab Date: Mon Jul 11 15:47:40 2011 -0300 tda18271c2dd: Fix compilation when module is not selected Signed-off-by: Mauro Carvalho Chehab commit ea4d03d138d1febab586299e1a3bbc0df585f4b7 Author: Mauro Carvalho Chehab Date: Mon Jul 11 15:28:12 2011 -0300 [media] tda18271c2dd.h: Don't add the same symbol twice Should be folded with the next patch when sending upstream Signed-off-by: Mauro Carvalho Chehab commit fd0b0814a4ac6003d84042964c0c2923435539cd Author: Mauro Carvalho Chehab Date: Mon Jul 11 14:56:30 2011 -0300 [media] dvb: don't cause missing symbols for drxk/tda18271c2dd If those demods are unselected, but a bridge driver requires them, produce a runtime message, instead of missing symbols. Signed-off-by: Mauro Carvalho Chehab commit f165f60d4229ec4f34002f8dcae45a023586c8d7 Author: Mauro Carvalho Chehab Date: Mon Jul 11 14:56:03 2011 -0300 [media] drxk: remove a now unused variable Signed-off-by: Mauro Carvalho Chehab commit 8b9456ae04b1cb7adcaa57735324f7b518eae07d Author: Mauro Carvalho Chehab Date: Mon Jul 11 14:33:51 2011 -0300 [media] em28xx: Change firmware name for Terratec H5 DRX-K Use a name convention for the firmware file that matches on the current firmware namespacing. Also, add it to the firmware download script. Signed-off-by: Mauro Carvalho Chehab commit 5eee2bb270e34b2e8b245838faef3f9455c69ce6 Author: Mauro Carvalho Chehab Date: Sun Jul 10 14:33:29 2011 -0300 [media] drxk: Add a fallback method for QAM parameter setting The QAM standard is set using this scu_command: SCU_RAM_COMMAND_STANDARD_QAM | SCU_RAM_COMMAND_CMD_DEMOD_SET_PARAM The driver implements a version that has 4 parameters, however, Terratec H5 needs to break this into two separate commands, otherwise, DVB-C doesn't work. With this fix, scan is now properly working and getting the channel list: >>> tune to: 609000000:INVERSION_AUTO:5217000:FEC_3_4:QAM_256 >>> tuning status == 0x00 >>> tuning status == 0x07 >>> tuning status == 0x1f 0x0093 0x0026: pmt_pid 0x0758 (null) -- SporTV2 (running, scrambled) 0x0093 0x0027: pmt_pid 0x0748 (null) -- SporTV (running, scrambled) 0x0093 0x0036: pmt_pid 0x0768 (null) -- FX (running, scrambled) 0x0093 0x0052: pmt_pid 0x0788 (null) -- The History Channel (running, scrambled) Signed-off-by: Mauro Carvalho Chehab commit 7558977a4ade512648bdfcc5f74dfffd7511d46f Author: Mauro Carvalho Chehab Date: Sun Jul 10 13:25:48 2011 -0300 [media] drxk: Improve the scu_command error message Now, it outputs: [10927.639641] drxk: SCU_RESULT_INVPAR while sending cmd 0x0203 with params: [10927.646283] drxk: 02 00 00 00 10 00 07 00 03 02 .......... Better than ERROR -3. This happens with Terratec H5 firmware. It adds 2 new error conditions, and something useful to track what the heck is that. I suspect that the scu_command is dependent on the firmware revision. Signed-off-by: Mauro Carvalho Chehab commit f1b829704c0b48daff99056932855e71c2814855 Author: Mauro Carvalho Chehab Date: Sun Jul 10 13:08:44 2011 -0300 [media] drxk: Simplify the DVB-C set mode logic Signed-off-by: Mauro Carvalho Chehab commit cf694b141ea2973179756fd572dd5cdd064e1abf Author: Mauro Carvalho Chehab Date: Sun Jul 10 10:26:06 2011 -0300 [media] drxk: Fix driver removal Signed-off-by: Mauro Carvalho Chehab commit 90796acad0027db957a282787a4dab7d0bb52ef1 Author: Mauro Carvalho Chehab Date: Sun Jul 10 09:36:30 2011 -0300 [media] drxk: Improves the UIO handling The driver is too limited: it assumes that UIO is used only for controlling the antenna, and that only UIO-1 is in usage. However, from Terratec H7 driver [1], 3 UIO's can be used. In fact, it seems that H7 needs to use all 3. So, make the code generic enough to handle the most complex scenario. For now, only antena GPIO can be specified, but is is easier now to add the other GPIO/UIO needs. Signed-off-by: Mauro Carvalho Chehab commit 9c6e18280091ee2cf78bfb33a1770b5b59c8afae Author: Mauro Carvalho Chehab Date: Sun Jul 10 08:38:18 2011 -0300 [media] drxk: Print detected configuration DRX-K configuration is interesting when writing/testing new devices. Add an info line showing the discovered info. Signed-off-by: Mauro Carvalho Chehab commit 147e110bb69a5eaee83bab133d7f7cc4ee050808 Author: Mauro Carvalho Chehab Date: Sun Jul 10 08:24:26 2011 -0300 [media] drxk: Fix the antenna switch logic Terratec H5 doesn't require to switch mode, but generates an error due to this logic. Also, GPIO's are board-dependent. So, add it at the board config struct. Signed-off-by: Mauro Carvalho Chehab commit d6a054057781044712bfb0114d2d62d37781ffe9 Author: Mauro Carvalho Chehab Date: Sun Jul 10 13:07:36 2011 -0300 [media] drxk: change mode before calling the set mode routines The set mode routines assume that state were changed to the new mode, otherwise, they'll fail. Signed-off-by: Mauro Carvalho Chehab commit be44eb283b97c29b06a125cb5527b299d84315f4 Author: Mauro Carvalho Chehab Date: Sun Jul 10 01:49:53 2011 -0300 [media] drxk: Proper handle/propagate the error codes This driver is very big and complex. An error happening in the middle of any initialization may cause the frontend to not work. So, it needs to properly propagate error codes internally and to userspace. Also, printing the error codes at the places it happened helps to discover were's a bug at the code. Before this change, a do { } while (0) loop and lots of breaks inside were used to propagate errors. While this works, if there are loops inside other loops, it could be easy to forget to add another break, causing the error to not abort the function. Also, as not all functions were reporting errors, it is hard to discover why something failed. Signed-off-by: Mauro Carvalho Chehab commit f1fe1b75d64046b693075045fe9fc5cafed9c981 Author: Mauro Carvalho Chehab Date: Sat Jul 9 21:59:33 2011 -0300 [media] drxk: Allow to disable I2C Bridge control switch On em28xx, tda18271C2 is accessible when the i2c port is not touched. Touching on it breaks the driver. Signed-off-by: Mauro Carvalho Chehab commit bbc70e647b04dc3df1c879089a4f6b633c1952c9 Author: Mauro Carvalho Chehab Date: Sat Jul 9 19:36:11 2011 -0300 [media] em28xx-i2c: Add a read after I2C write All I2C logs we got for em28xx does that. With Terratec H5, at 400MHz speed, it seems that this is required, to avoid having troubles at the I2C bus. Signed-off-by: Mauro Carvalho Chehab commit e4f4f8758b4c3702761e46f24ee99e34823a0f28 Author: Mauro Carvalho Chehab Date: Sat Jul 9 17:35:26 2011 -0300 [media] drxk: Add a parameter for the microcode name The microcode firmware provided on Terratec H5 seems to be different. Add a parameter to allow specifying a different firmware per-device. Signed-off-by: Mauro Carvalho Chehab commit fec528b77f9be3e7ebb8d7c25888b0cf9fb8e8d6 Author: Mauro Carvalho Chehab Date: Sun Jul 3 21:05:06 2011 -0300 [media] Add initial support for Terratec H5 Not working yet. There are some fixes at the DRX-K that are needed for it to work. Signed-off-by: Mauro Carvalho Chehab commit 39624f7ee8eb90b61d79ab731da264959ac1879a Author: Mauro Carvalho Chehab Date: Sat Jul 9 19:23:44 2011 -0300 [media] drxk: Print an error if firmware is not loaded If something bad happens during firmware load, an error should be printed at dmesg. Signed-off-by: Mauro Carvalho Chehab commit bcd2ebb76039bf4b1d1cb9f9f0e182548578e692 Author: Mauro Carvalho Chehab Date: Sat Jul 9 18:57:54 2011 -0300 [media] drxk: Avoid OOPSes if firmware is corrupted Don't read paste the buffer, if the firmware is corrupted. Instead, print an error message. Signed-off-by: Mauro Carvalho Chehab commit e076c92ed6908b0a06ea0d419606a59cae7febe6 Author: Mauro Carvalho Chehab Date: Sat Jul 9 13:06:12 2011 -0300 [media] drxk: Convert an #ifdef logic as a new config parameter Instead of using #ifdef I2C_LONG_ADR for some devices, convert it into a parameter. Terratec H5 logs from the original driver seems to need this mode. Signed-off-by: Mauro Carvalho Chehab commit 0fc55e81d3364e6535cacb10b5a579f8c62625b1 Author: Mauro Carvalho Chehab Date: Sat Jul 9 12:36:58 2011 -0300 [media] drxk: Move I2C address into a config structure Currently, the only parameter to be configured is the I2C address. However, Terratec H5 logs shows that it needs a different setting for some things, and it has its own firmware. So, move the addr into a config structure, in order to allow adding the required configuration bits. Signed-off-by: Mauro Carvalho Chehab commit 5e66b87840dd275eafa6b4135b174212dd7c0d75 Author: Mauro Carvalho Chehab Date: Sat Jul 9 09:50:21 2011 -0300 [media] drxk: remove _0 from read/write routines The normal 16-bits read routine is called as "Read16_0". This is due to a flags that could optionally be passed. Yet, on no places at the code, a flag is passed there. The same happens with 16-bits write and 32-read/write routines, and with WriteBlock. Also, using flags, is an exception: there's no place currently using flags, except for an #ifdef at WriteBlock. Rename the function as just "read16", and the one that requires flags, as "read16_flags". This helps to see where the flags are used, and also avoid using CamelCase on Kernel. Signed-off-by: Mauro Carvalho Chehab commit 2da6750117c8fc4772a9c980e14a8d5d67f504a4 Author: Mauro Carvalho Chehab Date: Mon Jul 4 17:39:21 2011 -0300 [media] drxk: Add debug printk's This is a complex driver. Adding support for other devices with drxk requires to be able to debug it and see where it is failing. So, add optional printk messages to allow debugging it. Signed-off-by: Mauro Carvalho Chehab commit f3d40bd0991085f1f45e7c978a1603ec02468be3 Author: Mauro Carvalho Chehab Date: Mon Jul 4 14:00:25 2011 -0300 [media] tda18271c2dd: add tda18271c2dd prefix to the errors It is hard to identify the origin for those errors without a prefix to indicate which driver produced them: [ 1390.220984] i2c_write error [ 1390.224133] I2C Write error [ 1391.284202] i2c_read error [ 1392.288685] i2c_read error Signed-off-by: Mauro Carvalho Chehab commit e0e6ecaf3b19686d561a3410aec67a0b2774455f Author: Mauro Carvalho Chehab Date: Mon Jul 4 08:27:47 2011 -0300 [media] drxk: add drxk prefix to the errors It is hard to identify the origin for those errors without a prefix to indicate which driver produced them: [ 1390.220984] i2c_write error [ 1390.224133] I2C Write error [ 1391.284202] i2c_read error [ 1392.288685] i2c_read error Signed-off-by: Mauro Carvalho Chehab commit 28d45a5d294e3f2beddd355b41fa50a66df726cc Author: Mauro Carvalho Chehab Date: Sun Jul 3 19:00:32 2011 -0300 [media] ddbridge: use linux/io.h, instead of asm/io.h WARNING: Use #include instead of +#include Signed-off-by: Mauro Carvalho Chehab commit 805e68743460dd48971d5df2707eb445d980874c Author: Mauro Carvalho Chehab Date: Sun Jul 3 18:59:08 2011 -0300 [media] ddbridge: Avoid duplicated symbol definition drivers/media/dvb/ddbridge/built-in.o: In function `my_dvb_dmx_ts_card_init': /home/v4l/v4l/patchwork/drivers/media/dvb/ddbridge/ddbridge-core.c:718: multiple definition of `my_dvb_dmx_ts_card_init' drivers/media/dvb/ngene/built-in.o:/home/v4l/v4l/patchwork/drivers/media/dvb/ngene/ngene-dvb.c:227: first defined here drivers/media/dvb/ddbridge/built-in.o: In function `my_dvb_dmxdev_ts_card_init': /home/v4l/v4l/patchwork/drivers/media/dvb/ddbridge/ddbridge-core.c:737: multiple definition of `my_dvb_dmxdev_ts_card_init' drivers/media/dvb/ngene/built-in.o:/home/v4l/v4l/patchwork/drivers/media/dvb/ngene/ngene-dvb.c:246: first defined here Signed-off-by: Mauro Carvalho Chehab commit 8d31bac155d0d891a2380d5b683e6b285cc23e34 Author: Oliver Endriss Date: Sun Jul 3 18:27:51 2011 -0300 [media] cxd2099: Update Kconfig description (ddbridge support) Update Kconfig description (ddbridge with cxd2099) Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 7dfd071271bb237d16d8088287bf52a2684cb3ca Author: Oliver Endriss Date: Sun Jul 3 18:26:22 2011 -0300 [media] cxd2099: Fix compilation of ngene/ddbridge for DVB_CXD2099=n Fix compilation of ngene/ddbridge for DVB_CXD2099=n. Note: Bug was introduced by commit 'cxd2099: Update to latest version'. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit f876502d9a24934eadce0c8a8c45bfb863e46bb4 Author: Oliver Endriss Date: Sun Jul 3 18:25:29 2011 -0300 [media] ddbridge: Allow compiling of the driver Driver added to Makefile and Kconfig. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 4f1f31078745b7af73e1a3a718004807cb1b7846 Author: Oliver Endriss Date: Sun Jul 3 18:24:07 2011 -0300 [media] ddbridge: Codingstyle fixes Codingstyle fixes Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit ccad04578fcbe2678084af0986ac010ab84a023d Author: Ralph Metzler Date: Sun Jul 3 18:23:11 2011 -0300 [media] ddbridge: Initial check-in Driver support for Digital Devices ddbridge-based cards: Octopus, Octopus mini, Octopus LE, cineS2(v6) with DuoFlex S2 and/or DuoFlex CT tuners. Driver was taken from ddbridge-0.6.1.tar.bz2. Signed-off-by: Ralph Metzler Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit af070bd60fc3aef4afc2a3de5562139ad3f031d9 Author: Mauro Carvalho Chehab Date: Sun Jul 3 18:45:37 2011 -0300 cxd2099: Remove the CHK_ERROR macro The CHK_ERROR macro does a flow control, violating chapter 12 of the Documentation/CodingStyle. Doing flow controls inside macros is a bad idea, as it hides what's happening. It also hides the var "status" with is also a bad idea. The changes were done by this small perl script: my $blk=0; while (<>) { s/^\s+// if ($blk); $f =~ s/\s+$// if ($blk && /^\(/); $blk = 1 if (!m/\#/ && m/CHK_ERROR/); $blk=0 if ($blk && m/\;/); s/\n/ / if ($blk); $f.=$_; }; $f=~ s,\n(\t+)CHK_ERROR\((.*)\)\;([^\n]*),\n\1status = \2;\3\n\1if (status < 0)\n\1\tbreak;,g; print $f; And manually fixed. Signed-off-by: Mauro Carvalho Chehab commit 1bd09ddcffb2fb59d3211a9137d9122171724bae Author: Mauro Carvalho Chehab Date: Sun Jul 3 18:21:59 2011 -0300 [media] drxk: fix warning: ‘status’ may be used uninitialized in this function One of the problems of the old CHECK_ERROR is that it was hiding the status parameter. Maybe due to that, on a few places, the return code might lead to return incorrect status: drivers/media/dvb/frontends/drxk_hard.c: In function ‘load_microcode.clone.0’: drivers/media/dvb/frontends/drxk_hard.c:1281: warning: ‘status’ may be used uninitialized in this function drivers/media/dvb/frontends/drxk_hard.c:1281: note: ‘status’ was declared here drivers/media/dvb/frontends/drxk_hard.c: In function ‘GetLockStatus’: drivers/media/dvb/frontends/drxk_hard.c:1792: warning: ‘status’ may be used uninitialized in this function drivers/media/dvb/frontends/drxk_hard.c: In function ‘Start.clone.7’: drivers/media/dvb/frontends/drxk_hard.c:1734: warning: ‘status’ may be used uninitialized in this function Signed-off-by: Mauro Carvalho Chehab commit e16cede5a8945bda970b7dd80bc51c539e0e4c2d Author: Mauro Carvalho Chehab Date: Sun Jul 3 18:18:14 2011 -0300 [media] drxk: Return -EINVAL if an invalid bandwidth is used drivers/media/dvb/frontends/drxk_hard.c: In function ‘SetDVBT’: drivers/media/dvb/frontends/drxk_hard.c:3766: warning: enumeration value ‘BANDWIDTH_5_MHZ’ not handled in switch drivers/media/dvb/frontends/drxk_hard.c:3766: warning: enumeration value ‘BANDWIDTH_10_MHZ’ not handled in switch drivers/media/dvb/frontends/drxk_hard.c:3766: warning: enumeration value ‘BANDWIDTH_1_712_MHZ’ not handled in switch Signed-off-by: Mauro Carvalho Chehab commit 469ffe08366589f3096247590b16f712b20c51c3 Author: Mauro Carvalho Chehab Date: Sun Jul 3 18:12:26 2011 -0300 [media] tda18271c2dd: Remove the CHK_ERROR macro The CHK_ERROR macro does a flow control, violating chapter 12 of the Documentation/CodingStyle. Doing flow controls inside macros is a bad idea, as it hides what's happening. It also hides the var "status" with is also a bad idea. The changes were done by this small perl script: my $blk=0; while (<>) { s/^\s+// if ($blk); $f =~ s/\s+$// if ($blk && /^\(/); $blk = 1 if (!m/\#/ && m/CHK_ERROR/); $blk=0 if ($blk && m/\;/); s/\n/ / if ($blk); $f.=$_; }; $f=~ s,\n(\t+)CHK_ERROR\((.*)\)\;([^\n]*),\n\1status = \2;\3\n\1if (status < 0)\n\1\tbreak;,g; print $f; And manually fixed. Signed-off-by: Mauro Carvalho Chehab commit ea90f011fdcc3d4fde78532eab8af09637176765 Author: Mauro Carvalho Chehab Date: Sun Jul 3 18:06:07 2011 -0300 [media] drxk: Remove the CHK_ERROR macro The CHK_ERROR macro does a flow control, violating chapter 12 of the Documentation/CodingStyle. Doing flow controls inside macros is a bad idea, as it hides what's happening. It also hides the var "status" with is also a bad idea. The changes were done by this small perl script: my $blk=0; while (<>) { s /^\s+// if ($blk); $f =~ s/\s+$// if ($blk && /^\(/); $blk = 1 if (!m/\#/ && m/CHK_ERROR/); $blk=0 if ($blk && m/\;/); s/\n/ / if ($blk); $f.=$_; }; $f=~ s,\n(\t+)CHK_ERROR\((.*)\)\;([^\n]*),\n\1status = \2;\3\n\1if (status < 0)\n\1\tbreak;,g; print $f; And manually fixed. Signed-off-by: Mauro Carvalho Chehab commit b01fbc10e3c789763b2c953984bc4b80f59bcdf3 Author: Mauro Carvalho Chehab Date: Sun Jul 3 17:18:57 2011 -0300 [media] drxd/drxk: Don't export MulDiv32 symbol /home/v4l/v4l/patchwork/drivers/media/dvb/frontends/drxk_hard.c:181: multiple definition of `MulDiv32' drivers/media/dvb/frontends/drxd.o:/home/v4l/v4l/patchwork/drivers/media/dvb/frontends/drxd_hard.c:236: first defined here Signed-off-by: Mauro Carvalho Chehab commit 36e3fc8957abffa3218a6e3b61bef335eea80c03 Author: Oliver Endriss Date: Sun Jul 3 14:04:46 2011 -0300 [media] ngene: Strip dummy packets inserted by the driver As the CI requires a continuous data stream, the driver inserts dummy packets when necessary. Do not pass these packets to userspace anymore. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 3b2cfd6e1a4e727787b0a27ee7985e4012d7a142 Author: Oliver Endriss Date: Sun Jul 3 14:03:49 2011 -0300 [media] ngene: Update for latest cxd2099 Modifications for latest cxd2099. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 9daf9bccb3f82a61edfc62515297f1b2b876a591 Author: Oliver Endriss Date: Sun Jul 3 14:02:24 2011 -0300 [media] cxd2099: Codingstyle fixes Codingstyle fixes. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 6eb94193fa9a54aab0e1dae8311297682634c3bd Author: Ralph Metzler Date: Sun Jul 3 14:00:57 2011 -0300 [media] cxd2099: Update to latest version Import latest driver from ddbridge-0.6.1.tar.bz2. Signed-off-by: Ralph Metzler Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit a26c1b3e8bb1700c3fa1ed7d59d28a9681c40cf5 Author: Oliver Endriss Date: Sun Jul 3 13:59:30 2011 -0300 [media] ngene: Support DuoFlex CT attached to CineS2 and SaTiX-S2 Support DuoFlex CT with Digital Devices CineS2 and Mystique SaTiX-S2. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 6c50b666a5d76b7f03961427a1e7d566e689caa3 Author: Oliver Endriss Date: Sun Jul 3 13:58:22 2011 -0300 [media] ngene: Fix name of Digital Devices PCIe/miniPCIe Fix name of Digital Devices PCIe/miniPCIe. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit d9396b8410a43347933a0ee0ae8b2eb9492f4bc2 Author: Oliver Endriss Date: Sun Jul 3 13:57:26 2011 -0300 [media] ngene: Fix return code if no demux was found Fix return code if no demux was found (cineS2_probe). Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 9143a437cc2fe329c271115903a3884950aba57d Author: Oliver Endriss Date: Sun Jul 3 13:56:28 2011 -0300 [media] ngene: Codingstyle fixes Codingstyle fixes Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 9ca9efb077505b5b717fc15eab33c44d17eb76f7 Author: Ralph Metzler Date: Sun Jul 3 13:55:06 2011 -0300 [media] ngene: Support Digital Devices DuoFlex CT Support Digital Devices DuoFlex CT with ngene. Signed-off-by: Ralph Metzler Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit f9004df79ffd361312d4b5d237d56c2f64caa1a3 Author: Oliver Endriss Date: Sun Jul 3 13:53:50 2011 -0300 [media] get_dvb_firmware: Get DRX-K firmware for Digital Devices DVB-CT cards Get DRX-K firmware for Digital Devices DVB-CT cards Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit f678c3b69a416bb320c8a251583ccaec64574b56 Author: Oliver Endriss Date: Sun Jul 3 13:51:43 2011 -0300 [media] DRX-K, TDA18271c2: Add build support Add both drivers to Makefile and Kconfig. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit ebc7de220b729b935c006f00b17e333590db6f75 Author: Oliver Endriss Date: Sun Jul 3 13:49:44 2011 -0300 [media] DRX-K: Tons of coding-style fixes Tons of coding-style fixes Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 874f6518e7c43a0d73a5ba02cc97b02379f8a9bc Author: Oliver Endriss Date: Sun Jul 3 08:51:32 2011 -0300 [media] DRX-K: Shrink size of drxk_map.h Deleted all unused symbold from drxk_map.h, which reduced the size from 1.1M to 37K! Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 43dd07f758d81fc55a7a1ff24b7689b10cc75bf2 Author: Ralph Metzler Date: Sun Jul 3 13:42:18 2011 -0300 [media] DRX-K: Initial check-in Driver for the DRX-K DVB-C/T demodulator. Signed-off-by: Ralph Metzler Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 0fe4462930bfe09574494cae04fb029c504f3541 Author: Oliver Endriss Date: Sun Jul 3 13:37:31 2011 -0300 [media] tda18271c2dd: Lots of coding-style fixes Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit e8783950f8a3a240c81c0d8d3becbda4b56c1794 Author: Ralph Metzler Date: Sun Jul 3 13:36:17 2011 -0300 [media] tda18271c2dd: Initial check-in Driver for the NXP TDA18271c2 silicon tuner. Signed-off-by: Ralph Metzler Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit ebee4b589ffeb8dd700c2a3649e31f4e41c1bb6b Author: Mauro Carvalho Chehab Date: Sun Jul 10 16:34:48 2011 -0300 [media] v4l2-ctrls: Fix a merge conflict Signed-off-by: Mauro Carvalho Chehab commit 064f50966eb65e89c2434b57b2d2326dfee2b50c Author: Kamil Debski Date: Tue Jun 14 10:46:22 2011 -0300 [media] v4l2-ctrl: add codec controls support to the control framework Add support for the codec controls to the v4l2 control framework. [mchehab@redhat.com: Fix merge conflicts and removed some hunks that were adding blank lines without a good reason] Signed-off-by: Kamil Debski Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit e65e4f134db36c70f13e9703d8e253e6b196ca47 Author: Kamil Debski Date: Tue Jun 14 10:31:04 2011 -0300 [media] v4l: add control definitions for codec devices Add control definitions and documentation for controls specific to codec devices. Signed-off-by: Kamil Debski Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 4fa64dae8c55ea9d3be4eb5f23ad0c9a60fa6d95 Author: Kamil Debski Date: Mon Jul 4 13:25:50 2011 -0300 [media] v4l: add fourcc definitions for compressed formats Add fourcc definitions and documentation for the following compressed formats: H264, H264 without start codes, MPEG1/2/4 ES, XVID, VC1 Annex G and Annex L compliant. Signed-off-by: Kamil Debski Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 0f4272188dd1c815d9d7f05d593474a67da76594 Author: Sakari Ailus Date: Mon Jul 4 05:37:21 2011 -0300 [media] v4l: Document V4L2 control endianness as machine endianness Document V4L2 control endianness as machine endianness. Signed-off-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit 13abadad177074b84f6697639e1d4f64a55b1773 Author: Sakari Ailus Date: Thu May 5 15:39:25 2011 -0300 [media] adp1653: Add driver for LED flash controller This patch adds the driver for the adp1653 LED flash controller. This controller supports a high power led in flash and torch modes and an indicator light, sometimes also called privacy light. The adp1653 is used on the Nokia N900. Signed-off-by: Sakari Ailus Signed-off-by: Tuukka Toivonen Signed-off-by: Laurent Pinchart Signed-off-by: David Cohen Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 7ba85fa4fdbbe800e92a937ca567120ef32fe49f Author: Sakari Ailus Date: Wed May 4 10:45:58 2011 -0300 [media] v4l: Add flash control documentation Add documentation for V4L2 flash controls. Signed-off-by: Sakari Ailus Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 0b159acdd577dfd961ad14177c23e97d3ad33009 Author: Sakari Ailus Date: Mon Mar 21 12:52:51 2011 -0300 [media] v4l: Add a class and a set of controls for flash devices Add a control class and a set of controls to support LED and Xenon flash devices. An example of such a device is the adp1653. Signed-off-by: Sakari Ailus Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit aec67f054205da77f83ba52f83239225d6cbe366 Author: Hans Verkuil Date: Mon May 23 07:36:55 2011 -0300 [media] DocBook: document V4L2_CTRL_TYPE_BITMASK [mchehab@redhat.com: Fix a merge conflict and make compat.xml coherent with v4l2.xml] Signed-off-by: Hans Verkuil Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit b6d17a56c8431810709794ceb44d2454976e3ce1 Author: Hans Verkuil Date: Tue Mar 29 16:33:11 2011 -0300 [media] vivi: add bitmask test control Signed-off-by: Hans Verkuil Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit fa4d7096d1fb7c012ebaacefee132007a21e0965 Author: Hans Verkuil Date: Mon May 23 04:07:05 2011 -0300 [media] v4l2-ctrls: add new bitmask control type Signed-off-by: Hans Verkuil Reviewed-by: Laurent Pinchart Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit 1de5be5e91ee10d8f42be2aebc1cede718b48d50 Author: Hans Verkuil Date: Tue Jul 5 07:19:23 2011 -0300 [media] vivi: Fix sleep-in-atomic-context Fix sleep-in-atomic-context bug in vivi: Jun 28 18:14:39 tschai kernel: [ 80.970478] BUG: sleeping function called from invalid context at kernel/mutex.c:271 Jun 28 18:14:39 tschai kernel: [ 80.970483] in_atomic(): 0, irqs_disabled(): 1, pid: 2854, name: vivi-000 Jun 28 18:14:39 tschai kernel: [ 80.970485] INFO: lockdep is turned off. Jun 28 18:14:39 tschai kernel: [ 80.970486] irq event stamp: 0 Jun 28 18:14:39 tschai kernel: [ 80.970487] hardirqs last enabled at (0): [< (null)>] (null) Jun 28 18:14:39 tschai kernel: [ 80.970490] hardirqs last disabled at (0): [] copy_process+0x61b/0x1440 Jun 28 18:14:39 tschai kernel: [ 80.970495] softirqs last enabled at (0): [] copy_process+0x61b/0x1440 Jun 28 18:14:39 tschai kernel: [ 80.970498] softirqs last disabled at (0): [< (null)>] (null) Jun 28 18:14:39 tschai kernel: [ 80.970502] Pid: 2854, comm: vivi-000 Tainted: P 3.0.0-rc1-tschai #372 Jun 28 18:14:39 tschai kernel: [ 80.970504] Call Trace: Jun 28 18:14:39 tschai kernel: [ 80.970509] [] __might_sleep+0xf3/0x130 Jun 28 18:14:39 tschai kernel: [ 80.970512] [] mutex_lock_nested+0x2f/0x60 Jun 28 18:14:39 tschai kernel: [ 80.970517] [] vivi_fillbuff+0x20e/0x3f0 [vivi] Jun 28 18:14:39 tschai kernel: [ 80.970520] [] ? do_raw_spin_lock+0x54/0x150 Jun 28 18:14:39 tschai kernel: [ 80.970524] [] ? read_tsc+0xe/0x20 Jun 28 18:14:39 tschai kernel: [ 80.970528] [] ? getnstimeofday+0x57/0xe0 Jun 28 18:14:39 tschai kernel: [ 80.970531] [] vivi_thread+0x191/0x2f0 [vivi] Jun 28 18:14:39 tschai kernel: [ 80.970534] [] ? try_to_wake_up+0x2d0/0x2d0 Jun 28 18:14:39 tschai kernel: [ 80.970537] [] ? vivi_fillbuff+0x3f0/0x3f0 [vivi] Jun 28 18:14:39 tschai kernel: [ 80.970541] [] kthread+0xb6/0xc0 Jun 28 18:14:39 tschai kernel: [ 80.970544] [] kernel_thread_helper+0x4/0x10 Jun 28 18:14:39 tschai kernel: [ 80.970547] [] ? retint_restore_args+0x13/0x13 Jun 28 18:14:39 tschai kernel: [ 80.970550] [] ? __init_kthread_worker+0x70/0x70 Jun 28 18:14:39 tschai kernel: [ 80.970552] [] ? gs_change+0x13/0x13 This bug was introduced in 2.6.39. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ee490b466162925193c847b02aabd6048ff8cbe9 Author: Hans Verkuil Date: Tue Jul 5 07:17:39 2011 -0300 [media] DocBook: fix typo: vl42_plane_pix_format -> v4l2_plane_pix_format Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 639884a6d94ffa16d76b131a55f65748ca0c94f2 Author: Hans Verkuil Date: Tue Jul 5 07:09:26 2011 -0300 [media] v4l2-ctrls: always send an event if a control changed implicitly By default no control events are sent to the application that caused the control value or flags change (i.e. the control(s) passed to VIDIOC_S_CTRL or VIDIOC_S_EXT_CTRLS). But if a change in one control causes a change in another control that was not part of the control(s) in VIDIOC_S_CTRL or S_EXT_CTRLS, then the application should be notified. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit adf41b9bc35a7406ead7875f66ee879dbd4cc308 Author: Hans Verkuil Date: Tue Jul 5 06:56:37 2011 -0300 [media] v4l2-ctrls.c: copy-and-paste error: user_to_new -> new_to_user The new values were never copied to userspace due to this copy and paste error. This was introduced during the rewrite of this part of the code in commit 3219f8a362640b7e4b7e2187b1094c4e46d85aa0. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit e3aec98c1d3beaba9b96a7f00046bc06e59d6ab9 Author: Hans de Goede Date: Sun Jul 3 16:26:52 2011 -0300 [media] pwc: clean-up header files Remove unused pwc-ioctl.h (the copy in include/media is used everywhere) Remove almost empty pwc-uncompress.h, move single define to pwc.h Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 51886df0ca8bcc42e13cad7bcfc3487268229cea Author: Hans de Goede Date: Sun Jul 3 15:52:54 2011 -0300 [media] pwc: Enable power-management by default on tested models Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 4bf7c61c8a1b026e4d3944fd58157795da10a246 Author: Hans de Goede Date: Sun Jul 3 15:02:10 2011 -0300 [media] pwc: Add a bunch of pwc custom API to feature-removal-schedule.txt Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 294e289602d7827f1389b081535fda3b7553a651 Author: Hans de Goede Date: Sun Jul 3 12:23:24 2011 -0300 [media] pwc: Add v4l2 controls for pan/tilt on Logitech QuickCam Orbit/Sphere This makes the API for this: 1) v4l2 spec compliant 2) match that of the UVC Logitech QuickCam Sphere models For now this operates in parellel to the sysfs interface for this, but the intend is to deprecate the sysfs interface and remove it. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit c11271349ad5d4647e69e511fc481b2dd390efc4 Author: Hans de Goede Date: Sun Jul 3 11:50:51 2011 -0300 [media] pwc: Allow dqbuf / read to complete while waiting for controls Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 6c9cac89c009c049a9ad29cdf0f51892410fe751 Author: Hans de Goede Date: Sun Jun 26 12:52:01 2011 -0300 [media] pwc: Replace control code with v4l2-ctrls framework Also remove all the converting from native range to 0-65535 and back that was going on. This is no longer needed now that we no longer support v4l1. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 04613c5e600e64840e4f753bd881cd5ab96ae403 Author: Hans de Goede Date: Sun Jun 26 13:57:15 2011 -0300 [media] pwc: properly allocate dma-able memory for ISO buffers Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 4fba471e405f8f983085fd9f2fd9637bfc275f8f Author: Hans de Goede Date: Sun Jun 26 12:13:44 2011 -0300 [media] pwc: Allow multiple opens Allow multiple opens of the /dev/video node so that control panel apps can be open to-gether with streaming apps. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 6eba93573d2dda3f627006101c0652faeeaffde6 Author: Hans de Goede Date: Sun Jun 26 06:49:59 2011 -0300 [media] pwc: Move various initialization to driver load and / or stream start Doing a bunch of initialization every time /dev/video is opened, and thus for example when the udev rules probe for capabilities makes no sense, do it at driver load, resp. stream start instead. This is a preparation patch for allowing multiple opens of the /dev/video node. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 3b4d0ec79113e77b3fe90749ae00bfa015c73048 Author: Hans de Goede Date: Sun Jun 26 03:51:19 2011 -0300 [media] pwc: Make power-saving a per device option as vcinterface must be set before calling pwc_camera_power() Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 52a92547508e7bb62b6325cd2954412a7ab01249 Author: Hans de Goede Date: Sat Jun 25 17:42:55 2011 -0300 [media] pwc: Remove some unused PWC_INT_PIPE left overs Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit b824bb4b12548fedd622686d443310d574eb084e Author: Hans de Goede Date: Sat Jun 25 17:39:19 2011 -0300 [media] pwc: Get rid of error_status and unplugged variables Having 2 ways of tracking disconnection is too much, remove both and instead simply set pdev->udev to NULL on disconnect. Also check for pdev->udev being NULL in all possible entry paths. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 1a4ede65f30315a31cb9b239bec0d4bb32834691 Author: Hans de Goede Date: Sat Jun 25 17:10:51 2011 -0300 [media] pwc: Fix non CodingStyle compliant 3 space indent in pwc.h Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 885fe18f5542fe283a17f70583383c6cadcba1c3 Author: Hans de Goede Date: Mon Jun 6 15:33:44 2011 -0300 [media] pwc: Replace private buffer management code with videobuf2 Looking at the pwc buffer management code has made it clear to me it needed some serious fixing. Not only was there a ton of code duplication even internally to pwc (read and mmap wait for frame code was duplicated), the code also was outright buggy. With the worst offender being dqbuf, which just round robin returned all the mmap buffers, without paying any attention to them being queued by the app with qbuf or not. And qbuf itself was a noop. So I set out to fix this and already had some cleanups in place when I read Jonathan Corbet's lwn article on videobuf2, this inspired me to just rip out the buffer management code and replace it with videobuf2, greatly reducing the amount of code, and fixing all bugs in one go: Many thanks to Jonathan for the timely article on this ! Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 5f40d915521f5a8ae4551a21871a062201ba9981 Author: Hans de Goede Date: Mon Jun 6 15:35:54 2011 -0300 [media] pwc: remove __cplusplus guards from private header Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit c246412117d871a3a90cd4e8ba2c6dea18a59f71 Author: Hans de Goede Date: Mon Jun 6 15:25:18 2011 -0300 [media] pwc: Remove a bunch of bogus sanity checks / don't return EFAULT wrongly The chances if any of these becoming NULL magically are 0% And if they do become NULL oopsing is the right thing to do (so that the user logs a bug with the kernel rather then with whatever app he was using). Returning EFAULT to userspace should only be done when userspace supplies a bad address, not on driver bugs / hw issues, so in the few cases where the check is not bogus return something else. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit e7d712cc992a3f22151f15263cbacbb2d38dd371 Author: Hans de Goede Date: Sun Jun 5 14:58:46 2011 -0300 [media] gspca: s/strncpy/strlcpy/ Just like in userspace strncpy does not guarantee 0 termination. Use strlcpy instead which does guarantee 0 termination. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 2f2ea0f3f25effeaf0d27f5aaad591281fad27e2 Author: Hans de Goede Date: Tue May 17 09:34:23 2011 -0300 [media] gspca_sunplus: Fix streaming on logitech quicksmart 420 Don't issue a stream stop to the camera at the end of sd_start, this fixes streaming with this particular model. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit c27cea03e76f278560be2aa3002adea14733e844 Author: Hans de Goede Date: Sun Jun 5 07:44:34 2011 -0300 [media] gspca: Add new se401 camera driver Based on the old v4l1 camera by Jeroen Vreeken driver which recently got removed from the kernel. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit fa4376d28e19b0835f948c5b42f13738f68bd9a1 Author: Hans de Goede Date: Sun Jun 5 03:44:43 2011 -0300 [media] gspca: reset image_len to 0 on LAST_PACKET when discarding frame Reset image and image_len to NULL/0 on LAST_PACKET when we're in discard frame mode, just like we do when not discarding the current frame. The new se401 driver uses image_len for SOF/EOF detection and thus depends on this. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 21144ea601f1fea37c7add15a099affec7c08425 Author: Hans de Goede Date: Sun Jun 5 08:32:27 2011 -0300 [media] videodev2.h Add SE401 compressed RGB format Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 0fdee88e54f0b8bd737810517ba70bde5fd7a70c Author: Jean-François Moine Date: Sun Jul 3 05:24:05 2011 -0300 [media] gspca - ov519: Fix a LED inversion In the webcam 041e:405f, the LED is inverted. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit b877a9a7fb00d96bae4ab49c69f1be65b3e87e61 Author: Jean-François Moine Date: Sun Jul 3 05:17:27 2011 -0300 [media] gspca - ov519: Fix sensor detection problems The sensor of some webcams could not be detected due to timing problems in sensor register reading. This patch adds bridge register readings before sensor register reading. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 686a9488cd23cce1fa8a6cddde0e7668ae2e74b4 Author: Stefan Richter Date: Wed Jul 6 15:54:48 2011 -0300 [media] firedtv: change some -EFAULT returns to more fitting error codes Mauro Carvalho Chehab wrote: > I'm validating if all drivers are behaving equally with respect to the > error codes returned to userspace, and double-checking with the API. > > On almost all places, -EFAULT code is used only to indicate when > copy_from_user/copy_to_user fails. However, firedtv uses a lot of > -EFAULT, where it seems to me that other error codes should be used > instead (like -EIO for bus transfer errors and -EINVAL/-ERANGE for > invalid/out of range parameters). This concerns only the CI (CAM) related code of firedtv of which I know little. Let's just pass through the error returns of lower level I/O code where applicable, and -EACCES (permission denied) when a seemingly valid but negative FCP response or an unknown-to-firedtv CA message is received. Signed-off-by: Stefan Richter Cc: Henrik Kurelid Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 7a286cc1889f14c5c8dbf866718edde100527d8c Author: Mauro Carvalho Chehab Date: Sun Jun 26 10:18:03 2011 -0300 [media] return -ENOTTY for unsupported ioctl's at legacy drivers Those drivers are not relying at the V4L2 core to handle the ioctl's. So, we need to manually patch them every time a change goes to the core. Acked-by: Hans Verkuil Acked-By: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit 9190d191b1b814dfb488125b54cf0de6eedd9220 Author: Mauro Carvalho Chehab Date: Wed Jul 6 14:08:08 2011 -0300 [media] v4l2 core: return -ENOTTY if an ioctl doesn't exist Currently, -EINVAL is used to return either when an IOCTL is not implemented, or if the ioctl was not implemented. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c28f53f6cd45de5cefe8dc7479236b745b97d49c Author: Mauro Carvalho Chehab Date: Wed Jul 6 13:51:51 2011 -0300 [media] DocBook/dvb: Use generic descriptions for the video API While here, removes the bogus EINTERNAL error codes. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 66b30b5d510f46c47beb330932afdcb7943d1d78 Author: Mauro Carvalho Chehab Date: Wed Jul 6 13:42:08 2011 -0300 [media] DocBook/dvb: Use generic descriptions for the frontend API Move generic stuff into gen-errors.xml, and remove them from DVB API. While here, removes two bogus error codes that aren't supported or used on Linux: EINTERNAL and ENOSIGNAL. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 16d6c0b02c555b93034ffef4bf1b2d8ae80d8102 Author: Mauro Carvalho Chehab Date: Wed Jul 6 09:05:41 2011 -0300 [media] dvb-bt8xx: Don't return -EFAULT when a device is not found When a device (or their PCI structs) are not found, the error should be -ENODEV. -EFAULT is reserved for errors while copying arguments from/to userspace. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c1798c90adabf16713086f34a793d89d147022a5 Author: Mauro Carvalho Chehab Date: Tue Jul 5 13:39:38 2011 -0300 [media] DocBook/demux.xml: Remove generic errors Remove generic errors from ioctl() descriptions. For other ioctl's, there's no generic section. So, just keep whatever is there. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit b424f60c5b728c27b0bd719a907847ad4c0e7e59 Author: Mauro Carvalho Chehab Date: Tue Jul 5 13:18:15 2011 -0300 [media] DocBook/audio.xml: Remove generic errors Remove generic errors from ioctl() descriptions. For other ioctl's, there's no generic section. So, just keep whatever is there. Also remove the EINTERNAL error code, as no DVB driver returns it, and this error code is not defined on POSIX or on Linux. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 3de530f805c012d3b58ffdd10e43e3ec7790baa3 Author: Mauro Carvalho Chehab Date: Tue Jul 5 12:36:01 2011 -0300 [media] DVB: Point to the generic error chapter Just like the V4L, MC and LIRC API's, point to the generic error chapter for ioctl's. This will allow moving generic error codes to just one place inside all media API's. A latter patch will remove the generic errors from each specific ioctl. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 7464aa50c6529c1da6a80496911e16244119fd16 Author: Mauro Carvalho Chehab Date: Wed Jul 6 12:41:21 2011 -0300 [media] nxt6000: i2c bus error should return -EIO data from/to userspace. Don't mix it with I2C bus error (-EIO). Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit d316b5fba37621a70893af56968ed899b1179a63 Author: Mauro Carvalho Chehab Date: Wed Jul 6 12:55:29 2011 -0300 [media] siano: bad parameter is -EINVAL and not -EFAULT Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c55d6f8270cab805983aba8cdf1d1980167d3517 Author: Mauro Carvalho Chehab Date: Tue Jul 5 12:07:54 2011 -0300 [media] DocBook: Add return error codes to LIRC ioctl session Add a reference for the generic error code chapter to LIRC ioctl description. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 10dc380f79a9f6f7c34d5a0e92f6b056d9a77d79 Author: Mauro Carvalho Chehab Date: Tue Jul 5 12:02:12 2011 -0300 [media] DocBook: Add an error code session for LIRC interface Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 4c14e4a93f02e89e7d0a62604a7652f61057c923 Author: Mauro Carvalho Chehab Date: Tue Jul 5 11:57:05 2011 -0300 [media] DocBook: Remove V4L generic error description for ioctl() V4L ioctl function descripton also has a generic error chapter. Remove it, as it is now obsoleted by a general, multi-API generic error descriptions. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 9e1d50756bad35c7e1b566bed9426f68d93135fd Author: Mauro Carvalho Chehab Date: Tue Jul 5 11:39:53 2011 -0300 [media] DocBook/media-ioc-setup-link.xml: Remove EBUSY The EBUSY is already described as a generic error condition, with a similar text. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit dfcf4f9d97eec997283e41cef2d2b6956c32fecd Author: Mauro Carvalho Chehab Date: Tue Jul 5 11:37:58 2011 -0300 [media] DocBook: Use the generic error code page also for MC API Instead of having their own generic error codes at the MC API, move its section to the generic one and be sure that all media ioctl's will point to it. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 43c1daa47d57197c1491411a9f33189f9ef680dd Author: Mauro Carvalho Chehab Date: Tue Jul 5 11:22:28 2011 -0300 [media] DocBook: Use the generic ioctl error codes for all V4L ioctl's Be sure that all VIDIOC_* ioctl are using the return error macro, and aren't specifying generic error codes internally. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 6d1724925d4da49b84161f1440912205576b7935 Author: Mauro Carvalho Chehab Date: Tue Jul 5 10:07:37 2011 -0300 [media] DocBook: Add a chapter to describe media errors There are several errors reported by V4L that aren't described. They can occur on almost all ioctl's. Instead of adding them into each ioctl, create a new chapter. For V4L, the new chapter will automatically be listed on all places, as there's a macro used everywhere there. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 28720944d86b4d187360daa8be67dd22cb4e897b Author: Jonathan Corbet Date: Thu Jun 30 17:05:28 2011 -0300 [media] marvell-cam: use S/G DMA by default Scatter/gather DMA mode works nicely on this platform and is clearly the best way of doing things. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit cbc4f3a277ce52c217457ce08f433d8e9ad4925f Author: Jonathan Corbet Date: Thu Jun 30 17:05:27 2011 -0300 [media] marvell-cam: Working s/g DMA The core Marvell camera driver can now do scatter/gather DMA on controllers which support that functionality. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 60c0732244164f14e376cfae493dba368f761514 Author: Hans Verkuil Date: Wed Jun 29 08:56:22 2011 -0300 [media] v4l2-ctrls.c: add support for V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK Normally no control events will go to the filehandle that called the VIDIOC_S_CTRL/VIDIOC_S_EXT_CTRLS ioctls. This is to prevent a feedback loop. This can now be overridden by setting the new V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK flag. Based on suggestions from Mauro Carvalho Chehab and Laurent Pinchart . Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 3ad57c33846d884cfeed770238b27f3dcf3742f1 Author: Hans Verkuil Date: Mon Jun 20 12:00:36 2011 -0300 [media] v4l2-event.h: add overview documentation to the header It's getting confusing who is linking to what, so add an overview at the start of the header. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 3f66f0ed319505555f45ceac04775b23f9279ee6 Author: Hans Verkuil Date: Mon Jun 20 11:56:24 2011 -0300 [media] v4l2-ctrls/v4l2-events: small coding style cleanups Thanks to Laurent Pinchart . Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit e969084030b03f4997d63b3f718ba814290e0705 Author: Hans Verkuil Date: Sat Jun 18 06:58:29 2011 -0300 [media] DocBook: update V4L Event Interface section Starting with v3.1 the V4L2 API provides certain guarantees with respect to events. Document these. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 1de7310ac9854101ecb9cdeed0f8bd5ac66cf55e Author: Hans Verkuil Date: Sat Jun 18 06:14:42 2011 -0300 [media] v4l2-framework.txt: update v4l2_event section Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 98019f5e88ef912eb6fdbe5b23fed16c9ba230ee Author: Hans Verkuil Date: Sat Jun 18 05:13:55 2011 -0300 [media] v4l2-framework.txt: updated v4l2_fh_init documentation v4l2_fh_init now returns void instead of int, updated the doc. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 71c6c4c918696625164ffdac4ece9f83bd4a6694 Author: Hans Verkuil Date: Tue Jun 14 11:01:52 2011 -0300 [media] v4l2-ctrls: v4l2_ctrl_handler_setup code simplification Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit e64025850d11afd0a9ad14d40310bec7ff0f4847 Author: Hans Verkuil Date: Tue Jun 14 10:56:42 2011 -0300 [media] v4l2-ctrls: split try_or_set_ext_ctrls() Split try_or_set_ext_ctrls() into a validate_ctrls() part ('Phase 1') and merge the second part ('Phase 2') into try_set_ext_ctrls(). This makes a lot more sense and it also does the validation before trying to try/set the controls. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit eb5b16efb26ff5b2d0ba25a114394db69c433f86 Author: Hans Verkuil Date: Tue Jun 14 10:04:06 2011 -0300 [media] v4l2-ctrls: improve discovery of controls of the same cluster The implementation of VIDIOC_G/S/TRY_EXT_CTRLS in the control framework has to figure out which controls in the control list belong to the same cluster. Since controls belonging to the same cluster need to be handled as a unit, this is important information. It did that by going over the controls in the list and for each control that belonged to a multi-control cluster it would walk the remainder of the list to try and find controls that belong to that same cluster. This approach has two disadvantages: 1) it was a potentially quadratic algorithm (although highly unlikely that it would ever be that bad in practice). 2) it took place with the control handler's lock held. Since we want to make it possible in the future to change control values from interrupt context, doing a lot of work while holding a lock is not a good idea. In the new code the algorithm is no longer quadratic but linear in the number of controls in the list. Also, it now can be done beforehand. Another change that was made was to so the try and set at the same time. Before when S_TRY_EXT_CTRLS was called it would 'try' the controls first, and then it would 'set' them. The idea was that any 'try' errors would prevent the 'set' from happening, thus avoiding having partially set control lists. However, this caused more problems than it solved because between the 'try' and the 'set' changes might have happened, so it had to try a second time, and since actual controls with a try_ctrl op are very rare (and those that we have just adjust values and do not return an error), I've decided to drop that two-stage approach and just combine try and set. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c12fcfd676e16a82e47ee44fe2d13dc21717063a Author: Hans Verkuil Date: Tue Jun 14 02:42:45 2011 -0300 [media] v4l2-ctrls: don't initially set CH_VALUE for write-only controls When sending the SEND_INITIAL event for write-only controls the V4L2_EVENT_CTRL_CH_VALUE flag should not be set. It's meaningless. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 2151bdc887acfd6dc2c931b4d3c01f95e30b7df8 Author: Hans Verkuil Date: Sat Jun 18 07:02:20 2011 -0300 [media] v4l2-event: add optional merge and replace callbacks When the event queue for a subscribed event is full, then the oldest event is dropped. It would be nice if the contents of that oldest event could be merged with the next-oldest. That way no information is lost, only intermediate steps are lost. This patch adds optional replace() (called when only one kevent was allocated) and merge() (called when more than one kevent was allocated) callbacks that will be called to do this job. These two callbacks are implemented for the V4L2_EVENT_CTRL event. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit f1e393de382af9b9bd2462a42bfa16b8c501d81b Author: Hans Verkuil Date: Mon Jun 13 19:24:17 2011 -0300 [media] v4l2-event/ctrls/fh: allocate events per fh and per type instead of just per-fh The driver had to decide how many events to allocate when the v4l2_fh struct was created. It was possible to add more events afterwards, but there was no way to ensure that you wouldn't miss important events if the event queue would fill up for that filehandle. In addition, once there were no more free events, any new events were simply dropped on the floor. For the control event in particular this made life very difficult since control status/value changes could just be missed if the number of allocated events and the speed at which the application read events was too low to keep up with the number of generated events. The application would have no idea what the latest state was for a control since it could have missed the latest control change. So this patch makes some major changes in how events are allocated. Instead of allocating events per-filehandle they are now allocated when subscribing an event. So for that particular event type N events (determined by the driver) are allocated. Those events are reserved for that particular event type. This ensures that you will not miss events for a particular type altogether. In addition, if there are N events in use and a new event is raised, then the oldest event is dropped and the new one is added. So the latest event is always available. This can be further improved by adding the ability to merge the state of two events together, ensuring that no data is lost at all. This will be added in the next patch. This also makes it possible to allow the user to determine the number of events that will be allocated. This is not implemented at the moment, but would be trivial. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 77068d36d8b9e9902a89b4bb01011d41926f5420 Author: Hans Verkuil Date: Mon Jun 13 18:55:58 2011 -0300 [media] v4l2-ctrls/event: remove struct v4l2_ctrl_fh, instead use v4l2_subscribed_event The v4l2_ctrl_fh struct connected v4l2_ctrl with v4l2_fh so the control would know which filehandles subscribed to it. However, it is much easier to use struct v4l2_subscribed_event directly for that and get rid of that intermediate struct. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 523f46d6aba9dcb0a2d0fc474ca884e93a7cf198 Author: Hans Verkuil Date: Mon Jun 13 17:44:42 2011 -0300 [media] v4l2-events/fh: merge v4l2_events into v4l2_fh Drivers that supported events used to be rare, but now that controls can also raise events this will become much more common since almost all drivers have controls. This means that keeping struct v4l2_events as a separate struct make no more sense. Merging it into struct v4l2_fh simplifies things substantially as it is now an integral part of the filehandle struct. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 95904d4b6a188ea2f0f1781498f6ca626e21b9ac Author: Andrew Chew Date: Thu Jun 23 20:19:44 2011 -0300 [media] V4L: ov9740: Add suspend/resume On suspend, remember whether we are streaming or not, and at what frame format, so that on resume, we can start streaming again. Signed-off-by: Andrew Chew Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit e29c9bfb3823b7733448a3232d1864c14f28fb44 Author: Andrew Chew Date: Thu Jun 23 20:19:43 2011 -0300 [media] V4L: ov9740: Reorder video and core ops This is to avoid needing a forward declaration when ov9740_s_power() (in the subsequent patch) calls ov9740_s_fmt(). Signed-off-by: Andrew Chew Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 970aa9e04e40f8a73691c3c5c3c7bd76fee6f8f2 Author: Andrew Chew Date: Thu Jun 23 20:19:42 2011 -0300 [media] V4L: ov9740: Remove hardcoded resolution regs Derive resolution-dependent register settings programmatically. Signed-off-by: Andrew Chew Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit c4fdce56968dcd78481808fd2ce8f5a192322028 Author: Andrew Chew Date: Thu Jun 23 20:19:41 2011 -0300 [media] V4L: ov9740: Fixed some settings Based on vendor feedback, should issue a software reset at start of day. Also, OV9740_ANALOG_CTRL15 needs to be changed so the sensor does not begin streaming until it is ready (otherwise, results in a nonsense frame for the initial frame). Added a comment on using discontinuous clock. Finally, OV9740_ISP_CTRL19 needs to be changed to really use YUYV ordering (the previous value was for VYUY). Signed-off-by: Andrew Chew Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 5fec8b900237ecc8ba1bbc3d051a655d43b6881c Author: Andrew Chew Date: Thu Jun 23 20:19:40 2011 -0300 [media] V4L: ov9740: Correct print in ov9740_reg_rmw() The register width of the ov9740 is 16-bits, so correct the debug print to reflect this. Signed-off-by: Andrew Chew Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit c6aac9fcdd6d92cf89d3ce41fcc10e75fbdde9df Author: Andrew Chew Date: Thu Jun 23 20:19:39 2011 -0300 [media] V4L: ov9740: Cleanup hex casing inconsistencies Made all hex number casing use lower-case throughout the entire driver for consistency. Signed-off-by: Andrew Chew Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 195ebc43bf76df2232d8c55ae284725e73d7a80e Author: Josh Wu Date: Tue Jun 7 22:40:19 2011 -0300 [media] V4L: at91: add Atmel Image Sensor Interface (ISI) support This patch is to enable Atmel Image Sensor Interface (ISI) driver support. Signed-off-by: Josh Wu Acked-by: Jean-Christophe PLAGNIOL-VILLARD Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 8318a64b892a4de629c3365b3acd8f7d2d7e6100 Author: Guennadi Liakhovetski Date: Tue Jun 7 06:24:32 2011 -0300 [media] V4L: soc-camera: remove several now unused soc-camera client operations This patch removes .enum_input(), .suspend() and .resume() soc-camera client operations. Functionality, provided by .enum_input(), if needed, can be implemented using the v4l2-subdev API. As for .suspend() and .resume(), the only client driver, implementing these methods has been mt9m111, and the only host driver, using them has been pxa-camera. Now that both those drivers have been converted to the standard subdev .s_power() operation, .suspend() and .resume() can be removed. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 14c5ea9bb411f094160626daed03c67641be076a Author: Guennadi Liakhovetski Date: Sun Jun 5 08:27:39 2011 -0300 [media] V4L: mt9m111: switch to v4l2-subdev .s_power() method Eliminate soc-camera specific .suspend() and .restore() methods in favour of the standard v4l2-subdev .s_power() method Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 2768cbbba3a131e5f483832ff0ff75d97392caa8 Author: Guennadi Liakhovetski Date: Tue Jun 7 06:47:30 2011 -0300 [media] V4L: mt9m111: propagate higher level abstraction down in functions It is more convenient to propagate the higher level abstraction - the struct mt9m111 object into functions and then retrieve a pointer to the i2c client, if needed, than to do the reverse. Signed-off-by: Guennadi Liakhovetski Acked-by: Robert Jarzmik Signed-off-by: Mauro Carvalho Chehab commit b7ccdba02aaa5100eec85d41c56c37c78d3ab407 Author: Guennadi Liakhovetski Date: Sat Jun 4 17:24:22 2011 -0300 [media] V4L: soc-camera: MIPI flags are not sensor flags SOCAM_MIPI_[1234]LANE flags are not board-specific sensor flags, they are bus configuration flags. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 4df4ada936dad1cd8bcf3ee7c97841da189ecfc1 Author: Guennadi Liakhovetski Date: Sat Jun 4 16:48:10 2011 -0300 [media] V4L: tw9910: remove bogus ENUMINPUT implementation tw9910 is a TV decoder, it doesn't have a tuner. Besides, the .enum_input soc-camera operation is optional and normally not needed. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit ff391d71bcf2ada53584d478ce23b1b279f59799 Author: Guennadi Liakhovetski Date: Sat Jun 4 15:09:02 2011 -0300 [media] V4L: sh_mobile_ceu_camera: remove redundant calculations soc_camera core now performs the standard .bytesperline and .sizeimage calculations internally, no need to duplicate in drivers. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 28281a71eb3bc08a0fb9514886e7d6e868f71b3f Author: Guennadi Liakhovetski Date: Sat Jun 4 15:06:47 2011 -0300 [media] V4L: mx2_camera: .try_fmt shouldn't fail If the user is requesting too large a frame, instead of failing select an acceptable geometry, preserving the requested aspect ratio. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 497833c6813dde5ca27cc94e28c973d601d601e1 Author: Guennadi Liakhovetski Date: Tue Jun 7 05:50:15 2011 -0300 [media] V4L: pxa-camera: switch to using subdev .s_power() core operation soc-camera specific .suspend() and .resume() methods are deprecated and should be replaced by the subdev standard .s_power() operation. Signed-off-by: Guennadi Liakhovetski Acked-by: Robert Jarzmik Signed-off-by: Mauro Carvalho Chehab commit 91401219c073a565af79223215a84250bbc8c79e Author: Guennadi Liakhovetski Date: Tue Jun 7 05:44:19 2011 -0300 [media] V4L: pxa-camera: try to force progressive video format The pxa-camera driver only supports progressive video so far. Passing down to the client the same format, as what the user has requested can result in interlaced video, even if the client supports both. This patch avoids such cases. Signed-off-by: Guennadi Liakhovetski Acked-by: Robert Jarzmik Signed-off-by: Mauro Carvalho Chehab commit a5c1cee0e63da3ed7d8bdbf85f11e4895051d890 Author: Guennadi Liakhovetski Date: Tue Jun 7 05:42:57 2011 -0300 [media] V4L: pxa_camera: remove redundant calculations soc_camera core now performs the standard .bytesperline and .sizeimage calculations internally, no need to duplicate in drivers. Signed-off-by: Guennadi Liakhovetski Acked-by: Robert Jarzmik Signed-off-by: Mauro Carvalho Chehab commit 6523208758a7a0dbb8947e248110992da53d4143 Author: Guennadi Liakhovetski Date: Sat Jun 4 14:11:10 2011 -0300 [media] V4L: mx3_camera: remove redundant calculations soc_camera core now performs the standard .bytesperline and .sizeimage calculations internally, no need to duplicate in drivers. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 82a7c049449ec5a2194249da341ec8bde14e968b Author: Hans Verkuil Date: Tue Jun 28 10:43:13 2011 -0300 [media] v4l2-ctrls: make manual_mode_value 8 bits and check against control range Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 2330fb8242c3efc281ab8a2d3e22686023699955 Author: Hans Verkuil Date: Tue Jun 7 11:43:57 2011 -0300 [media] v4l2-compat-ioctl32: add VIDIOC_DQEVENT support Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 5138870d68ffbf6fcdf019af5b2ce78bc5a1f837 Author: Hans Verkuil Date: Tue Jun 28 10:40:42 2011 -0300 [media] ivtv: add control event support Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c7a52f8dced9ee325b8e3a16a5ac07d191fc3d9b Author: Hans Verkuil Date: Tue Jun 7 10:20:23 2011 -0300 [media] vivi: support control events Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 85724983c4d212c24116d45f6585a1c4ff845dd3 Author: Hans Verkuil Date: Tue Jun 7 09:53:37 2011 -0300 [media] V4L2 spec: document control events Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ce7275747bd548e0da7425ba0b7edb6f2c7657a2 Author: Hans Verkuil Date: Fri Jun 10 05:56:39 2011 -0300 [media] v4l2-ctrls: simplify event subscription Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 6e239399e5807132f86f64af6c659411c6a3d1a5 Author: Hans Verkuil Date: Tue Jun 7 11:13:44 2011 -0300 [media] v4l2-ctrls: add control events Whenever a control changes value or state an event is sent to anyone that subscribed to it. This functionality is useful for control panels but also for applications that need to wait for (usually status) controls to change value. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ab892bac8438c5c2ff09a60d765d9b0c14941ba9 Author: Hans Verkuil Date: Tue Jun 7 06:47:18 2011 -0300 [media] v4l2-ctrls: add v4l2_fh pointer to the set control functions When an application changes a control you want to generate an event. However, you want to avoid sending such an event back to the application (file handle) that caused the change. Add the filehandle to the various set control functions. The filehandle isn't used yet, but the control event patches will need this. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit a1c894fba3c306a738576710ca35e70a32b74a6d Author: Hans Verkuil Date: Tue Jun 7 06:34:41 2011 -0300 [media] vivi: add autogain/gain support to test the autocluster functionality Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c76cd635726beb3e1c73bbc4dc87e0cda48ac006 Author: Hans Verkuil Date: Tue Jun 7 05:46:53 2011 -0300 [media] Documentation: Improve cluster documentation and document the new autoclusters Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 72d877cac07c8d996918977c3162dd78b8097ca8 Author: Hans Verkuil Date: Fri Jun 10 05:44:36 2011 -0300 [media] v4l2-ctrls: add v4l2_ctrl_auto_cluster to simplify autogain/gain scenarios It is a bit tricky to handle autogain/gain type scenerios correctly. Such controls need to be clustered and the V4L2_CTRL_FLAG_UPDATE should be set on the autofoo controls. In addition, the manual controls should be marked inactive when the automatic mode is on, and active when the manual mode is on. This also requires specialized volatile handling. The chances of drivers doing all these things correctly are pretty remote. So a new v4l2_ctrl_auto_cluster function was added that takes care of these issues. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 78866efe8ae2862fef7ff37af36c6972651c2d0b Author: Hans Verkuil Date: Fri May 27 08:53:37 2011 -0300 [media] v4l2-controls.txt: update to latest v4l2-ctrl.c changes Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ddac5c107942d9584a9f55701aad405b57618726 Author: Hans Verkuil Date: Fri Jun 10 05:43:34 2011 -0300 [media] v4l2-ctrls: fix and improve volatile control handling If you have a cluster of controls that is a mix of volatile and non-volatile controls, then requesting the value of the volatile control would fail if the master control of that cluster was non-volatile. The code assumed that the volatile state of the master control was the same for all other controls in the cluster. This is now fixed. In addition, it was clear from bugs in some drivers that it was confusing that the ctrl->cur union had to be used in g_volatile_ctrl. Several drivers used the 'new' values instead. The framework was changed so that drivers now set the new value instead of the current value. This has an additional benefit as well: the volatile values are now only stored in the 'new' value, leaving the current value alone. This is useful for autofoo/foo control clusters where you want to have a 'foo' control act like a volatile control if 'autofoo' is on, but as a normal control when it is off. Since with this change the cur value is no longer overwritten when g_volatile_ctrl is called, you can use it to remember the original 'foo' value. For example: autofoo = 0, foo = 10 and foo is non-volatile. Now autofoo is set to 1 and foo is marked volatile. Retrieving the foo value will get the volatile value. Set autofoo back to 0, which marks foo as non- volatile again, and retrieving foo will get the old current value of 10. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 18d171badf47a436045589668f785b7d278f4e4d Author: Hans Verkuil Date: Wed May 25 08:52:13 2011 -0300 [media] v4l2-subdev: implement per-filehandle control handlers To be consistent with v4l2-ioctl.c. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 2d28b686adc18567b388362e1f7b86658cfd81fc Author: Hans Verkuil Date: Sat Mar 12 08:54:43 2011 -0300 [media] v4l2-ioctl: add ctrl_handler to v4l2_fh This is required to implement control events and is also needed to allow for per-filehandle control handlers. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 7ebbc39fa0b469243b985e5e26755f1e6184213f Author: Hans Verkuil Date: Tue Jun 7 04:50:31 2011 -0300 [media] v4l2-ctrls: drivers should be able to ignore the READ_ONLY flag When applications try to set READ_ONLY controls an error should be returned. However, when drivers do that it should be accepted. Those controls could reflect some driver status which the application can't change but the driver obviously has to be able to change it. This is needed among others for future HDMI status controls. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 37cd3b73683f15f1b6313d0de476726aa0942a75 Author: Hans Verkuil Date: Tue Jun 7 04:40:04 2011 -0300 [media] v4l2-ctrls: simplify error_idx handling The lower-level prepare functions just set error_idx for each control that might have an error. The high-level functions will override this with cs->count in the get and set cases. Only try will keep the error_idx. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 54c911eb919b44b178bda67564f274197872bd04 Author: Hans Verkuil Date: Wed May 25 06:04:58 2011 -0300 [media] v4l2-ctrls: introduce call_op define Add the call_op define to safely call the control ops. This also allows for controls without any ops such as the 'control class' controls. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c20eb18ce1db6792db69f0574f7e955e9f92a213 Author: Mauro Carvalho Chehab Date: Sat Jun 25 14:11:52 2011 -0300 [media] DocBook/v4l: Document the new system-wide version behavior Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 29834c1ac7589c72996c5d02349d63fd397ef131 Author: Mauro Carvalho Chehab Date: Sat Jun 25 10:15:42 2011 -0300 [media] radio: Use the subsystem version control for VIDIOC_QUERYCAP Just like the video drivers, the right thing to do is to use the per-subsystem version control. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 64dc3c1a906467d90c24913b0b38dd13d9378f4f Author: Mauro Carvalho Chehab Date: Sat Jun 25 11:28:37 2011 -0300 [media] Stop using linux/version.h on the remaining video drivers Standardize the remaining video drivers to return the API version for the VIDIOC_QUERYCAP version, instead of a per-driver version. Those drivers had the version updated more recently or are SoC drivers. Even so, it doesn't sound a good idea to keep a per-driver version control, so, let's use the per-subsystem version control instead. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit b0eaab765794bf4fdf060c74b21c9851ba3c6907 Author: Mauro Carvalho Chehab Date: Mon Jun 27 22:28:38 2011 -0300 [media] gspca: don't include linux/version.h Instead of handling a per-driver driver version, use the per-subsystem one. As reviewed by Jean-Francois Moine : - the 'info' may be simplified: Reviewed-by: Jean-Francois Moine Acked-by: Hans Verkuil Acked-by: Jean-Francois Moine Signed-off-by: Mauro Carvalho Chehab commit fd3e5824824d1beaf376cd523c7418c5570851d4 Author: Mauro Carvalho Chehab Date: Sat Jun 25 13:50:37 2011 -0300 [media] uvcvideo: Use LINUX_VERSION_CODE for VIDIOC_QUERYCAP uvcvideo doesn't use vidioc_ioctl2. As the API is changing to use a common version for all drivers, we need to expliticly fix this driver. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 6c13b45e57c3b719328e1ead30b07583419ad9a1 Author: Mauro Carvalho Chehab Date: Sat Jun 25 13:43:22 2011 -0300 [media] sn9c102: Use LINUX_VERSION_CODE for VIDIOC_QUERYCAP sn9c102 doesn't use vidioc_ioctl2. As the API is changing to use a common version for all drivers, we need to expliticly fix this driver. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 083774d8b164b87c5595ead0b752236cfd5bf761 Author: Mauro Carvalho Chehab Date: Sat Jun 25 13:34:24 2011 -0300 [media] pvrusb2: Use LINUX_VERSION_CODE for VIDIOC_QUERYCAP pvrusb2 doesn't use vidioc_ioctl2. As the API is changing to use a common version for all drivers, we need to expliticly fix this driver. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 5204cebadd09c5bd7e4fc194b9dfaba9e40c0361 Author: Mauro Carvalho Chehab Date: Sat Jun 25 12:57:04 2011 -0300 [media] et61x251: Use LINUX_VERSION_CODE for VIDIOC_QUERYCAP et61x251 doesn't use vidioc_ioctl2. As the API is changing to use a common version for all drivers, we need to expliticly fix this driver. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 3c2d464ee8a967ecb2d820ddec42ea431f8bf3b4 Author: Mauro Carvalho Chehab Date: Sat Jun 25 11:23:01 2011 -0300 [media] ivtv,cx18: Use default version control for VIDIOC_QUERYCAP After discussing with Andy Walls on irc, we've agreed that this is the best thing to do. No regressions will be introduced, as 3.x.y is greater then the current versions for cx18 and ivtv. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 880c35c5850464c934f02a5ec7d4c1a4df386fce Author: Mauro Carvalho Chehab Date: Sat Jun 25 10:07:39 2011 -0300 [media] pwc: Use the default version for VIDIOC_QUERYCAP After discussing with Hans, change pwc to use the default version control. The only version ever used for pwc driver is 10.0.12, due to commit 2b455db6d456ef2d44808a8377fd3bc832e08317. Changing it to 3.x.y won't conflict with the old version. There's no namespace conflicts in any predictable future. Even on the remote far-away case where we might have a conflict, it will be on just one specific stable Kernel release (Kernel 10.0.12), if we ever have such stable release. So, it is safe and consistent on using 3.x.y numering schema for it. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 1990d50b58bef127a647005fdcada6d07081d3ef Author: Mauro Carvalho Chehab Date: Fri Jun 24 14:45:49 2011 -0300 [media] Stop using linux/version.h on most video drivers All the modified drivers didn't have any version increment since Jan, 1 2011. Several of them didn't have any version increment for a long time, even having new features and important bug fixes happening. As we're now filling the QUERYCAP version with the current Kernel Release, we don't need to maintain a per-driver version control anymore. So, let's just use the default. In order to preserve the Kernel module version history, a KERNEL_VERSION() macro were added to all modified drivers, and the extraver number were incremented. I opted to preserve the per-driver version control to a few pwc, pvrusb2, s2255, s5p-fimc and sh_vou. A few drivers are still using the legacy way to handle ioctl's. So, we can't do such change on them, otherwise, they'll break. Those are: uvc, et61x251 and sn9c102. The rationale is that the per-driver version control seems to be actively maintained on those. Yet, I think that the better for them would be to just use the default version numbering, instead of doing that by themselves. While here, removed a few uneeded include linux/version.h Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit d35ebf9558e692299b764163d61420fe5f526c02 Author: Mauro Carvalho Chehab Date: Sat Jun 25 10:39:36 2011 -0300 [media] drxd, siano: Remove unused include linux/version.h Both drxd and siano drivers were including linux/version.h without any reason. Probably, this is due to some compatibility code that used to exist before having their support added into the Linux Kernel. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ae6db5154671759426046c2cbc2e20a82ff0feed Author: Mauro Carvalho Chehab Date: Fri Jun 24 13:14:14 2011 -0300 [media] v4l2-ioctl: Add a default value for kernel version Most drivers don't increase kernel versions as newer features are added or bug fixes are solved. So, vidioc_querycap returned value for cap->version is meaningless. Instead of keeping this situation forever, let's add a default value matching the current Linux version. Drivers that want to keep their own version control can still do it, as they can override the default value for cap->version. Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit b6dc1bab052891f7cbe158f7146a0f9d55806471 Author: Mauro Carvalho Chehab Date: Sat Jun 25 14:28:08 2011 -0300 [media] DocBook/v4l: Remove references to the old V4L1 compat layer The old V4L1 Kernel copatibility layer was removed, but the API spec still says that it is there. Signed-off-by: Mauro Carvalho Chehab commit a9b36e850782db853b9da050be9ed2050de51ad4 Author: Jonathan Corbet Date: Mon Jun 20 16:14:40 2011 -0300 [media] marvell-cam: implement contiguous DMA operation The core driver can now operate in either vmalloc or dma-contig modes; obviously the latter is preferable when it is supported. Default is currently vmalloc on all platforms; load the module with buffer_mode=1 for contiguous DMA mode. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 6c895d548c393d913152195c9e70816e13c64f9f Author: Jonathan Corbet Date: Mon Jun 20 16:14:39 2011 -0300 [media] marvell-cam: Don't spam the logs on frame loss The sequence numbers already give that information if user space cares; this is a frequent occurrence on slower machines, alas. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 9d48a51c272782e646d75e507a66e0532327d9e5 Author: Jonathan Corbet Date: Mon Jun 20 16:14:38 2011 -0300 [media] marvell-cam: no need to initialize the DMA buffers This was an old debugging thing from years ago. It's only done at initialization time, but it's still unnecessary; take it out. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 362d45b23d997c92ec7313e8eb6374c7b085a28e Author: Jonathan Corbet Date: Mon Jun 20 16:14:37 2011 -0300 [media] marvell-cam: include file cleanup Put the includes into a slightly more readable ordering and get rid of a few unneeded ones. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit b5210fd2c737dd178ff0401a0050dc62148fed60 Author: Jonathan Corbet Date: Mon Jun 20 16:14:36 2011 -0300 [media] marvell-cam: convert to videobuf2 This is a basic, naive conversion to the videobuf2 infrastructure, removing a lot of code in the process. For now, we're using vmalloc, which is suboptimal, but it does match what the cafe driver did before. In the cafe case, it may have to stay that way just because memory is too tight to do direct streaming; mmp-camera will be able to do better. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 3751e32961f22e256de85ebd585597ce5875037a Author: Sylwester Nawrocki Date: Sat Jun 18 05:52:21 2011 -0300 [media] v4l: Fix minor typos in the documentation Signed-off-by: Sylwester Nawrocki Signed-off-by: Mauro Carvalho Chehab commit af60313d6c686d2729d71bc55c3f60956676c543 Author: Manjunath Hadli Date: Fri Jun 17 04:01:36 2011 -0300 [media] davinci vpbe: Readme text for Dm6446 vpbe Please refer to this file for detailed documentation of davinci vpbe v4l2 driver. Signed-off-by: Manjunath Hadli Acked-by: Muralidharan Karicheri Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 6783edbc83ddcfff75bc1bcde47dfe95a795f95a Author: Manjunath Hadli Date: Fri Jun 17 04:01:35 2011 -0300 [media] davinci vpbe: Build infrastructure for VPBE driver This patch adds the build infra-structure for Davinci VPBE dislay driver. Signed-off-by: Manjunath Hadli Acked-by: Muralidharan Karicheri Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 606b69e9b9442dc283cc2ed1ed73c39f3c5d0ca5 Author: Manjunath Hadli Date: Fri Jun 17 04:01:34 2011 -0300 [media] davinci vpbe: VENC( Video Encoder) implementation This patch adds the VENC or the Video encoder, which is responsible for the blending of all source planes and timing generation for Video modes like NTSC, PAL and other digital outputs. the VENC implementation currently supports COMPOSITE and COMPONENT outputs and NTSC and PAL resolutions through the analog DACs. The venc block is implemented as a subdevice, allowing for additional external and internal encoders of other kind to plug-in. Signed-off-by: Manjunath Hadli Acked-by: Muralidharan Karicheri Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ff0f23dd0edf4a5bd5fa3ee0eda71d8a1c8201d4 Author: Manjunath Hadli Date: Fri Jun 17 04:01:33 2011 -0300 [media] davinci vpbe: OSD(On Screen Display) block This patch implements the functionality of the OSD block of the VPBE. The OSD in total supports 4 planes or Video sources - 2 mainly RGB and 2 Video. The patch implements general handling of all the planes, with specific emphasis on the Video plane capabilities as the Video planes are supported through the V4L2 driver. Signed-off-by: Manjunath Hadli Acked-by: Muralidharan Karicheri Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 66715cdc3224a4e241c1a92856b9a4af3b70e06d Author: Manjunath Hadli Date: Fri Jun 17 04:01:32 2011 -0300 [media] davinci vpbe: VPBE display driver This patch implements the core functionality of the display driver, mainly controlling the VENC and other encoders, and acting as the one point interface for the main V4L2 driver. This implements the core of each of the V4L2 IOCTLs. Signed-off-by: Manjunath Hadli Acked-by: Muralidharan Karicheri Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit a2c25b444e99f2369b29e507568c8703186174d0 Author: Manjunath Hadli Date: Fri Jun 17 04:01:31 2011 -0300 [media] davinci vpbe: V4L2 display driver for DM644X SoC This is the display driver for Texas Instruments's DM644X family SoC. This patch contains the main implementation of the driver with the V4L2 interface. The driver implements the streaming model with support for both kernel allocated buffers and user pointers. It also implements all of the necessary IOCTLs necessary and supported by the video display device. Signed-off-by: Manjunath Hadli Acked-by: Muralidharan Karicheri Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 9a78efc8fbd6776cd0f704be9cac7b013f3d3d16 Author: Jiri Slaby Date: Thu Jun 16 16:06:56 2011 -0300 [media] DVB: dvb-net, make the kconfig text helpful Telling the user they can disable an option if they want is not the much useful. Describe what it is good for instead. The text was derived from Mauro's email. Signed-off-by: Jiri Slaby Cc: Mauro Carvalho Chehab Cc: Hans Petter Selasky Acked-by: Randy Dunlap Acked-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit 3735edf9fd8bfa6e31025a7cc73447516278000b Author: Greg Dietsche Date: Thu Jun 16 13:33:35 2011 -0300 [media] dvb: remove unnecessary code remove unnecessary code that matches this coccinelle pattern if (...) return ret; return ret; Signed-off-by: Greg Dietsche Signed-off-by: Mauro Carvalho Chehab commit fe45e2551f565c87559434205963fc56bbe205fa Author: Tejun Heo Date: Wed Jun 15 10:32:06 2011 -0300 [media] dvb-usb/technisat-usb2: don't use flush_scheduled_work() flush_scheduled_work() is deprecated and scheduled to be removed. technisat-usb2 already sync-cancels the only work item it uses and there's no reason for it to call flush_scheduled_work(). Don't use it. Signed-off-by: Tejun Heo Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 3e1a4c1ff90002762998e0d13c8edc2e7aa8d736 Author: Bjørn Mork Date: Tue Jun 14 09:59:14 2011 -0300 [media] DVB API: Mention the dvbM device Signed-off-by: Bjørn Mork Signed-off-by: Mauro Carvalho Chehab commit d2434147b30475577615ce261eab796be9f2bb09 Author: Bjørn Mork Date: Tue Jun 14 09:42:47 2011 -0300 [media] V4L1 API has been moved into "legacy" on the linuxtv.org site Signed-off-by: Bjørn Mork Signed-off-by: Mauro Carvalho Chehab commit b7a80f341da5d40a4d483f8c9246133c8591de87 Author: Ondrej Zary Date: Sat Jun 11 10:37:29 2011 -0300 [media] tea575x: remove useless input ioctls Remove empty and useless g_input and s_input ioctls. This fixes one fail of v4l2-compliance test. Signed-off-by: Ondrej Zary Signed-off-by: Mauro Carvalho Chehab commit 6a529c1a4a87e0f5d143ad3bc0d37179332f210e Author: Ondrej Zary Date: Sat Jun 11 10:28:59 2011 -0300 [media] tea575x: allow multiple opens Change locking to allow tea575x-radio device to be opened multiple times. Signed-off-by: Ondrej Zary Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 9cd49719fda38613e9d7c712b11a54ea4ea005dc Author: Richard Röjfors Date: Fri Jun 10 11:48:48 2011 -0300 [media] radio-timb: Simplified platform data This patch simplifies the platform data slightly, by removing unused elements. Signed-off-by: Richard Röjfors Signed-off-by: Mauro Carvalho Chehab commit 8c528d5e51af26fd71ca6b5e39dfd1b4bd34c505 Author: Guennadi Liakhovetski Date: Fri Jun 10 07:43:26 2011 -0300 [media] media: DVB_NET must depend on DVB_CORE Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 9b3d8eccc3024d0bbf1e51845a18f2dbe0db3371 Author: Andy Walls Date: Wed Jun 8 21:24:25 2011 -0300 [media] cx23885: Add IR Rx support for HVR-1270 boards Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit de8ae0d516379ef0e0608415a3979ecdd2462c2e Author: Peter Moon Date: Wed Jun 8 15:54:19 2011 -0300 [media] cx231xx: Add support for Hauppauge WinTV USB2-FM This patch adds support for the "Hauppauge WinTV USB2-FM" Analog TV Stick. It includes support for both the PAL and NTSC variants of the device. Signed-off-by: Peter Moon Reviewed-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit c3f305aab4b2b4334a46a8cc212f4adf05af6798 Author: Justin P. Mattock Date: Mon Jun 6 13:11:52 2011 -0300 [media] frontends/s5h1420: Change: clock_settting to clock_setting Changes clock_settting to clock_setting. Note: This could be intentionally set this way from the beginning and/or is a typo. Signed-off-by: Justin P. Mattock Signed-off-by: Mauro Carvalho Chehab commit 79a5b9a2d99f9085dd84e796c20756e4e283b6c9 Author: istvan_v@mailbox.hu Date: Tue Jun 7 13:21:02 2011 -0300 [media] cx88: replaced duplicated code with function call The following patch replaces code to reset the XC3028 tuner with a call to the tuner reset callback. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 8eb79c0b9ba602123279bcc0cd65458a0dfcecfc Author: istvan_v@mailbox.hu Date: Tue Jun 7 13:16:56 2011 -0300 [media] cx88: added support for Leadtek WinFast DTV1800 H with XC4000 tuner This patch implements support for the Leadtek WinFast DTV1800 H card with XC4000 tuner (107d:6f38). Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit f271a3affae3529c3cb6dc66f3bf0a8aeaebf5d5 Author: istvan_v@mailbox.hu Date: Tue Jun 7 13:14:53 2011 -0300 [media] cx88: added support for Leadtek WinFast DTV2000 H Plus This patch implements support for the Leadtek WinFast DTV2000 H Plus card with XC4000 tuner (107d:6f42). Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit c21973e8aa930fe8a56ed4939ed9b6d640a6b158 Author: istvan_v@mailbox.hu Date: Tue Jun 7 13:12:29 2011 -0300 [media] cx88: added XC4000 tuner callback and DVB attach functions Added functions for XC4000 tuner reset and attaching DVB frontend. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 0db15d525d2d342de8e983c218198d5708a32004 Author: Mauro Carvalho Chehab Date: Fri Jun 17 23:18:21 2011 -0300 [media] em28xx: Mark Kworld 305 as validated This board were used for testing the em28xx-alsa using a separate interface. So, it is obviously validated ;) Signed-off-by: Mauro Carvalho Chehab commit 4f83e7b3ef938eb9a01eadf81a0f3b2c67d3afb6 Author: Mauro Carvalho Chehab Date: Fri Jun 17 15:15:12 2011 -0300 [media] em28xx: Add support for devices with a separate audio interface Some devices use a separate interface for the vendor audio class. Signed-off-by: Mauro Carvalho Chehab commit dff0f8c279e34089128e9687d77bfc72dbb471bd Author: Mauro Carvalho Chehab Date: Sun Jun 19 13:39:31 2011 -0300 [media] em28xx-audio: Some Alsa API fixes Mark the alsa stream with SNDRV_PCM_INFO_BATCH, as the timing to get audio streams can vary. Also, add SNDRV_PCM_TRIGGER for pause/release. while here, fix the stop indicator, to be sure that audio will be properly released at the stop events. Signed-off-by: Mauro Carvalho Chehab commit debb7241498001a0da10ee01b72f9ec1f9b1edc8 Author: Mauro Carvalho Chehab Date: Sun Jun 19 10:15:35 2011 -0300 [media] em28xx-audio: Properly report failures to start stream If the audio stream fails for any reason, it should: 1) Report an error via dmesg; 2) Mark internally that the stream didn't started. Signed-off-by: Mauro Carvalho Chehab commit 66cb6957d338383157d4fdafef7c85e488e9e535 Author: Mauro Carvalho Chehab Date: Sat Jun 18 11:00:20 2011 -0300 [media] em28xx-audio: add debug info for the volume control Signed-off-by: Mauro Carvalho Chehab commit 71d7d83edc5129509a2cba1cf9848579cf9619e5 Author: Mauro Carvalho Chehab Date: Sun Jun 19 13:14:07 2011 -0300 [media] em28xx-audio: volumes are inverted While here, fix volume mask to 5 bits Signed-off-by: Mauro Carvalho Chehab commit 43131a2ca6afbd8dcc940d5ad4b4b1c3d89a658b Author: Mauro Carvalho Chehab Date: Sun Jun 19 13:08:46 2011 -0300 [media] em28xx-audio: add support for mute controls Signed-off-by: Mauro Carvalho Chehab commit 850d24a5a861238f583f59cd39de4dfe5142a4c9 Author: Mauro Carvalho Chehab Date: Sun Jun 19 13:06:40 2011 -0300 [media] em28xx-alsa: add mixer support for AC97 volume controls Export ac97 volume controls via mixer. Pulseaudio will probably handle it very badly, as it has no idea about how volumes are wired, and how are they associated with each TV input. Those wirings are card model dependent, and we don't have the wiring mappings for each supported device. Signed-off-by: Mauro Carvalho Chehab commit 5b89ecf98998911f397fa913b06ee2304a373e54 Author: Mauro Carvalho Chehab Date: Sat Jun 18 10:19:11 2011 -0300 [media] em28xx: Allow to compile it without RC/input support Signed-off-by: Mauro Carvalho Chehab commit 0f8a61fc42a618e25c61549590c35c66c63e2ca7 Author: Mauro Carvalho Chehab Date: Sat Jun 18 07:02:49 2011 -0300 [media] em28xx: Fix a wrong enum at the ac97 control tables Signed-off-by: Mauro Carvalho Chehab commit 00d2e7ad9dd4e88224d091e454371d8a9a80719f Author: Mauro Carvalho Chehab Date: Fri Jun 17 20:28:51 2011 -0300 [media] em28xx: Don't initialize a var if won't be using it Fixes most cases of initializing a var but not using it. There are still 3 cases at em28xx-alsa, were those vars should probably be used. Signed-off-by: Mauro Carvalho Chehab commit 67a8dbbc4e04cd256987b189352472a59aff73be Author: Jonathan Corbet Date: Sat Jun 11 14:46:49 2011 -0300 [media] marvell-cam: Basic working MMP camera driver Now we have a camera working over the marvell cam controller core. It works like the cafe driver and has all the same limitations, contiguous DMA only being one of them. But it's a start. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 595a93a47a3b7dc1be84160fbd73b1406074f411 Author: Jonathan Corbet Date: Sat Jun 11 14:46:48 2011 -0300 [media] marvell-cam: Allocate the i2c adapter in the platform driver The upcoming mmp-camera driver will need an i2c_adapter structure allocated externally, so change the core adapter to a pointer and require the platform code to fill it in. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 1c68f889c3287bd9beedd23164804e7e09c6566b Author: Jonathan Corbet Date: Sat Jun 11 14:46:47 2011 -0300 [media] marvell-cam: Right-shift i2c slave ID's in the cafe driver This makes the cafe i2c implement consistent with the rest of Linux so that the core can use the same slave ID everywhere. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit f8ff6a96cd6e9f7dc8b606f302129f99bcb82674 Author: Jonathan Corbet Date: Sat Jun 11 14:46:46 2011 -0300 [media] marvell-cam: Move Cafe-specific register definitions to cafe-driver.c Nobody else ever needs to see these, so let's hide them. Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 9eefa7dc0136bec7739f42b0630c46cd02af377b Author: Jonathan Corbet Date: Sat Jun 11 14:46:45 2011 -0300 [media] marvell-cam: Remove the "untested" comment This code is, indeed, tested :) Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit 2164b5af1dd42ebb7b5aa6bbcf9d9c3c067db246 Author: Jonathan Corbet Date: Sat Jun 11 14:46:44 2011 -0300 [media] marvell-cam: Pass sensor parameters from the platform Depending on the controller, the ov7670 sensor may be told to work with a different clock speed or to use the SMBUS protocol. Remove the wired-in code and pass that information from the platform layer. The Cafe driver now just assumes it's running on an OLPC XO 1; I do not believe it has ever run anywhere else. Cc: Daniel Drake Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit abfa3df36c01a32b081fb448750181af76eb9d55 Author: Jonathan Corbet Date: Sat Jun 11 14:46:43 2011 -0300 [media] marvell-cam: Separate out the Marvell camera core There will eventually be multiple users of the core camera controller, so separate it from the bus/platform/i2c stuff. I've tried to do the minimal set of changes to get the driver functioning in this configuration; I did clean up a bunch of old checkpatch gripes in the process. This driver works like the old one did on OLPC XO 1 systems. Cc: Daniel Drake Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit f8fc729870ee82662ae6e3a713d59b2fbf3b04c6 Author: Jonathan Corbet Date: Sat Jun 11 17:46:42 2011 +0000 [media] marvell-cam: Move cafe-ccic into its own directory This driver will soon become a family of drivers, so let's give it its own place to live. This move requires putting ov7670.h into include/media, but there are no code changes. Cc: Daniel Drake Signed-off-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit bd7319dc325ac327ddb3777564361bd4186ecdb6 Author: Mauro Carvalho Chehab Date: Wed Jun 15 23:13:19 2011 -0300 [media] DocBook: Use base64 for gif/png files The patch utility doesn't work with non-binary files. This causes some tools to break, like generating tarball targets and the scripts that generate diff patches at http://www.kernel.org/pub/linux/kernel/v2.6/. So, let's convert all binaries to ascii using base64, and add a logic at Makefile to convert them back into binaries at runtime. Reported-by: Randy Dunlap Reported-by: Andrew Morton Reviewed-by: Michal Marek Signed-off-by: Mauro Carvalho Chehab commit 2c87d9db46d1dcc956facaf98805d4d68b823b23 Author: Andre Bartke Date: Fri Jun 3 15:06:58 2011 -0300 [media] drivers/media/video: fix memory leak of snd_cx18_init() cxsc is not freed in the error case. Signed-off-by: Andre Bartke Cc: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 7ce338d9dfc432b71db15184ad3ec458c9961164 Author: Hans Petter Selasky Date: Thu May 26 05:06:09 2011 -0300 [media] Correct and add some parameter descriptions >From 70d02ce19f64fae4ceee563501e8462a76e17b91 Mon Sep 17 00:00:00 2001 Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit ed5d11d592e21f00d6f72e1da0dca0ba3f4cd6ee Author: Hans Petter Selasky Date: Thu May 26 04:56:55 2011 -0300 [media] Remove unused definitions which can cause conflict with definitions in usb/ch9.h >From 0dd2949dfeae431ed4ffbd00fd14a10dc3747ad0 Mon Sep 17 00:00:00 2001 Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit 2c7988ab0effa9e41bd9c9db5cb33ddda870ca10 Author: Hans Petter Selasky Date: Thu May 26 04:49:52 2011 -0300 [media] Correct error code from -ENOMEM to -EINVAL. Make sure the return value is set in all cases >From 9b38a5c9878b5e4be2899ae291c4524f5f5fc218 Mon Sep 17 00:00:00 2001 Signed-off-by: Hans Petter Selasky Cc: Sylwester Nawrocki Signed-off-by: Mauro Carvalho Chehab commit 5588dc2b025fd8b2188142b8d59efe562bd57d80 Author: David Härdeman Date: Thu Apr 28 12:13:58 2011 -0300 [media] rc-core: lirc use unsigned int Durations can never be negative, so it makes sense to consistently use unsigned int for LIRC transmission. Contrary to the initial impression, this shouldn't actually change the userspace API. Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit 8a8cc952d3fe0eca3ded22a01d4f7e642d676be0 Author: Sensoray Linux Development Date: Mon Apr 4 14:08:40 2011 -0300 [media] s2255drv: firmware version update, vendor request change removes obsolete comments. updates firmware versions. firmware vendor request simplified. Signed-off-by: Dean Anderson Signed-off-by: Mauro Carvalho Chehab commit a012fb2c9b2cf6fa6be1ee2961df700332d41031 Author: Mauro Carvalho Chehab Date: Thu Jun 9 16:34:29 2011 -0300 [media] DocBook: Don't be noisy at make cleanmediadocs While here, remove the mediaindexdocs from PHONY. Reported-by: Randy Dunlap Signed-off-by: Mauro Carvalho Chehab commit 7a2b66b1bd26d717763985bad401410665fa0672 Author: Mauro Carvalho Chehab Date: Thu Jun 9 16:26:32 2011 -0300 Revert "[media] dvb/audio.h: Remove definition for AUDIO_GET_PTS" Based on those feedback: http://www.spinics.net/lists/linux-media/msg33704.html http://www.spinics.net/lists/linux-media/msg33700.html I'm reverting the removal of this unused ioctl, as it seems that some drivers under development may be using. So, I'll wait until the next merge window before removing those unused ioctls, to give a chance for developers to submit their pending work. This reverts commit db48923da6c528d461b5e764692239eb9c1b7a00. Cc: Andreas Oberritter Cc: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit 84b01c1633497e748d98ca0d100faaca13579148 Author: Mauro Carvalho Chehab Date: Wed Jun 8 16:56:03 2011 -0300 [media] DocBook/video.xml: Document the remaining data structures Now, all data structures are commented. A few ioctls remain undocumented: Error: no ID for constraint linkend: VIDEO_GET_SIZE. Error: no ID for constraint linkend: VIDEO_GET_FRAME_RATE. Error: no ID for constraint linkend: VIDEO_GET_PTS. Error: no ID for constraint linkend: VIDEO_GET_FRAME_COUNT. Error: no ID for constraint linkend: VIDEO_COMMAND. Error: no ID for constraint linkend: VIDEO_TRY_COMMAND. Signed-off-by: Mauro Carvalho Chehab commit dc05e571725a5a609a29bd84bd020263728ed5e4 Author: Mauro Carvalho Chehab Date: Wed Jun 8 15:39:05 2011 -0300 [media] DocBook/video.xml: Fix section references with video.h.xml Make the reference links at video.h.xml to match the ones at video.xml. Signed-off-by: Mauro Carvalho Chehab commit ec77f15caef3f45a6ebc86a569376eb94a94fb03 Author: Mauro Carvalho Chehab Date: Wed Jun 8 15:17:12 2011 -0300 [media] DocBook/Makefile: Remove osd.h header The av7110 uses an OSD API. Such API is not documented at all. Also, the osd.h API uses camelCase and some other weird stuff. Also, dvb-core doesn't recognize it. I don't see any good reason why we should document it. It seems better to just let it as-is. If ever needed, it is probably better to write a different API for dvb-core. Signed-off-by: Mauro Carvalho Chehab commit ca5b2339c8a1311b6475cb679a62380bc22b48e7 Author: Mauro Carvalho Chehab Date: Wed Jun 8 15:08:57 2011 -0300 [media] DocBook/net.xml: Synchronize Network data structure There's no documentation at all for the DVB net API. Still, better to remove a few warnings about the missing symbols. So, add the net data structure inside the net.xml. Now, only the ioctl documentation is missed. Signed-off-by: Mauro Carvalho Chehab commit ab94782213835f90f5def384ee75e171c0bfd100 Author: Mauro Carvalho Chehab Date: Wed Jun 8 14:14:31 2011 -0300 [media] DocBook/demux.xml: Add the remaining data structures to the API spec Still, there are a few ioctl's not documented: Error: no ID for constraint linkend: DMX_GET_PES_PIDS. Error: no ID for constraint linkend: DMX_GET_CAPS. Error: no ID for constraint linkend: DMX_SET_SOURCE. Error: no ID for constraint linkend: DMX_ADD_PID. Error: no ID for constraint linkend: DMX_REMOVE_PID. Signed-off-by: Mauro Carvalho Chehab commit fb029093e7408efa177e80444199746638c7d79d Author: Mauro Carvalho Chehab Date: Wed Jun 8 11:56:57 2011 -0300 [media] DocBook/demux.xml: Fix section references with dmx.h.xml Make the reference links at dmx.h.xml to match the ones at demux.xml. While here, also syncronizes the structures defined inside the API, in order to match the current API. Signed-off-by: Mauro Carvalho Chehab commit cde291dfd7df3f7202078afcf27e9bb21ea76d0c Author: Mauro Carvalho Chehab Date: Wed Jun 8 11:34:31 2011 -0300 [media] DocBook/ca.xml: Describe structure ca_pid This is the remaining missing structure at ca.xml. The ioctl's are still missing through. Signed-off-by: Mauro Carvalho Chehab commit 2b680d1b4e7e0c561d1523d5155212705fcbb10a Author: Mauro Carvalho Chehab Date: Wed Jun 8 11:29:27 2011 -0300 [media] Docbook/ca.xml: match section ID's with the reference links Make sure that both ca.h.xml and ca.xml will match the same names for the sections/links. This way, it is now possible to identify API spec gaps: Error: no ID for constraint linkend: ca-pid. Error: no ID for constraint linkend: ca-pid. Error: no ID for constraint linkend: CA_RESET. Error: no ID for constraint linkend: CA_GET_CAP. Error: no ID for constraint linkend: CA_GET_SLOT_INFO. Error: no ID for constraint linkend: CA_GET_DESCR_INFO. Error: no ID for constraint linkend: CA_GET_MSG. Error: no ID for constraint linkend: CA_SEND_MSG. Error: no ID for constraint linkend: CA_SET_DESCR. Error: no ID for constraint linkend: CA_SET_PID. Basically, in this case, no CA ioctl is described at the specs, and one file structure (ca-pid) is missing. Signed-off-by: Mauro Carvalho Chehab commit fa24198897ff0e8d34876be0e61f9b35d3c0d467 Author: Mauro Carvalho Chehab Date: Wed Jun 8 11:25:26 2011 -0300 [media] dvb/audio.h: Remove definition for AUDIO_GET_PTS While this ioctl is defined inside dvb/audio.h, it is not docummented at the API specs, nor implemented on any driver inside the Linux Kernel. So, it doesn't make sense to keep it here. As this is not used anywere, removing it is not a regression. So, there's no need to use the normal features-to-be-removed process. Signed-off-by: Mauro Carvalho Chehab commit a2eb7c020008d664823323aba9fb428fdccc8ba6 Author: Mauro Carvalho Chehab Date: Wed Jun 8 11:03:10 2011 -0300 [media] DocBook: Document AUDIO_CONTINUE ioctl Although this ioctl is only used at the av7110 driver, it is not described at the API docbook. Yet, AUDIO_PAUSE ioctl description somewhat describes it. Fill the gap by using the information there and by looking inside av7110 implementation. Signed-off-by: Mauro Carvalho Chehab commit 34452432d125a846591523cf4999311c987c0bf4 Author: Mauro Carvalho Chehab Date: Wed Jun 8 10:55:57 2011 -0300 [media] DocBook/audio.xml: synchronize attribute changes Some attributes suffered some changes since DVBv1. Sync them with the current API header files. Signed-off-by: Mauro Carvalho Chehab commit 4cde378b3b7cfc65000deab14bfc1b314cb4075b Author: Mauro Carvalho Chehab Date: Wed Jun 8 10:42:22 2011 -0300 [media] DocBook/audio.xml: match section ID's with the reference links Make sure that both audio.h.xml and audio.xml will match the same names. This way, it is now possible to identify API spec gaps: Error: no ID for constraint linkend: AUDIO_CONTINUE. Error: no ID for constraint linkend: AUDIO_GET_PTS. Error: no ID for constraint linkend: AUDIO_BILINGUAL_CHANNEL_SELECT. While here, fix the cut-and-paste description error on AUDIO_SET_KARAOKE. Signed-off-by: Mauro Carvalho Chehab commit d9d73416edfad05aa5c34255948a12c3860291f3 Author: Mauro Carvalho Chehab Date: Wed Jun 8 10:23:34 2011 -0300 [media] DocBook: Add the other DVB API header files Signed-off-by: Mauro Carvalho Chehab commit 446c18fcfdd1c165e50b18c07e0ac2f4b10e5947 Author: Mauro Carvalho Chehab Date: Tue Jun 7 23:08:19 2011 -0300 [media] DocBook/dvbproperty.xml: Better name the ISDB-T layers In order to improve the DVB index, replace the title to a better name. Signed-off-by: Mauro Carvalho Chehab commit ff74b8ee526c5eb72c01cb2709ac0d14e370d791 Author: Mauro Carvalho Chehab Date: Tue Jun 7 22:13:35 2011 -0300 [media] DocBook/dvbproperty.xml: Add Satellite standards Signed-off-by: Mauro Carvalho Chehab commit 76f9a69aae335c9496c77424dc72416feda83ac5 Author: Mauro Carvalho Chehab Date: Tue Jun 7 22:08:13 2011 -0300 [media] DocBook/dvbproperty.xml: Add ATSC standard Signed-off-by: Mauro Carvalho Chehab commit e7da0ae3c85590045da4163f3f46f2488f4cba37 Author: Mauro Carvalho Chehab Date: Tue Jun 7 22:02:32 2011 -0300 [media] DocBook/dvbproperty.xml: Add Cable standards Signed-off-by: Mauro Carvalho Chehab commit 3272c3ec21a28bad3f852376e48388bae55e0134 Author: Mauro Carvalho Chehab Date: Tue Jun 7 21:40:22 2011 -0300 [media] DocBook: Finish synchronizing the frontend API Remove the remaining: Error: no ID for constraint linkend: With this patch, the dvb frontend API matches the current dvb core implementation. Signed-off-by: Mauro Carvalho Chehab commit 994e262e3e52bf9840f0f079c29696e5ab50057f Author: Mauro Carvalho Chehab Date: Tue Jun 7 20:52:33 2011 -0300 [media] DocBook/dvbproperty.xml: Document the terrestrial delivery systems Instead of repeating duplicate parameters to each delivery system, just add a section for each specific delivery system, showing what's applicable to each case. This helps userspace app developers to know what DVB parameters are applicable to each delivery system. Signed-off-by: Mauro Carvalho Chehab commit df2692a6dd89fc00929a18735b83204b352ebb52 Author: Mauro Carvalho Chehab Date: Tue Jun 7 20:43:25 2011 -0300 [media] DocBook/frontend.xml: Recomend the usage of the new API The old way of setting delivery system parameters were to use an union with specific per-system parameters. However, as newer delivery systems required more data, the structure size weren't enough to fit. So, recomend using the DVBS2API instead. Signed-off-by: Mauro Carvalho Chehab commit 17d8bb061fcf8ba6a56adcf193d7d255966cff79 Author: Mauro Carvalho Chehab Date: Tue Jun 7 20:05:13 2011 -0300 [media] DocBook/dvbproperty.xml: Reorganize the parameters Put the parameters at the sequencial order as they appear inside the frontend.h header. TODO: fix the per-standard section, to reflect the parameters that should actually be used for each transmission system type. Signed-off-by: Mauro Carvalho Chehab commit db8d0ea70572c5f74624115e0d5cd7e34a6ba3c7 Author: Mauro Carvalho Chehab Date: Tue Jun 7 19:48:46 2011 -0300 [media] DocBook/dvbproperty.xml: Use links for all parameters Instead of adding a program listing, just add there all parameters. Signed-off-by: Mauro Carvalho Chehab commit 04a92077d205abdf3827545f8dea4c6521384c4c Author: Mauro Carvalho Chehab Date: Tue Jun 7 19:37:47 2011 -0300 [media] DocBook/dvbproperty.xml: Document the remaining S2API parameters There were lots of DVB S2API parameters that were never documented. Let's add a definition for all of them, based on what's currently used inside the core and the drivers. The description here is not complete nor perfect, so patches improving it are welcome. Signed-off-by: Mauro Carvalho Chehab commit 0be153efb18141162bcaa8ea3de6b94d2d92397e Author: Mauro Carvalho Chehab Date: Tue Jun 7 18:15:19 2011 -0300 [media] DocBook/frontend.xml: Better describe the frontend parameters Update the DVB parameter structs to reflect VSB modulation and improve a few descriptions. Signed-off-by: Mauro Carvalho Chehab commit 6cb77a85aaf317e0b6e513f70eca6ebe34f9cdf0 Author: Mauro Carvalho Chehab Date: Tue Jun 7 17:58:59 2011 -0300 [media] DocBook/frontend.xml: add references for some missing info The frontend.h.xml now references to the main document. However, several references are missed. Links the trivial ones with the corresponding API descriptions. While here, updates the main API to reflect the API improvements. Signed-off-by: Mauro Carvalho Chehab commit 0969ec18346c174a20e9d7e73231efab95c23f86 Author: Mauro Carvalho Chehab Date: Tue Jun 7 17:02:37 2011 -0300 [media] DocBook/frontend.xml: Correlate dvb delivery systems As the DVB API provides two ways to specify the delivery systems, correlate both ways into a table. Signed-off-by: Mauro Carvalho Chehab commit 95e61e01888d207b2ffd1ef709466c5144534121 Author: Mauro Carvalho Chehab Date: Tue Jun 7 16:58:00 2011 -0300 [media] DocBook/frontend.xml: Link DVB S2API parameters Associate the frontend.h DVB S2API parmeters to the corresponding documentation at the spec. Signed-off-by: Mauro Carvalho Chehab commit d5dc2dee5030564ef3228d3a2647d4c25c84fedf Author: Mauro Carvalho Chehab Date: Tue Jun 7 16:17:00 2011 -0300 [media] DocBook/frontend.xml: Better document fe_type_t The fe_type_t documentation was incomplete and not linked to the dvb/frontend.h.xml. Properly document it. Also, drop a note that newer formats are only supported via FE_GET_PROPERTY/FE_GET_SET_PROPERTY ioctls. Signed-off-by: Mauro Carvalho Chehab commit 98a2b60d89ca48c22b77c09306156ccc3c11e939 Author: Mauro Carvalho Chehab Date: Tue Jun 7 14:51:56 2011 -0300 [media] DocBook/Makefile: add references for several dvb structures With this change, it is now possible to discover the gap between the API defined inside include/dvb/frontend.h and the one documented into the specs. Signed-off-by: Mauro Carvalho Chehab commit 157e03f2d30d78bde0b6778560430e425d4ff7e9 Author: Jean-François Moine Date: Fri Jun 3 03:33:41 2011 -0300 [media] v4l: Documentation about the JPGL pixel format The JPG-Light, AKA Pegasus Lossless JPEG, is used in Divio webcams based on NW 800/801/802 chips. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 941830c9278a72e31389eb04cdfc397f66866de0 Author: Mauro Carvalho Chehab Date: Mon Jun 6 16:51:11 2011 -0300 [media] xc4000: make checkpatch.pl happy Solve the ./scripts/checkpatch.pl compliants for the patches that added xc4000 support, including a few changes at dib0700. While here, remove a few printk noise by converting some msgs into debug ones. Cc: Istvan Varga Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 8edeb6eb1ae113b8f25a79e5076c1a1ec93538d0 Author: istvan_v@mailbox.hu Date: Mon Jun 6 13:03:44 2011 -0300 [media] xc4000: removed card_type Removed the use of 'card_type' from the tuner configuration structure, and replaced it with separate parameters to set board-specific configuration. Signed-off-by: Istvan Varga Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 09f4634293f2d48a9619f51b104bef8e6cc6d559 Author: istvan_v@mailbox.hu Date: Mon Jun 6 13:00:17 2011 -0300 [media] xc4000: check firmware version Enabled code to check if the version of the firmware reported by the hardware is correct after uploading it. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 7c8ec47a92107281cd00d5d4c2b7ccfb53143e28 Author: istvan_v@mailbox.hu Date: Mon Jun 6 12:57:43 2011 -0300 [media] dvb-usb/Kconfig: auto-select XC4000 tuner for dib0700 Automatically select the xc4000 module for dib0700 if the tuner selection is not customized. Signed-off-by: Istvan Varga Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 341747bef5dd2e2f56647ba30ea2180752905fa0 Author: istvan_v@mailbox.hu Date: Mon Jun 6 12:54:54 2011 -0300 [media] xc4000: code cleanup Various coding style changes: - removed unused / commented out code - changed C++ style comments to C format - renamed functions and variables that included upper case letters in the name - removed tabs from module parameter descriptions - replaced the use of XC_RESULT_* with standard error codes Signed-off-by: Istvan Varga Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 7db98fe66be035494912b6b2c4e9c1e3abfedfe5 Author: Istvan Varga Date: Sat Jun 4 12:25:19 2011 -0300 [media] xc4000: detect also xc4100 Added code to detect the XC4100 chip, which is presumably an analog-only "value" version of the XC4000. It is not sure, however, if any devices using this have actually been produced and sold, so the patch may be unneeded. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 8f76afe8d737b9ecadc0097941c9ef1ece61af9e Author: Istvan Varga Date: Sat Jun 4 12:21:17 2011 -0300 [media] xc4000: removed redundant tuner reset This patch causes the tuner reset command to be ignored in the firmware code, since this only happens when the BASE/INIT1 firmware is loaded by check_firmware(), and in that case check_firmware() already calls the reset callback before starting to load the firmware. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit e75873c1f80380f190d0270fec566410f59c4829 Author: Istvan Varga Date: Sat Jun 4 12:18:41 2011 -0300 [media] xc4000: xc_tune_channel() cleanup Minor coding changes related to the xc_tune_channel() function. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 818a1776a45c230c4f230c8e4e2d0c7bdf5f8fa3 Author: Istvan Varga Date: Sat Jun 4 12:17:22 2011 -0300 [media] xc4000: implemented analog TV and radio The following patch implements support for analog TV and FM radio. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 923137a4037d1b9f19d175708eeced209dff9320 Author: Istvan Varga Date: Sat Jun 4 12:15:51 2011 -0300 [media] xc4000: added audio_std module parameter The 'audio_std' module parameter makes it possible to fine tune some audio related aspects of the driver, like setting the exact audio standard (NICAM, A2, etc.) to be used for some video standards. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 30f544ec56eefc628e73e23324dc18105ad13012 Author: Istvan Varga Date: Sat Jun 4 12:12:42 2011 -0300 [media] xc4000: setting registers This patch implements setting the registers in xc4000_set_params() and xc4000_set_analog_params(). A new register is defined which enables filtering of the composite video output (this is needed to avoid bad picture quality with some boards). Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit f4312e2fd4ca44e1defad1637d054bbe11a4ade6 Author: Istvan Varga Date: Sat Jun 4 12:08:29 2011 -0300 [media] xc4000: debug message improvements The following patch makes a few minor changes to the printing of debug messages, and reporting the tuner status. The 'debug' module parameter can now be set from 0 to 2 to control the verbosity of debug messages. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 027fd361860e40736c0ad093a8f4194d727afb63 Author: Istvan Varga Date: Sat Jun 4 12:04:51 2011 -0300 [media] xc4000: firmware initialization This patch fixes/cleans up the loading of the firmware file when the driver is loaded and initialized. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 5272f6b1f423d4ce636dc90f190e245897bdb045 Author: Istvan Varga Date: Sat Jun 4 12:03:03 2011 -0300 [media] xc4000: implemented power management The following patch implements the xc4000_sleep() function. The 'no_powerdown' module parameter is now interpreted differently: - 0 uses a device-specific default - 1 disables power management like before - 2 enables power management Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 0b4021321c0536a3368746497686ce56e5bcf3e5 Author: Istvan Varga Date: Fri Jun 3 09:38:04 2011 -0300 [media] xc4000: added card_type This patch adds support for selecting a card type in struct xc4000_config, to allow for implementing some card specific code in the driver. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 595a83f49a7536f43a68cab78098d5ad11d1c51f Author: Istvan Varga Date: Sat Jun 4 11:59:54 2011 -0300 [media] xc4000: check_firmware() cleanup This patch makes the following fixes in check_firmware(): - there is only one BASE and INIT1 firmware for XC4000 - loading SCODE is needed also for FM radio Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit ffce6266c8be9076947462c688ad3a3099c83eeb Author: Istvan Varga Date: Sat Jun 4 11:56:18 2011 -0300 [media] xc4000: simplified load_scode Removed unused code from load_scode() (all SCODE firmwares are assumed to have the HAS_IF bit set). Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 3db9570482f368cd2f62c258802da21667ec6198 Author: Istvan Varga Date: Sat Jun 4 11:52:34 2011 -0300 [media] xc4000: simplified seek_firmware() This patch simplifies the code in seek_firmware(). Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit fa285bc1bf5a2ebe3252523454def096d86a064b Author: Istvan Varga Date: Sat Jun 4 11:48:16 2011 -0300 [media] xc4000: added firmware_name parameter The firmware_name module parameter makes it possible to set the firmware file name. It defaults to "xc4000.fw" if not specified. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 1368ceb266990af58a72cdb0e121eb4ff22bde6f Author: Istvan Varga Date: Fri Jun 3 12:27:30 2011 -0300 [media] xc4000: fixed frequency error The xc_get_frequency_error() function reported the frequency error incorrectly. The data read from the hardware is a signed integer, in 15625 Hz units. The attached patch fixes the bug. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 5614942bb06f5620d0d6eb67bc0268c76c5dd921 Author: Istvan Varga Date: Fri Jun 3 12:23:33 2011 -0300 [media] xc4000: added mutex This patch adds a mutex to xc4000_priv, to protect the driver from being accessed by multiple processes at the same time. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit f0ef7c88ca919912011593d2392a59c2fde04748 Author: Istvan Varga Date: Fri Jun 3 12:17:59 2011 -0300 [media] xc4000: added support for 7 MHz DVB-T The following patch implements support for DVB-T with 7 MHz bandwidth. Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit 4911085fa3342d2ccb04f84c2987305b86785ebf Author: Istvan Varga Date: Fri Jun 3 10:55:24 2011 -0300 [media] xc4000: updated standards table This patch makes the following changes to the standards table: - added 'u16 int_freq' to struct XC_TV_STANDARD (needed for analog TV and radio, 0 for DVB-T) - added new standard for SECAM-D/K video with PAL-D/K audio - the 'int_freq' values are now specified in the table - changed VideoMode for NTSC and PAL-B/G standards Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit fbe4a29f2f6523b8b839debb19baa49461a302be Author: Istvan Varga Date: Fri Jun 3 10:11:48 2011 -0300 [media] xc4000: code cleanup This is the first of a set of patches that update the original xc4000 sources to my modified version. It removes some unused code, and makes a few minor formatting changes. [mchehab@redhat.com: re-add XC_TUNE_ANALOG/XC_TUNE_DIGITAL constants, to avoid compilation breakage] Signed-off-by: Istvan Varga Signed-off-by: Mauro Carvalho Chehab commit e3bb7c607f5ca87030692ad4dab653b4a8d1571a Author: Mauro Carvalho Chehab Date: Thu Jun 2 11:36:56 2011 -0300 [media] xc4000: Fix a few bad whitespaces on it Signed-off-by: Mauro Carvalho Chehab commit 62956cedb5e6932c021d52b80bfbcf8add014be4 Author: Devin Heitmueller Date: Sun Dec 27 18:58:11 2009 -0300 [media] dib0700: remove notes from bringup of PCTV 340e Remove some inline comments I had written from when I was computing the proper dib7000p configuration to work with the xc4000. Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit b6cdb5bea31c86645782950d84745bb2f95ec9ca Author: Devin Heitmueller Date: Sun Dec 27 18:15:14 2009 -0300 [media] xc4000: cleanup dmesg logging Remove some printk() calls added during driver development, and demote some other messages to debug only (to reduce dmesg chatter). Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 980029eb35a6faa076f4b480a72625cd75172f44 Author: Devin Heitmueller Date: Sun Dec 27 17:55:13 2009 -0300 [media] xc4000: rename firmware image filename Give the xc4000 firmware filename a filename that makes more sense for public release. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 4922cec59a1b37d49b3e01577ab2f779a13b3ae6 Author: Devin Heitmueller Date: Sun Dec 27 17:50:43 2009 -0300 [media] xc4000: turn off debug logging by default Don't dump debug into to dmesg by default (something I had enabled during bringup of the xc4000 driver). Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 2df12510f97664b740a94cd7fd816460c55ce29b Author: Devin Heitmueller Date: Sun Dec 27 17:44:31 2009 -0300 [media] dib0700: make PCTV 340e work! Fixup the PLL and AGC configs so that the 340e works (correcting errors I made when I did the original config blindly). Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit ed23db32271997e03ea59d31839a40470a1c434b Author: Devin Heitmueller Date: Mon Oct 5 01:27:14 2009 -0300 [media] xc4000: get rid of hard-coded 8MHz firmware config Remove a hack I had put in to force the firmware to be 8MHz, now setting the firmware properly based on the target standard. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit f1c78d340fc21adb01f89f9bee15c58b533bffd7 Author: Devin Heitmueller Date: Mon Oct 5 00:34:04 2009 -0300 [media] dib0700: fixup PLL config for PCTV 340e Based on a reference trace under Windows, reverse engineer the PLL config. Note that the xtal is not yet setup, and the timf cannot be determined yet because my reference trace doesn't actually achieve a signal lock. Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 799ed11afe7694858584d1ed4e9ae2f9e48142ec Author: Devin Heitmueller Date: Sun Oct 4 23:09:18 2009 -0300 [media] xc4000: handle dib0700 broken i2c stretching It was confirmed by DibCom that i2c stretching is broken in the i2c master on the dib7700. So we need to put a hack into the xc4000 driver to not complain in certain very specific cases where we know i2c stretching occurs. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 8583fc834e704312fa9e7c756244895de55d800a Author: Devin Heitmueller Date: Tue Jul 28 01:16:05 2009 -0300 [media] xc4000: setup dib7000p AGC config for PCTV 340e Setup a proper AGC config for the 340e, based on the Windows USB trace Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit fe8303647640e1183640a9b85cd60c4a981c7b4b Author: Devin Heitmueller Date: Tue Jul 28 00:04:27 2009 -0300 [media] xc4000: use if_khz provided in xc4000_config Remove hard-coded references to 5400, using the value passed in when the xc4000 is attached. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit ee4c3cd67b90cb42143e230485d3aad60768c551 Author: Devin Heitmueller Date: Mon Jul 27 23:51:54 2009 -0300 [media] xc4000: continued cleanup of the firmware loading routine Properly setup the standard firmware loading and scode loading, as well as getting rid of a ton of dead code. Note that I am getting a single i2c error when the standard firmware sets the video standard, but everything else seems to be loading properly now. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit d0962382cf6ca55e5a33413b39a10fe2f56bae78 Author: Devin Heitmueller Date: Sat Jul 25 17:39:54 2009 -0300 [media] xc4000: add code to do standard and scode firmware loading Add code to handle firmware blobs for the standard and scode. Note there appears to be some issue with loading the DTV8 standard firmware, probably related to direct/indirect mode. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit e7490d5962ad7959c0597cd55c97ff7eae3acf82 Author: Devin Heitmueller Date: Wed Jul 22 21:56:37 2009 -0300 [media] xc4000: remove xc5000 firmware loading routine Since we use the xc3028 version of the firmware file parsing routine (which includes support for scodes and separate blobs), we can drop the xc5000 version of the code. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 02dec509825dd5cb9f4bfa0526c75c0a7c20348a Author: Devin Heitmueller Date: Wed Jul 22 21:52:11 2009 -0300 [media] xc4000: remove XREG_BUSY code only supported in xc5000 The xc4000 driver is based on the original xc5000 driver, and while the xc5000 supports the XREG_BUSY register, the xc4000 does not. So remove the code in question. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 6bf60d56b36d7d4d0bdfb2996d56b064923ea541 Author: Devin Heitmueller Date: Wed Jul 22 21:49:28 2009 -0300 [media] xc4000: properly set type for init1 firmware We need to set the firmware type properly in order to locate the init1 firmware. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 31f880e2b99a780a4ee5fb6199e489b62e0a76ec Author: Devin Heitmueller Date: Mon Jul 20 02:15:31 2009 -0300 [media] xc4000: cut over to using xc5000 version for loading i2c sequences The xc3028 version does i2c splitting in a different manner than xc4000 and xc5000, so reuse the xc5000 version of the routine (the key here being that xc4000 expects the first *two* bytes to be the same for splitting transactions. Doing it the xc3028 way was resulting in i2c errors partially through the firmware load. With this change, it would appear that the entire base firmware is being loaded successfully (product id now properly shows 0x0FA0). Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 11091a31fbf7496294795ca72d69db0233857d94 Author: Devin Heitmueller Date: Mon Jul 20 00:54:57 2009 -0300 [media] xc4000: pull in firmware management code from xc3028 Switch over to using the firmware management routines from the tuner-xc2028, since that has support for scodes, etc. This code still requires signficant cleanup, and at this point the base firmware does not load properly (i2c write errors about 300 bytes in). Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 85ec9d7193a0d98e1c2af78d3a2110dd96c6cf02 Author: Devin Heitmueller Date: Mon Jul 20 00:45:25 2009 -0300 [media] dib7000p: setup dev.parent for i2c master built into 7000p We need to set the dev.parent member on the dib7000p on its i2c master, or else calls to request_firmware() will hit an oops in 2.6.31. Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 2750d9c3afe7c4b9a21993d79fe31b8d44bde5bd Author: Devin Heitmueller Date: Mon Jul 20 00:42:33 2009 -0300 [media] dib0700: add a sleep before attempting to detect dib7000p Add a sleep since in some cases the dib7000p wasn't online when being probed. The optimal timing has not yet been determined. Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 59d0c37baadaba10a3966ad28bbf1663d850adf1 Author: Devin Heitmueller Date: Mon Jun 29 21:11:02 2009 -0300 [media] dib0700: successfully connect to xc4000 over i2c for PCTV 340e Use the correct i2c bus to communicate with the tuner, and properly setup the reset GPIO and i2c address. Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 01f16263ad8c53f368575db50ab72a287d7daa75 Author: Devin Heitmueller Date: Wed Jun 24 00:07:01 2009 -0300 [media] dib0700: properly setup GPIOs for PCTV 340e Provide a frontend setup routine for the PCTV 340e which takes into account the specific GPIO setup of the board. Note that this patch does *not* take into account the xc4000 reset pin, which is attached to the dib7000. Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 33fb1681c61456898b986405a13222a913f10a4a Author: Devin Heitmueller Date: Tue Jun 23 22:48:02 2009 -0300 [media] dib0700: add USB id for PCTV 340eSE Add the board profile for the PCTV 340eSE, since that's what I have here for development. [mchehab@redhat.com: rebased on the top of the current tree] Signed-off-by: Devin Heitmueller Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 8d009a0c41475a482aca17d2a9fc8e6965f2fdf9 Author: Davide Ferri Date: Tue Jun 23 22:34:06 2009 -0300 [media] dib0700: add initial code for PCTV 340e by Davide Ferri This is initial code written by Davide Ferri for the PCTV 340e, including a new xc4000 driver. I am checking in all the code unmodified, and making no assertions about its quality (other than confirming it compiles). [mchehab@redhat.com: rebased on the top of the current tree] Signed-off-by: Devin Heitmueller Signed-off-by: Davide Ferri Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 32127363eebdf63be2f375ed94838a4cdb1d6fe0 Author: Johannes Obermaier Date: Thu Jun 2 13:03:41 2011 -0300 [media] mt9v011: Fixed gain calculation The implementation of the gain calculation for this sensor is incorrect. It is only working for the first 127 values. The reason is, that the gain cannot be set directly by writing a value into the gain registers of the sensor. The gain register work this way (see datasheet page 24): bits 0 to 6 are called "initial gain". These are linear. But bits 7 and 8 ("analog multiplicative factors") and bits 9 and 10 ("digital multiplicative factors") work completely different: Each of these bits increase the gain by the factor 2. So if the bits 7-10 are 0011, 0110, 1100 or 0101 for example, the gain from bits 0-6 is multiplied by 4. The order of the bits 7-10 is not important for the resulting gain. (But there are some recommended values for low noise) The current driver doesn't do this correctly: If the current gain is 000 0111 1111 (127) and the gain is increased by 1, you would expect the image to become brighter. But the image is completly dark, because the new gain is 000 1000 0000 (128). This means: Initial gain of 0, multiplied by 2. The result is 0. This patch adds a new function which does the gain calculation and also fixes the same bug for red_balance and blue_balance. Additionally, the driver follows the recommendation from the datasheet, which says, that the gain should always be above 0x0020. Tested-by: Mauro Carvalho Chehab Signed-off-by: Johannes Obermaier Signed-off-by: Mauro Carvalho Chehab commit 590929f32adc3aaa702c287b624a0d0382730088 Author: Johannes Obermaier Date: Thu Jun 2 12:43:14 2011 -0300 [media] mt9v011: Added exposure for mt9v011 There are problems when you use this camera/sensor in a very bright room or outside. The image is completely white, because it is overexposed. The driver uses a default value which is not suitable for all environments. This patch makes it possible to adjust the exposure time by youself. I found out by logging the i2c-data, that the windows driver for this sensor is doing this, too. I tested the camera on a sunny day and after adjusting the exposure time, I was able to see a very good image. Tested-by: Mauro Carvalho Chehab Signed-off-by: Johannes Obermaier Signed-off-by: Mauro Carvalho Chehab commit 1048af2f810b3d08210c600ca3c8e84877edbbc7 Author: Johannes Obermaier Date: Thu Jun 2 12:17:51 2011 -0300 [media] mt9v011: Fixed incorrect value for the first valid column According to the datasheet (page 8), the first optical clear pixel-column is not at position 14. The correct/recommended value is 20. Without this patch there is a dark line on the left side of the image. Tested-by: Mauro Carvalho Chehab Signed-off-by: Johannes Obermaier Signed-off-by: Mauro Carvalho Chehab commit b87f2eddfaa2e74b51978f7c8671f3f4777af3fe Author: David Härdeman Date: Wed Mar 30 11:20:14 2011 -0300 [media] rc-core: fix winbond-cir issues The conversion of winbond-cir to use rc-core seems to have missed a a few bits and pieces which were in my local tree. Kudos to Juan Jesús García de Soria Lucena for noticing. [mchehab@redhat.com: fix two UTF-8 violations] Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit 7eb75715460026c82afd20e42ee51f4b30fe4bae Author: Dan Carpenter Date: Thu May 26 05:55:08 2011 -0300 [media] rc/redrat3: dereferencing null pointer In the original code, if the allocation failed we dereference "rr3" when it was NULL. Acked-by: Jarod Wilson Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit 0528f354cfb98d8df32a76302ec07af1aa29dbd4 Author: Dan Carpenter Date: Thu May 26 05:52:01 2011 -0300 [media] rc: double unlock in rc_register_device() If change_protocol() fails and we goto out_raw, then it calls unlock twice. I noticed that the other time we called change_protocol() we held the &dev->lock, so I changed it to hold it here too. Reviewed-by: Jarod Wilson Acked-by: Jarod Wilson Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit ec05a642140c7c34f7ba1cb8a94be9b1154286ae Author: Andreas Oberritter Date: Thu May 26 07:54:14 2011 -0300 [media] DVB: dvb_frontend: fix dtv_property_dump for DTV_DVBT2_PLP_ID - Add missing entry to array "dtv_cmds". - Set array size to DTV_MAX_COMMAND + 1 to avoid future off-by-ones. Reported-by: Dan Carpenter Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 7f116b3ea908e277132fd68c5ff4c46284ae2d97 Author: Uwe Kleine-König Date: Wed Jun 1 17:19:22 2011 -0300 [media] V4L/videobuf2-memops: use pr_debug for debug messages Otherwise they clutter the dmesg buffer even on a production kernel. Signed-off-by: Uwe Kleine-König Signed-off-by: Mauro Carvalho Chehab commit 147b68cd7e093ea576280a2961734a74ee7e7090 Author: Manoel Pinheiro Date: Sat May 7 03:49:13 2011 -0300 [media] dvb-usb.h function rc5_scan The function "rc5_scan" in "dvb_usb.h" is returning invalid value. The value should be returned "u16" but is returning "u8". See example below in "drivers/media/dvb/dvb-usb/opera1.c": send_key = (send_key & 0xffff) | 0x0100; for (i = 0; i < ARRAY_SIZE(rc_map_opera1_table); i++) { if (rc5_scan(&rc_map_opera1_table[i]) == (send_key & 0xffff)) { *state = REMOTE_KEY_PRESSED; *event = rc_map_opera1_table[i].keycode; opst->last_key_pressed = rc_map_opera1_table[i].keycode; break; } opst->last_key_pressed = 0; } Signed-off-by: Manoel Pinheiro Signed-off-by: Mauro Carvalho Chehab commit 9e8fa0e644a3ccb1b5807e4155c1c7a73793b371 Author: Ondrej Zary Date: Wed Jun 1 16:57:11 2011 -0300 [media] radio-sf16fmr2: convert to generic TEA575x interface Convert radio-sf16fmr2 to use generic TEA575x implementation. Most of the driver code goes away as SF16-FMR2 is basically just a TEA5757 tuner connected to ISA bus. The card can optionally be equipped with PT2254A volume control (equivalent of TC9154AP) - the volume setting is completely reworked (with balance control added) and tested. Signed-off-by: Ondrej Zary Acked-by: Takashi Iwai Signed-off-by: Mauro Carvalho Chehab commit d294093010c86294baaaa414a412ea117bacd8fc Author: Hans Petter Selasky Date: Mon May 23 08:42:40 2011 -0300 [media] cx24113: Don't reuse core macro names The info and err macros are already defined by the USB stack. Rename these macros to avoid macro redefinition warnings. Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit a5bef1d25212107b867f0161fdc2b7bf1b260cbd Author: Hans Petter Selasky Date: Mon May 23 08:40:00 2011 -0300 [media] itd1000: Don't reuse core macro names The dbg, warn and info macros are already defined by the USB stack. Rename these macros to avoid macro redefinition warnings. Refactor lineshift in printouts. Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit f54ba7f199d63cea08b8cc7114cb6c5cd9a042ab Author: Alexey Khoroshilov Date: Tue May 31 17:54:40 2011 -0300 [media] radio-si470x: fix memory leak in si470x_usb_driver_probe() radio->int_in_urb is not deallocated on error paths in si470x_usb_driver_probe(). Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Signed-off-by: Mauro Carvalho Chehab commit fabc6b85ca1d364f4e3fdcf80f80b393a508e771 Author: Joe Perches Date: Sat May 28 14:36:28 2011 -0300 [media] media: Convert vmalloc/memset to vzalloc Signed-off-by: Joe Perches Signed-off-by: Mauro Carvalho Chehab commit fcc8e7d8c0e228cf032de0df049a91d5d2bfd0e9 Author: Mauro Carvalho Chehab Date: Wed Jun 1 13:03:12 2011 -0300 dvb_net: Simplify the code if DVB NET is not defined Signed-off-by: Mauro Carvalho Chehab commit a34ff6cdbb464b3e37f0cbb6b0cff9dab4ee057b Author: Hans Petter Selasky Date: Mon May 23 09:43:35 2011 -0300 [media] Make DVB NET configurable in the kernel Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit 4522e825dbfc19537a08f65719dc3d69c46fe661 Author: Ondrej Zary Date: Mon May 23 09:17:19 2011 -0300 [media] tea575x: convert to control framework Convert tea575x-tuner to use the new V4L2 control framework. Also add ext_init() callback that can be used by a card driver for additional initialization right before registering the video device (for SF16-FMR2). Also embed struct video_device to struct snd_tea575x to simplify the code. Signed-off-by: Ondrej Zary Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 2ef403708880c6e00854fb81bbffb9a4036327e6 Author: Hans Petter Selasky Date: Mon May 23 08:13:06 2011 -0300 [media] Fix compile warning: Dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit 82f7b59cb80679038e8e3a99738cce5e094f69b6 Author: Sakari Ailus Date: Sun May 15 12:33:58 2011 -0300 [media] v4l: Document EACCES in VIDIOC_[GS]_CTRL and VIDIOC_{G, S, TRY}_EXT_CTRLS VIDIOC_S_CTRL and VIDIOC_S_EXT_CTRLS return EACCES when setting a read-only control VIDIOC_TRY_EXT_CTRLS when trying a read-only control and VIDIOC_G_CTRL and VIDIOC_G_EXT_CTRLS when getting a write-only control. Document this. Signed-off-by: Sakari Ailus Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 45f239ab82b2a808103a0fae02594961b09c5c8b Author: Newson Edouard Date: Tue Apr 19 11:54:54 2011 -0300 [media] videobuf_pages_to_sg: sglist[0] length problem On function videobuf_pages_to_sg the statement sg_set_page(&sglist[0], pages[0], PAGE_SIZE - offset, offset) will fail if size is less than PAGE_SIZE. Signed-off-by: Newson Edouard Signed-off-by: Mauro Carvalho Chehab commit 4bbcd849b07259211dfe6d3168e669e89bbd19ea Author: Tejun Heo Date: Tue Feb 15 06:20:12 2011 -0300 [media] cx23885: restore flushes of cx23885_dev work items Signed-off-by: Mauro Carvalho Chehab commit 061d55eb450102408289599ae79b92322d6126e1 Author: Dan Carpenter Date: Wed Nov 24 02:36:57 2010 -0300 [media] saa7164: poll mask set incorrectly list_first_entry() always returns non-null here. I think the intent was to test whether there were any entries in the used list. Signed-off-by: Dan Carpenter Cc: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 050bf0faa833028f30ed3ad6a8fc5e51994dabfe Author: Antti Palosaari Date: Wed May 25 17:25:53 2011 -0300 [media] cxd2820r: correct missing error checks Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 58b0ed25b6e9d6dbf00c30b816e8a2a0fec2bec8 Author: Mauro Carvalho Chehab Date: Wed Jun 1 10:23:53 2011 -0300 [media] Update several cardlists Several cardlist entries are missed. Fix them by running some script magic (about the same scripts we used to have at -hg tree). Signed-off-by: Mauro Carvalho Chehab commit ebaefdb7651383645f17d2d32398914175d1bcdd Author: Mauro Carvalho Chehab Date: Wed Jun 1 10:16:25 2011 -0300 [media] em28xx: use the proper prefix for board names All boards use EM28xxx_BOARD, to identify that the macro refers to a card entry. So: EM2874_LEADERSHIP_ISDBT -> EM2874_BOARD_LEADERSHIP_ISDBT Signed-off-by: Mauro Carvalho Chehab commit 460312ec5aff5e4c12b2e50a2965ed1ee832682a Author: Antti Palosaari Date: Wed May 25 17:03:50 2011 -0300 [media] em28xx: correct PCTV nanoStick T2 290e device name PCTV Systems nanoStick T2 290e => PCTV nanoStick T2 290e Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit ff7b929f04b8e9f2e5d8929e14b10f913021a00c Author: Antti Palosaari Date: Wed May 25 17:00:35 2011 -0300 [media] em28xx: add remote for PCTV nanoStick T2 290e Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit a24ec44801708e67585fa31dd0cc5802010dab31 Author: Antti Palosaari Date: Wed May 25 16:56:37 2011 -0300 [media] em28xx: EM28174 remote support For some reason it repeats rather slowly, around 800ms intervals, two RC5 remotes tested. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 1d44ccb9ea7fc05cae7d76fdb7e1e54c7dd27ef5 Author: Antti Palosaari Date: Wed May 25 12:42:52 2011 -0300 [media] cxd2820r: fix bitfields error: dubious one-bit signed bitfield Reported-by: Dan Carpenter Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit d838f4c318f12785a81e3e073a71ba4bb4ccd8cf Author: Antti Palosaari Date: Wed May 25 12:32:44 2011 -0300 [media] cxd2820r: malloc buffers instead of stack kmalloc I2C buffers Signed-off-by: Antti Palosaari Cc: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit 05c46c05d20d9504d832dc12b2a84e9e0cc9be31 Author: Antti Palosaari Date: Wed May 25 18:30:09 2011 -0300 [media] anysee: style issues, comments, etc Change some info, comments, variables. No functionality changes. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit fea3c39a2eb8401e939b368dd90c03089caa3ed9 Author: Antti Palosaari Date: Wed May 25 18:21:43 2011 -0300 [media] anysee: add support for Anysee E7 PS2 Basically it is just same device as Anysee E7 S2 but made for internal PCI(e) slot and motherboard USB connector. Cc: info@anysee.com Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 8439e0df9cf8e6668d5798aaa7e23ce399b66459 Author: Antti Palosaari Date: Tue May 24 07:57:34 2011 -0300 [media] anysee: add support for Anysee E7 PTC Basically it is just same device as Anysee E7 TC but made for internal PCI(e) slot and motherboard USB connector. Cc: info@anysee.com Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 798ae1501d7a27faf017cc0d78543417c19d7af3 Author: Jean-François Moine Date: Mon May 23 05:38:10 2011 -0300 [media] gspca - ov519: New sensor ov9600 with bridge ovfx2 This sensor was found in a webcam 8020:ef04 (SVC - SVU2-1.3MV PCCam). Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 4266129964b8238526936d723de65b419d8069c6 Author: Mauro Carvalho Chehab Date: Tue May 31 16:27:44 2011 -0300 [media] DocBook: Move all media docbook stuff into its own directory This patch addresses several issues pointed by Randy Dunlap at changeset ece722c: - In the generated index.html file, "media" is listed first, but it should be listed in alphabetical order, not first. - The generated files are (hidden) in .tmpmedia/ - The link from the top-level index.html file to "media" is to media/index.html, but the file is actually in .tmpmedia/media/index.html - Please build docs with and without using "O=builddir" and test that. - Would it be possible for media to have its own Makefile instead of merging into this one? Due to the way cleandocs target works, I had to rename the media DocBook to media_api, otherwise cleandocs would remove the /media directory. Thanks-to: Randy Dunlap Signed-off-by: Mauro Carvalho Chehab commit 04893043ae9ea8aa82b712491ed25ba6c4ffbca3 Author: Mauro Carvalho Chehab Date: Wed May 25 12:24:48 2011 -0300 [media] DocBook: Add rules to auto-generate some media docbook Auto-generate the videodev2.h.xml,frontend.h.xml and the indexes. Some logic at the Makefile helps us to identify when a symbol is missing, like for example: Error: no ID for constraint linkend: V4L2-PIX-FMT-JPGL. Signed-off-by: Mauro Carvalho Chehab commit 597a67e0ba758e3d2239c81fbb648c6e69ec30a2 Merge: 28890d3 510792e Author: Linus Torvalds Date: Wed Jul 27 13:41:51 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: optimize the negative xattr caching xfs: prevent against ioend livelocks in xfs_file_fsync xfs: flag all buffers as metadata xfs: encapsulate a block of debug code commit 28890d3598c352ae065b560e0fded3e79c800ba1 Merge: 91d41fd ed1e621 Author: Linus Torvalds Date: Wed Jul 27 13:23:02 2011 -0700 Merge branch 'nfs-for-3.1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs * 'nfs-for-3.1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (44 commits) NFSv4: Don't use the delegation->inode in nfs_mark_return_delegation() nfs: don't use d_move in nfs_async_rename_done RDMA: Increasing RPCRDMA_MAX_DATA_SEGS SUNRPC: Replace xprt->resend and xprt->sending with a priority queue SUNRPC: Allow caller of rpc_sleep_on() to select priority levels SUNRPC: Support dynamic slot allocation for TCP connections SUNRPC: Clean up the slot table allocation SUNRPC: Initalise the struct xprt upon allocation SUNRPC: Ensure that we grab the XPRT_LOCK before calling xprt_alloc_slot pnfs: simplify pnfs files module autoloading nfs: document nfsv4 sillyrename issues NFS: Convert nfs4_set_ds_client to EXPORT_SYMBOL_GPL SUNRPC: Convert the backchannel exports to EXPORT_SYMBOL_GPL SUNRPC: sunrpc should not explicitly depend on NFS config options NFS: Clean up - simplify the switch to read/write-through-MDS NFS: Move the pnfs write code into pnfs.c NFS: Move the pnfs read code into pnfs.c NFS: Allow the nfs_pageio_descriptor to signal that a re-coalesce is needed NFS: Use the nfs_pageio_descriptor->pg_bsize in the read/write request NFS: Cache rpc_ops in struct nfs_pageio_descriptor ... commit 91d41fdf31f74e6e2e5f3cb018eca4200e36e202 Merge: c1095c6 277c5f2 Author: Linus Torvalds Date: Wed Jul 27 13:21:40 2011 -0700 Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: target: Convert to DIV_ROUND_UP_SECTOR_T usage for sectors / dev_max_sectors kernel.h: Add DIV_ROUND_UP_ULL and DIV_ROUND_UP_SECTOR_T macro usage iscsi-target: Add iSCSI fabric support for target v4.1 iscsi: Add Serial Number Arithmetic LT and GT into iscsi_proto.h iscsi: Use struct scsi_lun in iscsi structs instead of u8[8] iscsi: Resolve iscsi_proto.h naming conflicts with drivers/target/iscsi commit ff95acb6733d41a8d45feb0e18b96df25e610e78 Merge: 02f8c6a 75c195a Author: Chris Mason Date: Wed Jul 27 16:13:10 2011 -0400 Merge branch 'integration' into for-linus commit 75c195a2cac2c3c8366c0b87de2d6814c4f4d638 Author: Chris Mason Date: Wed Jul 27 15:57:44 2011 -0400 Btrfs: make sure reserve_metadata_bytes doesn't leak out strange errors The btrfs transaction code will return any errors that come from reserve_metadata_bytes. We need to make sure we don't return funny things like 1 or EAGAIN. Signed-off-by: Chris Mason commit c1095c6da518b0b64e724f629051fa67655cd8d9 Author: Oleg Nesterov Date: Wed Jul 27 12:49:44 2011 -0700 signals: sys_ssetmask/sys_rt_sigsuspend should use set_current_blocked() sys_ssetmask(), sys_rt_sigsuspend() and compat_sys_rt_sigsuspend() change ->blocked directly. This is not correct, see the changelog in e6fa16ab "signal: sigprocmask() should do retarget_shared_pending()" Change them to use set_current_blocked(). Another change is that now we are doing ->saved_sigmask = ->blocked lockless, it doesn't make any sense to do this under ->siglock. Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 678624e401b0b7747762b5223fb23f86dcdacc93 Author: Stephen Rothwell Date: Wed Jul 27 12:49:44 2011 -0700 sparc: rename atomic_add_unless Should have been done in commit 1af08a1407f4 ("This is in preparation for more generic atomic"). Signed-off-by: Stephen Rothwell Cc: Arun Sharma Cc: David Miller Cc: "Hans-Christian Egtvedt" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09570f914914d2beb0db29c5a9c7344934f2fa8c Author: David Howells Date: Wed Jul 27 21:47:03 2011 +0300 proc: make struct proc_dir_entry::name a terminal array rather than a pointer Since __proc_create() appends the name it is given to the end of the PDE structure that it allocates, there isn't a need to store a name pointer. Instead we can just replace the name pointer with a terminal char array of _unspecified_ length. The compiler will simply append the string to statically defined variables of PDE type overlapping any hole at the end of the structure and, unlike specifying an explicitly _zero_ length array, won't give a warning if you try to statically initialise it with a string of more than zero length. Also, whilst we're at it: (1) Move namelen to end just prior to name and reduce it to a single byte (name shouldn't be longer than NAME_MAX). (2) Move pde_unload_lock two places further on so that if it's four bytes in size on a 64-bit machine, it won't cause an unused hole in the PDE struct. Signed-off-by: David Howells Signed-off-by: Alexey Dobriyan Signed-off-by: Linus Torvalds commit 8d34e6d3ec0393a286569587fbd9675abd258d93 Author: Andy Whitcroft Date: Wed Jul 27 17:48:41 2011 +0100 sound: oss: rename local change_bits to avoid powerpc bitsops.h definition This collides with powerpc exported functions from bitops.h. Rename the local copy in the oss soundblaster mixer and ad1848 driver. Signed-off-by: Andy Whitcroft Signed-off-by: Takashi Iwai commit 2cf8572dac62cc2ff7e995173e95b6c694401b3f Author: Chris Mason Date: Tue Jul 26 15:35:09 2011 -0400 Btrfs: use the commit_root for reading free_space_inode crcs Now that we are using regular file crcs for the free space cache, we can deadlock if we try to read the free_space_inode while we are updating the crc tree. This commit fixes things by using the commit_root to read the crcs. This is safe because we the free space cache file would already be loaded if that block group had been changed in the current transaction. Signed-off-by: Chris Mason commit 19b6caf4acbf065dc96b47741d99f1b87243c468 Author: Chris Mason Date: Mon Jul 25 06:50:50 2011 -0400 Btrfs: reduce extent_state lock contention for metadata For metadata buffers that don't straddle pages (all of them), btrfs can safely use the page uptodate bits and extent_buffer uptodate bit instead of needing to use the extent_state tree. This greatly reduces contention on the state tree lock. Signed-off-by: Chris Mason commit 31533fb263928c93a34cda41b66a6e83ade5c766 Author: Chris Mason Date: Tue Jul 26 16:01:59 2011 -0400 Btrfs: remove lockdep magic from btrfs_next_leaf Before the reader/writer locks, btrfs_next_leaf needed to keep the path blocking to avoid making lockdep upset. Now that btrfs_next_leaf only takes read locks, this isn't required. Signed-off-by: Chris Mason commit 85d4e461117b40eb10722f774566b19bd5e77879 Author: Chris Mason Date: Tue Jul 26 16:11:19 2011 -0400 Btrfs: make a lockdep class for each root This patch was originally from Tejun Heo. lockdep complains about the btrfs locking because we sometimes take btree locks from two different trees at the same time. The current classes are based only on level in the btree, which isn't enough information for lockdep to figure out if the lock is safe. This patch makes a class for each type of tree, and lumps all the FS trees that actually have files and directories into the same class. Signed-off-by: Chris Mason commit bd681513fa6f2ff29aa391f01e413a2d1c59fd77 Author: Chris Mason Date: Sat Jul 16 15:23:14 2011 -0400 Btrfs: switch the btrfs tree locks to reader/writer The btrfs metadata btree is the source of significant lock contention, especially in the root node. This commit changes our locking to use a reader/writer lock. The lock is built on top of rw spinlocks, and it extends the lock tracking to remember if we have a read lock or a write lock when we go to blocking. Atomics count the number of blocking readers or writers at any given time. It removes all of the adaptive spinning from the old code and uses only the spinning/blocking hints inside of btrfs to decide when it should continue spinning. In read heavy workloads this is dramatically faster. In write heavy workloads we're still faster because of less contention on the root node lock. We suffer slightly in dbench because we schedule more often during write locks, but all other benchmarks so far are improved. Signed-off-by: Chris Mason commit 81317fdeddcef259b6ecf7b5c0d04caa167c6b54 Author: Josef Bacik Date: Sun Jul 24 15:45:34 2011 -0400 Btrfs: fix deadlock when throttling transactions Hit this nice little deadlock. What happens is this __btrfs_end_transaction with throttle set, --use_count so it equals 0 btrfs_commit_transaction btrfs_end_transaction --use_count so now its -1 <== BAD we just return and wait on the transaction This is bad because we just return after our use_count is -1 and don't let go of our num_writer count on the transaction, so the guy committing the transaction just sits there forever. Fix this by inc'ing our use_count if we're going to call commit_transaction so that if we call btrfs_end_transaction it's valid. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Chris Mason commit a65917156e345946dbde3d7effd28124c6d6a8c2 Author: Chris Mason Date: Tue Jul 19 12:04:14 2011 -0400 Btrfs: stop using highmem for extent_buffers The extent_buffers have a very complex interface where we use HIGHMEM for metadata and try to cache a kmap mapping to access the memory. The next commit adds reader/writer locks, and concurrent use of this kmap cache would make it even more complex. This commit drops the ability to use HIGHMEM with extent buffers, and rips out all of the related code. Signed-off-by: Chris Mason commit 199c36eaa95077a47ae1bc55532fc0fbeb80cc95 Author: Miao Xie Date: Fri Jul 15 10:34:36 2011 +0000 Btrfs: fix BUG_ON() caused by ENOSPC when relocating space When we balanced the chunks across the devices, BUG_ON() in __finish_chunk_alloc() was triggered. ------------[ cut here ]------------ kernel BUG at fs/btrfs/volumes.c:2568! [SNIP] Call Trace: [] btrfs_alloc_chunk+0x8e/0xa0 [btrfs] [] do_chunk_alloc+0x330/0x3a0 [btrfs] [] btrfs_reserve_extent+0xb4/0x1f0 [btrfs] [] btrfs_alloc_free_block+0xdb/0x350 [btrfs] [] ? read_extent_buffer+0xd8/0x1d0 [btrfs] [] __btrfs_cow_block+0x14d/0x5e0 [btrfs] [] ? read_block_for_search+0x14d/0x4d0 [btrfs] [] btrfs_cow_block+0x10b/0x240 [btrfs] [] btrfs_search_slot+0x49e/0x7a0 [btrfs] [] btrfs_insert_empty_items+0x8d/0xf0 [btrfs] [] insert_with_overflow+0x43/0x110 [btrfs] [] btrfs_insert_dir_item+0xcd/0x1f0 [btrfs] [] ? map_extent_buffer+0xb0/0xc0 [btrfs] [] ? rb_insert_color+0x9d/0x160 [] ? inode_tree_add+0xf0/0x150 [btrfs] [] btrfs_add_link+0xc1/0x1c0 [btrfs] [] ? security_inode_init_security+0x1c/0x30 [] ? btrfs_init_acl+0x4a/0x180 [btrfs] [] btrfs_add_nondir+0x2f/0x70 [btrfs] [] ? btrfs_init_inode_security+0x46/0x60 [btrfs] [] btrfs_create+0x150/0x1d0 [btrfs] [] ? generic_permission+0x23/0xb0 [] vfs_create+0xa5/0xc0 [] do_last+0x5fe/0x880 [] path_openat+0xcd/0x3d0 [] do_filp_open+0x49/0xa0 [] ? alloc_fd+0x95/0x160 [] do_sys_open+0x107/0x1e0 [] ? audit_syscall_entry+0x1bf/0x1f0 [] sys_open+0x20/0x30 [] system_call_fastpath+0x16/0x1b [SNIP] RIP [] __finish_chunk_alloc+0x20a/0x220 [btrfs] The reason is: Task1 Space balance task do_chunk_alloc() __finish_chunk_alloc() update device info in the chunk tree alloc system metadata block relocate system metadata block group set system metadata block group readonly, This block group is the only one that can allocate space. So there is no free space that can be allocated now. find no space and don't try to alloc new chunk, and then return ENOSPC BUG_ON() in __finish_chunk_alloc() was triggered. Fix this bug by allocating a new system metadata chunk before relocating the old one if we find there is no free space which can be allocated after setting the old block group to be read-only. Reported-by: Tsutomu Itoh Signed-off-by: Miao Xie Tested-by: Tsutomu Itoh Signed-off-by: Chris Mason commit f7aaa06bff6f5fe049ce9723267e1639c2c3d8b5 Author: Josef Bacik Date: Fri Jul 15 21:26:38 2011 +0000 Btrfs: tag pages for writeback in sync Everybody else does this, we need to do it too. If we're syncing, we need to tag the pages we're going to write for writeback so we don't end up writing the same stuff over and over again if somebody is constantly redirtying our file. This will keep us from having latencies with heavy sync workloads. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Chris Mason commit 9e0baf60dea69f31ac3b1adeb35b03b02a53e8e1 Author: Josef Bacik Date: Fri Jul 15 15:16:44 2011 +0000 Btrfs: fix enospc problems with delalloc So I had this brilliant idea to use atomic counters for outstanding and reserved extents, but this turned out to be a bad idea. Consider this where we have 1 outstanding extent and 1 reserved extent Reserver Releaser atomic_dec(outstanding) now 0 atomic_read(outstanding)+1 get 1 atomic_read(reserved) get 1 don't actually reserve anything because they are the same atomic_cmpxchg(reserved, 1, 0) atomic_inc(outstanding) atomic_add(0, reserved) free reserved space for 1 extent Then the reserver now has no actual space reserved for it, and when it goes to finish the ordered IO it won't have enough space to do it's allocation and you get those lovely warnings. Signed-off-by: Josef Bacik Signed-off-by: Chris Mason commit a5991428064e98c7367fe1c1686ea6a23fb6a4b3 Author: Josef Bacik Date: Fri Jul 15 16:01:03 2011 +0000 Btrfs: don't flush delalloc arbitrarily Kill the check to see if we have 512mb of reserved space in delalloc and shrink_delalloc if we do. This causes unexpected latencies and we have other logic to see if we need to throttle. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Chris Mason commit a94733d0bc630edaedc6ca156752dd5a7cb82521 Author: Josef Bacik Date: Mon Jul 11 10:47:06 2011 -0400 Btrfs: use find_or_create_page instead of grab_cache_page grab_cache_page will use mapping_gfp_mask(), which for all inodes is set to GFP_HIGHUSER_MOVABLE. So instead use find_or_create_page in all cases where we need GFP_NOFS so we don't deadlock. Thanks, Signed-off-by: Josef Bacik commit bab39bf998133510f2dad08158006197ec0dabea Author: Josef Bacik Date: Thu Jun 30 14:42:28 2011 -0400 Btrfs: use a worker thread to do caching A user reported a deadlock when copying a bunch of files. This is because they were low on memory and kthreadd got hung up trying to migrate pages for an allocation when starting the caching kthread. The page was locked by the person starting the caching kthread. To fix this we just need to use the async thread stuff so that the threads are already created and we don't have to worry about deadlocks. Thanks, Reported-by: Roman Mamedov Signed-off-by: Josef Bacik commit 5fd00b031530cc476240f654c078c930f1dcd6ea Merge: 333c066 3c2c226 Author: Linus Torvalds Date: Wed Jul 27 09:26:39 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6: jfs: clean up some compiler warnings commit 333c066bb76f1f270ca77f16afe198e54e352c83 Merge: 7562343 1923703 Author: Linus Torvalds Date: Wed Jul 27 09:26:22 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes: GFS2: Fix mount hang caused by certain access pattern to sysfs files commit 75623437167d9d1ef14acaf6b3fb4ccd38fcbc84 Merge: 70a3eff 636f785 Author: Linus Torvalds Date: Wed Jul 27 09:25:15 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (22 commits) ALSA: hda - Cirrus Logic CS421x support ALSA: Make pcm.h self-contained ALSA: hda - Allow codec-specific set_power_state ops ALSA: hda - Add post_suspend patch ops ALSA: hda - Make CONFIG_SND_HDA_POWER_SAVE depending on CONFIG_PM ALSA: hda - Make sure mute led reflects master mute state ALSA: hda - Fix invalid mute led state on resume of IDT codecs ASoC: Revert "ASoC: SAMSUNG: Add I2S0 internal dma driver" ALSA: hda - Add support of the 4 internal speakers on certain HP laptops ALSA: Make snd_pcm_debug_name usable outside pcm_lib ALSA: hda - Fix DAC filling for multi-connection pins in Realtek parser ASoC: dapm - Add methods to retrieve snd_card and soc_card from dapm context. ASoC: SAMSUNG: Add I2S0 internal dma driver ASoC: SAMSUNG: Modify I2S driver to support idma ASoC: davinci: add missing break statement ASoC: davinci: fix codec start and stop functions ASoC: dapm - add DAPM macro for external enum widgets ASoC: Acknowledge WM8962 interrupts before acting on them ASoC: sgtl5000: guide user when regulator support is needed ASoC: sgtl5000: refactor registering internal ldo ... commit 70a3eff5768350c0313a9ae70a15da113171d0ab Merge: 9ed3689 aa7eb8e Author: Linus Torvalds Date: Wed Jul 27 09:24:56 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (53 commits) Input: synaptics - fix reporting of min coordinates Input: tegra-kbc - enable key autorepeat Input: kxtj9 - fix locking typo in kxtj9_set_poll() Input: kxtj9 - fix bug in probe() Input: intel-mid-touch - remove pointless checking for variable 'found' Input: hp_sdc - staticize hp_sdc_kicker() Input: pmic8xxx-keypad - fix a leak of the IRQ during init failure Input: cy8ctmg110_ts - set reset_pin and irq_pin from platform data Input: cy8ctmg110_ts - constify i2c_device_id table Input: cy8ctmg110_ts - fix checking return value of i2c_master_send Input: lifebook - make dmi callback functions return 1 Input: atkbd - make dmi callback functions return 1 Input: gpio_keys - switch to using SIMPLE_DEV_PM_OPS Input: gpio_keys - add support for device-tree platform data Input: aiptek - remove double define Input: synaptics - set minimum coordinates as reported by firmware Input: synaptics - process button bits in AGM packets Input: synaptics - rename set_slot to be more descriptive Input: synaptics - fuzz position for touchpad with reduced filtering Input: synaptics - set resolution for MT_POSITION_X/Y axes ... commit 9ed3689bdceb0064ee6faf0e76f6467122794970 Merge: 8aae36c 3639229 Author: Linus Torvalds Date: Wed Jul 27 09:24:20 2011 -0700 Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblaze * 'next' of git://git.monstr.eu/linux-2.6-microblaze: microblaze: Do not show error message for 32 interrupt lines Revert "microblaze: PCI fix typo fault in of_node pointer moving into pci_bus" microblaze: PCI fix typo fault in of_node pointer moving into pci_bus microblaze: Add support for early console on mdm microblaze: Simplify early console binding from DT microblaze: Get early printk console earlier microblaze: Standardise cpuinfo output for cache policy microblaze: Unprivileged stream instruction awareness microblaze: trivial: Fix typo fault microblaze: exec: Remove redundant set_fs(USER_DS) microblaze: Remove duplicated prototype of start_thread() microblaze: Fix unaligned value saving to the stack for system with MMU microblaze/irqs: Do not trace arch_local_{*,irq_*} functions commit 8aae36cdf12313cd9cc0e4799fe1ea64d3c623f3 Author: Daniel Morsing Date: Wed Jul 27 13:53:28 2011 +0200 staging: brcm80211: Fix double include introduced by bad merge A merge with Linus' tree added a double include of linux/interrupt.h. Fix by removing one of the includes. Signed-off-by: Daniel Morsing Signed-off-by: Linus Torvalds commit 885f24e152d2b85569d33a1679cf47db56172b9c Author: Uwe Kleine-König Date: Tue Jul 26 10:15:59 2011 +0200 ARM: tegra: only select MACH_HAS_SND_SOC_TEGRA_WM8903 if SND_SOC This fixes: warning: (MACH_HARMONY && MACH_KAEN && MACH_SEABOARD) selects MACH_HAS_SND_SOC_TEGRA_WM8903 which has unmet direct dependencies (SOUND && !M68K && SND && SND_SOC) Signed-off-by: Uwe Kleine-König Acked-by: Stephen Warren Acked-By: Colin Cross Signed-off-by: Arnd Bergmann commit 1ae105aa7416087f2920c35c3cd16831d0d09c9c Merge: 02f8c6a 5a42fb9 Author: Vinod Koul Date: Wed Jul 27 20:43:21 2011 +0530 Merge branch 'next' into for-linus-3.0 commit 5a42fb93e6a33224774786691027ef2d9795c245 Author: Russell King - ARM Linux Date: Tue Jul 26 14:25:10 2011 +0100 Improve slave/cyclic DMA engine documentation Improve the documentation for the slave and cyclic DMA engine support reformatting it for easier reading, adding further APIs, splitting it into five steps, and including references to the documentation in dmaengine.h. Signed-off-by: Russell King [Fixed the index title to reflect new changes] Signed-off-by: Vinod Koul commit c48a8fb0d31d6147d8d76b8e2ad7f51a2fbb5c4d Author: Takashi Iwai Date: Wed Jul 27 16:41:57 2011 +0200 ALSA: hda - Fix duplicated DAC assignments for Realtek Copying hp_pins and speaker_pins from line_out_pins may confuse the parser, and it can lead to duplicated initializations for the same pin with a wrong DAC assignment. The problem appears in 3.0 kernel code. Cc: (for 3.0) Signed-off-by: Takashi Iwai commit ae6ff61e43fe4f348a7f764ff0c13fb4240da7b8 Author: Dan Carpenter Date: Wed Jul 27 15:02:26 2011 +0300 ALSA: asihpi - off by one in asihpi_hpi_ioctl() "adapter" is used as an array index in the adapters[] array so the off by one would make us read past the end. 1c073b67979 "ALSA: asihpi - Remove spurious adapter index check" reverted Dan Rosenberg's check that would have prevented the overflow here. Signed-off-by: Dan Carpenter Signed-off-by: Takashi Iwai commit 60a6a8425a84fa46a3831ce79197640b8224311b Author: Takashi Iwai Date: Wed Jul 27 14:01:24 2011 +0200 ALSA: hda - Fix Oops with Realtek quirks with NULL adc_nids Somce quirk models don't set adc_nids but let the parser filling it. But the recent code has unnecessary NULL-checks of spec->input_mux, and it resulted in NULL dereferences. This patch fixes that regression. Reported-and-tested-by: Oliver Neukum Signed-off-by: Takashi Iwai commit f170c684b55cb8d3bab55b1fb8fa812778d551f2 Author: Julia Lawall Date: Mon Jul 11 14:08:25 2011 -0700 [SCSI] ipr: reorder error handling code to include iounmap The out_msi_disable label should be before cleanup_nomem to additionally benefit from the call to iounmap. Subsequent gotos are adjusted to go to out_msi_disable instead of cleanup_nomem, which now follows it. This is safe because pci_disable_msi does nothing if pci_enable_msi was not called. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r@ expression e1,e2; statement S; @@ e1 = pci_ioremap_bar(...); ... when != e1 = e2 when != iounmap(e1) when any ( if (<+...e1...+>) S | if(...) { ... return 0; } | if (...) { ... when != iounmap(e1) when != if (...) { ... iounmap(e1) ... } * return ...; } else S ) // Signed-off-by: Julia Lawall Acked-by: Brian King Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit b5b515445f4f5a905c5dd27e6e682868ccd6c09d Author: Dan Rosenberg Date: Mon Jul 11 14:08:23 2011 -0700 [SCSI] pmcraid: reject negative request size There's a code path in pmcraid that can be reached via device ioctl that causes all sorts of ugliness, including heap corruption or triggering the OOM killer due to consecutive allocation of large numbers of pages. First, the user can call pmcraid_chr_ioctl(), with a type PMCRAID_PASSTHROUGH_IOCTL. This calls through to pmcraid_ioctl_passthrough(). Next, a pmcraid_passthrough_ioctl_buffer is copied in, and the request_size variable is set to buffer->ioarcb.data_transfer_length, which is an arbitrary 32-bit signed value provided by the user. If a negative value is provided here, bad things can happen. For example, pmcraid_build_passthrough_ioadls() is called with this request_size, which immediately calls pmcraid_alloc_sglist() with a negative size. The resulting math on allocating a scatter list can result in an overflow in the kzalloc() call (if num_elem is 0, the sglist will be smaller than expected), or if num_elem is unexpectedly large the subsequent loop will call alloc_pages() repeatedly, a high number of pages will be allocated and the OOM killer might be invoked. It looks like preventing this value from being negative in pmcraid_ioctl_passthrough() would be sufficient. Signed-off-by: Dan Rosenberg Cc: Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 17dd759c67f21e34f2156abcf415e1f60605a188 Author: Herbert Xu Date: Wed Jul 27 06:16:28 2011 -0700 gro: Only reset frag0 when skb can be pulled Currently skb_gro_header_slow unconditionally resets frag0 and frag0_len. However, when we can't pull on the skb this leaves the GRO fields in an inconsistent state. This patch fixes this by only resetting those fields after the pskb_may_pull test. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 5911e963d3718e306bcac387b83e259aa4228896 Author: Luben Tuikov Date: Tue Jul 26 23:10:48 2011 -0700 [SCSI] libsas: remove expander from dev list on error If expander discovery fails (sas_discover_expander()), remove the expander from the port device list (sas_ex_discover_expander()), before freeing it. Else the list is corrupted and, e.g., when we attempt to send SMP commands to other devices, the kernel oopses. Signed-off-by: Luben Tuikov Cc: stable@kernel.org Reviewed-by: Jack Wang Signed-off-by: James Bottomley commit e17035851ab8417bda890ab1e77f5ca121bbaa0b Author: adam radford Date: Tue Jul 26 15:43:01 2011 -0700 [SCSI] megaraid_sas Version to 5.40-rc1 and Changelog update Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 4bcde509a8fe664f2e688647d8427b6aedaa89b7 Author: adam radford Date: Tue Jul 26 15:42:52 2011 -0700 [SCSI] megaraid_sas: Add .change_queue_depth support Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit db21b6f41bf5a9ce335ced4b5feaa0ad04327003 Author: adam radford Date: Tue Jul 26 16:16:40 2011 -0700 [SCSI] megaraid_sas: Fix FastPath I/O to work on degraded raid 1 Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit b252f4c7c39cc43c1a34c68951f98d7391a1a103 Author: Bhanu Prakash Gollapudi Date: Tue Jul 26 14:51:40 2011 -0700 [SCSI] bnx2fc: Enable REC & CONF support for the session Based on PRLI response, identify if the target is FCP-2 (seq level error recovery) capable, and appropriately set the corresponding CONF, REC flags when offloading the session. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit aea71a024914e8b5b8bed31256dae42195a0a207 Author: Bhanu Prakash Gollapudi Date: Tue Jul 26 14:51:39 2011 -0700 [SCSI] bnx2fc: Introduce interface structure for each vlan interface Currently, bnx2fc has a hba structure that can work with only a single vlan interface. When there is a change in vlan id, it does not have the capability to switch to different vlan interface. To solve this problem, a new structure called 'interface' has been introduced, and each hba can now have multiple interfaces, one per vlan id. Most of the patch is a moving the interface specific fields from hba to the interface structure, and appropriately modifying the dereferences. A list of interfaces (if_list) is maintained along with adapter list. During a create call, the interface structure is allocated and added to if_list and deleted & freed on a destroy call. Link events are propagated to all interfaces belonging to the hba. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit f6e76055ba778c56716ba79e106db28297775e87 Author: Stephen M. Cameron Date: Tue Jul 26 11:08:52 2011 -0500 [SCSI] hpsa: retry commands completing with status of UNSOLICITED_ABORT In a shared SAS setup, target devices may be reset by one of several hosts, and outstanding commands on that device will be completed to corresponding hosts with status of UNSOLICITED_ABORT. Such commands should be retried instead of being treated as i/o errors. Also fixed a nearby spelling error. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit fec62c368b9c8b05d5124ca6c3b8336b537f26f3 Author: Stephen M. Cameron Date: Thu Jul 21 13:16:05 2011 -0500 [SCSI] hpsa: do not attempt to read from a write-only register Most smartarrays tolerate it, but a few new ones don't. Without this change some newer Smart Arrays will lock up and i/o will grind to a halt. Signed-off-by: Stephen M. Cameron Cc: stable@kernel.org Signed-off-by: James Bottomley commit 8ead0bd175848729fc25415b840068e40b2998ad Author: James Smart Date: Fri Jul 22 18:38:16 2011 -0400 [SCSI] lpfc 8.3.25: Change driver version to 8.3.25 Change driver version to 8.3.25 Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 7d791df730844932feeac3bbf3ac08b510682174 Author: James Smart Date: Fri Jul 22 18:37:52 2011 -0400 [SCSI] lpfc 8.3.25: Add FCF priority failover functionality This patch implements a new FCF failover policy for the lpfc driver. It allows the driver to choose which FCF to failover to based on the FCF priority. This patch also introduces a new sysfs parameter (fcf_failover_policy) to allow the user to choose which FCF failover policy to use. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit b76f2dc91c0fff7a66616affdc039dc2e4b7ff98 Author: James Smart Date: Fri Jul 22 18:37:42 2011 -0400 [SCSI] lpfc 8.3.25: Enhancements to Debug infrastructure Enhancements to Debug infrastructure - debugfs additions for new hardware. - Correct stack overflow in lpfc_debugfs_dumpHBASlim_data() - Correct warning on uninitialized reg_val in lpfc_idiag_drbacc_write() - Separated the iDiag command for capturing mailbox commands for generic issue mailbox command entry point and for BSG multi-buffer handling. - Added capturing dumping capabiliy of mailbox command and external buffer for the completion of the mailbox command so that the outcome can be examined. - Changed all the iDiag command structure data array indexing introduced so far with properly defined macros. - Added SLI4 device PCI BAR memory mapped register read/browse, write-by- value, set-bit, and clear-bit methods for both interface type 0 and interface type 2. - Corrected warnings on mbxstatus being uninitialized in error paths in lpfc_bsg.c Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 0a96e9754d6c4a2a31e50ee6c6e36ec13f80bc25 Author: James Smart Date: Fri Jul 22 18:37:28 2011 -0400 [SCSI] lpfc 8.3.25: PCI and SR-IOV Fixes PCI and SR-IOV Fixes - Call pci_save_state after the pci_restore_state completes. - After calling pci_enable_pcie_error_reporting() and checking the return value for logging messages from rc, reset rc to 0 to it will not later be interpreted for error. - Read PCI config space SR-IOV capability to get the number of VFs supported. - Check for the PF's supported number of VFs before invoking PCI enable sriov API call and log error message that user requested number of VFs is beyond the PF capability if such request is passed in. - Added check for Physical function with Virtual Functions attached. If so, first disable all the VFs before proceeding to device reset. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 5248a7498e5f6f3d6d276080466946f82f0ea56a Author: James Smart Date: Fri Jul 22 18:37:06 2011 -0400 [SCSI] lpfc 8.3.25: Fabric and Target Discovery Fixes Fabric and Target Discovery Fixes - Clear FC_VPORT_NEEDS_INIT_VPI flag during completion of REG_VFI mailbox command. - Prevent SLI3 Code from unregistering the physical VPI. - Add an else clause to the code that checks and sets sp->cmn.request_multiple_Nport to clear the bit. - Remove a redundant mbox free. - Modified lpfc_sli4_async_fip_evt to pass in physical VPI toi lpfc_find_vport_by_vpid function. - Modified lpfc_find_vport_by_vpid to translate physical VPI to logical VPI before comparing with vport VPI. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 7851fe2c7f294d0beccf4c3d6af52e8247b89f00 Author: James Smart Date: Fri Jul 22 18:36:52 2011 -0400 [SCSI] lpfc 8.3.25: Adapter Interface fixes and changes Adapter Interface fixes and changes - Modify the macro field from lpfc_init_vpi_vpi to lpfc_init_vfi_vpi - Add the new CQE_CODE_RECEIVE_V1 CQE Code, add code in the driver to handle the new Code the same as the CQE_CODE_RECEIVE code except that there are two new checks for this code that will cause the driver to use the new V1 macros for rq_id and fcf_id. - Fix a bug in lpfc_prep_seq() where the size out of the first CQE was ONLY being used, even though multiple dmabufs make up the sequence, each have their own CQE with potentially different sizes. - Fix bug in lpfc_bsg_ct_unsol_event() where the ulpContext and ulpWord[3] fields of the XMIT_SEQUENCE64_CX IOCB were being calculated incorrectly. - Do physical to logical translation before indexing into the active XRI array. - Populate physical vpi in the iocb data structure. - Put the current accumulated total in each IOCB in the chain as we are walking thru then. The last IOCB in the chain should have the total length of the sequence. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 88a2cfbb8bf3802ca5a90c7d1567a1e542e6ef0c Author: James Smart Date: Fri Jul 22 18:36:33 2011 -0400 [SCSI] lpfc 8.3.25: Miscellaneous Bug fixes and code cleanup Miscellaneous Bug fixes and code cleanup - Fix 16G link speed reporting by adding check for 16G check. - Change the check and enforcement of MAILBOX_EXT_SIZE (2048B) to the check and enforcement of BSG_MBOX_SIZE - sizeof(MAILBOX_t) (3840B). - Instead of waiting for a fixed amount of time after performing firmware reset, the driver shall wait for the Lancer SLIPORT_STATUS register for the readiness of the firmware for bring up. - Add logging to indicate when dynamic parameters are changed. - Add revision and date to the firmware image format. - Use revision instead of rev_name to check firmware image version. - Update temporary offset after memcopy is complete for firmware update. - Consolidated the use of the macros to get rid of duplicated register offset definitions. - Removed the unused second parameter in routine lpfc_bsg_diag_mode_enter() - Enable debugfs when debugfs is enabled. - Update function comments for lpfc_sli4_alloc_xri and lpfc_sli4_init_rpi_hdrs. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 7c56b9fd3b6d2d933075d12abee67ceb7c90d04a Author: James Smart Date: Fri Jul 22 18:36:25 2011 -0400 [SCSI] lpfc 8.3.25: T10 DIF Fixes T10 DIF Fixes - Fix the case where the SCSI Host supplies the CRC and driver to controller protection is on. - Only support T10 DIF type 1. LBA always goes in ref tag and app tag is not checked. - Change the format of the sense data passed up to the SCSI layer to match the Descriptor Format Sense Data found in SPC-4 sections 4.5.2.1 and 4.5.2.2. - Fix Slip PDE implementation. - Remove BUG() in else casein lpfc_sc_to_bg_opcodes. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 154fbf06485bbb6c28f1f7ebf462e4895613033c Author: Krishna Gudipati Date: Wed Jul 20 17:04:44 2011 -0700 [SCSI] bfa: Update the driver version to 3.0.2.2 Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 4c5d22bf7bdea68d3d449f6a8e1835da84909346 Author: Krishna Gudipati Date: Wed Jul 20 17:04:24 2011 -0700 [SCSI] bfa: Added support to configure lunmasking - Added support to enable / disable lunmasking on Brocade adapter ports. - Added support to query / clear lunmasking configuration. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 83763d591b343b07331cebe86715205230c568b1 Author: Krishna Gudipati Date: Wed Jul 20 17:04:03 2011 -0700 [SCSI] bfa: Introduced initiator based lun masking feature. - Added support to enable initiator based lun masking. - Initiator based Lun masking works similar to zoning where initiator port is allowed to see only those LUNs which are configured to be seen. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 45c5dc1d3f42d4f54a5ab5f45ee55f0ffe1099f1 Author: Krishna Gudipati Date: Wed Jul 20 17:03:46 2011 -0700 [SCSI] bfa: Add support to store driver configuration in flash. - Added dconf (Driver Config) BFA sub-module. - The dconf sub-module provides interfaces and manages flash writes to the flash DRV parition. - dconf sub-module also ensures that the whole 64K DRV partition is updated on a flash write. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit c0350bf57445b9e2a4369668127ecc4431472d26 Author: Krishna Gudipati Date: Wed Jul 20 17:03:27 2011 -0700 [SCSI] bfa: Add support to collect / reset fabric stats. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 3ec4f2c8bff2568e5a51ba083db2c073321ca2c1 Author: Krishna Gudipati Date: Wed Jul 20 17:03:09 2011 -0700 [SCSI] bfa: Added support to configure QOS and collect stats. - Added support to configure QOS on Brocade adapter ports. - Added support to collect / reset QOS statistics. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 45191236b179877d259a40e13c5144628d4df37f Author: Krishna Gudipati Date: Wed Jul 20 17:02:50 2011 -0700 [SCSI] bfa: Add support to configure trunking on Brocade adapter ports. - Added logic to enable / disable trunking on Brocade adapter ports. - Added logic to query trunking info. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit a46bd300e191d5a1a7367a799a9f5268c5e6aafd Author: Krishna Gudipati Date: Wed Jul 20 17:02:32 2011 -0700 [SCSI] bfa: Add support to configure and query flash boot partition Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 37ea0558b87abb151245bc750070a4dcda490aca Author: Krishna Gudipati Date: Wed Jul 20 17:02:11 2011 -0700 [SCSI] bfa: Added support to collect and reset fcport stats - Added support to collect and reset fcport stats. - Modified design to allow multiple requests for fcport stats. - fcport will remember the stats request in its stats_pending queue and service each of the queued requests after receiving a firmware response for the prior request. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 42a8e6e298f39518445785c53a16357267db37ef Author: Krishna Gudipati Date: Wed Jul 20 17:01:52 2011 -0700 [SCSI] bfa: Add support for IO profiling. - Made changes to support IO profiling. - Added support to configure and query IO profiling info. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit f2ee76017b30c84f128dfbf716950ffc0e4d949a Author: Krishna Gudipati Date: Wed Jul 20 17:01:34 2011 -0700 [SCSI] bfa: Extend BSG to support more user commands Extended BSG to support stats, port log and trace reset and to support adapter, port SET operations. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit fb778b06299f424c4db60817bd3dcfcaad3a8a75 Author: Krishna Gudipati Date: Wed Jul 20 17:01:07 2011 -0700 [SCSI] bfa: Check supported speed based on port mode Added logic to check the loopback test input speed based on port mode. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit ca6e0ea71cd0f442875b05357dd51774bd84b418 Author: Krishna Gudipati Date: Wed Jul 20 17:00:45 2011 -0700 [SCSI] bfa: Update RME interrupt handling. - Made changes to always acknowledge RME interrupt and update consumer index (CI) when RME interrupt is generated. - Made changes to have ASIC specific hw_rspq_ack() handler. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 9afbcfab74d26051702862b57c0115f71477a3cc Author: Krishna Gudipati Date: Wed Jul 20 16:59:44 2011 -0700 [SCSI] bfa: use negative error return values in all functions Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 7826f304b1efa5ab839cf029742290f51c4fa009 Author: Krishna Gudipati Date: Wed Jul 20 16:59:13 2011 -0700 [SCSI] bfa: Add FC-transport based Asynchronous Event Notification support. - Added support to post vendor unique events on fc_host. - Supports adapter, port, ioc, flash and remote port based AEN events. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit a53becc9a9dbe4f2961b2bba129b3b2624401021 Author: Chandra Seetharaman Date: Wed Jul 20 14:18:56 2011 -0700 [SCSI] dh_rdac: Use WWID from C8 page instead of Subsystem id from C4 page to identify storage rdac hardware handler uses "Subsystem Identifier" from C4 inquiry page to uniquely identify a storage. The problem with that is that if any any of the bytes are non-ascii, subsys_id will all be spaces (hex 0x20). This creates lot of problems especially when there are multiple rdac storages are connected to the server. Use "Storage Array Unique Identifier" from C8 inquiry page, which is the world wide unique identifier for the storage array, to uniquely identify the storage. Signed-off-by: Chandra Seetharaman Signed-off-by: James Bottomley commit e466e1c6e14e211e0ece86bdb0810b1b9c1a59a8 Author: Kashyap, Desai Date: Wed Jul 20 21:28:03 2011 +0530 [SCSI] mptfusion : Added check for SILI bit in READ_6 CDB for DATA UNDERRUN ERRATA When READ_6 command is issued, the setting of SILI Bit in CDB is confirmed and if SILI bit is off, the processing of relavent Errata is executed. Earlier we did not have check for SILI bit in READ_6 CDB. As described in "ssc-r22", Now Driver is checking SILI bit for READ_6. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 92fd65c095f0dedd3c874904fb63ddc8fb7836fd Author: Saurav Kashyap Date: Thu Jul 14 12:00:14 2011 -0700 [SCSI] qla2xxx: Cleanup of previous infrastructure. Signed-off-by: Saurav Kashyap Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 7c3df1320e5e875478775e78d01a09aee96b8abe Author: Saurav Kashyap Date: Thu Jul 14 12:00:13 2011 -0700 [SCSI] qla2xxx: Code changes to support new dynamic logging infrastructure. The code is changed to support the new dynamic logging infrastructure. Following are the levels added. Default is 0 - no logging. 0x40000000 - Module Init & Probe. 0x20000000 - Mailbox Cmnds. 0x10000000 - Device Discovery. 0x08000000 - IO tracing. 0x04000000 - DPC Thread. 0x02000000 - Async events. 0x01000000 - Timer routines. 0x00800000 - User space. 0x00400000 - Task Management. 0x00200000 - AER/EEH. 0x00100000 - Multi Q. 0x00080000 - P3P Specific. 0x00040000 - Virtual Port. 0x00020000 - Buffer Dump. 0x00010000 - Misc. 0x7fffffff - For enabling all logs, can be too many logs. Setting ql2xextended_error_logging module parameter to any of the above value, will enable the debug for that particular level. Do LOGICAL OR of the value to enable more than one level. Signed-off-by: Saurav Kashyap Signed-off-by: Giridhar Malavali Signed-off-by: Andrew Vasquez Signed-off-by: Joe Carnuccio Signed-off-by: Chad Dupuis Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 3ce8866ceae87258cf66d1f7fd72abc918753cec Author: Saurav Kashyap Date: Thu Jul 14 12:00:12 2011 -0700 [SCSI] qla2xxx: Basic infrastructure for dynamic logging. This patch adds the dynamic logging framework to the qla2xxx driver. The user will be able to change the logging levels on the fly i.e. without load/unload of the driver. This also enables logging to be enabled for a particular section of the driver such as initialization, device discovery etc. Signed-off-by: Saurav Kashyap Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 573e5913536a1393362265cfea9e708aa10fdf16 Author: James Smart Date: Wed Jul 6 12:45:17 2011 -0400 [SCSI] scsi_lib: pause between error retries During cable pull tests on our 16G FC adapter, we are seeing errors, typically reads to close targets, which fail due to CRC or framing errors caused by the cable being pull (return status DID_ERROR). The adapter detects the error on one of the first frames received, marks the FC exchange as dead (further frames go to bit bucket) and signals the host of the error. This action is so quick, and coupled with fast host CPUs, creates a scenario in which the midlayer sees the failure and retries the io almost immediately. We've seen link traces with the retry on the link while the original i/o is still being processed by the target. We're also seeing the time window for the "link to pull-apart" and the physical interface to report disconnected to be in the few millisecond range. Which means, we're encountering scenarios where the full retry count is exhausted (all with error) by the midlayer before the link disconnect state is detected. We looked at 8G FC behavior and occasionally see the same behavior, but as the link was slower, it rarely could exhaust all retries before the link reported disconnect. What is needed is a slight delay between io retries due to DID_ERROR to cover this error. It is inappropriate to put this delay in the driver, as the error is indistinguishable from other link-related errors, nor does the driver track whether the io is a retry or not. This is also easier than tracking between-io-error bursts that are seen in this scenario. The patch below updates the retry path so that it inserts a delay as if the target was busy. The busy delay is on the order of 6ms. This delay is sufficient to ensure the link down condition is reported before the retry count is exhausted (at most 1 retry is seen). Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 363922946f96ad1d6420107ebcfa9a95b659fe75 Author: Michal Simek Date: Wed Jul 27 10:45:32 2011 +0200 microblaze: Do not show error message for 32 interrupt lines When interrupt controller uses 32 interrupts lines the kernel show error message about mismatch in kind-of-intr parameter because it exceeds u32. Recast fixs this issue. Signed-off-by: Michal Simek commit 767cd365b22820df07b962b49ce04b220b98e537 Author: Eliot Blennerhassett Date: Wed Jul 27 20:03:51 2011 +1200 ALSA: asihpi - bug fix pa use before init. Fixes bug introduced by 1c073b67. Also declare pa local to block in which it is used. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit aa7eb8e78d8ecd6cd0475d86ea8385ff9cb47ece Merge: cca8edf 3c6b501 Author: Dmitry Torokhov Date: Wed Jul 27 00:54:47 2011 -0700 Merge branch 'next' into for-linus commit 45eebda7b4a73deb268b0cbcde06b603a2ba46a2 Author: Vitaliy Kulikov Date: Tue Jul 26 16:56:20 2011 -0500 ALSA: hda - Add support for vref-out based mute LED control on IDT codecs This patch also registers all necessary callbacks to support mute LED only when such control is enabled. And it keeps codec AFG in D0 or D1 state all the time when aggressive power managemnt is enabled for vref-out control (and mute LED) work correctly. Signed-off-by: Vitaliy Kulikov Signed-off-by: Takashi Iwai commit 510792ee29770a38dd409bf2b469ade2fea9eb52 Author: Christoph Hellwig Date: Tue Jul 26 15:07:29 2011 +0000 xfs: optimize the negative xattr caching Since the addition of file capabilities every write needs to read xattrs to check if we have any capabilities to clear. In Linux 3.0 Andi Kleen added a flag to cache the fact that we do not have any attributes on an inode. Make sure to already mark a file as not having any attributes when reading it from disk in case it doesn't even have an attribute fork. Based on an earlier patch from Andi Kleen. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit d1166ec792c96b65e4c18cbc5985944b5309d838 Author: Christoph Hellwig Date: Tue Jul 26 15:07:11 2011 +0000 xfs: prevent against ioend livelocks in xfs_file_fsync We need to take some locks to prevent new ioends from coming in when we wait for all existing ones to go away. Up to Linux 3.0 that was done using the i_mutex held by the VFS fsync code, but now that we are called without it we need to take care of it ourselves. Use the I/O lock instead of i_mutex just like we do in other places. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 34951f5cb72b1e3a89a21581cb21e2d5b6a104a4 Author: Christoph Hellwig Date: Tue Jul 26 15:06:44 2011 +0000 xfs: flag all buffers as metadata Now that REQ_META bios aren't treated specially in the CFQ I/O schedule anymore, we can tag all buffers as metadata to make blktrace traces more meaningful. Note that we use buffers also to zero out partial blocks in the preallocation / hole punching code, and while they operate on data blocks the zeros written certainly aren't data. I think this case is borderline metadata enough to not bother special casing it. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 1c4f33296e8e79a6bbfffc8457d547ffc31d5dee Author: Alex Elder Date: Mon Jul 18 18:14:09 2011 +0000 xfs: encapsulate a block of debug code Pull into a helper function some debug-only code that validates a xfs_da_blkinfo structure that's been read from disk. Signed-off-by: Alex Elder Reviewed-by: Christoph Hellwig commit 6d40bc5a7e8fc71795d131e835f38f161ed7e1b1 Author: Yongqiang Yang Date: Tue Jul 26 22:24:41 2011 -0400 ext4: simplify journal handling in setup_new_group_blocks() This patch simplifies journal handling in setup_new_group_blocks(). In previous code, block bitmap is modified everywhere in setup_new_group_blocks(), ext4_get_write_access() in extend_or_restart_transaction() is used to guarantee that the block bitmap stays in the new handle, this makes things complicated. The previous commit changed things so that the modifications on the block bitmap are batched and done by ext4_set_bits() at the end of the for loop. This allows us to simplify things. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit c3e94d1df9bdd9e2c4ba7e8f534f7925f1756f97 Author: Yongqiang Yang Date: Tue Jul 26 22:05:53 2011 -0400 ext4: let setup_new_group_blocks() set multiple bits at a time Rename mb_set_bits() to ext4_set_bits() and make it a global function so that setup_new_group_blocks() can use it. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 2b79b09d13e35577151bd13ba08809911baccd1c Author: Yongqiang Yang Date: Tue Jul 26 21:53:35 2011 -0400 ext4: fix a typo in ext4_group_extend() Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 4740b830ed5720ade6c780dbf3fdfe9089b3552d Author: Yongqiang Yang Date: Tue Jul 26 21:51:08 2011 -0400 ext4: let ext4_group_add_blocks() handle 0 blocks quickly If ext4_group_add_blocks() is called with 0 block, make it return 0 without doing any extra work. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit cc7365dfe48cb2191f1572bf69e30d3e58716313 Author: Yongqiang Yang Date: Tue Jul 26 21:46:07 2011 -0400 ext4: let ext4_group_add_blocks() return an error code This patch lets ext4_group_add_blocks() return an error code if it fails, so that upper functions can handle error correctly. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 0529155e8a4bcb77dfc9ceaea19c6501487e452b Author: Yongqiang Yang Date: Tue Jul 26 21:43:56 2011 -0400 ext4: rename ext4_add_groupblocks() to ext4_group_add_blocks() Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit ce723c31b58f54fb865036805475ee7a8c5dc173 Author: Yongqiang Yang Date: Tue Jul 26 21:39:09 2011 -0400 ext4: prevent a fs with errors from being resized A filesystem with errors is not allowed to being resized, otherwise, it is easy to destroy the filesystem. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 8f82f840ec6ab873f520364d443ff6fa1b3f8e22 Author: Yongqiang Yang Date: Tue Jul 26 21:35:44 2011 -0400 ext4: prevent parallel resizers by atomic bit ops Before this patch, parallel resizers are allowed and protected by a mutex lock, actually, there is no need to support parallel resizer, so this patch prevents parallel resizers by atmoic bit ops, like lock_page() and unlock_page() do. To do this, the patch removed the mutex lock s_resize_lock from struct ext4_sb_info and added a unsigned long field named s_resize_flags which inidicates if there is a resizer. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 580975d7f48d7d047e22bb0f42adf7557801d8d4 Author: Shawn Guo Date: Thu Jul 14 08:35:48 2011 +0800 dmaengine: imx-sdma: add device tree probe support It adds device tree probe support for imx-sdma driver. Signed-off-by: Shawn Guo Cc: Grant Likely Cc: Vinod Koul Cc: Sascha Hauer Acked-by: Vinod Koul commit 40ad5b37914368a4f2c5ff1e72712375d6f1188b Author: Shawn Guo Date: Fri Jul 15 17:25:28 2011 +0800 dmaengine: imx-sdma: sdma_get_firmware does not need to copy fw_name It does not need to allocate space and copy fw_name in function sdma_get_firmware(). Signed-off-by: Shawn Guo Cc: Vinod Koul Cc: Sascha Hauer Acked-by: Vinod Koul commit 62550cd7c08f1a38d0ade1de18baec10f83412bb Author: Shawn Guo Date: Wed Jul 13 21:33:17 2011 +0800 dmaengine: imx-sdma: use platform_device_id to identify sdma version It might be not good to use software defined version to identify sdma device type, when hardware does not define such version. Instead, soc name is stable enough to define the device type. The patch uses platform_device_id rather than version number passed by platform data to identify sdma device type/version. Signed-off-by: Shawn Guo Cc: Vinod Koul Cc: Sascha Hauer Acked-by: Grant Likely Acked-by: Vinod Koul commit abfafc2d10ee2ad217be9ef06181819ca5dd6960 Author: Shawn Guo Date: Thu Jun 30 15:44:44 2011 +0800 mmc: sdhci-esdhc-imx: add device tree probe support The patch adds device tree probe support for sdhci-esdhc-imx driver. Signed-off-by: Shawn Guo Cc: Wolfram Sang Cc: Chris Ball Cc: Grant Likely Acked-by: Grant Likely Acked-by: Chris Ball commit a4d2177f00a5252d825236c5124bc1e9918bdb41 Author: Shawn Guo Date: Fri Jul 1 09:35:28 2011 +0800 mmc: sdhci-pltfm: dt device does not pass parent to sdhci_alloc_host Neither platform based nor dt based device needs to pass the parent to sdhci_alloc_host. There is no difference between platform and dt on this point. The patch makes the change to pass device itself than its parent to sdhci_alloc_host for dt case too. Otherwise the probe function of sdhci based drivers which is shared between platform and dt will fail on dt case. Signed-off-by: Shawn Guo Cc: Chris Ball Acked-by: Grant Likely Acked-by: Chris Ball commit 57ed3314e0bfa90ea63c63b8d3038814e9d98a20 Author: Shawn Guo Date: Thu Jun 30 09:24:26 2011 +0800 mmc: sdhci-esdhc-imx: get rid of the uses of cpu_is_mx() The patch removes all the uses of cpu_is_mx(). Instead, it utilizes platform_device_id to distinguish the esdhc differences among SoCs. Signed-off-by: Shawn Guo Cc: Wolfram Sang Cc: Chris Ball Acked-by: Grant Likely Acked-by: Chris Ball commit 842afc02cf04f0474392b4c5efd808996a804fa6 Author: Shawn Guo Date: Wed Jul 6 22:57:48 2011 +0800 mmc: sdhci-esdhc-imx: do not reference platform data after probe The patch copies platform data into pltfm_imx_data and reference the data there than platform data after probe. This work is inspired by Grant Likely and Troy Kisky. Signed-off-by: Shawn Guo Cc: Troy Kisky Cc: Grant Likely Cc: Wolfram Sang Cc: Chris Ball Acked-by: Grant Likely Acked-by: Chris Ball commit 913413c307c919f8b21edccea23a9fd9d9d49a64 Author: Shawn Guo Date: Tue Jun 21 22:41:51 2011 +0800 mmc: sdhci-esdhc-imx: extend card_detect and write_protect support for mx5 The patch extends card_detect and write_protect support to get mx5 family and more scenarios supported. The changes include: * Turn platform_data from optional to mandatory * Add cd_types and wp_types into platform_data to cover more use cases * Remove the use of flag ESDHC_FLAG_GPIO_FOR_CD * Adjust some machine codes to adopt the platform_data changes * Work around the issue that software reset will get card detection circuit stop working With this patch, card_detect and write_protect gets supported on mx5 based platforms. Signed-off-by: Shawn Guo Cc: Chris Ball Acked-by: Wolfram Sang Tested-by: Arnaud Patard Acked-by: Chris Ball commit ca2cc333920690db87a03c2ee3bd6f43adb3e7fb Author: Shawn Guo Date: Sat Jun 25 02:04:35 2011 +0800 net/fec: add device tree probe support It adds device tree probe support for fec driver. Signed-off-by: Jason Liu Signed-off-by: Shawn Guo Cc: David S. Miller Cc: Grant Likely Acked-by: Grant Likely Acked-by: David S. Miller commit 4157ef1b8779b34581ee8b9dc8f7f95188008eca Author: Shawn Guo Date: Tue Jul 5 16:42:09 2011 +0800 net: ibm_newemac: convert it to use of_get_phy_mode The patch extends 'enum phy_interface_t' and of_get_phy_mode a little bit with PHY_INTERFACE_MODE_NA and PHY_INTERFACE_MODE_SMII added, and then converts ibm_newemac net driver to use of_get_phy_mode getting phy mode from device tree. It also resolves the namespace conflict on phy_read/write between common mdiobus interface and ibm_newemac private one. Signed-off-by: Shawn Guo Cc: David S. Miller Cc: Grant Likely Acked-by: Grant Likely Acked-by: David Miller commit 6ca1a113791eb09dac8c48b2b264c4d72aab410f Author: Shawn Guo Date: Mon Jul 4 14:03:17 2011 +0800 dt/net: add helper function of_get_phy_mode It adds the helper function of_get_phy_mode getting phy interface from device tree. Signed-off-by: Shawn Guo Cc: Grant Likely Acked-by: Grant Likely Acked-by: David Miller commit 0ca1e290b7c517300bf6cc4f14ebcedb5dfea5cc Author: Shawn Guo Date: Fri Jul 1 18:11:22 2011 +0800 net/fec: gasket needs to be enabled for some i.mx On the recent i.mx (mx25/50/53), there is a gasket inside fec controller which needs to be enabled no matter phy works in MII or RMII mode. The current code enables the gasket only when phy interface is RMII. It's broken when the driver works with a MII phy. The patch uses platform_device_id to distinguish the SoCs that have the gasket and enables it on these SoCs for both MII and RMII mode. Signed-off-by: Shawn Guo Reported-by: Troy Kisky Cc: David S. Miller Cc: Sascha Hauer Acked-by: David S. Miller commit 22698aa252e5e10f5b6d171bf82669deeab3bee1 Author: Shawn Guo Date: Sat Jun 25 02:04:34 2011 +0800 serial/imx: add device tree probe support It adds device tree probe support for imx tty/serial driver. Signed-off-by: Jeremy Kerr Signed-off-by: Jason Liu Signed-off-by: Shawn Guo Cc: Sascha Hauer Cc: Alan Cox Cc: Cc: Greg Kroah-Hartman Cc: Grant Likely Acked-by: Grant Likely commit fe6b540ac033be6e9fa00dab1c8902dea0ad4016 Author: Shawn Guo Date: Sat Jun 25 02:04:33 2011 +0800 serial/imx: get rid of the uses of cpu_is_mx1() The patch removes all the uses of cpu_is_mx1(). Instead, it uses the .id_table of platform_driver to distinguish the uart device type, IMX1_UART and IMX21_UART. The IMX21_UART type runs on all i.mx except i.mx1. A couple of !cpu_is_mx1 logic gets turned into is_imx21_uart, as the codes wrapped there are really IMX21 type uart specific. It also removes macro MX1_UCR3_REF25 and MX1_UCR3_REF30 which are not used anywhere. Signed-off-by: Shawn Guo Cc: Sascha Hauer Cc: Alan Cox Cc: Greg Kroah-Hartman Acked-by: Grant Likely commit e371d46ae45488bcb112a99a7de462e9e3aa6764 Merge: b0189cd e57712e Author: Linus Torvalds Date: Tue Jul 26 18:30:20 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: merge fchmod() and fchmodat() guts, kill ancient broken kludge xfs: fix misspelled S_IS...() xfs: get rid of open-coded S_ISREG(), etc. vfs: document locking requirements for d_move, __d_move and d_materialise_unique omfs: fix (mode & S_IFDIR) abuse btrfs: S_ISREG(mode) is not mode & S_IFREG... ima: fmode_t misspelled as mode_t... pci-label.c: size_t misspelled as mode_t jffs2: S_ISLNK(mode & S_IFMT) is pointless snd_msnd ->mode is fmode_t, not mode_t v9fs_iop_get_acl: get rid of unused variable vfs: dont chain pipe/anon/socket on superblock s_inodes list Documentation: Exporting: update description of d_splice_alias fs: add missing unlock in default_llseek() commit 768e587e18c1c4ce0403b9532115752189422408 Author: Jonathan Brassow Date: Wed Jul 27 11:00:37 2011 +1000 MD: generate an event when array sync is complete This patch causes MD to generate an event (for device-mapper) when the synchronization thread is reaped. This is expected behavior for device-mapper. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 3520fa4db7fc4ae1b0373dcecdaf720f620dab2d Author: Jonathan Brassow Date: Wed Jul 27 11:00:37 2011 +1000 MD bitmap: Revert DM dirty log hooks Revert most of commit e384e58549a2e9a83071ad80280c1a9053cfd84c md/bitmap: prepare for storing write-intent-bitmap via dm-dirty-log. MD should not need to use DM's dirty log - we decided to use md's bitmaps instead. Keeping the DIV_ROUND_UP clean-ups that were part of commit e384e58549a2e9a83071ad80280c1a9053cfd84c, however. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 654e8b5abc0a793f0c029128db6e4804691a383e Author: Jonathan Brassow Date: Wed Jul 27 11:00:36 2011 +1000 MD: raid1 s/sysfs_notify_dirent/sysfs_notify_dirent_safe If device-mapper creates a RAID1 array that includes devices to be rebuilt, it will deref a NULL pointer when finished because sysfs is not used by device-mapper instantiated RAID devices. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 8cfa7b0f67b4d899efc7f39eb7e172fd79237811 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: Avoid BUG caused by multiple failures. While preparing to write a stripe we keep the parity block or blocks locked (R5_LOCKED) - towards the end of schedule_reconstruction. If the array is discovered to have failed before this write completes we can leave those blocks LOCKED, and init_stripe will notice that a free stripe still has a locked block and will complain. So clear the R5_LOCKED flag in handle_failed_stripe, and demote the 'BUG' to a 'WARN_ON'. Signed-off-by: NeilBrown commit cbea21703b2484f83faef040ed1de30114794392 Author: Namhyung Kim Date: Wed Jul 27 11:00:36 2011 +1000 md/raid10: move rdev->corrected_errors counting Read errors are considered to corrected if write-back and re-read cycle is finished without further problems. Thus moving the rdev-> corrected_errors counting after the re-reading looks more reasonable IMHO. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit ddd5115fe5594f5aae3c7f0008a5327bb1d19397 Author: Namhyung Kim Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: move rdev->corrected_errors counting Read errors are considered to corrected if write-back and re-read cycle is finished without further problems. Thus moving the rdev-> corrected_errors counting after the re-reading looks more reasonable IMHO. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 9d3d80113df824a266c5db3fac357a036ebc0b62 Author: Namhyung Kim Date: Wed Jul 27 11:00:36 2011 +1000 md/raid1: move rdev->corrected_errors counting Read errors are considered to corrected if write-back and re-read cycle is finished without further problems. Thus moving the rdev-> corrected_errors counting after the re-reading looks more reasonable IMHO. Also included a couple of whitespace fixes on sync_page_io(). Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 65a06f06744d3deae61f3596566952a8da92199f Author: Namhyung Kim Date: Wed Jul 27 11:00:36 2011 +1000 md: get rid of unnecessary casts on page_address() page_address() returns void pointer, so the casts can be removed. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 700c72138938cf428c74379806886c6b017d6295 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid10: Improve decision on whether to fail a device with a read error. Normally we would fail a device with a READ error. However if doing so causes the array to fail, it is better to leave the device in place and just return the read error to the caller. The current test for decide if the array will fail is overly simplistic. We have a function 'enough' which can tell if the array is failed or not, so use it to guide the decision. Signed-off-by: NeilBrown commit 2bb77736ae5dca0a189829fbb7379d43364a9dac Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid10: Make use of new recovery_disabled handling When we get a read error during recovery, RAID10 previously arranged for the recovering device to appear to fail so that the recovery stops and doesn't restart. This is misleading and wrong. Instead, make use of the new recovery_disabled handling and mark the target device and having recovery disabled. Add appropriate checks in add_disk and remove_disk so that devices are removed and not re-added when recovery is disabled. Signed-off-by: NeilBrown commit 5389042ffa36976caa45a79af16081d759001fa7 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md: change managed of recovery_disabled. If we hit a read error while recovering a mirror, we want to abort the recovery without necessarily failing the disk - as having a disk this a read error is better than not having an array at all. Currently this is managed with a per-array flag "recovery_disabled" and is only implemented for RAID1. For RAID10 we will need finer grained control as we might want to disable recovery for individual devices separately. So push more of the decision making into the personality. 'recovery_disabled' is now a 'cookie' which is copied when the personality want to disable recovery and is changed when a device is added to the array as this is used as a trigger to 'try recovery again'. This will allow RAID10 to get the control that it needs. Signed-off-by: NeilBrown commit a478a069b6adf186373a6648c54fc5f1d3c2f8eb Author: Namhyung Kim Date: Wed Jul 27 11:00:36 2011 +1000 md: remove ro check in md_check_recovery() Commit c89a8eee6154 ("Allow faulty devices to be removed from a readonly array.") added some work on ro array in the function, but it couldn't be done since we didn't allow the ro array to be handled from the beginning. Fix it. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 36fad858a7404a9656122a9e560a224ae2a00979 Author: Namhyung Kim Date: Wed Jul 27 11:00:36 2011 +1000 md: introduce link/unlink_rdev() helpers There are places where sysfs links to rdev are handled in a same way. Add the helper functions to consolidate them. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 8bda470e8ebde35f9349e98ecbce4dfb508a60fa Author: Christian Dietrich Date: Wed Jul 27 11:00:36 2011 +1000 md/raid: use printk_ratelimited instead of printk_ratelimit As per printk_ratelimit comment, it should not be used. Signed-off-by: Christian Dietrich Signed-off-by: NeilBrown commit a0a02a7ad62b5615b17294c2075e4916f8d1f0a4 Author: Akinobu Mita Date: Wed Jul 27 11:00:36 2011 +1000 md: use proper little-endian bitops Using __test_and_{set,clear}_bit_le() with ignoring its return value can be replaced with __{set,clear}_bit_le(). Signed-off-by: Akinobu Mita Cc: NeilBrown Cc: linux-raid@vger.kernel.org Signed-off-by: NeilBrown commit acfe726bdd0000a9be1b308b29fad1e9ae62178c Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: finalise new merged handle_stripe. handle_stripe5() and handle_stripe6() are now virtually identical. So discard one and rename the other to 'analyse_stripe()'. It always returns 0, so change it to 'void' and remove the 'done' variable in handle_stripe(). Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 474af965fe0005b334cabdb2904a7d712c21489b Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: move some more common code into handle_stripe The RAID6 version of this code is usable for RAID5 providing: - we test "conf->max_degraded" rather than "2" as appropriate - we make sure s->failed_num[1] is meaningful (and not '-1') when s->failed > 1 The 'return 1' must become 'goto finish' in the new location. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 84789554e96c0263ad8aa9be91397ece1f88c768 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: move more common code into handle_stripe Apart from 'prexor' which can only be set for RAID5, and 'qd_idx' which can only be meaningful for RAID6, these two chunks of code are nearly the same. So combine them into one adding a test to call either handle_parity_checks5 or handle_parity_checks6 as appropriate. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit c8ac1803ff0af5aa614587ac0c66d46b7a3bdfcc Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: unite handle_stripe_dirtying5 and handle_stripe_dirtying6 RAID6 is only allowed to choose 'reconstruct-write' while RAID5 is also allow 'read-modify-write' Apart from this difference, handle_stripe_dirtying[56] are nearly identical. So resolve these differences and create just one function. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 93b3dbce6456a79c545b45e86ccc2244e923cc99 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: unite fetch_block5 and fetch_block6 Provided that ->failed_num[1] is not a valid device number (which is easily achieved) fetch_block6 provides all the functionality of fetch_block5. So remove the latter and rename the former to simply "fetch_block". Then handle_stripe_fill5 and handle_stripe_fill6 become the same and can similarly be united. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 5d35e09cae47bbae2739f432658860680de21866 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: rearrange a test in fetch_block6. Next patch will unite fetch_block5 and fetch_block6. First I want to make the differences a little more clear. For RAID6 if we are writing at all and there is a failed device, then we need to load or compute every block so we can do a reconstruct-write. This case isn't needed for RAID5 - we will do a read-modify-write in that case. So make that test a separate test in fetch_block6 rather than merged with two other tests. Make a similar change in fetch_block5 so the one bit that is not needed for RAID6 is clearly separate. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit c5a3100062cf277d3edd4e6f4a1f1e403524b464 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: move more code into common handle_stripe The difference between the RAID5 and RAID6 code here is easily resolved using conf->max_degraded. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 3687c061886dd0bfec07e131ad12f916ef0abc62 Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: Move code for finishing a reconstruction into handle_stripe. Prior to commit ab69ae12ceef7 the code in handle_stripe5 and handle_stripe6 to "Finish reconstruct operations initiated by the expansion process" was identical. That commit added an identical stanza of code to each function, but in different places. That was careless. The raid5 code was correct, so move that out into handle_stripe and remove raid6 version. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 86c374ba9f6726a79a032ede741dc66d219b166e Author: NeilBrown Date: Wed Jul 27 11:00:36 2011 +1000 md/raid5: Remove stripe_head_state arg from handle_stripe_expansion. This arg is only used to differentiate between RAID5 and RAID6 but that is not needed. For RAID5, raid5_compute_sector will set qd_idx to "~0" so j with certainly not equals qd_idx, so there is no need for a guard on that condition. So remove the guard and remove the arg from the declaration and callers of handle_stripe_expansion. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit b0189cd087aa82bd23277cb5c8960ab030e13e5c Merge: 69f1d1a bc574e1 Author: Linus Torvalds Date: Tue Jul 26 17:42:18 2011 -0700 Merge branch 'next/devel2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/devel2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (47 commits) OMAP: Add debugfs node to show the summary of all clocks OMAP2+: hwmod: Follow the recommended PRCM module enable sequence OMAP2+: clock: allow per-SoC clock init code to prevent clockdomain calls from clock code OMAP2+: clockdomain: Add per clkdm lock to prevent concurrent state programming OMAP2+: PM: idle clkdms only if already in idle OMAP2+: clockdomain: add clkdm_in_hwsup() OMAP2+: clockdomain: Add 2 APIs to control clockdomain from hwmod framework OMAP: clockdomain: Remove redundant call to pwrdm_wait_transition() OMAP4: hwmod: Introduce the module control in hwmod control OMAP4: cm: Add two new APIs for modulemode control OMAP4: hwmod data: Add modulemode entry in omap_hwmod structure OMAP4: hwmod data: Add PRM context register offset OMAP4: prm: Remove deprecated functions OMAP4: prm: Replace warm reset API with the offset based version OMAP4: hwmod: Replace RSTCTRL absolute address with offset macros OMAP: hwmod: Wait the idle status to be disabled OMAP4: hwmod: Replace CLKCTRL absolute address with offset macros OMAP2+: hwmod: Init clkdm field at boot time OMAP4: hwmod data: Add clock domain attribute OMAP4: clock data: Add missing divider selection for auxclks ... commit 69f1d1a6acbaa7d83ef3f4ee26209c58cd000204 Merge: 2d86a3f 1e09939 Author: Linus Torvalds Date: Tue Jul 26 17:41:04 2011 -0700 Merge branch 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (128 commits) ARM: S5P64X0: External Interrupt Support ARM: EXYNOS4: Enable MFC on Samsung NURI ARM: EXYNOS4: Enable MFC on universal_c210 ARM: S5PV210: Enable MFC on Goni ARM: S5P: Add support for MFC device ARM: EXYNOS4: Add support FIMD on SMDKC210 ARM: EXYNOS4: Add platform device and helper functions for FIMD ARM: EXYNOS4: Add resource definition for FIMD ARM: EXYNOS4: Change devname for FIMD clkdev ARM: SAMSUNG: Add IRQ_I2S0 definition ARM: SAMSUNG: Add platform device for idma ARM: EXYNOS4: Add more registers to be saved and restored for PM ARM: EXYNOS4: Add more register addresses of CMU ARM: EXYNOS4: Add platform device for dwmci driver ARM: EXYNOS4: configure rtc-s3c on NURI ARM: EXYNOS4: configure MAX8903 secondary charger on NURI ARM: EXYNOS4: configure ADC on NURI ARM: EXYNOS4: configure MAX17042 fuel gauge on NURI ARM: EXYNOS4: configure regulators and PMIC(MAX8997) on NURI ARM: EXYNOS4: Increase NR_IRQS for devices with more IRQs ... Fix up tons of silly conflicts: - arch/arm/mach-davinci/include/mach/psc.h - arch/arm/mach-exynos4/Kconfig - arch/arm/mach-exynos4/mach-smdkc210.c - arch/arm/mach-exynos4/pm.c - arch/arm/mach-imx/mm-imx1.c - arch/arm/mach-imx/mm-imx21.c - arch/arm/mach-imx/mm-imx25.c - arch/arm/mach-imx/mm-imx27.c - arch/arm/mach-imx/mm-imx31.c - arch/arm/mach-imx/mm-imx35.c - arch/arm/mach-mx5/mm.c - arch/arm/mach-s5pv210/mach-goni.c - arch/arm/mm/Kconfig commit 2d86a3f04e345b03d5e429bfe14985ce26bff4dc Merge: 3960ef3 5ddac6b Author: Linus Torvalds Date: Tue Jul 26 17:13:04 2011 -0700 Merge branch 'next/board' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/board' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: ARM: S3C64XX: Configure backup battery charger on Cragganmore ARM: S3C64XX: Fix WM8915 IRQ polarity on Cragganmore ARM: S3C64XX: Configure supplies for all Cragganmore regulators ARM: S3C64XX: Refresh Cragganmore support ARM: S3C64XX: Initial support for Wolfson/Simtec Cragganmore/Banff OMAP4: Keyboard: Mux changes in the board file omap: blaze: add mmc5/wl1283 device support omap: 4430SDP: Register the card detect GPIO properly arm: omap3: cm-t35: add support for cm-t3730 OMAP3: beagle: add support for beagleboard xM revision C OMAP3: rx-51: Add full regulator definitions omap: rx51: Platform support for lp5523 led chip commit 3960ef326a1838971466193ffa008ff37c1d978d Merge: 62c9072 c8f8552 Author: Linus Torvalds Date: Tue Jul 26 17:12:10 2011 -0700 Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: ARM: Consolidate the clkdev header files ARM: set vga memory base at run-time ARM: convert PCI defines to variables ARM: pci: make pcibios_assign_all_busses use pci_has_flag ARM: remove unnecessary mach/hardware.h includes pci: move microblaze and powerpc pci flag functions into asm-generic powerpc: rename ppc_pci_*_flags to pci_*_flags Fix up conflicts in arch/microblaze/include/asm/pci-bridge.h commit 62c9072bee2272232d0ed92dc8148c48c1f10f8e Merge: 4b30b6f c2fda22 Author: Linus Torvalds Date: Tue Jul 26 17:10:20 2011 -0700 Merge branch 'next/fixes2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/fixes2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (24 commits) ASoC: omap: McBSP: fix build breakage on OMAP1 OMAP: hwmod: fix the i2c-reset timeout during bootup I2C: OMAP2+: add correct functionality flags to all omap2plus i2c dev_attr I2C: OMAP2+: Tag all OMAP2+ hwmod defintions with I2C IP revision I2C: OMAP1/OMAP2+: create omap I2C functionality flags for each cpu_... test I2C: OMAP2+: Introduce I2C IP versioning constants I2C: OMAP2+: increase omap_i2c_dev_attr flags from u8 to u32 I2C: OMAP2+: Set hwmod flags to only allow 16-bit accesses to i2c OMAP4: hwmod data: Change DSS main_clk scheme OMAP4: powerdomain data: Remove unsupported MPU powerdomain state OMAP4: clock data: Keep GPMC clocks always enabled and hardware managed OMAP4: powerdomain data: Fix core mem states and missing cefuse flag OMAP2+: PM: Initialise sleep_switch to a non-valid value OMAP4: hwmod data: Modify DSS opt clocks OMAP4: iommu: fix clock name omap: iovmm: s/sg_dma_len(sg)/sg->length/ omap: iommu: fix pte programming arm: omap3: cm-t35: fix slow path warning arm: omap3: cm-t35: minor comments fixes omap: ZOOM: QUART: Request reset GPIO ... commit 4b30b6f23a1a59cda29cc12566eb4f32a22a8069 Merge: 38da590 6c59c11 Author: Linus Torvalds Date: Tue Jul 26 17:09:31 2011 -0700 Merge branch 'next/soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: MAINTAINERS: add maintainer of CSR SiRFprimaII machine ARM: CSR: initializing L2 cache ARM: CSR: mapping early DEBUG_LL uart ARM: CSR: Adding CSR SiRFprimaII board support OMAP4: clocks: Update the clock tree with 4460 clock nodes OMAP4: PRCM: OMAP4460 specific PRM and CM register bitshifts OMAP4: ID: add omap_has_feature for max freq supported OMAP: ID: introduce chip detection for OMAP4460 ARM: Xilinx: merge board file into main platform code ARM: Xilinx: Adding Xilinx board support Fix up conflicts in arch/arm/mach-omap2/cm-regbits-44xx.h commit 38da590bef19f23d4b610aecaad4f32de483890d Merge: 7505cb6 07e729c Author: Linus Torvalds Date: Tue Jul 26 16:55:45 2011 -0700 Merge branch 'next-i2c' of git://git.fluff.org/bjdooks/linux * 'next-i2c' of git://git.fluff.org/bjdooks/linux: i2c-eg20t : Fix the issue of Combined R/W transfer mode i2c-eg20t : Support Combined R/W transfer mode i2c: Tegra: Add DeviceTree support commit 7505cb60c2d26301630b052852d484decf07aef1 Author: Mike Frysinger Date: Tue Jul 26 16:09:11 2011 -0700 asm-generic/atomic.h: allow SMP peeps to leverage this Only a few core funcs need to be implemented for SMP systems, so allow the arches to override them while getting the rest for free. At least, this is enough to allow the Blackfin SMP port to use things. Signed-off-by: Mike Frysinger Cc: Arun Sharma Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 00b3c28bd753afb46fb26b2f9e21dd27dacd80d4 Author: Mike Frysinger Date: Tue Jul 26 16:09:10 2011 -0700 asm-generic/atomic.h: add atomic_set_mask() helper Since arches are expected to implement this guy, add a common version for people the same way as atomic_clear_mask is handled. Signed-off-by: Mike Frysinger Cc: Arun Sharma Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f6081bd3f8152cdd3d857f55631bbb4b72182b82 Author: Mike Frysinger Date: Tue Jul 26 16:09:10 2011 -0700 asm-generic/atomic.h: fix type used in atomic_clear_mask The atomic helpers are supposed to take an atomic_t pointer, not a random unsigned long pointer. So convert atomic_clear_mask over. While we're here, also add some nice documentation to the func. Signed-off-by: Mike Frysinger Cc: Arun Sharma Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3eea44ea753923c6af90be808426ecddc482de61 Author: Mike Frysinger Date: Tue Jul 26 16:09:09 2011 -0700 asm-generic/atomic.h: simplify inc/dec test helpers We already declared inc/dec helpers, so we don't need to call the atomic_{add,sub}_return funcs directly. Signed-off-by: Mike Frysinger Cc: Arun Sharma Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit acac43e2fc4b14ecf1ff229eaa8d1e011d063749 Author: Arun Sharma Date: Tue Jul 26 16:09:08 2011 -0700 atomic: Update comments in atomic.h This clarifies the differences between and Signed-off-by: Arun Sharma Suggested-by: Mike Frysinger Cc: Eric Dumazet Cc: Ingo Molnar Cc: David Miller Acked-by: Mike Frysinger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7847777a45f9f8bfc8617dbf107bde1ecb59caee Author: Arun Sharma Date: Tue Jul 26 16:09:08 2011 -0700 atomic: cleanup asm-generic atomic*.h inclusion After changing all consumers of atomics to include , we ran into some compile time errors due to this dependency chain: linux/atomic.h -> asm/atomic.h -> asm-generic/atomic-long.h where atomic-long.h could use funcs defined later in linux/atomic.h without a prototype. This patches moves the code that includes asm-generic/atomic*.h to linux/atomic.h. Archs that need need to select CONFIG_GENERIC_ATOMIC64 from now on (some of them used to include it unconditionally). Compile tested on i386 and x86_64 with allnoconfig. Signed-off-by: Arun Sharma Cc: Eric Dumazet Cc: Ingo Molnar Cc: David Miller Acked-by: Mike Frysinger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f24219b4e90cf70ec4a211b17fbabc725a0ddf3c Author: Arun Sharma Date: Tue Jul 26 16:09:07 2011 -0700 atomic: move atomic_add_unless to generic code This is in preparation for more generic atomic primitives based on __atomic_add_unless. Signed-off-by: Arun Sharma Signed-off-by: Hans-Christian Egtvedt Reviewed-by: Eric Dumazet Cc: Ingo Molnar Cc: David Miller Acked-by: Mike Frysinger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 60063497a95e716c9a689af3be2687d261f115b4 Author: Arun Sharma Date: Tue Jul 26 16:09:06 2011 -0700 atomic: use This allows us to move duplicated code in (atomic_inc_not_zero() for now) to Signed-off-by: Arun Sharma Reviewed-by: Eric Dumazet Cc: Ingo Molnar Cc: David Miller Cc: Eric Dumazet Acked-by: Mike Frysinger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 148817ba092f9f6edd35bad3c6c6b8e8f90fe2ed Author: Akinobu Mita Date: Tue Jul 26 16:09:04 2011 -0700 asm-generic: add another generic ext2 atomic bitops The majority of architectures implement ext2 atomic bitops as test_and_{set,clear}_bit() without spinlock. This adds this type of generic implementation in ext2-atomic-setbit.h and use it wherever possible. Signed-off-by: Akinobu Mita Suggested-by: Andreas Dilger Suggested-by: Arnd Bergmann Acked-by: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2c9cd3793e5878e301ec2219785a7b8ca402ef1 Author: Akinobu Mita Date: Tue Jul 26 16:09:03 2011 -0700 fail_make_request: cleanup should_fail_request This changes should_fail_request() to more usable wrapper function of should_fail(). It can avoid putting #ifdef CONFIG_FAIL_MAKE_REQUEST in the middle of a function. Signed-off-by: Akinobu Mita Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2588c4b4c3c075e9b45d61065d86c60de2b6441 Author: Akinobu Mita Date: Tue Jul 26 16:09:03 2011 -0700 fail_page_alloc: simplify debugfs initialization Now cleanup_fault_attr_dentries() recursively removes a directory, So we can simplify the error handling in the initialization code and no need to hold dentry structs for each debugfs file. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 810f09b87b75d7cc3906ffffe4311003f37caa2a Author: Akinobu Mita Date: Tue Jul 26 16:09:02 2011 -0700 failslab: simplify debugfs initialization Now cleanup_fault_attr_dentries() recursively removes a directory, So we can simplify the error handling in the initialization code and no need to hold dentry structs for each debugfs file. Signed-off-by: Akinobu Mita Cc: Christoph Lameter Cc: Pekka Enberg Cc: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f5ddcc8d3eaccd5e169fda738530f937509645e Author: Akinobu Mita Date: Tue Jul 26 16:09:02 2011 -0700 fault-injection: use debugfs_remove_recursive Use debugfs_remove_recursive() to simplify initialization and deinitialization of fault injection debugfs files. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8307fc257cf3931d87e172bd8663e80c3d1e56a3 Author: Akinobu Mita Date: Tue Jul 26 16:09:01 2011 -0700 fault-injection: cleanup simple attribute of stacktrace_depth Minor cosmetic changes for simple attribute of stacktrace_depth: - use min_t() - reduce #ifdef by moving a function - do not use partly capitalized function name Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b16f748a0d4546726bb53cad58525adfd6425e9 Author: Akinobu Mita Date: Tue Jul 26 16:09:00 2011 -0700 fault-injection: remove nonexistent function extern should_fail_srandom() does not exist. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35f46764f0101f1aca60c26de96e0c4e8e3d011f Author: Akinobu Mita Date: Tue Jul 26 16:09:00 2011 -0700 fault-injection: do not include unneeded header No need to include linux/kallsyms.h. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e5c4fadb9943c7539364d0c8425db071a2020e4 Author: Sergiu Iordache Date: Tue Jul 26 16:08:59 2011 -0700 ramoops: make record_size a module parameter The size of the dump is currently set using the RECORD_SIZE macro which is set to a page size. This patch makes the record size a module parameter and allows it to be set through platform data as well to allow larger dumps if needed. Signed-off-by: Sergiu Iordache Acked-by: Marco Stornelli Cc: "Ahmed S. Darwish" Cc: Artem Bityutskiy Cc: Kyungmin Park Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b4d2a2733b9a17112f746d498c9f9a0427dcdd8 Author: Sergiu Iordache Date: Tue Jul 26 16:08:58 2011 -0700 ramoops: move dump_oops into platform data The platform driver currently allows setting the mem_size and mem_address. ince dump_oops is also a module parameter it would be more consistent if it could be set through platform data as well. Signed-off-by: Sergiu Iordache Acked-by: Marco Stornelli Cc: "Ahmed S. Darwish" Cc: Artem Bityutskiy Cc: Kyungmin Park Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0169256e4bbf29e507cdd1df5812c093d610f1d5 Author: Marco Stornelli Date: Tue Jul 26 16:08:57 2011 -0700 ramoops: add new line to each print Add new line to each print. Signed-off-by: Marco Stornelli Reported-by: Stevie Trujillo Cc: Kyungmin Park Cc: Américo Wang Cc: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13aefd7293e7a697bbf452fca65e69cc1fa8a31c Author: Marco Stornelli Date: Tue Jul 26 16:08:57 2011 -0700 ramoops: use module parameters instead of platform data if not available Use generic module parameters instead of platform data, if platform data are not available. This limitation has been introduced with commit c3b92ce9e75 ("ramoops: use the platform data structure instead of module params"). [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Marco Stornelli Cc: Kyungmin Park Cc: Américo Wang Reported-by: Stevie Trujillo Cc: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit beda94da38d2a3bf7f40c01f0a8e6d86067c91cc Author: Dmitry Torokhov Date: Tue Jul 26 16:08:56 2011 -0700 Vmware balloon: switch to using sysem-wide freezable workqueue With the arrival of concurrency-managed workqueues there is no need for our driver to use dedicated workqueue; system-wide one should suffice just fine. [akpm@linux-foundation.org: fix comment layout & grammar] Signed-off-by: Dmitry Torokhov Acked-by: Tejun Heo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f7b1371eb6b3ff72e38de220663b22f7cc9df296 Author: Christian Glindkamp Date: Tue Jul 26 16:08:55 2011 -0700 drivers/w1/slaves/w1_therm.c: add support for DS28EA00 Signed-off-by: Christian Glindkamp Cc: Evgeniy Polyakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c958474b6d721ff09e4abf143efc07365d63aea5 Author: Mandeep Singh Baines Date: Tue Jul 26 16:08:54 2011 -0700 panic, vt: do not force oops output when panic_timeout < 0 Don't force output if you intend to reboot immediately. In this patch, I'm disabling the functionality enabled by vc->vc_panic_force_write if panic_timeout < 0 (i.e. no timeout). vc_panic_force_write is only enabled for fb video consoles if the FBINFO_CAN_FORCE_OUTPUT flag is set. For our application, we're using ram_oops to preserved the panic in memory. We want to reliably, and as fast as possible, machine_restart. The vc_panic_force_write flag results in a bunch of graphics driver code to be invoked which slows down restart and decreases reliability. Since we're already storing the panic in RAM and are going to reboot immediately, there is no benefit in mode switching back to the vc in order to display the panic output. The log buffer will get flushed by the console_unblank() call so remote management consoles should see all output. Signed-off-by: Mandeep Singh Baines Cc: Huang Ying Cc: Andi Kleen Cc: Hugh Dickins Cc: Olaf Hering Cc: Jesse Barnes Cc: Dave Airlie Cc: Greg Kroah-Hartman Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4302fbc8ec2ccae279c939f241bf8ce64e1a0bb7 Author: Hugh Dickins Date: Tue Jul 26 16:08:52 2011 -0700 panic: panic=-1 for immediate reboot When a kernel BUG or oops occurs, ChromeOS intends to panic and immediately reboot, with stacktrace and other messages preserved in RAM across reboot. But the longer we delay, the more likely the user is to poweroff and lose the info. panic_timeout (seconds before rebooting) is set by panic= boot option or sysctl or /proc/sys/kernel/panic; but 0 means wait forever, so at present we have to delay at least 1 second. Let a negative number mean reboot immediately (with the small cosmetic benefit of suppressing that newline-less "Rebooting in %d seconds.." message). Signed-off-by: Hugh Dickins Signed-off-by: Mandeep Singh Baines Cc: Huang Ying Cc: Andi Kleen Cc: Hugh Dickins Cc: Olaf Hering Cc: Jesse Barnes Cc: Dave Airlie Cc: Greg Kroah-Hartman Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f0fb4e85b3842a2606c647c0a66afe2073574b4 Author: Michal Miroslaw Date: Tue Jul 26 16:08:51 2011 -0700 Documentation/DMA-API-HOWTO.txt: fix misleading example See: DMA-API.txt, part Id, DMA_FROM_DEVICE description. Signed-off-by: Michal Miroslaw Cc: FUJITA Tomonori Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 91f6cdf86e8a2bd9b9c292a750179dc2c728a2d4 Author: WANG Cong Date: Tue Jul 26 16:08:50 2011 -0700 include/linux/dma-mapping.h: remove DMA_xxBIT_MASK macros git grep shows there are no users in tree, so we can remove them safely. Signed-off-by: WANG Cong Acked-by: FUJITA Tomonori Acked-by: Jiri Slaby Acked-by: Vinod Koul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 947be5dfdaaef01b43a3d5444688ebef2bd263d4 Author: Vitaliy Ivanov Date: Tue Jul 26 16:08:49 2011 -0700 gcov: disable CONSTRUCTORS for UML Selecting GCOV for UML causing configuration mismatch: warning: (GCOV_KERNEL) selects CONSTRUCTORS which has unmet direct dependencies (!UML) Constructors are not needed for UML. Signed-off-by: Vitaliy Ivanov Cc: Peter Oberparleiter Acked-by: Richard Weinberger Acked-by: WANG Cong Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 444d2921215ae6c21f90eb5fa5d03f784f84f1aa Author: Kai.Jiang Date: Tue Jul 26 16:08:49 2011 -0700 drivers/edac/mpc85xx_edac.c: correct offset_in_page mask bits in edac_mc_handle_ce() Parameter offset_in_page in edac_mc_handle_ce() should mask the higher bits above the page size, not the lower bits. The original input sometimes causes a crash. Signed-off-by: Kai.Jiang Signed-off-by: Shaohui Xie Cc: Anton Vorontsov Cc: Grant Likely Cc: "David S. Miller" Cc: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b34a6b1da371ed8af1221459a18c67970f7e3d53 Author: Vasiliy Kulikov Date: Tue Jul 26 16:08:48 2011 -0700 ipc: introduce shm_rmid_forced sysctl Add support for the shm_rmid_forced sysctl. If set to 1, all shared memory objects in current ipc namespace will be automatically forced to use IPC_RMID. The POSIX way of handling shmem allows one to create shm objects and call shmdt(), leaving shm object associated with no process, thus consuming memory not counted via rlimits. With shm_rmid_forced=1 the shared memory object is counted at least for one process, so OOM killer may effectively kill the fat process holding the shared memory. It obviously breaks POSIX - some programs relying on the feature would stop working. So set shm_rmid_forced=1 only if you're sure nobody uses "orphaned" memory. Use shm_rmid_forced=0 by default for compatability reasons. The feature was previously impemented in -ow as a configure option. [akpm@linux-foundation.org: fix documentation, per Randy] [akpm@linux-foundation.org: fix warning] [akpm@linux-foundation.org: readability/conventionality tweaks] [akpm@linux-foundation.org: fix shm_rmid_forced/shm_forced_rmid confusion, use standard comment layout] Signed-off-by: Vasiliy Kulikov Cc: Randy Dunlap Cc: "Eric W. Biederman" Cc: "Serge E. Hallyn" Cc: Daniel Lezcano Cc: Oleg Nesterov Cc: Tejun Heo Cc: Ingo Molnar Cc: Alan Cox Cc: Solar Designer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d40dcdb0172a1ba853464983a059fb45e0aaf61a Author: Jiri Slaby Date: Tue Jul 26 16:08:47 2011 -0700 ipc/mqueue.c: fix mq_open() return value We return ENOMEM from mqueue_get_inode even when we have enough memory. Namely in case the system rlimit of mqueue was reached. This error propagates to mq_queue and user sees the error unexpectedly. So fix this up to properly return EMFILE as described in the manpage: EMFILE The process already has the maximum number of files and message queues open. instead of: ENOMEM Insufficient memory. With the previous patch we just switch to ERR_PTR/PTR_ERR/IS_ERR error handling here. Signed-off-by: Jiri Slaby Cc: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04715206c0c2fd4ec5ca77fa51e3a5b41ce71492 Author: Jiri Slaby Date: Tue Jul 26 16:08:46 2011 -0700 ipc/mqueue.c: refactor failure handling If new_inode fails to allocate an inode we need only to return with NULL. But now we test the opposite and have all the work in a nested block. So do the opposite to save one indentation level (and remove unnecessary line breaks). This is only a preparation/cleanup for the next patch where we fix up return values from mqueue_get_inode. Signed-off-by: Jiri Slaby Cc: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a64a26e822ddb739de464540dfd2cbb6abce47d5 Author: KOSAKI Motohiro Date: Tue Jul 26 16:08:45 2011 -0700 cpumask: add cpumask_var_t documentation cpumask_var_t has one notable difference from cpumask_t. Add the explanation. Signed-off-by: KOSAKI Motohiro Cc: Thiago Farina Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37e7b5f1535dddaace865b25df34a2d049a3a66f Author: KOSAKI Motohiro Date: Tue Jul 26 16:08:44 2011 -0700 cpumask: alloc_cpumask_var() use NUMA_NO_NODE NUMA_NO_NODE and numa_node_id() have different meanings. NUMA_NO_NODE is obviously the recommended fallback. Signed-off-by: KOSAKI Motohiro Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 95918f4a72ce1dbbd2ce67a7c3bfff31335f4219 Author: KOSAKI Motohiro Date: Tue Jul 26 16:08:44 2011 -0700 cpumask: convert for_each_cpumask() with for_each_cpu() Adapt new API fashion. Signed-off-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32e107f71e4a993ac438f0049aa4019457911ffb Author: Oleg Nesterov Date: Tue Jul 26 16:08:43 2011 -0700 fs/exec.c:acct_arg_size(): ptl is no longer needed for add_mm_counter() acct_arg_size() takes ->page_table_lock around add_mm_counter() if !SPLIT_RSS_COUNTING. This is not needed after commit 172703b08cd0 ("mm: delete non-atomic mm counter implementation"). Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Cc: Dave Hansen Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4edf8bd06916645b57df23a720b17cae4051c43 Author: Tetsuo Handa Date: Tue Jul 26 16:08:42 2011 -0700 exec: do not retry load_binary method if CONFIG_MODULES=n If CONFIG_MODULES=n, it makes no sense to retry the list of binary formats handler because the list will not be modified by request_module(). Signed-off-by: Tetsuo Handa Cc: Richard Weinberger Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 912193521b719fbfc2f16776febf5232fe8ba261 Author: Tetsuo Handa Date: Tue Jul 26 16:08:41 2011 -0700 exec: do not call request_module() twice from search_binary_handler() Currently, search_binary_handler() tries to load binary loader module using request_module() if a loader for the requested program is not yet loaded. But second attempt of request_module() does not affect the result of search_binary_handler(). If request_module() triggered recursion, calling request_module() twice causes 2 to the power of MAX_KMOD_CONCURRENT (= 50) repetitions. It is not an infinite loop but is sufficient for users to consider as a hang up. Therefore, this patch changes not to call request_module() twice, making 1 to the power of MAX_KMOD_CONCURRENT repetitions in case of recursion. Signed-off-by: Tetsuo Handa Reported-by: Richard Weinberger Tested-by: Richard Weinberger Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aacb3d17a73f6447c04e4d769391238dcf85568d Author: Michal Hocko Date: Tue Jul 26 16:08:40 2011 -0700 fs/exec.c: use BUILD_BUG_ON for VM_STACK_FLAGS & VM_STACK_INCOMPLETE_SETUP Commit a8bef8ff6ea1 ("mm: migration: avoid race between shift_arg_pages() and rmap_walk() during migration by not migrating temporary stacks") introduced a BUG_ON() to ensure that VM_STACK_FLAGS and VM_STACK_INCOMPLETE_SETUP do not overlap. The check is a compile time one, so BUILD_BUG_ON is more appropriate. Signed-off-by: Michal Hocko Cc: Mel Gorman Cc: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb0a685cb95a0267a96153af2f72486f27be5847 Author: Daniel Rebelo de Oliveira Date: Tue Jul 26 16:08:39 2011 -0700 kernel/fork.c: fix a few coding style issues Signed-off-by: Daniel Rebelo de Oliveira Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 293eb1e7772b25a93647c798c7b89bf26c2da2e0 Author: Vasiliy Kulikov Date: Tue Jul 26 16:08:38 2011 -0700 proc: fix a race in do_io_accounting() If an inode's mode permits opening /proc/PID/io and the resulting file descriptor is kept across execve() of a setuid or similar binary, the ptrace_may_access() check tries to prevent using this fd against the task with escalated privileges. Unfortunately, there is a race in the check against execve(). If execve() is processed after the ptrace check, but before the actual io information gathering, io statistics will be gathered from the privileged process. At least in theory this might lead to gathering sensible information (like ssh/ftp password length) that wouldn't be available otherwise. Holding task->signal->cred_guard_mutex while gathering the io information should protect against the race. The order of locking is similar to the one inside of ptrace_attach(): first goes cred_guard_mutex, then lock_task_sighand(). Signed-off-by: Vasiliy Kulikov Cc: Al Viro Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d2857e79a2ba7c155eaa1a7d3581c8d26b31e54e Author: Daisuke Ogino Date: Tue Jul 26 16:08:37 2011 -0700 procfs: return ENOENT on opening a being-removed proc entry Change the return value to ENOENT. This return value is then returned when opening the proc entry that have been removed. For example, open("/proc/bus/pci/XX/YY") when the corresponding device is being hot-removed. Signed-off-by: Daisuke Ogino Cc: Jesse Barnes Acked-by: Alexey Dobriyan Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5296f6d315bdd8f1dc97348b788638327a6ab192 Author: Andrew Morton Date: Tue Jul 26 16:08:35 2011 -0700 h8300/m68k/xtensa: __FD_ISSET should return 0/1 Harmonise these return values with other architectures. In some cases this affects all compilers and in other cases non-gcc compilers only. Cc: Yoshinori Sato Cc: Geert Uytterhoeven Cc: Chris Zankel Cc: Ulrich Drepper Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99b64567486716d18b2156cad188d86478816e4f Author: Oleg Nesterov Date: Tue Jul 26 16:08:34 2011 -0700 do_coredump: fix the "ispipe" error check do_coredump() assumes that if format_corename() fails it should return -ENOMEM. This is not true, for example cn_print_exe_file() can propagate the error from d_path. Even if it was true, this is too fragile. Change the code to check "ispipe < 0". Signed-off-by: Oleg Nesterov Signed-off-by: Jiri Slaby Reviewed-by: Neil Horman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c563731fee0f625924f72e854957bc77601e8b3 Author: Jiri Slaby Date: Tue Jul 26 16:08:33 2011 -0700 coredump: escape / in hostname and comm Change every occurence of / in comm and hostname to !. If the process changes its name to contain /, the core is not dumped (if the directory tree doesn't exist like that). The same with hostname being something like myhost/3. Fix this behaviour by using the escape loop used in %E. (We extract it to a separate function.) Now both with comm == myprocess/1 and hostname == myhost/1, the core is dumped like (kernel.core_pattern='core.%p.%e.%h): core.2349.myprocess!1.myhost!1 Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Al Viro Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3141c8b165644774eb0e83d8330fbe47e45b37bf Author: Jiri Slaby Date: Tue Jul 26 16:08:32 2011 -0700 coredump: use task comm instead of (unknown) If we don't know the file corresponding to the binary (i.e. exe_file is unknown), use "task->comm (path unknown)" instead of simple "(unknown)" as suggested by ak. The fallback is the same as %e except it will append "(path unknown)". Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Al Viro Cc: Andi Kleen Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0e9a6cb5e66f4b23e2a8f6b3f00949b7b3125dda Author: Mike Frysinger Date: Tue Jul 26 16:08:31 2011 -0700 ptrace: unify show_regs() prototype [ poleg@redhat.com: no need to declare show_regs() in ptrace.h, sched.h does this ] Signed-off-by: Mike Frysinger Cc: Tejun Heo Signed-off-by: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 778d3b0ff0654ad7092bf823fd32010066b12365 Author: Michal Hocko Date: Tue Jul 26 16:08:30 2011 -0700 cpusets: randomize node rotor used in cpuset_mem_spread_node() [ This patch has already been accepted as commit 0ac0c0d0f837 but later reverted (commit 35926ff5fba8) because it itroduced arch specific __node_random which was defined only for x86 code so it broke other archs. This is a followup without any arch specific code. Other than that there are no functional changes.] Some workloads that create a large number of small files tend to assign too many pages to node 0 (multi-node systems). Part of the reason is that the rotor (in cpuset_mem_spread_node()) used to assign nodes starts at node 0 for newly created tasks. This patch changes the rotor to be initialized to a random node number of the cpuset. [akpm@linux-foundation.org: fix layout] [Lee.Schermerhorn@hp.com: Define stub numa_random() for !NUMA configuration] [mhocko@suse.cz: Make it arch independent] [akpm@linux-foundation.org: fix CONFIG_NUMA=y, MAX_NUMNODES>1 build] Signed-off-by: Jack Steiner Signed-off-by: Lee Schermerhorn Signed-off-by: Michal Hocko Reviewed-by: KOSAKI Motohiro Cc: Christoph Lameter Cc: Pekka Enberg Cc: Paul Menage Cc: Jack Steiner Cc: Robin Holt Cc: David Rientjes Cc: Christoph Lameter Cc: David Rientjes Cc: Jack Steiner Cc: KOSAKI Motohiro Cc: Lee Schermerhorn Cc: Michal Hocko Cc: Paul Menage Cc: Pekka Enberg Cc: Robin Holt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8521fc50d433507a7cdc96bec280f9e5888a54cc Author: Michal Hocko Date: Tue Jul 26 16:08:29 2011 -0700 memcg: get rid of percpu_charge_mutex lock percpu_charge_mutex protects from multiple simultaneous per-cpu charge caches draining because we might end up having too many work items. At least this was the case until commit 26fe61684449 ("memcg: fix percpu cached charge draining frequency") when we introduced a more targeted draining for async mode. Now that also sync draining is targeted we can safely remove mutex because we will not send more work than the current number of CPUs. FLUSHING_CACHED_CHARGE protects from sending the same work multiple times and stock->nr_pages == 0 protects from pointless sending a work if there is obviously nothing to be done. This is of course racy but we can live with it as the race window is really small (we would have to see FLUSHING_CACHED_CHARGE cleared while nr_pages would be still non-zero). The only remaining place where we can race is synchronous mode when we rely on FLUSHING_CACHED_CHARGE test which might have been set by other drainer on the same group but we should wait in that case as well. Signed-off-by: Michal Hocko Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e92041d68b40c47faa34c7dc08fc650a6c36adc Author: Michal Hocko Date: Tue Jul 26 16:08:29 2011 -0700 memcg: add mem_cgroup_same_or_subtree() helper We are checking whether a given two groups are same or at least in the same subtree of a hierarchy at several places. Let's make a helper for it to make code easier to read. Signed-off-by: Michal Hocko Acked-by: KAMEZAWA Hiroyuki Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d38144b7a5f8d0a5e05d549177191374c6911009 Author: Michal Hocko Date: Tue Jul 26 16:08:28 2011 -0700 memcg: unify sync and async per-cpu charge cache draining Currently we have two ways how to drain per-CPU caches for charges. drain_all_stock_sync will synchronously drain all caches while drain_all_stock_async will asynchronously drain only those that refer to a given memory cgroup or its subtree in hierarchy. Targeted async draining has been introduced by 26fe6168 (memcg: fix percpu cached charge draining frequency) to reduce the cpu workers number. sync draining is currently triggered only from mem_cgroup_force_empty which is triggered only by userspace (mem_cgroup_force_empty_write) or when a cgroup is removed (mem_cgroup_pre_destroy). Although these are not usually frequent operations it still makes some sense to do targeted draining as well, especially if the box has many CPUs. This patch unifies both methods to use the single code (drain_all_stock) which relies on the original async implementation and just adds flush_work to wait on all caches that are still under work for the sync mode. We are using FLUSHING_CACHED_CHARGE bit check to prevent from waiting on a work that we haven't triggered. Please note that both sync and async functions are currently protected by percpu_charge_mutex so we cannot race with other drainers. Signed-off-by: Michal Hocko Reviewed-by: KAMEZAWA Hiroyuki Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d1a05b6973c7cb33144fa965d73facc708ffc37d Author: Michal Hocko Date: Tue Jul 26 16:08:27 2011 -0700 memcg: do not try to drain per-cpu caches without pages drain_all_stock_async tries to optimize a work to be done on the work queue by excluding any work for the current CPU because it assumes that the context we are called from already tried to charge from that cache and it's failed so it must be empty already. While the assumption is correct we can optimize it even more by checking the current number of pages in the cache. This will also reduce a work on other CPUs with an empty stock. For the current CPU we can simply call drain_local_stock rather than deferring it to the work queue. [kamezawa.hiroyu@jp.fujitsu.com: use drain_local_stock for current CPU optimization] Signed-off-by: Michal Hocko Cc: KAMEZAWA Hiroyuki Signed-off-by: Linus Torvalds commit 82f9d486e59f588c7d100865c36510644abda356 Author: KAMEZAWA Hiroyuki Date: Tue Jul 26 16:08:26 2011 -0700 memcg: add memory.vmscan_stat The commit log of 0ae5e89c60c9 ("memcg: count the soft_limit reclaim in...") says it adds scanning stats to memory.stat file. But it doesn't because we considered we needed to make a concensus for such new APIs. This patch is a trial to add memory.scan_stat. This shows - the number of scanned pages(total, anon, file) - the number of rotated pages(total, anon, file) - the number of freed pages(total, anon, file) - the number of elaplsed time (including sleep/pause time) for both of direct/soft reclaim. The biggest difference with oringinal Ying's one is that this file can be reset by some write, as # echo 0 ...../memory.scan_stat Example of output is here. This is a result after make -j 6 kernel under 300M limit. [kamezawa@bluextal ~]$ cat /cgroup/memory/A/memory.scan_stat [kamezawa@bluextal ~]$ cat /cgroup/memory/A/memory.vmscan_stat scanned_pages_by_limit 9471864 scanned_anon_pages_by_limit 6640629 scanned_file_pages_by_limit 2831235 rotated_pages_by_limit 4243974 rotated_anon_pages_by_limit 3971968 rotated_file_pages_by_limit 272006 freed_pages_by_limit 2318492 freed_anon_pages_by_limit 962052 freed_file_pages_by_limit 1356440 elapsed_ns_by_limit 351386416101 scanned_pages_by_system 0 scanned_anon_pages_by_system 0 scanned_file_pages_by_system 0 rotated_pages_by_system 0 rotated_anon_pages_by_system 0 rotated_file_pages_by_system 0 freed_pages_by_system 0 freed_anon_pages_by_system 0 freed_file_pages_by_system 0 elapsed_ns_by_system 0 scanned_pages_by_limit_under_hierarchy 9471864 scanned_anon_pages_by_limit_under_hierarchy 6640629 scanned_file_pages_by_limit_under_hierarchy 2831235 rotated_pages_by_limit_under_hierarchy 4243974 rotated_anon_pages_by_limit_under_hierarchy 3971968 rotated_file_pages_by_limit_under_hierarchy 272006 freed_pages_by_limit_under_hierarchy 2318492 freed_anon_pages_by_limit_under_hierarchy 962052 freed_file_pages_by_limit_under_hierarchy 1356440 elapsed_ns_by_limit_under_hierarchy 351386416101 scanned_pages_by_system_under_hierarchy 0 scanned_anon_pages_by_system_under_hierarchy 0 scanned_file_pages_by_system_under_hierarchy 0 rotated_pages_by_system_under_hierarchy 0 rotated_anon_pages_by_system_under_hierarchy 0 rotated_file_pages_by_system_under_hierarchy 0 freed_pages_by_system_under_hierarchy 0 freed_anon_pages_by_system_under_hierarchy 0 freed_file_pages_by_system_under_hierarchy 0 elapsed_ns_by_system_under_hierarchy 0 total_xxxx is for hierarchy management. This will be useful for further memcg developments and need to be developped before we do some complicated rework on LRU/softlimit management. This patch adds a new struct memcg_scanrecord into scan_control struct. sc->nr_scanned at el is not designed for exporting information. For example, nr_scanned is reset frequentrly and incremented +2 at scanning mapped pages. To avoid complexity, I added a new param in scan_control which is for exporting scanning score. Signed-off-by: KAMEZAWA Hiroyuki Cc: Daisuke Nishimura Cc: Michal Hocko Cc: Ying Han Cc: Andrew Bresticker Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 108b6a78463bb8c7163e4f9779f36ad8bbade334 Author: Daisuke Nishimura Date: Tue Jul 26 16:08:25 2011 -0700 memcg: fix behavior of mem_cgroup_resize_limit() Commit 22a668d7c3ef ("memcg: fix behavior under memory.limit equals to memsw.limit") introduced "memsw_is_minimum" flag, which becomes true when mem_limit == memsw_limit. The flag is checked at the beginning of reclaim, and "noswap" is set if the flag is true, because using swap is meaningless in this case. This works well in most cases, but when we try to shrink mem_limit, which is the same as memsw_limit now, we might fail to shrink mem_limit because swap doesn't used. This patch fixes this behavior by: - check MEM_CGROUP_RECLAIM_SHRINK at the begining of reclaim - If it is set, don't set "noswap" flag even if memsw_is_minimum is true. Signed-off-by: Daisuke Nishimura Cc: Balbir Singh Acked-by: KAMEZAWA Hiroyuki Cc: Michal Hocko Cc: Ying Han Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4508378b9523e22a2a0175d8bf64d932fb10a67d Author: KAMEZAWA Hiroyuki Date: Tue Jul 26 16:08:24 2011 -0700 memcg: fix vmscan count in small memcgs Commit 246e87a93934 ("memcg: fix get_scan_count() for small targets") fixes the memcg/kswapd behavior against small targets and prevent vmscan priority too high. But the implementation is too naive and adds another problem to small memcg. It always force scan to 32 pages of file/anon and doesn't handle swappiness and other rotate_info. It makes vmscan to scan anon LRU regardless of swappiness and make reclaim bad. This patch fixes it by adjusting scanning count with regard to swappiness at el. At a test "cat 1G file under 300M limit." (swappiness=20) before patch scanned_pages_by_limit 360919 scanned_anon_pages_by_limit 180469 scanned_file_pages_by_limit 180450 rotated_pages_by_limit 31 rotated_anon_pages_by_limit 25 rotated_file_pages_by_limit 6 freed_pages_by_limit 180458 freed_anon_pages_by_limit 19 freed_file_pages_by_limit 180439 elapsed_ns_by_limit 429758872 after patch scanned_pages_by_limit 180674 scanned_anon_pages_by_limit 24 scanned_file_pages_by_limit 180650 rotated_pages_by_limit 35 rotated_anon_pages_by_limit 24 rotated_file_pages_by_limit 11 freed_pages_by_limit 180634 freed_anon_pages_by_limit 0 freed_file_pages_by_limit 180634 elapsed_ns_by_limit 367119089 scanned_pages_by_system 0 the numbers of scanning anon are decreased(as expected), and elapsed time reduced. By this patch, small memcgs will work better. (*) Because the amount of file-cache is much bigger than anon, recalaim_stat's rotate-scan counter make scanning files more. Signed-off-by: KAMEZAWA Hiroyuki Cc: Daisuke Nishimura Cc: Michal Hocko Cc: Ying Han Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1af8efe965676ab30d6c8a5b1fccc9229f339a3b Author: Michal Hocko Date: Tue Jul 26 16:08:24 2011 -0700 memcg: change memcg_oom_mutex to spinlock memcg_oom_mutex is used to protect memcg OOM path and eventfd interface for oom_control. None of the critical sections which it protects sleep (eventfd_signal works from atomic context and the rest are simple linked list resp. oom_lock atomic operations). Mutex is also too heavyweight for those code paths because it triggers a lot of scheduling. It also makes makes convoying effects more visible when we have a big number of oom killing because we take the lock mutliple times during mem_cgroup_handle_oom so we have multiple places where many processes can sleep. Signed-off-by: Michal Hocko Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 79dfdaccd1d5b40ff7cf4a35a0e63696ebb78b4d Author: Michal Hocko Date: Tue Jul 26 16:08:23 2011 -0700 memcg: make oom_lock 0 and 1 based rather than counter Commit 867578cb ("memcg: fix oom kill behavior") introduced a oom_lock counter which is incremented by mem_cgroup_oom_lock when we are about to handle memcg OOM situation. mem_cgroup_handle_oom falls back to a sleep if oom_lock > 1 to prevent from multiple oom kills at the same time. The counter is then decremented by mem_cgroup_oom_unlock called from the same function. This works correctly but it can lead to serious starvations when we have many processes triggering OOM and many CPUs available for them (I have tested with 16 CPUs). Consider a process (call it A) which gets the oom_lock (the first one that got to mem_cgroup_handle_oom and grabbed memcg_oom_mutex) and other processes that are blocked on the mutex. While A releases the mutex and calls mem_cgroup_out_of_memory others will wake up (one after another) and increase the counter and fall into sleep (memcg_oom_waitq). Once A finishes mem_cgroup_out_of_memory it takes the mutex again and decreases oom_lock and wakes other tasks (if releasing memory by somebody else - e.g. killed process - hasn't done it yet). A testcase would look like: Assume malloc XXX is a program allocating XXX Megabytes of memory which touches all allocated pages in a tight loop # swapoff SWAP_DEVICE # cgcreate -g memory:A # cgset -r memory.oom_control=0 A # cgset -r memory.limit_in_bytes= 200M # for i in `seq 100` # do # cgexec -g memory:A malloc 10 & # done The main problem here is that all processes still race for the mutex and there is no guarantee that we will get counter back to 0 for those that got back to mem_cgroup_handle_oom. In the end the whole convoy in/decreases the counter but we do not get to 1 that would enable killing so nothing useful can be done. The time is basically unbounded because it highly depends on scheduling and ordering on mutex (I have seen this taking hours...). This patch replaces the counter by a simple {un}lock semantic. As mem_cgroup_oom_{un}lock works on the a subtree of a hierarchy we have to make sure that nobody else races with us which is guaranteed by the memcg_oom_mutex. We have to be careful while locking subtrees because we can encounter a subtree which is already locked: hierarchy: A / \ B \ /\ \ C D E B - C - D tree might be already locked. While we want to enable locking E subtree because OOM situations cannot influence each other we definitely do not want to allow locking A. Therefore we have to refuse lock if any subtree is already locked and clear up the lock for all nodes that have been set up to the failure point. On the other hand we have to make sure that the rest of the world will recognize that a group is under OOM even though it doesn't have a lock. Therefore we have to introduce under_oom variable which is incremented and decremented for the whole subtree when we enter resp. leave mem_cgroup_handle_oom. under_oom, unlike oom_lock, doesn't need be updated under memcg_oom_mutex because its users only check a single group and they use atomic operations for that. This can be checked easily by the following test case: # cgcreate -g memory:A # cgset -r memory.use_hierarchy=1 A # cgset -r memory.oom_control=1 A # cgset -r memory.limit_in_bytes= 100M # cgset -r memory.memsw.limit_in_bytes= 100M # cgcreate -g memory:A/B # cgset -r memory.oom_control=1 A/B # cgset -r memory.limit_in_bytes=20M # cgset -r memory.memsw.limit_in_bytes=20M # cgexec -g memory:A/B malloc 30 & #->this will be blocked by OOM of group B # cgexec -g memory:A malloc 80 & #->this will be blocked by OOM of group A While B gets oom_lock A will not get it. Both of them go into sleep and wait for an external action. We can make the limit higher for A to enforce waking it up # cgset -r memory.memsw.limit_in_bytes=300M A # cgset -r memory.limit_in_bytes=300M A malloc in A has to wake up even though it doesn't have oom_lock. Finally, the unlock path is very easy because we always unlock only the subtree we have locked previously while we always decrement under_oom. Signed-off-by: Michal Hocko Signed-off-by: KAMEZAWA Hiroyuki Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb2a0de92c891b8feeedc0178acb3ae009d899a8 Author: KAMEZAWA Hiroyuki Date: Tue Jul 26 16:08:22 2011 -0700 memcg: consolidate memory cgroup lru stat functions In mm/memcontrol.c, there are many lru stat functions as.. mem_cgroup_zone_nr_lru_pages mem_cgroup_node_nr_file_lru_pages mem_cgroup_nr_file_lru_pages mem_cgroup_node_nr_anon_lru_pages mem_cgroup_nr_anon_lru_pages mem_cgroup_node_nr_unevictable_lru_pages mem_cgroup_nr_unevictable_lru_pages mem_cgroup_node_nr_lru_pages mem_cgroup_nr_lru_pages mem_cgroup_get_local_zonestat Some of them are under #ifdef MAX_NUMNODES >1 and others are not. This seems bad. This patch consolidates all functions into mem_cgroup_zone_nr_lru_pages() mem_cgroup_node_nr_lru_pages() mem_cgroup_nr_lru_pages() For these functions, "which LRU?" information is passed by a mask. example: mem_cgroup_nr_lru_pages(mem, BIT(LRU_ACTIVE_ANON)) And I added some macro as ALL_LRU, ALL_LRU_FILE, ALL_LRU_ANON. example: mem_cgroup_nr_lru_pages(mem, ALL_LRU) BTW, considering layout of NUMA memory placement of counters, this patch seems to be better. Now, when we gather all LRU information, we scan in following orer for_each_lru -> for_each_node -> for_each_zone. This means we'll touch cache lines in different node in turn. After patch, we'll scan for_each_node -> for_each_zone -> for_each_lru(mask) Then, we'll gather information in the same cacheline at once. [akpm@linux-foundation.org: fix warnigns, build error] Signed-off-by: KAMEZAWA Hiroyuki Cc: Daisuke Nishimura Cc: Balbir Singh Cc: Michal Hocko Cc: Ying Han Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1f4c025b5a5520fd2571244196b1b01ad96d18f6 Author: KAMEZAWA Hiroyuki Date: Tue Jul 26 16:08:21 2011 -0700 memcg: export memory cgroup's swappiness with mem_cgroup_swappiness() Each memory cgroup has a 'swappiness' value which can be accessed by get_swappiness(memcg). The major user is try_to_free_mem_cgroup_pages() and swappiness is passed by argument. It's propagated by scan_control. get_swappiness() is a static function but some planned updates will need to get swappiness from files other than memcontrol.c This patch exports get_swappiness() as mem_cgroup_swappiness(). With this, we can remove the argument of swapiness from try_to_free... and drop swappiness from scan_control. only memcg uses it. Signed-off-by: KAMEZAWA Hiroyuki Cc: Daisuke Nishimura Cc: Balbir Singh Cc: Michal Hocko Cc: Ying Han Cc: Shaohua Li Cc: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b830ac1d9a2262093bb0f3f6a2fd2a1c8278daf5 Author: Thomas Gleixner Date: Tue Jul 26 16:08:20 2011 -0700 rtc: fix hrtimer deadlock Ben reported a lockup related to rtc. The lockup happens due to: CPU0 CPU1 rtc_irq_set_state() __run_hrtimer() spin_lock_irqsave(&rtc->irq_task_lock) rtc_handle_legacy_irq(); spin_lock(&rtc->irq_task_lock); hrtimer_cancel() while (callback_running); So the running callback never finishes as it's blocked on rtc->irq_task_lock. Use hrtimer_try_to_cancel() instead and drop rtc->irq_task_lock while waiting for the callback. Fix this for both rtc_irq_set_state() and rtc_irq_set_freq(). Signed-off-by: Thomas Gleixner Reported-by: Ben Greear Cc: John Stultz Cc: Ingo Molnar Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 431e2bcc371016824f419baa745f82388258f3ee Author: Thomas Gleixner Date: Tue Jul 26 16:08:19 2011 -0700 rtc: limit frequency Due to the hrtimer self rearming mode a user can DoS the machine simply because it's starved by hrtimer events. The RTC hrtimer is self rearming. We really need to limit the frequency to something sensible. Signed-off-by: Thomas Gleixner Cc: John Stultz Cc: Ingo Molnar Cc: Ben Greear Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c4f57d12df7696d65b0247bfd57fd082a7719e6 Author: Thomas Gleixner Date: Tue Jul 26 16:08:18 2011 -0700 rtc: handle errors correctly in rtc_irq_set_state() The code checks the correctness of the parameters, but unconditionally arms/disarms the hrtimer. The result is that a random task might arm/disarm rtc timer and surprise the real owner by either generating events or by stopping them. Signed-off-by: Thomas Gleixner Cc: John Stultz Cc: Ingo Molnar Cc: Ben Greear Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b45d59fb92f60c9c3cda01355d42b907b863e47a Author: Mathias Krause Date: Tue Jul 26 16:08:17 2011 -0700 mn10300, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause Cc: Koichi Yasutake Acked-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fc92805a8e25e5e2b0ba7c413cc15d9f05962ee8 Author: Jonghwan Choi Date: Tue Jul 26 16:08:16 2011 -0700 drivers/base/power/opp.c: fix dev_opp initial value Dev_opp initial value shoule be ERR_PTR(), IS_ERR() is used to check error. Signed-off-by: Jonghwan Choi Cc: "Rafael J. Wysocki" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit adc400f69053b16756ff3b00daa64884c8df0787 Author: Mathias Krause Date: Tue Jul 26 16:08:15 2011 -0700 frv, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so those calls to set_fs(USER_DS) are redundant. Also removed the dead code in flush_thread(). Signed-off-by: Mathias Krause Acked-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 07e729ce894487e92405d3b221cffe587420a376 Author: Tomoya MORINAGA Date: Thu Jun 23 16:17:10 2011 +0900 i2c-eg20t : Fix the issue of Combined R/W transfer mode issue-1 In case combined transfer mode fails halfway, the processing must be stopped halfway. However currently, the processing is continued. This patch breaks the processing. issue-2 Currently, pch_i2c_xfer returns read/write size at that time. However pch_i2c_xfer must return the number of messages to be read/written. This patch modifies correctly. Signed-off-by: Tomoya MORINAGA Signed-off-by: Ben Dooks commit 7a9c42ccc9fd4317383e55209f825f974e64aa99 Author: Tomoya MORINAGA Date: Thu Jun 9 11:29:29 2011 +0900 i2c-eg20t : Support Combined R/W transfer mode Currently, Combined R/W transfer mode is not supported. This patch enables Combined R/W transfer mode. Signed-off-by: Tomoya MORINAGA Signed-off-by: Ben Dooks commit 5c470f39eea66ff00b31136f8bce9359d6b95375 Author: John Bonesio Date: Wed Jun 22 09:16:56 2011 -0700 i2c: Tegra: Add DeviceTree support This patch modifies the tegra i2c driver so that it can be initiailized using the device tree along with the devices connected to the i2c bus. Signed-off-by: John Bonesio Acked-by: Grant Likely Acked-by: OIof Johansson Signed-off-by: Ben Dooks commit 22602868865f630adab94c4419b3aeb414014865 Author: Wim Van Sebroeck Date: Mon Jul 25 18:53:00 2011 +0000 watchdog: it8712f_wdt.c: improve includes remove unneeded pci.h include. and include ioport.h to avoid build errors for the region functions. Reported-by: Randy Dunlap Signed-off-by: Wim Van Sebroeck commit e7b39145b54e62e9625fabb46cf591a3a06658aa Author: Jean-Christophe Plagniol-Villard Date: Fri Jul 15 01:52:05 2011 +0200 watchdog: at91sam9/wdt: move register header to drivers move register header to drivers Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Signed-off-by: Wim Van Sebroeck commit e9659e69b0094ea2cc92716e2b1cd6a7db9caf2e Author: Alejandro Cabrera Date: Thu Jun 2 22:13:11 2011 +0100 watchdog: Add Xilinx watchdog timer driver Watchdog timer device driver for Xilinx xps_timebase_wdt compatible ip cores. It takes watchdog timer configuration from device tree and it needs that its parent has defined the property "clock-frecuency". It is compatible with watchdog timer kernel API, so user apps like watchdogd may talk with it. Signed-off-by: Alejandro Cabrera Signed-off-by: Wim Van Sebroeck commit 2fc5d52b212b58a5b48af19d85cb60971aa1aa4b Author: Wolfram Sang Date: Thu Jul 14 12:53:00 2011 +0200 watchdog: remove empty pm-functions While checking what watchdog drivers usually do in suspend/resume to spot common behaviour for the watchdog framework, I found these drivers which do nothing but add some cruft. Remove it, it is superfluous. New approaches should probably be done with pm_ops anyway. Signed-off-by: Wolfram Sang Signed-off-by: Wim Van Sebroeck commit 081d83a3393f65adc94fc4240b9926be3054f9dc Author: Nick Bowler Date: Fri Jul 15 11:04:02 2011 -0400 watchdog: sp805: Flush posted writes in enable/disable. There are no reads in these functions, so if MMIO writes are posted, the writes in enable/disable may not have completed by the time these functions return. If the functions run from different CPUs, it's in theory possible for the writes to be interleaved, which would be disastrous for this driver. At the very least, we need an mmiowb() before releasing the lock, but since it seems desirable for the watchdog timer to be actually stopped or reset when these functions return, read the lock register to force the writes out. Signed-off-by: Nick Bowler Signed-off-by: Wim Van Sebroeck commit da3e515024ba32aaf0d524518ce39a8fb77332cd Author: Nick Bowler Date: Fri Jul 15 11:04:01 2011 -0400 watchdog: sp805: Don't write 0 to the load value register. At least on the Versatile Express' V2M, calling wdt_disable followed by wdt_enable, for instance by running the following sequence: echo V > /dev/watchdog; echo V > /dev/watchdog results in an immediate reset. The wdt_disable function writes 0 to the load register; while the watchdog interrupts are disabled at this point, this special value is defined to trigger an interrupt immediately. It appears that in this instance, the reset happens when the interrupts are subsequently enabled by wdt_enable. Putting in a short delay after writing a new load value in wdt_enable solves the issue, but it seems cleaner to simply never write 0 to the load register at all: according to the hardware docs, writing 0 to the control register suffices to stop the counter, and the write of 0 to the load register is questionable anyway since this register resets to 0xffffffff. Signed-off-by: Nick Bowler Signed-off-by: Wim Van Sebroeck commit f5a427eedeead2be82561497a12788bd1f0c07d3 Author: Shawn Guo Date: Mon Jul 18 11:15:21 2011 +0800 watchdog: imx2_wdt: add device tree probe support Adds device tree probe support for imx2_wdt driver. Signed-off-by: Shawn Guo Cc: Grant Likely Cc: Wolfram Sang Signed-off-by: Wim Van Sebroeck commit 6fd4ce886440c7a1b08b6642e606ee19097829df Merge: ba5b56c bf28607 Author: Linus Torvalds Date: Tue Jul 26 14:17:28 2011 -0700 Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus: (31 commits) MIPS: Close races in TLB modify handlers. MIPS: Add uasm UASM_i_SRL_SAFE macro. MIPS: RB532: Use hex_to_bin() MIPS: Enable cpu_has_clo_clz for MIPS Technologies' platforms MIPS: PowerTV: Provide cpu-feature-overrides.h MIPS: Remove pointless return statement from empty void functions. MIPS: Limit fixrange_init() to the FIXMAP region MIPS: Install handlers for software IRQs MIPS: Move FIXADDR_TOP into spaces.h MIPS: Add SYNC after cacheflush MIPS: pfn_valid() is broken on low memory HIGHMEM systems MIPS: HIGHMEM DMA on noncoherent MIPS32 processors MIPS: topdown mmap support MIPS: Remove redundant addr_limit assignment on exec. MIPS: AR7: Replace __attribute__((__packed__)) with __packed MIPS: AR7: Remove 'space before tabs' in platform.c MIPS: Lantiq: Add missing clk_enable and clk_disable functions. MIPS: AR7: Fix trailing semicolon bug in clock.c MAINTAINERS: Update MIPS entry. MIPS: BCM63xx: Remove duplicate PERF_IRQSTAT_REG definition ... commit e5036c2575b244851637a81efc4104c076c4fa21 Merge: 41bf371 5bc91db Author: John W. Linville Date: Tue Jul 26 17:05:55 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit ba5b56cb3e3d2cab73d4fee9a022bb69462a8cd9 Merge: 243dd28 d79698d Author: Linus Torvalds Date: Tue Jul 26 13:38:50 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (23 commits) ceph: document unlocked d_parent accesses ceph: explicitly reference rename old_dentry parent dir in request ceph: document locking for ceph_set_dentry_offset ceph: avoid d_parent in ceph_dentry_hash; fix ceph_encode_fh() hashing bug ceph: protect d_parent access in ceph_d_revalidate ceph: protect access to d_parent ceph: handle racing calls to ceph_init_dentry ceph: set dir complete frag after adding capability rbd: set blk_queue request sizes to object size ceph: set up readahead size when rsize is not passed rbd: cancel watch request when releasing the device ceph: ignore lease mask ceph: fix ceph_lookup_open intent usage ceph: only link open operations to directory unsafe list if O_CREAT|O_TRUNC ceph: fix bad parent_inode calc in ceph_lookup_open ceph: avoid carrying Fw cap during write into page cache libceph: don't time out osd requests that haven't been received ceph: report f_bfree based on kb_avail rather than diffing. ceph: only queue capsnap if caps are dirty ceph: fix snap writeback when racing with writes ... commit 5bc91db8933bce07c3af86da2bd956414aa5a725 Author: Mihai Moldovan Date: Mon Jul 25 11:18:58 2011 +0200 wireless: fix a typo in ignore_reg_update Just a typo fix changing regulaotry to regulatory. Signed-off-by: Mihai Moldovan CC: John W. Linville CC: Mohammed Shafi Signed-off-by: John W. Linville commit e61b52d1309df08b86a35e54a61f0cc932b28291 Author: Pavel Roskin Date: Fri Jul 22 18:07:13 2011 -0400 b43: fix invalid memory access in b43_ssb_remove() wldev is freed in b43_one_core_detach() and should not be accessed after that call. Keep wldev->dev in a local variable. Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 6f89062a66d8b88ca89a15a6cebc0bc0db284441 Author: Rafał Miłecki Date: Fri Jul 22 13:11:05 2011 +0200 b43: bcma: drop BROKEN We've fixed the last issue with BCMA support which caused memory corruption on loading and unloading b43. Support for BCMA in b43 was tested with 14e4:4353, 14e4:4357, 14e4:4727 and 14e4:4331. First two cards (BCM43224 and BCM43225) are supported. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit f76f424353e678f904c6c13f997851efb6077419 Author: Rafał Miłecki Date: Fri Jul 22 13:11:04 2011 +0200 b43: bus: fix memory corruption when setting driver's data Fixes bug described in: https://bugzilla.kernel.org/show_bug.cgi?id=39172 Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit a203c2aa4cefccb879c879b8e1cad1a09a679e55 Author: Sven Neumann Date: Tue Jul 12 15:52:07 2011 +0200 cfg80211: really ignore the regulatory request At the beginning of wiphy_update_regulatory() a check is performed whether the request is to be ignored. Then the request is sent to the driver nevertheless. This happens even if last_request points to NULL, leading to a crash in the driver: [] (lbs_set_11d_domain_info+0x28/0x1e4 [libertas]) from [] (wiphy_update_regulatory+0x4d0/0x4f4) [] (wiphy_update_regulatory+0x4d0/0x4f4) from [] (wiphy_register+0x354/0x420) [] (wiphy_register+0x354/0x420) from [] (lbs_cfg_register+0x80/0x164 [libertas]) [] (lbs_cfg_register+0x80/0x164 [libertas]) from [] (lbs_start_card+0x20/0x88 [libertas]) [] (lbs_start_card+0x20/0x88 [libertas]) from [] (if_sdio_probe+0x898/0x9c0 [libertas_sdio]) Fix this by returning early. Also remove the out: label as it is not any longer needed. Signed-off-by: Sven Neumann Cc: linux-wireless@vger.kernel.org Cc: Johannes Berg Cc: Daniel Mack Cc: stable@kernel.org Signed-off-by: John W. Linville commit 276556dbd2d9f56f8933393f927e88fae142ce8f Author: Dan Carpenter Date: Fri Jul 8 10:21:15 2011 +0300 NFC: pn533: use after free in pn533_disconnect() We freed "dev" on the line before. Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit e57712ebebbb9db7d8dcef216437b3171ddcf115 Author: Al Viro Date: Tue Jul 26 04:15:54 2011 -0400 merge fchmod() and fchmodat() guts, kill ancient broken kludge The kludge in question is undocumented and doesn't work for 32bit binaries on amd64, sparc64 and s390. Passing (mode_t)-1 as mode had (since 0.99.14v and contrary to behaviour of any other Unix, prescriptions of POSIX, SuS and our own manpages) was kinda-sorta no-op. Note that any software relying on that (and looking for examples shows none) would be visibly broken on sparc64, where practically all userland is built 32bit. No such complaints noticed... Signed-off-by: Al Viro commit 03209378b4b25775bf5e6a86e86f074a1057a439 Author: Al Viro Date: Mon Jul 25 20:54:24 2011 -0400 xfs: fix misspelled S_IS...() mode_t is not a bitmap... Signed-off-by: Al Viro commit abbede1b3a680e108d61aaa415ce5153296e775d Author: Al Viro Date: Tue Jul 26 02:31:30 2011 -0400 xfs: get rid of open-coded S_ISREG(), etc. Signed-off-by: Al Viro commit 243dd2809a5edd2e0e3e62781083aa44049af37d Author: Stephen Rothwell Date: Mon Jul 25 15:18:44 2011 +1000 gma500: udelay(20000) it too long again so replace it with mdelay(20). Fixes build error: ERROR: "__bad_udelay" [drivers/staging/gma500/psb_gfx.ko] undefined! Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 9c646cfc3d98f2e595f7757e42ff59286c6f327e Author: Rafael J. Wysocki Date: Tue Jul 26 20:51:01 2011 +0200 USB / Renesas: Fix build issue related to struct scatterlist Fix build issue caused by undefined struct scatterlist in drivers/usb/renesas_usbhs/fifo.c. Signed-off-by: Rafael J. Wysocki Signed-off-by: Linus Torvalds commit 6c0cbef6662aa685c6a47a18039b9d4f1d5abcb1 Author: Rafael J. Wysocki Date: Tue Jul 26 20:50:23 2011 +0200 MMC / TMIO: Fix build issue related to struct scatterlist Fix build issue caused by undefined struct scatterlist in drivers/mmc/host/tmio_mmc.c. Signed-off-by: Rafael J. Wysocki Signed-off-by: Linus Torvalds commit 2ac232f37fa0e8551856a575fe299c47b65b4d66 Merge: fa8f53a 5cf49d7 Author: Linus Torvalds Date: Tue Jul 26 11:34:40 2011 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6: jbd: change the field "b_cow_tid" of struct journal_head from type unsigned to tid_t ext3.txt: update the links in the section "useful links" to the latest ones ext3: Fix data corruption in inodes with journalled data ext2: check xattr name_len before acquiring xattr_sem in ext2_xattr_get ext3: Fix compilation with -DDX_DEBUG quota: Remove unused declaration jbd: Use WRITE_SYNC in journal checkpoint. jbd: Fix oops in journal_remove_journal_head() ext3: Return -EINVAL when start is beyond the end of fs in ext3_trim_fs() ext3/ioctl.c: silence sparse warnings about different address spaces ext3/ext4 Documentation: remove bh/nobh since it has been deprecated ext3: Improve truncate error handling ext3: use proper little-endian bitops ext2: include fs.h into ext2_fs.h ext3: Fix oops in ext3_try_to_allocate_with_rsv() jbd: fix a bug of leaking jh->b_jcount jbd: remove dependency on __GFP_NOFAIL ext3: Convert ext3 to new truncate calling convention jbd: Add fixed tracepoints ext3: Add fixed tracepoints Resolve conflicts in fs/ext3/fsync.c due to fsync locking push-down and new fixed tracepoints. commit d79698da32b317e96216236f265a9b72b78ae568 Author: Sage Weil Date: Tue Jul 26 11:31:26 2011 -0700 ceph: document unlocked d_parent accesses For the most part we don't care about racing with rename when directing MDS requests; either the old or new parent is fine. Document that, and do some minor cleanup. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 41b02e1f9bb87b07d792b64aaeb7af3d00d69cd2 Author: Sage Weil Date: Tue Jul 26 11:31:14 2011 -0700 ceph: explicitly reference rename old_dentry parent dir in request We carry a pin on the parent directory for the rename source and dest dentries. For the source it's r_locked_dir; we need to explicitly reference the old_dentry parent as well, since the dentry's d_parent may change between when the request was created and pinned and when it is freed. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 4f1772645296a230e04f5c53e79cfb6f841ce634 Author: Sage Weil Date: Tue Jul 26 11:31:08 2011 -0700 ceph: document locking for ceph_set_dentry_offset Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit e5f86dc377e7ff2b4195831153a85a3e76fefff2 Author: Sage Weil Date: Tue Jul 26 11:30:55 2011 -0700 ceph: avoid d_parent in ceph_dentry_hash; fix ceph_encode_fh() hashing bug Have caller pass in a safely-obtained reference to the parent directory for calculating a dentry's hash valud. While we're here, simpify the flow through ceph_encode_fh() so that there is a single exit point and cleanup. Also fix a bug with the dentry hash calculation: calculate the hash for the dentry we were given, not its parent. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit bf1c6aca96c9d2f117dc7e590c2bc2304e7febe1 Author: Sage Weil Date: Tue Jul 26 11:30:43 2011 -0700 ceph: protect d_parent access in ceph_d_revalidate Protect d_parent with d_lock. Carry a reference. Simplify the flow so that there is a single exit point and cleanup. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 5f21c96dd5c615341963036ae8f5e4f5227a818d Author: Sage Weil Date: Tue Jul 26 11:30:29 2011 -0700 ceph: protect access to d_parent d_parent is protected by d_lock: use it when looking up a dentry's parent directory inode. Also take a reference and drop it in the caller to avoid a use-after-free. Reported-by: Al Viro Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 48d0cbd1242aac969560ef8b90f26ee3b09a6a5c Author: Sage Weil Date: Tue Jul 26 11:30:15 2011 -0700 ceph: handle racing calls to ceph_init_dentry The ->lookup() and prepopulate_readdir() callers are working with unhashed dentries, so we don't have to worry. The export.c callers, though, need to initialize something they got back from d_obtain_alias() and are potentially racing with other callers. Make sure we don't return unless the dentry is properly initialized (by us or someone else). Reported-by: Al Viro Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit dfabbed6fdd509dc2beb89c954bc36014a1bc7cb Author: Sage Weil Date: Tue Jul 26 11:30:02 2011 -0700 ceph: set dir complete frag after adding capability Curretly ceph_add_cap clears the complete bit if we are newly issued the FILE_SHARED cap, which is normally the case for a newly issue cap on a new directory. That means we clear the just-set bit. Move the check that sets the flag to after the cap is added/updated. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 029bcbd8b076fd19787b8c73e58dd0a6f2c0caf1 Author: Josh Durgin Date: Fri Jul 22 11:35:23 2011 -0700 rbd: set blk_queue request sizes to object size This improves performance since more requests can be merged. Reviewed-by: Yehuda Sadeh Signed-off-by: Josh Durgin commit e9852227431a0ed6ceda064f33e4218757acab6c Author: Yehuda Sadeh Date: Fri Jul 22 11:12:28 2011 -0700 ceph: set up readahead size when rsize is not passed This should improve the default read performance, as without it readahead is practically disabled. Signed-off-by: Yehuda Sadeh commit 79e3057c4c9d32b88e6745fd220d91b0a8b2030b Author: Yehuda Sadeh Date: Tue Jul 12 16:56:57 2011 -0700 rbd: cancel watch request when releasing the device We were missing this cleanup, so when a device was released the osd didn't clean up its watchers list, so following notifications could be slow as osd needed to timeout on the client. Signed-off-by: Yehuda Sadeh commit 2f90b852e3ae73889d7f6de6ecf429b9b6a6b103 Author: Sage Weil Date: Tue Jul 26 11:28:25 2011 -0700 ceph: ignore lease mask The lease mask is no longer used (and it changed a while back). Instead, use a non-zero duration to indicate that there is a lease being issued. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 468640e32c7f6bfdaaa011095cc388786755d159 Author: Sage Weil Date: Tue Jul 26 11:28:11 2011 -0700 ceph: fix ceph_lookup_open intent usage We weren't properly calling lookup_instantiate_filp when setting up the lookup intent, which could lead to file leakage on errors. So: - use separate helper for the hidden snapdir translation, immediately following the mds request - use ceph_finish_lookup for the final dentry/return value dance in the exit path - lookup_instantiate_filp on success Reported-by: Al Viro Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 9bae113a085b790de384bf86f09e15b42a65a985 Author: Sage Weil Date: Tue Jul 26 11:27:59 2011 -0700 ceph: only link open operations to directory unsafe list if O_CREAT|O_TRUNC We only need to put these on the directory unsafe list if they have side effects that fsync(2) should flush out. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit acda76578813ef893004ecad0e5ad2bb6039e5f7 Author: Sage Weil Date: Tue Jul 26 11:27:48 2011 -0700 ceph: fix bad parent_inode calc in ceph_lookup_open We were always getting NULL here because the intent file f_dentry is always NULL at this point, which means we were always passing NULL to ceph_mdsc_do_request. In reality, this was fine, since this isn't currently ever a write operation that needs to get strung on the dir's unsafe list. Use the dir explicitly, and only pass it if this open has side-effects that a dir fsync should flush. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit d8de9ab63a57326d21154c13c365f949f53ce8e1 Author: Sage Weil Date: Tue Jul 26 11:27:34 2011 -0700 ceph: avoid carrying Fw cap during write into page cache The generic_file_aio_write call may block on balance_dirty_pages while we flush data to the OSDs. If we hold a reference to the FILE_WR cap during that interval revocation by the MDS (e.g., to do a stat(2)) may be very slow. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 4cf9d544631c92809cb94ea680c71df56e9437aa Author: Sage Weil Date: Tue Jul 26 11:27:24 2011 -0700 libceph: don't time out osd requests that haven't been received Keep track of when an outgoing message is ACKed (i.e., the server fully received it and, presumably, queued it for processing). Time out OSD requests only if it's been too long since they've been received. This prevents timeouts and connection thrashing when the OSDs are simply busy and are throttling the requests they read off the network. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 8f04d42276048b3baff5a5d8fa769f433c62b63e Author: Greg Farnum Date: Tue Jul 26 11:26:54 2011 -0700 ceph: report f_bfree based on kb_avail rather than diffing. Reviewed-by: Yehuda Sadeh Signed-off-by: Greg Farnum commit e77dc3e9c061e50c67e2e1a604d0a370f40db298 Author: Sage Weil Date: Tue Jul 26 11:26:41 2011 -0700 ceph: only queue capsnap if caps are dirty We used to go into this branch if i_wrbuffer_ref_head was non-zero. This was an ancient check from before we were careful about dealing with all kinds of caps (and not just dirty pages). It is cleaner to only queue a capsnap if there is an actual dirty cap. If we are racing with... something...we will end up here with ci->i_wrbuffer_refs but no dirty caps. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit af0ed569d7019f1b49e9e51e77b47092e656b00e Author: Sage Weil Date: Tue Jul 26 11:26:31 2011 -0700 ceph: fix snap writeback when racing with writes There are two problems that come up when we try to queue a capsnap while a write is in progress: - The FILE_WR cap is held, but not yet dirty, so we may queue a capsnap with dirty == 0. That will crash later in __ceph_flush_snaps(). Or on the FILE_WR cap if a write is in progress. - We may not have i_head_snapc set, which causes problems pretty quickly. Look to the snaprealm in this case. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 9cfa1098dcfb34f71c5f3b7bcdbbb435a0cecab2 Author: Sage Weil Date: Tue Jul 26 11:26:18 2011 -0700 ceph: use flag bit for at_end readdir flag This saves us a word of memory per file. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 4918b6d140c4822201ebbe2f070875332aff337b Author: Sage Weil Date: Tue Jul 26 11:26:07 2011 -0700 ceph: add F_SYNC file flag to force sync (non-O_DIRECT) io This allows us to force IO through the sync path which you normally only get when multiple clients are reading/writing to the same file or by mounting with -o sync. Among other things, this lets test programs verify correctness with a single mount. Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 252c6728de604d6a897d85e212996811d5c8c46c Author: Sage Weil Date: Tue Jul 26 11:25:27 2011 -0700 ceph: add flags field to file_info Reviewed-by: Yehuda Sadeh Signed-off-by: Sage Weil commit fa8f53ace4af9470d8414427cb3dc3c0ffc4f182 Merge: 1d87c28 07d5b38 Author: Linus Torvalds Date: Tue Jul 26 11:11:54 2011 -0700 Merge branch 'x86-olpc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-olpc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, olpc-xo15-sci: Enable EC wakeup capability x86, olpc: Fix dependency on POWER_SUPPLY x86, olpc: Add XO-1.5 SCI driver x86, olpc: Add XO-1 RTC driver x86, olpc-xo1-sci: Propagate power supply/battery events x86, olpc-xo1-sci: Add lid switch functionality x86, olpc-xo1-sci: Add GPE handler and ebook switch functionality x86, olpc: EC SCI wakeup mask functionality x86, olpc: Add XO-1 SCI driver and power button control x86, olpc: Add XO-1 suspend/resume support x86, olpc: Rename olpc-xo1 to olpc-xo1-pm x86, olpc: Move CS5536-related constants to cs5535.h x86, olpc: Add missing elements to device tree commit 1d87c28e680ce4ecb8c260d8ce070b8339d52abb Merge: aebdd82 14cae32 Author: Linus Torvalds Date: Tue Jul 26 11:11:28 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: cifs: Cleanup: check return codes of crypto api calls CIFS: Fix oops while mounting with prefixpath [CIFS] Redundant null check after dereference cifs: use cifs_dirent in cifs_save_resume_key cifs: use cifs_dirent to replace cifs_get_name_from_search_buf cifs: introduce cifs_dirent cifs: cleanup cifs_filldir commit aebdd82e18c38258fe84ea080a43c098e826ef63 Merge: f01ef56 250bae8 Author: Linus Torvalds Date: Tue Jul 26 11:10:56 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-ktest * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-ktest: ktest: Fix bug when ADD_CONFIG is set but MIN_CONFIG is not ktest: Keep fonud configs separate from default configs ktest: Add prompt to use OUTPUT_MIN_CONFIG ktest: Use Kconfig dependencies to shorten time to make min_config ktest: Add test type make_min_config ktest: Require one TEST_START in config file ktest: Add helper function to avoid duplicate code ktest: Add IGNORE_WARNINGS to ignore warnings in some patches ktest: Fix tar extracting of modules to target ktest: Have the testing tmp dir include machine name ktest: Add POST/PRE_BUILD options ktest: Allow initrd processing without modules defined ktest: Have LOG_FILE evaluate options as well ktest: Have wait on stdio honor bug timeout ktest: Implement our own force min config ktest: Add TEST_NAME option ktest: Add CONFIG_BISECT_GOOD option ktest: Add detection of triple faults ktest: Notify reason to break out of monitoring boot commit c46c887744b330795eba55fdb96343c36d481765 Author: Jeff Layton Date: Tue Jul 26 13:33:16 2011 -0400 vfs: document locking requirements for d_move, __d_move and d_materialise_unique Adding a comment to d_materialise_unique per Al's request... d_move and __d_move have some pretty substantial locking requirements, but they are not clearly documented. Add some comments spelling them out. Also, document the requirement for the i_mutex of the parent in d_materialise_unique. Cc: Al Viro Signed-off-by: Jeff Layton Signed-off-by: Al Viro commit f01ef569cddb1a8627b1c6b3a134998ad1cf4b22 Merge: a93a132 bcff25f Author: Linus Torvalds Date: Tue Jul 26 10:39:54 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/writeback: (27 commits) mm: properly reflect task dirty limits in dirty_exceeded logic writeback: don't busy retry writeback on new/freeing inodes writeback: scale IO chunk size up to half device bandwidth writeback: trace global_dirty_state writeback: introduce max-pause and pass-good dirty limits writeback: introduce smoothed global dirty limit writeback: consolidate variable names in balance_dirty_pages() writeback: show bdi write bandwidth in debugfs writeback: bdi write bandwidth estimation writeback: account per-bdi accumulated written pages writeback: make writeback_control.nr_to_write straight writeback: skip tmpfs early in balance_dirty_pages_ratelimited_nr() writeback: trace event writeback_queue_io writeback: trace event writeback_single_inode writeback: remove .nonblocking and .encountered_congestion writeback: remove writeback_control.more_io writeback: skip balance_dirty_pages() for in-memory fs writeback: add bdi_dirty_limit() kernel-doc writeback: avoid extra sync work at enqueue time writeback: elevate queue_io() into wb_writeback() ... Fix up trivial conflicts in fs/fs-writeback.c and mm/filemap.c commit 0642d2edc858a1f08716bb32e1ab890db8dac246 Author: Konrad Rzeszutek Wilk Date: Fri Jul 22 14:01:16 2011 -0400 xen/balloon: Fix compile errors - missing header files. With a specific enough .config file compile errors show for missing workqueue declarations. Reported-by: Randy Dunlap Signed-off-by: Konrad Rzeszutek Wilk commit 272800dc4fc10190604e4f8ee8898e9810f358ba Author: Konrad Rzeszutek Wilk Date: Fri Jul 22 14:00:06 2011 -0400 xen/grant: Fix compile warning. drivers/xen/grant-table.c:85: warning: ‘rc’ may be used uninitialized in this function Signed-off-by: Konrad Rzeszutek Wilk commit f45c078cdc72e986fb8255795d7afb1a86910107 Author: Huang Weiyi Date: Sat Jul 23 16:21:57 2011 +0800 xen/pciback: remove duplicated #include Remove duplicated #include('s) in drivers/xen/xen-pciback/xenbus.c Signed-off-by: Huang Weiyi Signed-off-by: Konrad Rzeszutek Wilk commit 41c96486f238e6a545f52215f95fe69748abf603 Author: Al Viro Date: Tue Jul 26 02:34:33 2011 -0400 omfs: fix (mode & S_IFDIR) abuse granted, on a filesystem that has only regular files and directories it happens to work, but really should be S_ISDIR(mode)... Signed-off-by: Al Viro commit 569254b0cc4e125ffde48780b215ecaf5f72bbf4 Author: Al Viro Date: Sun Jul 24 17:08:40 2011 -0400 btrfs: S_ISREG(mode) is not mode & S_IFREG... Signed-off-by: Al Viro commit 4b2a2c67415f1ab128f1d0b340fe6d13363335e5 Author: Al Viro Date: Tue Jul 26 04:30:35 2011 -0400 ima: fmode_t misspelled as mode_t... Signed-off-by: Al Viro commit a93a1329271038f0e8337061d3b41b3b212a851e Merge: 757c26b 11ccf11 Author: Linus Torvalds Date: Tue Jul 26 10:02:58 2011 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-block * 'for-linus' of git://git.kernel.dk/linux-block: block: fix warning with calling smp_processor_id() in preemptible section commit ed476418394f12d47f27a75424c237a94d244f10 Author: Al Viro Date: Sun Jul 24 23:31:06 2011 -0400 pci-label.c: size_t misspelled as mode_t no, really, strlen() and snprintf() do not return mode_t values... Signed-off-by: Al Viro commit 61effb519cbf0b2973c65070a890fabfcbf84756 Author: Al Viro Date: Sun Jul 24 17:11:33 2011 -0400 jffs2: S_ISLNK(mode & S_IFMT) is pointless it's S_ISLNK(mode), TYVM... Signed-off-by: Al Viro commit da404dc0b1fe76b06a8d094e3ef1af9ec8252cec Author: Al Viro Date: Tue Jul 26 04:35:42 2011 -0400 snd_msnd ->mode is fmode_t, not mode_t we put FMODE_... in there Signed-off-by: Al Viro commit 24a01d4ee4ee9196c1acc58c64dc216ba2578f1f Author: Al Viro Date: Tue Jul 26 12:57:42 2011 -0400 v9fs_iop_get_acl: get rid of unused variable Signed-off-by: Al Viro commit a209dfc7b0d94bd6fa94553c097836a2e6d0f0ba Author: Eric Dumazet Date: Tue Jul 26 11:36:34 2011 +0200 vfs: dont chain pipe/anon/socket on superblock s_inodes list Workloads using pipes and sockets hit inode_sb_list_lock contention. superblock s_inodes list is needed for quota, dirty, pagecache and fsnotify management. pipe/anon/socket fs are clearly not candidates for these. Signed-off-by: Eric Dumazet Reviewed-by: Christoph Hellwig Signed-off-by: Al Viro commit 5b9f4567726513a359e70f85029482c7c3714dbd Author: Phillip Lougher Date: Tue Jul 26 03:40:45 2011 +0100 Documentation: Exporting: update description of d_splice_alias Following commits a904937 and 0c1aa9a update the d_splice_alias desciption. Signed-off-by: Phillip Lougher Signed-off-by: Al Viro commit bacb2d816c77edefd464d6bcc04c07f92109bd7d Author: Dan Carpenter Date: Tue Jul 26 17:25:20 2011 +0300 fs: add missing unlock in default_llseek() A recent change in linux-next, 982d816581 "fs: add SEEK_HOLE and SEEK_DATA flags" added some direct returns on error, but it should have been a goto out. Signed-off-by: Dan Carpenter Signed-off-by: Al Viro commit 757c26b804428ef10888b8e00f34994dbe361d3a Merge: e08dc13 5a96a89 Author: Linus Torvalds Date: Tue Jul 26 09:21:09 2011 -0700 Merge branch 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (135 commits) drm/radeon/kms: fix DP training for DPEncoderService revision bigger than 1.1 drm/radeon/kms: add missing vddci setting on NI+ drm/radeon: Add a rmb() in IH processing drm/radeon: ATOM Endian fix for atombios_crtc_program_pll() drm/radeon: Fix the definition of RADEON_BUF_SWAP_32BIT drm/radeon: Do an MMIO read on interrupts when not uisng MSIs drm/radeon: Writeback endian fixes drm/radeon: Remove a bunch of useless _iomem casts drm/gem: add support for private objects DRM: clean up and document parsing of video= parameter DRM: Radeon: Fix section mismatch. drm: really make debug levels match in edid failure code drm/radeon/kms: fix i2c map for rv250/280 drm/nouveau/gr: disable fifo access and idle before suspend ctx unload drm/nouveau: pass flag to engine fini() method on suspend drm/nouveau: replace nv04_graph_fifo_access() use with direct reg bashing drm/nv40/gr: rewrite/split context takedown functions drm/nouveau: detect disabled device in irq handler and return IRQ_NONE drm/nouveau: ignore connector type when deciding digital/analog on DVI-I drm/nouveau: Add a quirk for Gigabyte NX86T ... commit 636f78581dbd5529a52057973fe2bdfc1c2f528e Merge: 56487c2 a0c27ab Author: Takashi Iwai Date: Tue Jul 26 17:47:05 2011 +0200 Merge branch 'fix/asoc' into for-linus commit 56487c279fe9fc23c5f15e2b935eb896ab7ba280 Author: Tim Howe Date: Fri Jul 22 16:41:00 2011 -0500 ALSA: hda - Cirrus Logic CS421x support This update includes the changes necessary for supporting the CS421x family of codecs. Previously this file only supported the CS420x family of codecs. This file also contains init verbs to correct several issues in the CS421x hardware. Behavior between the CS421x and CS420x codec families is similar, so several functions have been reused with "if" statements to determine which codec family (CS421x or CS420x) is present. Also, this file will be updated sometime in the near future in order to add support for a system using CS421x that requires mono mix on the speaker output only. [Fix const usages and adaption for new APIs by tiwai] Signed-off-by: Tim Howe Signed-off-by: Takashi Iwai commit b51beb756aaf0770e4fa8bb2cb142888051aa356 Author: Takashi Iwai Date: Tue Jul 26 12:02:56 2011 +0200 ALSA: Make pcm.h self-contained Move the macros depending on snd_mask_min() and co out of pcm.h into pcm_params.h. Otherwise using some params_*() macros will give comiple errors without inclusion of pcm_params.h. Also use hw_param_interval_c() and hw_param_mask_c() for const pointer. Reported-by: Tim Blechmann Signed-off-by: Takashi Iwai commit 4d7fbdbcb1d563b1822c74da3c9e4aa4523d8d6d Author: Takashi Iwai Date: Tue Jul 26 10:33:10 2011 +0200 ALSA: hda - Allow codec-specific set_power_state ops The procedure for codec D-state change may have exceptional cases depending on the codec chip, such as a longer delay or suppressing D3. This patch adds a new codec ops, set_power_state() to override the system default function. For ease of porting, snd_hda_codec_set_power_to_all() helper function is extracted from the default set_power_state() function. As an example, the Conexant codec-specific delay is removed from the default routine but moved to patch_conexant.c. Signed-off-by: Takashi Iwai commit e581f3dba509f6d48e4939aa70e9b768aa5fd4f3 Author: Takashi Iwai Date: Tue Jul 26 10:19:20 2011 +0200 ALSA: hda - Add post_suspend patch ops Add a new ops, post_suspend(), which is called after suspend() ops is performed. This is called only in the case of the real PM suspend, and the codec driver can use this for further changing of D-state or clearing the LED, etc. Signed-off-by: Takashi Iwai commit 2a43952a99072f43c92355882b7965c8762ae3f3 Author: Takashi Iwai Date: Tue Jul 26 09:52:50 2011 +0200 ALSA: hda - Make CONFIG_SND_HDA_POWER_SAVE depending on CONFIG_PM It makes little sense to enable power-saving without PM. This removes SND_HDA_NEEDS_RESUME define so that we can use CONFIG_PM in all places. Signed-off-by: Takashi Iwai commit 2d859db3e4a82a365572592d57624a5f996ed0ec Author: Jan Kara Date: Tue Jul 26 09:07:11 2011 -0400 ext4: fix data corruption in inodes with journalled data When journalling data for an inode (either because it is a symlink or because the filesystem is mounted in data=journal mode), ext4_evict_inode() can discard unwritten data by calling truncate_inode_pages(). This is because we don't mark the buffer / page dirty when journalling data but only add the buffer to the running transaction and thus mm does not know there are still unwritten data. Fix the problem by carefully tracking transaction containing inode's data, committing this transaction, and writing uncheckpointed buffers when inode should be reaped. Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit 11ccf116d0d756d06989775288e41f737d98e0c5 Author: Jens Axboe Date: Tue Jul 26 15:01:15 2011 +0200 block: fix warning with calling smp_processor_id() in preemptible section After commit 5757a6d7 introduced an unsafe calling of smp_processor_id(), with preempt debuggin turned on we spew a lot of: BUG: using smp_processor_id() in preemptible [00000000] code: kjournald/514 caller is __make_request+0x1b8/0x308 [] (unwind_backtrace+0x0/0xe8) from [] (debug_smp_processor_id+0xbc/0xf0) [] (debug_smp_processor_id+0xbc/0xf0) from [] (__make_request+0x1b8/0x308) [] (__make_request+0x1b8/0x308) from [] (generic_make_request+0x4dc/0x558) [] (generic_make_request+0x4dc/0x558) from [] (submit_bio+0x114/0x138) [] (submit_bio+0x114/0x138) from [] (submit_bh+0x148/0x16c) [] (submit_bh+0x148/0x16c) from [] (__sync_dirty_buffer+0x88/0xd8) [] (__sync_dirty_buffer+0x88/0xd8) from [] (journal_commit_transaction+0x1198/0x1688) [] (journal_commit_transaction+0x1198/0x1688) from [] (kjournald+0xb4/0x224) [] (kjournald+0xb4/0x224) from [] (kthread+0x8c/0x94) [] (kthread+0x8c/0x94) from [] (kernel_thread_exit+0x0/0x8) Fix this by just using raw_smp_processor_id(), it's just a hint after all. There's no pinning of the CPU or accessing per-cpu structures involved. Reported-by: Ming Lei Signed-off-by: Jens Axboe commit 5a96a899bbdee86024ab9ea6d02b9e242faacbed Author: Jerome Glisse Date: Mon Jul 25 11:57:43 2011 -0400 drm/radeon/kms: fix DP training for DPEncoderService revision bigger than 1.1 DPEncoderService newer than 1.1 can't properly program the DP (display port) link training. When facing such version use the DIGxEncoderControl method instead. Fix DP link training on some R7XX. Signed-off-by: Jerome Glisse Reviewed-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 4639dd21e759e32125adc7171abf6cb8140d54cf Author: Alex Deucher Date: Mon Jul 25 18:50:08 2011 -0400 drm/radeon/kms: add missing vddci setting on NI+ Need to add vddci setting to pm init as well as resume. Fixes hangs on load on some boards. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=38754 Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit f32807f1ff7fbfd2d4ec708b1ac8cb75cb92bfef Author: Vinod Koul Date: Mon Jul 25 19:22:01 2011 +0530 dmaengine: pl08x: handle the rest of enums in pl08x_width pl08x_width function does not handle rest of enums for DMA_SLAVE_BUSWIDTH_xxxx which causes gcc to emit below warining drivers/dma/amba-pl08x.c: In function 'pl08x_width': drivers/dma/amba-pl08x.c:1119: warning: enumeration value 'DMA_SLAVE_BUSWIDTH_UNDEFINED' not handled in switch drivers/dma/amba-pl08x.c:1119: warning: enumeration value 'DMA_SLAVE_BUSWIDTH_8_BYTES' not handled in switch this patch adds a default case which returns error Signed-off-by: Vinod Koul commit 760596c6b986e6345a28392cf40ee344bfd209a6 Author: Russell King - ARM Linux Date: Thu Jul 21 17:14:08 2011 +0100 DMA: PL08x: cleanup selection of burst size Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit 121c8476a3c39a483326c33526e72a07661df1fc Author: Russell King - ARM Linux Date: Thu Jul 21 17:13:48 2011 +0100 DMA: PL08x: avoid recalculating cctl at each prepare Now that we have separate cctl values for M>P and P>M transfers, we can avoid calculating the cctl value each time we prepare a transaction. Move the bus selection and increment setting to the slave configuration and initialization functions. Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit aa88cdaa149e1c1cfc935ff73e50f3f9f3b2e3a1 Author: Russell King - ARM Linux Date: Thu Jul 21 17:13:28 2011 +0100 DMA: PL08x: cleanup selection of buswidth Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit fa020e7d046436cb6642b23dc95012a3064d77e2 Author: Russell King - ARM Linux Date: Thu Jul 21 17:13:07 2011 +0100 DMA: PL08x: constify plchan->cd and plat->slave_channels We no longer write to the channel data structure, so we can make it const throughout the driver. Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit f14c426c723634d223344ad820997d92a3e355b6 Author: Russell King - ARM Linux Date: Thu Jul 21 17:12:47 2011 +0100 DMA: PL08x: separately store source/destination cctl Store the source/destination cctl values into the channel structure. This moves us towards being able to avoid a configuration call each time we use the channel. Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit b207b4d02beb06059478339bbe4672ba715605d6 Author: Russell King - ARM Linux Date: Thu Jul 21 17:12:27 2011 +0100 DMA: PL08x: separately store source/destination slave address Store the source/destination slave address separately into the channel structure. This moves us towards being able to avoid a configuration call each time we use the channel. Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit fc74eb791590e624ca6915ae76a04808e03bffb0 Author: Russell King - ARM Linux Date: Thu Jul 21 17:12:06 2011 +0100 DMA: PL08x: clean up LLI debugging Clean up debugging when setting up the LLI list. This reduces the amount of output while preserving the information, and makes it easier to read. Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit 25c94f7fcf70d94e12401b9c957ddf1d303061a3 Author: Russell King - ARM Linux Date: Thu Jul 21 17:11:46 2011 +0100 DMA: PL08x: select LLI bus only once per LLI setup Avoid re-selecting the LLI bus each time we create an LLI. Move it out of the LLI setup loops. Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit f44bd191404841e44a914b2760a16ad328f406a8 Author: Russell King - ARM Linux Date: Thu Jul 21 17:11:26 2011 +0100 DMA: PL08x: remove unused constants PL08X_WQ_PERIODMIN and PL08X_MAX_ALLOCS are not used, remove them. Acked-by: Linus Walleij Signed-off-by: Russell King Signed-off-by: Vinod Koul commit a62bae98a93e6c4d53b1e6c20715e94b4a5aca3c Author: Dong Aisheng Date: Tue Jul 19 12:09:56 2011 +0800 ARM: mxs-dma: reset after disable channel We met some channels in abnormal state after disable. Reset it to get a clean state. Signed-off-by: Dong Aisheng Cc: Vinod Koul Cc: Shawn Guo Signed-off-by: Vinod Koul commit add56ba711627c223e9e356d9398642abf7fa32d Author: Axel Lin Date: Tue Jul 19 14:48:17 2011 +0800 dma: intel_mid_dma: remove redundant pci_set_drvdata calls Call pci_set_drvdata() once in intel_mid_dma_probe() is enough. Remove redundant pci_set_drvdata() calls in dma_suspend() and dma_resume(). Signed-off-by: Axel Lin Signed-off-by: Vinod Koul commit 2a9778ed83b142e88cb38acc496a573a3472d27f Author: Axel Lin Date: Tue Jul 12 18:53:52 2011 +0800 dma: mxs-dma: fix unterminated platform_device_id table Signed-off-by: Axel Lin Signed-off-by: Vinod Koul commit 4e0e6109a1cc18cc5e4143f828c36b6a3e8be6ad Author: Rob Herring Date: Mon Jul 25 16:05:04 2011 -0500 dmaengine: pl330: make platform data optional The pl330 needs platform data for describing peripheral connections, but some platforms may only support memory to memory dma channels. In this case, we can probe for how many channels there are and don't need the platform data. As memcpy requests don't need channel private data to hold peripheral info, allow private data to be NULL in this case. Signed-off-by: Rob Herring Cc: Jassi Brar Cc: Vinod Koul Cc: Dan Williams Acked-by: Jassi Brar Signed-off-by: Vinod Koul commit 82a452581230b3ffc9d6475dffdb2568497b5fec Author: Kashyap, Desai Date: Tue Jul 5 12:40:23 2011 +0530 [SCSI] mpt2sas: WarpDrive Infinite command retries due to wrong scsi command entry in MPI message Issue: This issue is seen on LSI H/W WarpDrive SSS6200 When filed direct I/O is tried as volume I/O the scmd field in internal lookup table get cleared and because of that the retried volume I/O never gets reported as completed to SML. Result: I/O timeout and Error handling thread will kicking off Fix: Setting back the scmd in the lookup table before retrying the failed direct i/o Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit b2a554ff9ad5cdd8d00dac168f2bb3db7ccedb61 Author: Bhanu Prakash Gollapudi Date: Mon Jun 27 23:30:53 2011 -0700 [SCSI] bnx2fc: Replace printks with KERN_ALERT to KERN_ERR/KERN_INFO Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 0ac2377b61089e160d8e13b03cfdec89572cd741 Author: Hannes Reinecke Date: Thu Jun 30 02:19:57 2011 +0530 [SCSI] scsi_transport_spi: Export host width and HBA id Currently it's impossible to find out if the host supports wide SCSI unless you're committed to trawl through syslog. And it's near impossible to find the actual HBA id, which is settable for some SCSI HBAs (like aic7xxx). So export them via sysfs. Signed-off-by: Hannes Reinecke Signed-off-by: Ankit Jain Signed-off-by: James Bottomley commit 277c5f27a2c86a9a733c0ec0f6a9b1032dfa3e15 Author: Nicholas Bellinger Date: Tue Jul 26 00:38:40 2011 -0700 target: Convert to DIV_ROUND_UP_SECTOR_T usage for sectors / dev_max_sectors This patch adds the new macro usage of include/linux/kernel.h:DIV_ROUND_UP_SECTOR_T for the new DIV_ROUND_UP_ULL() usage for 32-bit architectures with unsigned long long sector_t division in transport_allocate_data_tasks() usage for target_core_mod v4.1 Reported-by: Andrew Morton Signed-off-by: Nicholas A. Bellinger commit 6dbd3085c3c3a53dfa4491ebcbf7847955b16f26 Author: Michal Simek Date: Tue Jul 26 11:24:56 2011 +0200 Revert "microblaze: PCI fix typo fault in of_node pointer moving into pci_bus" This reverts commit c9d761b7c4b658a937a941aea2781f511a0ff3ec. Ben' commit "microblaze/pci: Move the remains of pci_32.c to pci-common.c" (sha1: bf13a6fa09b8db7f1fd59b5e2ed3674a89a6a25c) completely removed pci_32.c that's why my fixing commit caused the problem with merging and need to be revert. Signed-off-by: Michal Simek commit 19237039919088781b4191a00bdc1284d8fea1dd Author: Steven Whitehouse Date: Tue Jul 26 09:15:45 2011 +0100 GFS2: Fix mount hang caused by certain access pattern to sysfs files Depending upon the order of userspace/kernel during the mount process, this can result in a hang without the _all version of the completion. Signed-off-by: Steven Whitehouse commit 36a26c69b4c70396ef569c3452690fba0c1dec08 Author: Nicholas Bellinger Date: Tue Jul 26 00:35:26 2011 -0700 kernel.h: Add DIV_ROUND_UP_ULL and DIV_ROUND_UP_SECTOR_T macro usage Add new DIV_ROUND_UP_SECTOR_T macro usage for 32-bit architectures requiring a new DIV_ROUND_UP_ULL, and existing 64-bit usage with DIV_ROUND_UP. Reported-by: Linus Torvalds Reported-by: Andrew Morton Signed-off-by: Nicholas A. Bellinger commit e48354ce078c079996f89d715dfa44814b4eba01 Author: Nicholas Bellinger Date: Sat Jul 23 06:43:04 2011 +0000 iscsi-target: Add iSCSI fabric support for target v4.1 The Linux-iSCSI.org target module is a full featured in-kernel software implementation of iSCSI target mode (RFC-3720) for the current WIP mainline target v4.1 infrastructure code for the v3.1 kernel. More information can be found here: http://linux-iscsi.org/wiki/ISCSI This includes support for: * RFC-3720 defined request / response state machines and support for all defined iSCSI operation codes from Section 10.2.1.2 using libiscsi include/scsi/iscsi_proto.h PDU definitions * Target v4.1 compatible control plane using the generic layout in target_core_fabric_configfs.c and fabric dependent attributes within /sys/kernel/config/target/iscsi/ subdirectories. * Target v4.1 compatible iSCSI statistics based on RFC-4544 (iSCSI MIBS) * Support for IPv6 and IPv4 network portals in M:N mapping to TPGs * iSCSI Error Recovery Hierarchy support * Per iSCSI connection RX/TX thread pair scheduling affinity * crc32c + crc32c_intel SSEv4 instruction offload support using libcrypto * CHAP Authentication support using libcrypto * Conversion to use internal SGl allocation with iscsit_alloc_buffs() -> transport_generic_map_mem_to_cmd() (nab: Fix iscsi_proto.h struct scsi_lun usage from linux-next in commit: iscsi: Use struct scsi_lun in iscsi structs instead of u8[8]) (nab: Fix 32-bit compile warnings) Reviewed-by: Christoph Hellwig Reviewed-by: Andy Grover Acked-by: Roland Dreier Signed-off-by: Nicholas A. Bellinger commit 6f8ac161b8b3332a9d96d6650ed3bae81baab30b Author: Xiangliang Yu Date: Thu Jun 30 22:27:36 2011 +0800 [SCSI] mvsas: Add support for interrupt tasklet Add support for interrupt tasklet, which will improve performance. Correct spelling of "20011" [jejb: simplified ifdefs and fixed unused variable problem] Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit 7df1ce1a8197a4afec78584f56e74ab84dcab97c Author: Vitaliy Kulikov Date: Mon Jul 25 17:52:57 2011 -0500 ALSA: hda - Make sure mute led reflects master mute state This patch adds checking of mute state on all outputs besides just speakers to calculate the master mute state for mute led support. It also renames and splits the function that does it for better code clarity. Signed-off-by: Vitaliy Kulikov Signed-off-by: Takashi Iwai commit d02667e6206fb3be0990c38af8447a4ed2b74c11 Author: Vitaliy Kulikov Date: Fri Jul 22 18:18:15 2011 -0500 ALSA: hda - Fix invalid mute led state on resume of IDT codecs Codec state is not restored immediately on resume but on the first access when power-save is enabled. That leads to an invalid mute led state after resume until either sound is played or some control is changed. This patch adds a possibility for a vendor specific patch to restore codec state immediately after resume if required. And it adds code to restore IDT codecs state immediately on resume on HP systems with mute led support. Signed-off-by: Vitaliy Kulikov Signed-off-by: Takashi Iwai commit e08dc1325feaf49eec392ee52feb2974ec3f5155 Author: Linus Torvalds Date: Mon Jul 25 23:43:53 2011 -0700 p9: avoid unused variable warning Commit 4e34e719e457 ("fs: take the ACL checks to common code") removed the use of the 'acl' variable in v9fs_iop_get_acl(), but left the variable definition around. Remove it to get rid of the warning: fs/9p/acl.c: In function ‘v9fs_iop_get_acl’: fs/9p/acl.c:101:20: warning: unused variable ‘acl’ Signed-off-by: Linus Torvalds commit e144f7ef49ec85e9dfdf130f3a9a2372fe5fe39b Author: Xiangliang Yu Date: Tue May 24 22:38:10 2011 +0800 [SCSI] mvsas: update comments Remove obsolete comments and add new comments Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit 84fbd0cea11b80d7b7097343d5262004d42b8a9a Author: Xiangliang Yu Date: Tue May 24 22:37:25 2011 +0800 [SCSI] mvsas: misc improvements Change code to match HBA datasheet. Change code to make it readable. Add support big endian for mvs_prd_imt. Add cpu_to_le32 and cpu_to_le64 to use on addr. Add scan_finished for structure mvs_prv_info. Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit a4632aae8b662b1f32fe3fc558a813cd5c3daae6 Author: Xiangliang Yu Date: Tue May 24 22:36:02 2011 +0800 [SCSI] mvsas: Add new macros and functions Add new macros: MVS_SOFT_RESET, MVS_HARD_RESET, MVS_PHY_TUNE, MVS_COMMAND_ACTIVE, EXP_BRCT_CHG, MVS_MAX_SG Add new member sg_width in struct mvs_chip_info Use macros rather than magic number Add new functions: mvs_fill_ssp_resp_iu, mvs_set_sense, mvs_94xx_clear_srs_irq, mvs_94xx_phy_set_link_rate Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit b89e8f539ff8bcf2a1464578fa91cb96cc433fc3 Author: Xiangliang Yu Date: Tue May 24 22:35:09 2011 +0800 [SCSI] mvsas: Remove unused macros, variables and functions Remove unused macros: VSR_PHY_VS0, VSR_PHY_VS1, MVS_SLOTS, MVS_CAN_QUEUE, MVS_MSI, SG_MX, _MV_DUMP, MV_DISABLE_NCQ Remove unused variables for mvs_info: irq, exp_req, cmd_size Remove unused functions: mvs_get_sas_addr, mvs_hexdump, mvs_hba_sb_dump, mvs_hab_memory_dump, mvs_hba_cq_dump Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit 8882f081329a82737b7471b97e59ce8c407f6655 Author: Xiangliang Yu Date: Tue May 24 22:33:11 2011 +0800 [SCSI] mvsas: fix 94xx hotplug issue Fix 94xx A0/B0 revision hotplug issue. Remove unused macro: DISABLE_HOTPLUG_DMA_FIX Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit 83c7b61cf49c2659829050fec240601415c7f9d9 Author: Xiangliang Yu Date: Tue May 24 22:31:47 2011 +0800 [SCSI] mvsas: Add driver version and interrupt coalescing to device attributes in sysfs Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit f1f82a919d7fff21ee8c0ef4b9731fb38f2a65db Author: Xiangliang Yu Date: Tue May 24 22:28:31 2011 +0800 [SCSI] mvsas: add support for 94xx phy tuning and multiple revisions Add 94xx phy tuning to aid manufacturing. Add support for 94xx multiple revisions: A0, B0, C0, C1, C2. Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit 138051659902da7e6a09d379fee5dade2a80fcfd Merge: d5ef642 e1703b32 Author: Linus Torvalds Date: Mon Jul 25 23:26:34 2011 -0700 Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 * 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (741 commits) staging:iio:meter:ade7753 should be 16 bit read not 8 bit for mode register. staging:iio:kfifo_buf fix double initialization of the ring device structure. staging:iio:accel:lis3l02dq: fix incorrect pointer passed to spi_set_drvdata. staging:iio:imu fix missing register table index for some channels spectra: enable device before poking it staging: rts_pstor: Fix a miswriting staging/lirc_bt829: Return -ENODEV when no hardware is found. staging/lirc_parallel: remove pointless prototypes. staging/lirc_parallel: fix panic on rmmod staging:iio:adc:ad7476: Incorrect pointer into spi_set_drvdata. Staging: zram: Fix kunmapping order Revert "gma500: Fix dependencies" gma500: Add medfield header gma500: wire up the mrst i2c bus from chip_info gma500: Fix DPU build gma500: Clean up the DPU config and make it runtime gma500: resync with Medfield progress gma500: Use the mrst helpers and power control for mode commit gma500@ Fix backlight range error gma500: More Moorestown muddle meddling means MM maybe might modeset ... Fix up fairly trivial conflicts all over, mostly due to header file cleanup conflicts, but some deleted files and some just context changes: - Documentation/feature-removal-schedule.txt - drivers/staging/bcm/headers.h - drivers/staging/brcm80211/brcmfmac/dhd_linux.c - drivers/staging/brcm80211/brcmfmac/dhd_sdio.c - drivers/staging/brcm80211/brcmfmac/wl_cfg80211.h - drivers/staging/brcm80211/brcmfmac/wl_iw.c - drivers/staging/et131x/et131x_netdev.c - drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c - drivers/staging/rtl8192e/r8192E.h - drivers/staging/usbip/userspace/src/utils.h commit 534ff10104427ccad071ef87ae7017d47d08e50b Author: Xiangliang Yu Date: Tue May 24 22:26:50 2011 +0800 [SCSI] mvsas: Add support for Non specific NCQ error interrupt Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit d5ef642355bdd9b383ff5c18cbc6102a06eecbaf Merge: f549953 def90f4 Author: Linus Torvalds Date: Mon Jul 25 23:09:27 2011 -0700 Merge branch 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6 * 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (26 commits) amba pl011: workaround for uart registers lockup n_gsm: fix the wrong FCS handling pch_uart: add missing comment about OKI ML7223 pch_uart: Add MSI support tty: fix "IRQ45: nobody cared" PTI feature to allow user to name and mark masterchannel request. 0 for o PTI Makefile bug. tty: serial: samsung.c remove legacy PM code. SERIAL: SC26xx: Fix link error. serial: mrst_max3110: initialize waitqueue earlier mrst_max3110: Change max missing message priority. tty: s5pv210: Add delay loop on fifo reset function for UART tty/serial: Fix XSCALE serial ports, e.g. ce4100 serial: bfin_5xx: fix off-by-one with resource size drivers/tty: use printk_ratelimited() instead of printk_ratelimit() tty: n_gsm: Added refcount usage to gsm_mux and gsm_dlci structs tty: n_gsm: Add raw-ip support tty: n_gsm: expose gsmtty device nodes at ldisc open time pch_phub: Fix register miss-setting issue serial: 8250, increase PASS_LIMIT ... commit f549953c15deab4c54708b39af86d4edecc6cddc Merge: f0deb97 e04f5f7 Author: Linus Torvalds Date: Mon Jul 25 23:08:32 2011 -0700 Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (115 commits) EHCI: fix direction handling for interrupt data toggles USB: serial: add IDs for WinChipHead USB->RS232 adapter USB: OHCI: fix another regression for NVIDIA controllers usb: gadget: m66592-udc: add pullup function usb: gadget: m66592-udc: add function for external controller usb: gadget: r8a66597-udc: add pullup function usb: renesas_usbhs: support multi driver usb: renesas_usbhs: inaccessible pipe is not an error usb: renesas_usbhs: care buff alignment when dma handler USB: PL2303: correctly handle baudrates above 115200 usb: r8a66597-hcd: fixup USB_PORT_STAT_C_SUSPEND shift usb: renesas_usbhs: compile/config are rescued usb: renesas_usbhs: fixup comment-out usb: update email address in ohci-sh and r8a66597-hcd usb: r8a66597-hcd: add function for external controller EHCI: only power off port if over-current is active USB: mon: Allow to use usbmon without debugfs USB: EHCI: go back to using the system clock for QH unlinks ehci: add pci quirk for Ordissimo and RM Slate 100 too ehci: refactor pci quirk to use standard dmi_check_system method ... Fix up trivial conflicts in Documentation/feature-removal-schedule.txt commit f0deb97ab13ad1f89cd0993f7339655d59788405 Merge: 1844750 21d541a Author: Linus Torvalds Date: Mon Jul 25 23:06:24 2011 -0700 Merge branch 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 * 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: updated Documentation/ja_JP/SubmittingPatches debugfs: add documentation for debugfs_create_x64 uio: uio_pdrv_genirq: Add OF support firmware: gsmi: remove sysfs entries when unload the module Documentation/zh_CN: Fix messy code file email-clients.txt driver core: add more help description for "path to uevent helper" driver-core: modify FIRMWARE_IN_KERNEL help message driver-core: Kconfig grammar corrections in firmware configuration DOCUMENTATION: Replace create_device() with device_create(). DOCUMENTATION: Update overview.txt in Doc/driver-model. pti: pti_tty_install documentation mispelling. commit 184475029a724b6b900d88fc3a5f462a6107d5af Merge: 3b76eef f1f4ee0 Author: Linus Torvalds Date: Mon Jul 25 22:59:39 2011 -0700 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (99 commits) drivers/virt: add missing linux/interrupt.h to fsl_hypervisor.c powerpc/85xx: fix mpic configuration in CAMP mode powerpc: Copy back TIF flags on return from softirq stack powerpc/64: Make server perfmon only built on ppc64 server devices powerpc/pseries: Fix hvc_vio.c build due to recent changes powerpc: Exporting boot_cpuid_phys powerpc: Add CFAR to oops output hvc_console: Add kdb support powerpc/pseries: Fix hvterm_raw_get_chars to accept < 16 chars, fixing xmon powerpc/irq: Quieten irq mapping printks powerpc: Enable lockup and hung task detectors in pseries and ppc64 defeconfigs powerpc: Add mpt2sas driver to pseries and ppc64 defconfig powerpc: Disable IRQs off tracer in ppc64 defconfig powerpc: Sync pseries and ppc64 defconfigs powerpc/pseries/hvconsole: Fix dropped console output hvc_console: Improve tty/console put_chars handling powerpc/kdump: Fix timeout in crash_kexec_wait_realmode powerpc/mm: Fix output of total_ram. powerpc/cpufreq: Add cpufreq driver for Momentum Maple boards powerpc: Correct annotations of pmu registration functions ... Fix up trivial Kconfig/Makefile conflicts in arch/powerpc, drivers, and drivers/cpufreq commit 3b76eefe0f970c2e19f165d4a1650abc523d10bc Merge: 91d44d9 8c9f08f Author: Linus Torvalds Date: Mon Jul 25 22:50:54 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: m68k: Revive reporting of spurious interrupts m68knommu: Move forward declaration of do_IRQ() from machdep.h to irq.h m68k: fix some atomic operation asm address modes for ColdFire m68k: use CPU_HAS_NO_BITFIELDS for signal functions m68k: merge and clean up delay.h files m68knommu: correctly use trap_init m68knommu: merge ColdFire 5206 and 5206e platform code m68k: merge mmu and non-mmu bitops.h m68k: merge MMU and non MMU versions of system.h m68k: merge MMU and non-MMU versions of asm/hardirq.h m68k: merge the non-mmu and mmu versions of module.c m68knommu: Fix printk() format in free_initrd_mem() m68knommu: Make empty_zero_page "void *", like on m68k commit 91d44d99992ff2587104df5760bfffbb3564b3c2 Merge: 2dad320 cc6d349 Author: Linus Torvalds Date: Mon Jul 25 22:50:35 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus * git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus: Squashfs: Make ZLIB compression support optional Squashfs: Update documentation for XZ and add squashfs-tools devel tree commit 2dad3206db5c3832cde1f58650027fea3ff7adf3 Merge: 84635d6 0c12eaf Author: Linus Torvalds Date: Mon Jul 25 22:49:19 2011 -0700 Merge branch 'for-3.1' of git://linux-nfs.org/~bfields/linux * 'for-3.1' of git://linux-nfs.org/~bfields/linux: nfsd: don't break lease on CLAIM_DELEGATE_CUR locks: rename lock-manager ops nfsd4: update nfsv4.1 implementation notes nfsd: turn on reply cache for NFSv4 nfsd4: call nfsd4_release_compoundargs from pc_release nfsd41: Deny new lock before RECLAIM_COMPLETE done fs: locks: remove init_once nfsd41: check the size of request nfsd41: error out when client sets maxreq_sz or maxresp_sz too small nfsd4: fix file leak on open_downgrade nfsd4: remember to put RW access on stateid destruction NFSD: Added TEST_STATEID operation NFSD: added FREE_STATEID operation svcrpc: fix list-corrupting race on nfsd shutdown rpc: allow autoloading of gss mechanisms svcauth_unix.c: quiet sparse noise svcsock.c: include sunrpc.h to quiet sparse noise nfsd: Remove deprecated nfsctl system call and related code. NFSD: allow OP_DESTROY_CLIENTID to be only op in COMPOUND Fix up trivial conflicts in Documentation/feature-removal-schedule.txt commit bf28607fbe529e20180080c4a0295b0a47834fde Author: David Daney Date: Tue Jul 5 16:34:46 2011 -0700 MIPS: Close races in TLB modify handlers. Page table entries are made invalid by writing a zero into the the PTE slot in a page table. This creates a race condition with the TLB modify handlers when they are updating the PTE. CPU0 CPU1 Test for _PAGE_PRESENT . set to not _PAGE_PRESENT (zero) Set to _PAGE_VALID So now the page not present value (zero) is suddenly valid and user space programs have access to physical page zero. We close the race by putting the test for _PAGE_PRESENT and setting of _PAGE_VALID into an atomic LL/SC section. This requires more registers than just K0 and K1 in the handlers, so we need to save some registers to a save area and then restore them when we are done. The save area is an array of cacheline aligned structures that should not suffer cache line bouncing as they are CPU private. [ralf@linux-mips.org: Fix !defined(CONFIG_MIPS_PGD_C0_CONTEXT) build error.] Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2577/ Signed-off-by: Ralf Baechle commit f0daaaf5236297ea81ec7732cd0df5dbd84a5042 Author: David Daney Date: Tue Jul 5 16:34:45 2011 -0700 MIPS: Add uasm UASM_i_SRL_SAFE macro. This can be used from either 32-bit or 64-bit code to generate logical right shifts of any constant amount. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2576/ Signed-off-by: Ralf Baechle commit 84635d68be4b846ba984a89f386524153330c597 Author: Linus Torvalds Date: Mon Jul 25 22:47:03 2011 -0700 vfs: fix check_acl compile error when CONFIG_FS_POSIX_ACL is not set Commit e77819e57f08 ("vfs: move ACL cache lookup into generic code") didn't take the FS_POSIX_ACL config variable into account - when that is not set, ACL's go away, and the cache helper functions do not exist, causing compile errors like fs/namei.c: In function 'check_acl': fs/namei.c:191:10: error: implicit declaration of function 'negative_cached_acl' fs/namei.c:196:2: error: implicit declaration of function 'get_cached_acl' fs/namei.c:196:6: warning: assignment makes pointer from integer without a cast fs/namei.c:212:11: error: implicit declaration of function 'set_cached_acl' Reported-by: Markus Trippelsdorf Acked-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 45b583b10a8b438b970e95a7d1d4db22c9e35004 Merge: 154dd78 f19da2c Author: Linus Torvalds Date: Mon Jul 25 21:00:19 2011 -0700 Merge 'akpm' patch series * Merge akpm patch series: (122 commits) drivers/connector/cn_proc.c: remove unused local Documentation/SubmitChecklist: add RCU debug config options reiserfs: use hweight_long() reiserfs: use proper little-endian bitops pnpacpi: register disabled resources drivers/rtc/rtc-tegra.c: properly initialize spinlock drivers/rtc/rtc-twl.c: check return value of twl_rtc_write_u8() in twl_rtc_set_time() drivers/rtc: add support for Qualcomm PMIC8xxx RTC drivers/rtc/rtc-s3c.c: support clock gating drivers/rtc/rtc-mpc5121.c: add support for RTC on MPC5200 init: skip calibration delay if previously done misc/eeprom: add eeprom access driver for digsy_mtc board misc/eeprom: add driver for microwire 93xx46 EEPROMs checkpatch.pl: update $logFunctions checkpatch: make utf-8 test --strict checkpatch.pl: add ability to ignore various messages checkpatch: add a "prefer __aligned" check checkpatch: validate signature styles and To: and Cc: lines checkpatch: add __rcu as a sparse modifier checkpatch: suggest using min_t or max_t ... Did this as a merge because of (trivial) conflicts in - Documentation/feature-removal-schedule.txt - arch/xtensa/include/asm/uaccess.h that were just easier to fix up in the merge than in the patch series. commit f19da2ce8ef5e49b8b8ea199c3601dd45d71b262 Author: Andrew Morton Date: Mon Jul 25 17:13:39 2011 -0700 drivers/connector/cn_proc.c: remove unused local Fix the warning drivers/connector/cn_proc.c: In function 'proc_ptrace_connector': drivers/connector/cn_proc.c:176: warning: unused variable 'tracer' Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df2694d80a84fb0b61ce9fa31353eb9c5f36ad36 Author: Paul E. McKenney Date: Mon Jul 25 17:13:38 2011 -0700 Documentation/SubmitChecklist: add RCU debug config options There have been persistent lockdep RCU splats, indicating that submitters are not testing with CONFIG_PROVE_RCU. Add this config option to the list in Documentation/SubmitChecklist. Also add CONFIG_DEBUG_OBJECTS_RCU_HEAD for good measure. Signed-off-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9d6bf5aa177ee7ffdcee2a590ef8a1bf9e8ade87 Author: Akinobu Mita Date: Mon Jul 25 17:13:38 2011 -0700 reiserfs: use hweight_long() Use hweight_long() to count free bits in the bitmap. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0c2fd1bfb155947a821fdaeb3c46aa1cfa20ad64 Author: Akinobu Mita Date: Mon Jul 25 17:13:37 2011 -0700 reiserfs: use proper little-endian bitops Using __test_and_{set,clear}_bit_le() with ignoring its return value can be replaced with __{set,clear}_bit_le(). This introduces reiserfs_{set,clear}_le_bit for __{set,clear}_bit_le and does the above change with them. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29df8d8f8702f0f53c1375015f09f04bc8d023c1 Author: Witold Szczeponik Date: Mon Jul 25 17:13:36 2011 -0700 pnpacpi: register disabled resources When parsing PnP ACPI resource structures, it may happen that some of the resources are disabled (in which case "the size" of the resource equals zero). The current solution is to skip these resources completely - with the unfortunate side effect that they are not registered despite the fact that they exist, after all. (The downside of this approach is that these resources cannot be used as templates for setting the actual device's resources because they are missing from the template.) The kernel's APM implementation does not suffer from this problem and registers all resources regardless of "their size". This patch fixes a problem with (at least) the vintage IBM ThinkPad 600E (and most likely also with the 600, 600X, and 770X which have a very similar layout) where some of its PnP devices support options where either an IRQ, a DMA, or an IO port is disabled. Without this patch, the devices can not be configured using the "/sys/bus/pnp/devices/*/resources" interface. The manipulation of these resources is important because the 600E has very demanding requirements. For instance, the number of IRQs is not sufficient to support all devices of the 600E. Fortunately, some of the devices, like the sound card's MPU-401 UART, can be configured to not use any IRQ, hence freeing an IRQ for a device that requires one. (Still, the device's "ResourceTemplate" requires an IRQ resource descriptor which cannot be created if the resource has not been registered in the first place.) As an example, the dependent sets of the 600E's CSC0103 device (the MPU-401 UART) are listed, with the patch applied, as: Dependent: 00 - Priority preferred port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding irq High-Edge Dependent: 01 - Priority acceptable port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding irq 5,7,2/9,10,11,15 High-Edge (The same result is obtained when PNPBIOS is used instead of PnP ACPI.) Without the patch, the IRQ resource in the preferred option is not listed at all: Dependent: 00 - Priority preferred port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding Dependent: 01 - Priority acceptable port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding irq 5,7,2/9,10,11,15 High-Edge And in fact, the 600E's DSDT lists the disabled IRQ as an option, as can be seen from the following excerpt from the DSDT: Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x0300, 0x0330, 0x10, 0x04) IRQNoFlags () {} } StartDependentFn (0x01, 0x00) { IO (Decode16, 0x0300, 0x0330, 0x10, 0x04) IRQNoFlags () {5,7,9,10,11,15} } EndDependentFn () }) With this patch applied, a user space program - or maybe even the kernel - can allocate all devices' resources optimally. For the 600E, this means to find optimal resources for (at least) the serial port, the parallel port, the infrared port, the MWAVE modem, the sound card, and the MPU-401 UART. The patch applies the idea to register disabled resources to all types of resources, not just to IRQs, DMAs, and IO ports. At the same time, it mimics the behavior of the "pnp_assign_xxx" functions from "drivers/pnp/manager.c" where resources with "no size" are considered disabled. No regressions were observed on hardware that does not require this patch. The patch is applied against 2.6.39. NB: The kernel's current PnP interface does not allow for disabling individual resources using the "/sys/bus/pnp/devices/$device/resources" file. Assuming this could be done, a device could be configured to use a disabled resource using a simple series of calls: echo disable > /sys/bus/pnp/devices/$device/resources echo clear > /sys/bus/pnp/devices/$device/resources echo set irq disabled > /sys/bus/pnp/devices/$device/resources echo fill > /sys/bus/pnp/devices/$device/resources echo activate > /sys/bus/pnp/devices/$device/resources This patch addresses only the parsing of PnP ACPI devices. ChangeLog (v1 -> v2): - extend patch description - fix typo in patch itself Signed-off-by: Witold Szczeponik Cc: Len Brown Cc: Adam Belay Cc: Bjorn Helgaas Cc: Bjorn Helgaas Cc: Henrique de Moraes Holschuh Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e57ee01750c4954fd0b5e3c6109cd4b870880eb9 Author: Uwe Kleine-König Date: Mon Jul 25 17:13:34 2011 -0700 drivers/rtc/rtc-tegra.c: properly initialize spinlock Using __SPIN_LOCK_UNLOCKED for a dynamically allocated lock is wrong and breaks the build with PREEMPT_RT_FULL. Signed-off-by: Uwe Kleine-König Cc: Andrew Chew Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f6b0dd369868559b384a66aa17512ae5aae2d9b Author: Jesper Juhl Date: Mon Jul 25 17:13:34 2011 -0700 drivers/rtc/rtc-twl.c: check return value of twl_rtc_write_u8() in twl_rtc_set_time() We forget to save the return value of the call to twl_rtc_write_u8(save_control, REG_RTC_CTRL_REG); in 'ret', making the test of 'ret < 0' dead code since 'ret' then couldn't possibly have changed since the last test just a few lines above. It also makes us not detect failures from that specific twl_rtc_write_u8() call. Signed-off-by: Jesper Juhl Cc: Alessandro Zummo Cc: Alexandre Rusev Cc: "George G. Davis" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a9a54ad7aa2c7420c96c6fd33538f55d81775cb Author: Anirudh Ghayal Date: Mon Jul 25 17:13:33 2011 -0700 drivers/rtc: add support for Qualcomm PMIC8xxx RTC Add support for PMIC8xxx based RTC. PMIC8xxx is Qualcomm's power management IC that internally houses an RTC module. This driver communicates with the PMIC module over SSBI bus. [akpm@linux-foundation.org: cosmetic tweaks] Acked-by: Wan ZongShun Reviewed-by: Stephen Boyd Signed-off-by: Anirudh Ghayal Signed-off-by: Ashay Jaiswal Cc: Samuel Ortiz Cc: Wan ZongShun Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cefe4fbbaab8e20a7581a187db82d33c1e3320c0 Author: Donggeun Kim Date: Mon Jul 25 17:13:32 2011 -0700 drivers/rtc/rtc-s3c.c: support clock gating Add support for clock gating. Power consumption can be reduced by setting rtc_clk disabled state except for when RTC related registers are accessed. Signed-off-by: Donggeun Kim Signed-off-by: MyungJoo Ham Signed-off-by: KyungMin Park Cc: Alessandro Zummo Cc: Ben Dooks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 955dbea3c7133d3ccfaa79c7eba1244c1de42865 Author: Dmitry Eremin-Solenikov Date: Mon Jul 25 17:13:30 2011 -0700 drivers/rtc/rtc-mpc5121.c: add support for RTC on MPC5200 MPC5200B contains a limited version of RTC from MPC5121. Add support for the RTC on that CPU. Signed-off-by: Dmitry Eremin-Solenikov Cc: Alessandro Zummo Cc: Anatolij Gustschin Cc: Grant Likely Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7afe1845dd1e7c90828c942daed7e57ffa7c38d6 Author: Sameer Nanda Date: Mon Jul 25 17:13:29 2011 -0700 init: skip calibration delay if previously done For each CPU, do the calibration delay only once. For subsequent calls, use the cached per-CPU value of loops_per_jiffy. This saves about 200ms of resume time on dual core Intel Atom N5xx based systems. This helps bring down the kernel resume time on such systems from about 500ms to about 300ms. [akpm@linux-foundation.org: make cpu_loops_per_jiffy static] [akpm@linux-foundation.org: clean up message text] [akpm@linux-foundation.org: fix things up after upstream rmk changes] Signed-off-by: Sameer Nanda Cc: Phil Carmody Cc: Andrew Worsley Cc: David Daney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 469dded1839105cfbfc265376e23e24dbc48d2a7 Author: Anatolij Gustschin Date: Mon Jul 25 17:13:29 2011 -0700 misc/eeprom: add eeprom access driver for digsy_mtc board Both displays on digsy_mtc board obtain their configuration from microwire EEPROMs which are connected to the SoC over GPIO lines. We need an easy way to access the EEPROMs to write the needed display configuration or to read out the currently programmed configuration. The generic eeprom_93xx46 SPI driver added by previous patch allows EEPROM access over sysfs. Using the simple driver added by this patch we provide used GPIO interface and access control description on the board for generic eeprom_93xx46 driver and spi_gpio driver. Signed-off-by: Anatolij Gustschin Cc: Jonathan Cameron Cc: Grant Likely Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 06b4501e88ad10f02849a3f9d7408ed6ae15a53f Author: Anatolij Gustschin Date: Mon Jul 25 17:13:27 2011 -0700 misc/eeprom: add driver for microwire 93xx46 EEPROMs Add EEPROM driver for 93xx46 chips. It can also be used with spi_gpio driver to access 93xx46 EEPROMs connected over GPIO lines. This driver supports read/write/erase access to the EEPROM chips over sysfs files. [rdunlap@xenotime.net: fix printk format] Signed-off-by: Anatolij Gustschin Cc: Jonathan Cameron Cc: Grant Likely Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6e60c02e9d9427f59842192bdb123cbeaf8bc9a0 Author: Joe Perches Date: Mon Jul 25 17:13:27 2011 -0700 checkpatch.pl: update $logFunctions Previous behavior allowed only alphabetic prefixes like pr_info to exceed the 80 column line length limit. ath6kl wants to add a digit into the prefix, so allow numbers as well as digits in the _ printks. __ratelimited and __once and WARN_RATELIMIT and WARN_ONCE may now exceed 80 cols. Add missing _printk type for completeness. Signed-off-by: Joe Perches Cc: Andy Whitcroft Cc: Kalle Valo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34d99219726ff4d3425b360d1e8d081627a73a00 Author: Joe Perches Date: Mon Jul 25 17:13:26 2011 -0700 checkpatch: make utf-8 test --strict Some patches are sent in using ISO-8859 or even Windows codepage 1252. Make checkpatch accept these by default and only emit the "Invalid UTF-8" message when using --strict. Signed-off-by: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 000d1cc1829f938c87402fc2fd4bb5e8daed6b52 Author: Joe Perches Date: Mon Jul 25 17:13:25 2011 -0700 checkpatch.pl: add ability to ignore various messages Some users would like the ability to not emit some of the messages that checkpatch produces. This can make it easier to use checkpatch in other projects and integrate into scm hook scripts. Add command line option to "--ignore" various message types. Add option --show-types to emit the "type" of each message. Categorize all ERROR, WARN and CHK messages with types. Add optional .checkpatch.conf file to store default options. 3 paths are searched for .checkpatch.conf . customized per-tree configurations $HOME user global configuration when per-tree configs don't exist ./scripts lk defaults to override script The .conf file can contain any valid command-line argument and the contents are prepended to any additional command line arguments. Multiple lines may be used, blank lines are ignored, # is a comment. Update "false positive" output for readability. Update version to 0.32 Signed-off-by: Joe Perches Acked-by: Mike Frysinger Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39b7e2878e783af027ddd3530f7a0abec330905d Author: Joe Perches Date: Mon Jul 25 17:13:24 2011 -0700 checkpatch: add a "prefer __aligned" check Prefer the use of __aligned(size) over __attribute__((__aligned___(size))) Link: http://lkml.kernel.org/r/20110609094526.1571774c.akpm@linux-foundation.org Suggested-by: Andrew Morton Signed-off-by: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2011247550c1b903a9ecd68f6eb3e9e7b7b07f52 Author: Joe Perches Date: Mon Jul 25 17:13:23 2011 -0700 checkpatch: validate signature styles and To: and Cc: lines Signatures have many forms and can sometimes cause problems if not in the correct format when using git send-email or quilt. Try to verify the signature tags and email addresses to use the generally accepted "Signed-off-by: Full Name " form. Original idea by Anish Kumar Signed-off-by: Joe Perches Cc: Anish Kumar Cc: Nick Bowler Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 165e72a6c374ed03c57d03c88406d32745e1add2 Author: Sven Eckelmann Date: Mon Jul 25 17:13:23 2011 -0700 checkpatch: add __rcu as a sparse modifier Fix "need consistent spacing around '*'" error after a __rcu sparse annotation which was caused by the missing __rcu entry in the checkpatch.pl internal list of sparse keywords. Signed-off-by: Sven Eckelmann Cc: Andy Whitcroft Cc: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7d2367af0b09f8028dc5c1b1919bb82d141c2afb Author: Joe Perches Date: Mon Jul 25 17:13:22 2011 -0700 checkpatch: suggest using min_t or max_t A common issue with min() or max() is using a cast on one or both of the arguments when using min_t/max_t could be better. Add cast detection to uses of min/max and suggest an appropriate use of min_t or max_t instead. Caveat: This only works for min() or max() on a single line. It does not find min() or max() split across multiple lines. This does find: min((u32)foo, bar); But it does not find: max((unsigned long)foo, bar); Suggested-by: Andrew Morton Signed-off-by: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27c46a2546c75c6814562e85b751e3d64c188ad5 Author: Randy Dunlap Date: Mon Jul 25 17:13:21 2011 -0700 drivers/firmware/sigma.c needs MODULE_LICENSE Fix module tainting message: sigma: module license 'unspecified' taints kernel. Signed-off-by: Randy Dunlap Acked-by: Mike Frysinger Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 75fb8f269305fc066c4c6ec6e7232df0c92f434d Author: Andy Shevchenko Date: Mon Jul 25 17:13:20 2011 -0700 lib: make _tolower() public This function is required by *printf and kstrto* functions that are located in the different modules. This patch makes _tolower() public. However, it's good idea to not use the helper outside of mentioned functions. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Andy Shevchenko Acked-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72d39508e43689b9346dfc956fad5e94a8911886 Author: H Hartley Sweeten Date: Mon Jul 25 17:13:20 2011 -0700 lib/lcm.c: quiet sparse noise The symbol 'lcm' is exported to the kernel (EXPORT_SYMBOL_GPL). Pick up it's definition in to quiet the sparse noise: warning: symbol 'lcm' was not declared. Should it be static? Signed-off-by: H Hartley Sweeten Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b09628ef56352a77bcf38e314869a8205c21a756 Author: Linus Walleij Date: Mon Jul 25 17:13:18 2011 -0700 mach-ux500: add lm3530 ALS platform data for U5500 From: Shreshtha Kumar Sahu platform data for simple backlight driver for LM3530 in the u5500 platform Signed-off-by: Shreshtha Kumar Sahu Signed-off-by: Linus Walleij Cc: Richard Purdie Cc: Lee Jones Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40b1445b1b6afc1ddac6ac31f4533277a0fb75dc Author: Shreshtha Kumar Sahu Date: Mon Jul 25 17:13:17 2011 -0700 arch/arm/mach-ux500/board-u5500.c: calibrate ALS input voltage Provide the support for auto calibration of ALS Zone boundaries based on min/max ALS input voltage. Signed-off-by: Shreshtha Kumar Sahu Signed-off-by: Linus Walleij Cc: Richard Purdie Cc: Lee Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2504f6da50f4d9656cad353798bf07657ec12eea Author: Axel Lin Date: Mon Jul 25 17:13:16 2011 -0700 drivers/leds/leds-netxbig: make LEDS_NETXBIG depend on LEDS_CLASS We call led_classdev_register/led_classdev_unregister in create_netxbig_led/delete_netxbig_led, thus make LEDS_NETXBIG depend on LEDS_CLASS. This patch fixes below build error if LEDS_CLASS is not configured. LD .tmp_vmlinux1 drivers/built-in.o: In function `create_netxbig_led': drivers/leds/leds-netxbig.c:350: undefined reference to `led_classdev_register' drivers/leds/leds-netxbig.c:361: undefined reference to `led_classdev_unregister' drivers/built-in.o: In function `delete_netxbig_led': drivers/leds/leds-netxbig.c:313: undefined reference to `led_classdev_unregister' Signed-off-by: Axel Lin Cc: Richard Purdie Acked-by: Simon Guinot Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e179840ba88c342d215631356cbfe4e62c9f175b Author: Axel Lin Date: Mon Jul 25 17:13:16 2011 -0700 drivers/leds/leds-sunfire.c: fix sunfire_led_generic_probe() error handling - return -ENOMEM if kzalloc fails, rather than the current -EINVAL - fix a memory leak in the case of goto out_unregister_led_cdevs Signed-off-by: Axel Lin Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19ab5cb8fb14a44a4eb0b532ddc3658b055d84f9 Author: Linus Walleij Date: Mon Jul 25 17:13:15 2011 -0700 drivers/leds/leds-lp5521.c: provide section tagging Tag the and remove() function as __devexit respectively. Signed-off-by: Linus Walleij Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05ed8490812a2f2b93da5d8e29fd2a1a9a87deb0 Author: Joe Perches Date: Mon Jul 25 17:13:14 2011 -0700 MAINTAINERS: update HIGH RESOLUTION TIMERS patterns clockchips.h was typoed as clockevents.h Signed-off-by: Joe Perches Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0334b3824e671c28737074ca9fb0723ef05d9b9e Author: Joe Perches Date: Mon Jul 25 17:13:13 2011 -0700 get_maintainers.pl: improve .mailmap parsing Entries that used formats other than "Proper Name " were not parsed properly. Try to improve the parsing so that the entries in the forms of: Proper Name and Proper Name Commit Name are transformed correctly. Signed-off-by: Joe Perches Reviewed-by: Florian Mickler Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 626a0312514a121a90b4478cbde111ffc6826ae2 Author: Stephen Boyd Date: Mon Jul 25 17:13:12 2011 -0700 kernel/configs.c: include MODULE_*() when CONFIG_IKCONFIG_PROC=n If CONFIG_IKCONFIG=m but CONFIG_IKCONFIG_PROC=n we get a module that has no MODULE_LICENSE definition. Move the MODULE_*() definitions outside the CONFIG_IKCONFIG_PROC #ifdef to prevent this configuration from tainting the kernel. Signed-off-by: Stephen Boyd Acked-by: Randy Dunlap Acked-by: WANG Cong Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a376d3d6727b2f05ef4c6670cc74afbd8110df89 Author: Amerigo Wang Date: Mon Jul 25 17:13:12 2011 -0700 notifiers: vt: move vt notifiers into vt.h It is not necessary to share the same notifier.h. Signed-off-by: WANG Cong Cc: David Miller Cc: "Rafael J. Wysocki" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35eb6db11ed9cbf9702ec90a28779a51fe4a21a9 Author: Amerigo Wang Date: Mon Jul 25 17:13:11 2011 -0700 notifiers: pm: move pm notifiers into suspend.h It is not necessary to share the same notifier.h. Signed-off-by: WANG Cong Cc: David Miller Acked-by: "Rafael J. Wysocki" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c5f41752fd37979dbaec61dc59c7ece0606ddf7e Author: Amerigo Wang Date: Mon Jul 25 17:13:10 2011 -0700 notifiers: sys: move reboot notifiers into reboot.h It is not necessary to share the same notifier.h. This patch already moves register_reboot_notifier() and unregister_reboot_notifier() from kernel/notifier.c to kernel/sys.c. [amwang@redhat.com: make allyesconfig succeed on ppc64] Signed-off-by: WANG Cong Cc: David Miller Cc: "Rafael J. Wysocki" Cc: Greg KH Signed-off-by: WANG Cong Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcfe1421c916345b068f43749263b94270324500 Author: Amerigo Wang Date: Mon Jul 25 17:13:09 2011 -0700 notifiers: net: move netdevice notifiers into netdevice.h It is not necessary to share the same notifier.h. Signed-off-by: WANG Cong Acked-by: David Miller Cc: "Rafael J. Wysocki" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 80f1ff97d0a9d92f44d2b2dd9425afa950e58f2b Author: Amerigo Wang Date: Mon Jul 25 17:13:08 2011 -0700 notifiers: cpu: move cpu notifiers into cpu.h We presently define all kinds of notifiers in notifier.h. This is not necessary at all, since different subsystems use different notifiers, they are almost non-related with each other. This can also save much build time. Suppose I add a new netdevice event, really I don't have to recompile all the source, just network related. Without this patch, all the source will be recompiled. I move the notify events near to their subsystem notifier registers, so that they can be found more easily. This patch: It is not necessary to share the same notifier.h. Signed-off-by: WANG Cong Cc: David Miller Cc: "Rafael J. Wysocki" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a1bb73d76bc814e9385390e6aa9880d884322e2e Author: Donggeun Kim Date: Mon Jul 25 17:13:07 2011 -0700 drivers/misc: add support the FSA9480 USB Switch The FSA9480 is a USB port accessory detector and switch. This patch adds support the FSA9480 USB Switch. [akpm@linux-foundation.org: make a couple of things static] Signed-off-by: Donggeun Kim Signed-off-by: Minkyu Kang Signed-off-by: Kyungmin Park Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 703f03c896fdbd726b809066ae279df513992f0e Author: Philip A. Prindeville Date: Mon Jul 25 17:13:05 2011 -0700 geode: reflect mfgpt dependency on mfd As stated in drivers/mfd/cs5535-mfd.c, the mfd driver exposes the BARs which then make the GPIO, MFGPT, ACPI, etc. all visible to the system. So the dependencies of the MFGPT stuff have changed, and most people expect Kconfig to bring in the necessary dependencies. Without them, the module fails to load and most people don't understand why because the details of the rewrite aren't captured anywhere most people who know to look. This dependency needs to be reflected in Kconfig. Signed-off-by: Philip A. Prindeville Acked-by: Alexandros C. Couloumbis Acked-by: Andres Salomon Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 005bdad7b80ac017ca21d795639d4214b9844a84 Author: Arnaud Lacombe Date: Mon Jul 25 17:13:04 2011 -0700 eisa/pci_eisa.c: fix section mismatch Fixes WARNING: vmlinux.o(.data+0x15d3ac): Section mismatch in reference from the variable pci_eisa_driver to the function .init.text:pci_eisa_init() The variable pci_eisa_driver references the function __init pci_eisa_init() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console Signed-off-by: Arnaud Lacombe Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b9d4f426689765d1e066913f6872c8d59e0f2ac9 Author: Arnaud Lacombe Date: Mon Jul 25 17:13:03 2011 -0700 include/linux/kernel.h: hide internal macros from userspace Unexpose to userland the following macros - __FUNCTION__ - NUMA_BUILD - COMPACTION_BUILD - REBUILD_DUE_TO_FTRACE_MCOUNT_RECORD Signed-off-by: Arnaud Lacombe Cc: Rusty Russell Cc: KOSAKI Motohiro Cc: Christoph Lameter Cc: Mel Gorman Cc: Steven Rostedt Acked-by: WANG Cong Cc: Michal Marek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9d00f92f437f0ff682876cab9f2d94cf3b6e5d17 Author: WANG Cong Date: Mon Jul 25 17:13:02 2011 -0700 include/linux/kernel.h: fix a headers_check warning Fix the warning: usr/include/linux/kernel.h:65: userspace cannot reference function or variable defined in the kernel As Michal noted, BUILD_BUG_ON stuffs should be moved under #ifdef __KERNEL__. Signed-off-by: WANG Cong Cc: Michal Marek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a0e44d4a7a3935afe425ec8dd1a5b63895e1f9c3 Author: Uwe Kleine-König Date: Mon Jul 25 17:13:00 2011 -0700 include/linux/ioport.h: new helper to define common struct resource constructs Resource definitions that just define start, end and flags = IORESOURCE_MEM or IORESOURCE_IRQ (with start=end) are quite common. So introduce a shortcut for them. For completeness add macros for IORESOURCE_DMA and IORESOURCE_IO, too and also make available a set of macros to specify named resources of all types which are less common. Signed-off-by: Uwe Kleine-König Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae891a1b93bf62e9aaa116a7a71312375047fc9f Author: Maxin B John Date: Mon Jul 25 17:12:59 2011 -0700 devres: fix possible use after free devres uses the pointer value as key after it's freed, which is safe but triggers spurious use-after-free warnings on some static analysis tools. Rearrange code to avoid such warnings. Signed-off-by: Maxin B. John Reviewed-by: Rolf Eike Beer Acked-by: Tejun Heo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5190f0c030f46b3169205f34f6d9ef480fa39ef2 Author: Mike Frysinger Date: Mon Jul 25 17:12:58 2011 -0700 asm-generic/system.h: drop useless __KERNEL__ This header isn't exported to user-space, and even if it was, the __KERNEL__ check covers the entire file, so we'd get a useless stub in the first place. So punt it. Signed-off-by: Mike Frysinger Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f35119d6681300ba6d76da53cb1ebc2eed62e77a Author: Rakib Mullick Date: Mon Jul 25 17:12:56 2011 -0700 drivers: use kzalloc/kcalloc instead of 'kmalloc+memset', where possible Signed-off-by: Rakib Mullick Cc: Jeff Garzik Cc: David Airlie Cc: Tejun Heo Cc: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f1c93e4946ae1cc268729451de6335a7e7d2bea9 Author: Richard Weinberger Date: Mon Jul 25 17:12:55 2011 -0700 um: remove dead code GCC 4.6's -Wunused-but-set-variable found some dead code. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39073db15bf9016003e8a4e607d517f4928b713c Author: Richard Weinberger Date: Mon Jul 25 17:12:55 2011 -0700 um: adjust size of pid_buf Linux can have pids up to 4*1024*1024. To handle such huge numbers pid_buf needs to be larger. Reported-by: Geert Uytterhoeven Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f1c2bb8b9964ed31de988910f8b1cfb586d30091 Author: Richard Weinberger Date: Mon Jul 25 17:12:54 2011 -0700 um: implement a x86_64 vDSO Until now UML had no x86_64 vDSO. So glibc always used the vsyscall page for gettimeday() and friends. Calls to gettimeday() returned falsely the host time and confused some programs. This patch adds a vDSO which turns all __vdso_* calls into a system call so that UML can trap them. As glibc still uses the vsyscall page for static binaries this patch improves the situation only for dynamic binaries. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fc9a00187ba1300a0baae8e613cc62598e1a7de7 Author: Richard Weinberger Date: Mon Jul 25 17:12:54 2011 -0700 um: set __HAVE_ARCH_GATE_AREA for x86_64 Implement arch_vma_name() and make get_gate_vma(), in_gate_area() and in_gate_area_no_mm() a nop. We need arch_vma_name() to support vDSO. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 548f0a4e02f6fa33278e77a2a6477cdeb512317f Author: Richard Weinberger Date: Mon Jul 25 17:12:53 2011 -0700 um: Set __HAVE_ARCH_GATE_AREA for i386 When UML is unable to reuse the host's vDSO FIXADDR_USER_START is zero. To handle this special case correclty we have to implement custom gate area helper methods. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b743ac54e54ca18fb7164a97cc77cf1ccee0b0f7 Author: Richard Weinberger Date: Mon Jul 25 17:12:52 2011 -0700 um: disable scan_elf_aux() on x86_64 Reusing the host's vDSO makes only sense on x86_32. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2a6d0ac182688d4d23357ece744978706c044aad Author: Davidlohr Bueso Date: Mon Jul 25 17:12:52 2011 -0700 uml: free resources When creating the temp file there's a memory and file descriptor leak upon error. Signed-off-by: Davidlohr Bueso Signed-off-by: Richard Weinberger Reviewed-by: Vitaliy Ivanov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a8beb93067764344523386e0e5388d3fd78add7 Author: Vitaliy Ivanov Date: Mon Jul 25 17:12:51 2011 -0700 uml: drivers/slip_user.c memory leak fix Do not free memory when you failed to allocate it. Signed-off-by: Vitaliy Ivanov Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2fdf2130926f07881c75e3905ece472c37d7703f Author: Vitaliy Ivanov Date: Mon Jul 25 17:12:50 2011 -0700 uml: helper.c warning corrections Fix this warning: arch/um/os-Linux/helper.c: In function `helper_child': arch/um/os-Linux/helper.c:38:7: warning: ignoring return value of `write', declared with attribute warn_unused_result [richard@nod.at: happens only with -D_FORTIFY_SOURCE=2] Signed-off-by: Vitaliy Ivanov Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a99ae7c57d2de5cad9562bed32addf064521116 Author: Vitaliy Ivanov Date: Mon Jul 25 17:12:50 2011 -0700 uml: cow_user.c warning corrections Fix this warning: arch/um/drivers/cow_user.c: In function `absolutize': arch/um/drivers/cow_user.c:189:7: warning: ignoring return value of `chdir', declared with attribute warn_unused_result [richard@nod.at: happens only with -D_FORTIFY_SOURCE=2] Signed-off-by: Vitaliy Ivanov Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fbee8d933c775cdb9daac3063659cda38c1776c2 Author: Vitaliy Ivanov Date: Mon Jul 25 17:12:49 2011 -0700 uml: drivers/net_user.c memory leak fix Perform memory cleanup on exit. On receiving invalid 'pid' we still should clean 'output' variable. Signed-off-by: Vitaliy Ivanov Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7fa38e7e9ead2dc7a346db10dd27a40dd83b2a26 Author: Geert Uytterhoeven Date: Mon Jul 25 17:12:48 2011 -0700 um: reinstate kernel version in generated .config Commit 0954828fcbf3 ("kconfig: replace KERNELVERSION usage by the mainmenu's prompt") made the kernel version disappear from the generated .config file when configuring for UML. As UML's Kconfig doesn't have a mainmenu, kconfig falls back to the default string "Linux Kernel Configuration". Add a suitable mainmenu to the main UML Kconfig file to fix this. Signed-off-by: Geert Uytterhoeven Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd71dc4c335a8957d269ce063b3e80933f3482fc Author: Richard Weinberger Date: Mon Jul 25 17:12:48 2011 -0700 um: add netpoll support To make netconsole usable on UML, its ethernet driver needs netpoll support. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f956b3e40ad7b9f7c0d33b80fe78f57fedb74f49 Author: Richard Weinberger Date: Mon Jul 25 17:12:47 2011 -0700 um: fix _FORTIFY_SOURCE=2 support for kernel modules When UML is compiled with _FORTIFY_SOURCE we have to export all _chk() functions which are used in modules. For now it's only the case for __sprintf_chk(). Tested-by: Florian Fainelli Reported-by: Florian Fainelli Signed-off-by: Richard Weinberger Acked-by: Vitaliy Ivanov Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22e9b917ab7ccd98046ad9428fb28967f0744605 Author: Richard Weinberger Date: Mon Jul 25 17:12:46 2011 -0700 um: clean up delay functions Both sys-i386 and sys-x86_64 support now ndelay(). The delay functions are based on arch/x86/lib/delay.c. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c0ce5b673457123406f19e616bb8cf20a0c12cb5 Author: Mathias Krause Date: Mon Jul 25 17:12:45 2011 -0700 um, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause Cc: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7213de044e11856f5c2aee0e43eff8dc507d421c Author: Richard Weinberger Date: Mon Jul 25 17:12:44 2011 -0700 um: clean up vm-flags.h There is no need to define VM_{STACK,DATA}_DEFAULT_FLAGS as variable. It's also useless to test for TIF_IA32 as 64bit UML has no IA32 emulation. Signed-off-by: Richard Weinberger Acked-by: Randy Dunlap Cc: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ec80e50e11bcc3f39e47b9dc73110dbc58e4780 Author: Mathias Krause Date: Mon Jul 25 17:12:44 2011 -0700 cris, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so those calls to set_fs(USER_DS) are redundant. Signed-off-by: Mathias Krause Cc: Jesper Nilsson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce1bb7afc5648056cf66896c4aebc0062bb12f79 Author: WANG Cong Date: Mon Jul 25 17:12:43 2011 -0700 cris: fix some build warnings in pinmux.c Fix some harmless warnings such as arch/cris/arch-v32/mach-a3/pinmux.c:273: warning: ISO C90 forbids mixed declarations and code: Signed-off-by: WANG Cong Cc: Mikael Starvik Cc: Jesper Nilsson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b7de110044b4e26adcb7b278d14da93133692ed7 Author: Mathias Krause Date: Mon Jul 25 17:12:42 2011 -0700 m68k, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so those calls to set_fs(USER_DS) are redundant. Signed-off-by: Mathias Krause Cc: Greg Ungerer Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f796062598235b9f73086d0fb779e120ae9581a0 Author: Mathias Krause Date: Mon Jul 25 17:12:40 2011 -0700 m32r, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause Cc: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6fa80900db58b547fe1cfdc77c5413091cafa7bd Author: Mathias Krause Date: Mon Jul 25 17:12:39 2011 -0700 alpha, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 023f21b9ccab71ae963781044a96b922cb4437bf Author: Mathias Krause Date: Mon Jul 25 17:12:38 2011 -0700 h8300, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so those calls to set_fs(USER_DS) are redundant. Signed-off-by: Mathias Krause Cc: Yoshinori Sato Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99b12e3d882bc7ebdfe0de381dff3b16d21c38f7 Author: Wu Fengguang Date: Mon Jul 25 17:12:37 2011 -0700 writeback: account NR_WRITTEN at IO completion time NR_WRITTEN is now accounted at block IO enqueue time, which is not very accurate as to common understanding. This moves NR_WRITTEN accounting to the IO completion time and makes it more consistent with BDI_WRITTEN, which is used for bandwidth estimation. Signed-off-by: Wu Fengguang Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48f170fb7d7db8789ccc23e051af61f62af5f685 Author: Hugh Dickins Date: Mon Jul 25 17:12:37 2011 -0700 tmpfs: simplify unuse and writepage shmem_unuse_inode() and shmem_writepage() contain a little code to cope with pages inserted independently into the filecache, probably by a filesystem stacked on top of tmpfs, then fed to its ->readpage() or ->writepage(). Unionfs was indeed experimenting with working in that way three years ago, but I find no current examples: nowadays the stacking filesystems use vfs interfaces to the lower filesystem. It's now illegal: remove most of that code, adding some WARN_ON_ONCEs. Signed-off-by: Hugh Dickins Cc: Erez Zadok Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27ab700626f048407e9466d389a43c7d3aa45967 Author: Hugh Dickins Date: Mon Jul 25 17:12:36 2011 -0700 tmpfs: simplify filepage/swappage We can now simplify shmem_getpage_gfp(): there is no longer a dilemma of filepage passed in via shmem_readpage(), then swappage found, which must then be copied over to it. Although at first it's tempting to replace the **pagep arg by returning struct page *, that makes a mess of IS_ERR_OR_NULL(page)s in all the callers, so leave as is. Insert BUG_ON(!PageUptodate) when we find and lock page: some of the complication came from uninitialized pages inserted into filecache prior to readpage; but now we're in control, and only release pagelock on filecache once it's uptodate (if an error occurs in reading back from swap, the page remains in swapcache, never moved to filecache). Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e83c32e8f92724a06a22a3b42f3afc07db93e131 Author: Hugh Dickins Date: Mon Jul 25 17:12:35 2011 -0700 tmpfs: simplify prealloc_page The prealloc_page handling in shmem_getpage_gfp() is unnecessarily complicated: first simplify that before going on to filepage/swappage. That's right, don't report ENOMEM when the preallocation fails: we may or may not need the page. But simply report ENOMEM once we find we do need it, instead of dropping lock, repeating allocation, unwinding on failure etc. And leave the out label on the fast path, don't goto. Fix something that looks like a bug but turns out not to be: set PageSwapBacked on prealloc_page before its mem_cgroup_cache_charge(), as the removed case was doing. That's important before adding to LRU (determines which LRU the page goes on), and does affect which path it takes through memcontrol.c, but in the end MEM_CGROUP_CHANGE_TYPE_ SHMEM is handled no differently from CACHE. Signed-off-by: Hugh Dickins Acked-by: Shaohua Li Cc: "Zhang, Yanmin" Cc: Tim Chen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9276aad6c898dbcc31d095f2934dedd5cbb2e93e Author: Hugh Dickins Date: Mon Jul 25 17:12:34 2011 -0700 tmpfs: remove_shmem_readpage Remove that pernicious shmem_readpage() at last: the things we needed it for (splice, loop, sendfile, i915 GEM) are now fully taken care of by shmem_file_splice_read() and shmem_read_mapping_page_gfp(). This removal clears the way for a simpler shmem_getpage_gfp(), since page is never passed in; but leave most of that cleanup until after. sys_readahead() and sys_fadvise(POSIX_FADV_WILLNEED) will now EINVAL, instead of unexpectedly trying to read ahead on tmpfs: if that proves to be an issue for someone, then we can either arrange for them to return success instead, or try to implement async readahead on tmpfs. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68da9f055755ee2609a1686722e6d6a7980019ee Author: Hugh Dickins Date: Mon Jul 25 17:12:34 2011 -0700 tmpfs: pass gfp to shmem_getpage_gfp Make shmem_getpage() a wrapper, passing mapping_gfp_mask() down to shmem_getpage_gfp(), which in turn passes gfp down to shmem_swp_alloc(). Change shmem_read_mapping_page_gfp() to use shmem_getpage_gfp() in the CONFIG_SHMEM case; but leave tiny !SHMEM using read_cache_page_gfp(). Add a BUG_ON() in case anyone happens to call this on a non-shmem mapping; though we might later want to let that case route to read_cache_page_gfp(). It annoys me to have these two almost-redundant args, gfp and fault_type: I can't find a better way; but initialize fault_type only in shmem_fault(). Note that before, read_cache_page_gfp() was allocating i915_gem's pages with __GFP_NORETRY as intended; but the corresponding swap vector pages got allocated without it, leaving a small possibility of OOM. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 71f0e07a605fad1fb6b288e4dc1dd8dfa78f4872 Author: Hugh Dickins Date: Mon Jul 25 17:12:33 2011 -0700 tmpfs: refine shmem_file_splice_read Tidy up shmem_file_splice_read(): Remove readahead: okay, we could implement shmem readahead on swap, but have never done so before, swap being the slow exceptional path. Use shmem_getpage() instead of find_or_create_page() plus ->readpage(). Remove several comments: sorry, I found them more distracting than helpful, and this will not be the reference version of splice_read(). Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 708e3508c2a2204cc276dcdb543009a441bfe91b Author: Hugh Dickins Date: Mon Jul 25 17:12:32 2011 -0700 tmpfs: clone shmem_file_splice_read() Copy __generic_file_splice_read() and generic_file_splice_read() from fs/splice.c to shmem_file_splice_read() in mm/shmem.c. Make page_cache_pipe_buf_ops and spd_release_page() accessible to it. Signed-off-by: Hugh Dickins Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2efaca927f5cd7ecd0f1554b8f9b6a9a2c329c03 Author: Benjamin Herrenschmidt Date: Mon Jul 25 17:12:32 2011 -0700 mm/futex: fix futex writes on archs with SW tracking of dirty & young I haven't reproduced it myself but the fail scenario is that on such machines (notably ARM and some embedded powerpc), if you manage to hit that futex path on a writable page whose dirty bit has gone from the PTE, you'll livelock inside the kernel from what I can tell. It will go in a loop of trying the atomic access, failing, trying gup to "fix it up", getting succcess from gup, go back to the atomic access, failing again because dirty wasn't fixed etc... So I think you essentially hang in the kernel. The scenario is probably rare'ish because affected architecture are embedded and tend to not swap much (if at all) so we probably rarely hit the case where dirty is missing or young is missing, but I think Shan has a piece of SW that can reliably reproduce it using a shared writable mapping & fork or something like that. On archs who use SW tracking of dirty & young, a page without dirty is effectively mapped read-only and a page without young unaccessible in the PTE. Additionally, some architectures might lazily flush the TLB when relaxing write protection (by doing only a local flush), and expect a fault to invalidate the stale entry if it's still present on another processor. The futex code assumes that if the "in_atomic()" access -EFAULT's, it can "fix it up" by causing get_user_pages() which would then be equivalent to taking the fault. However that isn't the case. get_user_pages() will not call handle_mm_fault() in the case where the PTE seems to have the right permissions, regardless of the dirty and young state. It will eventually update those bits ... in the struct page, but not in the PTE. Additionally, it will not handle the lazy TLB flushing that can be required by some architectures in the fault case. Basically, gup is the wrong interface for the job. The patch provides a more appropriate one which boils down to just calling handle_mm_fault() since what we are trying to do is simulate a real page fault. The futex code currently attempts to write to user memory within a pagefault disabled section, and if that fails, tries to fix it up using get_user_pages(). This doesn't work on archs where the dirty and young bits are maintained by software, since they will gate access permission in the TLB, and will not be updated by gup(). In addition, there's an expectation on some archs that a spurious write fault triggers a local TLB flush, and that is missing from the picture as well. I decided that adding those "features" to gup() would be too much for this already too complex function, and instead added a new simpler fixup_user_fault() which is essentially a wrapper around handle_mm_fault() which the futex code can call. [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: fix some nits Darren saw, fiddle comment layout] Signed-off-by: Benjamin Herrenschmidt Reported-by: Shan Hai Tested-by: Shan Hai Cc: David Laight Acked-by: Peter Zijlstra Cc: Darren Hart Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72c4783210f77fd743f0a316858d33f27db51e7c Author: Konstantin Khlebnikov Date: Mon Jul 25 17:12:31 2011 -0700 mm: remove useless rcu lock-unlock from mapping_tagged() radix_tree_tagged() is lockless - it reads from a member of the raid-tree root node. It does not require any protection. Signed-off-by: Konstantin Khlebnikov Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76d3fbf8fbf6cc78ceb63549e0e0c5bc8a88f838 Author: Mel Gorman Date: Mon Jul 25 17:12:30 2011 -0700 mm: page allocator: reconsider zones for allocation after direct reclaim With zone_reclaim_mode enabled, it's possible for zones to be considered full in the zonelist_cache so they are skipped in the future. If the process enters direct reclaim, the ZLC may still consider zones to be full even after reclaiming pages. Reconsider all zones for allocation if direct reclaim returns successfully. Signed-off-by: Mel Gorman Cc: Minchan Kim Cc: KOSAKI Motohiro Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cd38b115d5ad79b0100ac6daa103c4fe2c50a913 Author: Mel Gorman Date: Mon Jul 25 17:12:29 2011 -0700 mm: page allocator: initialise ZLC for first zone eligible for zone_reclaim There have been a small number of complaints about significant stalls while copying large amounts of data on NUMA machines reported on a distribution bugzilla. In these cases, zone_reclaim was enabled by default due to large NUMA distances. In general, the complaints have not been about the workload itself unless it was a file server (in which case the recommendation was disable zone_reclaim). The stalls are mostly due to significant amounts of time spent scanning the preferred zone for pages to free. After a failure, it might fallback to another node (as zonelists are often node-ordered rather than zone-ordered) but stall quickly again when the next allocation attempt occurs. In bad cases, each page allocated results in a full scan of the preferred zone. Patch 1 checks the preferred zone for recent allocation failure which is particularly important if zone_reclaim has failed recently. This avoids rescanning the zone in the near future and instead falling back to another node. This may hurt node locality in some cases but a failure to zone_reclaim is more expensive than a remote access. Patch 2 clears the zlc information after direct reclaim. Otherwise, zone_reclaim can mark zones full, direct reclaim can reclaim enough pages but the zone is still not considered for allocation. This was tested on a 24-thread 2-node x86_64 machine. The tests were focused on large amounts of IO. All tests were bound to the CPUs on node-0 to avoid disturbances due to processes being scheduled on different nodes. The kernels tested are 3.0-rc6-vanilla Vanilla 3.0-rc6 zlcfirst Patch 1 applied zlcreconsider Patches 1+2 applied FS-Mark ./fs_mark -d /tmp/fsmark-10813 -D 100 -N 5000 -n 208 -L 35 -t 24 -S0 -s 524288 fsmark-3.0-rc6 3.0-rc6 3.0-rc6 vanilla zlcfirs zlcreconsider Files/s min 54.90 ( 0.00%) 49.80 (-10.24%) 49.10 (-11.81%) Files/s mean 100.11 ( 0.00%) 135.17 (25.94%) 146.93 (31.87%) Files/s stddev 57.51 ( 0.00%) 138.97 (58.62%) 158.69 (63.76%) Files/s max 361.10 ( 0.00%) 834.40 (56.72%) 802.40 (55.00%) Overhead min 76704.00 ( 0.00%) 76501.00 ( 0.27%) 77784.00 (-1.39%) Overhead mean 1485356.51 ( 0.00%) 1035797.83 (43.40%) 1594680.26 (-6.86%) Overhead stddev 1848122.53 ( 0.00%) 881489.88 (109.66%) 1772354.90 ( 4.27%) Overhead max 7989060.00 ( 0.00%) 3369118.00 (137.13%) 10135324.00 (-21.18%) MMTests Statistics: duration User/Sys Time Running Test (seconds) 501.49 493.91 499.93 Total Elapsed Time (seconds) 2451.57 2257.48 2215.92 MMTests Statistics: vmstat Page Ins 46268 63840 66008 Page Outs 90821596 90671128 88043732 Swap Ins 0 0 0 Swap Outs 0 0 0 Direct pages scanned 13091697 8966863 8971790 Kswapd pages scanned 0 1830011 1831116 Kswapd pages reclaimed 0 1829068 1829930 Direct pages reclaimed 13037777 8956828 8648314 Kswapd efficiency 100% 99% 99% Kswapd velocity 0.000 810.643 826.346 Direct efficiency 99% 99% 96% Direct velocity 5340.128 3972.068 4048.788 Percentage direct scans 100% 83% 83% Page writes by reclaim 0 3 0 Slabs scanned 796672 720640 720256 Direct inode steals 7422667 7160012 7088638 Kswapd inode steals 0 1736840 2021238 Test completes far faster with a large increase in the number of files created per second. Standard deviation is high as a small number of iterations were much higher than the mean. The number of pages scanned by zone_reclaim is reduced and kswapd is used for more work. LARGE DD 3.0-rc6 3.0-rc6 3.0-rc6 vanilla zlcfirst zlcreconsider download tar 59 ( 0.00%) 59 ( 0.00%) 55 ( 7.27%) dd source files 527 ( 0.00%) 296 (78.04%) 320 (64.69%) delete source 36 ( 0.00%) 19 (89.47%) 20 (80.00%) MMTests Statistics: duration User/Sys Time Running Test (seconds) 125.03 118.98 122.01 Total Elapsed Time (seconds) 624.56 375.02 398.06 MMTests Statistics: vmstat Page Ins 3594216 439368 407032 Page Outs 23380832 23380488 23377444 Swap Ins 0 0 0 Swap Outs 0 436 287 Direct pages scanned 17482342 69315973 82864918 Kswapd pages scanned 0 519123 575425 Kswapd pages reclaimed 0 466501 522487 Direct pages reclaimed 5858054 2732949 2712547 Kswapd efficiency 100% 89% 90% Kswapd velocity 0.000 1384.254 1445.574 Direct efficiency 33% 3% 3% Direct velocity 27991.453 184832.737 208171.929 Percentage direct scans 100% 99% 99% Page writes by reclaim 0 5082 13917 Slabs scanned 17280 29952 35328 Direct inode steals 115257 1431122 332201 Kswapd inode steals 0 0 979532 This test downloads a large tarfile and copies it with dd a number of times - similar to the most recent bug report I've dealt with. Time to completion is reduced. The number of pages scanned directly is still disturbingly high with a low efficiency but this is likely due to the number of dirty pages encountered. The figures could probably be improved with more work around how kswapd is used and how dirty pages are handled but that is separate work and this result is significant on its own. Streaming Mapped Writer MMTests Statistics: duration User/Sys Time Running Test (seconds) 124.47 111.67 112.64 Total Elapsed Time (seconds) 2138.14 1816.30 1867.56 MMTests Statistics: vmstat Page Ins 90760 89124 89516 Page Outs 121028340 120199524 120736696 Swap Ins 0 86 55 Swap Outs 0 0 0 Direct pages scanned 114989363 96461439 96330619 Kswapd pages scanned 56430948 56965763 57075875 Kswapd pages reclaimed 27743219 27752044 27766606 Direct pages reclaimed 49777 46884 36655 Kswapd efficiency 49% 48% 48% Kswapd velocity 26392.541 31363.631 30561.736 Direct efficiency 0% 0% 0% Direct velocity 53780.091 53108.759 51581.004 Percentage direct scans 67% 62% 62% Page writes by reclaim 385 122 1513 Slabs scanned 43008 39040 42112 Direct inode steals 0 10 8 Kswapd inode steals 733 534 477 This test just creates a large file mapping and writes to it linearly. Time to completion is again reduced. The gains are mostly down to two things. In many cases, there is less scanning as zone_reclaim simply gives up faster due to recent failures. The second reason is that memory is used more efficiently. Instead of scanning the preferred zone every time, the allocator falls back to another zone and uses it instead improving overall memory utilisation. This patch: initialise ZLC for first zone eligible for zone_reclaim. The zonelist cache (ZLC) is used among other things to record if zone_reclaim() failed for a particular zone recently. The intention is to avoid a high cost scanning extremely long zonelists or scanning within the zone uselessly. Currently the zonelist cache is setup only after the first zone has been considered and zone_reclaim() has been called. The objective was to avoid a costly setup but zone_reclaim is itself quite expensive. If it is failing regularly such as the first eligible zone having mostly mapped pages, the cost in scanning and allocation stalls is far higher than the ZLC initialisation step. This patch initialises ZLC before the first eligible zone calls zone_reclaim(). Once initialised, it is checked whether the zone failed zone_reclaim recently. If it has, the zone is skipped. As the first zone is now being checked, additional care has to be taken about zones marked full. A zone can be marked "full" because it should not have enough unmapped pages for zone_reclaim but this is excessive as direct reclaim or kswapd may succeed where zone_reclaim fails. Only mark zones "full" after zone_reclaim fails if it failed to reclaim enough pages after scanning. Signed-off-by: Mel Gorman Cc: Minchan Kim Cc: KOSAKI Motohiro Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d65f86db14806cf7b1218c7b4ecb8b4db5af27d Author: KAMEZAWA Hiroyuki Date: Mon Jul 25 17:12:27 2011 -0700 mm: preallocate page before lock_page() at filemap COW Currently we are keeping faulted page locked throughout whole __do_fault call (except for page_mkwrite code path) after calling file system's fault code. If we do early COW, we allocate a new page which has to be charged for a memcg (mem_cgroup_newpage_charge). This function, however, might block for unbounded amount of time if memcg oom killer is disabled or fork-bomb is running because the only way out of the OOM situation is either an external event or OOM-situation fix. In the end we are keeping the faulted page locked and blocking other processes from faulting it in which is not good at all because we are basically punishing potentially an unrelated process for OOM condition in a different group (I have seen stuck system because of ld-2.11.1.so being locked). We can do test easily. % cgcreate -g memory:A % cgset -r memory.limit_in_bytes=64M A % cgset -r memory.memsw.limit_in_bytes=64M A % cd kernel_dir; cgexec -g memory:A make -j Then, the whole system will live-locked until you kill 'make -j' by hands (or push reboot...) This is because some important page in a a shared library are locked. Considering again, the new page is not necessary to be allocated with lock_page() held. And usual page allocation may dive into long memory reclaim loop with holding lock_page() and can cause very long latency. There are 3 ways. 1. do allocation/charge before lock_page() Pros. - simple and can handle page allocation in the same manner. This will reduce holding time of lock_page() in general. Cons. - we do page allocation even if ->fault() returns error. 2. do charge after unlock_page(). Even if charge fails, it's just OOM. Pros. - no impact to non-memcg path. Cons. - implemenation requires special cares of LRU and we need to modify page_add_new_anon_rmap()... 3. do unlock->charge->lock again method. Pros. - no impact to non-memcg path. Cons. - This may kill LOCK_PAGE_RETRY optimization. We need to release lock and get it again... This patch moves "charge" and memory allocation for COW page before lock_page(). Then, we can avoid scanning LRU with holding a lock on a page and latency under lock_page() will be reduced. Then, above livelock disappears. [akpm@linux-foundation.org: fix code layout] Signed-off-by: KAMEZAWA Hiroyuki Reported-by: Lutz Vieweg Original-idea-by: Michal Hocko Cc: Michal Hocko Cc: Ying Han Cc: Johannes Weiner Cc: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d515afe88a32e567c550e3db914f3e378f86453a Author: Hugh Dickins Date: Mon Jul 25 17:12:26 2011 -0700 tmpfs: no need to use i_lock 2.6.36's 7e496299d4d2 ("tmpfs: make tmpfs scalable with percpu_counter for used blocks") to make tmpfs scalable with percpu_counter used inode->i_lock in place of sbinfo->stat_lock around i_blocks updates; but that was adverse to scalability, and unnecessary, since info->lock is already held there in the fast paths. Remove those uses of i_lock, and add info->lock in the three error paths where it's then needed across shmem_free_blocks(). It's not actually needed across shmem_unacct_blocks(), but they're so often paired that it looks wrong to split them apart. Signed-off-by: Hugh Dickins Acked-by: Tim Chen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d0823576bf4b8eafce1b56f98613465a0352a376 Author: Hugh Dickins Date: Mon Jul 25 17:12:25 2011 -0700 mm: pincer in truncate_inode_pages_range truncate_inode_pages_range()'s final loop has a nice pincer property, bringing start and end together, squeezing out the last pages. But the range handling missed out on that, just sliding up the range, perhaps letting pages come in behind it. Add one more test to give it the same pincer effect. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b85e0effd3dcbf9118b896232f59526ab1a39a74 Author: Hugh Dickins Date: Mon Jul 25 17:12:25 2011 -0700 mm: consistent truncate and invalidate loops Make the pagevec_lookup loops in truncate_inode_pages_range(), invalidate_mapping_pages() and invalidate_inode_pages2_range() more consistent with each other. They were relying upon page->index of an unlocked page, but apologizing for it: accept it, embrace it, add comments and WARN_ONs, and simplify the index handling. invalidate_inode_pages2_range() had special handling for a wrapped page->index + 1 = 0 case; but MAX_LFS_FILESIZE doesn't let us anywhere near there, and a corrupt page->index in the radix_tree could cause more trouble than that would catch. Remove that wrapped handling. invalidate_inode_pages2_range() uses min() to limit the pagevec_lookup when near the end of the range: copy that into the other two, although it's less useful than you might think (it limits the use of the buffer, rather than the indices looked up). Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a549bea51138be2126a2cc6aabe8f17ef66b79b Author: Hugh Dickins Date: Mon Jul 25 17:12:24 2011 -0700 mm: tidy vmtruncate_range and related functions Use consistent variable names in truncate_pagecache(), truncate_setsize(), vmtruncate() and vmtruncate_range(). unmap_mapping_range() and vmtruncate_range() have mismatched interfaces: don't change either, but make the vmtruncates more precise about what they expect unmap_mapping_range() to do. vmtruncate_range() is currently called only with page-aligned start and end+1: can handle unaligned start, but unaligned end+1 would hit BUG_ON in truncate_inode_pages_range() (lacks partial clearing of the end page). Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 85821aab39b3403a8b5731812a930b78684d1642 Author: Hugh Dickins Date: Mon Jul 25 17:12:23 2011 -0700 mm: truncate functions are in truncate.c Correct comment on truncate_inode_pages*() in linux/mm.h; and remove declaration of page_unuse(), it didn't exist even in 2.2.26 or 2.4.0! Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e5358e7cf48aa079b8761a7d806ad536023745c Author: Hugh Dickins Date: Mon Jul 25 17:12:23 2011 -0700 mm: cleanup descriptions of filler arg The often-NULL data arg to read_cache_page() and read_mapping_page() functions is misdescribed as "destination for read data": no, it's the first arg to the filler function, often struct file * to ->readpage(). Satisfy checkpatch.pl on those filler prototypes, and tidy up the declarations in linux/pagemap.h. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df077ac4687500e02a273a628057ff5ab17dc19f Author: David S. Miller Date: Mon Jul 25 17:12:22 2011 -0700 sparc64: implement get_user_pages_fast() Signed-off-by: David S. Miller Signed-off-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 683d2fa672da5e3b4fe96f13c43eba32b068d64b Author: David S. Miller Date: Mon Jul 25 17:12:21 2011 -0700 sparc64: add support for _PAGE_SPECIAL Luckily there are still a few software PTE bits remaining and they even match up in both the sun4u and sun4v pte layouts. Signed-off-by: David S. Miller Signed-off-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a0100f7546fb642e0e04a38fa7ca198cd016b47 Author: David S. Miller Date: Mon Jul 25 17:12:21 2011 -0700 sparc64: use RCU page table freeing Make use of the generic RCU page table freeing on Sparc64, doing so allows for race-free software page-table walkers like gup_fast(). Signed-off-by: David S. Miller Signed-off-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4dedbf8dc1c825f2e4aa2d2624058533b5d76f85 Author: David S. Miller Date: Mon Jul 25 17:12:20 2011 -0700 sparc64: kill page table quicklists With the recent mmu_gather changes that included generic RCU freeing of page-tables, it is now quite straightforward to implement gup_fast() on sparc64. This patch: Remove the page table quicklists. They are pointless and make it harder to use RCU page table freeing and share code with other architectures. BTW, this is the second time this has happened, see commit 3c936465249f ("[SPARC64]: Kill pgtable quicklists and use SLAB.") Signed-off-by: David S. Miller Signed-off-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c15bef3099c346f2124367bff46954b59e13c3ee Author: Dmitry Fink Date: Mon Jul 25 17:12:19 2011 -0700 mmap: fix and tidy up overcommit page arithmetic - shmem pages are not immediately available, but they are not potentially available either, even if we swap them out, they will just relocate from memory into swap, total amount of immediate and potentially available memory is not going to be affected, so we shouldn't count them as potentially free in the first place. - nr_free_pages() is not an expensive operation anymore, there is no need to split the decision making in two halves and repeat code. Signed-off-by: Dmitry Fink Reviewed-by: Minchan Kim Acked-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c9d8c3d0896bfa5b57531ecc41a85ffbc6d87dbe Author: Andrew Morton Date: Mon Jul 25 17:12:18 2011 -0700 mm/memblock.c: avoid abuse of RED_INACTIVE RED_INACTIVE is a slab thing, and reusing it for memblock was inappropriate, because memblock is dealing with phys_addr_t's which have a Kconfigurable sizeof(). Create a new poison type for this application. Fixes the sparse warning warning: cast truncates bits from constant value (9f911029d74e35b becomes 9d74e35b) Reported-by: H Hartley Sweeten Tested-by: H Hartley Sweeten Acked-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be8f684d73d8d916847e996bf69cef14352872c6 Author: David Rientjes Date: Mon Jul 25 17:12:18 2011 -0700 oom: make deprecated use of oom_adj more verbose /proc/pid/oom_adj is deprecated and scheduled for removal in August 2012 according to Documentation/feature-removal-schedule.txt. This patch makes the warning more verbose by making it appear as a more serious problem (the presence of a stack trace and being multiline should attract more attention) so that applications still using the old interface can get fixed. Very popular users of the old interface have been converted since the oom killer rewrite has been introduced. udevd switched to the /proc/pid/oom_score_adj interface for v162, kde switched in 4.6.1, and opensshd switched in 5.7p1. At the start of 2012, this should be changed into a WARN() to emit all such incidents and then finally remove the tunable in August 2012 as scheduled. Signed-off-by: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 11239836c04b50ba8453ec58ca7a7bd716ef02c1 Author: David Rientjes Date: Mon Jul 25 17:12:17 2011 -0700 oom: remove references to old badness() function The badness() function in the oom killer was renamed to oom_badness() in a63d83f427fb ("oom: badness heuristic rewrite") since it is a globally exported function for clarity. The prototype for the old function still existed in linux/oom.h, so remove it. There are no existing users. Also fixes documentation and comment references to badness() and adjusts them accordingly. Signed-off-by: David Rientjes Reviewed-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6ac47520063b230641a64062b8a229201cd0a3a8 Author: Andrew Morton Date: Mon Jul 25 17:12:16 2011 -0700 mm/memory.c: remove ZAP_BLOCK_SIZE ZAP_BLOCK_SIZE became unused in the preemptible-mmu_gather work ("mm: Remove i_mmap_lock lockbreak"). So zap it. Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32f84528fbb5177275193a3311be8756f0cbd62c Author: Chris Forbes Date: Mon Jul 25 17:12:14 2011 -0700 mm: hugetlb: fix coding style issues Fix coding style issues flagged by checkpatch.pl Signed-off-by: Chris Forbes Acked-by: Eric B Munson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d788e80a8c83ecdbdd55b6e985cced9cfe3a815b Author: Chris Wright Date: Mon Jul 25 17:12:14 2011 -0700 mm/huge_memory.c: minor lock simplification in __khugepaged_exit The lock is released first thing in all three branches. Simplify this by unconditionally releasing lock and remove else clause which was only there to be sure lock was released. Signed-off-by: Chris Wright Reviewed-by: Michal Hocko Cc: Andrea Arcangeli Acked-by: Johannes Weiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1bb36fbd4d58ec3fab4dab5ed39a2af492c263ea Author: Daniel Kiper Date: Mon Jul 25 17:12:13 2011 -0700 mm/page_cgroup.c: simplify code by using SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macros Commit a539f3533b78e3 ("mm: add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro") introduced the SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macros. Use those macros to increase code readability. Signed-off-by: Daniel Kiper Acked-by: David Rientjes Acked-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 00a66d2974485d7d95d61d5772142b2a2231ed2a Author: WANG Cong Date: Mon Jul 25 17:12:12 2011 -0700 mm: remove the leftovers of noswapaccount In commit a2c8990aed5ab ("memsw: remove noswapaccount kernel parameter"), Michal forgot to remove some left pieces of noswapaccount in the tree, this patch removes them all. Signed-off-by: WANG Cong Acked-by: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd78553b5e7a0b34c0b60478d04ee16d8d8f4fa7 Author: KOSAKI Motohiro Date: Mon Jul 25 17:12:11 2011 -0700 pagewalk: fix code comment for THP Commit bae9c19bf1 ("thp: split_huge_page_mm/vma") changed locking behavior of walk_page_range(). Thus this patch changes the comment too. Signed-off-by: KOSAKI Motohiro Cc: Naoya Horiguchi Cc: Hiroyuki Kamezawa Cc: Andrea Arcangeli Cc: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c27fe4c8942d3ca715986f79cc26f44608d7d9fb Author: KOSAKI Motohiro Date: Mon Jul 25 17:12:10 2011 -0700 pagewalk: add locking-rule comments Originally, walk_hugetlb_range() didn't require a caller take any lock. But commit d33b9f45bd ("mm: hugetlb: fix hugepage memory leak in walk_page_range") changed its rule. Because it added find_vma() call in walk_hugetlb_range(). Any locking-rule change commit should write a doc too. [akpm@linux-foundation.org: clarify comment] Signed-off-by: KOSAKI Motohiro Cc: Naoya Horiguchi Cc: Hiroyuki Kamezawa Cc: Andrea Arcangeli Cc: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c6d5280431544e4036886ea74e3334a98bc5f96 Author: KOSAKI Motohiro Date: Mon Jul 25 17:12:09 2011 -0700 pagewalk: don't look up vma if walk->hugetlb_entry is unused Currently, walk_page_range() calls find_vma() every page table for walk iteration. but it's completely unnecessary if walk->hugetlb_entry is unused. And we don't have to assume find_vma() is a lightweight operation. So this patch checks the walk->hugetlb_entry and avoids the find_vma() call if possible. This patch also makes some cleanups. 1) remove ugly uninitialized_var() and 2) #ifdef in function body. Signed-off-by: KOSAKI Motohiro Cc: Naoya Horiguchi Cc: Hiroyuki Kamezawa Cc: Andrea Arcangeli Cc: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b6ddbf7ed4ef2f40e0a27418146eedaa68953c6 Author: KOSAKI Motohiro Date: Mon Jul 25 17:12:09 2011 -0700 pagewalk: fix walk_page_range() don't check find_vma() result properly The doc of find_vma() says, /* Look up the first VMA which satisfies addr < vm_end, NULL if none. */ struct vm_area_struct *find_vma(struct mm_struct *mm, unsigned long addr) { (snip) Thus, caller should confirm whether the returned vma matches a desired one. Signed-off-by: KOSAKI Motohiro Cc: Naoya Horiguchi Cc: Hiroyuki Kamezawa Cc: Andrea Arcangeli Cc: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45ebb840257b060ec54416aebffd9747e210962c Author: KOSAKI Motohiro Date: Mon Jul 25 17:12:08 2011 -0700 mm: swap-token: add a comment for priority aging Document some swap token aging design decisions. Signed-off-by: KOSAKI Motohiro Acked-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 53bb01f593d50188c8d638f89db96f9b6b042bcd Author: KOSAKI Motohiro Date: Mon Jul 25 17:12:07 2011 -0700 mm: swap-token: makes global variables to function local global_faults and last_aging are only used in grab_swap_token(). Move them into grab_swap_token(). Signed-off-by: KOSAKI Motohiro Acked-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e21c7ffd6f7493aa01bccd17ebc13dbdfecce880 Author: KOSAKI Motohiro Date: Mon Jul 25 17:12:06 2011 -0700 mm: swap-token: fix dead link http://www.cs.wm.edu/~sjiang/token.pdf is now dead. Replace it with an alive alternative. Signed-off-by: KOSAKI Motohiro Acked-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 080e2be7884322daffe75a831e879fbe7de383ab Author: Daniel Kiper Date: Mon Jul 25 17:12:06 2011 -0700 xen/balloon: memory hotplug support for Xen balloon driver Memory hotplug support for Xen balloon driver. It should be mentioned that hotplugged memory is not onlined automatically. It should be onlined by user through standard sysfs interface. Memory could be hotplugged in following steps: 1) dom0: xl mem-max where is >= requested memory size, 2) dom0: xl mem-set where is requested memory size; alternatively memory could be added by writing proper value to /sys/devices/system/xen_memory/xen_memory0/target or /sys/devices/system/xen_memory/xen_memory0/target_kb on dumU, 3) domU: for i in /sys/devices/system/memory/memory*/state; do \ [ "`cat "$i"`" = offline ] && echo online > "$i"; done Memory could be onlined automatically on domU by adding following line to udev rules: SUBSYSTEM=="memory", ACTION=="add", RUN+="/bin/sh -c '[ -f /sys$devpath/state ] && echo online > /sys$devpath/state'" In that case step 3 should be omitted. Signed-off-by: Daniel Kiper Acked-by: Konrad Rzeszutek Wilk Cc: Ian Campbell Cc: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9d0ad8ca43ce8023bb834a409c2258bd7197fb05 Author: Daniel Kiper Date: Mon Jul 25 17:12:05 2011 -0700 mm: extend memory hotplug API to allow memory hotplug in virtual machines This patch contains online_page_callback and apropriate functions for registering/unregistering online page callbacks. It allows to do some machine specific tasks during online page stage which is required to implement memory hotplug in virtual machines. Currently this patch is required by latest memory hotplug support for Xen balloon driver patch which will be posted soon. Additionally, originial online_page() function was splited into following functions doing "atomic" operations: - __online_page_set_limits() - set new limits for memory management code, - __online_page_increment_counters() - increment totalram_pages and totalhigh_pages, - __online_page_free() - free page to allocator. It was done to: - not duplicate existing code, - ease hotplug code devolpment by usage of well defined interface, - avoid stupid bugs which are unavoidable when the same code (by design) is developed in many places. [akpm@linux-foundation.org: use explicit indirect-call syntax] Signed-off-by: Daniel Kiper Reviewed-by: Konrad Rzeszutek Wilk Cc: Ian Campbell Cc: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ef22f6a70c9186c8e25f757b0e8f7374b37f69bf Author: Axel Lin Date: Mon Jul 25 17:12:01 2011 -0700 backlight: set backlight type and max_brightness before backlights are registered Since commit a19a6ee "backlight: Allow properties to be passed at registration" and commit bb7ca74 "backlight: add backlight type", we can set backlight type and max_brightness before backlights are registered. Some newly added drivers did not set it properly, let's fix it. Signed-off-by: Axel Lin Cc: Matthew Garrett Cc: Jingoo Han Cc: Donghwa Lee Cc: InKi Dae Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4c8aaa559733d03cb6bb4fa62c25ae756c53e94 Author: Jingoo Han Date: Mon Jul 25 17:12:00 2011 -0700 backlight: add ams369fg06 amoled driver Add the ams369fg06 amoled panel driver. The ams369fg06 amoled panel (480 x 800) driver uses 3-wired SPI inteface. The brightness can be controlled by gamma setting of amoled panel. [sfr@canb.auug.org.au: fix build error] [axel.lin@gmail.com: unregister backlight device when unloading the module] [axel.lin@gmail.com: staticize ams369fg06_shutdown] Signed-off-by: Jingoo Han Cc: Richard Purdie Cc: Inki Dae Cc: anish singh Signed-off-by: Stephen Rothwell Signed-off-by: Axel Lin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b19bad8b2d4cf7150b58ce6619b30364bdab1db Author: Axel Lin Date: Mon Jul 25 17:11:59 2011 -0700 drivers/video/backlight/adp8860_bl.c: remove a redundant assignment for max_brightness We have set props.max_brightness before registering backlight device. Signed-off-by: Axel Lin Acked-by: Mike Frysinger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e2e7da9bccd77ef6793b865c1b78c7e519ccc562 Author: Axel Lin Date: Mon Jul 25 17:11:58 2011 -0700 drivers/video/backlight/ld9040.c: small fixes - Fix checking of wrong return value for backlight_device_register() - Properly free allocated resources in ld9040_probe() error path and ld9040_remove(). Signed-off-by: Axel Lin Cc: Donghwa Lee Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ccb6108f5b0b541d3eb332c3a73e645c0f84278e Author: Peter Zijlstra Date: Mon Jul 25 17:11:57 2011 -0700 mm/backing-dev.c: reset bdi min_ratio in bdi_unregister() Vito said: : The system has many usb disks coming and going day to day, with their : respective bdi's having min_ratio set to 1 when inserted. It works for : some time until eventually min_ratio can no longer be set, even when the : active set of bdi's seen in /sys/class/bdi/*/min_ratio doesn't add up to : anywhere near 100. : : This then leads to an unrelated starvation problem caused by write-heavy : fuse mounts being used atop the usb disks, a problem the min_ratio setting : at the underlying devices bdi effectively prevents. Fix this leakage by resetting the bdi min_ratio when unregistering the BDI. Signed-off-by: Peter Zijlstra Reported-by: Vito Caputo Cc: Wu Fengguang Cc: Miklos Szeredi Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b934c6236983392d01bef22e43af3051cac16f5 Author: Alexander Stein Date: Mon Jul 25 17:11:54 2011 -0700 drivers/misc/pch_phub.c: don't oops if dmi_get_system_info returns NULL If dmi_get_system_info() returns NULL, pch_phub_probe() will dereferencea a zero pointer. This oops was observed on an Atom based board which has no BIOS, but a bootloder which doesn't privde DMI data. Signed-off-by: Alexander Stein Cc: Tomoya MORINAGA Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90b03f5052be92ab0ba0aa36abcf33a207706866 Author: WANG Cong Date: Mon Jul 25 17:11:54 2011 -0700 xtensa: fix a build error in arch/xtensa/include/asm/uaccess.h Fix the following build error: arch/xtensa/include/asm/uaccess.h:403: error: implicit declaration of function 'prefetch' arch/xtensa/include/asm/uaccess.h:412: error: implicit declaration of function 'prefetchw' Signed-off-by: WANG Cong Cc: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0d0138ebe24b94065580bd2601f8bb7eb6152f56 Author: Dan Rosenberg Date: Mon Jul 25 17:11:53 2011 -0700 xtensa: prevent arbitrary read in ptrace Prevent an arbitrary kernel read. Check the user pointer with access_ok() before copying data in. [akpm@linux-foundation.org: s/EIO/EFAULT/] Signed-off-by: Dan Rosenberg Cc: Christian Zankel Cc: Oleg Nesterov Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67db392d1124e14684e23deb572de2a63b9b3b69 Author: Ian Campbell Date: Mon Jul 25 17:11:52 2011 -0700 mm: use const struct page for r/o page-flag accessor methods In a subsquent patch I have a const struct page in my hand... [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Ian Campbell Cc: Andrea Arcangeli Cc: Rik van Riel Cc: Martin Schwidefsky Cc: Michel Lespinasse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 33dd4e0ec91138c3d80e790c08a3db47426c81f2 Author: Ian Campbell Date: Mon Jul 25 17:11:51 2011 -0700 mm: make some struct page's const These uses are read-only and in a subsequent patch I have a const struct page in my hand... [akpm@linux-foundation.org: fix warnings in lowmem_page_address()] Signed-off-by: Ian Campbell Cc: Rik van Riel Cc: Andrea Arcangeli Cc: Mel Gorman Cc: Michel Lespinasse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ee8f248d266ec6966c0ce6b7dec24de43dcc1b58 Author: Becky Bruce Date: Mon Jul 25 17:11:50 2011 -0700 hugetlb: add phys addr to struct huge_bootmem_page This is needed on HIGHMEM systems - we don't always have a virtual address so store the physical address and map it in as needed. [akpm@linux-foundation.org: cleanup] Signed-off-by: Becky Bruce Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b37c35e6552b0d04d5db9728bc7af22d53f731a Author: Becky Bruce Date: Mon Jul 25 17:11:49 2011 -0700 fs/hugetlbfs/inode.c: fix pgoff alignment checking on 32-bit This: vma->vm_pgoff & ~(huge_page_mask(h) >> PAGE_SHIFT) is incorrect on 32-bit. It causes us to & the pgoff with something that looks like this (for a 4m hugepage): 0xfff003ff. The mask should be flipped and *then* shifted, to give you 0x0000_03fff. Signed-off-by: Becky Bruce Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d694ad62bf539dbb20a0899ac2a954555f9e4a83 Author: Manfred Spraul Date: Mon Jul 25 17:11:47 2011 -0700 ipc/sem.c: fix race with concurrent semtimedop() timeouts and IPC_RMID If a semaphore array is removed and in parallel a sleeping task is woken up (signal or timeout, does not matter), then the woken up task does not wait until wake_up_sem_queue_do() is completed. This will cause crashes, because wake_up_sem_queue_do() will read from a stale pointer. The fix is simple: Regardless of anything, always call get_queue_result(). This function waits until wake_up_sem_queue_do() has finished it's task. Addresses https://bugzilla.kernel.org/show_bug.cgi?id=27142 Reported-by: Yuriy Yevtukhov Reported-by: Harald Laabs Signed-off-by: Manfred Spraul Acked-by: Eric Dumazet Cc: [2.6.35+] Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 154dd78d30b56ffb8b447f629bfcceb14150e5c4 Merge: 14067ff 1ae1470 3bdccc8 b756828 Author: Linus Torvalds Date: Mon Jul 25 20:01:57 2011 -0700 Merge branches 'kbuild', 'packaging' and 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: genksyms: Use same type in loop comparison kbuild: silence generated makefile message kernel: prevent unnecessary rebuilding due to config_data.gz headers_install: fix __packed in exported kernel headers dtc: regen parser dtc: migrate parser to implicit rules kconfig: regen parser kconfig: migrate parser to implicit rules kconfig/zconf.l: do not ask to generate backup kconfig: kill no longer needed reference to YYDEBUG kconfig: constify `kconf_id_lookup' genksym: regen parser genksyms: migrate parser to implicit rules genksyms: drop -Wno-uninitialized from HOSTCFLAGS_parse.tab.o genksyms: pass hash and lookup functions name and target language though the input file kbuild: simplify the %_shipped rule kbuild: add implicit rules for parser generation kbuild: add `baseprereq' kbuild: Fix reference to vermagic.h * 'packaging' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: package: Makefile: fix perf target bug * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: gitignore: ignore debian build directory commit 14067ff536286bd2f7f79d46337d2228b12ef880 Author: Linus Torvalds Date: Mon Jul 25 19:55:52 2011 -0700 vfs: make gcc generate more obvious code for acl permission checking The "fsuid is the inode owner" case is not necessarily always the likely case, but it's the case that doesn't do anything odd and that we want in straight-line code. Make gcc not generate random "jump around for the fun of it" code. This just helps me read profiles. That thing is one of the hottest parts of the whole pathname lookup. Signed-off-by: Linus Torvalds commit cc94015a9eac5d511fe9b716624d8fdf9c6e64b2 Author: NeilBrown Date: Tue Jul 26 11:35:35 2011 +1000 md/raid5: move stripe_head_state and more code into handle_stripe. By defining the 'stripe_head_state' in 'handle_stripe', we can move some common code out of handle_stripe[56]() and into handle_stripe. The means that all accesses for stripe_head_state in handle_stripe[56] need to be 's->' instead of 's.', but the compiler should inline those functions and just use a direct stack reference, and future patches while hoist most of this code up into handle_stripe() so we will revert to "s.". Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit c5709ef6a094c72b56355590bfa55cc107e98376 Author: NeilBrown Date: Tue Jul 26 11:35:20 2011 +1000 md/raid5: add some more fields to stripe_head_state Adding these three fields will allow more common code to be moved to handle_stripe() struct field rearrangement by Namhyung Kim. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit f2b3b44deee1524ca4f006048e0569f47eefdb74 Author: NeilBrown Date: Tue Jul 26 11:35:19 2011 +1000 md/raid5: unify stripe_head_state and r6_state 'struct stripe_head_state' stores state about the 'current' stripe that is passed around while handling the stripe. For RAID6 there is an extension structure: r6_state, which is also passed around. There is no value in keeping these separate, so move the fields from the latter into the former. This means that all code now needs to treat s->failed_num as an small array, but this is a small cost. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 82e5a1718b9d0401b826341b9023766d04cb82f2 Author: NeilBrown Date: Tue Jul 26 11:35:15 2011 +1000 md/raid5: move common code into handle_stripe There is common code at the start of handle_stripe5 and handle_stripe6. Move it into handle_stripe. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit c4c1663be46b2ab94e59d3e0c583a8f6b188ff0c Author: NeilBrown Date: Tue Jul 26 11:34:20 2011 +1000 md/raid5: replace sh->lock with an 'active' flag. sh->lock is now mainly used to ensure that two threads aren't running in the locked part of handle_stripe[56] at the same time. That can more neatly be achieved with an 'active' flag which we set while running handle_stripe. If we find the flag is set, we simply requeue the stripe for later by setting STRIPE_HANDLE. For safety we take ->device_lock while examining the state of the stripe and creating a summary in 'stripe_head_state / r6_state'. This possibly isn't needed but as shared fields like ->toread, ->towrite are checked it is safer for now at least. We leave the label after the old 'unlock' called "unlock" because it will disappear in a few patches, so renaming seems pointless. This leaves the stripe 'locked' for longer as we clear STRIPE_ACTIVE later, but that is not a problem. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit cbe47ec559c33a68b5ee002051b848d1531a8adb Author: NeilBrown Date: Tue Jul 26 11:20:35 2011 +1000 md/raid5: Protect some more code with ->device_lock. Other places that change or follow dev->towrite and dev->written take the device_lock as well as the sh->lock. So it should really be held in these places too. Also, doing so will allow sh->lock to be discarded. with merged fixes by: Namhyung Kim Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 83206d66b65118d995c38746f21edc2bb8564b49 Author: NeilBrown Date: Tue Jul 26 11:19:49 2011 +1000 md/raid5: Remove use of sh->lock in sync_request This is the start of a series of patches to remove sh->lock. sync_request takes sh->lock before setting STRIPE_SYNCING to ensure there is no race with testing it in handle_stripe[56]. Instead, use a new flag STRIPE_SYNC_REQUESTED and test it early in handle_stripe[56] (after getting the same lock) and perform the same set/clear operations if it was set. Signed-off-by: NeilBrown Reviewed-by: Namhyung Kim commit 29412f0f6a19e34336368f13eab848091c343952 Author: Stefan Berger Date: Fri Jul 22 17:39:20 2011 -0400 tpm_nsc: Fix bug when loading multiple TPM drivers This patch fixes kernel bugzilla 34572. https://bugzilla.kernel.org/show_bug.cgi?id=34572 Signed-off-by: Stefan Berger Reported-by: Witold Baryluk Tested-by: Witold Baryluk Signed-off-by: James Morris commit 2d348d1f569f051d2609b04d27bb55cd25eda8fe Author: Joe Perches Date: Mon Jul 25 16:17:35 2011 -0700 net: Convert struct net_device uc_promisc to bool No need to use int, its uses are boolean. May save a few bytes one day. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 48daec034b2669c634983d0435beac41190b4c91 Author: Randy Dunlap Date: Mon Jul 25 16:17:01 2011 -0700 net: fix eth.c kernel-doc warning From: Randy Dunlap Fix new kernel-doc warning in eth.c: Warning(net/ethernet/eth.c:237): No description found for parameter 'type' Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit b76d0789c92a816a5539dc14232a700b8d62a53a Author: Zoltan Kiss Date: Sun Jul 24 13:09:30 2011 +0000 IPv4: Send gratuitous ARP for secondary IP addresses also If a device event generates gratuitous ARP messages, only primary address is used for sending. This patch iterates through the whole list. Tested with 2 IP addresses configuration on bonding interface. Signed-off-by: Zoltan Kiss Signed-off-by: David S. Miller commit 32019e651c6fcee6bad6b6adb171feea5af0d16b Author: YOSHIFUJI Hideaki Date: Sun Jul 24 11:44:34 2011 +0000 ipv6: Do not leave router anycast address for /127 prefixes. Original commit 2bda8a0c8af... "Disable router anycast address for /127 prefixes" says: | No need for matching code in addrconf_leave_anycast() as it | will silently ignore any attempt to leave an unknown anycast | address. After analysis, because 1) we may add two or more prefixes on the same interface, or 2)user may have manually joined that anycast, we may hit chances to have anycast address which as if we had generated one by /127 prefix and we should not leave from subnet- router anycast address unconditionally. CC: Bjørn Mork CC: Brian Haley Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 5ec9e63c1c90074d2986f1102acbd1572eb827af Author: Wanlong Gao Date: Sat Jul 23 17:06:29 2011 +0000 drivers:connector:remove an unused variable *tracer* The variable 'tracer' never be used, so remove it. Added by f701e5b73a1a79ea62ffd45d9e2bed4c7d5c1fd2. Signed-off-by: Wanlong Gao Signed-off-by: David S. Miller commit 427e21faee1877053828b115bbb336c289562ac5 Author: stephen hemminger Date: Fri Jul 22 06:31:12 2011 +0000 acenic: use netdev_alloc_skb_ip_align Take Eric's patch one step further. Use netdev_skb_ip_align to do setup the receive skb. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b3c4b9825075b680817b9460184e7b576dc97597 Author: Jeremy Fitzhardinge Date: Mon Jul 25 15:51:02 2011 -0700 xen/tracing: fix compile errors when tracing is disabled. When CONFIG_FUNCTION_TRACER is disabled, compilation fails as follows: CC arch/x86/xen/setup.o In file included from arch/x86/include/asm/xen/hypercall.h:42, from arch/x86/xen/setup.c:19: include/trace/events/xen.h:31: warning: 'struct multicall_entry' declared inside parameter list include/trace/events/xen.h:31: warning: its scope is only this definition or declaration, which is probably not what you want include/trace/events/xen.h:31: warning: 'struct multicall_entry' declared inside parameter list include/trace/events/xen.h:31: warning: 'struct multicall_entry' declared inside parameter list include/trace/events/xen.h:31: warning: 'struct multicall_entry' declared inside parameter list [...] arch/x86/xen/trace.c:5: error: '__HYPERVISOR_set_trap_table' undeclared here (not in a function) arch/x86/xen/trace.c:5: error: array index in initializer not of integer type arch/x86/xen/trace.c:5: error: (near initialization for 'xen_hypercall_names') arch/x86/xen/trace.c:6: error: '__HYPERVISOR_mmu_update' undeclared here (not in a function) arch/x86/xen/trace.c:6: error: array index in initializer not of integer type arch/x86/xen/trace.c:6: error: (near initialization for 'xen_hypercall_names') Fix this by making sure struct multicall_entry has a declaration in scope at all times, and don't bother compiling xen/trace.c when tracing is disabled. Reported-by: Randy Dunlap Signed-off-by: Jeremy Fitzhardinge commit 14cae3243b555afda69a57778069ddca65532c06 Author: Shirish Pargaonkar Date: Mon Jun 20 16:14:03 2011 -0500 cifs: Cleanup: check return codes of crypto api calls Check return codes of crypto api calls and either log an error or log an error and return from the calling function with error. Signed-off-by: Shirish Pargaonkar Signed-off-by: Steve French commit f5bc1e755d23d022bf948904386337fc3e5e29a8 Author: Pavel Shilovsky Date: Mon Jul 25 17:59:10 2011 +0400 CIFS: Fix oops while mounting with prefixpath commit fec11dd9a0109fe52fd631e5c510778d6cbff6cc caused a regression when we have already mounted //server/share/a and want to mount //server/share/a/b. The problem is that lookup_one_len calls __lookup_hash with nd pointer as NULL. Then __lookup_hash calls do_revalidate in the case when dentry exists and we end up with NULL pointer deference in cifs_d_revalidate: if (nd->flags & LOOKUP_RCU) return -ECHILD; Fix this by checking nd for NULL. Signed-off-by: Pavel Shilovsky Reviewed-by: Shirish Pargaonkar CC: Stable Signed-off-by: Steve French commit e010a5ef95b8b6a12b74b548578f7dcf93564347 Author: Steve French Date: Mon Jul 25 22:04:32 2011 +0000 [CIFS] Redundant null check after dereference Reviewed-by: Shirish Pargaonkar Signed-off-by: Steve French commit eaf35b1ea8c12edc5ba8299a8ecfe1efab85101b Author: Christoph Hellwig Date: Sat Jul 16 15:24:37 2011 -0400 cifs: use cifs_dirent in cifs_save_resume_key Signed-off-by: Christoph Hellwig Reviewed-by: Jeff Layton Signed-off-by: Steve French commit f16d59b417d781eb7fe63a561272429b5e098c3a Author: Christoph Hellwig Date: Sat Jul 16 15:24:22 2011 -0400 cifs: use cifs_dirent to replace cifs_get_name_from_search_buf This allows us to parse the on the wire structures only once in cifs_filldir. Signed-off-by: Christoph Hellwig Reviewed-by: Jeff Layton Signed-off-by: Steve French commit cda0ec6a86f18127d490048a46de954c03886d5e Author: Christoph Hellwig Date: Sat Jul 16 15:24:05 2011 -0400 cifs: introduce cifs_dirent Introduce a generic directory entry structure, and factor the parsing of the various on the wire structures that can represent one into a common helper. Switch cifs_entry_is_dot over to use it as a start. Signed-off-by: Christoph Hellwig Reviewed-by: Jeff Layton Signed-off-by: Steve French commit 750e06992d49666a7589aac555eb3bb68e4dbb88 Merge: d3ec484 156e2d1 Author: Linus Torvalds Date: Mon Jul 25 14:10:34 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: hwmon: (lm78) Become the maintainer hwmon: (lm78) Make ISA interface depend on CONFIG_ISA hwmon: (lm78) Avoid forward declarations hwmon: (sht15) Correct a comment mistake hwmon: (max1111) Avoid extra memory allocations hwmon: (it87) Add chassis intrusion detection support hwmon: (via-cputemp) Add VID reporting support hwmon-vid: Add support for VIA family 6 model D CPU hwmon: New driver sch5636 hwmon: (sch5627) Factor out some code shared with sch5636 driver commit 9feed6f8fbab477b6339efb4f3119a3c22dc187e Author: Christoph Hellwig Date: Sat Jul 16 15:23:49 2011 -0400 cifs: cleanup cifs_filldir Use sensible variable names and formatting and remove some superflous checks on entry. Signed-off-by: Christoph Hellwig Reviewed-by: Jeff Layton Signed-off-by: Steve French commit d3ec4844d449cf7af9e749f73ba2052fb7b72fc2 Merge: 0003230 df2e301 Author: Linus Torvalds Date: Mon Jul 25 13:56:39 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (43 commits) fs: Merge split strings treewide: fix potentially dangerous trailing ';' in #defined values/expressions uwb: Fix misspelling of neighbourhood in comment net, netfilter: Remove redundant goto in ebt_ulog_packet trivial: don't touch files that are removed in the staging tree lib/vsprintf: replace link to Draft by final RFC number doc: Kconfig: `to be' -> `be' doc: Kconfig: Typo: square -> squared doc: Konfig: Documentation/power/{pm => apm-acpi}.txt drivers/net: static should be at beginning of declaration drivers/media: static should be at beginning of declaration drivers/i2c: static should be at beginning of declaration XTENSA: static should be at beginning of declaration SH: static should be at beginning of declaration MIPS: static should be at beginning of declaration ARM: static should be at beginning of declaration rcu: treewide: Do not use rcu_read_lock_held when calling rcu_dereference_check Update my e-mail address PCIe ASPM: forcedly -> forcibly gma500: push through device driver tree ... Fix up trivial conflicts: - arch/arm/mach-ep93xx/dma-m2p.c (deleted) - drivers/gpio/gpio-ep93xx.c (renamed and context nearby) - drivers/net/r8169.c (just context changes) commit 0003230e8200699860f0b10af524dc47bf8aecad Merge: 4b478ce 4e34e71 Author: Linus Torvalds Date: Mon Jul 25 12:53:15 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: fs: take the ACL checks to common code bury posix_acl_..._masq() variants kill boilerplates around posix_acl_create_masq() generic_acl: no need to clone acl just to push it to set_cached_acl() kill boilerplate around posix_acl_chmod_masq() reiserfs: cache negative ACLs for v1 stat format xfs: cache negative ACLs if there is no attribute fork 9p: do no return 0 from ->check_acl without actually checking vfs: move ACL cache lookup into generic code CIFS: Fix oops while mounting with prefixpath xfs: Fix wrong return value of xfs_file_aio_write fix devtmpfs race caam: don't pass bogus S_IFCHR to debugfs_create_...() get rid of create_proc_entry() abuses - proc_mkdir() is there for purpose asus-wmi: ->is_visible() can't return negative fix jffs2 ACLs on big-endian with 16bit mode_t 9p: close ACL leaks ocfs2_init_acl(): fix a leak VFS : mount lock scalability for internal mounts commit 156e2d1adc03e17f18f98d297f7757fc6d93a589 Author: Jean Delvare Date: Mon Jul 25 21:46:11 2011 +0200 hwmon: (lm78) Become the maintainer Declare myself the maintainer of the lm78 driver. I still have a running system with one of these chips. Also count myself as a co-author of the driver. With 34 commits over 6 years, it seems fair. Signed-off-by: Jean Delvare commit 90534c5c5e535d7bf78a4efdbd0999e04b57d6e3 Author: Jean Delvare Date: Mon Jul 25 21:46:11 2011 +0200 hwmon: (lm78) Make ISA interface depend on CONFIG_ISA We should only include support for the ISA interface of the LM78/LM79 if CONFIG_ISA is set. Not only this makes the driver somewhat smaller on most architectures, but this also avoids poking at random I/O ports on these architectures. This is very similiar to what was done for the w83781d driver in October 2008. Signed-off-by: Jean Delvare Cc: Dean Nelson commit ed4cebdf9cfbf5f97f388ae7f2ac2b24fc362a39 Author: Jean Delvare Date: Mon Jul 25 21:46:11 2011 +0200 hwmon: (lm78) Avoid forward declarations Move code around to avoid several forward declarations. Also group ISA-related functions together, to make future changes easier. Signed-off-by: Jean Delvare Cc: Dean Nelson commit e9b6e9f3d4c58f76da8ec8286c7b901af8575f5b Author: Vivien Didelot Date: Mon Jul 25 21:46:10 2011 +0200 hwmon: (sht15) Correct a comment mistake sht15_store_heater() is called on _write_ access to heater_enable. Signed-off-by: Vivien Didelot Signed-off-by: Jean Delvare commit d737c09cfb78424276e3eb45d1e7af578a451fd4 Author: Jean Delvare Date: Mon Jul 25 21:46:10 2011 +0200 hwmon: (max1111) Avoid extra memory allocations We can allocate the tx and rx buffers as part of our data structure. Doing so is faster and spares memory. Signed-off-by: Jean Delvare Tested-by: Stanislav Brabec commit 3d30f9e69f152d8667b3b13ac6f566e6e76ef7b9 Author: Jean Delvare Date: Mon Jul 25 21:46:10 2011 +0200 hwmon: (it87) Add chassis intrusion detection support Add chassis intrusion detection support for all supported devices, using the standard interface. Signed-off-by: Jean Delvare commit 764e043bb48b6b94f9dec228aedbd8ab08f4708b Author: Jean Delvare Date: Mon Jul 25 21:46:10 2011 +0200 hwmon: (via-cputemp) Add VID reporting support At least VIA family 6 model D CPU report the VID settings in a MSR, so expose the value to user-space. Not sure about model A. Signed-off-by: Jean Delvare Acked-by: Guenter Roeck Tested-by: Jeff Rickman commit 0a88f4b55749239c4ec8b33da74ff924ccb87dad Author: Jean Delvare Date: Mon Jul 25 21:46:10 2011 +0200 hwmon-vid: Add support for VIA family 6 model D CPU The VIA family 6 model D CPU (C7-D, Eden 90 nm) can use two different VID tables, we have to check the value of a MSR to decide which one to use. Signed-off-by: Jean Delvare Acked-by: Guenter Roeck Tested-by: Jeff Rickman commit 0772a640793986d66fd3f89c3cc677bba5d5f94f Author: Hans de Goede Date: Mon Jul 25 21:46:09 2011 +0200 hwmon: New driver sch5636 This patch adds a new driver for SMSC SCH5636 Super I/O chips. The chips include an embedded microcontroller for hardware monitoring solutions, allowing motherboard manufacturers to create their own custom hwmon solution based upon the SCH5636. Currently the sch5636 driver only supports the Fujitsu Theseus SCH5636 based hwmon solution. The sch5636 driver runs a sanity check on loading to ensure it is dealing with a Fujitsu Theseus and not with another custom SCH5636 based hwmon solution. Signed-off-by: Hans de Goede Signed-off-by: Jean Delvare commit 28ff2f7a742daba86ccd7021be7b27a4673b2797 Author: Hans de Goede Date: Mon Jul 25 21:46:09 2011 +0200 hwmon: (sch5627) Factor out some code shared with sch5636 driver This patch adds a new sch56xx-common.ko which contains code which will also be used in the new sch5636 driver. Signed-off-by: Hans de Goede Signed-off-by: Jean Delvare commit 4b478cedcdc1b2d131170f22bd3f916e53472f52 Merge: ae4c42e c8b7d43 Author: Linus Torvalds Date: Mon Jul 25 12:43:28 2011 -0700 Merge branch 'next/deletion' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/deletion' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: ARM: mach-loki: delete ARM: mach-s3c2400: delete ARM: mach-s3c24a0: delete commit ae4c42e4e4d76d003f8ca551fe1aef93ff9a4b21 Merge: dd58ecb ab2a0e0 Author: Linus Torvalds Date: Mon Jul 25 12:38:42 2011 -0700 Merge branch 'next/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (133 commits) ARM: EXYNOS4: Change devname for FIMD clkdev ARM: S3C64XX: Cleanup mach/regs-fb.h from mach-s3c64xx ARM: S5PV210: Cleanup mach/regs-fb.h from mach-s5pv210 ARM: S5PC100: Cleanup mach/regs-fb.h from mach-s5pc100 ARM: S3C24XX: Use generic s3c_set_platdata for devices ARM: S3C64XX: Use generic s3c_set_platdata for OneNAND ARM: SAMSUNG: Use generic s3c_set_platdata for NAND ARM: SAMSUNG: Use generic s3c_set_platdata for USB OHCI ARM: SAMSUNG: Use generic s3c_set_platdata for HWMON ARM: SAMSUNG: Use generic s3c_set_platdata for FB ARM: SAMSUNG: Use generic s3c_set_platdata for TS ARM: S3C64XX: Add PWM backlight support on SMDK6410 ARM: S5P64X0: Add PWM backlight support on SMDK6450 ARM: S5P64X0: Add PWM backlight support on SMDK6440 ARM: S5PC100: Add PWM backlight support on SMDKC100 ARM: S5PV210: Add PWM backlight support on SMDKV210 ARM: EXYNOS4: Add PWM backlight support on SMDKC210 ARM: EXYNOS4: Add PWM backlight support on SMDKV310 ARM: SAMSUNG: Create a common infrastructure for PWM backlight support clocksource: convert 32-bit down counting clocksource on S5PV210/S5P64X0 ... Fix up trivial conflict in arch/arm/mach-imx/mach-scb9328.c commit ed1e6211a0a134ff23592c6f057af982ad5dab52 Author: Trond Myklebust Date: Mon Jul 25 15:37:29 2011 -0400 NFSv4: Don't use the delegation->inode in nfs_mark_return_delegation() nfs_mark_return_delegation() is usually called without any locking, and so it is not safe to dereference delegation->inode. Since the inode is only used to discover the nfs_client anyway, it makes more sense to have the callers pass a valid pointer to the nfs_server as a parameter. Reported-by: Ian Kent Cc: stable@kernel.org Signed-off-by: Trond Myklebust commit 73ca1001ed6881b476e8252adcd0eede1ea368ea Author: Jeff Layton Date: Mon Jul 18 11:26:30 2011 -0400 nfs: don't use d_move in nfs_async_rename_done If the task that initiated the sillyrename ends up being killed by a fatal signal, then it will eventually return back to userspace and end up releasing the i_mutex. d_move however needs to be done while holding the i_mutex. Instead of using d_move here, just unhash the old and new dentries to prevent them from being found by lookups. With this change though, the dentries are now incorrect post-rename and do not reflect the actual name of the file on the server. I'm proceeding under the assumption that since they are unhashed that this isn't really a problem. In order for the sillydelete to still work though, the dname must be copied earlier when setting up the sillydelete info, and the name must be recopied if the sillydelete info has to be moved to a new dentry. Reported-by: Al Viro Signed-off-by: Jeff Layton Signed-off-by: Trond Myklebust commit 2773395b34883fe54418de188733a63bb38e0ad6 Author: Steve Dickson Date: Thu Jul 21 13:49:02 2011 -0400 RDMA: Increasing RPCRDMA_MAX_DATA_SEGS Our performance team has noticed that increasing RPCRDMA_MAX_DATA_SEGS from 8 to 64 significantly increases throughput when using the RDMA transport. Signed-off-by: Steve Dickson Signed-off-by: Trond Myklebust commit 5f00bcb38ef9a980a33c6dbdc0044964b05f22dd Merge: 34006ce b6844e8 Author: Stephen Rothwell Date: Mon Jul 25 13:59:46 2011 -0400 Merge branch 'master' into devel and apply fixup from Stephen Rothwell: vfs/nfs: fixup for nfs_open_context change Signed-off-by: Stephen Rothwell Signed-off-by: Trond Myklebust commit dd58ecba48edf14be1a5f70120fcd3002277a74a Merge: 3f4a122 604f449 Author: Linus Torvalds Date: Mon Jul 25 11:53:35 2011 -0700 Merge branch 'next/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'next/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: (35 commits) ARM: msm: platsmp: determine number of CPU cores at boot time ARM: Tegra: Seaboard: Fix I2C bus numbering for ADT7461 ARM: Tegra: Trimslice: Tri-state DAP3 pinmux ARM: orion5x: fixup 5181 MPP mask check ARM: mxs-dma: include ARM: i.MX53: consistently use MX53_UART_PAD_CTRL for uart txd/rxd/rts/cts ARM: i.MX53: UARTn_CTS pin should not change RTS input select ARM: i.MX53: UARTn_TXD pin should not change RXD input select ARM: mx25: Fix typo on CAN1_RX pad setting iomux-mx53: add missing 'IOMUX_CONFIG_SION' for some I2C pad definitions ARM: NUC93X: add UL suffix to VMALLOC_END to ensure it is properly typed ARM: LPC32XXX: add UL suffix to VMALLOC_END to ensure it is properly typed ARM: CNS3XXX: add UL suffix to VMALLOC_END to ensure it is properly typed ARM: i.MX53: Fix IOMUX type o's ARM i.MX dma: Fix burstsize settings mach-mx5: fix the I2C clock parents ARM: mxs/tx28: according to the TX28's datasheet D4-D7 are not used for MMC0 ARM i.MX23/28: platform-mxsfb: Add missing include of linux/dma-mapping.h ARM: mx53: Fix some interrupts marked as reserved. MXC: iomux-v3: correct NO_PAD_CTRL definition ... Fix up trivial conflict in arch/arm/mach-imx/mach-mx31_3ds.c commit 3f4a12210774eb31c3435a5bc21d57aa20647aeb Merge: 8ded371 488bf31 Author: Linus Torvalds Date: Mon Jul 25 11:40:24 2011 -0700 Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: i2c: Allow i2c_add_numbered_adapter() to assign a bus id i2c-ali1535: Fix style issues commit 4e34e719e457f2e031297175410fc0bd4016a085 Author: Christoph Hellwig Date: Sat Jul 23 17:37:31 2011 +0200 fs: take the ACL checks to common code Replace the ->check_acl method with a ->get_acl method that simply reads an ACL from disk after having a cache miss. This means we can replace the ACL checking boilerplate code with a single implementation in namei.c. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit edde854e8bb34a7f32fa993d721f1da0faf64165 Author: Al Viro Date: Sat Jul 23 03:27:37 2011 -0400 bury posix_acl_..._masq() variants made static; no callers left outside of posix_acl.c. posix_acl_clone() also has lost all external callers and became static... Signed-off-by: Al Viro commit 826cae2f2b4d726b925f43bc208a571639da4761 Author: Al Viro Date: Sat Jul 23 03:10:32 2011 -0400 kill boilerplates around posix_acl_create_masq() new helper: posix_acl_create(&acl, gfp, mode_p). Replaces acl with modified clone, on failure releases acl and replaces with NULL. Returns 0 or -ve on error. All callers of posix_acl_create_masq() switched. Signed-off-by: Al Viro commit 95203befa8887997f14077d8557e67d78457ee02 Author: Al Viro Date: Sat Jul 23 02:41:54 2011 -0400 generic_acl: no need to clone acl just to push it to set_cached_acl() In-core acls are copy-on-write, so the reference taken by set_cached_acl() will do just fine. Signed-off-by: Al Viro commit bc26ab5f65ae41b71df86ea46df3c3833d1d8d83 Author: Al Viro Date: Sat Jul 23 00:18:02 2011 -0400 kill boilerplate around posix_acl_chmod_masq() new helper: posix_acl_chmod(&acl, gfp, mode). Replaces acl with modified clone or with NULL if that has failed; returns 0 or -ve on error. All callers of posix_acl_chmod_masq() switched to that - they'd been doing exactly the same thing. Signed-off-by: Al Viro commit 4482a087d4c5a6ffbc385c56b4a4e2f694d9fd5d Author: Christoph Hellwig Date: Sat Jul 23 17:37:03 2011 +0200 reiserfs: cache negative ACLs for v1 stat format Always set up a negative ACL cache entry if the inode can't have ACLs. That behaves much better than doing this check inside ->check_acl. Also remove the left over MAY_NOT_BLOCK check. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit 6311b10800a4bdc3f2c85d01fb113cf49bb83770 Author: Christoph Hellwig Date: Sat Jul 23 17:36:50 2011 +0200 xfs: cache negative ACLs if there is no attribute fork Always set up a negative ACL cache entry if the inode doesn't have an attribute fork. That behaves much better than doing this check inside ->check_acl. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit ebbb0ef2871bf3f529987313a9146cc42419a8a8 Author: Christoph Hellwig Date: Sat Jul 23 17:36:38 2011 +0200 9p: do no return 0 from ->check_acl without actually checking If we do not want to use ACLs we at least need to perform normal Unix permission checks. From the comment I'm not quite sure that's what is intended, but if 0p wants to do permission checks entirely on the server it needs to do so in ->permission, not in ->check_acl. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit e77819e57f0817c6dc7cadd061acd70c604cbce2 Author: Linus Torvalds Date: Fri Jul 22 19:30:19 2011 -0700 vfs: move ACL cache lookup into generic code This moves logic for checking the cached ACL values from low-level filesystems into generic code. The end result is a streamlined ACL check that doesn't need to load the inode->i_op->check_acl pointer at all for the common cached case. The filesystems also don't need to check for a non-blocking RCU walk case in their acl_check() functions, because that is all handled at a VFS layer. Signed-off-by: Linus Torvalds Signed-off-by: Al Viro commit 3ca30d40a91fb9b9871e61d5dea2c1a895906a15 Author: Pavel Shilovsky Date: Mon Jul 25 17:59:10 2011 +0400 CIFS: Fix oops while mounting with prefixpath commit fec11dd9a0109fe52fd631e5c510778d6cbff6cc caused a regression when we have already mounted //server/share/a and want to mount //server/share/a/b. The problem is that lookup_one_len calls __lookup_hash with nd pointer as NULL. Then __lookup_hash calls do_revalidate in the case when dentry exists and we end up with NULL pointer deference in cifs_d_revalidate: if (nd->flags & LOOKUP_RCU) return -ECHILD; Fix this by checking nd for NULL. Signed-off-by: Pavel Shilovsky Signed-off-by: Al Viro commit 340a0a01b9675a16201cc4fc4a210eb5b3bc11ce Author: Markus Trippelsdorf Date: Sun Jul 24 14:03:30 2011 +0200 xfs: Fix wrong return value of xfs_file_aio_write The fsync prototype change commit 02c24a82187d accidentally overwrote the ssize_t return value of xfs_file_aio_write with 0 for SYNC type writes. Fix this by checking if an error occured when calling xfs_file_fsync and only change the return value in this case. In addition xfs_file_fsync actually returns a normal negative error, so fix this, too. Signed-off-by: Markus Trippelsdorf Reviewed-by: Christoph Hellwig Tested-by: Christoph Hellwig Signed-off-by: Al Viro commit e13889bab3c6b5c839075086d28fe05f71984dda Author: Al Viro Date: Mon Jul 25 14:15:50 2011 -0400 fix devtmpfs race After we's done complete(&req->done), there's nothing to prevent the scope containing *req from being gone and *req overwritten by any kind of junk. So we must read req->next before that... Signed-off-by: Al Viro commit 9e577e8b46ab0c38970c0f0cd7eae62e6dffddee Author: Christoph Lameter Date: Fri Jul 22 09:35:14 2011 -0500 slub: When allocating a new slab also prep the first object We need to branch to the debug code for the first object if we allocate a new slab otherwise the first object will be marked wrongly as inactive. Tested-by: Rabin Vincent Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 8ded371f81fba8b38a049f8c5f30ce6438fc7b75 Merge: 096a705 07d0c38 Author: Linus Torvalds Date: Mon Jul 25 10:38:18 2011 -0700 Merge branch 'for-3.1/drivers' of git://git.kernel.dk/linux-block * 'for-3.1/drivers' of git://git.kernel.dk/linux-block: cciss: do not attempt to read from a write-only register xen/blkback: Add module alias for autoloading xen/blkback: Don't let in-flight requests defer pending ones. bsg: fix address space warning from sparse bsg: remove unnecessary conditional expressions bsg: fix bsg_poll() to return POLLOUT properly commit 096a705bbc080a4041636d07514560da8d78acbe Merge: fea8031 5757a6d Author: Linus Torvalds Date: Mon Jul 25 10:33:36 2011 -0700 Merge branch 'for-3.1/core' of git://git.kernel.dk/linux-block * 'for-3.1/core' of git://git.kernel.dk/linux-block: (24 commits) block: strict rq_affinity backing-dev: use synchronize_rcu_expedited instead of synchronize_rcu block: fix patch import error in max_discard_sectors check block: reorder request_queue to remove 64 bit alignment padding CFQ: add think time check for group CFQ: add think time check for service tree CFQ: move think time check variables to a separate struct fixlet: Remove fs_excl from struct task. cfq: Remove special treatment for metadata rqs. block: document blk_plug list access block: avoid building too big plug list compat_ioctl: fix make headers_check regression block: eliminate potential for infinite loop in blkdev_issue_discard compat_ioctl: fix warning caused by qemu block: flush MEDIA_CHANGE from drivers on close(2) blk-throttle: Make total_nr_queued unsigned block: Add __attribute__((format(printf...) and fix fallout fs/partitions/check.c: make local symbols static block:remove some spare spaces in genhd.c block:fix the comment error in blkdev.h ... commit fea80311a939a746533a6d7e7c3183729d6a3faf Author: Randy Dunlap Date: Sun Jul 24 11:39:14 2011 -0700 iomap: make IOPORT/PCI mapping functions conditional When CONFIG_PCI is not enabled, CONFIG_EISA=y, and CONFIG_GENERIC_IOMAP=y, drivers/net/3c59x.c build fails due to a recent small change to that surrounds pci_iomap() and pci_iounmap() with #ifdef CONFIG_PCI/#endif. Since that patch to iomap.h looks correct, add stubs for pci_iomap() and pci_iounmap() with CONFIG_PCI is not enabled to fix the build errors. drivers/net/3c59x.c:1026: error: implicit declaration of function 'pci_iomap' drivers/net/3c59x.c:1038: error: implicit declaration of function 'pci_iounmap' Signed-off-by: Randy Dunlap Cc: Jonas Bonn Cc: Arnd Bergmann Signed-off-by: Linus Torvalds commit c8e58856f2f288bfe076ad9205d9a10623498c96 Author: Andy Shevchenko Date: Sat Sep 11 16:33:29 2010 +0300 MIPS: RB532: Use hex_to_bin() Remove custom implementation of hex_to_bin(). Signed-off-by: Andy Shevchenko Cc: Ralf Baechle Cc: linux-mips@linux-mips.org To: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1580/ Acked-by: Florian Fainelli Signed-off-by: Ralf Baechle commit 5fba0960809534f008260a621046f38a5f46f417 Author: Shinya Kuribayashi Date: Tue Jul 13 00:41:51 2010 +0900 MIPS: Enable cpu_has_clo_clz for MIPS Technologies' platforms Enable cpu_has_clo_clz only when CONFIG_CPU_MIPS32 or CONFIG_CPU_MIPS64 is selected. This will optimize fls() and __fls() to use CLZ insn, and eventually ffs() and __ffs() as well. Malta and MIPSSim are development platforms, and need to take care of various processor configurations, release rivisions and so on, even across different MIPS ISAs. For such platforms we have to be careful, for instance, with turning on cpu_has_mips{32,64}r[12] features. As for CLZ, all MIPS32/64 processors support it, regardless of release revisions. Signed-off-by: Shinya Kuribayashi To: David VomLehn To: macro@linux-mips.org Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1453/ Signed-off-by: Ralf Baechle commit c2b78c8e82f2b8aa0e8703f9931d42ad4f041260 Author: David VomLehn Date: Tue Jul 13 00:41:12 2010 +0900 MIPS: PowerTV: Provide cpu-feature-overrides.h This will optimize fls() and __fls() to use CLZ throughout the kernel, and any other optimizations that depend on constant cpu_has_* values will also be used. Signed-off-by: David VomLehn Signed-off-by: Shinya Kuribayashi To: David VomLehn To: macro@linux-mips.org Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1452/ Signed-off-by: Ralf Baechle commit 98f4a2c27c76e7eaf75c2f3f25487fabca62ef3d Author: Ralf Baechle Date: Mon Jul 25 17:26:55 2011 +0100 MIPS: Remove pointless return statement from empty void functions. Signed-off-by: Ralf Baechle To: Sergei Shtylyov Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2391/ Signed-off-by: Ralf Baechle commit 464fd83e841a16f4ea1325b33eb08170ef5cd1f4 Author: Kevin Cernekee Date: Wed Jan 5 23:31:30 2011 -0800 MIPS: Limit fixrange_init() to the FIXMAP region fixrange_init() allocates page tables for all addresses higher than FIXADDR_TOP. On processors that override the default FIXADDR_TOP address of 0xfffe_0000, this can consume up to 4 pages (1 page per 4MB) for pgd's that are never used. Signed-off-by: Kevin Cernekee Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1980/ Signed-off-by: Ralf Baechle commit 273f2d7e64f9fd22192b4cd31e7408284a721e69 Author: Kevin Cernekee Date: Sat Oct 16 14:22:33 2010 -0700 MIPS: Install handlers for software IRQs BMIPS4350/4380/5000 CMT/SMT all use SW INT0/INT1 for inter-thread signaling. Signed-off-by: Kevin Cernekee Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1709/ Signed-off-by: Ralf Baechle commit 565b60de325070ccc54b18346a1238d4fae17954 Author: Kevin Cernekee Date: Tue Sep 7 12:59:15 2010 -0700 MIPS: Move FIXADDR_TOP into spaces.h Memory maps and addressing quirks are normally defined in . There are already three targets that need to override FIXADDR_TOP, and others exist. This will be a cleaner approach than adding lots of ifdefs in fixmap.h . Signed-off-by: Kevin Cernekee Cc: Atsushi Nemoto Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1573/ Acked-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit d0023c4a0af1ff16fe183257682025bfcc068e85 Author: Kevin Cernekee Date: Mon Sep 6 21:03:46 2010 -0700 MIPS: Add SYNC after cacheflush On processors with deep write buffers, it is likely that many cycles will pass between a CACHE instruction and the time the data actually gets written out to DRAM. Add a SYNC instruction to ensure that the buffers get emptied before the flush functions return. Actual problem seen in the wild: 1) dma_alloc_coherent() allocates cached memory 2) memset() is called to clear the new pages 3) dma_cache_wback_inv() is called to flush the zero data out to memory 4) dma_alloc_coherent() returns an uncached (kseg1) pointer to the freshly allocated pages 5) Caller writes data through the kseg1 pointer 6) Buffered writeback data finally gets flushed out to DRAM 7) Part of caller's data is inexplicably zeroed out This patch adds SYNC between steps 3 and 4, which fixed the problem. Signed-off-by: Kevin Cernekee Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: Signed-off-by: Ralf Baechle commit b6da0ffb09ad4468e6749488909f04f1efac5de3 Author: Kevin Cernekee Date: Sun May 30 00:32:51 2010 -0700 MIPS: pfn_valid() is broken on low memory HIGHMEM systems pfn_valid() compares the PFN to max_mapnr: __pfn >= min_low_pfn && __pfn < max_mapnr; On HIGHMEM kernels, highend_pfn is used to set the value of max_mapnr. Unfortunately, highend_pfn is left at zero if the system does not actually have enough RAM to reach into the HIGHMEM range. This causes pfn_valid() to always return false, and when debug checks are enabled the kernel will fail catastrophically: Memory: 22432k/32768k available (2249k kernel code, 10336k reserved, 653k data, 1352k init, 0k highmem) NR_IRQS:128 kfree_debugcheck: out of range ptr 81c02900h. Kernel bug detected[#1]: Cpu 0 $ 0 : 00000000 10008400 00000034 00000000 $ 4 : 8003e160 802a0000 8003e160 00000000 $ 8 : 00000000 0000003e 00000747 00000747 ... On such a configuration, max_low_pfn should be used to set max_mapnr. This was seen on 2.6.34. Signed-off-by: Kevin Cernekee To: Ralf Baechle Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1992/ Signed-off-by: Ralf Baechle commit e36863a550da44595b155c6b86ff46b50cbff5c0 Author: Dezhong Diao Date: Wed Oct 13 16:57:35 2010 -0700 MIPS: HIGHMEM DMA on noncoherent MIPS32 processors [v4: Patch applies to linux-queue.git with kmap_atomic patches: https://patchwork.kernel.org/patch/189932/ https://patchwork.kernel.org/patch/194552/ https://patchwork.kernel.org/patch/189912/ ] The MIPS DMA coherency functions do not work properly (i.e. kernel oops) when HIGHMEM pages are passed in as arguments. Use kmap_atomic() to temporarily map high pages for cache maintenance operations. Tested on a 2.6.36-rc7 1GB HIGHMEM SMP no-alias system. Signed-off-by: Dezhong Diao Signed-off-by: Kevin Cernekee Cc: Dezhong Diao Cc: David Daney Cc: David VomLehn Cc: Sergei Shtylyov Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1695/ Signed-off-by: Ralf Baechle commit d0be89f6c2570a63ac44ccdd12473a54243cd296 Author: Jian Peng Date: Tue May 17 12:27:49 2011 -0700 MIPS: topdown mmap support This patch introduced topdown mmap support in user process address space allocation policy. Recently, we ran some large applications that use mmap heavily and lead to OOM due to inflexible mmap allocation policy on MIPS32. Since most other major archs supported it for years, it is reasonable to follow the trend and reduce the pain of porting applications. Due to cache aliasing concern, arch_get_unmapped_area_topdown() and other helper functions are implemented in arch/mips/kernel/syscall.c. Signed-off-by: Jian Peng Cc: David Daney Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2389/ Signed-off-by: Ralf Baechle commit 3a7136602b6fcb27073a241006cd5d029cacfafa Author: Mathias Krause Date: Fri Jun 10 15:10:04 2011 +0200 MIPS: Remove redundant addr_limit assignment on exec. The address limit is already set in flush_old_exec() via set_fs(USER_DS) so this assignment is redundant. [ralf@linux-mips.org: also see dac853ae89043f1b7752875300faf614de43c74b for further explanation.] Signed-off-by: Mathias Krause Cc: Andrew Morton Cc: Linus Torvalds Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2466/ Signed-off-by: Ralf Baechle commit c4a50541611d097c92f9e599f53d19d438074b12 Author: Florian Fainelli Date: Sun Jun 12 20:57:19 2011 +0200 MIPS: AR7: Replace __attribute__((__packed__)) with __packed Signed-off-by: Florian Fainelli To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2491/ Signed-off-by: Ralf Baechle Date: Sun Jun 12 20:57:18 2011 +0200 MIPS: AR7: Remove 'space before tabs' in platform.c Signed-off-by: Florian Fainelli To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2490/ Signed-off-by: Ralf Baechle commit 3c2c22628599006047781946b317a16d9ff3883d Author: Dave Kleikamp Date: Mon Jun 20 13:00:27 2011 -0500 jfs: clean up some compiler warnings jfs has a few variables being set but never used. Signed-off-by: Dave Kleikamp commit 5fd1a2ed0ec6fb5449c71a988cc15edb8671b3d0 Author: Rob Herring Date: Mon Jul 25 09:52:12 2011 -0600 arm/dt: Add dtb make rule Add a make rule to compile dt blobs for ARM. Signed-off-by: Rob Herring Acked-by: Shawn Guo Tested-by: Jason Liu Signed-off-by: Grant Likely commit 2b4180af3faaf6088162d8a6b8d3f571bd7c2004 Author: Grant Likely Date: Mon Jul 25 09:52:11 2011 -0600 arm/dt: Add skeleton dtsi file Contains the bare minimum template required to boot with the device tree. Signed-off-by: Grant Likely commit 85cad1b0b6409c62bce4828da2fd8a535e2148b0 Author: Grant Likely Date: Mon Jul 25 09:52:11 2011 -0600 arm/dt: Add dt machine definition This patch adds a DT_MACHINE_START macro to use instead of MACHINE_START when creating a machine_desc that supports using the device tree. Signed-off-by: Grant Likely commit 488bf314bf219c66922305a1a320950efa86662f Author: Grant Likely Date: Mon Jul 25 17:49:43 2011 +0200 i2c: Allow i2c_add_numbered_adapter() to assign a bus id Currently, if an i2c bus driver supports both static and dynamic bus ids, it needs to choose between calling i2c_add_numbered_adapter() and i2c_add_adapter(). This patch makes i2c_add_numbered_adapter() redirect to i2c_add_adapter() if the requested bus id is -1. Signed-off-by: Grant Likely Signed-off-by: Jean Delvare commit 3fea5df41df685de53aa985678ad7a9b2d6b3bb5 Author: LABBE Corentin Date: Mon Jul 25 17:49:42 2011 +0200 i2c-ali1535: Fix style issues This is a fix-style patch for i2c-ali1535 (issues reported by checkpatch.pl.) Signed-off-by: LABBE Corentin Signed-off-by: Jean Delvare commit 5cf49d763eb141d236e92be6d4a0dc94e31fa886 Author: Wang Sheng-Hui Date: Mon Jul 25 21:02:25 2011 +0800 jbd: change the field "b_cow_tid" of struct journal_head from type unsigned to tid_t In the definition of struct journal_head, the comment for the field "unsigned b_cow_tid" says the field tracks the last transaction id in which this buffer has been cowed. In the header part of file journal-head.h, it defines typedef unsigned int tid_t; We should use type tid_t to define transaction id fields. Change the field "b_cow_tid" of struct journal_head from type unsigned to tid_t. Signed-off-by: Wang Sheng-Hui Acked-by: Amir Goldstein Signed-off-by: Jan Kara commit 604f4498d08f2caa00acc6707eec8f5759996257 Merge: 1d9e5a2 29e9c68 Author: Arnd Bergmann Date: Mon Jul 25 17:16:00 2011 +0200 Merge branch 'tegra/fixes' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/fixes commit 2b76aa074e9de718b31ba48699e99191b7697bf2 Author: Wang Sheng-Hui Date: Sat Jul 23 09:08:49 2011 +0800 ext3.txt: update the links in the section "useful links" to the latest ones In Documentation/filesystems/ext3.txt, the section "useful links" provides two links which link to ibm developerworks articles. While the second one can be redirected to the latest one, the first one http://www.ibm.com/developerworks/library/l-fs7.html fails to be redirected. Update the 2 links to the latest ones. Signed-off-by: Wang Sheng-Hui Signed-off-by: Jan Kara commit bac6aa865b3dc98e9fbc17f11d4d513d6b0bc435 Author: Michal Marek Date: Wed May 25 15:10:25 2011 +0200 xconfig: Abort close if configuration cannot be saved Give the user an opportunity to fix the error or save the configuration under a different path. Reported-by: Hiromu Yakura Signed-off-by: Michal Marek commit 1c1d9547536480626c1be1fb062b81663fb2b88e Author: Axel Lin Date: Tue Jul 12 21:00:13 2011 +0800 dmaengine: imx-sdma: return proper error if kzalloc fails Signed-off-by: Axel Lin Acked-by: Sascha Hauer Signed-off-by: Vinod Koul commit 0b052f4a088ddc47a5da23dd733522241314cfb4 Author: Tomoya MORINAGA Date: Thu Jul 14 09:52:38 2011 +0900 pch_dma: Fix CTL register access issue Currently, Mode-Control register is accessed by read-modify-write. According to DMA hardware specifications datasheet, prohibits this method. Because this register resets to 0 by DMA HW after DMA transfer completes. Thus, current read-modify-write processing can cause unexpected behavior. The datasheet says in case of writing Mode-Control register, set the value for only target channel, the others must set '11b'. e.g. Set DMA0=01b DMA11=10b CTL0=33333331h CTL2=00002333h NOTE: CTL0 includes DMA0~7 Mode-Control register. CTL2 includes DMA8~11 Mode-Control register. This patch modifies the issue. Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit 1ae14703e76de49e6116296f3b20925f491dbb16 Author: Jesper Juhl Date: Tue Jul 12 00:32:04 2011 +0200 genksyms: Use same type in loop comparison The ARRAY_SIZE macro in scripts/genksyms/genksyms.c returns a value of type size_t. That value is being compared to a variable of type int in a loop in read_node(). Change the int variable to size_t type as well, so we don't do signed vs unsigned type comparisons with all the potential promotion/sign extension trouble that can cause (also silences compiler warnings at high levels of warnings). Signed-off-by: Jesper Juhl Signed-off-by: Michal Marek commit 964f664520a4c6a247e2c9ff8b4481631cf746df Author: Benjamin Herrenschmidt Date: Wed Jul 13 16:28:19 2011 +1000 drm/radeon: Add a rmb() in IH processing We should have a read memory barrier between reading the WPTR from memory and reading ring entries based on that value (ie, we need to ensure both loads are done in order by the CPU). It could be argued that the MMIO reads in r600_ack_irq() might be enough to get that barrier but I prefer keeping an explicit one just in case. [airlied: fix evergreen + r/w mixup] Signed-off-by: Benjamin Herrenschmidt Reviewed-by: Alex Deucher Reviewed-by: Matt Turner Signed-off-by: Dave Airlie commit f1bece7fde9820a99c14d4db46ef071000e4ba47 Author: Benjamin Herrenschmidt Date: Wed Jul 13 16:28:15 2011 +1000 drm/radeon: ATOM Endian fix for atombios_crtc_program_pll() v6 of the structure was programmed incorrectly: args.v6.ulCrtcPclkFreq.ulPixelClock = cpu_to_le32(clock / 10); ulPixelClock is a 24-bit bitfield. This statement would thus do a 32-bit swap of (clock / 10) and drop the top 8 bits which are ... the LSB. Not what we want. Instead use masks & shifts. Signed-off-by: Benjamin Herrenschmidt Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit edc02bffbdcd92086f5cc9d715143e51acfa90ee Author: Benjamin Herrenschmidt Date: Wed Jul 13 06:28:26 2011 +0000 drm/radeon: Fix the definition of RADEON_BUF_SWAP_32BIT (Note that this is duplicated under various other names such as R600_BUF_SWAP_32BIT etc...). At least now all the definitions agree. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Dave Airlie commit f6a5693976fbc8e9fe4dde3040820082593c1757 Author: Benjamin Herrenschmidt Date: Wed Jul 13 06:28:22 2011 +0000 drm/radeon: Do an MMIO read on interrupts when not uisng MSIs When not using MSIs, there is no guarantee that DMA from the device has been fully flushed to point where it's visible to the CPU when taking an interrupt. To get this guarantee, we need to perform an MMIO read from the device, which will flush all outstanding DMAs from bridges between the device and the system. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Dave Airlie commit df07d6999e4e502ff474eeafe11ea0055f4cd68d Author: Benjamin Herrenschmidt Date: Wed Jul 13 06:28:17 2011 +0000 drm/radeon: Writeback endian fixes The writeback ring pointer and IH ring pointer are read using le32_to_cpu so we do not want the chip to byteswap them on big-endian. We still want to byteswap the ring itself and the IBs, so we don't touch that but we remove setting of the byteswap bits in CP_RB_RPTR_ADDR and IH_CNTL. In general, for things like that where we control all the accessors easily, we are better off doing the swap in SW rather than HW. Paradoxally, it does keep the code closer to x86 and avoid using poorly tested HW features. I also changed the use of RADEON_ to R600_ in a couple of cases to be more consistent with the surrounding code. Signed-off-by: Benjamin Herrenschmidt Reviewed-by: Michel Dänzer Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit a0533fbf8778991f9a978656cff0d301322d37e2 Author: Benjamin Herrenschmidt Date: Wed Jul 13 06:28:12 2011 +0000 drm/radeon: Remove a bunch of useless _iomem casts Just defining rdev->rmmio properly in the first place should do the trick. In some cases, the cast were also complete dups as the original variable was already of the right type. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Dave Airlie commit 62cb70118c4efabb3c0a6f962168ddcad4344eef Author: Alan Cox Date: Tue Jun 7 14:17:51 2011 +0100 drm/gem: add support for private objects These small changes should allow GEM to be used with non shmem objects as well as shmem objects. In the GMA500 case it allows the base framebuffer to appear as a GEM object and thus acquire a handle and work with KMS. For i915 it ought to be trivial to get back the wasted memory but putting the system fb back into stolen RAM and in general I can imagine it allowing the use of GEM and thus KMS with all the older cards that have their framebuffer firmly placed in video RAM. Signed-off-by: Alan Cox Tested-by: Rob Clark Signed-off-by: Dave Airlie commit 04fee895ef98ffbb91a941b53a92d6949bb6d1c4 Author: Rolf Eike Beer Date: Wed Jun 15 11:27:02 2011 +0200 DRM: clean up and document parsing of video= parameter The video= parameter of the DRM drivers supports some additional flags that the normal fb drivers do not have. They also allow to limit these flags to specific outputs. Both things were previously undocumented. Also the parsing of the line had some oddities: -A lot of misplaced options were silently ignored or partly rejected instead of stopping the parsing immediately -The 'R' option is documented to follow the 'M' option if specified. It is not documented that 'M' is needed to specify 'R' (also this is the case for normal fb drivers). In fact the code is correct for normal fb drivers but wrong for DRM ones. The old code allowed 'R' only _before_ 'M' (since it parses backwards) and only if 'M' is given at all which is not needed for the DRM drivers. -the margins option ('m') was parsed but later ignored even if the later functions support it. -specifying multiple enable options at the same time did not lead to an error. -specifying something bogus for horizontal resolution (i.e. other things as digits) did not lead to an error but an invalid resolution was used. If any errors are encountered the position of the faulting string is now printed to the user and the complete mode is ignored. This gives much more consistent error behaviour. I also removed some useless assignments and changed the local flag variables to be bool. Signed-off-by: Rolf Eike Beer Signed-off-by: Dave Airlie commit ee2762916f5594e60d8789593f149ed83b560cf7 Author: Ralf Baechle Date: Mon Jun 27 13:40:35 2011 +0000 DRM: Radeon: Fix section mismatch. WARNING: drivers/gpu/drm/radeon/radeon.o(.text+0x5d1fc): Section mismatch in reference from the function radeon_get_clock_info() to the function .devinit.text:radeon_read_clocks_OF() The function radeon_get_clock_info() references the function __devinit radeon_read_clocks_OF(). This is often because radeon_get_clock_info lacks a __devinit annotation or the annotation of radeon_read_clocks_OF is wrong. Signed-off-by: Ralf Baechle Cc: dri-devel@lists.freedesktop.org Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Signed-off-by: Dave Airlie commit 0aff47f29337d1c23060eb1cea7801dfee0e0e4a Author: Tormod Volden Date: Tue Jul 5 20:12:53 2011 +0000 drm: really make debug levels match in edid failure code Also disable the ascii dump and remove the literal printing of the KERN_ERR macro in the log: [drm:drm_edid_block_valid] *ERROR* Raw EDID: <3>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ v2: Remove the trailing empty line as well. Signed-off-by: Tormod Volden Signed-off-by: Dave Airlie commit 6dd666333ddee39903d86f870d5c40d9f100e0cc Author: Alex Deucher Date: Sat Jul 23 18:02:04 2011 +0000 drm/radeon/kms: fix i2c map for rv250/280 Those chips have crt2_ddc bus. Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=39672 Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 603f2e6d378948bf5e5ac04d98673761362a3b79 Merge: e55b942 9962cc6 Author: Dave Airlie Date: Mon Jul 25 10:15:18 2011 +0100 Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-core-next * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: drm/nouveau/gr: disable fifo access and idle before suspend ctx unload drm/nouveau: pass flag to engine fini() method on suspend drm/nouveau: replace nv04_graph_fifo_access() use with direct reg bashing drm/nv40/gr: rewrite/split context takedown functions drm/nouveau: detect disabled device in irq handler and return IRQ_NONE drm/nouveau: ignore connector type when deciding digital/analog on DVI-I drm/nouveau: Add a quirk for Gigabyte NX86T drm/nouveau: do not leak in nv20_graph_create drm/nv50/dp: fix hack to work for macbooks booted via EFI commit 3c6b50141ef9f0a8844bf1357b80c0cdf518bf05 Author: Dmitry Torokhov Date: Mon Jul 25 01:36:46 2011 -0700 Input: synaptics - fix reporting of min coordinates We were testing wrong bit in the extended capability query. Reported-by: Daniel Kurtz Signed-off-by: Dmitry Torokhov commit 5599d2e60b1191520778def7c0658fbc6de6d8c1 Author: Rakesh Iyer Date: Mon Jul 25 00:49:55 2011 -0700 Input: tegra-kbc - enable key autorepeat To support key repeats, keyboard needs to be setup as an autorepeating device. Signed-off-by: Rakesh Iyer Signed-off-by: Dmitry Torokhov commit 8304bbceee505742925b487fd8ea56e1f8b4b805 Author: Nicholas Bellinger Date: Tue Mar 22 14:14:09 2011 -0700 iscsi: Add Serial Number Arithmetic LT and GT into iscsi_proto.h This patch moves the iscsi_sna_lt() and iscsi_sna_lte(), along with iscsi_sna_gt() and iscsi_sna_gte() from iscsi_target_mod into static inlines inside of include/scsi/iscsi_proto.h This patch also includes the ISCSI_HDR_LEN and ISCSI_CRC_LEN definitions. (Added JesperJ simpliciation for iscsi_sna_* usage) Signed-off-by: Mark Rustad Signed-off-by: Mike Christie Signed-off-by: Nicholas A. Bellinger commit 55bdabdf41b6ee99e22e9d78a895b001fb1d852e Author: Andy Grover Date: Thu Jun 16 15:57:09 2011 -0700 iscsi: Use struct scsi_lun in iscsi structs instead of u8[8] struct scsi_lun is also just a struct with an array of 8 octets (64 bits) but using it instead in iscsi structs lets us call scsilun_to_int without a cast, and also lets us copy it using assignment, instead of memcpy(). Signed-off-by: Andy Grover Signed-off-by: James Bottomley commit c9d761b7c4b658a937a941aea2781f511a0ff3ec Author: Michal Simek Date: Tue Jul 12 15:24:06 2011 +0200 microblaze: PCI fix typo fault in of_node pointer moving into pci_bus Bug introduces in: powerpc/pci: Make both ppc32 and ppc64 use sysdata for pci_controller (sha1: b5d937de0367d26f65b9af1aef5f2c34c1939be0) Signed-off-by: Michal Simek commit ca12adc8ca6814d1949fcc6d83c1adda6dc9e2ef Author: Michal Simek Date: Wed Apr 6 13:06:45 2011 +0200 microblaze: Add support for early console on mdm Support mdm early console: - extend time for retries - add mdm compatible property Signed-off-by: Michal Simek commit 2aa8e37596933a43fc3e46e1e385045635674429 Author: Michal Simek Date: Thu Apr 14 11:48:43 2011 +0200 microblaze: Simplify early console binding from DT Recognize early Linux console from chosen - linux,stdout-path instead of detecting the first console with appropriate compatible strings. This patch solved the problem on system with multiple consoles. Signed-off-by: Michal Simek commit e721a45fbed13a52093d2cc1962dbb8a754462ea Author: Michal Simek Date: Mon Apr 4 15:45:06 2011 +0200 microblaze: Get early printk console earlier 1. Register early console as standard console 2. Enable CON_BOOT console flag to ensure auto-unregistering by the kernel 3. remap_early_printk function remap physical console baseaddr to virtual space Usage specific function for console remap is done after memory initialization with IRQ turn off that's why there is not necessary to protect it. The reason for remapping is that the kernel use TLB 63 for 1:1 address mapping to be able to use console in very early boot-up phase. But allocating one TLB just for console caused performance degression that's why ioremaps create new mapping and TLB 63 is automatically released and ready to use. Signed-off-by: Michal Simek CC: Russell King CC: Ralf Baechle CC: Ingo Molnar CC: Alan Cox CC: CC: Arnd Bergmann commit 69f06054aad122b314cd64fdafdf14fc3b8e5b7c Author: Tomi Valkeinen Date: Wed Jun 1 15:56:39 2011 +0300 OMAP: DSS2: DSS: Fix context save/restore The current method of saving and restoring the context could cause a restore before saving, effectively "restoring" zero values to registers. Add ctx_valid field to indicate if the saved context is valid and can be restored. Signed-off-by: Tomi Valkeinen commit 49ea86f3fae21dd0334668b621e9c88f43a73c86 Author: Tomi Valkeinen Date: Wed Jun 1 15:54:06 2011 +0300 OMAP: DSS2: DISPC: Fix context save/restore The current method of saving and restoring the context could cause a restore before saving, effectively "restoring" zero values to registers. Add ctx_valid field to indicate if the saved context is valid and can be restored. Also restructure the code to save the ctx_loss_count in save_context(), which makes more sense than the previous method of storing new ctx_loss_count in dispc_need_ctx_restore. Signed-off-by: Tomi Valkeinen commit 39020710e707a01d80ea6c9e55dad4de93bb4730 Author: Tomi Valkeinen Date: Thu May 26 14:54:05 2011 +0300 OMAP: DSS2: Remove ctx loss count from dss.c dss.c only saves 1 register (3 in OMAP3) so the extra overhead from need_ctx_restore & co. is probably bigger than the time spent saving and restoring those few registers every time. So remove the code from dss.c and restore context every time dss has been off. Signed-off-by: Tomi Valkeinen commit 6d9f29dd62142a173b54c0a5645fbdfb296f1316 Author: Tomi Valkeinen Date: Wed May 25 16:22:26 2011 +0300 OMAP: DSS2: Remove unused code from display.c oh_core variable is no longer used, so it and its initialization can be removed. Signed-off-by: Tomi Valkeinen commit e6d80f950a77ca48eada6457a290dc5471e1dd73 Author: Tomi Valkeinen Date: Thu May 19 14:12:26 2011 +0300 OMAP: DSS2: DISPC: remove finegrained clk enables/disables dispc.c enables and disables clocks in almost every function to make sure the clocks are enabled when the function is called. This is rather unoptimal way to handle the problem. With pm_runtime other components have to call dispc_runtime_get() to enable dispc clocks before calling any other dispc functions. Thus the finegrained clk enables/disables can be removed. Signed-off-by: Tomi Valkeinen commit aea4eb9590c6fa36e1b68b9cf5c3e4ddea402812 Author: Tomi Valkeinen Date: Fri May 27 10:52:38 2011 +0300 OMAP: DSS2: Remove unused opt_clock_available opt_clock_available() is no longer needed, so remove it. Signed-off-by: Tomi Valkeinen commit 4fbafaf371be780ed2cd73a520dfeafa1ea73e24 Author: Tomi Valkeinen Date: Fri May 27 10:52:19 2011 +0300 OMAP: DSS2: Use PM runtime & HWMOD support Use PM runtime and HWMOD support to handle enabling and disabling of DSS modules. Each DSS module will have get and put functions which can be used to enable and disable that module. The functions use pm_runtime and hwmod opt-clocks to enable the hardware. Acked-by: Kevin Hilman Signed-off-by: Tomi Valkeinen commit 123521830c0ea35055b900d2ff0b73bb129e08cb Author: Nicholas Bellinger Date: Fri May 27 11:16:33 2011 +0000 iscsi: Resolve iscsi_proto.h naming conflicts with drivers/target/iscsi This patch renames the following iscsi_proto.h structures to avoid namespace issues with drivers/target/iscsi/iscsi_target_core.h: *) struct iscsi_cmd -> struct iscsi_scsi_req *) struct iscsi_cmd_rsp -> struct iscsi_scsi_rsp *) struct iscsi_login -> struct iscsi_login_req This patch includes useful ISCSI_FLAG_LOGIN_[CURRENT,NEXT]_STAGE*, and ISCSI_FLAG_SNACK_TYPE_* definitions used by iscsi_target_mod, and fixes the incorrect definition of struct iscsi_snack to following RFC-3720 Section 10.16. SNACK Request. Also, this patch updates libiscsi, iSER, be2iscsi, and bn2xi to use the updated structure definitions in a handful of locations. Signed-off-by: Mike Christie Signed-off-by: Nicholas A. Bellinger commit 95ce618f85a86a7383c1a3e39278be3de84b1b99 Author: John A. Williams Date: Tue May 24 18:59:45 2011 +1000 microblaze: Standardise cpuinfo output for cache policy The current cpuinfo output for the cache policy has no leading tag:, making it difficult to parse. Add a leaning "Dcache-policy:" tag to this field. Signed-off-by: John A. Williams commit 8904976e8ca45be3ec75acc71f5d855ef671a079 Author: John A. Williams Date: Tue May 24 18:57:11 2011 +1000 microblaze: Unprivileged stream instruction awareness Add cpuinfo support for the new MicroBlaze option permitting userspace (unprivileged) access to the streaming instructions (FSL / AXI-stream). Emit a noisy warning at bootup if this is enabled, because bad user code can potentially lockup the CPU. Signed-off-by: John A. Williams Signed-off-by: Michal Simek commit de3050a74e2d2830189ceaa5f5fc05b776518d68 Author: Tomi Valkeinen Date: Wed May 18 12:58:24 2011 +0300 OMAP: DSS2: Remove CONFIG_OMAP2_DSS_SLEEP_BEFORE_RESET CONFIG_OMAP2_DSS_SLEEP_BEFORE_RESET is used to avoid an unclear bug at DSS reset time. The pm runtime will handle reset in the future, and this code has to be removed. Hopefully we won't see this error anymore. Signed-off-by: Tomi Valkeinen commit 7e42403e3bbce191ad7e4ce8c598d48be6232f57 Author: Tomi Valkeinen Date: Wed May 18 12:37:58 2011 +0300 OMAP: DSS2: Remove core_dump_clocks Currently dss.c does all the low level clock handling in the DSS, and thus it contains pointers to all the clocks. This allows dss.c to dump the clock information for all the clocks. With pm_runtime this is no longer the case, as each submodule will handle its clocks independently. Thus remove the core_dump_clocks function as it cannot be used with pm_runtime. Signed-off-by: Tomi Valkeinen commit 19077a736148360b8510fa3a45f919d1a6354b06 Author: Tomi Valkeinen Date: Wed May 18 11:33:44 2011 +0300 OMAP: DSS2: DPI: remove unneeded SYSCK enable/disable DSI PLL requires sys_clk to function, and DPI enables sys_clk when it wants to use DSI PLL. However, DSI PLL code already handles enabling sys_clk, so DPI's sys_clk code is extra. Remove the unneeded sys_clk handling from dpi.c. Signed-off-by: Tomi Valkeinen commit 700dee78dcf7665ca63122049793a96f05d4b3e3 Author: Tomi Valkeinen Date: Mon May 23 15:50:47 2011 +0300 OMAP: DSS2: Use omap_pm_get_dev_context_loss_count to get ctx loss count Initialize get_context_loss_count in the DSS board data to omap_pm_get_dev_context_loss_count, so that omapdss driver can use it. Signed-off-by: Tomi Valkeinen commit aac927c93bb353375c74779491e217427cc4d3a9 Author: Tomi Valkeinen Date: Mon May 23 15:46:54 2011 +0300 OMAP: DSS2: rewrite use of context_loss_count The function to get device's context loss count has changed from omap_pm_get_last_off_on_transaction_id() to omap_pm_get_dev_context_loss_count() Change name of the function pointer in omapdss.h accordingly, and use the term "context loss count" instead of "context id" in the code. Restructure the context loss count functions to handle errors properly, and ensure that context is always considered lost if an error happens. Signed-off-by: Tomi Valkeinen commit b88f58f091f7e771315bc74c28203b5248b96be0 Author: Tomi Valkeinen Date: Mon May 23 15:39:36 2011 +0300 OMAP: DSS2: Remove clk optimization at dss init DSS enables core clocks for the duration of initialization to avoid unnecessary context saves and restores. With PM runtime the clocks cannot be handled in this way, outside the dss module drivers. Thus we need to remove the optimization. Signed-off-by: Tomi Valkeinen commit cb5930bdb57393a6ab9dc0c96fe5f03dcfb5bf43 Author: Tomi Valkeinen Date: Tue May 17 16:10:59 2011 +0300 OMAP: DSS2: Fix init and unit sequence The initialization order of the DSS modules is important when pm_runtime support is implemented. Currently RFBI is initialized before DISPC, which will cause problems with pm_runtime as RFBI uses DISPC. The same goes for uninitialization order, and dss_uninit needs to be called last, and dispc_uninit just before that. Signed-off-by: Tomi Valkeinen commit b98482ed73810c4a970dee3402b35241d3ce4b7e Author: Tomi Valkeinen Date: Mon May 16 13:52:51 2011 +0300 OMAP: DSS2: Clean up probe for DSS & DSI Both dss.c and dsi.c had a probe function, which was almost a dummy one, calling dss_init() and dsi_init(). Remove the init functions by moving the initialization code into probe functions. Signed-off-by: Tomi Valkeinen commit 94c042ce589b6b81e5dc0020fce2d248940412bd Author: Tomi Valkeinen Date: Mon May 16 13:43:04 2011 +0300 OMAP: DSS2: Handle dpll4_m4_ck in dss_get/put_clocks Get and put for dpll4_m4_ck was handled in dss_init/dss_exit. Move the code to dss_get/put_clocks(), which is a better place to handle it. Signed-off-by: Tomi Valkeinen commit 5db34eb92f5699361de355dcd7958fdd2a9fb98a Author: Michal Simek Date: Tue Jul 12 12:36:29 2011 +0200 microblaze: trivial: Fix typo fault descrtiption -> description Signed-off-by: Michal Simek commit a0ec99bda8d42001dc37191f1282a401d2f6e4e1 Author: Mathias Krause Date: Fri Jun 10 15:09:59 2011 +0200 microblaze: exec: Remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause commit 504a84c4806af58ae842b8716f603baad2757dd9 Author: Mathias Krause Date: Wed Jun 8 14:30:05 2011 +0200 microblaze: Remove duplicated prototype of start_thread() The prototype for start_thread() is already present in the MMU/NOMMU independent part of the file. Remove the duplicate. Signed-off-by: Mathias Krause Signed-off-by: Michal Simek commit c11389406f19e4bddc7b347e5259aebda02b23f1 Author: Michal Simek Date: Fri May 20 09:02:13 2011 +0200 microblaze: Fix unaligned value saving to the stack for system with MMU Several registers weren't saved correctly to the stack. Unaligned expection for system with MMU stores value in ex_tmp_data_loc_X address which is load to registers r3. The next step is to move this value from r3 to a destination register which caused unaligned exception. For several registers this value was directly moved to the register. For example for r28: by "or r28, r0, r3" but register r28 was rewritten when kernel returns from exception handler by value saved on stack. This patch changed r3 saving to the correct address on the stack. For example for r28: by "swi r3, r1, 4 * 28" When kernel returns from the exception handler, correct value is restored. Signed-off-by: Michal Simek commit a2f526994e92ea54be181efccda261c4b1a6ae8d Author: Steven Rostedt Date: Fri Jul 1 23:04:40 2011 -0400 microblaze/irqs: Do not trace arch_local_{*,irq_*} functions Do not trace arch_local_save_flags(), arch_local_irq_*() and friends. Although they are marked inline, gcc may still make a function out of them and add it to the pool of functions that are traced by the function tracer. This can cause undesirable results (kernel panic, triple faults, etc). Add the notrace notation to prevent them from ever being traced. Cc: Michal Simek Signed-off-by: Steven Rostedt commit 8405b044e5238afebd7248d927c1d261d2239767 Merge: ee05eff 133de12 Author: Linus Torvalds Date: Sun Jul 24 20:56:18 2011 -0700 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] s5pv210: make needlessly global symbols static [CPUFREQ] exynos4210: make needlessly global symbols static [CPUFREQ] S3C6410: Add some lower frequencies for 800MHz base clock operation [CPUFREQ] S5PV210: Add reboot notifier to prevent system hang [CPUFREQ] S5PV210: Adjust udelay prior to voltage scaling down [CPUFREQ] S5PV210: Lock a mutex while changing the cpu frequency [CPUFREQ] S5PV210: Add pm_notifier to prevent system unstable [CPUFREQ] S5PV210: Add arm/int voltage control support [CPUFREQ] S5PV210: Add additional symantics for "relation" in cpufreq with pm [CPUFREQ] S3C64xx: Notify transition complete as soon as frequency changed [CPUFREQ] S3C6410: Support 800MHz operation in cpufreq [CPUFREQ] s5pv210-cpufreq.c: Add missing clk_put [CPUFREQ] Move compile for S3C64XX cpufreq to /drivers/cpufreq [CPUFREQ] Remove some vi noise that escaped into the Makefile. [CPUFREQ] Move ARM Samsung cpufreq drivers to drivers/cpufreq/ [CPUFREQ/S3C64xx] Move S3C64xx CPUfreq driver into drivers/cpufreq [CPUFREQ] Handle CPUs with different capabilities in acpi-cpufreq commit ee05eff6f79c25617e5b7d7677b8f79d26abbe37 Merge: 933b447 b6c2f86 Author: Linus Torvalds Date: Sun Jul 24 20:55:48 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (145 commits) bnx2x: use pci_pcie_cap() bnx2x: fix bnx2x_stop_on_error flow in bnx2x_sp_rtnl_task bnx2x: enable internal target-read for 57712 and up only bnx2x: count statistic ramrods on EQ to prevent MC assert bnx2x: fix loopback for non 10G link bnx2x: dcb - send all unmapped priorities to same COS as L2 iwlwifi: Fix build with CONFIG_PM disabled. gre: fix improper error handling ipv4: use RT_TOS after some rt_tos conversions via-velocity: remove duplicated #include qlge: remove duplicated #include igb: remove duplicated #include can: c_can: remove duplicated #include bnad: remove duplicated #include net: allow netif_carrier to be called safely from IRQ bna: Header File Consolidation bna: HW Error Counter Fix bna: Add HW Semaphore Unlock Logic bna: IOC Event Name Change bna: Mboxq Flush When IOC Disabled ... commit 933b44732caad0c3b65224453c54846c75d97936 Author: Stephen Rothwell Date: Mon Jul 25 11:13:13 2011 +1000 gma500: udlay(20000) is too large So use mdelay(20) instead. Fixes this build error: ERROR: "__bad_udelay" [drivers/staging/gma500/psb_gfx.ko] undefined! Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 8c9f08f9de38c9af3a946faf0cccd7fc46978443 Author: Geert Uytterhoeven Date: Wed Jul 13 20:29:24 2011 +0200 m68k: Revive reporting of spurious interrupts commit 2502b667ea835ee16685c74b2a0d89ba8afe117a ("Change the m68knommu irq handling to use the generic irq framework.") removed the reporting of spurious interrupts on nommu (68328 and 68360). Bring it back in a generic way, using "atomic_t irq_err_count", as that's what most of the other architectures are using. Signed-off-by: Geert Uytterhoeven Signed-off-by: Greg Ungerer commit 739735d5fea3c3997b2a659068a618b07bc9a73a Author: Geert Uytterhoeven Date: Sun Jul 3 11:09:57 2011 +0200 m68knommu: Move forward declaration of do_IRQ() from machdep.h to irq.h It is not machine-specific, but common irq infrastructure. Also add the missing asmlinkage, to match its definition. Signed-off-by: Geert Uytterhoeven Signed-off-by: Greg Ungerer commit 35de674982aa13de98cf470c640895164017563e Author: Greg Ungerer Date: Mon Jul 4 15:30:55 2011 +1000 m68k: fix some atomic operation asm address modes for ColdFire The ColdFire processors have a much more limited set of addressing modes that can be used for most instructions. A number of the atomic operations have already been fixed to limit the addressing modes used with add and sub instructions when building for ColdFire. But we missed a few. Fix the remaining atomic operations to be clean for ColdFire processors. Signed-off-by: Greg Ungerer commit f3c23a28ace0a42ea06b5860b3bd25f71fc14c89 Author: Greg Ungerer Date: Mon Jul 4 14:23:09 2011 +1000 m68k: use CPU_HAS_NO_BITFIELDS for signal functions When reworking bitops.h to be clean for all processor types we introduced a CONFIG_CPU_HAS_NO_BITFIELDS define to signal whether this processor type supported the bit field instructions. The ARCH_SIG_BITOPS functions for m68k use these instruction types. We should base the use of these functions (or the generic versions) on the CONFIG_CPU_HAS_NO_BITFIELDS define. Signed-off-by: Greg Ungerer commit 7c946199cd5eab2917bb053ca6fdc6997d27aa7a Author: Greg Ungerer Date: Fri Jul 1 16:47:13 2011 +1000 m68k: merge and clean up delay.h files The real difference between the mmu and non-mmu varients of the delay.h files has nothing to do with having an mmu or not. It is processor family differences that means slightly different code. Merge the delay_mm.h and delay_no.h files back into a single file. The primarly difference we need to deal with is whether the processor supports a 32bit * 32bit -> 64bit multiply. Without it we need to do some shift scaling as well as use a 32bit * 32bit -> 32bit multiply. If building for a multi-CPU type kernel then we must use the simpler mult/shift scaling. This version of delay code allows the CPU32 family to use a 64bit mul, since it supports this instruction, the old code did not. The changes use macros where appropriate to try and optimize constant sized udelay times. And it removes the use of a fixed lib function for the non-mmu case. Code size on typical kernel configurations is similar, or only larger by a few tens of bytes. Also removed the unused muldiv() code from delay_mm.h. Build and run tested on ColdFire and ARAnyM. Build tested only on 68328 and 68360 (CPU32). Signed-off-by: Greg Ungerer commit 622e9472dd723d5c7dc034510faae4b113e5bbc2 Author: Greg Ungerer Date: Thu Jun 23 15:52:25 2011 +1000 m68knommu: correctly use trap_init Currently trap_init() is an empty function for m68knommu. Instead the vectors are being setup as part of the IRQ initialization. This is inconsistent with m68k and other architectures. Change the local init_vectors() to be trap_init(), and init the vectors at the correct time during startup. This will help merge of m68k and m68knommu trap code in the furture. Signed-off-by: Greg Ungerer commit f4a5437333e405e967be660430e58fc2355c62c8 Author: Greg Ungerer Date: Mon Jun 6 13:33:11 2011 +1000 m68knommu: merge ColdFire 5206 and 5206e platform code The ColdFire 5206 and 5206e CPU families are almost identical, we can easily merge the platform support code for them. All the differences are dealt with in the current include/asm/5206sim.h. Signed-off-by: Greg Ungerer commit 171d809df1896c1022f9778cd2788be6c255a7dc Author: Greg Ungerer Date: Tue May 17 16:45:00 2011 +1000 m68k: merge mmu and non-mmu bitops.h The following patch merges the mmu and non-mmu versions of the m68k bitops.h files. Now there is a good deal of difference between the two files, but none of it is actually an mmu specific difference. It is all about the specific m68k/coldfire varient we are targeting. So it makes an awful lot of sense to merge these into a single bitops.h. There is a number of ways I can see to factor this code. The approach I have taken here is to keep the various versions of each macro/function type together. This means that there is some ifdefery with each to handle each CPU type. I have added some comments in a couple of appropriate places to try and make it clear what the differences we are dealing with are. Specifically the instruction and addressing mode differences we have to deal with. The merged form keeps the same underlying optimizations for each CPU type for all the general bit clear/set/change and find bit operations. It does switch to using the generic le operations though, instead of any local varients. Build tested on ColdFire, 68328, 68360 (which is cpu32) and 68020+. Run tested on ColdFire and ARAnyM. Signed-off-by: Greg Ungerer Acked-by: Geert Uytterhoeven commit f941f5caa0e947f4ed060a751ca4a3bf552af625 Author: Greg Ungerer Date: Thu May 5 22:32:12 2011 +1000 m68k: merge MMU and non MMU versions of system.h The non-MMU m68k targets can use the same asm/system.h as the MMU targets. So switch the current system_mm.h to be system.h and remove system_no.h. The assembly support code for the non-MMU resume functions needs to be modified to match the now common switch_to() macro. Specifically this means correctly saving and restoring the status flags in the case of the ColdFire resume, and some reordering of the code to not use registers before they are saved or after they are restored. Signed-off-by: Greg Ungerer commit 10f939ff3ab80514da3bd96357bb54a8a59b9225 Author: Greg Ungerer Date: Wed May 4 13:55:56 2011 +1000 m68k: merge MMU and non-MMU versions of asm/hardirq.h The contents of asm/hardirq.h are pretty strait forward for both the MMU (hardirq_mm.h) and non-MMU (hardirq_no.h) include files. Merge the two back into a single file. Signed-off-by: Greg Ungerer commit a66af29876b086d8279b48515b83ced66803fb15 Author: Greg Ungerer Date: Tue Mar 29 15:23:51 2011 +1000 m68k: merge the non-mmu and mmu versions of module.c The non-mmu and mmu versions of the module loader module.c are nearly identical. Merge them back to a single module.c. There is a little bit of re-ordering of the struct and enum definitions in module.h to keep the ifdefery to a minimum. Signed-off-by: Greg Ungerer commit 6617eaf33d04836d31ea687e79ba9fef02fdbbe9 Author: Geert Uytterhoeven Date: Thu May 26 14:44:10 2011 +1000 m68knommu: Fix printk() format in free_initrd_mem() arch/m68k/mm/init_no.c:123: warning: format "%d" expects type "int", but argument 2 has type "long unsigned int" And use pr_notice() while we're at it. Signed-off-by: Geert Uytterhoeven Signed-off-by: Greg Ungerer commit 45d1564cceea8105c51b065acc8ec1312b81fbc1 Author: Geert Uytterhoeven Date: Wed May 25 11:10:59 2011 +0200 m68knommu: Make empty_zero_page "void *", like on m68k This allows to get rid of the casts. Signed-off-by: Geert Uytterhoeven Signed-off-by: Greg Ungerer commit 9962cc6eba013607d6199b723afca23301df7b47 Author: Ben Skeggs Date: Wed Jul 20 11:44:52 2011 +1000 drm/nouveau/gr: disable fifo access and idle before suspend ctx unload Signed-off-by: Ben Skeggs commit 6c320fef5835240bf414b54e697e517a160663f4 Author: Ben Skeggs Date: Wed Jul 20 11:22:33 2011 +1000 drm/nouveau: pass flag to engine fini() method on suspend It may not be necessary to fail in certain cases (such as failing to idle) on module unload, whereas on suspend it's important to ensure a consistent state can be restored on resume. Signed-off-by: Ben Skeggs commit 70ad25ab735a016c48183875f657d90d592b773d Author: Ben Skeggs Date: Wed Jul 20 11:04:46 2011 +1000 drm/nouveau: replace nv04_graph_fifo_access() use with direct reg bashing Signed-off-by: Ben Skeggs commit 12a30e267c162145df3c104d0f4aabff7bce56a5 Author: Ben Skeggs Date: Mon Jul 18 09:56:36 2011 +1000 drm/nv40/gr: rewrite/split context takedown functions It's completely pointless to save the PGRAPH context when destroying a channel, so don't bother. This commit should also fix kernel.org bug 39422, where the DRM channel state was incorrectly being saved because we left PGRAPH FIFO access enabled while running the ctxprog. Signed-off-by: Ben Skeggs commit 9717f3d953f294bf416258f6b1f2d9512babd337 Author: Ben Skeggs Date: Tue Jul 12 15:42:45 2011 +1000 drm/nouveau: detect disabled device in irq handler and return IRQ_NONE Signed-off-by: Ben Skeggs commit e19b20bbd291f13581975bd0bdc1d92ce2385cc4 Author: Ben Skeggs Date: Tue Jul 12 13:32:07 2011 +1000 drm/nouveau: ignore connector type when deciding digital/analog on DVI-I If the connector table is lying, which it often does on the boards of a particular manufacturer, we may end up doing the wrong thing. Listen to the encoder table instead, it's more reliable. Signed-off-by: Ben Skeggs commit f0d07d6e89e1abe75748dd506dee3df8f6b86864 Author: Emil Velikov Date: Sun Jul 10 10:59:29 2011 +0100 drm/nouveau: Add a quirk for Gigabyte NX86T The connector table lies, the card has DVI-I not HDMI Fixes bug https://bugs.freedesktop.org/show_bug.cgi?id=35675 v2: Mention the bugreport Signed-off-by: Emil Velikov Signed-off-by: Ben Skeggs commit 1541fa854273abee954ec4ca4ad65fe4ceb9e626 Author: Jesper Juhl Date: Mon Jul 4 09:46:53 2011 +1000 drm/nouveau: do not leak in nv20_graph_create If we return due to an unknown chipset in drivers/gpu/drm/nouveau/nv20_graph.c:nv20_graph_create() we'll leak the memory allocated to 'pgraph'. This patch should fix the leak. Signed-off-by: Jesper Juhl Reviewed-by: Marcin Slusarz Signed-off-by: Ben Skeggs commit 88c8431cbbccdb9ef7c13f0ba18022e2cb35c7f7 Author: Ben Skeggs Date: Thu Jun 30 09:03:36 2011 +1000 drm/nv50/dp: fix hack to work for macbooks booted via EFI Signed-off-by: Ben Skeggs commit a0c27ab2421c47dc7c53f797fffcc0d17cdb122c Author: Mark Brown Date: Thu Jul 21 14:58:05 2011 +0100 ASoC: Revert "ASoC: SAMSUNG: Add I2S0 internal dma driver" This reverts commit d7c3e9525ac8e898f1156a1f3a7c5038f6560186 as it does not currently build due to missing dependencies in the Samsung tree. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit f1f3b8eab7491b6d9c2f03dfaaa7cb66a156f94c Merge: b6844e8 3b5ec27 Author: Linus Torvalds Date: Sun Jul 24 14:34:01 2011 -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: PATA_ARASAN_CF depends on DMADEVICES ata: remove unnecessary code [libata] Prevent warning during PMP error recovery ahci: RAID-mode SATA patch for Intel Panther Point DeviceIDs pata_it821x: Fix RAID type display, by adding missing comma sata_dwc_460ex: fix error path ahci: Enable SB600 64bit DMA on Asus M3A libata: report link resume failure as KERN_WARNING instead of ERR ahci: move ahci_sb600_softreset to libahci.c and rename it libata: leave port thawed after reset failure ata: sata_via: Use dev_dbg ata: Add and use ata_print_version_once ata: Convert ata__printk(KERN_ to ata__ ata: Convert dev_printk(KERN_ to dev_( commit b6c2f86e6305be612f1196459f22343523f7049f Author: Vladislav Zolotarov Date: Sun Jul 24 03:58:38 2011 +0000 bnx2x: use pci_pcie_cap() Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit b1fb8740a279a96d8b6ceedfce334b887908b91d Author: Vladislav Zolotarov Date: Sun Jul 24 03:57:46 2011 +0000 bnx2x: fix bnx2x_stop_on_error flow in bnx2x_sp_rtnl_task Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 2189400b3c29a03360cbe2e3af3299eb5e2b950c Author: Shmulik Ravid Date: Sun Jul 24 03:57:04 2011 +0000 bnx2x: enable internal target-read for 57712 and up only Signed-off-by: Dmitry Kravkov Signed-off-by: Shmulik Ravid Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit d6cae2385f00522b3da8a5f964bf8dfa32a0d138 Author: Vladislav Zolotarov Date: Sun Jul 24 03:54:17 2011 +0000 bnx2x: count statistic ramrods on EQ to prevent MC assert This patch includes: - Counting statistics ramrods as EQ ramrods the way they should be. This accounting is meant to prevent MC asserts in case of software bugs. - Fixes in debug facilities which were added while working on one of such bugs. Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 1cb0c788e03da59f14699530aa031a07a89f0056 Author: Yaniv Rosner Date: Sun Jul 24 03:53:21 2011 +0000 bnx2x: fix loopback for non 10G link Also fixes minor formatting in that function. Signed-off-by: Dmitry Kravkov Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 09b775e7ec08ae92b8d976b7e34ba7f83b904c97 Author: Dmitry Kravkov Date: Sun Jul 24 04:09:43 2011 +0000 bnx2x: dcb - send all unmapped priorities to same COS as L2 As a result of DCBX negotiation some priorities maybe untouched and still unmapped to any COS; instead of sending them to COS0 we assign them to the same COS as L2 traffic - to avoid collisions with storage class of service. Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 262931339805ce8a7d25c5f75d5b2402013fc55d Author: David S. Miller Date: Sun Jul 24 13:09:32 2011 -0700 iwlwifi: Fix build with CONFIG_PM disabled. Signed-off-by: David S. Miller commit 07d5b38e14b7ff98eb52e4a6db4e20abcc608da3 Author: Daniel Drake Date: Sun Jul 24 18:34:30 2011 +0100 x86, olpc-xo15-sci: Enable EC wakeup capability Some recent changes to the way that ACPI handles wakeup flags means that the XO15EC ACPI device is not wakeup-capable by default so device_set_wakeup_enable() does nothing. Use device_init_wakeup() to mark the device as wakeup capable, and to enable wakeups. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/20110724173430.BE03C9D401C@zog.reactivated.net Signed-off-by: Ingo Molnar commit d8d01a6378db6e3eeb8777a8769c69e455635dc3 Author: Daniel Drake Date: Sun Jul 24 18:33:21 2011 +0100 x86, olpc: Fix dependency on POWER_SUPPLY As reported by Randy Dunlap, CONFIG_POWER_SUPPLY=m caused a compile error: arch/x86/built-in.o: In function `battery_status_changed': olpc-xo15-sci.c:(.text+0x3acdd): undefined reference to `power_supply_get_by_name' olpc-xo15-sci.c:(.text+0x3ad04): undefined reference to `power_supply_changed' The SCI drivers, as bool, require POWER_SUPPLY to be builtin. Use select to make that a hard requirement and avoid this build failure. Reported-by: Randy Dunlap Acked-by: Randy Dunlap Signed-off-by: Daniel Drake Signed-off-by: Ingo Molnar commit b6844e8f64920cdee620157252169ba63afb0c89 Merge: 2f17507 3ad5515 Author: Linus Torvalds Date: Sun Jul 24 10:20:54 2011 -0700 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (237 commits) ARM: 7004/1: fix traps.h compile warnings ARM: 6998/2: kernel: use proper memory barriers for bitops ARM: 6997/1: ep93xx: increase NR_BANKS to 16 for support of 128MB RAM ARM: Fix build errors caused by adding generic macros ARM: CPU hotplug: ensure we migrate all IRQs off a downed CPU ARM: CPU hotplug: pass in proper affinity mask on IRQ migration ARM: GIC: avoid routing interrupts to offline CPUs ARM: CPU hotplug: fix abuse of irqdesc->node ARM: 6981/2: mmci: adjust calculation of f_min ARM: 7000/1: LPAE: Use long long printk format for displaying the pud ARM: 6999/1: head, zImage: Always Enter the kernel in ARM state ARM: btc: avoid invalidating the branch target cache on kernel TLB maintanence ARM: ARM_DMA_ZONE_SIZE is no more ARM: mach-shark: move ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size ARM: mach-sa1100: move ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size ARM: mach-realview: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size ARM: mach-pxa: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size ARM: mach-ixp4xx: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size ARM: mach-h720x: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size ARM: mach-davinci: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size ... commit 2f175074e6811974ee77ddeb026f4d21aa3eca4d Author: Sasha Levin Date: Sun Jul 24 11:23:20 2011 +0300 Documentation: Update augmented rbtree documentation Current documentation referred to the old method of handling augmented trees. Update documentation to correspond with the changes done in commit b945d6b2554d ("rbtree: Undo augmented trees performance damage and regression"). Cc: Pekka Enberg Cc: David Woodhouse Cc: Andrew Morton Acked-by: Ingo Molnar Acked-by: Peter Zijlstra Signed-off-by: Sasha Levin Signed-off-by: Linus Torvalds commit 81d67439855a7f928d90965d832aa4f2fb677342 Author: Lasse Collin Date: Sun Jul 24 19:54:25 2011 +0300 XZ: Fix missing include is needed for min_t. The old version happened to work on x86 because indirectly includes , but it didn't work on ARM. includes so it's not necessary to include it explicitly anymore. Signed-off-by: Lasse Collin Cc: stable Signed-off-by: Linus Torvalds commit 21c7075fa5a756f1c95f6b463ff42cd320cc0301 Merge: ff0c4ad 73b7d40 Author: Linus Torvalds Date: Sun Jul 24 09:55:45 2011 -0700 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (21 commits) [S390] use siginfo for sigtrap signals [S390] dasd: add enhanced DASD statistics interface [S390] kvm: make sigp emerg smp capable [S390] disable cpu measurement alerts on a dying cpu [S390] initial cr0 bits [S390] iucv cr0 enablement bit [S390] race safe external interrupt registration [S390] remove tape block docu [S390] ap: toleration support for ap device type 10 [S390] cleanup program check handler prototypes [S390] remove kvm mmu reload on s390 [S390] Use gmap translation for accessing guest memory [S390] use gmap address spaces for kvm guest images [S390] kvm guest address space mapping [S390] fix s390 assembler code alignments [S390] move sie code to entry.S [S390] kvm: handle tprot intercepts [S390] qdio: clear shared DSCI before scheduling the queue handler [S390] reference bit testing for unmapped pages [S390] irqs: Do not trace arch_local_{*,irq_*} functions ... commit ff0c4ad2c3a75ccfe6adca916e50804eb45bb2d9 Merge: fcda12e 19f9d39 Author: Linus Torvalds Date: Sun Jul 24 09:55:18 2011 -0700 Merge branch 'for-upstream' of git://openrisc.net/jonas/linux * 'for-upstream' of git://openrisc.net/jonas/linux: (24 commits) OpenRISC: Add MAINTAINERS entry OpenRISC: Miscellaneous OpenRISC: Library routines OpenRISC: Headers OpenRISC: Traps OpenRISC: Module support OpenRISC: GPIO OpenRISC: Scheduling/Process management OpenRISC: Idle/Power management OpenRISC: System calls OpenRISC: IRQ OpenRISC: Timekeeping OpenRISC: DMA OpenRISC: PTrace OpenRISC: Build infrastructure OpenRISC: Signal handling OpenRISC: Memory management OpenRISC: Device tree OpenRISC: Boot code iomap: make IOPORT/PCI mapping functions conditional ... commit fcda12e7f6d58d61997681a9d41779e3fd2ffc94 Merge: 5fabc48 62a2635 Author: Linus Torvalds Date: Sun Jul 24 09:54:54 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: modpost: Fix modpost's license checking V3 module: add /sys/module//uevent files module: change attr callbacks to take struct module_kobject modules: make arch's use default loader hooks modules: add default loader hook implementations param: fix return value handling in param_set_* commit 5fabc487c96819dd12ddb9414835d170fd9cd6d5 Merge: c61264f 3f68b03 Author: Linus Torvalds Date: Sun Jul 24 09:07:03 2011 -0700 Merge branch 'kvm-updates/3.1' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/3.1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (143 commits) KVM: IOMMU: Disable device assignment without interrupt remapping KVM: MMU: trace mmio page fault KVM: MMU: mmio page fault support KVM: MMU: reorganize struct kvm_shadow_walk_iterator KVM: MMU: lockless walking shadow page table KVM: MMU: do not need atomicly to set/clear spte KVM: MMU: introduce the rules to modify shadow page table KVM: MMU: abstract some functions to handle fault pfn KVM: MMU: filter out the mmio pfn from the fault pfn KVM: MMU: remove bypass_guest_pf KVM: MMU: split kvm_mmu_free_page KVM: MMU: count used shadow pages on prepareing path KVM: MMU: rename 'pt_write' to 'emulate' KVM: MMU: cleanup for FNAME(fetch) KVM: MMU: optimize to handle dirty bit KVM: MMU: cache mmio info on page fault path KVM: x86: introduce vcpu_mmio_gva_to_gpa to cleanup the code KVM: MMU: do not update slot bitmap if spte is nonpresent KVM: MMU: fix walking shadow page table KVM guest: KVM Steal time registration ... commit c61264f98c1a974ee6f545f61a4ab33b141d6bda Merge: a23a334 bd9ddc8 Author: Linus Torvalds Date: Sun Jul 24 09:06:47 2011 -0700 Merge branch 'upstream/xen-tracing2' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen * 'upstream/xen-tracing2' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen: xen/trace: use class for multicall trace xen/trace: convert mmu events to use DECLARE_EVENT_CLASS()/DEFINE_EVENT() xen/multicall: move *idx fields to start of mc_buffer xen/multicall: special-case singleton hypercalls xen/multicalls: add unlikely around slowpath in __xen_mc_entry() xen/multicalls: disable MC_DEBUG xen/mmu: tune pgtable alloc/release xen/mmu: use extend_args for more mmuext updates xen/trace: add tlb flush tracepoints xen/trace: add segment desc tracing xen/trace: add xen_pgd_(un)pin tracepoints xen/trace: add ptpage alloc/release tracepoints xen/trace: add mmu tracepoints xen/trace: add multicall tracing xen/trace: set up tracepoint skeleton xen/multicalls: remove debugfs stats trace/xen: add skeleton for Xen trace events commit a23a334bd547e9462d9ca4a74608519a1e928848 Merge: a642285 acdca31 Author: Linus Torvalds Date: Sun Jul 24 09:05:32 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (34 commits) crypto: caam - ablkcipher support crypto: caam - faster aead implementation crypto: caam - structure renaming crypto: caam - shorter names crypto: talitos - don't bad_key in ablkcipher setkey crypto: talitos - remove unused giv from ablkcipher methods crypto: talitos - don't set done notification in hot path crypto: talitos - ensure request ordering within a single tfm crypto: gf128mul - fix call to memset() crypto: s390 - support hardware accelerated SHA-224 crypto: algif_hash - Handle initial af_alg_make_sg error correctly crypto: sha1_generic - use SHA1_BLOCK_SIZE hwrng: ppc4xx - add support for ppc4xx TRNG crypto: crypto4xx - Perform read/modify/write on device control register crypto: caam - fix build warning when DEBUG_FS not configured crypto: arc4 - Fixed coding style issues crypto: crc32c - Fixed coding style issue crypto: omap-sham - do not schedule tasklet if there is no active requests crypto: omap-sham - clear device flags when finishing request crypto: omap-sham - irq handler must not clear error code ... commit eda65cc6ce2a45dc01c233e301e59cd7a0f763ad Author: Al Viro Date: Sun Jul 24 04:32:53 2011 -0400 caam: don't pass bogus S_IFCHR to debugfs_create_...() it will be replaced with S_IFREG anyway Signed-off-by: Al Viro commit e55d92b92d240189241c22bfdfc885d4225a4d61 Author: Al Viro Date: Sun Jul 24 02:07:46 2011 -0400 get rid of create_proc_entry() abuses - proc_mkdir() is there for purpose Signed-off-by: Al Viro commit e772aed369779c98f44e83ccd7fb1b713953cd09 Author: Al Viro Date: Sat Jul 23 20:59:40 2011 -0400 asus-wmi: ->is_visible() can't return negative It's mode_t; return 0 (no access) on error. Signed-off-by: Al Viro commit 963945bf93e46b9bf71a07bf9c78183e0f57733a Author: Al Viro Date: Sat Jul 23 18:18:58 2011 -0400 fix jffs2 ACLs on big-endian with 16bit mode_t casting int * to mode_t * is not a good thing - on a *lot* of big-endian architectures mode_t happens to be smaller than int and there it breaks quite spectaculary... Fucked-up-by: commit cfc8dc6f6f69ede939e09c2af06a01adee577285 Signed-off-by: Al Viro commit 1ec95bf34d976b38897d1977b155a544d77b05e7 Author: Al Viro Date: Sat Jul 23 02:28:13 2011 -0400 9p: close ACL leaks Signed-off-by: Al Viro commit c0d960f038bdfe0fa73c9f698ba836ed20b672c9 Author: Al Viro Date: Sat Jul 23 00:22:31 2011 -0400 ocfs2_init_acl(): fix a leak Signed-off-by: Al Viro commit 423e0ab086ad8b33626e45fa94ac7613146b7ffa Author: Tim Chen Date: Tue Jul 19 09:32:38 2011 -0700 VFS : mount lock scalability for internal mounts For a number of file systems that don't have a mount point (e.g. sockfs and pipefs), they are not marked as long term. Therefore in mntput_no_expire, all locks in vfs_mount lock are taken instead of just local cpu's lock to aggregate reference counts when we release reference to file objects. In fact, only local lock need to have been taken to update ref counts as these file systems are in no danger of going away until we are ready to unregister them. The attached patch marks file systems using kern_mount without mount point as long term. The contentions of vfs_mount lock is now eliminated. Before un-registering such file system, kern_unmount should be called to remove the long term flag and make the mount point ready to be freed. Signed-off-by: Tim Chen Signed-off-by: Al Viro commit 62a2635610dbc83c5e8d724e00941eee4d18c186 Author: Alessio Igor Bogani Date: Thu Jul 14 08:51:16 2011 +0200 modpost: Fix modpost's license checking V3 The commit f02e8a6 sorts symbols placing each of them in its own elf section. The sorting and merging into the canonical sections are done by the linker. Unfortunately modpost to generate Module.symvers file parses vmlinux (already linked) and all modules object files (which aren't linked yet). These aren't sanitized by the linker yet. That breaks modpost that can't detect license properly for modules. This patch makes modpost aware of the new exported symbols structure. Thanks to Arnaud Lacombe and Anders Kaseorg for providing useful suggestions about code. This work was supported by a hardware donation from the CE Linux Forum. Reported-by: Jan Beulich Signed-off-by: Alessio Igor Bogani Signed-off-by: Rusty Russell commit 88bfa3247961fe5f3623f4d2cf1cd5dc72457598 Author: Kay Sievers Date: Sun Jul 24 22:06:04 2011 +0930 module: add /sys/module//uevent files Userspace wants to manage module parameters with udev rules. This currently only works for loaded modules, but not for built-in ones. To allow access to the built-in modules we need to re-trigger all module load events that happened before any userspace was running. We already do the same thing for all devices, subsystems(buses) and drivers. This adds the currently missing /sys/module//uevent files to all module entries. Signed-off-by: Kay Sievers Signed-off-by: Rusty Russell (split & trivial fix) commit 4befb026cf74b52fc7d382142bbfc0e9b6aab5e7 Author: Kay Sievers Date: Sun Jul 24 22:06:04 2011 +0930 module: change attr callbacks to take struct module_kobject This simplifies the next patch, where we have an attribute on a builtin module (ie. module == NULL). Signed-off-by: Kay Sievers Signed-off-by: Rusty Russell (split into 2) commit 66574cc05438dd0907029075d7e6ec5ac0036fbc Author: Jonas Bonn Date: Thu Jun 30 21:22:12 2011 +0200 modules: make arch's use default loader hooks This patch removes all the module loader hook implementations in the architecture specific code where the functionality is the same as that now provided by the recently added default hooks. Signed-off-by: Jonas Bonn Acked-by: Mike Frysinger Acked-by: Geert Uytterhoeven Tested-by: Michal Simek Signed-off-by: Rusty Russell commit 74e08fcf7bef973512a1f813700f802a93678670 Author: Jonas Bonn Date: Thu Jun 30 21:22:11 2011 +0200 modules: add default loader hook implementations The module loader code allows architectures to hook into the code by providing a small number of entry points that each arch must implement. This patch provides __weakly linked generic implementations of these entry points for architectures that don't need to do anything special. Signed-off-by: Jonas Bonn Signed-off-by: Rusty Russell commit 81c7413650fbbf881bcb9e567be61a6717eb1876 Author: Satoru Moriya Date: Thu May 26 19:38:04 2011 -0400 param: fix return value handling in param_set_* In STANDARD_PARAM_DEF, param_set_* handles the case in which strtolfn returns -EINVAL but it may return -ERANGE. If it returns -ERANGE, param_set_* may set uninitialized value to the paramerter. We should handle both cases. The one of the cases in which strtolfn() returns -ERANGE is following: *Type of module parameter is long *Set the parameter more than LONG_MAX Signed-off-by: Satoru Moriya Signed-off-by: Rusty Russell commit 0c27c1805269f9ff01cc1d77752a662065ebcfe5 Author: Vitaliy Kulikov Date: Fri Jul 22 17:50:37 2011 -0500 ALSA: hda - Add support of the 4 internal speakers on certain HP laptops Signed-off-by: Vitaliy Kulikov Signed-off-by: Takashi Iwai commit acb03d440b8a723181e1d45e3517e43cb0792f8a Author: Eliot Blennerhassett Date: Sat Jul 23 12:36:25 2011 +1200 ALSA: Make snd_pcm_debug_name usable outside pcm_lib Formatting a PCM name is useful for module debug too. Add snd_prefix when making function public. [minor coding-style fixes by tiwai] Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 3f68b0318bbbd61bf08478ab99a149f0d9e5156e Author: Alex Williamson Date: Thu Jul 14 13:27:03 2011 -0600 KVM: IOMMU: Disable device assignment without interrupt remapping IOMMU interrupt remapping support provides a further layer of isolation for device assignment by preventing arbitrary interrupt block DMA writes by a malicious guest from reaching the host. By default, we should require that the platform provides interrupt remapping support, with an opt-in mechanism for existing behavior. Both AMD IOMMU and Intel VT-d2 hardware support interrupt remapping, however we currently only have software support on the Intel side. Users wishing to re-enable device assignment when interrupt remapping is not supported on the platform can use the "allow_unsafe_assigned_interrupts=1" module option. [avi: break long lines] Signed-off-by: Alex Williamson Signed-off-by: Marcelo Tosatti Signed-off-by: Avi Kivity commit 4f0226482d20f104e943ee9e6f1218b573953f63 Author: Xiao Guangrong Date: Tue Jul 12 03:34:24 2011 +0800 KVM: MMU: trace mmio page fault Add tracepoints to trace mmio page fault Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit ce88decffd17bf9f373cc233c961ad2054965667 Author: Xiao Guangrong Date: Tue Jul 12 03:33:44 2011 +0800 KVM: MMU: mmio page fault support The idea is from Avi: | We could cache the result of a miss in an spte by using a reserved bit, and | checking the page fault error code (or seeing if we get an ept violation or | ept misconfiguration), so if we get repeated mmio on a page, we don't need to | search the slot list/tree. | (https://lkml.org/lkml/2011/2/22/221) When the page fault is caused by mmio, we cache the info in the shadow page table, and also set the reserved bits in the shadow page table, so if the mmio is caused again, we can quickly identify it and emulate it directly Searching mmio gfn in memslots is heavy since we need to walk all memeslots, it can be reduced by this feature, and also avoid walking guest page table for soft mmu. [jan: fix operator precedence issue] Signed-off-by: Xiao Guangrong Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity commit dd3bfd59dbc69fd970394ab354cfca5f959d5755 Author: Xiao Guangrong Date: Tue Jul 12 03:32:54 2011 +0800 KVM: MMU: reorganize struct kvm_shadow_walk_iterator Reorganize it for good using the cache Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit c2a2ac2b563ccc3a69540965b5a994c19e3817d7 Author: Xiao Guangrong Date: Tue Jul 12 03:32:13 2011 +0800 KVM: MMU: lockless walking shadow page table Use rcu to protect shadow pages table to be freed, so we can safely walk it, it should run fastly and is needed by mmio page fault Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 603e0651cfc8562b103454d7ded71f3ad1eb3a37 Author: Xiao Guangrong Date: Tue Jul 12 03:31:28 2011 +0800 KVM: MMU: do not need atomicly to set/clear spte Now, the spte is just from nonprsent to present or present to nonprsent, so we can use some trick to set/clear spte non-atomicly as linux kernel does Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 1df9f2dc39948c3cb900725b7f0754fb385c8354 Author: Xiao Guangrong Date: Tue Jul 12 03:30:35 2011 +0800 KVM: MMU: introduce the rules to modify shadow page table Introduce some interfaces to modify spte as linux kernel does: - mmu_spte_clear_track_bits, it set the spte from present to nonpresent, and track the stat bits(accessed/dirty) of spte - mmu_spte_clear_no_track, the same as mmu_spte_clear_track_bits except tracking the stat bits - mmu_spte_set, set spte from nonpresent to present - mmu_spte_update, only update the stat bits Now, it does not allowed to set spte from present to present, later, we can drop the atomicly opration for X86_32 host, and it is the preparing work to get spte on X86_32 host out of the mmu lock Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit d7c55201e66e9f702db575c9dfc2d34a7af6cf1f Author: Xiao Guangrong Date: Tue Jul 12 03:29:38 2011 +0800 KVM: MMU: abstract some functions to handle fault pfn Introduce handle_abnormal_pfn to handle fault pfn on page fault path, introduce mmu_invalid_pfn to handle fault pfn on prefetch path It is the preparing work for mmio page fault support Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit fce92dce79dbf5fff39c7ac2fb149729d79b7a39 Author: Xiao Guangrong Date: Tue Jul 12 03:28:54 2011 +0800 KVM: MMU: filter out the mmio pfn from the fault pfn If the page fault is caused by mmio, the gfn can not be found in memslots, and 'bad_pfn' is returned on gfn_to_hva path, so we can use 'bad_pfn' to identify the mmio page fault. And, to clarify the meaning of mmio pfn, we return fault page instead of bad page when the gfn is not allowd to prefetch Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit c37079586f317d7e7f1a70d36f0e5177691c89c2 Author: Xiao Guangrong Date: Tue Jul 12 03:28:04 2011 +0800 KVM: MMU: remove bypass_guest_pf The idea is from Avi: | Maybe it's time to kill off bypass_guest_pf=1. It's not as effective as | it used to be, since unsync pages always use shadow_trap_nonpresent_pte, | and since we convert between the two nonpresent_ptes during sync and unsync. Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit bd4c86eaa6ff10abc4e00d0f45d2a28b10b09df4 Author: Xiao Guangrong Date: Tue Jul 12 03:27:14 2011 +0800 KVM: MMU: split kvm_mmu_free_page Split kvm_mmu_free_page to kvm_mmu_isolate_page and kvm_mmu_free_page One is used to remove the page from cache under mmu lock and the other is used to free page table out of mmu lock Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit aa6bd187af013319c3f18be7b0970d9a3d1be696 Author: Xiao Guangrong Date: Tue Jul 12 03:26:40 2011 +0800 KVM: MMU: count used shadow pages on prepareing path Move counting used shadow pages from commiting path to preparing path to reduce tlb flush on some paths Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit b90a0e6c81d7b1fef0b7dea007015e1a56ab14c7 Author: Xiao Guangrong Date: Tue Jul 12 03:25:56 2011 +0800 KVM: MMU: rename 'pt_write' to 'emulate' If 'pt_write' is true, we need to emulate the fault. And in later patch, we need to emulate the fault even though it is not a pt_write event, so rename it to better fit the meaning Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit b36c7a7c10bf845b623ce187501b561d1d843a18 Author: Xiao Guangrong Date: Tue Jul 12 03:25:19 2011 +0800 KVM: MMU: cleanup for FNAME(fetch) gw->pte_access is the final access permission, since it is unified with gw->pt_access when we walked guest page table: FNAME(walk_addr_generic): pte_access = pt_access & FNAME(gpte_access)(vcpu, pte, true); Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 640d9b0dbe9f744ac8fd517a8f6afe238f8f525b Author: Xiao Guangrong Date: Tue Jul 12 03:24:39 2011 +0800 KVM: MMU: optimize to handle dirty bit If dirty bit is not set, we can make the pte access read-only to avoid handing dirty bit everywhere Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit bebb106a5afa32efdf5332ed4a40bf4d6d06b56e Author: Xiao Guangrong Date: Tue Jul 12 03:23:20 2011 +0800 KVM: MMU: cache mmio info on page fault path If the page fault is caused by mmio, we can cache the mmio info, later, we do not need to walk guest page table and quickly know it is a mmio fault while we emulate the mmio instruction Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit af7cc7d1ee422a612f6785e347a893d44cc892ea Author: Xiao Guangrong Date: Tue Jul 12 03:22:46 2011 +0800 KVM: x86: introduce vcpu_mmio_gva_to_gpa to cleanup the code Introduce vcpu_mmio_gva_to_gpa to translate the gva to gpa, we can use it to cleanup the code between read emulation and write emulation Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit ffb61bb3bca33ff8e68d11d7cb6b27ac0f74a2c0 Author: Xiao Guangrong Date: Tue Jul 12 03:22:01 2011 +0800 KVM: MMU: do not update slot bitmap if spte is nonpresent Set slot bitmap only if the spte is present Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 052331bea38dfc176322ec85642eb98d6803a762 Author: Xiao Guangrong Date: Tue Jul 12 03:21:17 2011 +0800 KVM: MMU: fix walking shadow page table Properly check the last mapping, and do not walk to the next level if last spte is met Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit d910f5c1064d7ff09c31b0191564f9f99e210f91 Author: Glauber Costa Date: Mon Jul 11 15:28:19 2011 -0400 KVM guest: KVM Steal time registration This patch implements the kvm bits of the steal time infrastructure. The most important part of it, is the steal time clock. It is an continuous clock that shows the accumulated amount of steal time since vcpu creation. It is supposed to survive cpu offlining/onlining. [marcelo: fix build with CONFIG_KVM_GUEST=n] Signed-off-by: Glauber Costa Acked-by: Rik van Riel Tested-by: Eric B Munson CC: Jeremy Fitzhardinge CC: Peter Zijlstra CC: Avi Kivity CC: Anthony Liguori Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 73b7d40ff1bcd44b4245c2714b88cf872fe44685 Author: Martin Schwidefsky Date: Sun Jul 24 10:48:33 2011 +0200 [S390] use siginfo for sigtrap signals Provide additional information on SIGTRAP by using a sig_info signal. Use TRAP_BRKPT for breakpoints via illegal operation and TRAP_HWBKPT for breakpoints via program event recording. Provide the address of the instruction that caused the breakpoint via si_addr. While we are at it get rid of tracehook_consider_fatal_signal. Signed-off-by: Martin Schwidefsky commit 4fa52aa7a82f9226b3874a69816bda3af821f002 Author: Stefan Weinhuber Date: Sun Jul 24 10:48:32 2011 +0200 [S390] dasd: add enhanced DASD statistics interface This patch extends the DASD statistics to allow for a more detailed analysis of DASD I/O operations. In particular we want the statistics to provide answers to the following questions: - How many requests used a PAV alias? - How many requests used High Performance FICON? - How do read request perform versus write requests? The existing DASD statistics interface has several shortcomings - The interface for global data is a formatted text table in procfs (/proc/dasd/statistics). The layout is meant for human readers and is not to easy to parse. If values get to large for the table layout, they get scaled down. - The statistics which are collected per block device can be accessed via an ioctl interface, which can only be extended by defining a new ioctl. - There is no statistics interface for individual PAV base and alias devices. To overcome theses shortcomings we create a new DASD statistics interface in debugfs. This interface will contain one entry for global data, one per DASD block device, and one per DASD base and alias device. Each file contains the statistic data in easy to parse name/value and name/array pairs. The existing interfaces will remain functional, but they will not be extended. Signed-off-by: Stefan Weinhuber Signed-off-by: Martin Schwidefsky commit 8bb3a2ebcf2a406a60d04f5a8756ea936b7f0bf3 Author: Christian Ehrhardt Date: Sun Jul 24 10:48:31 2011 +0200 [S390] kvm: make sigp emerg smp capable SIGP emerg needs to pass the source vpu adress into __LC_CPU_ADDRESS of the target guest. Signed-off-by: Christian Ehrhardt Signed-off-by: Martin Schwidefsky commit cadfce72778e9417baff117bb563a1c2f8fef97b Author: Jan Glauber Date: Sun Jul 24 10:48:30 2011 +0200 [S390] disable cpu measurement alerts on a dying cpu The cpu measurement alerts that are used for instance by oprofile for hardware sampling are not turned off on a cpu that is going offline. Add the appropriate control register bit that should be disabled to the list. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit c76e70d3784e00a89bf8359bcca51ae366b41527 Author: Martin Schwidefsky Date: Sun Jul 24 10:48:29 2011 +0200 [S390] initial cr0 bits Remove outdated bits from the initial cr0 register. Signed-off-by: Martin Schwidefsky commit 5beab99100335936f4d845f9ae2f0e25796f2584 Author: Martin Schwidefsky Date: Sun Jul 24 10:48:28 2011 +0200 [S390] iucv cr0 enablement bit Do not set the cr0 enablement bit for iucv by default in head[31|64].S, move the enablement to iucv_init in the iucv base layer. Signed-off-by: Martin Schwidefsky commit 89c9b66b104549a8698e412bf6f4140c1d0786fb Author: Jan Glauber Date: Sun Jul 24 10:48:27 2011 +0200 [S390] race safe external interrupt registration The (un-)register_external_interrupt functions are not race safe if more than one interrupt handler is added or deleted for an external interrupt concurrently. Make the registration / unregistration of external interrupts race safe by using RCU and a spinlock. RCU is used to avoid a performance penalty in the external interrupt handler, the register and unregister functions are protected by the spinlock and are not performance critical. call_rcu must be used since the SCLP driver uses the interface with IRQs disabled. Also use the generic list implementation rather than homebrewn list code. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 9e280f6693083baf1b7741c2b820be8d4109509e Author: Martin Schwidefsky Date: Sun Jul 24 10:48:26 2011 +0200 [S390] remove tape block docu After git commit 66ceed5ad1318863c21710f316942bcefff8081c removed the tape block device driver, remove its documentation as well. Signed-off-by: Martin Schwidefsky commit 6bed05bcbc8e5932e06059f0c3be1acdf30a39d4 Author: Holger Dengler Date: Sun Jul 24 10:48:25 2011 +0200 [S390] ap: toleration support for ap device type 10 Add toleration support for ap devices with device type 10. Signed-off-by: Holger Dengler Signed-off-by: Martin Schwidefsky commit fdb204d1a7746a90b0d8a8665bf59af98c8c366a Author: Martin Schwidefsky Date: Sun Jul 24 10:48:24 2011 +0200 [S390] cleanup program check handler prototypes Signed-off-by: Martin Schwidefsky commit f7850c92884b40915001e332a0a33ed4f10158e8 Author: Carsten Otte Date: Sun Jul 24 10:48:23 2011 +0200 [S390] remove kvm mmu reload on s390 This patch removes the mmu reload logic for kvm on s390. Via Martin's new gmap interface, we can safely add or remove memory slots while guest CPUs are in-flight. Thus, the mmu reload logic is not needed anymore. Signed-off-by: Carsten Otte Signed-off-by: Martin Schwidefsky commit 092670cd90eb88c33661de21f1b4ee08d2597171 Author: Carsten Otte Date: Sun Jul 24 10:48:22 2011 +0200 [S390] Use gmap translation for accessing guest memory This patch removes kvm-s390 internal assumption of a linear mapping of guest address space to user space. Previously, guest memory was translated to user addresses using a fixed offset (gmsor). The new code uses gmap_fault to resolve guest addresses. Signed-off-by: Carsten Otte Signed-off-by: Martin Schwidefsky commit 598841ca9919d008b520114d8a4378c4ce4e40a1 Author: Carsten Otte Date: Sun Jul 24 10:48:21 2011 +0200 [S390] use gmap address spaces for kvm guest images This patch switches kvm from using (Qemu's) user address space to Martin's gmap address space. This way QEMU does not have to use a linker script in order to fit large guests at low addresses in its address space. Signed-off-by: Carsten Otte Signed-off-by: Martin Schwidefsky commit e5992f2e6c3829cd43dbc4438ee13dcd6506f7f3 Author: Martin Schwidefsky Date: Sun Jul 24 10:48:20 2011 +0200 [S390] kvm guest address space mapping Add code that allows KVM to control the virtual memory layout that is seen by a guest. The guest address space uses a second page table that shares the last level pte-tables with the process page table. If a page is unmapped from the process page table it is automatically unmapped from the guest page table as well. The guest address space mapping starts out empty, KVM can map any individual 1MB segments from the process virtual memory to any 1MB aligned location in the guest virtual memory. If a target segment in the process virtual memory does not exist or is unmapped while a guest mapping exists the desired target address is stored as an invalid segment table entry in the guest page table. The population of the guest page table is fault driven. Signed-off-by: Martin Schwidefsky commit 144d634a21caff1d54cb4bb0d073774e88130045 Author: Jan Glauber Date: Sun Jul 24 10:48:19 2011 +0200 [S390] fix s390 assembler code alignments The alignment is missing for various global symbols in s390 assembly code. With a recent gcc and an instruction like stgrl this can lead to a specification exception if the instruction uses such a mis-aligned address. Specify the alignment explicitely and while add it define __ALIGN for s390 and use the ENTRY define to save some lines of code. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 603d1a50acf252621a3598618b018b8123aaba64 Author: Martin Schwidefsky Date: Sun Jul 24 10:48:18 2011 +0200 [S390] move sie code to entry.S The entry to / exit from sie has subtle dependencies to the first level interrupt handler. Move the sie assembler code to entry64.S and replace the SIE_HOOK callback with a test and the new _TIF_SIE bit. In addition this patch fixes several problems in regard to the check for the_TIF_EXIT_SIE bits. The old code checked the TIF bits before executing the interrupt handler and it only modified the instruction address if it pointed directly to the sie instruction. In both cases it could miss a TIF bit that normally would cause an exit from the guest and would reenter the guest context. Signed-off-by: Martin Schwidefsky commit bb25b9ba3e33e941dc48048d0a784e6a05e5648a Author: Christian Borntraeger Date: Sun Jul 24 10:48:17 2011 +0200 [S390] kvm: handle tprot intercepts When running a kvm guest we can get intercepts for tprot, if the host page table is read-only or not populated. This patch implements the most common case (linux memory detection). This also allows host copy on write for guest memory on newer systems. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit b02f0c2ea25781e0f94b4fc8f6f85582057857b3 Author: Jan Glauber Date: Sun Jul 24 10:48:00 2011 +0200 [S390] qdio: clear shared DSCI before scheduling the queue handler The following race can occur with qdio devices that use the shared device state change indicator: Device (Shared DSCI) CPU0 CPU1 =============================================================================== 1. DSCI 0 => 1, INT pending 2. Thinint handler * si_used = 1 * Inbound tasklet_schedule * DSCI 1 => 0 3. DSCI 0 => 1, INT pending 4. Thinint handler * si_used = 1 * Inbound tasklet_schedu le => NOP 5. Inbound tasklet run 6. DSCI = 1, INT surpressed 7. DSCI 1 => 0 The race would lead to a stall where new data in the input queue is not recognized so the device stops working in case of no further traffic. Fix the race by resetting the DSCI before scheduling the inbound tasklet so the device generates an interrupt if new data arrives in the above scenario in step 6. Reviewed-by: Ursula Braun Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 50a15981a1fac7e019ff7c3cba87531fb580f065 Author: Martin Schwidefsky Date: Sun Jul 24 10:47:59 2011 +0200 [S390] reference bit testing for unmapped pages On x86 a page without a mapper is by definition not referenced / old. The s390 architecture keeps the reference bit in the storage key and the current code will check the storage key for page without a mapper. This leads to an interesting effect: the first time an s390 system needs to write pages to swap it only finds referenced pages. This causes a lot of pages to get added and written to the swap device. To avoid this behaviour change page_referenced to query the storage key only if there is a mapper of the page. Signed-off-by: Martin Schwidefsky commit f433c4aec9999d1bf2ed8c328196f3b0ad5f75db Author: Steven Rostedt Date: Sun Jul 24 10:47:58 2011 +0200 [S390] irqs: Do not trace arch_local_{*,irq_*} functions Do not trace arch_local_save_flags(), arch_local_irq_*() and friends. Although they are marked inline, gcc may still make a function out of them and add it to the pool of functions that are traced by the function tracer. This can cause undesirable results (kernel panic, triple faults, etc). Add the notrace notation to prevent them from ever being traced. Cc: Heiko Carstens Signed-off-by: Steven Rostedt Signed-off-by: Martin Schwidefsky commit 284ecb00644cf28e5f530f92b4f820cb78f023aa Author: Martin Schwidefsky Date: Sun Jul 24 10:47:57 2011 +0200 [S390] kconfig: remove tape interface support comment There is nothing below the menu entry "S/390 tape interface support". Remove it. Signed-off-by: Martin Schwidefsky commit a642285014df03b8f320399d515bf3b779af07ac Author: Grant Likely Date: Sat Jul 23 23:52:48 2011 -0600 of: fix missing include from of_pci.c of_pci.c references symbols from linux/of.h. Signed-off-by: Grant Likely commit 559fafb94ad9e4cd8774f39241917c57396f9fc5 Author: xeb@mail.ru Date: Fri Jul 22 20:49:40 2011 +0000 gre: fix improper error handling Fix improper protocol err_handler, current implementation is fully unapplicable and may cause kernel crash due to double kfree_skb. Signed-off-by: Dmitry Kozlov Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit b0fe4a31849063fcac0bdc93716ca92615e93f57 Author: Julian Anastasov Date: Sat Jul 23 02:00:41 2011 +0000 ipv4: use RT_TOS after some rt_tos conversions rt_tos was changed to iph->tos but it must be filtered by RT_TOS Signed-off-by: Julian Anastasov Signed-off-by: David S. Miller commit f6226dec5081f55bf7820b74a9acb7b20a8930a5 Author: Huang Weiyi Date: Fri Jul 22 22:20:45 2011 +0000 via-velocity: remove duplicated #include Remove duplicated #include('s) in drivers/net/via-velocity.c Signed-off-by: Huang Weiyi Signed-off-by: David S. Miller commit 9413b314f4b3f02bda7d7a7d6e1cdfa5ad375e0e Author: Huang Weiyi Date: Fri Jul 22 22:20:25 2011 +0000 qlge: remove duplicated #include Remove duplicated #include('s) in drivers/net/qlge/qlge_main.c Signed-off-by: Huang Weiyi Signed-off-by: David S. Miller commit 48b03754dcdabb52bcb14f8288ca51f9bea8eb44 Author: Huang Weiyi Date: Fri Jul 22 22:20:01 2011 +0000 igb: remove duplicated #include Remove duplicated #include('s) in drivers/net/igb/igb_main.c Signed-off-by: Huang Weiyi Acked-by: Jeff Kirsher Signed-off-by: David S. Miller commit 4570a5248bafd9d06d31ab6f6ef337c90a2a4bc0 Author: Huang Weiyi Date: Fri Jul 22 22:19:40 2011 +0000 can: c_can: remove duplicated #include Remove duplicated #include('s) in drivers/net/can/c_can/c_can.c drivers/net/can/c_can/c_can_platform.c Signed-off-by: Huang Weiyi Signed-off-by: David S. Miller commit 4fa5ee31b4fd109536aa5745d8c6af7c3bfd6d3b Author: Huang Weiyi Date: Fri Jul 22 22:19:12 2011 +0000 bnad: remove duplicated #include Remove duplicated #include('s) in drivers/net/bna/bnad.c Signed-off-by: Huang Weiyi Signed-off-by: David S. Miller commit bcff25fc8aa47a13faff8b4b992589813f7b450a Author: Jan Kara Date: Fri Jul 1 13:31:25 2011 -0600 mm: properly reflect task dirty limits in dirty_exceeded logic We set bdi->dirty_exceeded (and thus ratelimiting code starts to call balance_dirty_pages() every 8 pages) when a per-bdi limit is exceeded or global limit is exceeded. But per-bdi limit also depends on the task. Thus different tasks reach the limit on that bdi at different levels of dirty pages. The result is that with current code bdi->dirty_exceeded ping-ponged between 1 and 0 depending on which task just got into balance_dirty_pages(). We fix the issue by clearing bdi->dirty_exceeded only when per-bdi amount of dirty pages drops below the threshold (7/8 * bdi_dirty_limit) where task limits already do not have any influence. Impact: The end result is, the dirty pages are kept more tightly under control, with the average number slightly lowered than before. This reduces the risk to throttle light dirtiers and hence more responsive. However it may add overheads by enforcing balance_dirty_pages() calls on every 8 pages when there are 2+ heavy dirtiers. CC: Andrew Morton CC: Christoph Hellwig CC: Dave Chinner CC: Peter Zijlstra Signed-off-by: Jan Kara Signed-off-by: Wu Fengguang commit fcc5c22218a18509a7412bf074fc9a7a5d874a8a Author: Wu Fengguang Date: Mon Jul 11 23:08:50 2011 -0700 writeback: don't busy retry writeback on new/freeing inodes Fix a system hang bug introduced by commit b7a2441f9966 ("writeback: remove writeback_control.more_io") and e8dfc3058 ("writeback: elevate queue_io() into wb_writeback()") easily reproducible with high memory pressure and lots of file creation/deletions, for example, a kernel build in limited memory. It hangs when some inode is in the I_NEW, I_FREEING or I_WILL_FREE state, the flusher will get stuck busy retrying that inode, never releasing wb->list_lock. The lock in turn blocks all kinds of other tasks when they are trying to grab it. As put by Jan, it's a safe change regarding data integrity. I_FREEING or I_WILL_FREE inodes are written back by iput_final() and it is reclaim code that is responsible for eventually removing them. So writeback code can safely ignore them. I_NEW inodes should move out of this state when they are fully set up and in the writeback round following that, we will consider them for writeback. So the change makes sense. CC: Jan Kara Reported-by: Hugh Dickins Tested-by: Hugh Dickins Signed-off-by: Wu Fengguang commit b7ca1e8ec53259359db5313f923a0a20fa04bdb6 Author: Robin Dong Date: Sat Jul 23 21:53:25 2011 -0400 ext4: correct comment for ext4_ext_check_cache The comment for ext4_ext_check_cache has a litte mistake. Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit 0737964bc98202776f4d10bc8e108f45b3115037 Author: Robin Dong Date: Sat Jul 23 21:51:07 2011 -0400 ext4: correct the debug message in ext4_ext_insert_extent The debug message in ext4_ext_insert_extent before moving extent is incorrect (the "from xx to xx"). Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit 5718789da5b94bd4148cb7ea0f457089c26bc1c3 Author: Robin Dong Date: Sat Jul 23 21:49:07 2011 -0400 ext4: remove unused argument in ext4_ext_next_leaf_block The argument "inode" in function ext4_ext_next_allocated_block looks useless, so clean it. Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit 3b5ec274daae9165e0fe101e85e13060e5d78dae Author: Randy Dunlap Date: Sun May 22 17:32:27 2011 -0700 ata: PATA_ARASAN_CF depends on DMADEVICES Fix kconfig unmet dependency warning: warning: (PATA_ARASAN_CF && VIDEO_TIMBERDALE && SND_SOC_SH4_SIU) selects DMA_ENGINE which has unmet direct dependencies (DMADEVICES) Signed-off-by: Randy Dunlap Cc: Viresh Kumar Signed-off-by: Jeff Garzik commit 47db477e46fa12eec40597b365ef1fad1cf17842 Author: Greg Dietsche Date: Thu Jun 16 11:39:21 2011 -0500 ata: remove unnecessary code Compile tested. remove unnecessary code that matches this coccinelle pattern if (...) return ret; return ret; Signed-off-by: Greg Dietsche Signed-off-by: Jeff Garzik commit d4d8eaff78b1b0043e7674bead7018e4db8b03ba Author: Gwendal Grignou Date: Fri Jul 22 13:48:32 2011 -0700 [libata] Prevent warning during PMP error recovery Cleanup sff_pio_task_link when a command is cancel while the pio_task thread has been scheduled. Signed-off-by: Gwendal Grignou Acked-by: Tejun Heo Signed-off-by: Jeff Garzik commit 2cab7a4c5ccf96e0954e767af490ba9aee2c9b6f Author: Seth Heasley Date: Thu Jul 14 16:50:49 2011 -0700 ahci: RAID-mode SATA patch for Intel Panther Point DeviceIDs This patch adds an additional SATA RAID controller DeviceID for the Intel Panther Point PCH. Signed-off-by: Seth Heasley Signed-off-by: Jeff Garzik commit 1c30c02757027ed2da1b0e26609ac8b9b1c2bb1f Author: Jean Delvare Date: Mon Jul 4 15:33:24 2011 +0200 pata_it821x: Fix RAID type display, by adding missing comma The missing comma causes the wrong RAID type to be displayed. Introduced by commit 963e4975c6f93c148ca809d986d412201df9af89 three years ago, odd that nobody noticed before. Signed-off-by: Jean Delvare Cc: Jeff Garzik Cc: Alan Cox Signed-off-by: Jeff Garzik commit 04e506b5e7bd61c3a99af9964f7f1177c17f3424 Author: Vasiliy Kulikov Date: Sun Jul 3 15:26:47 2011 +0400 sata_dwc_460ex: fix error path Fixed hsdev memleak on sata_dwc_probe() error. As dma_dwc_exit() can be called multiple times without sata_dma_regs and irq_dma changes, it might lead to double free on sequential dma_dwc_exit() calls. So, zero these fields after free calls. Signed-off-by: Vasiliy Kulikov Signed-off-by: Jeff Garzik commit 3c4aa91f21f65b7b40bdfb015eacbcb8453ccae2 Author: Mark Nelson Date: Mon Jun 27 16:33:44 2011 +1000 ahci: Enable SB600 64bit DMA on Asus M3A Like e65cc194f7628ecaa02462f22f42fb09b50dcd49 this patch enables 64bit DMA for the AHCI SATA controller of a board that has the SB600 southbridge. In this case though we're enabling 64bit DMA for the Asus M3A motherboard. It is a new enough board that all of the BIOS releases since the initial release (0301 from 2007-10-22) work correctly with 64bit DMA enabled. Signed-off-by: Mark Nelson Signed-off-by: Jeff Garzik commit 38941c9521e9ee6064b402dd460ac9dd2df89890 Author: Tejun Heo Date: Fri Jul 1 15:12:09 2011 +0200 libata: report link resume failure as KERN_WARNING instead of ERR Link resume failure in itself isn't an error condition and may happen regularly depending on hardware configuration. Reporting it as KERN_ERR makes the condition unnecessarily prominent (e.g. reported during boot). Use KERN_WARNING instead. Signed-off-by: Tejun Heo Reported-by: David Shaw Signed-off-by: Jeff Garzik commit 345347c5d767332d7352f220808fe9b5e4af8c6b Author: Yuan-Hsin Chen Date: Tue Jun 21 17:17:38 2011 +0800 ahci: move ahci_sb600_softreset to libahci.c and rename it ahci_sb600_softreset was in ahci.c. This function is used to fix soft reset failure and renames as ahci_pmp_retry_softreset in libahci.c. Signed-off-by: Yuan-Hsin Chen Signed-off-by: Jeff Garzik commit 8ea7645c5a949f9d0ea86edc0778713b5e63ab74 Author: Tejun Heo Date: Wed May 25 12:23:56 2011 +0200 libata: leave port thawed after reset failure libata EH intentionally left a port frozen if it failed ata_eh_reset(). The intention was avoiding continuous loop of resets when the controller or attached device is flaky and reporting spurious hotplug events. Once port enters this state, it can be recovered with manual rescan, which seemed reasonable. However, outside of my convoluted test setup, there have been very few reports justifying this choice while there have been more cases where the automatic freezing of the port after hotplug attempt of a faulty device caused confusion and led to unnecessary resets. This patch changes the behavior so that the port is thawed after reset failure. This change doesn't necessarily solve but makes it easier and more intuitive to work around hotplug related problems (ie. re-pluggin or power cycling the device) as reported in the followings. https://bugzilla.kernel.org/show_bug.cgi?id=34712 http://thread.gmane.org/gmane.linux.kernel/1123265/focus=49548 Signed-off-by: Tejun Heo Reported-by: Reartes Guillermo Reported-by: Bruce Stenning Signed-off-by: Jeff Garzik commit 5b933e6340ac652fb1800480744ea8c9fa591bbf Author: Joe Perches Date: Fri Apr 15 15:52:01 2011 -0700 ata: sata_via: Use dev_dbg Use normal debugging path for dynamic debug capability. Convert dev_printk(KERN_DEBUG to dev_dbg( Signed-off-by: Joe Perches Signed-off-by: Jeff Garzik commit 06296a1e684bcd40b9a28d5d8030809e4295528b Author: Joe Perches Date: Fri Apr 15 15:52:00 2011 -0700 ata: Add and use ata_print_version_once Use a single mechanism to show driver version. Reduces text a tiny bit too. Remove uses of static int printed_version Add and use ata_print_version(const struct device *, const char *ver) and ata_print_version_once. $ size drivers/ata/built-in.* text data bss dec hex filename 544969 73893 116584 735446 b38d6 drivers/ata/built-in.allyesconfig.ata.o 543870 73893 116592 734355 b34ad drivers/ata/built-in.allyesconfig.print_once.o 141328 14689 4220 160237 271ed drivers/ata/built-in.defconfig.ata.o 141212 14689 4220 160121 27179 drivers/ata/built-in.defconfig.print_once.o Signed-off-by: Joe Perches Signed-off-by: Jeff Garzik commit a9a79dfec239568bdbf778242f8fcd10bcc5b9e2 Author: Joe Perches Date: Fri Apr 15 15:51:59 2011 -0700 ata: Convert ata__printk(KERN_ to ata__ Saves text by removing nearly duplicated text format strings by creating ata__printk functions and printf extension %pV. ata defconfig size shrinks ~5% (~8KB), allyesconfig ~2.5% (~13KB) Format string duplication comes from: #define ata_link_printk(link, lv, fmt, args...) do { \ if (sata_pmp_attached((link)->ap) || (link)->ap->slave_link) \ printk("%sata%u.%02u: "fmt, lv, (link)->ap->print_id, \ (link)->pmp , ##args); \ else \ printk("%sata%u: "fmt, lv, (link)->ap->print_id , ##args); \ } while(0) Coalesce long formats. $ size drivers/ata/built-in.* text data bss dec hex filename 544969 73893 116584 735446 b38d6 drivers/ata/built-in.allyesconfig.ata.o 558429 73893 117864 750186 b726a drivers/ata/built-in.allyesconfig.dev_level.o 141328 14689 4220 160237 271ed drivers/ata/built-in.defconfig.ata.o 149567 14689 4220 168476 2921c drivers/ata/built-in.defconfig.dev_level.o Signed-off-by: Joe Perches Signed-off-by: Jeff Garzik commit a44fec1fce5d5d14cc3ac4545b8da346394de666 Author: Joe Perches Date: Fri Apr 15 15:51:58 2011 -0700 ata: Convert dev_printk(KERN_ to dev_( Saves a bit of text as the call takes fewer args. Coalesce a few formats. Convert a few bare printks to pr_cont. $ size drivers/ata/built-in.o* text data bss dec hex filename 558429 73893 117864 750186 b726a drivers/ata/built-in.o.allyesconfig.new 559574 73893 117888 751355 b76fb drivers/ata/built-in.o.allyesconfig.old 149567 14689 4220 168476 2921c drivers/ata/built-in.o.defconfig.new 149851 14689 4220 168760 29338 drivers/ata/built-in.o.defconfig.old Signed-off-by: Joe Perches Signed-off-by: Jeff Garzik commit 6d6be43d4dfdb167ef72f4aa665c1607db799be4 Merge: f5fc879 1061734 Author: Linus Torvalds Date: Sat Jul 23 14:05:44 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: (43 commits) Blackfin: spi-docs: further clarify GPIO CS behavior with various modes Blackfin: boards: fix pcm device name Blackfin: SMP: punt unused atomic_test_mask helper Blackfin: irqs: do not trace arch_local_{*,irq_*} functions Blackfin: bf526: restrict reboot workaround to 0.0 silicon Blackfin: bf51x: fix alternative portmux options Blackfin: bf54x: fix GPIO resume code Blackfin: dpmc: optimize SDRAM programming slightly Blackfin: dpmc: don't save/restore scratch registers Blackfin: bf538: pull gpio/port logic out of core hibernate paths Blackfin: dpmc: optimize hibernate/resume path Blackfin: dpmc: do not save/restore EVT0/EVT1/EVT4 when hibernating Blackfin: dpmc: relocate hibernate helper macros Blackfin: dpmc: omit RETE/RETN when hibernating Blackfin: dpmc: optimize SIC_IWR programming a little Blackfin: gpio/ints: generalize pint logic Blackfin: dpmc: bind to MMR names and not CPUs Blackfin: debug-mmrs: generalize pint logic Blackfin: bf54x: switch to common pint MMR struct Blackfin: bf54x: tweak MMR pint names ... commit 6a0fe49308dcac10ab510b3c45e00eb8d5ef440e Author: Tao Ma Date: Sat Jul 23 16:18:55 2011 -0400 ext4: remove ac_repeats from ext4_allocation_context ac_repeats isn't referenced in the mballoc code. So remove it. Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit ced156e464e49b6b4153ede9aaa04d9a4ad24e0c Author: Tao Ma Date: Sat Jul 23 16:18:05 2011 -0400 ext4: don't increment s_mb_buddies_generated in ext4_mb_release In ext4_mb_release, we use s_mb_buddies_generated++. Although the output is OK, but I don't think we need this extra ++. Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 529da704ad1ead755d9e40721f29446cb278e099 Author: Tao Ma Date: Sat Jul 23 16:07:26 2011 -0400 ext4: remove unnecessary ext4_get_group_info in ext4_mb_load_buddy ext4_mb_load_buddy() calls ext4_get_group_info() for setting both "grp" and "e4b->bd_info", but it could do "e4b->bd_info = grp". Reported-by: Andreas Dilger Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 0c12eaffdf09466f36a9ffe970dda8f4aeb6efc0 Author: Casey Bodley Date: Sat Jul 23 14:58:10 2011 -0400 nfsd: don't break lease on CLAIM_DELEGATE_CUR CLAIM_DELEGATE_CUR is used in response to a broken lease; allowing it to break the lease and return EAGAIN leaves the client unable to make progress in returning the delegation nfs4_get_vfs_file() now takes struct nfsd4_open for access to the claim type, and calls nfsd_open() with NFSD_MAY_NOT_BREAK_LEASE when claim type is CLAIM_DELEGATE_CUR Signed-off-by: Casey Bodley Cc: stable@kernel.org Signed-off-by: J. Bruce Fields commit 5757a6d76cdf6dda2a492c09b985c015e86779b1 Author: Dan Williams Date: Sat Jul 23 20:44:25 2011 +0200 block: strict rq_affinity Some systems benefit from completions always being steered to the strict requester cpu rather than the looser "per-socket" steering that blk_cpu_to_group() attempts by default. This is because the first CPU in the group mask ends up being completely overloaded with work, while the others (including the original submitter) has power left to spare. Allow the strict mode to be set by writing '2' to the sysfs control file. This is identical to the scheme used for the nomerges file, where '2' is a more aggressive setting than just being turned on. echo 2 > /sys/block//queue/rq_affinity Cc: Christoph Hellwig Cc: Roland Dreier Tested-by: Dave Jiang Signed-off-by: Dan Williams Signed-off-by: Jens Axboe commit ef3230880abd36553ab442363d3c9a0661f00769 Author: Mikulas Patocka Date: Sat Jul 23 20:44:24 2011 +0200 backing-dev: use synchronize_rcu_expedited instead of synchronize_rcu backing-dev: use synchronize_rcu_expedited instead of synchronize_rcu synchronize_rcu sleeps several timer ticks. synchronize_rcu_expedited is much faster. With 100Hz timer frequency, when we remove 10000 block devices with "dmsetup remove_all" command, it takes 27 minutes. With this patch, removing 10000 block devices takes only 15 seconds. Signed-off-by: Mikulas Patocka Signed-off-by: Jens Axboe commit 4c64500eada358165d0bb9a20d6c7d30821995b4 Author: Jens Axboe Date: Sat Jul 23 20:34:59 2011 +0200 block: fix patch import error in max_discard_sectors check A '!' snuck in before the unlikely, rendering it useless. Reported-by: Mike Snitzer Signed-off-by: Jens Axboe commit f5fc87905ea075a0b14878086fd4fe38be128844 Merge: d4e0670 9092335 Author: Linus Torvalds Date: Sat Jul 23 11:14:47 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: regulator: Convert tps65023 to use regmap API regmap: Add SPI bus support regmap: Add I2C bus support regmap: Add generic non-memory mapped register access API commit d4e06701b89286a306b31e20ec69a904fae374a1 Merge: e498037 87045b0 Author: Linus Torvalds Date: Sat Jul 23 11:13:11 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (77 commits) [SCSI] fix crash in scsi_dispatch_cmd() [SCSI] sr: check_events() ignore GET_EVENT when TUR says otherwise [SCSI] bnx2i: Fixed kernel panic due to illegal usage of sc->request->cpu [SCSI] bfa: Update the driver version to 3.0.2.1 [SCSI] bfa: Driver and BSG enhancements. [SCSI] bfa: Added support to query PHY. [SCSI] bfa: Added HBA diagnostics support. [SCSI] bfa: Added support for flash configuration [SCSI] bfa: Added support to obtain SFP info. [SCSI] bfa: Added support for CEE info and stats query. [SCSI] bfa: Extend BSG interface. [SCSI] bfa: FCS bug fixes. [SCSI] bfa: DMA memory allocation enhancement. [SCSI] bfa: Brocade-1860 Fabric Adapter vHBA support. [SCSI] bfa: Brocade-1860 Fabric Adapter PLL init fixes. [SCSI] bfa: Added Fabric Assigned Address(FAA) support [SCSI] bfa: IOC bug fixes. [SCSI] bfa: Enable ASIC block configuration and query. [SCSI] bnx2i: Updated copyright and bump version [SCSI] bnx2i: Modified to skip CNIC registration if iSCSI is not supported ... Fix up some trivial conflicts in: - drivers/scsi/bnx2fc/{bnx2fc.h,bnx2fc_fcoe.c}: Crazy broadcom version number conflicts - drivers/target/tcm_fc/tfc_cmd.c Just trivial cleanups done on adjacent lines commit e4980371059ca4a81ccdcb4381c41af8869ca711 Merge: 9d1c021 76531d4 Author: Linus Torvalds Date: Sat Jul 23 10:59:37 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (297 commits) ALSA: asihpi - Replace with snd_ctl_boolean_mono_info() ALSA: asihpi - HPI version 4.08 ALSA: asihpi - Add volume mute controls ALSA: asihpi - Control name updates ALSA: asihpi - Use size_t for sizeof result ALSA: asihpi - Explicitly include mutex.h ALSA: asihpi - Add new node and message defines ALSA: asihpi - Make local function static ALSA: asihpi - Fix minor typos and spelling ALSA: asihpi - Remove unused structures, macros and functions ALSA: asihpi - Remove spurious adapter index check ALSA: asihpi - Revise snd_pcm_debug_name, get rid of DEBUG_NAME macro ALSA: asihpi - DSP code loader API now independent of OS ALSA: asihpi - Remove controlex structs and associated special data transfer code ALSA: asihpi - Increase request and response buffer sizes ALSA: asihpi - Give more meaningful name to hpi request message type ALSA: usb-audio - Add quirk for Roland / BOSS BR-800 ALSA: hda - Remove a superfluous argument of via_auto_init_output() ALSA: hda - Fix indep-HP path (de-)activation for VT1708* codecs ALSA: hda - Add documentation for codec-specific mixer controls ... commit 9d1c02135516866cbbb2f80e20cfb65c63a3ce40 Merge: 807094c c9ffb05 Author: Linus Torvalds Date: Sat Jul 23 10:58:49 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs: net/9p: Fix the msize calculation. fs/9p: add 9P2000.L unlinkat operation fs/9p: add 9P2000.L renameat operation fs/9p: Always ask new inode in create fs/9p: Clean-up get_protocol_version() to use strcmp fs/9p: Fix invalid mount options/args fs/9p: When doing inode lookup compare qid details and inode mode bits. fs/9p: Fid is not valid after a failed clunk. net/9p: Remove structure not used in the code VirtIO can transfer VIRTQUEUE_NUM of pages. Fix the size of receive buffer packing onto VirtIO ring. 9p: clean up packet dump code fs/9p: remove rename work around in 9p net/9p: fix client code to fail more gracefully on protocol error commit 807094c0b1c41344def32b249d9faf7b5ebeb1e7 Author: Borislav Petkov Date: Sat Jul 23 10:39:29 2011 -0700 Documentation: refresh sysctl/kernel.txt Refresh sysctl/kernel.txt. More specifically, - drop stale index entries - sync and sort index and entries - reflow sticking out paragraphs to colwidth 72 - correct typos - cleanup whitespace Signed-off-by: Borislav Petkov Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 9fd615f466f6a463ebe05f04b2684cccc65c5317 Author: Wanlong Gao Date: Sat Jul 23 10:38:17 2011 -0700 Documentation: fix ambigous text for root cpuset Only the root cpuset has cpuset.memory_pressure_enabled flag, but not the only one. Signed-off-by: Wanlong Gao Signed-off-by: Randy Dunlap Acked-by: Paul Menage Signed-off-by: Linus Torvalds commit e47f9d84eec63484ae09f8c5b78ef605efa984a0 Author: Wanlong Gao Date: Sat Jul 23 10:37:01 2011 -0700 Documentation: fix echo command in cgroups/cpuacct.txt Must echo a task id to the cgroups' tasks file, but not to a directory. Signed-off-by: Wanlong Gao Acked-by: Paul Menage Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit b4db920c7f524b2cd0f5ae7efbbbbfd2c76a27da Merge: 7080d30 24a42ba 3e7cf5b 050438e 43605ef 3817505 df04967 14cb6dc Author: Linus Torvalds Date: Sat Jul 23 10:38:21 2011 -0700 Merge branches 'x86-detect-hyper-for-linus', 'x86-fpu-for-linus', 'x86-kexec-for-linus', 'x86-platform-for-linus', 'x86-quirks-for-linus', 'x86-tsc-for-linus' and 'x86-smpboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-detect-hyper-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, hyper: Change hypervisor detection order * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86-32, fpu: Fix DNA exception during check_fpu() * 'x86-kexec-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: kexec, x86: Fix incorrect jump back address if not preserving context * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, config: Introduce an INTEL_MID configuration * 'x86-quirks-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, quirks: Use pci_dev->revision * 'x86-tsc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: tsc: Remove unneeded DMI-based blacklisting * 'x86-smpboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, boot: Wait for boot cpu to show up if nr_cpus limit is about to hit commit 7080d306762f5e4a1418aec4f496af7f879c94c4 Merge: 148a7b1 079f85e Author: Linus Torvalds Date: Sat Jul 23 10:36:09 2011 -0700 Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, build: Do not set the root_dev field in bzImage commit 148a7b1725b3ca89ee13e410eec10ce2c2094d9b Merge: 9d07156 3824abd Author: Linus Torvalds Date: Sat Jul 23 10:35:43 2011 -0700 Merge branch 'x86-atomic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-atomic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Add support for cmpxchg_double commit 9d0715630ebf7bf70daa5e6d8db0e3061268c61e Merge: c0c463d 06c3df4 Author: Linus Torvalds Date: Sat Jul 23 10:34:47 2011 -0700 Merge branch 'timers-clocksource-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-clocksource-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: clocksource: apb: Share APB timer code with other platforms commit c0c463d34adf0c150e5e24fa412fa23f3f7ddc27 Merge: e725421 a03fc8c f505c55 a7de915 08a4a43 Author: Linus Torvalds Date: Sat Jul 23 10:33:08 2011 -0700 Merge branches 'x86-urgent-for-linus', 'core-debug-for-linus', 'irq-core-for-linus' and 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: um: Make rwsem.S depend on CONFIG_RWSEM_XCHGADD_ALGORITHM * 'core-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: debug: Make CONFIG_EXPERT select CONFIG_DEBUG_KERNEL to unhide debug options * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: genirq: Remove unused CHECK_IRQ_PER_CPU() * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: perf tools, x86: Fix 32-bit compile on 64-bit system commit 87045b033a62777337ae4aa62834876da09b5fb5 Merge: 0d83ab6 bfe159a Author: James Bottomley Date: Sat Jul 23 21:09:03 2011 +0400 Merge branch 'scsi-fixes' commit 8f398ae72fc7e03356fc1ee6b54beef79ba6be6a Author: Takashi Iwai Date: Sat Jul 23 18:57:11 2011 +0200 ALSA: hda - Fix DAC filling for multi-connection pins in Realtek parser Fix a regression in the DAC filling code in patch_realtek.c. The already filled DACs in multiout.dac_nids[] were ignored because of num_dacs=0, thus always pointed to the first DAC. Signed-off-by: Takashi Iwai commit c9ffb05ca5b5098d6ea468c909dd384d90da7d54 Author: Venkateswararao Jujjuri (JV) Date: Wed Jun 29 18:06:33 2011 -0700 net/9p: Fix the msize calculation. msize represents the maximum PDU size that includes P9_IOHDRSZ. Signed-off-by: Venkateswararao Jujjuri " Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 48e370ff93769ee6e592ddef3bb38686b8147c67 Author: Aneesh Kumar K.V Date: Tue Jun 28 15:41:18 2011 +0530 fs/9p: add 9P2000.L unlinkat operation unlinkat - Remove a directory entry size[4] Tunlinkat tag[2] dirfid[4] name[s] flag[4] size[4] Runlinkat tag[2] older Tremove have the below request format size[4] Tremove tag[2] fid[4] The remove message is used to remove a directory entry either file or directory The remove opreation is actually a directory opertation and should ideally have dirfid, if not we cannot represent the fid on server with anything other than name. We will have to derive the directory name from fid in the Tremove request. NOTE: The operation doesn't clunk the unlink fid. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 9e8fb38e7d7a00e5f63bbb331f0ea4c02286d5e6 Author: Aneesh Kumar K.V Date: Tue Jun 28 15:41:16 2011 +0530 fs/9p: add 9P2000.L renameat operation renameat - change name of file or directory size[4] Trenameat tag[2] olddirfid[4] oldname[s] newdirfid[4] newname[s] size[4] Rrenameat tag[2] older Trename have the below request format size[4] Trename tag[2] fid[4] newdirfid[4] name[s] The rename message is used to change the name of a file, possibly moving it to a new directory. The rename opreation is actually a directory opertation and should ideally have olddirfid, if not we cannot represent the fid on server with anything other than name. We will have to derive the old directory name from fid in the Trename request. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit ed80fcfac2565fa866d93ba14f0e75de17a8223e Author: Aneesh Kumar K.V Date: Wed Jul 6 16:32:31 2011 +0530 fs/9p: Always ask new inode in create This make sure we don't end up reusing the unlinked inode object. The ideal way is to use inode i_generation. But i_generation is not available in userspace always. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 4d63055fa9657aa402da25575045c23f37c3da05 Author: Prem Karat Date: Fri May 6 18:35:32 2011 +0530 fs/9p: Clean-up get_protocol_version() to use strcmp Signed-off-by: Prem Karat Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit a2dd43bb0d7b9ce28f8a39254c25840c0730498e Author: Prem Karat Date: Fri May 6 18:24:18 2011 +0530 fs/9p: Fix invalid mount options/args Without this fix, if any invalid mount options/args are passed while mouting the 9p fs, no error (-EINVAL) is returned and default arg value is assigned. This fix returns -EINVAL when an invalid arguement is found while parsing mount options. Signed-off-by: Prem Karat Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit fd2421f54423f307ecd31bdebdca6bc317e0c492 Author: Aneesh Kumar K.V Date: Mon Jul 11 16:40:59 2011 +0000 fs/9p: When doing inode lookup compare qid details and inode mode bits. This make sure we don't use wrong inode from the inode hash. The inode number of the file deleted is reused by the next file system object created and if we only use inode number for inode hash lookup we could end up with wrong struct inode. Also compare inode generation number. Not all Linux file system provide st_gen in userspace. So it could be 0; Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 5034990e28efb2d232ee82443a9edd62defd17ba Author: Aneesh Kumar K.V Date: Mon Jul 11 16:40:58 2011 +0000 fs/9p: Fid is not valid after a failed clunk. free the fid even in case of failed clunk. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 52c14ab3b51d000ca534e58f7f34e2dd53408b0a Author: Aneesh Kumar K.V Date: Thu Jul 7 08:44:03 2011 +0000 net/9p: Remove structure not used in the code Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 7f781679dd596c8abde8336b4d0d166d6a4aad04 Author: jvrao Date: Thu Jun 30 23:18:41 2011 +0000 VirtIO can transfer VIRTQUEUE_NUM of pages. Signed-off-by: Venkateswararao Jujjuri " Reviewed-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 114e6f3a5ede73d5b56e145f04680c61c3dd67c4 Author: jvrao Date: Thu Jun 30 23:18:39 2011 +0000 Fix the size of receive buffer packing onto VirtIO ring. Signed-off-by: Venkateswararao Jujjuri " Reviewed-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit e660a828f017991468ce322742586e8ebb047ae6 Author: Eric Van Hensbergen Date: Sun Jun 19 16:38:21 2011 -0500 9p: clean up packet dump code Switch to generic kernel hexdump library and cleanup macros to be more consistent with the way we do normal debug prints. Signed-off-by: Eric Van Hensbergen commit 2053d67c5451d92a3ddf58d944e1d6b0efc9c419 Author: Aneesh Kumar K.V Date: Mon Jun 6 18:01:47 2011 +0000 fs/9p: remove rename work around in 9p Now that VFS does the right thing remove the work around. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit b85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348 Author: Eric Van Hensbergen Date: Wed Jul 13 19:12:18 2011 -0500 net/9p: fix client code to fail more gracefully on protocol error There was a BUG_ON to protect against a bad id which could be dealt with more gracefully. Reported-by: Natalie Orlin Signed-off-by: Eric Van Hensbergen commit 90923351d480fffd0d24646db83f6f8315eed0d9 Author: Mark Brown Date: Sat Jun 18 01:18:51 2011 +0100 regulator: Convert tps65023 to use regmap API Signed-off-by: Mark Brown Acked-by: Liam Girdwood Acked-by: Grant Likely commit a676f083068b08e676c557279effbd7f4d590812 Author: Mark Brown Date: Thu May 12 11:42:10 2011 +0200 regmap: Add SPI bus support Signed-off-by: Mark Brown Acked-by: Liam Girdwood Acked-by: Wolfram Sang Acked-by: Grant Likely commit 9943fa300a5dcd4536e9a4aa5c09cf94e5e7b28c Author: Mark Brown Date: Mon Jun 20 19:02:29 2011 +0100 regmap: Add I2C bus support Signed-off-by: Mark Brown Acked-by: Liam Girdwood Acked-by: Wolfram Sang Acked-by: Grant Likely commit b83a313bf2520183641cf485d68cc273323597d2 Author: Mark Brown Date: Wed May 11 19:59:58 2011 +0200 regmap: Add generic non-memory mapped register access API There are many places in the tree where we implement register access for devices on non-memory mapped buses, especially I2C and SPI. Since hardware designers seem to have settled on a relatively consistent set of register interfaces this can be effectively factored out into shared code. There are a standard set of formats for marshalling data for exchange with the device, with the actual I/O mechanisms generally being simple byte streams. We create an abstraction for marshaling data into formats which can be sent on the control interfaces, and create a standard method for plugging in actual transport underneath that. This is mostly a refactoring and renaming of the bottom level of the existing code for sharing register I/O which we have in ASoC. A subsequent patch in this series converts ASoC to use this. The main difference in interface is that reads return values by writing to a location provided by a pointer rather than in the return value, ensuring we can use the full range of the type for register data. We also use unsigned types rather than ints for the same reason. As some of the devices can have very large register maps the existing ASoC code also contains infrastructure for managing register caches. This cache work will be moved over in a future stage to allow for separate review, the current patch only deals with the physical I/O. Signed-off-by: Mark Brown Acked-by: Liam Girdwood Acked-by: Greg Kroah-Hartman Acked-by: Wolfram Sang Acked-by: Grant Likely commit e72542191cbba4cf7fda21cb22e26b42d7415daf Author: Ohad Ben-Cohen Date: Tue Jul 5 17:06:14 2011 +0300 virtio: expose for non-virtualization users too virtio has been so far used only in the context of virtualization, and the virtio Kconfig was sourced directly by the relevant arch Kconfigs when VIRTUALIZATION was selected. Now that we start using virtio for inter-processor communications, we need to source the virtio Kconfig outside of the virtualization scope too. Moreover, some architectures might use virtio for both virtualization and inter-processor communications, so directly sourcing virtio might yield unexpected results due to conflicting selections. The simple solution offered by this patch is to always source virtio's Kconfig in drivers/Kconfig, and remove it from the appropriate arch Kconfigs. Additionally, a virtio menu entry has been added so virtio drivers don't show up in the general drivers menu. This way anyone can use virtio, though it's arguably less accessible (and neat!) for virtualization users now. Note: some architectures (mips and sh) seem to have a VIRTUALIZATION menu merely for sourcing virtio's Kconfig, so that menu is removed too. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Rusty Russell commit 10617340ce1491da7654d408d0d635ba98ef8350 Author: Mike Frysinger Date: Fri Jul 22 23:10:11 2011 -0400 Blackfin: spi-docs: further clarify GPIO CS behavior with various modes Signed-off-by: Mike Frysinger commit 2b6678c552ea05e7732fa1486ae1f56cb4a45f47 Author: Scott Jiang Date: Tue Jul 5 19:27:25 2011 -0400 Blackfin: boards: fix pcm device name The pcm driver name has been changed, but the device name has not. Signed-off-by: Scott Jiang Signed-off-by: Mike Frysinger commit 6ebc2bb92a35a651d0573d67664eb286505bb985 Author: Mike Frysinger Date: Fri Jun 17 17:30:29 2011 -0400 Blackfin: SMP: punt unused atomic_test_mask helper No one uses this func, so just punt it. Signed-off-by: Mike Frysinger commit a2de3f79b16a19b498c5591031735eb46151810a Author: Steven Rostedt Date: Fri Jul 1 23:04:38 2011 -0400 Blackfin: irqs: do not trace arch_local_{*,irq_*} functions Do not trace arch_local_save_flags(), arch_local_irq_*() and friends. Although they are marked inline, gcc may still make a function out of them and add it to the pool of functions that are traced by the function tracer. This can cause undesirable results (kernel panic, triple faults, etc). Add the notrace notation to prevent them from ever being traced. Signed-off-by: Steven Rostedt Signed-off-by: Mike Frysinger commit b0d3dc1291e862c17c003cb4a9a6e20c79f5bd78 Author: Mike Frysinger Date: Thu Jun 30 00:49:30 2011 -0400 Blackfin: bf526: restrict reboot workaround to 0.0 silicon The bug in the BF526 rom when doing a software reset exists only in older silicon versions, so don't clear SWRST on newer parts. Signed-off-by: Mike Frysinger commit 65cd3b5362e97d519befbfa786879b9760f72ec5 Author: Mike Frysinger Date: Wed Jun 29 16:29:41 2011 -0400 Blackfin: bf51x: fix alternative portmux options The BF51x's alternative portmux Kconfig options were copy & pasted from the BF52x, but never tweaked to reflect it. So drop the old options as they were never used (and were simply wrong), and add the BF51x specific pieces to the Kconfig and header. Signed-off-by: Mike Frysinger commit fdfb0becea3be2edf4200c4ea8cf8b6fe9daa89a Author: Mike Frysinger Date: Mon Jun 27 17:23:48 2011 -0400 Blackfin: bf54x: fix GPIO resume code Back in commit c03c2a87347b849ec927d, we fixed logic in the non-bf54x GPIO resume code to set the data levels properly before the direction to avoid spurious line glitches. But we missed the bf54x code paths. So add the same fix there. Signed-off-by: Mike Frysinger commit 9e770f77801fce713f5736c66f8441467eb36db5 Author: Mike Frysinger Date: Mon Jun 27 15:46:40 2011 -0400 Blackfin: dpmc: optimize SDRAM programming slightly No need to reload these registers constantly since they're always available (we're not making any function calls in between). Signed-off-by: Mike Frysinger commit da31d6fb46b7671622dbfd44c7f27b0c97dc2faa Author: Mike Frysinger Date: Mon Jun 27 15:43:56 2011 -0400 Blackfin: dpmc: don't save/restore scratch registers The Blackfin C ABI says we do not need to save/restore R0-R3 and P0-P2 as they are available as scratch registers. So don't bother. Signed-off-by: Mike Frysinger commit 9466a0510a5445d81eaf33affc20e2f7e2e718fb Author: Mike Frysinger Date: Mon Jun 27 14:46:14 2011 -0400 Blackfin: bf538: pull gpio/port logic out of core hibernate paths Re-architect how we save/restore the gpio/port logic that only pertains to bf538/bf539 parts by pulling it out of the core code paths and pushing it out to bf538-specific locations. Signed-off-by: Mike Frysinger commit eed7b8365807549c67613ea7d9a451262050ba3e Author: Mike Frysinger Date: Sun Jun 26 23:11:19 2011 -0400 Blackfin: dpmc: optimize hibernate/resume path The current save logic used in hibernation is to do a MMR load (base + offset) into a register, and then push that onto the stack. Then when restoring, pop off the stack into a register followed by a MMR store (base + offset). These use plenty of 32bit insns rather than 16bit, are pretty long winded, and full of pipeline bubbles. So, by taking advantage of MMRs that are contiguous, the multi-register push/pop insn, and register abuse, we can shrink this code considerably. When saving, the new logic does a lot of loads into the data and pointer registers before executing a single multi-register push insn. Then when restoring, we do a single multi-register pop insn followed by a lot of stores. Overall, this allows us to cut the insn count by ~30%, the code size by ~45%, and drastically reduce the register hazards that trigger bubbles in the pipeline. Signed-off-by: Mike Frysinger commit d7228e7eb9bd9d65ddb5338fc9574f34ea6d53e1 Author: Mike Frysinger Date: Mon Jun 27 02:57:44 2011 -0400 Blackfin: dpmc: do not save/restore EVT0/EVT1/EVT4 when hibernating EVT0 is for emulation, EVT1 is for reset, and EVT4 is the "global int disable" region. None of these are used by software (or even hardware), so don't bother saving/restoring them when we hibernate since nothing ever uses these in Linux (the only thing they would be useful for is core-memory scratch, but that's just crazy talk). Signed-off-by: Mike Frysinger commit 584ecbaa258de953a9bc34ce4b978b0033e54dc4 Author: Mike Frysinger Date: Sun Jun 26 14:11:24 2011 -0400 Blackfin: dpmc: relocate hibernate helper macros This defines only get used in the hibernate code, so remove them from the global dpmc header as no one else cares. Signed-off-by: Mike Frysinger commit 429e257ea3bdd14e2401ee3f92d2846773294273 Author: Mike Frysinger Date: Sun Jun 26 14:08:27 2011 -0400 Blackfin: dpmc: omit RETE/RETN when hibernating The RETE/RETN registers are only used in emulation(JTAG) and NMI nodes, or as scratch registers, neither of which need to be saved/restored as this code doesn't execute at those core event levels. Signed-off-by: Mike Frysinger commit 4705a25c06c99081c1ec2f48561e37738e566ebd Author: Mike Frysinger Date: Sun Jun 26 14:07:17 2011 -0400 Blackfin: dpmc: optimize SIC_IWR programming a little For parts with more than one SIC_IWR, we can optimize the writing a little bit using better Blackfin insns. Signed-off-by: Mike Frysinger commit 01f8e34c9855e5aa4f56a73b8d5ea8f7613dbb7e Author: Mike Frysinger Date: Sun Jun 26 13:56:23 2011 -0400 Blackfin: gpio/ints: generalize pint logic Have the logic that uses peripheral interrupt blocks key off of pint defines rather than CPU names so that things are generalized across families. Signed-off-by: Mike Frysinger commit 85c2737ae7c2b64c35862da3757b185e822a259b Author: Mike Frysinger Date: Sun Jun 26 13:55:24 2011 -0400 Blackfin: dpmc: bind to MMR names and not CPUs Have the code work off of MMR names rather than CPU defines so there is less code to tweak in the future with new parts. Signed-off-by: Mike Frysinger commit 0a7e5413ca17b59d09badc49b3be92e44c47247d Author: Mike Frysinger Date: Sun Jun 26 13:49:50 2011 -0400 Blackfin: debug-mmrs: generalize pint logic Don't bind the code to specific CPU defines. Signed-off-by: Mike Frysinger commit 82ed5f73eddf72af797bfc2736f9ef4b64316ed4 Author: Mike Frysinger Date: Sun Jun 26 13:22:05 2011 -0400 Blackfin: bf54x: switch to common pint MMR struct We have a struct in the headers describing the register layout, so drop the local duplicate one. Signed-off-by: Mike Frysinger commit b69c920cb11dde488239e6a4ea7f668983d628ac Author: Mike Frysinger Date: Sun Jun 26 13:00:55 2011 -0400 Blackfin: bf54x: tweak MMR pint names The hardware block uses the name "request" rather than "irq", so update the struct accordingly. Signed-off-by: Mike Frysinger commit b0759a4d233107b8f693c0834d4cb917d7fb3a7d Author: Mike Frysinger Date: Sun Jun 26 12:48:52 2011 -0400 Blackfin: bf54x: constify pint register array The array of pointers to register blocks never changes, so constify it. Signed-off-by: Mike Frysinger commit 1a9e5bfbd463d97afb12700eaddfaf29da256f5e Author: Mike Frysinger Date: Sun Jun 26 12:30:59 2011 -0400 Blackfin: gpio: punt unused GPIO_# defines These defines don't accomplish much as GPIO_# is the same thing as #. Each CPU already provides helpful symbolic defines like GPIO_ which everyone uses, so just punt these # ones. Signed-off-by: Mike Frysinger commit 969564508dfcfe8185ab8dfefb1a76aeee7a2123 Author: Mike Frysinger Date: Fri Jun 17 17:54:40 2011 -0400 Blackfin: convert unicode space gremlins Not sure how these guys slipped in, but they're annoying me. So bring these unicode space gremlins down to earth to normal ascii spaces. Signed-off-by: Mike Frysinger commit 006669ec21d99e161015150ffedeeaeaad513c3b Author: Mike Frysinger Date: Wed Jun 15 16:55:39 2011 -0400 Blackfin: pwm: implement linux/pwm.h API For now, this only supports gptimers. Support for dedicated PWM devices as found on newer parts to come. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit e1b55965337e2c0cd26055ce446c506448c08e6d Author: Mike Frysinger Date: Fri Jun 17 11:45:23 2011 -0400 Blackfin: gptimers: add enable/disable by timer id The API is geared around timer ids, except for the act of enabling and disabling timers. So add a small helper to fill out the gap. Signed-off-by: Mike Frysinger commit 353470cc5092400bbb08921016005ce03aa37f33 Author: Steven Miao Date: Thu Jun 16 18:01:20 2011 +0800 Blackfin: make sure percpu section is aligned in XIP builds The alignment is normally handled by PERCPU(), but we need to do it ourselves in the XIP build due to the custom layout. Signed-off-by: Steven Miao Signed-off-by: Mike Frysinger commit 997f95e1908d1b1e750a3a0695d31dbefd0c6c19 Author: Mike Frysinger Date: Wed Jun 15 16:54:46 2011 -0400 Blackfin: gptimers: use bfin read/write helpers Use proper helper macros for reading/writing the MMRs rather than volatile markings on the struct. Signed-off-by: Mike Frysinger commit 24a6b91f69047072b3708248d0612ddef825dab7 Author: Mike Frysinger Date: Wed Jun 15 16:53:48 2011 -0400 Blackfin: gptimers: use register structs from common header Now that asm/gptimers.h has the hardware register struct layout, there's no need to duplicate things locally. Signed-off-by: Mike Frysinger commit af459864b363ff1b1567741d52f5334ceb10d829 Author: Mike Frysinger Date: Wed Jun 15 16:53:12 2011 -0400 Blackfin: debug-mmrs: use new gptimer_group layout to simplify code Signed-off-by: Mike Frysinger commit 94674b15df4fdb111aeb2b07e67a818db5faa3c3 Author: Mike Frysinger Date: Thu Jun 16 18:22:11 2011 -0400 Blackfin: debug-mmrs: prevent macro arg from expanding Passing a non-simple expression in as the addr arg could incorrectly apply the pointer cast resulting in misbehavior. Add proper paren. Signed-off-by: Mike Frysinger commit 7595ac0711723dbc07e07ebb8c91ad56df4ab49d Author: Mike Frysinger Date: Wed Jun 15 16:52:37 2011 -0400 Blackfin: gptimers: add group structure for hardware register layout Signed-off-by: Mike Frysinger commit a64b384818b328aaea02914f8616e07631083f2f Author: Mathias Krause Date: Fri Jun 10 15:09:13 2011 +0200 Blackfin: exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause Signed-off-by: Mike Frysinger commit 979365ba4e4f29dd1b6f985bba66426423a26f27 Author: Mike Frysinger Date: Wed Jun 8 18:15:18 2011 -0400 Blackfin: update anomaly lists to latest public info Signed-off-by: Mike Frysinger commit 4e12b08b7228a607a6183186bbe21f269a287137 Author: Mike Frysinger Date: Wed Jun 8 16:03:36 2011 -0400 Blackfin: bf561-ezkit: change parallel flash from M to Y in defconfig These flashes are always on the board, so might as well enable them by default rather than a module. Signed-off-by: Mike Frysinger commit e14062563cd5702c656fc9bee14165564341be2b Author: Mike Frysinger Date: Wed Jun 8 15:48:57 2011 -0400 Blackfin: debug-mmrs: disable PERIPHERAL_MAP for IMDMA channels The documentation for the IMDMA channels appears to be incorrect. These DMA blocks don't actually have PERIPHERAL_MAP MMRs for us to access. Attempts to do so lead to system mmr hardware errors. Signed-off-by: Mike Frysinger commit ef0531b2e41fd2a0d0ba3ff3cb775947784cc278 Author: Mike Frysinger Date: Wed Jun 8 14:53:09 2011 -0400 Blackfin: debug-mmrs: fix typo in single dmac setup Signed-off-by: Mike Frysinger commit 50f92aa3348a1c810fa809c60227ec80f7a5fd41 Author: Mike Frysinger Date: Sun May 29 12:17:22 2011 -0400 Blackfin: convert to asm-generic/mutex-dec.h for all systems The Blackfin mutex.h is merely a copy of an older asm-generic/mutex-dec.h, so punt it and just use the common one directly. Signed-off-by: Mike Frysinger commit fb1d9be5967fff0a3c93b06304fd992e3c438b7f Author: Mike Frysinger Date: Sun May 29 23:12:51 2011 -0400 Blackfin: optimize double fault boot checking This moves the double fault data used at boot time into a single struct which can then easily be addressed with indexed loads rather than having to explicitly load multiple addresses. Signed-off-by: Mike Frysinger commit 072a5cff2fcaa4648c98bea6d549fac7ee4174fe Author: Mike Frysinger Date: Sun May 29 23:11:42 2011 -0400 Blackfin: time: replace magic numbers with defines Signed-off-by: Mike Frysinger commit b648072d3ef5d68cc9fa392dae19f8adc82231b7 Author: Mike Frysinger Date: Sun May 29 16:05:03 2011 -0400 Blackfin: SMP: optimize start up code a bit This just imports all of the optimization work done in the common startup code. Signed-off-by: Mike Frysinger commit 2f7d63f909900c555baf36a4c6a11e9bf8e1af18 Author: Mike Frysinger Date: Thu May 26 04:03:10 2011 -0400 Blackfin: boards: clean up redundant/dead spi resources The default for the Blackfin SPI driver is 8 bits and dma disabled, so many of the bfin5xx_spi_chip resources are redundant. So punt those parts. Further, drivers should themselves be declaring 16 bit transfers, so for those that do, and for the ones which no longer do 16 bit transfers, drop the bfin5xx_spi_chip resources. Signed-off-by: Mike Frysinger commit 9be8631b8a7d11fa6d206fcf0a7a2005ed39f41b Author: Mike Frysinger Date: Wed May 4 11:20:15 2011 -0400 Blackfin: net2272: move pin setup to boards files Signed-off-by: Mike Frysinger commit c6cb13f9fef2e401d9fbb0709d088e7c50fe7aea Author: Mike Frysinger Date: Thu Jun 23 14:10:35 2011 -0400 Blackfin: convert to kbuild asm-generic support No need for one line header stubs. Just declare it in Kbuild. Signed-off-by: Mike Frysinger commit bbd9d6f7fbb0305c9a592bf05a32e87eb364a4ff Merge: 8e20487 5a9a436 Author: Linus Torvalds Date: Fri Jul 22 19:02:39 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (107 commits) vfs: use ERR_CAST for err-ptr tossing in lookup_instantiate_filp isofs: Remove global fs lock jffs2: fix IN_DELETE_SELF on overwriting rename() killing a directory fix IN_DELETE_SELF on overwriting rename() on ramfs et.al. mm/truncate.c: fix build for CONFIG_BLOCK not enabled fs:update the NOTE of the file_operations structure Remove dead code in dget_parent() AFS: Fix silly characters in a comment switch d_add_ci() to d_splice_alias() in "found negative" case as well simplify gfs2_lookup() jfs_lookup(): don't bother with . or .. get rid of useless dget_parent() in btrfs rename() and link() get rid of useless dget_parent() in fs/btrfs/ioctl.c fs: push i_mutex and filemap_write_and_wait down into ->fsync() handlers drivers: fix up various ->llseek() implementations fs: handle SEEK_HOLE/SEEK_DATA properly in all fs's that define their own llseek Ext4: handle SEEK_HOLE/SEEK_DATA generically Btrfs: implement our own ->llseek fs: add SEEK_HOLE and SEEK_DATA flags reiserfs: make reiserfs default to barrier=flush ... Fix up trivial conflicts in fs/xfs/linux-2.6/xfs_super.c due to the new shrinker callout for the inode cache, that clashed with the xfs code to start the periodic workers later. commit 8e204874db000928e37199c2db82b7eb8966cc3c Merge: 3e0b8df aafade2 Author: Linus Torvalds Date: Fri Jul 22 17:05:15 2011 -0700 Merge branch 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86-64, vdso: Do not allocate memory for the vDSO clocksource: Change __ARCH_HAS_CLOCKSOURCE_DATA to a CONFIG option x86, vdso: Drop now wrong comment Document the vDSO and add a reference parser ia64: Replace clocksource.fsys_mmio with generic arch data x86-64: Move vread_tsc and vread_hpet into the vDSO clocksource: Replace vread with generic arch data x86-64: Add --no-undefined to vDSO build x86-64: Allow alternative patching in the vDSO x86: Make alternative instruction pointers relative x86-64: Improve vsyscall emulation CS and RIP handling x86-64: Emulate legacy vsyscalls x86-64: Fill unused parts of the vsyscall page with 0xcc x86-64: Remove vsyscall number 3 (venosys) x86-64: Map the HPET NX x86-64: Remove kernel.vsyscall64 sysctl x86-64: Give vvars their own page x86-64: Document some of entry_64.S x86-64: Fix alignment of jiffies variable commit 3e0b8df79ddb8955d2cce5e858972a9cfe763384 Merge: 8051207 ae90c23 Author: Linus Torvalds Date: Fri Jul 22 17:04:55 2011 -0700 Merge branch 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, UV: Correct UV2 BAU destination timeout x86, UV: Correct failed topology memory leak x86, UV: Remove cpumask_t from the stack x86, UV: Rename hubmask to pnmask x86, UV: Correct reset_with_ipi() x86, UV: Allow for non-consecutive sockets x86, UV: Inline header file functions x86, UV: Fix smp_processor_id() use in a preemptable region x66, UV: Enable 64-bit ACPI MFCG support for SGI UV2 platform x86, UV: Clean up uv_mmrs.h commit 805120795947008612ef64618bba8a6aa30cf88b Merge: 9e39264 73d382d Author: Linus Torvalds Date: Fri Jul 22 17:04:32 2011 -0700 Merge branch 'x86-signal-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-signal-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Kill handle_signal()->set_fs() x86, do_signal: Simplify the TS_RESTORE_SIGMASK logic x86, signals: Convert the X86_32 code to use set_current_blocked() x86, signals: Convert the IA32_EMULATION code to use set_current_blocked() commit 9e39264ed4f687251632c0a6f4a70c2e51719662 Merge: dc43d9f 1e01979 Author: Linus Torvalds Date: Fri Jul 22 17:04:18 2011 -0700 Merge branch 'x86-numa-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-numa-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, numa: Implement pfn -> nid mapping granularity check x86, mm: s/PAGES_PER_ELEMENT/PAGES_PER_SECTION/ commit dc43d9fa73d82083656fb9c02f4823bcdcfb9f91 Merge: 8077506 50c31e4 Author: Linus Torvalds Date: Fri Jul 22 17:04:04 2011 -0700 Merge branch 'x86-mtrr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-mtrr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, mtrr: Use pci_dev->revision x86, mtrr: use stop_machine APIs for doing MTRR rendezvous stop_machine: implement stop_machine_from_inactive_cpu() stop_machine: reorganize stop_cpus() implementation x86, mtrr: lock stop machine during MTRR rendezvous sequence commit 80775068dbcf849dca81316e43bcc309985956ac Merge: 7c6582b 40b7f3d Author: Linus Torvalds Date: Fri Jul 22 17:03:52 2011 -0700 Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, microcode, AMD: Fix section header size check x86, microcode, AMD: Correct buf references commit 7c6582b28a7debef031a8b7e31953c7d45ddb05d Merge: 227ad9b c7cece8 Author: Linus Torvalds Date: Fri Jul 22 17:03:40 2011 -0700 Merge branch 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, mce: Use mce_sysdev_ prefix to group functions x86, mce: Use mce_chrdev_ prefix to group functions x86, mce: Cleanup mce_read() x86, mce: Cleanup mce_create()/remove_device() x86, mce: Check the result of ancient_init() x86, mce: Introduce mce_gather_info() x86, mce: Replace MCM_ with MCI_MISC_ x86, mce: Replace MCE_SELF_VECTOR by irq_work x86, mce, severity: Clean up trivial coding style problems x86, mce, severity: Cleanup severity table x86, mce, severity: Make formatting a bit more readable x86, mce, severity: Fix two severities table signatures commit 227ad9bc070db2801a7f586b4d350dd1d8b82e03 Merge: 35b004c d80603c Author: Linus Torvalds Date: Fri Jul 22 17:03:14 2011 -0700 Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, efi: Properly pre-initialize table pointers x86, efi: Add infrastructure for UEFI 2.0 runtime services x86, efi: Fix argument types for SetVariable() commit 35b004cce1b0880876faecb8e0bd7cb2cb5a59d1 Merge: 0a613b6 17edf2d Author: Linus Torvalds Date: Fri Jul 22 17:02:54 2011 -0700 Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, intel, power: Correct the MSR_IA32_ENERGY_PERF_BIAS message x86, msr: Fix typo in ENERGY_PERF_BIAS_POWERSAVE x86, intel, power: Initialize MSR_IA32_ENERGY_PERF_BIAS commit 0a613b647bac0cfab7b7d81f11271883209a70ef Merge: eb47418 a6c2390 Author: Linus Torvalds Date: Fri Jul 22 17:02:38 2011 -0700 Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, smpboot: Mark the names[] array in __inquire_remote_apic() as const x86: Convert vmalloc()+memset() to vzalloc() commit eb47418dc56baaca33d270a868d8ddaa81150952 Merge: 2c9e88a a750036 Author: Linus Torvalds Date: Fri Jul 22 17:02:24 2011 -0700 Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Fix write lock scalability 64-bit issue x86: Unify rwsem assembly implementation x86: Unify rwlock assembly implementation x86, asm: Fix binutils 2.16 issue with __USER32_CS x86, asm: Cleanup thunk_64.S x86, asm: Flip RESTORE_ARGS arguments logic x86, asm: Flip SAVE_ARGS arguments logic x86, asm: Thin down SAVE/RESTORE_* asm macros commit 2c9e88a1085b3183e5f92170a74980e5654f817b Merge: 52de84f 42f0efc Author: Linus Torvalds Date: Fri Jul 22 17:02:07 2011 -0700 Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, ioapic: Print IR_IO_APIC_route_entry when IR is enabled x86, ioapic: Print IRTE when IR is enabled x86, x2apic: Preserve high 32-bits of IA32_APIC_BASE MSR x86, ioapic: Also print Dest field x86, ioapic: Format clean up for IOAPIC output x86: print APIC data a little later during boot commit f9035cd498486d5a82ad8ae9bcfdb91b3e57ec9d Merge: 1821f7c 41bf371 Author: David S. Miller Date: Fri Jul 22 17:01:44 2011 -0700 Merge branch 'for-davem' of ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 1821f7cd65ad9ea56580b830ac79bf4c4fef59cb Author: stephen hemminger Date: Fri Jul 22 12:53:56 2011 +0000 net: allow netif_carrier to be called safely from IRQ As reported by Ben Greer and Froncois Romieu. The code path in the netif_carrier code leads it to try and disable a late workqueue to reenable it immediately netif_carrier_on -> linkwatch_fire_event -> linkwatch_schedule_work -> cancel_delayed_work -> del_timer_sync If __cancel_delayed_work is used instead then there is no problem of waiting for running linkwatch_event. There is a race between linkwatch_event running re-scheduling but it is harmless to schedule an extra scan of the linkwatch queue. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 758ccc34389811c84382a79e198e4b6250ae0478 Author: Rasesh Mody Date: Fri Jul 22 08:07:49 2011 +0000 bna: Header File Consolidation Change details: - Consolidated bfa_sm.h and bfa_wc.h into bfa_cs.h Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit 9b08a4fce2245748f05b43e1c03fd1676079e003 Author: Rasesh Mody Date: Fri Jul 22 08:07:48 2011 +0000 bna: HW Error Counter Fix Change details: - Heartbeat failure counter is not incrementing under some scenarios. Update hbfails and hb_count stats during hwerror event. Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit d4e16d4285d93ea0c284a3cf547e61472f79f8d2 Author: Rasesh Mody Date: Fri Jul 22 08:07:47 2011 +0000 bna: Add HW Semaphore Unlock Logic Change details: - Added logic to unlock hw semaphore if the previos FW boot was from boot code (flash based) and the current FW initialization attempt is from OS driver. Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit f374b36103cf22c9416f1004b0302b03fad79547 Author: Rasesh Mody Date: Fri Jul 22 08:07:46 2011 +0000 bna: IOC Event Name Change Change details: - Changed event name IOC_E_PFAILED to IOC_E_PFFAILED Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit fdad400f1637576eacc8a45923103e965e086c28 Author: Rasesh Mody Date: Fri Jul 22 08:07:45 2011 +0000 bna: Mboxq Flush When IOC Disabled Change details: - If there is a command pending in the mailbox, bfa_ioc_mbox_queue() enqueues the mailbox command to a pending command queue. Entries in this queue are not flushed when IOC is disabled. As a result, when IOC is re-enabled again, the stale entries in the pending command queue are posted to the mailbox. When these mailbox commands are processed by the FW and responses are sent, unexpected events are received by other modules' FSMs (f.e. bfa_msgq) which have not posted any mailbox commands after IOC was enabled. - Flush the pending mailbox command queue when IOC is disabled. Rename bfa_ioc_mbox_hbfail to bfa_ioc_mbox_flush. Call bfa_ioc_mbox_flush from bfa_iocpf_sm_disabled_entry() Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit 8811e267d0443af9caca6f127d62c0119c96314f Author: Rasesh Mody Date: Fri Jul 22 08:07:44 2011 +0000 bna: Minor IRQ Index and Definition Change Change details: - Always set mbox irq index to zero and make corresponding changes in mbox irq alloc/sync function and txrx irq index calculation. Add definition of BNAD_INTX_TX_IB_BITMASK & BNAD_INTX_RX_IB_BITMASK and update bnad_txrx_irq_alloc accordingly. Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit ac51f60f50f742745b316d51bd12fcada5e7778d Author: Rasesh Mody Date: Fri Jul 22 08:07:43 2011 +0000 bna: State Machine Fault Handling Cleanup Chnage details: - The module name is not used in case of state machine fault, hence no longer passing the module name to the fault handler. Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit bd5a92e9a0eb03c4e7d04c64aa99e9050459faf5 Author: Rasesh Mody Date: Fri Jul 22 08:07:42 2011 +0000 bna: IOC Event Notification Enhancement Change details: - Replace IOC HB failure event notification with a more generic mechanism that is capable of sending enble, disable, and failed events to registered modules. As a result, cee module event handling callback bfa_cee_hbfail() is replaced with bfa_cee_notify() so that it can receive and handle different events from IOC. Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit 0120b99c8d56b5d3f2d80aaf8769dea05ef80439 Author: Rasesh Mody Date: Fri Jul 22 08:07:41 2011 +0000 bna: CheckPatch Cleanup Change details: - Driver cleanup as per new checkpatch v0.31 Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit 5aad00118fe8bc741725557372cd185d1ee1f248 Author: Rasesh Mody Date: Fri Jul 22 08:07:40 2011 +0000 bna: Print Driver Version Change details: - Print the dirver version when module is loaded. Signed-off-by: Rasesh Mody Signed-off-by: David S. Miller commit 160d73b8455edb1a12967e207790b1a93a4cb0e1 Author: stephen hemminger Date: Fri Jul 22 07:47:10 2011 +0000 bridge: minor cleanups Some minor cleanups that won't impact code: 1. Remove inline from non-critical functions; compiler will most likely inline them anyway. 2. Make function args const where possible. 3. Whitespace cleanup Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4ecb961c8b474ebef5aff55f715c7875e69dd57b Author: stephen hemminger Date: Fri Jul 22 07:47:09 2011 +0000 bridge: add notification over netlink when STP changes state When STP changes state of interface need to send a new link message to reflect that change. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 56139fc5bd6e740706993ab3ad0d0aeff69a8479 Author: stephen hemminger Date: Fri Jul 22 07:47:08 2011 +0000 bridge: notifier called with the wrong device If a new device is added to a bridge, the ethernet address of the bridge network device may change. When the address changes, the appropriate callback is called, but with the wrong device argument. The address of the bridge device (ie br0) changes not the address of the device being passed to add_if (ie eth0). Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0652cac22ce3fa0c90e35d0a2862969fc394cb02 Author: stephen hemminger Date: Fri Jul 22 07:47:07 2011 +0000 bridge: ignore bogus STP config packets If the message_age is already greater than the max_age, then the BPDU is bogus. Linux won't generate BPDU, but conformance tester or buggy implementation might. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0c03150e7ea8f7fcd03cfef29385e0010b22ee92 Author: stephen hemminger Date: Fri Jul 22 07:47:06 2011 +0000 bridge: send proper message_age in config BPDU A bridge topology with three systems: +------+ +------+ | A(2) |--| B(1) | +------+ +------+ \ / +------+ | C(3) | +------+ What is supposed to happen: * bridge with the lowest ID is elected root (for example: B) * C detects that A->C is higher cost path and puts in blocking state What happens. Bridge with lowest id (B) is elected correctly as root and things start out fine initially. But then config BPDU doesn't get transmitted from A -> C. Because of that the link from A-C is transistioned to the forwarding state. The root cause of this is that the configuration messages is generated with bogus message age, and dropped before sending. In the standardmessage_age is supposed to be: the time since the generation of the Configuration BPDU by the Root that instigated the generation of this Configuration BPDU. Reimplement this by recording the timestamp (age + jiffies) when recording config information. The old code incorrectly used the time elapsed on the ageing timer which was incorrect. See also: https://bugzilla.vyatta.com/show_bug.cgi?id=7164 Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 781223a15c510b4cb11328603bfc41ec8352f015 Author: Sergei Shtylyov Date: Fri Jul 22 05:50:25 2011 +0000 sbni: use pci_dev->subsystem_device The driver reads PCI subsystem ID from the PCI configuration register while it's already stored by the PCI subsystem in the 'subsystem_device' field of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: David S. Miller commit ccbae55e1c6dc18e95d72c044cf9345ea08abf7b Author: Sergei Shtylyov Date: Fri Jul 22 05:37:24 2011 +0000 r8169: use pci_dev->subsystem_{vendor|device} The driver reads PCI subsystem IDs from the PCI configuration registers while they are already stored by the PCI subsystem in the 'subsystem_{vendor|device}' fields of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: David S. Miller commit 52de84f3f3f407013a7f7872601e7a43a505abd3 Merge: 112ec46 ef68c8f Author: Linus Torvalds Date: Fri Jul 22 16:52:39 2011 -0700 Merge branch 'timers-rtc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-rtc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Serialize EFI time accesses on rtc_lock x86: Serialize SMP bootup CMOS accesses on rtc_lock rtc: stmp3xxx: Remove UIE handlers rtc: stmp3xxx: Get rid of mach-specific accessors rtc: stmp3xxx: Initialize drvdata before registering device rtc: stmp3xxx: Port stmp-functions to mxs-equivalents rtc: stmp3xxx: Restore register definitions rtc: vt8500: Use define instead of hardcoded value for status bit commit 112ec469663e09ffc815761254b52f3ca787ce83 Merge: a99a7d1 cbaa515 Author: Linus Torvalds Date: Fri Jul 22 16:52:18 2011 -0700 Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: time: Fix stupid KERN_WARN compile issue rtc: Avoid accumulating time drift in suspend/resume time: Avoid accumulating time drift in suspend/resume time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime commit a99a7d1436f9375662f35ccac8f1a1e1b0302a11 Merge: bdc7ccf ded7c1e Author: Linus Torvalds Date: Fri Jul 22 16:51:56 2011 -0700 Merge branch 'timers-cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: mips: Fix i8253 clockevent fallout i8253: Cleanup outb/inb magic arm: Footbridge: Use common i8253 clockevent mips: Use common i8253 clockevent x86: Use common i8253 clockevent i8253: Create common clockevent implementation i8253: Export i8253_lock unconditionally pcpskr: MIPS: Make config dependencies finer grained pcspkr: Cleanup Kconfig dependencies i8253: Move remaining content and delete asm/i8253.h i8253: Consolidate definitions of PIT_LATCH x86: i8253: Consolidate definitions of global_clock_event i8253: Alpha, PowerPC: Remove unused asm/8253pit.h alpha: i8253: Cleanup remaining users of i8253pit.h i8253: Remove I8253_LOCK config i8253: Make pcsp sound driver use the shared i8253_lock i8253: Make pcspkr input driver use the shared i8253_lock i8253: Consolidate all kernel definitions of i8253_lock i8253: Unify all kernel declarations of i8253_lock i8253: Create linux/i8253.h and use it in all 8253 related files commit b22570d9abb3d844e65c15c8bc0d57a78129e3b4 Author: Jan Kara Date: Sat Jul 23 01:21:38 2011 +0200 ext3: Fix data corruption in inodes with journalled data When journalling data for an inode (either because it is a symlink or because the filesystem is mounted in data=journal mode), ext3_evict_inode() can discard unwritten data by calling truncate_inode_pages(). This is because we don't mark the buffer / page dirty when journalling data but only add the buffer to the running transaction and thus mm does not know there are still unwritten data. Fix the problem by carefully tracking transaction containing inode's data, committing this transaction, and writing uncheckpointed buffers when inode should be reaped. Signed-off-by: Jan Kara commit bdc7ccfc0631797636837b10df7f87bc1e2e4ae3 Merge: 4d4abdc 0f31714 Author: Linus Torvalds Date: Fri Jul 22 16:45:02 2011 -0700 Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (24 commits) sched: Cleanup duplicate local variable in [enqueue|dequeue]_task_fair sched: Replace use of entity_key() sched: Separate group-scheduling code more clearly sched: Reorder root_domain to remove 64 bit alignment padding sched: Do not attempt to destroy uninitialized rt_bandwidth sched: Remove unused function cpu_cfs_rq() sched: Fix (harmless) typo 'CONFG_FAIR_GROUP_SCHED' sched, cgroup: Optimize load_balance_fair() sched: Don't update shares twice on on_rq parent sched: update correct entity's runtime in check_preempt_wakeup() xtensa: Use generic config PREEMPT definition h8300: Use generic config PREEMPT definition m32r: Use generic PREEMPT config sched: Skip autogroup when looking for all rt sched groups sched: Simplify mutex_spin_on_owner() sched: Remove rcu_read_lock() from wake_affine() sched: Generalize sleep inside spinlock detection sched: Make sleeping inside spinlock detection working in !CONFIG_PREEMPT sched: Isolate preempt counting in its own config option sched: Remove pointless in_atomic() definition check ... commit 4d4abdcb1dee03a4f9d6d2021622ed07e14dfd17 Merge: 0342cbc 7fcfd1a Author: Linus Torvalds Date: Fri Jul 22 16:44:39 2011 -0700 Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (123 commits) perf: Remove the nmi parameter from the oprofile_perf backend x86, perf: Make copy_from_user_nmi() a library function perf: Remove perf_event_attr::type check x86, perf: P4 PMU - Fix typos in comments and style cleanup perf tools: Make test use the preset debugfs path perf tools: Add automated tests for events parsing perf tools: De-opt the parse_events function perf script: Fix display of IP address for non-callchain path perf tools: Fix endian conversion reading event attr from file header perf tools: Add missing 'node' alias to the hw_cache[] array perf probe: Support adding probes on offline kernel modules perf probe: Add probed module in front of function perf probe: Introduce debuginfo to encapsulate dwarf information perf-probe: Move dwarf library routines to dwarf-aux.{c, h} perf probe: Remove redundant dwarf functions perf probe: Move strtailcmp to string.c perf probe: Rename DIE_FIND_CB_FOUND to DIE_FIND_CB_END tracing/kprobe: Update symbol reference when loading module tracing/kprobes: Support module init function probing kprobes: Return -ENOENT if probe point doesn't exist ... commit 0342cbcfced2ee937d7c8e1c63f3d3082da7c7dc Merge: 391d627 7f70893 Author: Linus Torvalds Date: Fri Jul 22 16:44:08 2011 -0700 Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rcu: Fix wrong check in list_splice_init_rcu() net,rcu: Convert call_rcu(xt_rateest_free_rcu) to kfree_rcu() sysctl,rcu: Convert call_rcu(free_head) to kfree vmalloc,rcu: Convert call_rcu(rcu_free_vb) to kfree_rcu() vmalloc,rcu: Convert call_rcu(rcu_free_va) to kfree_rcu() ipc,rcu: Convert call_rcu(ipc_immediate_free) to kfree_rcu() ipc,rcu: Convert call_rcu(free_un) to kfree_rcu() security,rcu: Convert call_rcu(sel_netport_free) to kfree_rcu() security,rcu: Convert call_rcu(sel_netnode_free) to kfree_rcu() ia64,rcu: Convert call_rcu(sn_irq_info_free) to kfree_rcu() block,rcu: Convert call_rcu(disk_free_ptbl_rcu_cb) to kfree_rcu() scsi,rcu: Convert call_rcu(fc_rport_free_rcu) to kfree_rcu() audit_tree,rcu: Convert call_rcu(__put_tree) to kfree_rcu() security,rcu: Convert call_rcu(whitelist_item_free) to kfree_rcu() md,rcu: Convert call_rcu(free_conf) to kfree_rcu() commit 391d6276db9fbdedfbc30e1b56390414f0e55988 Merge: 75b56ec dd4e5d3 Author: Linus Torvalds Date: Fri Jul 22 16:43:49 2011 -0700 Merge branch 'core-printk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-printk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: lockdep: Fix trace_[soft,hard]irqs_[on,off]() recursion printk: Fix console_sem vs logbuf_lock unlock race printk: Release console_sem after logbuf_lock commit 75b56ec294b074d70f8a676ab02611a3fea76cab Merge: 6d16d6d efbe2ee Author: Linus Torvalds Date: Fri Jul 22 16:43:21 2011 -0700 Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: lockdep: Fix lockdep_no_validate against IRQ states mutex: Make mutex_destroy() an inline function plist: Remove the need to supply locks to plist heads lockup detector: Fix reference to the non-existent CONFIG_DETECT_SOFTLOCKUP option commit 5a9a43646cf709312d71eca71cef90ad802f28f9 Author: Konstantin Khlebnikov Date: Sun Jul 17 15:35:12 2011 +0400 vfs: use ERR_CAST for err-ptr tossing in lookup_instantiate_filp Replace unclear (struct dentry *) to (struct file *) typecast with ERR_CAST() macro. Signed-off-by: Konstantin Khlebnikov Signed-off-by: Al Viro commit d769b3c2ab7184ddd42056595b627cc871caa90e Author: Jan Kara Date: Thu Jul 21 22:22:25 2011 +0200 isofs: Remove global fs lock sbi->s_mutex isn't needed for isofs at all so we can just remove it. Generally, since isofs is always mounted read-only, filesystem structure cannot change under us. So buffer_head contents stays constant after it's filled in. That leaves us with possible changes of global data structures. Superblock changes only during filesystem mount (even remount does not change it), inodes are only filled in during reading from disk. So there are no changes of these structures to bother about. Arguments why sbi->s_mutex can be removed at each place: isofs_readdir: Accesses sb, inode, filp, local variables => s_mutex not needed isofs_lookup: Protected by directory's i_mutex. Accesses sb, inode, dentry, local variables => s_mutex not needed rock_ridge_symlink_readpage: Protected by page lock. Accesses sb, inode, local variables => s_mutex not needed. Signed-off-by: Jan Kara Signed-off-by: Al Viro commit 22ba747f660c0acd14761628c24aa972d18058a0 Author: Al Viro Date: Thu Jul 21 15:57:47 2011 -0400 jffs2: fix IN_DELETE_SELF on overwriting rename() killing a directory We don't generate IN_DELETE_SELF on victim of overwriting rename() if it happens to be a directory. Trivially fixed by doing to ->i_nlink what we do ->pino_nlink a couple of lines later in jffs2_rename(). Signed-off-by: Al Viro commit 841590ce16c19a3ce38028adfc8b1955482ee00c Author: Al Viro Date: Thu Jul 21 15:49:09 2011 -0400 fix IN_DELETE_SELF on overwriting rename() on ramfs et.al. On ramfs and other simple_rename() users IN_DELETE_SELF is not generated for victim of overwriting rename() if it's is a directory. Works on most of the local filesystems and really trivial to fix... Signed-off-by: Al Viro commit ed70afcd6e795e3de98df56f1cd0f898fbf641a7 Author: Randy Dunlap Date: Thu Jul 21 13:55:37 2011 -0700 mm/truncate.c: fix build for CONFIG_BLOCK not enabled Fix build error when CONFIG_BLOCK is not enabled by providing a stub inode_dio_wait() function. mm/truncate.c:612: error: implicit declaration of function 'inode_dio_wait' Signed-off-by: Randy Dunlap Signed-off-by: Al Viro commit 6d16d6d9bb6f93e6f8506cfb3e91795d6443d54f Merge: 431bf99 b395fb3 Author: Linus Torvalds Date: Fri Jul 22 16:39:42 2011 -0700 Merge branch 'core-iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: iommu/core: Fix build with INTR_REMAP=y && CONFIG_DMAR=n iommu/amd: Don't use MSI address range for DMA addresses iommu/amd: Move missing parts to drivers/iommu iommu: Move iommu Kconfig entries to submenu x86/ia64: intel-iommu: move to drivers/iommu/ x86: amd_iommu: move to drivers/iommu/ msm: iommu: move to drivers/iommu/ drivers: iommu: move to a dedicated folder x86/amd-iommu: Store device alias as dev_data pointer x86/amd-iommu: Search for existind dev_data before allocting a new one x86/amd-iommu: Allow dev_data->alias to be NULL x86/amd-iommu: Use only dev_data in low-level domain attach/detach functions x86/amd-iommu: Use only dev_data for dte and iotlb flushing routines x86/amd-iommu: Store ATS state in dev_data x86/amd-iommu: Store devid in dev_data x86/amd-iommu: Introduce global dev_data_list x86/amd-iommu: Remove redundant device_flush_dte() calls iommu-api: Add missing header file Fix up trivial conflicts (independent additions close to each other) in drivers/Makefile and include/linux/pci.h commit 7644c16c7e7431fa398e834109dbb76dc1b51617 Author: Mike Waychison Date: Thu Jul 21 16:58:00 2011 -0400 efivars: Introduce PSTORE_EFI_ATTRIBUTES Consolidate the attributes listed for pstore operations in one place, PSTORE_EFI_ATTRIBUTES. Signed-off-by: Mike Waychison Signed-off-by: Tony Luck commit c475594d838c5c872e734f693a700df8c01b39d4 Author: Mike Waychison Date: Thu Jul 21 16:57:59 2011 -0400 efivars: Use string functions in pstore_write Instead of open-coding the string operations for comparing the prefix of the variable names, use the provided utf16_* string functions. This patch also changes the calls to efi.set_variable to efivars->ops->set_variable so that the right function gets called in the case of gsmi (which doesn't have a valid efi structure). As well, make sure that we only consider variables with the right vendor string. Signed-off-by: Mike Waychison Signed-off-by: Tony Luck commit 828aa1f00ec3508a4d813bd60d210de82929ac97 Author: Mike Waychison Date: Thu Jul 21 16:57:58 2011 -0400 efivars: introduce utf16_strncmp Introduce utf16_strncmp which is used in the next patch. Semantics should be the same as the strncmp C function. Signed-off-by: Mike Waychison Signed-off-by: Tony Luck commit a2940908391f3cee72e38769b30e829b22742b5b Author: Mike Waychison Date: Thu Jul 21 16:57:57 2011 -0400 efivars: String functions Fix the string functions in the efivars driver to be called utf16_* instead of utf8_* as the encoding is utf16, not utf8. As well, rename utf16_strlen to utf16_strnlen as it takes a maxlength argument and the name should be consistent with the standard C function names. utf16_strlen is still provided for convenience in a subsequent patch. Signed-off-by: Mike Waychison Signed-off-by: Tony Luck commit 5ee9c198a4208d7760275d48e4c4f6c89dcd2ef0 Author: Matthew Garrett Date: Thu Jul 21 16:57:56 2011 -0400 efi: Add support for using efivars as a pstore backend EFI provides an area of nonvolatile storage managed by the firmware. We can use this as a pstore backend to maintain copies of oopses, aiding diagnosis. Signed-off-by: Matthew Garrett Signed-off-by: Tony Luck commit dee28e72b619b48ec80a9e5509db458dbe66f71f Author: Matthew Garrett Date: Thu Jul 21 16:57:55 2011 -0400 pstore: Allow the user to explicitly choose a backend pstore only allows one backend to be registered at present, but the system may provide several. Add a parameter to allow the user to choose which backend will be used rather than just relying on load order. Signed-off-by: Matthew Garrett Signed-off-by: Tony Luck commit b94fdd077eef5e6cab56836bf62695b497946716 Author: Matthew Garrett Date: Thu Jul 21 16:57:54 2011 -0400 pstore: Make "part" unsigned We'll never have a negative part, so just make this an unsigned int. Signed-off-by: Matthew Garrett Signed-off-by: Tony Luck commit 56280682ceeef74b692b3e21d1872049eea7c887 Author: Matthew Garrett Date: Thu Jul 21 16:57:53 2011 -0400 pstore: Add extra context for writes and erases EFI only provides small amounts of individual storage, and conventionally puts metadata in the storage variable name. Rather than add a metadata header to the (already limited) variable storage, it's easier for us to modify pstore to pass all the information we need to construct a unique variable name to the appropriate functions. Signed-off-by: Matthew Garrett Signed-off-by: Tony Luck commit 638c1fd3033c76778e6d9975ad8a4a9cdd5b96d9 Author: Matthew Garrett Date: Thu Jul 21 16:57:52 2011 -0400 pstore: Extend API for more flexibility in new backends Some pstore implementations may not have a static context, so extend the API to pass the pstore_info struct to all calls and allow for a context pointer. Signed-off-by: Matthew Garrett Signed-off-by: Tony Luck commit 431bf99d26157d56689e5de65bd27ce9f077fc3f Merge: 72f96e0 7ae033c Author: Linus Torvalds Date: Fri Jul 22 16:01:57 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (51 commits) PM: Improve error code of pm_notifier_call_chain() PM: Add "RTC" to PM trace time stamps to avoid confusion PM / Suspend: Export suspend_set_ops, suspend_valid_only_mem PM / Suspend: Add .suspend_again() callback to suspend_ops PM / OPP: Introduce function to free cpufreq table ARM / shmobile: Return -EBUSY from A4LC power off if A3RV is active PM / Domains: Take .power_off() error code into account ARM / shmobile: Use genpd_queue_power_off_work() ARM / shmobile: Use pm_genpd_poweroff_unused() PM / Domains: Introduce function to power off all unused PM domains OMAP: PM: disable idle on suspend for GPIO and UART OMAP: PM: omap_device: add API to disable idle on suspend OMAP: PM: omap_device: add system PM methods for PM domain handling OMAP: PM: omap_device: conditionally use PM domain runtime helpers PM / Runtime: Add new helper function: pm_runtime_status_suspended() PM / Domains: Queue up power off work only if it is not pending PM / Domains: Improve handling of wakeup devices during system suspend PM / Domains: Do not restore all devices on power off error PM / Domains: Allow callbacks to execute all runtime PM helpers PM / Domains: Do not execute device callbacks under locks ... commit 72f96e0e38d7e29ba16dcfd824ecaebe38b8293e Merge: 17413f5 fa49515 Author: Linus Torvalds Date: Fri Jul 22 16:01:14 2011 -0700 Merge branch 'for-linus-core' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending * 'for-linus-core' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (38 commits) target: Bump version to v4.1.0-rc1-ml target: remove custom hex2bin() implementation target: fix typo Assoication -> Association target: Update QUEUE ALGORITHM MODIFIER control page default target: ->map_task_SG conversion to ->map_control_SG and ->map_data_SG target: Follow up core updates from AGrover and HCH (round 4) target: Eliminate usage of struct se_mem target: Pass 2nd param of transport_split_cdb by value target: Enforce 1 page max for control cdb buffer sizes target: Make all control CDBs scatter-gather target: Implement Block Device Characteristics VPD page target: Fix reporting of supported VPD pages target: Allow for built-in target modules tcm_fc: Convert to wake_up_process and schedule_timeout_interruptible tcm_fc: Makefile cleanups loopback: Fix memory leak in tcm_loop_make_scsi_hba() loopback: Remove duplicate scsi/scsi_tcq.h include loopback: off by one in tcm_loop_make_naa_tpg() target/iblock: Remove unused iblock_dev members target/iblock: Use request_queue->nr_request for se_device defaults ... commit 3ad55155b222f2a901405dea20ff7c68828ecd92 Merge: 06f365a 6645cb6 Author: Russell King Date: Fri Jul 22 23:09:07 2011 +0100 Merge branch 'devel-stable' into for-next Conflicts: arch/arm/kernel/entry-armv.S commit 06f365acef5ca54fd5708a0d853c4a89609536f1 Merge: 4348810 022ae53 30891c9 e7d59db e2f8184 4cde7e0 7f294e4 29cb3cd 19dad35 Author: Russell King Date: Fri Jul 22 23:08:48 2011 +0100 Merge branches 'btc', 'dma', 'entry', 'fixes', 'linker-layout', 'misc', 'mmci', 'suspend' and 'vfp' into for-next commit 17413f5acd03224bcd09eefc5c4088894e832cad Merge: 5a791ea 688d3be Author: Linus Torvalds Date: Fri Jul 22 15:07:35 2011 -0700 Merge branch 'for-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu * 'for-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: percpu: Fixup __this_cpu_xchg* operations commit 5a791ea4fa4495f7136679cb5366f6544148e613 Merge: 8209f53 9c5a2ba Author: Linus Torvalds Date: Fri Jul 22 15:07:15 2011 -0700 Merge branch 'for-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq * 'for-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: workqueue: separate out drain_workqueue() from destroy_workqueue() workqueue: remove cancel_rearming_delayed_work[queue]() commit 8209f53d79444747782a28520187abaf689761f2 Merge: 22a3b97 eac1b5e Author: Linus Torvalds Date: Fri Jul 22 15:06:50 2011 -0700 Merge branch 'ptrace' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc * 'ptrace' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc: (39 commits) ptrace: do_wait(traced_leader_killed_by_mt_exec) can block forever ptrace: fix ptrace_signal() && STOP_DEQUEUED interaction connector: add an event for monitoring process tracers ptrace: dont send SIGSTOP on auto-attach if PT_SEIZED ptrace: mv send-SIGSTOP from do_fork() to ptrace_init_task() ptrace_init_task: initialize child->jobctl explicitly has_stopped_jobs: s/task_is_stopped/SIGNAL_STOP_STOPPED/ ptrace: make former thread ID available via PTRACE_GETEVENTMSG after PTRACE_EVENT_EXEC stop ptrace: wait_consider_task: s/same_thread_group/ptrace_reparented/ ptrace: kill real_parent_is_ptracer() in in favor of ptrace_reparented() ptrace: ptrace_reparented() should check same_thread_group() redefine thread_group_leader() as exit_signal >= 0 do not change dead_task->exit_signal kill task_detached() reparent_leader: check EXIT_DEAD instead of task_detached() make do_notify_parent() __must_check, update the callers __ptrace_detach: avoid task_detached(), check do_notify_parent() kill tracehook_notify_death() make do_notify_parent() return bool ptrace: s/tracehook_tracer_task()/ptrace_parent()/ ... commit 22a3b9771117d566def0150ea787fcc95f16e724 Merge: acb41c0 a91f423 Author: Linus Torvalds Date: Fri Jul 22 15:02:58 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (31 commits) HID: fix support for Microsoft comfort mouse 4500 HID: hid-multitouch: add one new multitouch device's VID/PID HID: prodikeys: remove a redundant forward declaration of struct pcmidi_snd HID: prodikeys: make needlessly global symbols static HID: emsff: properly handle emsff_init failure HID: ACRUX - add missing hid_hw_stop() in ax_probe() error path HID: fix horizontal wheel for ms comfort mouse 4500 HID: uclogic: Add support for UC-Logic WP1062 HID: wiimote: Add sysfs support to wiimote driver HID: wiimote: Cache wiimote led state HID: wiimote: Add wiimote led request HID: wiimote: Add wiimote input button parser HID: wiimote: Add wiimote event handler HID: wiimote: Add output queue for wiimote driver HID: wiimote: Add wiimote send function HID: wiimote: Synchronize wiimote input and hid event handling HID: wiimote: Register input device in wiimote hid driver HID: wiimote: Add wiimote device structure HID: wiimote: Register wiimote hid driver stub HID: wiimote: Add Nintendo Wii Remote driver stub ... commit acb41c0f928fdb84a1c3753ac92c534a2a0f08d2 Merge: 8181780 ef3b4f8 Author: Linus Torvalds Date: Fri Jul 22 14:54:02 2011 -0700 Merge branch 'of-pci' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'of-pci' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: pci/of: Consolidate pci_bus_to_OF_node() pci/of: Consolidate pci_device_to_OF_node() x86/devicetree: Use generic PCI <-> OF matching microblaze/pci: Move the remains of pci_32.c to pci-common.c microblaze/pci: Remove powermac originated cruft pci/of: Match PCI devices to OF nodes dynamically commit 8181780c163e7111f15619067cfa044172d532e1 Merge: 7235dd7 99ce39e Author: Linus Torvalds Date: Fri Jul 22 14:53:38 2011 -0700 Merge branch 'devicetree/next' of git://git.secretlab.ca/git/linux-2.6 * 'devicetree/next' of git://git.secretlab.ca/git/linux-2.6: dt: include linux/errno.h in linux/of_address.h of/address: Add of_find_matching_node_by_address helper dt: remove extra xsysace platform_driver registration tty/serial: Add devicetree support for nVidia Tegra serial ports dt: add empty of_property_read_u32[_array] for non-dt dt: bindings: move SEC node under new crypto/ dt: add helper function to read u32 arrays tty/serial: change of_serial to use new of_property_read_u32() api dt: add 'const' for of_property_read_string parameter **out_string dt: add helper functions to read u32 and string property values tty: of_serial: support for 32 bit accesses dt: document the of_serial bindings dt/platform: allow device name to be overridden drivers/amba: create devices from device tree dt: add of_platform_populate() for creating device from the device tree dt: Add default match table for bus ids commit 7235dd74a4733d4b3651349b5261d2e06996427d Merge: c7c8518 22a85e4 Author: Linus Torvalds Date: Fri Jul 22 14:52:44 2011 -0700 Merge branch 'spi/next' of git://git.secretlab.ca/git/linux-2.6 * 'spi/next' of git://git.secretlab.ca/git/linux-2.6: (34 commits) spi/imx: add device tree probe support spi/imx: copy gpio number passed by platform data into driver private data spi/imx: use soc name in spi device type naming scheme spi/imx: merge type SPI_IMX_VER_0_7 into SPI_IMX_VER_0_4 spi/imx: do not use spi_imx2_3 to name SPI_IMX_VER_2_3 function and macro spi/imx: use mx21 to name SPI_IMX_VER_0_0 function and macro spi/imx: do not make copy of spi_imx_devtype_data spi/dw: Add spi number into spi irq desc spi/tegra: Use engineering names in DT compatible property spi/fsl_spi: fix CPM spi driver mach-s3c2410: remove unused spi-gpio.h file spi: remove obsolete spi-s3c24xx-gpio driver mach-gta2: remove unused spi-gpio.h include mach-qt2410: convert to spi_gpio mach-jive: convert to spi_gpio spi/pxa2xx: Remove unavailable ssp_type from documentation spi/bfin_spi: uninline fat queue funcs spi/bfin_spi: constify pin array spi/bfin_spi: use structs for accessing hardware regs spi/topcliff-pch: Support new device ML7223 IOH ... Fix up trivial conflict in arch/arm/mach-ep93xx/Makefile commit 41bf37117b47fc5ce2aae91f6a108e7e42e0b046 Merge: 415b333 6e6e8c5 Author: John W. Linville Date: Fri Jul 22 17:51:16 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit c7c8518498e82591d7784452f5674c3aeb4d079c Merge: ece236c 591567a Author: Linus Torvalds Date: Fri Jul 22 14:50:57 2011 -0700 Merge branch 'gpio/next' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/next' of git://git.secretlab.ca/git/linux-2.6: (61 commits) gpio/mxc/mxs: fix build error introduced by the irq_gc_ack() renaming mcp23s08: add i2c support mcp23s08: isolate spi specific parts mcp23s08: get rid of setup/teardown callbacks gpio/tegra: dt: add binding for gpio polarity mcp23s08: remove unused work queue gpio/da9052: remove a redundant assignment for gpio->da9052 gpio/mxc: add device tree probe support ARM: mxc: use ARCH_NR_GPIOS to define gpio number gpio/mxc: get rid of the uses of cpu_is_mx() gpio/mxc: add missing initialization of basic_mmio_gpio shadow variables gpio: Move mpc5200 gpio driver to drivers/gpio GPIO: DA9052 GPIO module v3 gpio/tegra: Use engineering names in DT compatible property of/gpio: Add new method for getting gpios under different property names gpio/dt: Refine GPIO device tree binding gpio/ml-ioh: fix off-by-one for displaying variable i in dev_err gpio/pca953x: Deprecate meaningless device-tree bindings gpio/pca953x: Remove dynamic platform data pointer gpio/pca953x: Fix IRQ support. ... commit ece236ce2fad9c27a6fd2530f899289025194bce Merge: 441c196 4460207 Author: Linus Torvalds Date: Fri Jul 22 14:50:12 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (26 commits) IB/qib: Defer HCA error events to tasklet mlx4_core: Bump the driver version to 1.0 RDMA/cxgb4: Use printk_ratelimited() instead of printk_ratelimit() IB/mlx4: Support PMA counters for IBoE IB/mlx4: Use flow counters on IBoE ports IB/pma: Add include file for IBA performance counters definitions mlx4_core: Add network flow counters mlx4_core: Fix location of counter index in QP context struct mlx4_core: Read extended capabilities into the flags field mlx4_core: Extend capability flags to 64 bits IB/mlx4: Generate GID change events in IBoE code IB/core: Add GID change event RDMA/cma: Don't allow IPoIB port space for IBoE RDMA: Allow for NULL .modify_device() and .modify_port() methods IB/qib: Update active link width IB/qib: Fix potential deadlock with link down interrupt IB/qib: Add sysfs interface to read free contexts IB/mthca: Remove unnecessary read of PCI_CAP_ID_EXP IB/qib: Remove double define IB/qib: Remove unnecessary read of PCI_CAP_ID_EXP ... commit 441c196e84b11aad3123baa9320eee7abc6b5c98 Merge: 951cc93 9a00c24 Author: Linus Torvalds Date: Fri Jul 22 14:49:48 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: firewire: document the sysfs ABIs firewire: cdev: ABI documentation enhancements firewire: cdev: prevent race between first get_info ioctl and bus reset event queuing firewire: cdev: return -ENOTTY for unimplemented ioctls, not -EINVAL firewire: ohci: skip soft reset retries after card ejection firewire: ohci: fix PHY reg access after card ejection firewire: ohci: add a comment on PHY reg access serialization firewire: ohci: reduce potential context_stop latency firewire: ohci: remove superfluous posted write flushes firewire: net: replacing deprecated __attribute__((packed)) with __packed commit 951cc93a7493a81a47e20231441bc6cf17c98a37 Merge: a7e1aab 415b333 Author: Linus Torvalds Date: Fri Jul 22 14:43:13 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1287 commits) icmp: Fix regression in nexthop resolution during replies. net: Fix ppc64 BPF JIT dependencies. acenic: include NET_SKB_PAD headroom to incoming skbs ixgbe: convert to ndo_fix_features ixgbe: only enable WoL for magic packet by default ixgbe: remove ifdef check for non-existent define ixgbe: Pass staterr instead of re-reading status and error bits from descriptor ixgbe: Move interrupt related values out of ring and into q_vector ixgbe: add structure for containing RX/TX rings to q_vector ixgbe: inline the ixgbe_maybe_stop_tx function ixgbe: Update ATR to use recorded TX queues instead of CPU for routing igb: Fix for DH89xxCC near end loopback test e1000: always call e1000_check_for_link() on e1000_ce4100 MACs. netxen: add fw version compatibility check be2net: request native mode each time the card is reset ipv4: Constrain UFO fragment sizes to multiples of 8 bytes virtio_net: Fix panic in virtnet_remove ipv6: make fragment identifications less predictable ipv6: unshare inetpeers can: make function can_get_bittiming static ... commit a03fc8c375511b6ab43184ab191af3218a919646 Author: Richard Weinberger Date: Fri Jul 22 20:55:34 2011 +0200 um: Make rwsem.S depend on CONFIG_RWSEM_XCHGADD_ALGORITHM rwsem.S can only be used with CONFIG_RWSEM_XCHGADD_ALGORITHM. This unbreaks the UML build on i386. Reported-by: Randy Dunlap Acked-by: Randy Dunlap Signed-off-by: Richard Weinberger Cc: Stephen Rothwell Cc: user-mode-linux-devel@lists.sourceforge.net Cc: JBeulich@novell.com Link: http://lkml.kernel.org/r/201107222055.35341.richard@nod.at Signed-off-by: Ingo Molnar commit a91f423e598912ab301592c7759cfd89e10682a1 Merge: 901e64d b580169 3c1c2fc Author: Jiri Kosina Date: Fri Jul 22 22:47:08 2011 +0200 Merge branches 'roccat', 'upstream' and 'wiimote' into for-linus commit a7e1aabb28e8154ce987b622fd78d80a1ca39361 Merge: 111ad11 996ba96 Author: Linus Torvalds Date: Fri Jul 22 13:45:50 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: lguest: Fix in/out emulation lguest: Fix translation count about wikipedia's cpuid page lguest: Fix three simple typos in comments lguest: update comments lguest: Simplify device initialization. lguest: don't rewrite vmcall instructions lguest: remove remaining vmcall lguest: use a special 1:1 linear pagetable mode until first switch. lguest: Do not exit on non-fatal errors commit 111ad119d1765b1bbef2629a5f2bd825caeb7e74 Merge: 997271c 3a6d28b Author: Linus Torvalds Date: Fri Jul 22 13:45:15 2011 -0700 Merge branch 'stable/drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/pciback: Have 'passthrough' option instead of XEN_PCIDEV_BACKEND_PASS and XEN_PCIDEV_BACKEND_VPCI xen/pciback: Remove the DEBUG option. xen/pciback: Drop two backends, squash and cleanup some code. xen/pciback: Print out the MSI/MSI-X (PIRQ) values xen/pciback: Don't setup an fake IRQ handler for SR-IOV devices. xen: rename pciback module to xen-pciback. xen/pciback: Fine-grain the spinlocks and fix BUG: scheduling while atomic cases. xen/pciback: Allocate IRQ handler for device that is shared with guest. xen/pciback: Disable MSI/MSI-X when reseting a device xen/pciback: guest SR-IOV support for PV guest xen/pciback: Register the owner (domain) of the PCI device. xen/pciback: Cleanup the driver based on checkpatch warnings and errors. xen/pciback: xen pci backend driver. xen: tmem: self-ballooning and frontswap-selfshrinking xen: Add module alias to autoload backend drivers xen: Populate xenbus device attributes xen: Add __attribute__((format(printf... where appropriate xen: prepare tmem shim to handle frontswap xen: allow enable use of VGA console on dom0 commit 997271cf5e12c1b38aec0764187094663501c984 Merge: 896d017 97ffab1 Author: Linus Torvalds Date: Fri Jul 22 13:44:53 2011 -0700 Merge branch 'stable/pci.cleanups.v1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/pci.cleanups.v1' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/pci: Use 'acpi_gsi_to_irq' value unconditionally. xen/pci: Remove 'xen_allocate_pirq_gsi'. xen/pci: Retire unnecessary #ifdef CONFIG_ACPI xen/pci: Move the allocation of IRQs when there are no IOAPIC's to the end xen/pci: Squash pci_xen_initial_domain and xen_setup_pirqs together. xen/pci: Use the xen_register_pirq for HVM and initial domain users xen/pci: In xen_register_pirq bind the GSI to the IRQ after the hypercall. xen/pci: Provide #ifdef CONFIG_ACPI to easy code squashing. xen/pci: Update comments and fix empty spaces. xen/pci: Shuffle code around. commit 896d01796d33e50589c96bbef5f0017d3cfc4ee8 Merge: 0df55ea 3c52b7b Author: Linus Torvalds Date: Fri Jul 22 13:44:45 2011 -0700 Merge branch 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen:pvhvm: Modpost section mismatch fix commit 0df55ea55bf1f4827115af4740899980b4fce77f Merge: c1f792a d1057c4 Author: Linus Torvalds Date: Fri Jul 22 13:44:18 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (78 commits) mmc: MAINTAINERS: add myself as a tmio-mmc maintainer mmc: print debug messages for runtime PM actions mmc: fix runtime PM with -ENOSYS suspend case mmc: at91_mci: move register header from include/ to drivers/ mmc: mxs-mmc: fix clock rate setting mmc: tmio: fix a deadlock mmc: tmio: fix a recently introduced bug in DMA code mmc: sh_mmcif: maximize power saving mmc: tmio: maximize power saving mmc: tmio: fix recursive spinlock, don't schedule with interrupts disabled mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency mmc: omap_hsmmc: fix oops in omap_hsmmc_dma_cb() mmc: omap_hsmmc: refactor duplicated code mmc: omap_hsmmc: fix a few bugs when setting the clock divisor mmc: omap_hsmmc: introduce start_clock and re-use stop_clock mmc: omap_hsmmc: split duplicate code to calc_divisor() function mmc: omap_hsmmc: move hardcoded frequency constants to defines mmc: omap_hsmmc: correct debug report error status mnemonics mmc: block: fixed NULL pointer dereference mmc: documentation of mmc non-blocking request usage and design. ... commit 6e6e8c510a84fe3237ef02b954e58cca6a3f4b1a Author: John W. Linville Date: Fri Jul 22 16:22:14 2011 -0400 bcma: fix 'SSB_PCICORE_BFL_NOPCI' undeclared build breakage linux-next-20110722/drivers/bcma/driver_pci.c:175: error: 'SSB_PCICORE_BFL_NOPCI' undeclared (first use in this function) Reported-by: Randy Dunlap Signed-off-by: John W. Linville commit c1f792a5bfebcf7ee1d739c3cb9baeaede0160e7 Merge: 6aaf440 55fb25d5 Author: Linus Torvalds Date: Fri Jul 22 13:16:33 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: (49 commits) xfs: add size update tracepoint to IO completion xfs: convert AIL cursors to use struct list_head xfs: remove confusing ail cursor wrapper xfs: use a cursor for bulk AIL insertion xfs: failure mapping nfs fh to inode should return ESTALE xfs: Remove the second parameter to xfs_sb_count() xfs: remove the dead XFS_DABUF_DEBUG code xfs: remove leftovers of the old btree tracing code xfs: remove the dead QUOTADEBUG code xfs: remove the unused xfs_buf_delwri_sort function xfs: remove wrappers around b_iodone xfs: remove wrappers around b_fspriv xfs: add a proper transaction pointer to struct xfs_buf xfs: factor out xfs_da_grow_inode_int xfs: factor out xfs_dir2_leaf_find_stale xfs: cleanup struct xfs_dir2_free xfs: reshuffle dir2 headers xfs: start periodic workers later Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc" xfs: remove variables that serve no purpose in xfs_alloc_ag_vextent_exact() ... commit 6aaf4404ab2efff2f2f3ee4a5bb5379c1c8092b3 Merge: ba1f9db 10d1459 Author: Linus Torvalds Date: Fri Jul 22 13:16:07 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm: dlm: don't limit active work items dlm: use workqueue for callbacks dlm: remove deadlock debug print dlm: improve rsb searches dlm: keep lkbs in idr dlm: fix kmalloc args dlm: don't do pointless NULL check, use kzalloc and fix order of arguments dlm: dump address of unknown node dlm: use vmalloc for hash tables dlm: show addresses in configfs commit ba1f9db908a9ac4038f6b694de3e55959886258d Merge: 49302ba 6596528 Author: Linus Torvalds Date: Fri Jul 22 13:12:17 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/hfsplus * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/hfsplus: hfsplus: ensure bio requests are not smaller than the hardware sectors hfsplus: Add additional range check to handle on-disk corruptions hfsplus: Add error propagation for hfsplus_ext_write_extent_locked hfsplus: add error checking for hfs_find_init() hfsplus: lift the 2TB size limit hfsplus: fix overflow in hfsplus_read_wrapper hfsplus: fix overflow in hfsplus_get_block hfsplus: assignments inside `if' condition clean-up commit 49302baa640d90074d26297156d180320a7aed2f Merge: eadc387 46fcb2e Author: Linus Torvalds Date: Fri Jul 22 13:10:41 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: GFS2: combine duplicated block freeing routines GFS2: Add S_NOSEC support GFS2: Automatically adjust glock min hold time GFS2: Cache dir hash table in a contiguous buffer commit eadc3875ebb724bc749bf604c92c6577d06158d1 Merge: 59a7ac1 01dc9cc Author: Linus Torvalds Date: Fri Jul 22 13:09:55 2011 -0700 Merge branch 'linux-next' of git://git.infradead.org/ubi-2.6 * 'linux-next' of git://git.infradead.org/ubi-2.6: UBI: clarify the volume notification types' doc UBI: remove dead code UBI: dump stack when switching to R/O mode UBI: fix oops in error path UBI: switch debugging tests knobs to debugfs UBI: make it possible to use struct ubi_device in debug.h UBI: prepare debugging stuff to further debugfs conversion UBI: use debugfs for the extra checks knobs UBI: change the interface of a debugging check function commit 59a7ac12110f27951c6f754b4e451a9df686aea9 Merge: f99b788 cc8f9b9 Author: Linus Torvalds Date: Fri Jul 22 13:09:35 2011 -0700 Merge branch 'linux-next' of git://git.infradead.org/ubifs-2.6 * 'linux-next' of git://git.infradead.org/ubifs-2.6: (32 commits) MAINTAINERS: change e-mail of Adrian Hunter UBIFS: fix master node recovery UBIFS: improve power cut emulation testing UBIFS: rename recovery testing variables UBIFS: remove custom list of superblocks UBIFS: stop re-defining UBI operations UBIFS: switch to I/O helpers UBIFS: switch to ubifs_leb_write UBIFS: switch to ubifs_leb_read UBIFS: introduce more I/O helpers UBIFS: always print stacktrace when switching to R/O mode UBIFS: remove unused and unneeded debugging function UBIFS: add global debugfs knobs UBIFS: introduce debugfs helpers UBIFS: re-arrange debugging code a bit UBIFS: be more informative in failure mode UBIFS: switch self-check knobs to debugfs UBIFS: lessen amount of debugging check types UBIFS: introduce helper functions for debugging checks and tests UBIFS: amend debugging inode size check function prototype ... commit f99b7880cb9863e11441bd8b2f31d4f556ef1a44 Merge: 02f8c6a 7ea466f Author: Linus Torvalds Date: Fri Jul 22 12:44:30 2011 -0700 Merge branch 'slab-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 * 'slab-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: slab: fix DEBUG_SLAB warning slab: shrink sizeof(struct kmem_cache) slab: fix DEBUG_SLAB build SLUB: Fix missing include slub: reduce overhead of slub_debug slub: Add method to verify memory is not freed slub: Enable backtrace for create/delete points slab allocators: Provide generic description of alignment defines slab, slub, slob: Unify alignment definition slob/lockdep: Fix gfp flags passed to lockdep commit 4460207561290c3be7e6c7538f22690028170c1d Merge: 2efdd6a 3cbe182 5763181 10e1b54 e1892fa 9b89925 e67306a fd1b6c4 Author: Roland Dreier Date: Fri Jul 22 11:56:11 2011 -0700 Merge branches 'cma', 'cxgb4', 'ipath', 'misc', 'mlx4', 'mthca', 'qib' and 'srp' into for-next commit e67306a38063d75f61d405527ff8bf1c8e92eb84 Author: Mike Marciniszyn Date: Thu Jul 21 13:21:16 2011 +0000 IB/qib: Defer HCA error events to tasklet With ib_qib options: options ib_qib krcvqs=1 pcie_caps=0x51 rcvhdrcnt=4096 singleport=1 ibmtu=4 a run of ib_write_bw -a yields the following: ------------------------------------------------------------------ #bytes #iterations BW peak[MB/sec] BW average[MB/sec] 1048576 5000 2910.64 229.80 ------------------------------------------------------------------ The top cpu use in a profile is: CPU: Intel Architectural Perfmon, speed 2400.15 MHz (estimated) Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (No unit mask) count 1002300 Counted LLC_MISSES events (Last level cache demand requests from this core that missed the LLC) with a unit mask of 0x41 (No unit mask) count 10000 samples % samples % app name symbol name 15237 29.2642 964 17.1195 ib_qib.ko qib_7322intr 12320 23.6618 1040 18.4692 ib_qib.ko handle_7322_errors 4106 7.8860 0 0 vmlinux vsnprintf Analysis of the stats, profile, the code, and the annotated profile indicate: - All of the overflow interrupts (one per packet overflow) are serviced on CPU0 with no mitigation on the frequency. - All of the receive interrupts are being serviced by CPU0. (That is the way truescale.cmds statically allocates the kctx IRQs to CPU) - The code is spending all of its time servicing QIB_I_C_ERROR RcvEgrFullErr interrupts on CPU0, starving the packet receive processing. - The decode_err routine is very inefficient, using a printf variant to format a "%s" and continues to loop when the errs mask has been cleared. - Both qib_7322intr and handle_7322_errors read pci registers, which is very inefficient. The fix does the following: - Adds a tasklet to service QIB_I_C_ERROR - Replaces the very inefficient scnprintf() with a memcpy(). A field is added to qib_hwerror_msgs to save the sizeof("string") at compile time so that a strlen is not needed during err_decode(). - The most frequent errors (Overflows) are serviced first to exit the loop as early as possible. - The loop now exits as soon as the errs mask is clear rather than fruitlessly looping through the msp array. With this fix the performance changes to: ------------------------------------------------------------------ #bytes #iterations BW peak[MB/sec] BW average[MB/sec] 1048576 5000 2990.64 2941.35 ------------------------------------------------------------------ During testing of the error handling overflow patch, it was determined that some CPU's were slower when servicing both overflow and receive interrupts on CPU0 with different MSI interrupt vectors. This patch adds an option (krcvq01_no_msi) to not use a dedicated MSI interrupt for kctx's < 2 and to service them on the default interrupt. For some CPUs, the cost of the interrupt enter/exit is more costly than then the additional PCI read in the default handler. Signed-off-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 03b5bb342978f99f75fb36d69cd29bab32109fd4 Author: Wang Sheng-Hui Date: Fri Jul 22 08:50:13 2011 -0500 ext2: check xattr name_len before acquiring xattr_sem in ext2_xattr_get In ext2_xattr_get(), the code will acquire xattr_sem first, later checks the length of xattr name_len > 255. It's unnecessarily time consuming and also ext2_xattr_set() checks the length before other checks. So move the check before acquiring xattr_sem to make these two functions consistent. Signed-off-by: Wang Sheng-Hui Signed-off-by: Jan Kara commit 19f9d392365113f74286b1721c7c032c12cf5abd Author: Jonas Bonn Date: Sat Jun 4 22:00:38 2011 +0300 OpenRISC: Add MAINTAINERS entry Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 616257669e1aa28628e84914810d0d94a6967653 Author: Jonas Bonn Date: Sat Jun 4 22:45:16 2011 +0300 OpenRISC: Miscellaneous Adds README file, TODO list, and a couple of other pieces that didn't seem to fit into any other patch. Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 224cd129fdbb40a01de4aaf46cd77d80e65d81e5 Author: Jonas Bonn Date: Sat Jun 4 22:44:40 2011 +0300 OpenRISC: Library routines Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 58e0166a4772aaeb10c9b0f6d59f19099d2047df Author: Jonas Bonn Date: Sat Jun 4 22:43:49 2011 +0300 OpenRISC: Headers Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 769a8a96229e6b2f1e3a2b3b38e27981f7fb9902 Author: Jonas Bonn Date: Sat Jun 4 22:35:30 2011 +0300 OpenRISC: Traps Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 5a2bbb8f64848b5cf9d626f3f17bac6718c91874 Author: Jonas Bonn Date: Sat Jun 4 22:35:19 2011 +0300 OpenRISC: Module support Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit e480158cc825b45eebcc2ff2ff5e5f7965c3875f Author: Jonas Bonn Date: Sat Jun 4 22:31:01 2011 +0300 OpenRISC: GPIO Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 88ef7f3f130ddd37f72bc919865eeefe1d437787 Author: Jonas Bonn Date: Sat Jun 4 22:30:12 2011 +0300 OpenRISC: Scheduling/Process management Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 2a7be1160a7ccc8b53693ef793fccb4ad2e75bbc Author: Jonas Bonn Date: Sat Jun 4 22:28:42 2011 +0300 OpenRISC: Idle/Power management Minimal functionality... Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 09abb90107202d3b18cf5a69076a1d05d11244e6 Author: Jonas Bonn Date: Sat Jun 4 22:26:51 2011 +0300 OpenRISC: System calls The OpenRISC Linux kernel conforms to the "generic" syscall interface which contains only the reduced set of syscalls deemed necessary for new architectures. Unfortunately, the uClibc port for OpenRISC does not fully support this reduced set; as such, an additional patch available out-of-tree needs to be applied to the kernel in order to use the current uClibc. This is just a temporary measure until the libc port can be straightened out; it is likely that OpenRISC will make the transition to glibc shortly where the generic syscall interface is better supported. Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 816ebaa8b6ea8f97515a40e25076f297d0304611 Author: Jonas Bonn Date: Sat Jun 4 22:18:56 2011 +0300 OpenRISC: IRQ This patch adds support for the OpenRISC PIC. Signed-off-by: Jonas Bonn Cc: tglx@linutronix.de Reviewed-by: Arnd Bergmann commit b731fbbd246e3aba59701bd6112a14ba02bf1c1c Author: Jonas Bonn Date: Sat Jun 4 22:18:12 2011 +0300 OpenRISC: Timekeeping Implements support for the OpenRISC timer which is a 28 bit cycle counter that can be read out of a special purpose register. This counter is used as a both a clock event and clocksource device. Signed-off-by: Jonas Bonn Cc: tglx@linutronix.de Reviewed-by: Arnd Bergmann commit a39af6f7b806f2a52962254ea8dc635b4c240810 Author: Jonas Bonn Date: Sat Jun 4 21:56:48 2011 +0300 OpenRISC: DMA Simple DMA implementation. Allows for allocation of coherent memory (simply uncached) for DMA operations. Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit e5ad95ce9b8d7efc443d39a7bbc4e55b7a4593f1 Author: Jonas Bonn Date: Sat Jun 4 21:54:22 2011 +0300 OpenRISC: PTrace This patch implements minimal PTrace support. The pt_regs structure is not exported to userspace for OpenRISC; rather, the GETREGSET mechanism is intended to be used and the registers, as such, exported in the core dump format which is ABI stable. This is in line with what is intended for new architectures as of 2.6.34 and has the advantage of permitting the layout of the registers on the kernel stack (as per pt_regs) to be freely modified. Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit f8c4a270d9330a2bc179aeef0a22ea1ed288fb50 Author: Jonas Bonn Date: Sat Jun 4 21:52:05 2011 +0300 OpenRISC: Build infrastructure Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit ac689eb7f9d4e270d1365853b82eece669387e2c Author: Jonas Bonn Date: Sat Jun 4 21:38:59 2011 +0300 OpenRISC: Signal handling Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 61e85e367535a7b6385b404bef93928768140f96 Author: Jonas Bonn Date: Sat Jun 4 11:06:11 2011 +0300 OpenRISC: Memory management Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 4f246ba30e1a9a31fcfd91d2ab8f5c75f1362bbf Author: Jonas Bonn Date: Sat Jun 4 21:56:16 2011 +0300 OpenRISC: Device tree The OpenRISC architecture uses the device tree infrastructure for the platform description. This is currently limited to having a device tree built into the kernel, but work is underway within the OpenRISC project to define how this device tree blob should be passed into the kernel from an external resource. Patch contains a single example DTS file to go with the defconfig for or1ksim. Signed-off-by: Jonas Bonn Cc: devicetree-discuss@lists.ozlabs.org Reviewed-by: Arnd Bergmann commit 9d02a4283e9ce4e9ca11ff00615bdacdb0515a1a Author: Jonas Bonn Date: Sat Jun 4 11:05:39 2011 +0300 OpenRISC: Boot code Architecture code and early setup routines for booting Linux. Signed-off-by: Jonas Bonn Reviewed-by: Arnd Bergmann commit 82ed223c264def2b15ee4bec2e8c3048092ceb5f Author: Jonas Bonn Date: Sat Jul 2 17:23:29 2011 +0200 iomap: make IOPORT/PCI mapping functions conditional Use the CONFIG_HAS_IOPORT and CONFIG_PCI options to decide whether or not functions for mapping these areas are provided. Signed-off-by: Jonas Bonn Acked-by: Arnd Bergmann commit f1ecc69838a2d7c8a3e1909f637d4083c071777d Author: Jonas Bonn Date: Sat Jul 2 17:17:35 2011 +0200 asm-generic: add MMU variants of io.h functions Some of the implementations, in particular the ioremap variants, in asm-generic/io.h are for systems without an MMU. In order to be able to use the generic header file for systems with an MMU, this patch wraps these implementations in checks for CONFIG_MMU. Tested on OpenRISC. Signed-off-by: Jonas Bonn Cc: liqin.chen@sunplusct.com Cc: gxt@mprc.pku.edu.cn Acked-by: Mike Frysinger Acked-by: Arnd Bergmann commit a4e05276a10198a1540dd1a0001f759c10ce1cf1 Author: Jonas Bonn Date: Sat Jul 2 11:40:18 2011 +0200 asm-generic: move archictures to common delay.h This patch moves the in-tree architectures that were using the 'generic' delay.h over to using the header file in asm-generic. This is not done using the generic-y mechanism as none of these arch's have started using that mechanism yet. This is a trivial change to make later when the arch begins using generic-y. Note the subtle change to the avr32 and SH architectures where the argument to __const_udelay was previously using the rounded down constant value instead of the rounded up value. Signed-off-by: Jonas Bonn Acked-by: Arnd Bergmann Acked-by: Hans-Christian Egtvedt commit a87e553fabe8ceadc6f90889066559234cf194c7 Author: Andrew Morton Date: Mon Jul 18 15:28:20 2011 +0200 asm-generic: delay.h fix udelay and ndelay for 8 bit args With a non-constant 8-bit argument, a call to udelay() generates a warning: drivers/gpu/drm/radeon/atom.c: In function 'atom_op_delay': drivers/gpu/drm/radeon/atom.c:654: warning: comparison is always false due to limited range of data type The code looks like it works OK with an 8-bit arg, and the calling code is doing nothing wrong, so udelay() needs fixing. Fixing it was rather tricky. Simply typecasting `n' in the comparison with 20000 didn't change anything. Hence the divide-by-20000 trick. Using a do{}while loop didn't work because udelay() is used in ?: statements, hence the ({...}) construct. While I was there I replaced the brain-bending ?:?:?: mess with nice if/else code. Probably other architectures are generating the same warning and can use a similar change. [Taken from the x86 tree and moved to asm-generic by Jonas Bonn] Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Signed-off-by: Andrew Morton Signed-off-by: Jonas Bonn commit e7d59db91a346f5069692e3b1f4e0afd100096dc Author: Mikael Pettersson Date: Fri Jul 22 16:47:26 2011 +0100 ARM: 7004/1: fix traps.h compile warnings Building kernel 3.0 for an n2100 (plat-iop) results in: In file included from arch/arm/plat-iop/cp6.c:20: /tmp/linux-3.0/arch/arm/include/asm/traps.h:12: warning: 'struct pt_regs' declared inside parameter list /tmp/linux-3.0/arch/arm/include/asm/traps.h:12: warning: its scope is only this definition or declaration, which is probably not what you want /tmp/linux-3.0/arch/arm/include/asm/traps.h:48: warning: 'struct pt_regs' declared inside parameter list /tmp/linux-3.0/arch/arm/include/asm/traps.h:48: warning: 'struct task_struct' declared inside parameter list arch/arm/plat-iop/cp6.c:45: warning: initialization from incompatible pointer type Nothing here depends on the layout of pt_regs or task_struct, so this can be fixed by adding forward struct declarations to asm/traps.h. Signed-off-by: Mikael Pettersson Signed-off-by: Russell King commit 7b87c9df5602efd6c7edeb291bbd104d49a6babf Author: Bjorn Helgaas Date: Tue Jun 14 13:04:40 2011 -0600 PCI: remove printks about disabled bridge windows I don't think there's enough value in the fact of a bridge window being disabled to justify cluttering the dmesg log with it. Signed-off-by: Bjorn Helgaas Signed-off-by: Jesse Barnes commit 28c6821a0f8e686d4f1a6107d970705d37475d87 Author: Bjorn Helgaas Date: Tue Jun 14 13:04:35 2011 -0600 PCI: fold pci_calc_resource_flags() into decode_bar() decode_bar() and pci_calc_resource_flags() both looked at the PCI BAR type information, and it's simpler to just do it all in one place. decode_bar() sets IORESOURCE_IO, IORESOURCE_MEM, and IORESOURCE_MEM_64 as appropriate, so res->flags contains all the information pci_bar_type does, so we don't need to test the pci_bar_type return value. decode_bar() used to return pci_bar_type, which we no longer need. We can simplify it a bit by returning the struct resource flags rather than updating them internally. In pci_update_resource(), there's no need to decode the BAR type bits again; we can just test for IORESOURCE_MEM_64 directly. Signed-off-by: Bjorn Helgaas Signed-off-by: Jesse Barnes commit 8d6a6a47636648754dc371b01228520a2adaf430 Author: Bjorn Helgaas Date: Tue Jun 14 13:04:29 2011 -0600 PCI: treat mem BAR type "11" (reserved) as 32-bit, not 64-bit, BAR This fixes a minor regression where broken PCI devices that use the reserved "11" memory BAR type worked before e354597cce but not after. The low four bits of a memory BAR are "PTT0" where P=1 for prefetchable BARs, and TT is as follows: 00 32-bit BAR, anywhere in lower 4GB 01 anywhere below 1MB (reserved as of PCI 2.2) 10 64-bit BAR 11 reserved Prior to e354597cce, we treated "0100" as a 64-bit BAR and all others, including prefetchable 64-bit BARs ("1100") as 32-bit BARs. The e354597cce fix, which appeared in 2.6.28, treats "x1x0" as 64-bit BARs, so the reserved "x110" types are treated as 64-bit instead of 32-bit. This patch returns to treating the reserved "11" type as a 32-bit BAR and adds a warning if we see it. It also logs a note if we see a 1M BAR. This is not a warning, because such hardware conforms to pre-PCI 2.2 spec, but I think it's worth noting because Linux ignores the 1M restriction if it ever has to assign the BAR. CC: Peter Chubb Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=35952 Reported-by: Jan Zwiegers Signed-off-by: Bjorn Helgaas Signed-off-by: Jesse Barnes commit c9b378c7cbf623649e4ca64f955f2afd12ef01b2 Author: Jon Mason Date: Tue Jun 28 18:26:25 2011 -0500 PCI: correct pcie_set_readrq write size When setting the PCI-E MRRS, pcie_set_readrq queries the current settings via a pci_read_config_word call but writes the modified result via a pci_write_config_dword. This results in writing 16 more bits than were queried. Also, the function description comment is slightly incorrect. Signed-off-by: Jon Mason Signed-off-by: Jesse Barnes commit 0cab0841dc1400f633a7e1ac1e448518692f927a Author: Kenji Kaneshige Date: Mon Jul 11 10:15:45 2011 +0900 PCI: pciehp: change wait time for valid configuration access Naoki Yanagimoto reported that configuration read on some hot-added PCIe device returns invalid value. This patch fixes this problem. According to the PCIe spec, software must wait for at least 1 second to judge if the hot-added device is broken after Data Link Layer State Changed Event. This patch changes pciehp driver to wait for 1 second after the Data Link Layer State Changed Event is detected before initiating a configuration access instead of 100 ms. Signed-off-by: Kenji Kaneshige Tested-by: Naoki Yanagimoto Signed-off-by: Jesse Barnes commit 9b373ed18f745bddf4288f1ec4a51fe822b8610a Author: Narendra_K@Dell.com Date: Fri Mar 18 10:22:14 2011 -0700 x86/PCI: Preserve existing pci=bfsort whitelist for Dell systems Commit 6e8af08dfa40b747002207d3ce8e8b43a050d99f enables pci=bfsort on future Dell systems. But the identification string 'Dell System' matches on already existing whitelist, which do not have SMBIOS type 0xB1, causing pci=bfsort not being set on existing whitelist. This patch fixes the regression by moving the type 0xB1 check beyond the existing whitelist so that existing whitelist is walked before. Signed-off-by: Shyam Iyer Signed-off-by: Narendra K Signed-off-by: Jesse Barnes commit 864d296cf948aef0fa32b81407541572583f7572 Author: Chris Wright Date: Wed Jul 13 10:14:33 2011 -0700 PCI: ARI is a PCIe v2 feature The function pci_enable_ari() may mistakenly set the downstream port of a v1 PCIe switch in ARI Forwarding mode. This is a PCIe v2 feature, and with an SR-IOV device on that switch port believing the switch above is ARI capable it may attempt to use functions 8-255, translating into invalid (non-zero) device numbers for that bus. This has been seen to cause Completion Timeouts and general misbehaviour including hangs and panics. Cc: stable@kernel.org Acked-by: Don Dutile Tested-by: Don Dutile Signed-off-by: Chris Wright Signed-off-by: Jesse Barnes commit a8c7ef3187a266d201af887fd48afbef3598825a Author: tip-bot for Sergei Shtylyov Date: Thu Jul 21 10:11:42 2011 +0000 x86/PCI: quirks: Use pci_dev->revision This code uses PCI_CLASS_REVISION instead of PCI_REVISION_ID, so it wasn't converted by commit 44c10138fd4bbc ("PCI: Change all drivers to use pci_device->revision") before being moved to arch/x86/... Signed-off-by: Sergei Shtylyov Cc: Dave Jones Link: http://lkml.kernel.org/r/201107111901.39281.sshtylyov@ru.mvista.com Signed-off-by: Ingo Molnar Signed-off-by: Jesse Barnes commit d5341942d784134f2997b3ff82cd63cf71d1f932 Author: Ralf Baechle Date: Fri Jun 10 15:30:21 2011 +0100 PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. Aside of the usual motivation for constification, this function has a history of being abused a hook for interrupt and other fixups so I turned this function const ages ago in the MIPS code but it should be done treewide. Due to function pointer passing in varous places a few other functions had to be constified as well. Signed-off-by: Ralf Baechle To: Anton Vorontsov To: Chris Metcalf To: Colin Cross Acked-by: "David S. Miller" To: Eric Miao To: Erik Gilling Acked-by: Guan Xuetao To: "H. Peter Anvin" To: Imre Kaloz To: Ingo Molnar To: Ivan Kokshaysky To: Jesse Barnes To: Krzysztof Halasa To: Lennert Buytenhek To: Matt Turner To: Nicolas Pitre To: Olof Johansson Acked-by: Paul Mundt To: Richard Henderson To: Russell King To: Thomas Gleixner Cc: Andrew Morton Cc: linux-alpha@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linux-pci@vger.kernel.org Cc: linux-sh@vger.kernel.org Cc: linux-tegra@vger.kernel.org Cc: sparclinux@vger.kernel.org Cc: x86@kernel.org Signed-off-by: Jesse Barnes commit 05d3ac267a9d10af6ca370afe21802333aad1d5c Author: Sergei Shtylyov Date: Wed Jul 13 19:20:14 2011 +0400 PCI hotplug: cpqphp: use pci_dev->vendor The driver reads PCI vendor ID from the PCI configuration register while it is already stored by the PCI subsystem in the 'vendor' field of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: Jesse Barnes commit 69b3e6199a2d01ad2e3102052be08e0ced91f388 Author: Sergei Shtylyov Date: Wed Jul 13 19:21:25 2011 +0400 PCI hotplug: cpqphp: use pci_dev->subsystem_{vendor|device} The driver reads PCI subsystem IDs from the PCI configuration registers while they are already stored by the PCI subsystem in the 'subsystem_{vendor|device}' fields of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: Jesse Barnes commit db34a363b992e0c8063f432607561520d79fbfb8 Author: Jan Beulich Date: Fri Jul 22 08:13:05 2011 +0100 x86/PCI: config space accessor functions should not ignore the segment argument Without this change, the majority of the raw PCI config space access functions silently ignore a non-zero segment argument, which is certainly wrong. Apart from pci_direct_conf1, all other non-MMCFG access methods get used only for non-extended accesses (i.e. assigned to raw_pci_ops only). Consequently, with the way raw_pci_{read,write}() work, it would be a coding error to call these functions with a non-zero segment (with the current call flow this cannot happen afaict). The access method 1 accessor, as it can be used for extended accesses (on AMD systems) instead gets checks added for the passed in segment to be zero. This would be the case when on such a system having multiple PCI segments (don't know whether any exist in practice) MMCFG for some reason is not usable, and method 1 gets selected for doing extended accesses. Rather than accessing the wrong device's config space, the function will now error out. v2: Convert BUG_ON() to WARN_ON(), and extend description as per Ingo's request. Signed-off-by: Jan Beulich Reviewed-by: Ingo Molnar Signed-off-by: Jesse Barnes commit 688398bb7b9c6ac115da7749ea808d3ef69e029f Author: Myron Stowe Date: Thu Jul 7 15:00:36 2011 -0600 PCI: Assign values to 'pci_obff_signal_type' enumeration constants 'pci_obff_signal_type' is passed between drivers and the kernel API. This patch explicitly assigns values to the enumeration type's constants which aids in detecting any future changes or additions that would break the kernel's ABI. No functional change. Signed-off-by: Myron Stowe Signed-off-by: Jesse Barnes commit 43d786ed4df4c54cb8802a523748a7d78130a2cb Author: Bjorn Helgaas Date: Sat Jul 2 10:47:12 2011 -0600 x86/PCI: reduce severity of host bridge window conflict warnings Host bridge windows are top-level resources, so if we find a host bridge window conflict, it's probably with a hard-coded legacy reservation. Moving host bridge windows is theoretically possible, but we don't support it; we just ignore windows with conflicts, and it's not worth making this a user-visible error. Reported-and-tested-by: Jools Wills References: https://bugzilla.kernel.org/show_bug.cgi?id=38522 Reported-by: Das References: https://bugzilla.kernel.org/show_bug.cgi?id=16497 Signed-off-by: Bjorn Helgaas Signed-off-by: Jesse Barnes commit b1a98b695b4efe10067d0e1cb5b66146a4e517bf Author: Tiejun Chen Date: Thu Jun 2 11:02:50 2011 +0800 PCI: enumerate the PCI device only removed out PCI hieratchy of OS when re-scanning PCI When hot-plugging a root bridge, we always prevent assigning a bus number that already exists. This makes sure we don't step over an existing bus. But sometimes we only remove PCI device in PCI hieratchy of OS, i,e. echo 1 > /sys/bus/pci/devices/.../remove but actually don't hotplug this device out the platform, so in this case we still should re-scan this bus to enumerate this device when re-scanning PCI again. Signed-off-by: Tiejun Chen Signed-off-by: Jesse Barnes commit 0918472ceeffad234df5589e45b646a94476f835 Author: Huang Ying Date: Tue May 17 16:08:37 2011 +0800 PCI: PCIe AER: add aer_recover_queue In addition to native PCIe AER, now APEI (ACPI Platform Error Interface) GHES (Generic Hardware Error Source) can be used to report PCIe AER errors too. To add support to APEI GHES PCIe AER recovery, aer_recover_queue is added to export the recovery function in native PCIe AER driver. Recoverable PCIe AER errors are reported via NMI in APEI GHES. Then APEI GHES uses irq_work to delay the error processing into an IRQ handler. But PCIe AER recovery can be very time-consuming, so aer_recover_queue, which can be used in IRQ handler, delays the real recovery action into the process context, that is, work queue. Signed-off-by: Huang Ying Signed-off-by: Jesse Barnes commit 0aba496fc820d7c36775f2fd0ef81994e1af67a8 Author: Shaohua Li Date: Fri May 27 14:59:39 2011 +0800 x86/PCI: select direct access mode for mmconfig option Direct access is needed in mmconf mode too. There are two reasons: 1. we need it to access first 256 bytes. We have bug before that using mmconf to access pci config space hangs system (when resizing BARs), so we use type1 config for legacy config space. 2. when doing mmconfg bar checking, we need access ACPI _CRS, which might access PCI config space. Signed-off-by: Shaohua Li Signed-off-by: Jesse Barnes commit efe6d7272b1bdb3989322a6f3f9ed063a40c6beb Author: Thomas Renninger Date: Fri May 27 10:23:00 2011 +0200 PCI hotplug: Rename is_ejectable which also exists in dock.c While it's declared static, etags points you to the wrong function in drivers/acpi/dock.c and acpiphp_glue.c for example also makes use of some (exported..) functions from this file. If you trust etags and oversee the static declaration (what happened to me) one gets totally confused... Signed-off-by: Thomas Renninger Signed-off-by: Jesse Barnes commit df2e301fee3c2c2a87592151397ad7699bb14c37 Author: Jean Delvare Date: Sat Jul 16 18:10:35 2011 +0200 fs: Merge split strings No idea why these were split in the first place... Signed-off-by: Jean Delvare Signed-off-by: Jiri Kosina commit 8c95b74d8d8acd8b0741b942a46fdb6f81d974ed Author: Rafał Miłecki Date: Fri Jul 22 00:25:00 2011 +0200 b43legacy: dma: cache translation (routing bits) Signed-off-by: Rafał Miłecki Tested-by: Larry Finger Signed-off-by: John W. Linville commit 6596528e391ad978a6a120142cba97a1d7324cb6 Author: Seth Forshee Date: Mon Jul 18 08:06:23 2011 -0700 hfsplus: ensure bio requests are not smaller than the hardware sectors Currently all bio requests are 512 bytes, which may fail for media whose physical sector size is larger than this. Ensure these requests are not smaller than the block device logical block size. BugLink: http://bugs.launchpad.net/bugs/734883 Signed-off-by: Seth Forshee Signed-off-by: Christoph Hellwig commit aac4e4198eff7f9551d586c55342403d49249d95 Author: Naohiro Aota Date: Tue Jul 12 02:54:13 2011 +0900 hfsplus: Add additional range check to handle on-disk corruptions 'recoff' is read from disk and used for an argument to memcpy, so if the value read from disk is larger than the page size, it result to "general protection fault". This patch add additional range check for the value, so that disk fuzz won't cause such fault. Signed-off-by: Naohiro Aota Signed-off-by: Christoph Hellwig commit f1f4ee01c0d3dce0e3aa7d04e4332677db7af478 Author: Timur Tabi Date: Tue Jul 19 15:45:51 2011 -0500 drivers/virt: add missing linux/interrupt.h to fsl_hypervisor.c fsl_hypervisor.c calls request_irq() but does not include linux/interrupt.h. Normally, the driver will compile without error, but it can fail on some configurations. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit bb78c71d6c6947322a701580df7865409032dbf6 Author: Pavel Roskin Date: Thu Jul 21 13:36:42 2011 -0400 ath5k: use get_unaligned_le32() in ath5k_write_pwr_to_pdadc_table() Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit c5f3f45c4934d7e7dc266092debe88628d2cbb5d Author: Pavel Roskin Date: Thu Jul 21 13:36:35 2011 -0400 ath5k: remove ath5k_hw_get_capability(), don't use VEOL on AR5210 There are only two capabilities we need, and both are trivial to find. ath5k_hw_hasbssidmask() is true on AR5212, but not on AR5210 or AR5211. ath5k_hw_hasveol() is true on AR5211 and AR5212, but not on AR5210, according to the HAL source. Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit fabba0480637add5411b1dc59603cc71e3505a69 Author: Pavel Roskin Date: Thu Jul 21 13:36:28 2011 -0400 ath5k: merge ath5k_{init, deinit}_hw() with their thin wrappers Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 24aad3f4c8a5c0a7514733fb9fa70994e24a5707 Author: Rafał Miłecki Date: Wed Jul 20 20:02:39 2011 +0200 b43: (un)initialize driver on the BCMA bus Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit eb90e9e85c36dd2dd730d2eacec74db84491033d Author: Rafał Miłecki Date: Wed Jul 20 19:52:16 2011 +0200 b43: bcma: get DMA translation bits Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 05aec233367262a43dbf0b615099757162e36f88 Author: Rafał Miłecki Date: Wed Jul 20 19:52:15 2011 +0200 bcma: inform drivers about translation bits needed for the core When using DMA, drivers need to pass special translation info to the hardware. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit a9770a815d280d6aa2da406e159eff92b880670e Author: Rafał Miłecki Date: Wed Jul 20 19:52:14 2011 +0200 ssb: return correct translation bit for 64-bit DMA Remove b43's workarounds at the same time. Other users of ssb_dma_translation do not support any 64-bit DMA devices, so they are not affected. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 78c1ee7e61af4eb3f6c8a553ca56036e3734121f Author: Rafał Miłecki Date: Wed Jul 20 19:47:07 2011 +0200 b43: disable parity check on BCMA devices Analyze of MMIO dumps from BCM43224, BCM43225, BCM4313 and BCM4331 has shown that wl disables parity check for all that cards. This is required for receiving any packets from the hardware. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 415b3334a21aa67806c52d1acf4e72e14f7f402f Author: David S. Miller Date: Fri Jul 22 06:22:10 2011 -0700 icmp: Fix regression in nexthop resolution during replies. icmp_route_lookup() uses the wrong flow parameters if the reverse session route lookup isn't used. So do not commit to the re-decoded flow until we actually make a final decision to use a real route saved in 'rt2'. Reported-by: Florian Westphal Signed-off-by: David S. Miller commit eac1b5e57d7abc836e78fd3fbcf77dbeed01edc9 Author: Oleg Nesterov Date: Thu Jul 21 20:00:43 2011 +0200 ptrace: do_wait(traced_leader_killed_by_mt_exec) can block forever Test-case: void *tfunc(void *arg) { execvp("true", NULL); return NULL; } int main(void) { int pid; if (fork()) { pthread_t t; kill(getpid(), SIGSTOP); pthread_create(&t, NULL, tfunc, NULL); for (;;) pause(); } pid = getppid(); assert(ptrace(PTRACE_ATTACH, pid, 0,0) == 0); while (wait(NULL) > 0) ptrace(PTRACE_CONT, pid, 0,0); return 0; } It is racy, exit_notify() does __wake_up_parent() too. But in the likely case it triggers the problem: de_thread() does release_task() and the old leader goes away without the notification, the tracer sleeps in do_wait() without children/tracees. Change de_thread() to do __wake_up_parent(traced_leader->parent). Since it is already EXIT_DEAD we can do this without ptrace_unlink(), EXIT_DEAD threads do not exist from do_wait's pov. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 0f3171438fc917b9f6b8b60dbb7a3fff9a0f68fd Author: Lin Ming Date: Fri Jul 22 09:14:31 2011 +0800 sched: Cleanup duplicate local variable in [enqueue|dequeue]_task_fair No need to define a new "cfs_rq" variable in the "for" block. Just use the one at the top of the function. Signed-off-by: Lin Ming Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/1311297271.3938.1352.camel@minggr.sh.intel.com Signed-off-by: Ingo Molnar commit 54abd335fda86d305845f9e62b4bc0997386eb66 Author: Mark Brown Date: Thu Jul 21 15:07:37 2011 +0100 regulator: Fix argument format type errors in error prints We need to dereference the pointers to print their values. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 1a6958e79f9e191c89fe0c13f7452b0bd8097050 Author: Axel Lin Date: Fri Jul 15 10:50:43 2011 +0800 regulator: Fix memory leak in set_machine_constraints() error paths Properly kfree rdev->constraints in all set_machine_constraints() error paths. Also properly kfree rdev->constraints in regulator_register() error paths. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 89f425ed5bf3d4fd97e840296dccd75b8e0fe4c9 Author: Mark Brown Date: Tue Jul 12 11:20:37 2011 +0900 regulator: Make core more chatty about some errors Prevent some head scratching by making the core log about some rare but possible errors with invalid voltage ranges and modes being set. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 39aa9b6e3cb1b2a564d3422eedb7f725179162d3 Author: Axel Lin Date: Mon Jul 11 09:57:43 2011 +0800 regulator: tps65910: Fix array access out of bounds bug For tps65910, the number of regulator is 13. ( ARRAY_SIZE(tps65910_regs) is 13) For tps65911, the number of regulator is 12. ( ARRAY_SIZE(tps65911_regs) is 12) If we are using this driver for tps65911, we hit array access out of bounds bug in tps65910_probe() because current implementation always assume the number of regulator is 13 and thus it will access tps65911_regs[12]. Fix it by setting correct num_regulators for both chips in tps65910_probe(), and allocated neccessay memory accordingly. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit d04156bca629740a661fd0738cd69ba1f08b2b20 Author: Axel Lin Date: Sun Jul 10 21:44:09 2011 +0800 regulator: tps65910: Add missing breaks in switch/case Also add a default case in tps65910_list_voltage_dcdc to silence 'volt' may be used uninitialized in this function warning. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit a3ee13ee77feea001597415f3a231a8bd4d3c6bf Author: Axel Lin Date: Sun Jul 10 18:52:07 2011 +0800 regulator: tps65910: Fix a memory leak in tps65910_probe error path Fix a memory leak if chip id is not matched. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit af8b244f733383656c8b4c0c6e94e210e7bbc596 Author: Ambresh K Date: Sat Jul 9 19:02:21 2011 -0700 regulator: TWL: Remove entry of RES_ID for 6030 macros RES_ID is only used in 4030, to send PBM singular message to control the state of dedicated resources. In 6030, we don't have concept of PBM, hence removing the definition of RES_ID (num) from macros. Signed-off-by: Ambresh K Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit b580169affd7ccc9347cbf4d5f4db1480ee7ee06 Author: Jiri Kosina Date: Fri Jul 22 12:11:15 2011 +0200 HID: fix support for Microsoft comfort mouse 4500 Add forgotten entry into the global blacklist. Signed-off-by: Jiri Kosina commit fa4951595648c14754621c99a07c47c9b9dcf05b Author: Nicholas Bellinger Date: Fri Jul 22 08:24:22 2011 +0000 target: Bump version to v4.1.0-rc1-ml This patch bumps the target core version to v4.1.0-rc1 now that we are in sync with upstream lio-core-2.6.git/master Signed-off-by: Nicholas Bellinger commit 11650b859681e03fdbf26277fcfc5f1f62186703 Author: Andy Shevchenko Date: Mon Jul 18 22:26:40 2011 -0700 target: remove custom hex2bin() implementation This patch drops transport_asciihex_to_binaryhex() in favor of proper hex2bin usage from include/linux/kernel.h:hex2bin() Signed-off-by: Andy Shevchenko Signed-off-by: Nicholas Bellinger commit 163cd5fa9fcb7ccc73a9e39d5f601cfd41a23bfa Author: Andy Shevchenko Date: Mon Jul 18 22:17:43 2011 -0700 target: fix typo Assoication -> Association Additionally this patch brings proper apply of the designator type. However, the original code luckily has no bug, because the association equals to 0. Signed-off-by: Andy Shevchenko Cc: James Bottomley Signed-off-by: Nicholas Bellinger commit 5de619a31d9cb051d1f818e661af4e54def82316 Author: Nicholas Bellinger Date: Sun Jul 17 02:57:58 2011 -0700 target: Update QUEUE ALGORITHM MODIFIER control page default This patch adds the default 'Unrestricted reordering allowed' for SCSI control mode page QUEUE ALGORITHM MODIFIER on a per se_device basis in target_modesense_control() following spc4r23. This includes a new emuluate_rest_reord configfs attribute that currently (only) accepts zero to signal 'Unrestricted reordering allowed' in control mode page usage by the backend target device. Reported-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit 1d20bb6147954d4fbd337a3d1b40c7eeae254cd7 Author: Nicholas Bellinger Date: Thu Jul 21 04:41:48 2011 +0000 target: ->map_task_SG conversion to ->map_control_SG and ->map_data_SG This patch breaks up the ->map_task_SG() backend call into two seperate ->map_control_SG() and ->map_data_SG() in order to better address IBLOCK and pSCSI. IBLOCK only allocates bios for ->map_data_SG(), and pSCSI will allocate a struct request for both cases. This patch fixes incorrect usage of ->map_task_SG() for all se_cmd descriptors in transport_generic_new_cmd() by moving the call into it's proper location directly inside of transport_allocate_data_tasks() Reported-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit 6708bb27bb2703da238f21f516034263348af5be Author: Andy Grover Date: Wed Jun 8 10:36:43 2011 -0700 target: Follow up core updates from AGrover and HCH (round 4) This patch contains the squashed version of forth round series cleanups from Andy and Christoph following the post heavy lifting in the preceeding: 'Eliminate usage of struct se_mem' and 'Make all control CDBs scatter-gather' changes. This also includes a conversion of target core and the v3.0 mainline fabric modules (loopback and tcm_fc) to use pr_debug and the CONFIG_DYNAMIC_DEBUG infrastructure! These have been squashed into this third and final round for v3.1. target: Remove ifdeffed code in t_g_process_write target: Remove direct ramdisk code target: Rename task_sg_num to task_sg_nents target: Remove custom debug macros for pr_debug. Use pr_err(). target: Remove custom debug macros in mainline fabrics target: Set WSNZ=1 in block limits VPD. Abort if WRITE_SAME sectors = 0 target: Remove transport do_se_mem_map callback target: Further simplify transport_free_pages target: Redo task allocation return value handling target: Remove extra parentheses target: change alloc_task call to take *cdb, not *cmd (nab: Fix bogus struct file assignments in fd_do_readv and fd_do_writev) Signed-off-by: Andy Grover Reviewed-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit ec98f7825c6eaa4a9afb0eb518826efc8a2ed4a2 Author: Andy Grover Date: Wed Jul 20 19:28:46 2011 +0000 target: Eliminate usage of struct se_mem Both backstores and fabrics use arrays of struct scatterlist to describe data buffers. However TCM used struct se_mems, basically a linked list of scatterlist entries. We are able to simplify the code by eliminating this intermediate data structure and just using struct scatterlist[] throughout. Also, moved attachment of task to cmd out of transport_generic_get_task and into allocate_control_task and allocate_data_tasks. The reasoning is that it's nonintuitive that get_task should automatically add it to the cmd's task list -- it should just return an allocated, initialized task. That's all it should do, based on the function's name, so either the function shouldn't do it, or the name should change to encapsulate the entire essence of what it does. (nab: Fix compile warnings in tcm_fc, and make transport_kmap_first_data_page honor sg->offset for SGLs from contigious memory with TCM_Loop, and fix control se_cmd descriptor memory leak) Signed-off-by: Andy Grover Signed-off-by: Nicholas Bellinger commit 3a86720567fd92819b449df10db85a2f73447d87 Author: Andy Grover Date: Tue Jun 28 10:31:18 2011 -0700 target: Pass 2nd param of transport_split_cdb by value Since sectors is not modified, it's more straightforward to do this. Signed-off-by: Andy Grover Signed-off-by: Nicholas Bellinger commit d0229ae3fed59b4009e33f836d9ad4e312294d46 Author: Andy Grover Date: Fri Jul 8 17:04:53 2011 -0700 target: Enforce 1 page max for control cdb buffer sizes Due to all cdbs' data buffers being referenced by scatterlists, buffers of more than a page are not contiguous. Instead of handling this in all control command handlers, we may be able to get away with just limiting control cdb data buffers to one page. The only control CDBs we handle that have potentially large data buffers are REPORT LUNS and UNMAP, so if we didn't want to live with this limitation, they would need to be modified to walk the pages in the data buffer's sgl. Signed-off-by: Andy Grover Signed-off-by: Nicholas Bellinger commit 05d1c7c0d0db4cc25548d9aadebb416888a82327 Author: Andy Grover Date: Wed Jul 20 19:13:28 2011 +0000 target: Make all control CDBs scatter-gather Previously, some control CDBs did not allocate memory in pages for their data buffer, but just did a kmalloc. This patch makes all cdbs allocate pages. This has the benefit of streamlining some paths that had to behave differently when we used two allocation methods. The downside is that all accesses to the data buffer need to kmap it before use, and need to handle data in page-sized chunks if more than a page is needed for a given command's data buffer. Finally, note that cdbs with no data buffers are handled a little differently. Before, SCSI_NON_DATA_CDBs would not call get_mem at all (they'd be in the final else in transport_allocate_resources) but now these will make it into generic_get_mem, but just not allocate any buffers. Signed-off-by: Andy Grover Signed-off-by: Nicholas Bellinger commit e22a7f075226c51f3f71b922e9eeb4f99fac1475 Author: Roland Dreier Date: Tue Jul 5 13:34:52 2011 -0700 target: Implement Block Device Characteristics VPD page Implement page B1h, Block Device Characteristics, so that we can report a medium rotation rate of 1 (non-rotating / solid state) if the is_nonrot device attribute is set; we update the iblock backend to set this attribute if the underlying Linux block device has its nonrot flag set. Signed-off-by: Roland Dreier Reviewed-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit b2eb705e00a9b9a9b3122192a7ab3e9058f0c48a Author: Roland Dreier Date: Tue Jul 5 13:34:51 2011 -0700 target: Fix reporting of supported VPD pages The current handling of VPD page 00h (Supported VPD Pages) for INQUIRY commands has a couple of problems: - The page length field is incorrectly set to 3, so the entry for 86h (Extended INQUIRY Data) is ignored since it is in the fourth slot. - Even though the code handles pages B0h and B2h, those pages aren't mentioned in the Supported VPD Pages list, so eg the Linux SCSI stack won't actually try to use them. Fix these problems and make things more robust to avoid future problems by moving to a table of supported VPD pages, which means that any added VPD page support will automatically get reported on page 0. Signed-off-by: Roland Dreier Reviewed-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit f5fbed856931faa1e94a76caf0f0c273c67f0d32 Author: Roland Dreier Date: Tue Jul 5 13:34:50 2011 -0700 target: Allow for built-in target modules In target_fabric_configfs_init(), we should allow fabric_mod to be NULL, since THIS_MODULE is NULL for built-in modules. The main method of using the target code may be as modules, but having everything built-in is useful eg to be able to do quick testing with "qemu -kernel". In any case, we shouldn't bomb out fabric registration for a perfectly valid configuration, so simply drop the check of fabric_mod. Signed-off-by: Roland Dreier Reviewed-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit 2be18149d9d7ebfde7c3081d60f7c9d8d3b6f8c7 Author: Nicholas Bellinger Date: Fri May 27 13:58:48 2011 -0700 tcm_fc: Convert to wake_up_process and schedule_timeout_interruptible This patch converts ft_queue_cmd() to use wake_up_process() and ft_thread() to use schedule_timeout_interruptible(MAX_SCHEDULE_TIMEOUT) instead of wait_event_interruptible(). This fixes a potential race with the wait_event_interruptible() conditional with qobj->queue_cnt in ft_thread(). This patch also drops the unnecessary set_user_nice(current, -20) in ft_thread(), and drops extra () around two if (!(acl)) conditionals in tfc_conf.c. Reported-by: Christoph Hellwig Signed-off-by: Nicholas A. Bellinger commit a1fa3759583ef2379da6e2cc346ee9f99dfba309 Author: Nicholas Bellinger Date: Fri May 27 13:34:20 2011 -0700 tcm_fc: Makefile cleanups This patch removes the unnecessary EXTRA_CFLAGS includes, and drops the unused -DTCM_FC_DEBUG define. Reported-by: Christoph Hellwig Signed-off-by: Nicholas A. Bellinger commit a57b5d36453cc9335f75ae191ffd682a250d08ba Author: Jesper Juhl Date: Tue Jun 28 00:30:17 2011 +0200 loopback: Fix memory leak in tcm_loop_make_scsi_hba() There is a memory leak in tcm_loop_make_scsi_hba(). If all the strstr() calls return NULL and we end up at return ERR_PTR(-EINVAL); then we'll be leaking the memory previously allocated to tl_hba as that variable goes out of scope. This patch should fix the leak. Signed-off-by: Jesper Juhl Signed-off-by: Dan Carpenter Signed-off-by: Nicholas Bellinger commit 824cc5ff37a0dc3ec8c9e7002e3b1ca0b408917e Author: Jesper Juhl Date: Wed Jun 22 01:55:50 2011 -0700 loopback: Remove duplicate scsi/scsi_tcq.h include Signed-off-by: Jesper Juhl Signed-off-by: Nicholas Bellinger commit 12f09ccb4612734a53e47ed5302e0479c10a50f8 Author: Dan Carpenter Date: Sat Apr 2 14:32:47 2011 -0700 loopback: off by one in tcm_loop_make_naa_tpg() This is an off by one 'tgpt' check in tcm_loop_make_naa_tpg() that could result in memory corruption. Signed-off-by: Dan Carpenter Signed-off-by: Nicholas A. Bellinger commit 21bca31c9678edda8eb1dc823be00d190965c53b Author: Roland Dreier Date: Tue Jul 5 15:35:02 2011 -0700 target/iblock: Remove unused iblock_dev members ibd_depth and ibd_force are used write-only. Remove them. ibd_major/minor can be easily retrieved from ibd_bd, so get rid of them too. Signed-off-by: Roland Dreier Reviewed-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit 8f3d14e2b0352e41c8e64a39c95c7d9498c96e89 Author: Nicholas Bellinger Date: Wed Jun 22 01:32:20 2011 -0700 target/iblock: Use request_queue->nr_request for se_device defaults This patch converts iblock_create_virtdevice() to use request_queue->nr_request for se_dev_limits usage of ->hw_queue_depth and ->queue_depth for individual struct se_device export. It also removes the now unused defines for IBLOCK_DEVICE_QUEUE_DEPTH and IBLOCK_MAX_DEVICE_QUEUE_DEPTH Signed-off-by: Nicholas Bellinger commit 5e1be919820175a2becc3c72051050aaa3fae954 Author: Roland Dreier Date: Wed Jul 20 09:28:56 2011 +0000 target: Make se_tmr_lock IRQ-safe transport_lookup_tmr_lun() can be called from interrupt context and therefore needs to use IRQ-safe spinlock functions. Fix this up, and to make the locking work, convert the other uses of se_tmr_lock to be IRQ-disabling. Signed-off-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit 56e34ee2adb59a35bfa5714bdf4dcb3f4d14a41d Author: Roland Dreier Date: Mon Jun 13 20:55:06 2011 -0700 target: Make se_dev_check_online() locking IRQ-safe se_dev_check_online() is called from transport_lookup_cmd_lun(), which as discussed before may be called from interrupt context. So it needs to use spin_lock_irqsave() instead of spin_lock_irq() to avoid enabling interrupts at the wrong time. Signed-off-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit 78faae37897dc2a9ccc7c19155294a4bfdcae077 Author: Roland Dreier Date: Wed Jul 20 09:09:10 2011 +0000 target: Make transport_lookup_cmd_lun() locking IRQ-safe transport_lookup_cmd_lun() may be called from interrupt context (eg tcm_loop_allocate_core_cmd() calls it, and it has a comment that says, "Can be called from interrupt context"), so it needs to use spin_lock_irqsave() instead of spin_lock_irq() to avoid enabling interrupts at the wrong time. (And indeed the last set of lock operations, on lun_cmd_lock, were already using spin_lock_irqsave(), so we just need to fix the other two locks we take) Signed-off-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit 07bde79a5c355dbca66ca4318645aa17b4c0d859 Author: Nicholas Bellinger Date: Mon Jun 13 14:46:09 2011 -0700 target: Add SCF_EMULATE_QUEUE_FULL -> transport_handle_queue_full This patch adds SCF_EMULATE_QUEUE_FULL support using -EAGAIN failures via transport_handle_queue_full() to signal queue full in completion path TFO->queue_data_in() and TFO->queue_status() callbacks. This is done using a new se_cmd->transport_qf_callback() to handle the following queue full exception cases within target core: *) TRANSPORT_COMPLETE_OK (for completion path queue full) *) TRANSPORT_COMPLETE_QF_WP (for TRANSPORT_WRITE_PENDING queue full) *) transport_send_check_condition_and_sense() failure paths in transport_generic_request_failure() and transport_generic_complete_ok() All logic is driven using se_device->qf_work_queue -> target_qf_do_work() to to requeue outstanding se_cmd at the head of se_dev->queue_obj->qobj_list for transport_processing_thread() execution. Tested using tcm_qla2xxx with MAX_OUTSTANDING_COMMANDS=128 for FCP READ to trigger the TRANSPORT_COMPLETE_OK queue full cases, and a simulated TFO->write_pending() -EAGAIN failure to trigger TRANSPORT_COMPLETE_QF_WP. Reported-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit 695434e1cbd57f404110bf4ab187a5127ffd79bb Author: Nicholas Bellinger Date: Fri Jun 3 20:59:19 2011 -0700 target: Add transport_handle_cdb_direct optimization This patch adds a transport_handle_cdb_direct() optimization for mapping and queueing tasks directly from within fabric processing context by calling the newly exported transport_generic_new_cmd(). This currently expects to be called from process context only, and will fail if called within interrupt context. This patch also leaves transport_generic_handle_cdb() unmodified for the moment to function as expected with existing tcm_fc and ib_srpt fabrics, and will be removed once these have been converted and tested with v4.1 code using transport_handle_cdb_direct(). Based on Andy's original patch here: [PATCH 39/42] target: Call transport_new_cmd instead of adding to cmd queue Signed-off-by: Nicholas Bellinger commit 35462975b2b197b990fedbb74b81f9bea9d344cb Author: Christoph Hellwig Date: Tue May 31 23:56:57 2011 -0400 target: merge release_cmd methods The release_cmd_to_pool and release_cmd_direct methods are always the same. Merge them into a single release_cmd method, and clean up the fallout. (nab: fix breakage in transport_generic_free_cmd() parameter build breakage in drivers/target/tcm_fc/tfc_cmd.c) Signed-off-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit db1620a2788f6c470804f6a5f983a0152188bd90 Author: Christoph Hellwig Date: Tue May 31 17:06:43 2011 -0400 target: remove the unused SCF_* flags This patch contains a squashed version to remove unused SCF_* flags: target: remove the unused SCF_SE_DISABLE_ONLINE_CHECK flag target: remove the unused SCF_CMD_PASSTHROUGH_NOALLOC flag target: remove the unused SCF_EMULATE_SYNC_UNMAP flag target: remove the unused SCF_EMULATE_SYNC_CACHE flag Signed-off-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit dc2e652d5f36d7b1c8764c3c3174e28ec2d9903b Author: Christoph Hellwig Date: Tue May 31 17:06:42 2011 -0400 target: remove the always-noop ->new_cmd_failure method Signed-off-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit a1d8b49abd60ba5d09e7c968731abcb0f8f1cbf6 Author: Andy Grover Date: Mon May 2 17:12:10 2011 -0700 target: Updates from AGrover and HCH (round 3) This patch contains a squashed version of third round series cleanups, improvements ,and simplfications from Andy and Christoph ahead of the heavy lifting between round 3 -> 4 for the target core SGL conversion. This include cleanups to the main target I/O path and other miscellaneous updates. target: Replace custom sg<->buf functions with lib funcs target: Simplify sector limiting code target: get_cdb should never return NULL target: Simplify transport_memcpy_se_mem_read_contig target: Use assignment rather than increment for t_task_cdbs target: Don't pass dma_size to generic_get_mem target: Pass sg with type scatterlist in transport_map_sg_to_mem target: Move task_sg_num next to task_sg in struct se_task target: inline struct se_transport_task into struct se_cmd target: Change name & semantics of transport_get_sectors() target: Remove unused members of se_cmd target: Rename se_cmd.t_task_cdbs to t_task_list_num target: Fix some spelling target: Remove unused var from transport_generic_do_tmr target: map_sg_to_mem: return sg_count in return value target/pscsi: Use min_t for sector limits target/pscsi: Unused param for pscsi_get_bio() target: Rename get_cdb_count to allocate_tasks target: Make transport_generic_new_cmd() available for iscsi-target target: Remove fabric callback to allocate iovecs target: Fix transport_generic_new_cmd WRITE comment (hch: Use __GFP_ZERO usage for alloc_pages() usage) Signed-off-by: Andy Grover Reviewed-by: Christoph Hellwig Signed-off-by: Nicholas Bellinger commit dd3a5ad8e0c8706659f02c4a72b8c87f6f7ab479 Author: Nicholas Bellinger Date: Fri May 6 17:55:35 2011 -0700 target: Fix WRITE_SAME_[16,32] number of blocks=0 case This patch fixes the handling of WRITE_SAME_[16,32] emulation where a WRITE_SAME_* CDB with number of blocks=0 was being rejected by SCSI expected data transfer length overflow checking in target core. It changes both CDB cases in transport_generic_cmd_sequencer() to use dev->se_sub_dev->se_dev_attrib.block_size to match what sg_write_same is sending us with --num=0. It also fixes target_emulate_write_same() to properly determine the num_blocks with --num=0 case to determine the remaining range for dev->transport->do_discard(). Reported-by: Chris Greiveldinger Signed-off-by: Nicholas A. Bellinger commit 1eb437a4ac1813f21424b8c9c39575fd61528a26 Author: Nicholas Bellinger Date: Tue May 3 14:23:54 2011 -0700 target: Fix WRITE_SAME_16 t_task_lba assignment bug This patch fixes a bug in the assignment of cmd->t_task.t_task_lba with WRITE_SAME_16 to correctly use get_unaligned_be64() for the 64-bit LBA. Reported-by: Chris Greiveldinger Signed-off-by: Nicholas A. Bellinger commit 5951146dea1ac8ff2f177477c907084d63913cad Author: Andy Grover Date: Tue Jul 19 10:26:37 2011 +0000 target: More core cleanups from AGrover (round 2) This patch contains the squashed version of second round of target core cleanups and simplifications and Andy and Co. It also contains a handful of fixes to address bugs the original series and other minor cleanups. Here is the condensed shortlog: target: Remove unneeded casts to void* target: Rename get_lun_for_{cmd,tmr} to lookup_{cmd,tmr}_lun target: Make t_task a member of se_cmd, not a pointer target: Handle functions returning "-2" target: Use cmd->se_dev over cmd->se_lun->lun_se_dev target: Embed qr in struct se_cmd target: Replace embedded struct se_queue_req with a list_head target: Rename list_heads that are nodes in struct se_cmd to "*_node" target: Fold transport_device_setup_cmd() into lookup_{tmr,cmd}_lun() target: Make t_mem_list and t_mem_list_bidi members of t_task target: Add comment & cleanup transport_map_sg_to_mem() target: Remove unneeded checks in transport_free_pages() (Roland: Fix se_queue_req removal leftovers OOPs) (nab: Fix transport_lookup_tmr_lun failure case) (nab: Fix list_empty(&cmd->t_task.t_mem_bidi_list) inversion bugs) Signed-off-by: Andy Grover Signed-off-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit f22c119683e73498d8126581a1be75e1b7a339a3 Author: Roland Dreier Date: Mon May 2 22:15:37 2011 -0700 target: Fix double test of inquiry_prod The code in transport_add_device_to_core_hba() really intends to make sure that neither inquiry_prod nor inquiry_rev is NULL. Signed-off-by: Roland Dreier Signed-off-by: Nicholas A. Bellinger commit e3d6f909ed803d92a5ac9b4a2c087e0eae9b90d0 Author: Andy Grover Date: Tue Jul 19 08:55:10 2011 +0000 target: Core cleanups from AGrover (round 1) This patch contains the squashed version of a number of cleanups and minor fixes from Andy's initial series (round 1) for target core this past spring. The condensed log looks like: target: use errno values instead of returning -1 for everything target: Rename transport_calc_sg_num to transport_init_task_sg target: Fix leak in error path in transport_init_task_sg target/pscsi: Remove pscsi_get_sh() usage target: Make two runtime checks into WARN_ONs target: Remove hba queue depth and convert to spin_lock_irq usage target: dev->dev_status_queue_obj is unused target: Make struct se_queue_req.cmd type struct se_cmd * target: Remove __transport_get_qr_from_queue() target: Rename se_dev->g_se_dev_list to se_dev_node target: Remove struct se_global target: Simplify scsi mib index table code target: Make dev_queue_obj a member of se_device instead of a pointer target: remove extraneous returns at end of void functions target: Ensure transport_dump_vpd_ident_type returns null-terminated str target: Function pointers don't need to use '&' to be assigned target: Fix comment in __transport_execute_tasks() target: Misc style cleanups target: rename struct pr_reservation_template to pr_reservation target: Remove #defines that just perform indirection target: Inline transport_get_task_from_execute_queue() target: Minor header comment fixes Signed-off-by: Andy Grover Signed-off-by: Nicholas Bellinger commit a8c6da90b823fb94ca76ca0df6bb44e6e205dc87 Author: Nicholas Bellinger Date: Sun Mar 6 11:49:36 2011 -0800 target: Remove unused su_group usage in fabric register/dergister This patch removes two instances of left over v3.x code performing local scope access to struct target_core_fabric_ops->tf_subsys->su_group in target_fabric_configfs_register() and target_fabric_configfs_deregister(). Reported-by: Christophe Fergeau Signed-off-by: Nicholas A. Bellinger commit efa4988d72c69d3024ee25ad1ae87c83b9f8267e Author: Nicholas Bellinger Date: Tue Jul 19 08:09:01 2011 +0000 target: Remove unnecessary *cdb transport_get_lun_for_cmd parameter This patch removes the now unnecessary 'unsigned char *cdb' function parameter from transport_get_lun_for_cmd(). This also includes updating lio-target, tcm_loop and tcm_fc usage of transport_get_lun_for_cmd(). Reported-by: Fubo Chen Signed-off-by: Nicholas A. Bellinger commit e434f1f182674d775c52869d49f714a2614d1c66 Author: Nicholas Bellinger Date: Mon Feb 21 07:49:26 2011 +0000 target: use MAINTENANCE_IN and MAINTENANCE_OUT definitions in scsi.h Signed-off-by: FUJITA Tomonori Signed-off-by: Nicholas A. Bellinger commit d814495599354924eb4de84727680564d685ce9e Author: Fubo Chen Date: Sun Feb 13 15:13:42 2011 -0800 target: Check LUN numbers in transport_get_lun_for_[cmd,tmr] This patch checks the passed 'unpacked_lun' against TRANSPORT_MAX_LUNS_PER_TPG before reading from struct se_node_acl->device_list[]. Signed-off-by: Fubo Chen Signed-off-by: Nicholas A. Bellinger commit ded7c1ee9799fe0ca725b459f151402e3ca4d12b Author: Thomas Gleixner Date: Fri Jul 22 11:17:11 2011 +0200 mips: Fix i8253 clockevent fallout pit_clockevent wants to replaced in the argument of the callback function as well. Reported-by; Ingo Molnar Signed-off-by: Thomas Gleixner commit 4cde7e0dca98e0e93dceb174d83f766d0d637c23 Author: Heechul Yun Date: Tue Jul 19 13:26:54 2011 +0100 ARM: 6998/2: kernel: use proper memory barriers for bitops Improve scalability by avoiding costly and unnecessary L2 cache sync in handling bitops. Signed-off-by: Heechul Yun Acked-by: Catalin Marinas Signed-off-by: Russell King commit 24daa15aabaf9ef655f7ca868366c8a4c87397f3 Author: Petr Štetiar Date: Sat Jul 9 14:18:36 2011 +0100 ARM: 6997/1: ep93xx: increase NR_BANKS to 16 for support of 128MB RAM I've got hands on one ts-7300 board, which is equiped with 128MB RAM in two 64MB memory chips, so it's 16 banks/8MB each. Without this patch, the bootmem init code complains about small NR_BANKS number and only lower 64MB is accessible. Cc: Ryan Mallon Acked-by: H Hartley Sweeten Signed-off-by: Petr Štetiar Signed-off-by: Russell King commit 9487a9cc7140ef88d532c989570ee77436ede1e0 Author: Thomas Abraham Date: Wed Jun 22 15:24:32 2011 +0530 watchdog: s3c2410: Add support for device tree based probe This patch adds the of_match_table to enable s3c2410-wdt driver to be probed when watchdog device node is found in the device tree. Signed-off-by: Thomas Abraham Acked-by: Grant Likely Signed-off-by: Wim Van Sebroeck commit 641e4f449512ced3a3b784b33ce191e664a6d2dd Author: Peter Fordham Date: Wed Jun 15 13:18:32 2011 -0700 watchdog: mpcore_wdt: Add suspend/resume support. Add support for suspend and resume to the MPCore watchdog driver. Signed-off-by: Peter Fordham Signed-off-by: Wim Van Sebroeck commit fad0a9dd0da2dc9971e0e71f41134c791f2030c2 Author: Florian Fainelli Date: Wed Jun 15 19:15:09 2011 +0200 watchdog: mtx1-wdt: use dev_{err,info} instead of printk() use dev_{err,info} instead of printk(KERN_{ERR,INFO} ...) Signed-off-by: Florian Fainelli Signed-off-by: Wim Van Sebroeck commit bfbc5e272d8aa92f6f9b05361e76e87075111e48 Author: Sascha Hauer Date: Thu Mar 3 14:30:59 2011 +0100 watchdog: i.MX: use IMX_HAVE_PLATFORM_IMX2_WDT to depend on The i.MX architecture provides IMX_HAVE_PLATFORM_* macros to signal that a selected SoC supports a certain hardware. Use them instead of depending on ARCH_* directly. Signed-off-by: Sascha Hauer Acked-by: Uwe Kleine-König Signed-off-by: Wim Van Sebroeck Cc: linux-watchdog@vger.kernel.org commit c9353ae1c69ba13ec9d29ab4f2dae881c2c06a58 Author: Jamie Iles Date: Mon Jan 24 12:19:12 2011 +0000 watchdog: add support for the Synopsys DesignWare WDT The Synopsys DesignWare watchdog is found in several ARM based systems and provides a choice of 16 timeout periods depending on the clock input. The watchdog cannot be disabled once started. Signed-off-by: Jamie Iles Acked-by: Viresh Kumar Signed-off-by: Wim Van Sebroeck commit 7ccdb9467bbb10d4afd87770f5eaeccd08551a46 Author: Jonathan McDowell Date: Thu Apr 14 12:02:39 2011 -0700 watchdog: pc87413_wdt: Cleanup pc87413 watchdog driver to use Inspired by Nat Gurumoorthy's recent patches for cleaning up the it87 drivers to use request_muxed_region for accessing the SuperIO area on these chips, and the fact I have a GPIO driver for the pc8741x basically ready for submission, here is a patch to cleanup the pc87413 watchdog driver to use request_muxed_region for accessing the SuperIO area. It also pulls out the details about the SWC IO area on initial driver load, and properly does a request_region for that area - there's no requirement to touch the SuperIO area after doing the initial watchdog enable and IO base retrieval. While I have hardware with a pc87413 on it it is not wired in a way that allows the watchdog to reboot the machine, so I have not been able to fully test these changes - I have checked that the driver correctly initialises itself still and requests the SWC io region ok. Signed-Off-By: Jonathan McDowell Signed-Off-By: Wim Van Sebroeck commit 97b08a62219d98a2bb9094e321b4ee7ccb41aa63 Author: Wim Van Sebroeck Date: Fri May 20 08:28:48 2011 +0000 watchdog: iTCO_wdt: clean-up PCI device ID's Clean up of the iTCO_wdt PCI device ID's. Own macro is replaced by the PCI_VDEVICE macro. Signed-off-by: Wim Van Sebroeck commit a134b825608df6382dbcf4fe2c54232ba8f7355f Author: Nat Gurumoorthy Date: Mon May 9 11:45:07 2011 -0700 watchdog: Use "request_muxed_region" in it87 watchdog drivers Changes the it87 watchdog drivers to use "request_muxed_region". Serialize access to the hardware by using "request_muxed_region" macro defined by Alan Cox. Call to this macro will hold off the requestor if the resource is currently busy. The use of the above macro makes it possible to get rid of spinlocks in it8712f_wdt.c and it87_wdt.c watchdog drivers. This also greatly simplifies the implementation of it87_wdt.c driver. "superio_enter" will return an error if call to "request_muxed_region" fails. Rest of the code change is to ripple an error return from superio_enter to the top level. Signed-off-by: Nat Gurumoorthy Signed-off-by: Wim Van Sebroeck commit a63e23b932eab46dc8acf39ac86e3385e2dec058 Author: Fabio Baltieri Date: Tue Jul 12 09:49:43 2011 +0200 powerpc/85xx: fix mpic configuration in CAMP mode Change the string to check for CAMP mode boot on MPC85xx (eg. P2020) to match the one in the corresponding dts files (p2020rdb_camp_core{0,1}.dts). Without this fix the mpic is configured as in the SMP boot mode, which causes the first core to report a protected source interrupt error for devices of the other core and lock up. Also add MPIC_SINGLE_DEST_CPU on both P2020 based architectures in CAMP mode as suggested by Scott Wood. Thanks. Cc: Scott Wood Cc: Poonam Aggrwal Cc: Benjamin Herrenschmidt Signed-off-by: Fabio Baltieri Signed-off-by: Kumar Gala commit 7ea466f2256b02a7047dfd47d76a2f6c1e427e3e Author: Tetsuo Handa Date: Thu Jul 21 09:42:45 2011 +0900 slab: fix DEBUG_SLAB warning In commit c225150b "slab: fix DEBUG_SLAB build", "if ((unsigned long)objp & (ARCH_SLAB_MINALIGN-1))" is always true if ARCH_SLAB_MINALIGN == 0. Do not print warning if ARCH_SLAB_MINALIGN == 0. Signed-off-by: Tetsuo Handa Signed-off-by: Pekka Enberg commit cc8f9b99ed9b728e4dd154337a4332cda9e6d38b Author: Artem Bityutskiy Date: Fri Jul 22 10:55:50 2011 +0300 MAINTAINERS: change e-mail of Adrian Hunter ... he does not work in Nokia any longer. Signed-off-by: Artem Bityutskiy commit 968543100a75bef892f52eb86e92e83b3b7bc581 Author: Stefan Berger Date: Sun Jul 17 01:04:24 2011 -0400 tpm: Move tpm_tis_reenable_interrupts out of CONFIG_PNP block This patch moves the tpm_tis_reenable_interrupts function out of the CONFIG_PNP-surrounded #define block. This solves a compilation error in case CONFIG_PNP is not defined. Signed-off-by: Stefan Berger Reported-by: Randy Dunlap Acked-by: Randy Dunlap Signed-off-by: James Morris commit 76531d4166fb620375ff3c1ac24753265216d579 Merge: 7d339ae a353fbb Author: Takashi Iwai Date: Fri Jul 22 08:43:27 2011 +0200 Merge branch 'topic/hda' into for-linus commit 7d339ae99758bc21033d4a19bcd4f7b55f96e24e Merge: 13b137e 000477a Author: Takashi Iwai Date: Fri Jul 22 08:43:24 2011 +0200 Merge branch 'topic/misc' into for-linus commit 13b137ef0367237909bb2dc38babfb8305154676 Merge: e8fd86e 4400855 Author: Takashi Iwai Date: Fri Jul 22 08:43:19 2011 +0200 Merge branch 'topic/asoc' into for-linus commit ace62dd1a805ab9de9ef8d67585d0588cb379653 Merge: 368940d 9e38082 Author: David S. Miller Date: Thu Jul 21 23:36:41 2011 -0700 Merge branch 'vhost-net-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost commit 368940d0a847041415fe8128dd062efe2567a1a9 Author: David S. Miller Date: Thu Jul 21 23:26:13 2011 -0700 net: Fix ppc64 BPF JIT dependencies. Signed-off-by: David S. Miller commit ecdfeee25f7e9779dc3eed608e54271e6ed17000 Author: Eric Dumazet Date: Thu Jul 21 23:24:52 2011 -0700 acenic: include NET_SKB_PAD headroom to incoming skbs Some workloads need some headroom (NET_SKB_PAD) to avoid expensive reallocations. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 97c7b1798f3de24315f0a3a7abcc7cf5de3285b9 Merge: e933d01 082757a Author: David S. Miller Date: Thu Jul 21 23:18:00 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-next-2.6 commit 000477a0fe1af14355a52622a77ccce8bfd7230d Author: Takashi Iwai Date: Fri Jul 22 07:57:44 2011 +0200 ALSA: asihpi - Replace with snd_ctl_boolean_mono_info() Signed-off-by: Takashi Iwai commit 082757afcf7d6e44b24c4927ce5b158196d63e84 Author: Don Skidmore Date: Thu Jul 21 05:55:00 2011 +0000 ixgbe: convert to ndo_fix_features Private rx_csum flags are now duplicate of netdev->features & NETIF_F_RXCSUM. We remove those duplicates and now use the net_device_ops ndo_set_features. This was based on the original patch submitted by Michal Miroslaw . I also removed the special case not requiring a reset for X540 hardware. It is needed just as it is in 82599 hardware. Signed-off-by: Don Skidmore Cc: Michal Miroslaw Tested-by: Phil Schmitt Signed-off-by: Jeff Kirsher commit 9417c464ba834ae29982fcd71bc59dc8e734327c Author: Andy Gospodarek Date: Sat Jul 16 07:31:33 2011 +0000 ixgbe: only enable WoL for magic packet by default Martin Wilck reported that systems using the ixgbe-driver that were capable of WoL were rebooting almost as soon as they were shut down. This is because the default WoL settings enabled magic packet, broadcast, unicast, and multicast. Other Intel devices seem to use the stored eeprom value for initial WoL capabilities. The 82578DM (e1000e) and 82576 (igb) the devices I looked at had only the magic packet enabled in the eeprom, so that seems appropriate on ixgbe-based devices as well. I set the WoL options on my 82578DM to be the same default as the ixgbe devices (umbg) and saw the same as Martin -- almost as soon as my box shutdown, it booted again. This patch changes the default to only be the magic packet. This is the same as the default for most Intel and non-Intel hardware currently upstream. Signed-off-by: Andy Gospodarek CC: Martin Wilck Tested-by: Phil Schmitt Signed-off-by: Jeff Kirsher commit 34c6ee8181d6ec1ed761ed2fdac4f1b0358e5447 Author: Emil Tantilov Date: Tue Jul 12 08:13:41 2011 +0000 ixgbe: remove ifdef check for non-existent define Signed-off-by: Emil Tantilov Tested-by: Phil Schmitt Signed-off-by: Jeff Kirsher commit ff886dfce2bdacbe71583ec973cec117973d8859 Author: Alexander Duyck Date: Sat Jun 11 01:45:13 2011 +0000 ixgbe: Pass staterr instead of re-reading status and error bits from descriptor This change is meant to address possible race conditions from the status and error bits on the RX descriptors being re-read by multiple functions in the RX cleanup path. To resolve this I have added code that will pass the staterr value to those functions. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit bd19805803a954415ec36a559fd3b8a0a3647d7c Author: Alexander Duyck Date: Sat Jun 11 01:45:08 2011 +0000 ixgbe: Move interrupt related values out of ring and into q_vector This change moves work_limit, total_packets, and total_bytes into the ring container struct of the q_vector. The advantage of this is that it should reduce the size of memory used in the event of multiple rings being assigned to a single q_vector. In addition it should help to reduce the total workload for calculating itr since now total_packets and total_bytes will be the total work done of the interrupt instead of for the ring. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 08c8833b29cfa4343ff132eebc5648b234eb3f85 Author: Alexander Duyck Date: Sat Jun 11 01:45:03 2011 +0000 ixgbe: add structure for containing RX/TX rings to q_vector This patch adds support for a ring container structure to be used within the q_vector. The basic idea is to provide a means of separating the RX and TX rings while maintaining a common structure for their containment. The advantage to this is that later we should be able to pass this structure to the update_itr functions without needing to pass individual rings. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit e1892fa80def35f7d0e9963e582edba01dd8e453 Author: Dotan Barak Date: Thu Jul 14 14:36:42 2011 +0000 mlx4_core: Bump the driver version to 1.0 Many features were added to this driver, so the driver version should change too. Signed-off-by: Dotan Barak Signed-off-by: Roland Dreier commit 509a7147446100d85f4bfd9dd330eb6c9428f3d3 Author: Eliot Blennerhassett Date: Fri Jul 22 15:53:04 2011 +1200 ALSA: asihpi - HPI version 4.08 HPI Version is used to check for firmware compatibility. This version will accept 4.08.xx released firmware, and will also accept 4.09.xx beta firmware Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 82d4e46e2a398154273044dd9813206f0d85bc09 Author: Alexander Duyck Date: Sat Jun 11 01:44:58 2011 +0000 ixgbe: inline the ixgbe_maybe_stop_tx function The ixgbe_maybe_stop_tx function is only a few lines long and is called multiple times through the xmit hotpath. In order to streamline things it makes sense to just inline it. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit fe0aa88eecfc0a9caa6f6298eb600eb7a55d8a17 Author: Eliot Blennerhassett Date: Fri Jul 22 15:53:03 2011 +1200 ALSA: asihpi - Add volume mute controls Mute functionality was recently added to the DSP firmware Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 6440752c872e418452a2cbbf5e73d546affe2b28 Author: Alexander Duyck Date: Sat Jun 11 01:44:53 2011 +0000 ixgbe: Update ATR to use recorded TX queues instead of CPU for routing This change is meant to update ATR so that it will use the recorded RX queue instead of the CPU in the case of routing. This change is meant to help ixgbe default behavior to more closely match that of the kernel. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit a14bc2bb7075e59be635a2470dc0a32c5a0e8e21 Author: Robert Healy Date: Tue Jul 12 08:46:20 2011 +0000 igb: Fix for DH89xxCC near end loopback test On this chipset it is required to configure the MPHY block for loopback tests. If MPHY is not configured then all loopback tests will report failures. Signed-off-by: Robert Healy Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit c8306135746687b30048f8bd949d2dfb8d6c697a Author: Eliot Blennerhassett Date: Fri Jul 22 15:53:00 2011 +1200 ALSA: asihpi - Control name updates Add names corresponding to new HPI node types. Shorten some names so that constructed names don't overflow the maximum name length. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 6d9e5130b96daa1656966f7271e8a0928b3906c4 Author: Nicolas Schichan Date: Sat Jul 9 00:24:18 2011 +0000 e1000: always call e1000_check_for_link() on e1000_ce4100 MACs. Interrupts about link lost or rx sequence errors are not reported by the ce4100 hardware, leading to transitions from link UP to link DOWN never being reported. Signed-off-by: Nicolas Schichan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 3d0591eee46f1c7cdfd502c8366e5552b8cea3db Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:58 2011 +1200 ALSA: asihpi - Use size_t for sizeof result Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 5ddc5bef5cfff111addb2b0b2967dda74a14cce4 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:56 2011 +1200 ALSA: asihpi - Explicitly include mutex.h Because mutex is used in adapter struct defined here. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit b7f12482ca54353fbd8ea2fa3ca1ce996dcb5a3c Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:55 2011 +1200 ALSA: asihpi - Add new node and message defines Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 33162d2dfa8e8f5596f3106057df68c6533acfc6 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:52 2011 +1200 ALSA: asihpi - Make local function static Fixes a sparse warning. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 938c565a821706177d810dc08f9e1506d7429760 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:50 2011 +1200 ALSA: asihpi - Fix minor typos and spelling Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 4bf8cff05a4461d24b36d9942a077504a3461732 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:48 2011 +1200 ALSA: asihpi - Remove unused structures, macros and functions Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 1c073b6797969dfc808d077cf28f9e0205070edd Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:46 2011 +1200 ALSA: asihpi - Remove spurious adapter index check Subsystem requests don't have or need a valid adapter index. The adapter index is already checked further on, before it is used to index the adapters array. (Reverts 4a122c10f) Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 0a17e993076f226aca3463a1c7fb9265e06ed2d3 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:44 2011 +1200 ALSA: asihpi - Revise snd_pcm_debug_name, get rid of DEBUG_NAME macro Work towards moving the function into alsa common header. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 95a4c6e785bf7e2e5cde7f92c9252877b4fcea46 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:42 2011 +1200 ALSA: asihpi - DSP code loader API now independent of OS The loader API has been revised so that OS specific data is kept local to hpidspcd.c, and the public API is unchanged across OSes. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 58fbf77ff5d258a15a4084940e08219d7ee6f449 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:40 2011 +1200 ALSA: asihpi - Remove controlex structs and associated special data transfer code Some cobranet control data would not fit in an original HPI message. Now that HPI is able to transfer larger messages, this special handling is no longer required. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit c6c2c9aba16c41a8f72bec0738880447d158bdf7 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:38 2011 +1200 ALSA: asihpi - Increase request and response buffer sizes Allow for up to 256 bytes of extra data on top of standard hpi request and response sizes. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 82b5774fe02c61fc70aed6bc885f0d26b708e925 Author: Eliot Blennerhassett Date: Fri Jul 22 15:52:36 2011 +1200 ALSA: asihpi - Give more meaningful name to hpi request message type Having a 'request message' makes more sense than a 'message message' Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 996ba96a97f7406052486682846d68935a60e986 Author: Rusty Russell Date: Fri Jul 22 14:39:51 2011 +0930 lguest: Fix in/out emulation We were blatting too much of the register. Linux didn't care, but in theory it might. Reported-by: Jonas Maebe Signed-off-by: Rusty Russell commit 8d431f41603acff8a20cf5df99bc8958c91879c1 Author: Adrian Knoth Date: Mon Jul 11 18:08:47 2011 +0200 lguest: Fix translation count about wikipedia's cpuid page The comment is outdated, wikipedia now has six translations of the cpuid page. Signed-off-by: Adrian Knoth Signed-off-by: Rusty Russell commit 64be11583bac5ca65d017a5c4288f10b2bcf1928 Author: Adrian Knoth Date: Mon Jul 11 18:07:14 2011 +0200 lguest: Fix three simple typos in comments This patch fixes three typos I've accidentally spotted. Signed-off-by: Adrian Knoth Signed-off-by: Rusty Russell (one was already fixed) commit 9f54288def3f92b7805eb6d4b1ddcd73ecf6e889 Author: Rusty Russell Date: Fri Jul 22 14:39:50 2011 +0930 lguest: update comments Also removes a long-unused #define and an extraneous semicolon. Signed-off-by: Rusty Russell commit 3c3ed482dc077a67903a58c9e1aedba1bb18c18a Author: Rusty Russell Date: Fri Jul 22 14:39:49 2011 +0930 lguest: Simplify device initialization. We used to notify the Host every time we updated a device's status. However, it only really needs to know when we're resetting the device, or failed to initialize it, or when we've finished our feature negotiation. In particular, we used to wait for VIRTIO_CONFIG_S_DRIVER_OK in the status byte before starting the device service threads. But this corresponds to the successful finish of device initialization, which might (like virtio_blk's partition scanning) use the device. So we had a hack, if they used the device before we expected we started the threads anyway. Now we hook into the finalize_features hook in the Guest: at that point we tell the Launcher that it can rely on the features we have acked. On the Launcher side, we look at the status at that point, and start servicing the device. Signed-off-by: Rusty Russell commit 6d7a5d1ea34495ecb1d608f0e40afba7776ee408 Author: Rusty Russell Date: Fri Jul 22 14:39:49 2011 +0930 lguest: don't rewrite vmcall instructions Now we no longer use vmcall, we don't need to rewrite it in the Guest. Signed-off-by: Rusty Russell commit 7e1941444f808d8001aa3b63588150c516321a3c Author: Rusty Russell Date: Fri Jul 22 14:39:49 2011 +0930 lguest: remove remaining vmcall We switch back from using vmcall in 091ebf07a2408f9a56634caa0f86d9360e9af23b because it was unreliable under kvm, but I missed one (rarely-used) place. Signed-off-by: Rusty Russell commit 5dea1c88ed11a1221581c4b202f053c4fc138704 Author: Rusty Russell Date: Fri Jul 22 14:39:48 2011 +0930 lguest: use a special 1:1 linear pagetable mode until first switch. The Host used to create some page tables for the Guest to use at the top of Guest memory; it would then tell the Guest where this was. In particular, it created linear mappings for 0 and 0xC0000000 addresses because lguest used to switch to its real page tables quite late in boot. However, since d50d8fe19 Linux initialized boot page tables in head_32.S even before the "are we lguest?" boot jump. So, now we can simplify things: the Host pagetable code assumes 1:1 linear mapping until it first calls the LHCALL_NEW_PGTABLE hypercall, which we now do before we reach C code. This also means that the Host doesn't need to know anything about the Guest's PAGE_OFFSET. (Non-Linux guests might not even have such a thing). Signed-off-by: Rusty Russell commit e0377e25206328998d036cafddcd00a7c3252e3e Author: Sakari Ailus Date: Sun Jun 26 19:36:46 2011 +0300 lguest: Do not exit on non-fatal errors Do not exit on some non-fatal errors: - writev() fails in net_output(). The result is a lost packet or packets. - writev() fails in console_output(). The result is partially lost console output. - readv() fails in net_input(). The result is a lost packet or packets. Rather than bringing the guest down, this patch ignores e.g. an allocation failure on the host side. Example: lguest: page allocation failure. order:4, mode:0x4d0 Pid: 4045, comm: lguest Tainted: G W 2.6.36 #1 Call Trace: [] ? printk+0x18/0x1c [] __alloc_pages_nodemask+0x4d2/0x570 [] cache_alloc_refill+0x2a4/0x4d0 [] ? __netif_receive_skb+0x189/0x270 [] __kmalloc+0xda/0xf0 [] __alloc_skb+0x55/0x100 [] ? net_rx_action+0x79/0x100 [] sock_alloc_send_pskb+0x18d/0x280 [] ? _copy_from_user+0x35/0x130 [] ? memcpy_fromiovecend+0x56/0x80 [] tun_chr_aio_write+0x1cc/0x500 [] do_sync_readv_writev+0x95/0xd0 [] ? _copy_from_user+0x35/0x130 [] ? rw_copy_check_uvector+0x58/0x100 [] do_readv_writev+0x9c/0x1d0 [] ? tun_chr_aio_write+0x0/0x500 [] vfs_writev+0x4a/0x60 [] sys_writev+0x41/0x80 [] syscall_call+0x7/0xb Mem-Info: DMA per-cpu: CPU 0: hi: 0, btch: 1 usd: 0 Normal per-cpu: CPU 0: hi: 186, btch: 31 usd: 0 HighMem per-cpu: CPU 0: hi: 186, btch: 31 usd: 0 active_anon:134651 inactive_anon:50543 isolated_anon:0 active_file:96881 inactive_file:132007 isolated_file:0 unevictable:0 dirty:3 writeback:0 unstable:0 free:91374 slab_reclaimable:6300 slab_unreclaimable:2802 mapped:2281 shmem:9 pagetables:330 bounce:0 DMA free:3524kB min:64kB low:80kB high:96kB active_anon:0kB inactive_anon:8kB active_file:8760kB inactive_file:2760kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15868kB mlocked:0kB dirty:0kB writeback:0kB mapped:16kB shmem:0kB slab_reclaimable:88kB slab_unreclaimable:148kB kernel_stack:40kB pagetables:0kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 865 2016 2016 Normal free:150100kB min:3728kB low:4660kB high:5592kB active_anon:6224kB inactive_anon:15772kB active_file:324084kB inactive_file:325944kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:885944kB mlocked:0kB dirty:12kB writeback:0kB mapped:1520kB shmem:0kB slab_reclaimable:25112kB slab_unreclaimable:11060kB kernel_stack:1888kB pagetables:1320kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 9207 9207 HighMem free:211872kB min:512kB low:1752kB high:2992kB active_anon:532380kB inactive_anon:186392kB active_file:54680kB inactive_file:199324kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:1178504kB mlocked:0kB dirty:0kB writeback:0kB mapped:7588kB shmem:36kB slab_reclaimable:0kB slab_unreclaimable:0kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 DMA: 3*4kB 65*8kB 35*16kB 18*32kB 11*64kB 9*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 3524kB Normal: 35981*4kB 344*8kB 158*16kB 28*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 150100kB HighMem: 5732*4kB 5462*8kB 2826*16kB 1598*32kB 84*64kB 10*128kB 7*256kB 1*512kB 1*1024kB 1*2048kB 9*4096kB = 211872kB 231237 total pagecache pages 2340 pages in swap cache Swap cache stats: add 160060, delete 157720, find 189017/194106 Free swap = 4179840kB Total swap = 4194300kB 524271 pages RAM 296946 pages HighMem 5668 pages reserved 867664 pages shared 82155 pages non-shared Signed-off-by: Sakari Ailus Signed-off-by: Rusty Russell commit e933d0198d399842f075c2c8af0f38630e7e4bee Author: Amit Kumar Salecha Date: Wed Jul 20 00:08:53 2011 +0000 netxen: add fw version compatibility check o Minimum fw version supported for P3 chip is 4.0.505 o File Fw > 4.0.554 is not supported if flash fw < 4.0.554. o In mn firmware case, file fw older than flash fw is allowed. o Change variable names for readability o Update driver version 4.0.76 Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 2dc1deb659d1fc29aaafc2c0b987547d6b383602 Author: Sathya Perla Date: Tue Jul 19 19:52:33 2011 +0000 be2net: request native mode each time the card is reset Currently be3-native mode is requested only in probe(). It must be requested, each time the card is reset either after an EEH error or after sleep/hibernation. Also, the be_cmd_check_native_mode() is better named be_cmd_req_native_mode() Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit d9be4f7a6f5a8da3133b832eca41c3591420b1ca Author: Bill Sommerfeld Date: Tue Jul 19 15:22:33 2011 +0000 ipv4: Constrain UFO fragment sizes to multiples of 8 bytes Because the ip fragment offset field counts 8-byte chunks, ip fragments other than the last must contain a multiple of 8 bytes of payload. ip_ufo_append_data wasn't respecting this constraint and, depending on the MTU and ip option sizes, could create malformed non-final fragments. Google-Bug-Id: 5009328 Signed-off-by: Bill Sommerfeld Signed-off-by: David S. Miller commit 2e66f55b3afa290337a47e6ea134ac071c5dd9a7 Author: Krishna Kumar Date: Wed Jul 20 03:56:02 2011 +0000 virtio_net: Fix panic in virtnet_remove Fix a panic in virtnet_remove. unregister_netdev has already freed up the netdev (and virtnet_info) due to dev->destructor being set, while virtnet_info is still required. Remove virtnet_free altogether, and move the freeing of the per-cpu statistics from virtnet_free to virtnet_remove. Tested patch below. Signed-off-by: Krishna Kumar Acked-by: Michael S. Tsirkin Signed-off-by: David S. Miller commit 87c48fa3b4630905f98268dde838ee43626a060c Author: Eric Dumazet Date: Thu Jul 21 21:25:58 2011 -0700 ipv6: make fragment identifications less predictable IPv6 fragment identification generation is way beyond what we use for IPv4 : It uses a single generator. Its not scalable and allows DOS attacks. Now inetpeer is IPv6 aware, we can use it to provide a more secure and scalable frag ident generator (per destination, instead of system wide) This patch : 1) defines a new secure_ipv6_id() helper 2) extends inet_getid() to provide 32bit results 3) extends ipv6_select_ident() with a new dest parameter Reported-by: Fernando Gont Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 21efcfa0ff27776902a8a15e810147be4d937d69 Author: Eric Dumazet Date: Tue Jul 19 20:18:36 2011 +0000 ipv6: unshare inetpeers We currently cow metrics a bit too soon in IPv6 case : All routes are tied to a single inetpeer entry. Change ip6_rt_copy() to get destination address as second argument, so that we fill rt6i_dst before the dst_copy_metrics() call. icmp6_dst_alloc() must set rt6i_dst before calling dst_metric_set(), or else the cow is done while rt6i_dst is still NULL. If orig route points to readonly metrics, we can share the pointer instead of performing the memory allocation and copy. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 61463a30f65225e19e68f59dbd7b888bb308ec99 Author: Thadeu Lima de Souza Cascardo Date: Thu Jul 21 16:22:31 2011 +0000 can: make function can_get_bittiming static The function can_get_bittiming is not used anywhere else, so it should be static. Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: David S. Miller commit e3dbc46c2a62688d1aaa1f7291a054fb2b502849 Author: Choi, Jong-Hwan Date: Wed Jul 20 20:33:03 2011 +0000 net: Kobj and queues_kset should be used when CONFIG_XPS is enabled Kobj and queues_kset are used with CONFIG_XPS=y. Signed-off-by: Choi, Jong-Hwan Signed-off-by: David S. Miller commit ebbf9295b17ed605f31f45d9269adb216be3a181 Author: Shreyas Bhatewara Date: Wed Jul 20 17:21:51 2011 +0000 vmxnet3: fix publicity of NETIF_F_HIGHDMA NETIF_F_HIGHDMA is being disabled even when dma64 is true. This patch fixes it. CC: Michal Miroslaw Signed-off-by: Shreyas N Bhatewara Signed-off-by: David S. Miller commit e101e7ddad7a16ada030d6d1f044381924bcc0c1 Author: Shreyas Bhatewara Date: Wed Jul 20 16:01:11 2011 +0000 vmxnet3: set netdev parant device before calling netdev_info Parent device for netdev should be set before netdev_info() can be called otherwise there is a NULL pointer dereference and probe() fails. Signed-off-by: Shreyas N Bhatewara Signed-off-by: Scott J. Goldman -- Signed-off-by: David S. Miller commit 308859097831831a979f2e82cbeef0a94f438080 Author: Marek Vasut Date: Wed Jul 20 05:57:04 2011 +0000 ASIX: Add AX88772B USB ID This device can be found in Acer Iconia TAB W500 tablet dock. Signed-off-by: Marek Vasut Signed-off-by: David S. Miller commit 50d2a4223bb875d1e3a7ee97d40dd03bf31ce1b7 Author: Benjamin Herrenschmidt Date: Mon Jul 18 17:17:22 2011 +0000 powerpc: Copy back TIF flags on return from softirq stack We already did it for hard IRQs but it looks like we forgot to do it for softirqs. Without this, we would lose flags such as TIF_NEED_RESCHED set using current_thread_info() by something running of a softirq. Signed-off-by: Benjamin Herrenschmidt commit 5adfd346e48c7742bad179f9e959d15afbf5f95e Author: Kumar Gala Date: Wed Jul 13 05:00:41 2011 +0000 powerpc/64: Make server perfmon only built on ppc64 server devices The 64-bit Book-E parts (to date) dont utilize the 'server' class perfmon. So building or depending on it makes no sense (and does break FSL Book-E 64-bit support). Move the selection of PPC_HAVE_PMU_SUPPORT to be based on PPC_BOOK3S_64. Based on a patch from Scott Wood. Signed-off-by: Kumar Gala Signed-off-by: Benjamin Herrenschmidt commit e627539090d5a4efe1d55f1dfa24f8ce08a454e8 Merge: 557e2a3 94c5b41 Author: David S. Miller Date: Thu Jul 21 20:21:27 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit 4b575f3e8aba07688fc48025efde41036e5d5eee Merge: f7723f0 a8e616b Author: Benjamin Herrenschmidt Date: Fri Jul 22 13:16:41 2011 +1000 Merge remote-tracking branch 'jwb/next' into next commit cc6d3497141adedb71de8ddce62bf4cd4817832d Author: Phillip Lougher Date: Fri Jul 22 03:01:28 2011 +0100 Squashfs: Make ZLIB compression support optional Squashfs now supports XZ and LZO compression in addition to ZLIB. As such it no longer makes sense to always include ZLIB support. In particular embedded systems may only use LZO or XZ compression, and the ability to exclude ZLIB support will reduce kernel size. Signed-off-by: Phillip Lougher commit 812753d66f5a45e59a9e0904c77a661c2410a3b4 Author: Phillip Lougher Date: Fri Jul 22 02:26:52 2011 +0100 Squashfs: Update documentation for XZ and add squashfs-tools devel tree Signed-off-by: Phillip Lougher commit 557e2a394de0d142ba930ff3cdb2909419414e06 Author: Giuseppe CAVALLARO Date: Wed Jul 20 00:05:24 2011 +0000 stmmac: improve and up-to-date the documentation This patch adds new information for the driver especially about its platform structure fields. Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 36bcfe7d74782c07f601edc4831f6b1ef40e9e43 Author: Giuseppe CAVALLARO Date: Wed Jul 20 00:05:23 2011 +0000 stmmac: unify MAC and PHY configuration parameters (V2) Prior to this change, most PHY configuration parameters were passed into the STMMAC device as a separate PHY device. As well as being unusual, this made it difficult to make changes to the MAC/PHY relationship. This patch moves all the PHY parameters into the MAC configuration structure, mainly as a separate structure. This allows us to completely ignore the MDIO bus attached to a stmmac if desired, and not create the PHY bus. It also allows the stmmac driver to use a different PHY from the one it is connected to, for example a fixed PHY or bit banging PHY. Also derive the stmmac/PHY connection type (MII/RMII etc) from the mode can be passed into _configure_ethernet. STLinux kernel at git://git.stlinux.com/stm/linux-sh4-2.6.32.y.git provides several examples how to use this new infrastructure (that actually is easier to maintain and clearer). Signed-off-by: Stuart Menefy Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit f3240e2811f05f11126b0947ff9bb411b692b2aa Author: Giuseppe CAVALLARO Date: Wed Jul 20 00:05:22 2011 +0000 stmmac: remove warning when compile as built-in (V2) The patch removes the following serie of warnings when the driver is compiled as built-in: drivers/net/stmmac/stmmac_main.c: In function stmmac_cmdline_opt: drivers/net/stmmac/stmmac_main.c:1855:12: warning: ignoring return value of kstrtoul, declared with attribute warn_unused_result [snip] Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 3bec5dcc649bf6b9c8f9ea996c3333381665f263 Author: Giuseppe CAVALLARO Date: Wed Jul 20 00:05:21 2011 +0000 stmmac: update the version (V2) Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 67ae7cf1eeda777f79259c4c6cb17a0bd28dee71 Author: Ben Hutchings Date: Thu Jul 21 15:25:30 2011 -0700 ethtool: Allow zero-length register dumps again Some drivers (ab)use the ethtool_ops::get_regs operation to expose only a hardware revision ID. Commit a77f5db361ed9953b5b749353ea2c7fed2bf8d93 ('ethtool: Allocate register dump buffer with vmalloc()') had the side-effect of breaking these, as vmalloc() returns a null pointer for size=0 whereas kmalloc() did not. For backward-compatibility, allow zero-length dumps again. Reported-by: Kalle Valo Signed-off-by: Ben Hutchings Cc: stable@kernel.org [2.6.37+] Signed-off-by: David S. Miller commit 94c5b41b327e08de0ddf563237855f55080652a1 Author: Guo-Fu Tseng Date: Wed Jul 20 16:57:36 2011 +0000 jme: Fix unmap error (Causing system freeze) This patch add the missing dma_unmap(). Which solved the critical issue of system freeze on heavy load. Michal Miroslaw's rejected patch: [PATCH v2 10/46] net: jme: convert to generic DMA API Pointed out the issue also, thank you Michal. But the fix was incorrect. It would unmap needed address when low memory. Got lots of feedback from End user and Gentoo Bugzilla. https://bugs.gentoo.org/show_bug.cgi?id=373109 Thank you all. :) Cc: stable@kernel.org Signed-off-by: Guo-Fu Tseng Acked-by: Chris Wright Signed-off-by: David S. Miller commit 1511022c9aabf253253e35730a6a3b945a2a53a9 Author: Dan Carpenter Date: Tue Jul 19 22:51:49 2011 +0000 skbuff: fix error handling in pskb_copy() There are two problems: 1) "n" was allocated with alloc_skb() so we should free it with kfree_skb() instead of regular kfree(). 2) We return the freed pointer instead of NULL. Signed-off-by: Dan Carpenter Reviewed-by: Eric Dumazet Signed-off-by: David S. Miller commit bfe159a51203c15d23cb3158fffdc25ec4b4dda1 Author: James Bottomley Date: Thu Jul 7 15:45:40 2011 -0500 [SCSI] fix crash in scsi_dispatch_cmd() USB surprise removal of sr is triggering an oops in scsi_dispatch_command(). What seems to be happening is that USB is hanging on to a queue reference until the last close of the upper device, so the crash is caused by surprise remove of a mounted CD followed by attempted unmount. The problem is that USB doesn't issue its final commands as part of the SCSI teardown path, but on last close when the block queue is long gone. The long term fix is probably to make sr do the teardown in the same way as sd (so remove all the lower bits on ejection, but keep the upper disk alive until last close of user space). However, the current oops can be simply fixed by not allowing any commands to be sent to a dead queue. Cc: stable@kernel.org Signed-off-by: James Bottomley commit 79b9677d885d1a792bc103f2febb06f91f92de43 Author: Kay Sievers Date: Thu Jun 30 15:03:48 2011 +0200 [SCSI] sr: check_events() ignore GET_EVENT when TUR says otherwise Some broken devices indicates that media has changed on every GET_EVENT_STATUS_NOTIFICATION. This translates into MEDIA_CHANGE uevent on every open() which lets udev run into a loop. Verify GET_EVENT result against TUR and if it generates spurious events for several times in a row, ignore the GET_EVENT events, and trust only the TUR status. This is the log of a USB stick with a (broken) fake CDROM drive: scsi 5:0:0:0: Direct-Access SanDisk U3 Cruzer Micro 8.02 PQ: 0 ANSI: 0 CCS sd 5:0:0:0: Attached scsi generic sg3 type 0 scsi 5:0:0:1: CD-ROM SanDisk U3 Cruzer Micro 8.02 PQ: 0 ANSI: 0 sd 5:0:0:0: [sdb] Attached SCSI removable disk sr2: scsi3-mmc drive: 48x/48x tray sr 5:0:0:1: Attached scsi CD-ROM sr2 sr 5:0:0:1: Attached scsi generic sg4 type 5 sr2: GET_EVENT and TUR disagree continuously, suppress GET_EVENT events sd 5:0:0:0: [sdb] 31777279 512-byte logical blocks: (16.2 GB/15.1 GiB) sd 5:0:0:0: [sdb] No Caching mode page present sd 5:0:0:0: [sdb] Assuming drive cache: write through sd 5:0:0:0: [sdb] No Caching mode page present sd 5:0:0:0: [sdb] Assuming drive cache: write through sdb: sdb1 -tj: Updated to consider only spurious GET_EVENT events among different types of disagreement and allow using TUR for kernel event polling after GET_EVENT is ignored. Reported-By: Markus Rathgeb maggu2810@googlemail.com Signed-off-by: Kay Sievers Signed-off-by: Tejun Heo Cc: stable@kernel.org # >= v2.6.38, fixes udev busy looping w/ certain devices Signed-off-by: James Bottomley commit 0d83ab65ff1b54ce8b6cd172285cf71a38c4cceb Author: Eddie Wai Date: Fri Jul 15 11:17:26 2011 -0700 [SCSI] bnx2i: Fixed kernel panic due to illegal usage of sc->request->cpu A kernel panic was observed when passing the sc->request->cpu = -1 to retrieve the per_cpu variable pointer: #0 [ffff880011203960] machine_kexec at ffffffff81022bc3 #1 [ffff8800112039b0] crash_kexec at ffffffff81088630 #2 [ffff880011203a80] __die at ffffffff8139ea20 #3 [ffff880011203aa0] no_context at ffffffff8102f3a7 #4 [ffff880011203ae0] __bad_area_nosemaphore at ffffffff8102f665 #5 [ffff880011203ba0] retint_signal at ffffffff8139dd1f #6 [ffff880011203cc8] bnx2i_indicate_kcqe at ffffffffa03dc4f2 #7 [ffff880011203da8] service_kcqes at ffffffffa03cb04f #8 [ffff880011203e68] cnic_service_bnx2x_kcq at ffffffffa03cb14a #9 [ffff880011203e88] cnic_service_bnx2x_bh at ffffffffa03cb1b3 The problem lies in the slow path sg_io (and perhaps sg_scsi_ioctl) call to blk_get_request->get_request/wait->blk_alloc_request->blk_rq_init which re-initializes the request->cpu to -1. There is no assignment for cpu from that to the request_fn call to low level drivers. When this happens, the sc->request->cpu will be using the init value of -1. This will create a kernel panic when it hits bnx2i because the code refers it to get the per_cpu variables ptr. This change is to put in a guard against that and also for cases when bio affinity/queue completion to the same cpu is not enabled. In those cases, the request->cpu will remain a -1 also. This bug was created from commit: b5cf6b63f73abdc051035f0050b367beeb2ef94c For the case when the blk layer did not setup the request->cpu, bnx2i will complete the sc with the current CPU of the thread. Signed-off-by: Eddie Wai Signed-off-by: James Bottomley commit 536d1d4a076210f763b60d7c3823f2edbddf3a9c Author: Jiri Pirko Date: Wed Jul 20 04:54:49 2011 +0000 vlan: move vlan_group_[gs]et_device to public header there are no users outside vlan code Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 7890a5b9cbfd159c81ffd7866b5b2d4425886e7f Author: Jiri Pirko Date: Wed Jul 20 04:54:48 2011 +0000 vlan: kill ndo_vlan_rx_register has no users so remove it Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 4f7a4505f8356a739b13e55e964a7f4dc43a1633 Author: Jiri Pirko Date: Wed Jul 20 04:54:47 2011 +0000 macvlan: do vlan cleanup ndo_vlan_rx_register is no longer in use in any driver so remove it. Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit cc0e40700656b09d93b062ef6c818aa45429d09a Author: Jiri Pirko Date: Wed Jul 20 04:54:46 2011 +0000 bonding: do vlan cleanup Now when all devices are cleaned up, bond can be cleaned up as well - remove bond->vlgrp - remove bond_vlan_rx_register - substitute necessary occurences of vlan_group_get_device Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 9d846fec22db7b4876353e5e6e97dfc0878b6ada Author: Jiri Pirko Date: Wed Jul 20 04:54:45 2011 +0000 staging: et131x: remove unused prototype et131x_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 223bb15e4a78115bb1bbc3e58e246d26f2c16462 Author: Jiri Pirko Date: Wed Jul 20 04:54:44 2011 +0000 qlcnic: remove usage of vlan_group_get_device Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 5526c0313777d4e5a6551de6b34705ac1fce92a7 Author: Jiri Pirko Date: Wed Jul 20 04:54:43 2011 +0000 stmmac: do vlan cleanup - kill priv->vlgrp and stmmac_vlan_rx_register (used for nothing :)) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit ffcf9b767293ebc3e59e639cd4ec0dff5ca39798 Author: Jiri Pirko Date: Wed Jul 20 04:54:42 2011 +0000 vlan: kill vlan_gro_frags and vlan_gro_receive Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 7ff0bcf676f7ed224ce21b58c7858c8e527068b2 Author: Jiri Pirko Date: Wed Jul 20 04:54:41 2011 +0000 qeth: do vlan cleanup - unify vlan and nonvlan rx path - kill card->vlangrp and qeth_l3_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 53515734888e018af7bcec6b4464bd9e28f1d655 Author: Jiri Pirko Date: Wed Jul 20 04:54:40 2011 +0000 vxge: do vlan cleanup - unify vlan and nonvlan rx path - kill vdev->vlgrp and vxge_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit b2cb09b1a7725408a3464b2f593ceb222eff1042 Author: Jiri Pirko Date: Thu Jul 21 03:27:27 2011 +0000 igb: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and igb_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 3326c784c9f492e988617d93f647ae0cfd4c8d09 Author: Jiri Pirko Date: Wed Jul 20 04:54:38 2011 +0000 forcedeth: do vlan cleanup - unify vlan and nonvlan rx path - kill np->vlangrp and nv_vlan_rx_register - allow to turn on/off rx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 5622e4044a916de1af84bfcc4d437ce0c799d531 Author: Jiri Pirko Date: Thu Jul 21 03:26:31 2011 +0000 e1000: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and e1000_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit a4aeb26628b5184386f99cf202ac837b0e56c975 Author: Jiri Pirko Date: Wed Jul 20 04:54:36 2011 +0000 vlan: kill __vlan_hwaccel_rx and vlan_hwaccel_rx Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 892ef5d85259e193505d553c10237fd5dc9a3d0d Author: Jiri Pirko Date: Wed Jul 20 04:54:35 2011 +0000 cxgb3: do vlan cleanup - unify vlan and nonvlan rx path - kill pi->vlan_grp and vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit dc437974af52e78f2736543dfee94cc385dae6e9 Author: Jiri Pirko Date: Wed Jul 20 04:54:34 2011 +0000 atl2: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and atl2_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 924917098e4bc3561a372a6eb36993e7c3bb02f2 Author: Jiri Pirko Date: Wed Jul 20 04:54:33 2011 +0000 atl1: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and atlx_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit a4f676b80f9ca2a76cb27b8378343a5f4f972d3f Author: Jiri Pirko Date: Wed Jul 20 04:54:32 2011 +0000 ns83820: do vlan cleanup - unify vlan and nonvlan rx path - kill dev->vlgrp and ns83820_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 5da96be53a16a62488316810d0c7c5d58ce3ee4f Author: Jiri Pirko Date: Wed Jul 20 04:54:31 2011 +0000 starfire: do vlan cleanup - unify vlan and nonvlan rx path - kill np->vlgrp and netdev_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 73b54688815f76bdccb8b94b5d1fd2dd0af3ea70 Author: Jiri Pirko Date: Wed Jul 20 04:54:30 2011 +0000 via-velocity: do vlan cleanup - unify vlan and nonvlan rx path - kill vptr->vlgrp and velocity_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 08dddfc3f6e39fc81238ef4804815c559f314066 Author: Jiri Pirko Date: Wed Jul 20 04:54:29 2011 +0000 acenic: do vlan cleanup - unify vlan and nonvlan rx path - kill ap->vlgrp and ace_vlan_rx_register - enable vlan hw accel always (kill vlan ifdefs) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit dadcd65f52921456112183fde543fc214bb0a227 Author: Jiri Pirko Date: Thu Jul 21 03:25:09 2011 +0000 ixgbevf: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and ixgbevf_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 6dacaddd4850cbd6390d4f87548262b5ed79b4a5 Author: Jiri Pirko Date: Wed Jul 20 04:54:27 2011 +0000 vlan: kill vlan_hwaccel_receive_skb Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 312cd51353a4f5940eea963570b8b14b7d9290c4 Author: Jiri Pirko Date: Wed Jul 20 04:54:26 2011 +0000 tehuti: do vlan cleanup - unify vlan and nonvlan rx path - kill priv->vlgrp and bdx_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 9c5d061429b0abc74bcd95d1896a848d1ab663b1 Author: Jiri Pirko Date: Wed Jul 20 04:54:25 2011 +0000 spider_net: do not mention dying vlan_hwaccel_receive_skb Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit b85da2c00453d9b97e66b5be7d035d6e0736eca0 Author: Jiri Pirko Date: Wed Jul 20 04:54:24 2011 +0000 s2io: do vlan cleanup - unify vlan and nonvlan rx path - kill sp->vlgrp and s2io_vlan_rx_register and s2io_vlan_rx_kill_vid (which does nothing and is never called :)) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 18c49b91777c66265d640f8fb221039bdf46b2d3 Author: Jiri Pirko Date: Thu Jul 21 03:24:11 2011 +0000 qlge: do vlan cleanup - unify vlan and nonvlan path - kill qdev->vlgrp and qlge_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit f1b553fbe73bfad38f41269d1c7a7ce3176d9539 Author: Jiri Pirko Date: Wed Jul 20 04:54:22 2011 +0000 mlx4: do vlan cleanup - unify vlan and nonvlan path - kill priv->vlgrp and mlx4_en_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 5043f5057773ba8b539eb51b9a4007e99599824f Author: Jiri Pirko Date: Wed Jul 20 04:54:21 2011 +0000 jme: do vlan cleanup - unify vlan and nonvlan rx path - kill jme->vlgrp and jme_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit a0f1d603ee4186081fda0ad48ccf6163c2009f10 Author: Jiri Pirko Date: Thu Jul 21 06:30:00 2011 +0000 igbvf: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and igbvf_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 87c288c6e9aa31720b72e2bc2d665e24e1653c3e Author: Jiri Pirko Date: Wed Jul 20 04:54:19 2011 +0000 gianfar: do vlan cleanup - unify vlan and nonvlan rx path - kill priv->vlgrp and gfar_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 6ede746b62627b6f03fe88afad1a07d38917b85d Author: Jiri Pirko Date: Wed Jul 20 04:54:18 2011 +0000 enic: do vlan cleanup - unify vlan and nonvlan rx path - kill enic->vlan_group and enic_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit c74ea2f75e40776607f614afde67f1241e283ed6 Author: Jiri Pirko Date: Wed Jul 20 04:54:17 2011 +0000 cxgb4: remove forgotten unused vlan_group Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 87737663d5d7668c8553c572a5a7c26e86c5842b Author: Jiri Pirko Date: Wed Jul 20 04:54:16 2011 +0000 cxgb4vf: do vlan cleanup - unify vlan and nonvlan rx path - kill pi->vlan_grp and cxgb4vf_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 133b08513a99d44d9ed916bb83e46343f6ad2855 Author: Jiri Pirko Date: Wed Jul 20 04:54:15 2011 +0000 chelsio: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlan_grp and t1_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit f859d7cb7967efaedae194dd90a23a7a72fb216d Author: Jiri Pirko Date: Wed Jul 20 04:54:14 2011 +0000 bnad: do vlan cleanup - unify vlan and nonvlan rx path - kill bnad->vlan_grp and bnad_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 2707fffc0f330662d75ff609470700100392673f Author: Jiri Pirko Date: Wed Jul 20 04:54:13 2011 +0000 atl1e: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and atl1e_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 46facce9130ee5a4e4863094049af85c4a757356 Author: Jiri Pirko Date: Wed Jul 20 04:54:12 2011 +0000 atl1c: do vlan cleanup - unify vlan and nonvlan rx path - kill adapter->vlgrp and atl1c_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit c8d9e6dd484a2e10875d2c277f7e8584b92779e5 Author: Jiri Pirko Date: Wed Jul 20 04:54:11 2011 +0000 amd8111e: do vlan cleanup - unify vlan and nonvlan rx path - kill lp->vlgrp and amd8111e_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 9fea03302ada3291fb3066a3c276e3f43556548b Author: Jiri Pirko Date: Wed Jul 20 04:54:10 2011 +0000 lro: do vlan cleanup - remove useless vlan parameters and pointers Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 0f7257281dcbc9bcb46b882c23fa57b6738fce5e Author: Jiri Pirko Date: Wed Jul 20 04:54:09 2011 +0000 lro: kill lro_vlan_hwaccel_receive_frags Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 7756a96e1925addedc87db21ca6646e03b3c674f Author: Jiri Pirko Date: Wed Jul 20 04:54:08 2011 +0000 lro: kill lro_vlan_hwaccel_receive_skb no longer used Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit b49500957a2c90a559dd91f0dcfeb83d84458664 Author: Jiri Pirko Date: Wed Jul 20 04:54:07 2011 +0000 ehea: do vlan cleanup - unify vlan and nonvlan rx path - kill port->vgrp and ehea_vlan_rx_register Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 7033c4ad87c3cf1050eb8190c93f94f5c8b9fae9 Author: Jiri Pirko Date: Wed Jul 20 04:54:06 2011 +0000 nes: do vlan cleanup - unify vlan and nonvlan rx path - kill nesvnic->vlan_grp and nes_netdev_vlan_rx_register - allow to turn on/off rx/tx vlan accel via ethtool (set_features) Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit cec9c133631039f82e4a5ff3bf47b3eba14ff1aa Author: Jiri Pirko Date: Wed Jul 20 04:54:05 2011 +0000 vlan: introduce __vlan_find_dev_deep() Since vlan_group_get_device and vlan_group is not going to be accessible from device drivers, introduce function which substitutes it. Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit f605234066852b11096ab071124e3fe415e94420 Author: Jiri Pirko Date: Wed Jul 20 04:54:04 2011 +0000 vlan: finish removing vlan_find_dev from public header else case remained forgotten. Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit aafade242ff24fac3aabf61c7861dfa44a3c2445 Author: Andy Lutomirski Date: Thu Jul 21 15:47:10 2011 -0400 x86-64, vdso: Do not allocate memory for the vDSO We can map the vDSO straight from kernel data, saving a few page allocations. As an added bonus, the deleted code contained a memory leak. Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/2c4ed5c2c2e93603790229e0c3403ae506ccc0cb.1311277573.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit 033b1142f4bd44a116d1356fe4a0510437ceddf9 Merge: f5caadb e6625fa Author: David S. Miller Date: Thu Jul 21 13:38:42 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: net/bluetooth/l2cap_core.c commit ae7bd11b471931752e5609094ca0a49386590524 Author: H. Peter Anvin Date: Thu Jul 21 13:34:05 2011 -0700 clocksource: Change __ARCH_HAS_CLOCKSOURCE_DATA to a CONFIG option The machinery for __ARCH_HAS_CLOCKSOURCE_DATA assumed a file in asm-generic would be the default for architectures without their own file in asm/, but that is not how it works. Replace it with a Kconfig option instead. Link: http://lkml.kernel.org/r/4E288AA6.7090804@zytor.com Signed-off-by: H. Peter Anvin Cc: Andy Lutomirski Cc: Arnd Bergmann Cc: Tony Luck commit f5caadbb3d8fc0b71533e880c684b2230bdb76ac Merge: 0ca87f0 0f598f0 Author: David S. Miller Date: Thu Jul 21 12:39:35 2011 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 commit 0ca87f05ba8bdc6791c14878464efc901ad71e99 Author: Matt Evans Date: Wed Jul 20 15:51:00 2011 +0000 net: filter: BPF 'JIT' compiler for PPC64 An implementation of a code generator for BPF programs to speed up packet filtering on PPC64, inspired by Eric Dumazet's x86-64 version. Filter code is generated as an ABI-compliant function in module_alloc()'d mem with stackframe & prologue/epilogue generated if required (simple filters don't need anything more than an li/blr). The filter's local variables, M[], live in registers. Supports all BPF opcodes, although "complicated" loads from negative packet offsets (e.g. SKF_LL_OFF) are not yet supported. There are a couple of further optimisations left for future work; many-pass assembly with branch-reach reduction and a register allocator to push M[] variables into volatile registers would improve the code quality further. This currently supports big-endian 64-bit PowerPC only (but is fairly simple to port to PPC32 or LE!). Enabled in the same way as x86-64: echo 1 > /proc/sys/net/core/bpf_jit_enable Or, enabled with extra debug output: echo 2 > /proc/sys/net/core/bpf_jit_enable Signed-off-by: Matt Evans Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit 3aeb7d2243e55ddcad3c0b402e7b09619a67f5da Author: Michael Chan Date: Wed Jul 20 14:55:25 2011 +0000 bnx2: Fix endian swapping on firmware version string so that ethtool -i will display it correctly on big endian systems. Signed-off-by: Michael Chan Reviewed-by: Bhanu Prakash Gollapudi Signed-off-by: David S. Miller commit 415199f2bd977fa4065d4e836b4b7543f7993bc3 Author: Michael Chan Date: Wed Jul 20 14:55:24 2011 +0000 cnic: Add VLAN ID as a parameter during netevent upcall The bnx2fc driver needs to handle netdev events on VLAN devices. Signed-off-by: Michael Chan Reviewed-by: Bhanu Prakash Gollapudi Signed-off-by: David S. Miller commit 74e49bbdabbac34c77b280152b1de9bef9bf9be7 Author: Michael Chan Date: Wed Jul 20 14:55:23 2011 +0000 cnic: Wait for all Context IDs to be deleted before sending FCOE_DESTROY_FUNC Otherwise, the firmware will not respond and we'll have to wait for timeout. Refactor the wait loop we already have into a separate function for this purpose. Signed-off-by: Michael Chan Reviewed-by: Bhanu Prakash Gollapudi Signed-off-by: David S. Miller commit b37a41e390310429d4171b0f7b6c6eab04512dc0 Author: Michael Chan Date: Wed Jul 20 14:55:22 2011 +0000 cnic: Fix Context ID space calculation Include FCoE CID space only for E2_PLUS devices. Remove old CID offset adjustments that are no longer needed. Signed-off-by: Michael Chan Reviewed-by: Bhanu Prakash Gollapudi Signed-off-by: David S. Miller commit bda18faf630ae3731f4b4e8f4b94a26e326c4797 Author: Matt Carlson Date: Wed Jul 20 10:20:57 2011 +0000 tg3: Fix NVRAM selftest failures for 5720 devs This patch fixes NVRAM selftest failures for 5720 devices by fixing the checksum area size. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 535a490eaddab484c53717fe2feeba800c9cdda2 Author: Matt Carlson Date: Wed Jul 20 10:20:56 2011 +0000 tg3: Return size from tg3_vpd_readblock() Newer VPD datablocks can exceed the size the tg3 driver is traditionally used to. This can cause some of the routines that operate on the VPD data to fail when in-fact they could have succeeded had they known the correct size. This patch fixes the problem. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 3aa1cdf87c0b3f2345e75c474acc32ebbf0a4724 Author: Matt Carlson Date: Wed Jul 20 10:20:55 2011 +0000 tg3: Fix int selftest for recent devices. This patch fixes interrupt selftest failures for recent devices (57765, 5717, 5718. 5719, 5720) by disabling MSI one-shot mode and applying the status tag workaround to the selftest code. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 9d53fa129628d4899083b06fa66b7ca10fed8eb4 Author: Matt Carlson Date: Wed Jul 20 10:20:54 2011 +0000 tg3: Fix RSS indirection table distribution The current RSS indirection table is populated such that more traffic will hit the first RSS ring. This patch adjusts the indirection table so that the load is more evenly distributed. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 5baa5e9aa28baccd2a1227095c25bb3e999f250d Author: Matt Carlson Date: Wed Jul 20 10:20:53 2011 +0000 tg3: Add 5719 and 5720 to EEE_CAP list This patch adds the 5719 and the 5720 to the list of devices that are EEE capable. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit b715ce947f51c6637e78b262501f0c4ff9d848cc Author: Matt Carlson Date: Wed Jul 20 10:20:52 2011 +0000 tg3: Fix link down notify failure when EEE disabled Occasionally, when the network cable is removed after a successful autonegotiation, the device will not send a link down interrupt to the driver. This happens because of a bad interaction of an EEE workaround. The fix is to adjust the code so that the root cause condition does not happen. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit be671947b5b3efc6863ff429c1f265aa38e291db Author: Matt Carlson Date: Wed Jul 20 10:20:51 2011 +0000 tg3: Fix link flap at 100Mbps with EEE enabled This patch increases the scope of the EEE interoperability workaround to include more asic revisions. The workarond value is tuned to workaround a link flap issue at 100Mbps. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 9e975cc291d80d5e4562d6bed15ec171e896d69b Author: Matt Carlson Date: Wed Jul 20 10:20:50 2011 +0000 tg3: Fix io failures after chip reset Commit f2096f94b514d88593355995d5dd276961e88af1, entitled "tg3: Add 5720 H2BMC support", needed to add code to preserve some bits set by firmware. Unfortunately the new code causes throughput to stop after a chip reset because it enables state machines before they are ready. This patch undoes the problematic code. The bits will be restored later in the init sequence. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 7961689586d30a34c10b18ac95ba1cd72cefe725 Author: Vladislav Zolotarov Date: Thu Jul 21 07:58:54 2011 +0000 bnx2x: Broken self-test in SF mode on 578xx This patch fixes both the failure in the self-test on 578xx and a hole in a parity recovery flow that this failure has discovered: - internal 'pending' state in a VLAN_MAC object wasn't been cleared when the object state change was called with DRV_ONLY flag, which in particular happens when a parity error happens during the self-test. - bp->sp_state wasn't cleared in the similar circumstances as described above. Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 8736c82650500222c031dd7f59f0126e59808e36 Author: Vladislav Zolotarov Date: Thu Jul 21 07:58:36 2011 +0000 bnx2x: Parity errors recovery for 578xx Fix the parity errors recovery flow for 578xx: - Add a separate column for the 578xx in the parity mask registers DB. - Fix the bnx2x_process_kill_chip_reset() to handle the blocks newly introduced in the 578xx. Cover ATC and PGLUE_B blocks for 57712 and 578xx. Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit c03bd39c564f4b5d7683514e9249986e1404940d Author: Vladislav Zolotarov Date: Thu Jul 21 07:57:52 2011 +0000 bnx2x: Read FIP mac from SHMEM in single function mode Read FIP MAC address from SHMEM's "port" section similar to what we do in a MF mode when we read it from a "func" section of SHMEM. Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 0fea29c129bdae7aca217551acb1108e00cc5ff1 Author: Vladislav Zolotarov Date: Thu Jul 21 07:57:23 2011 +0000 bnx2x: Fixed ethtool -d for 578xx Registers dump code erroneously treated 578xx as 57712. This patch fixes the above and also removes unused data structures. Signed-off-by: Vladislav Zolotarov Signed-off-by: Ariel Elior Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit bf61ee146749de86a5ac46b25d28f8da5bb39d03 Author: Vladislav Zolotarov Date: Thu Jul 21 07:56:51 2011 +0000 bnx2x: Implementation for netdev->ndo_fcoe_get_wwn Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 292b11926fec139c0ff103bc229bc6c079d0862f Author: Joe Perches Date: Wed Jul 20 08:51:35 2011 -0700 rtlwifi: Convert printks to pr_ Use the current logging styles. Add pr_fmt where appropriate. Remove now unnecessary prefixes from printks. Convert hard coded prefix to __func__. Add a missing "\n" to a format. Signed-off-by: Joe Perches Acked-by: Larry Finger Signed-off-by: John W. Linville commit 6054069a03f77ffa686e2dfd5f07cff8ee40b72d Author: Felix Fietkau Date: Tue Jul 19 08:46:44 2011 +0200 ath9k_hw: validate and fix broken eeprom chainmask settings Some devices (e.g. Ubiquiti AirRouter) ship with broken EEPROM chainmask data, which breaks the initial calibration after a hardware reset. To fix this, mask the eeprom chainmask with the chainmask of the chip, and use the chip chainmask if the result is zero. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit a0490936007bacf5bf6f4fb27788550c89c2c70d Author: Amitkumar Karwar Date: Wed Jul 13 20:51:59 2011 -0700 mwifiex: disable auto deep sleep before unloading the driver Since the auto deep sleep mode has been enabled at driver init time we should disable it at driver unloading to shutdown the function gracefully. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit df3b124bdb6fe2459625443bd3dc0dbd020932da Author: Amitkumar Karwar Date: Wed Jul 13 20:51:58 2011 -0700 mwifiex: check SDIO multi-port aggregation buffer room correctly We should consider current packet length also while checking Tx aggregation buffer room. Signed-off-by: Amitkumar Karwar Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 4e3c44207f90500f65a3858d344b4ff3c63ea765 Author: Amitkumar Karwar Date: Wed Jul 13 20:51:57 2011 -0700 mwifiex: put multicast/broadcast packets to the same RA For ad-hoc mode, RA is created for each peer connected. In case of multicast traffic new RA will be created for each multicast address. While processing Tx packets we have to go through this RA list. We can avoid some RA nodes by sharing same RA for both multicast and broadcast packets. Therefore "memset(0xff)" is used to treat multicast packet as broadcast one while choosing RA. Signed-off-by: Amitkumar Karwar Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit efbe2eee6dc0f179be84292bf269528b3ec365e9 Author: Peter Zijlstra Date: Thu Jul 7 11:39:45 2011 +0200 lockdep: Fix lockdep_no_validate against IRQ states Thomas noticed that a lock marked with lockdep_set_novalidate_class() will still trigger warnings for IRQ inversions. Cure this by skipping those when marking irq state. Reported-and-tested-by: Thomas Gleixner Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-2dp5vmpsxeraqm42kgww6ge2@git.kernel.org Signed-off-by: Ingo Molnar commit 7fcfd1abd6480d3b9ef17f5759c175e036e835cf Author: Will Deacon Date: Fri Jul 8 18:34:42 2011 +0100 perf: Remove the nmi parameter from the oprofile_perf backend In commit a8b0ca17b80e ("perf: Remove the nmi parameter from the swevent and overflow interface") one site was overlooked. Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110708173442.GB31972@e102144-lin.cambridge.arm.com Signed-off-by: Ingo Molnar commit 1ac2e6ca44e13a087eb7438d284f887097ee7e84 Author: Robert Richter Date: Tue Jun 7 11:49:55 2011 +0200 x86, perf: Make copy_from_user_nmi() a library function copy_from_user_nmi() is used in oprofile and perf. Moving it to other library functions like copy_from_user(). As this is x86 code for 32 and 64 bits, create a new file usercopy.c for unified code. Signed-off-by: Robert Richter Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110607172413.GJ20052@erda.amd.com Signed-off-by: Ingo Molnar commit 9985c20f9e4aee6857c08246b273a3695a52b929 Author: Lin Ming Date: Thu Jun 30 08:09:55 2011 +0000 perf: Remove perf_event_attr::type check PMU type id can be allocated dynamically, so perf_event_attr::type check when copying attribute from userspace to kernel is not valid. Signed-off-by: Lin Ming Cc: Robert Richter Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1309421396-17438-4-git-send-email-ming.m.lin@intel.com Signed-off-by: Ingo Molnar commit f53173e47dee5f7514d264796bec58d43ed0f67f Author: Cyrill Gorcunov Date: Thu Jul 21 20:06:25 2011 +0400 x86, perf: P4 PMU - Fix typos in comments and style cleanup This patch: - fixes typos in comments and clarifies the text - renames obscure p4_event_alias::original and ::alter members to ::original and ::alternative as appropriate - drops parenthesis from the return of p4_get_alias_event() No functional changes. Reported-by: Ingo Molnar Signed-off-by: Cyrill Gorcunov Link: http://lkml.kernel.org/r/20110721160625.GX7492@sun Signed-off-by: Ingo Molnar commit 6a6d822e12db50f054b3573a7156579125d476bf Author: David G Turner Date: Thu Jul 21 19:00:57 2011 +0200 ALSA: usb-audio - Add quirk for Roland / BOSS BR-800 Add support for Roland/BOSS BR-800 (0582:011e) to snd-usb-audio driver. This allows playback and recording, which has been tested and found to work. The third interface should be MIDI (MTC/SMPTE?) for DAW interface and is set as per ME-25, but this has not been tested. SDHC card access is already supported by usb-storage for Backup/Rhythm Editor/Wave Convertor mode which should not conflict with this. Signed-off-by: David G Turner Signed-off-by: Takashi Iwai commit 6645cb61f3a1186a71475385d33f875dd8fb38bf Author: Russell King Date: Thu Jul 21 14:42:40 2011 +0100 ARM: Fix build errors caused by adding generic macros Commit 66a625a (ARM: mm: proc-macros: Add generic proc/cache/tlb struct definition macros) introduced build errors when PM_SLEEP is not enabled. The per-CPU do_suspend/do_resume functions are defined via the preprocessor to constant 0. However, the macros which use these were converted to assembly, resulting in undefined references to these functions. Fix that by moving the ! ifdef section into proc-macros.S and deleting it from all effected proc-*.S files. Acked-by: Dave Martin Signed-off-by: Russell King commit 2bd2d6f2dc952fc44fc52887de36e51896da96b9 Author: Stephan Baerwolf Date: Wed Jul 20 14:46:59 2011 +0200 sched: Replace use of entity_key() "entity_key()" is only used in "__enqueue_entity()" and its only function is to subtract a tasks vruntime by its groups minvruntime. Before this patch a rbtree enqueue-decision is done by comparing two tasks in the style: "if (entity_key(cfs_rq, se) < entity_key(cfs_rq, entry))" which would be "if (se->vruntime-cfs_rq->min_vruntime < entry->vruntime-cfs_rq->min_vruntime)" or (if reducing cfs_rq->min_vruntime out) "if (se->vruntime < entry->vruntime)" which is "if (entity_before(se, entry))" So we do not need "entity_key()". If "entity_before()" is inline we will also save one subtraction (only one, because "entity_key(cfs_rq, se)" was cached in "key") Signed-off-by: Stephan Baerwolf Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-ns12mnd2h5w8rb9agd8hnsfk@git.kernel.org Signed-off-by: Ingo Molnar commit acb5a9ba3bd7cd8b3264f67a3789a9587d3b935b Author: Jan H. Schönherr Date: Thu Jul 14 18:32:43 2011 +0200 sched: Separate group-scheduling code more clearly Clean up cfs/rt runqueue initialization by moving group scheduling related code into the corresponding functions. Also, keep group scheduling as an add-on, so that things are only done additionally, i. e. remove the init_*_rq() calls from init_tg_*_entry(). (This removes a redundant initalization during sched_init()). In case of group scheduling rt_rq->highest_prio.curr is now initialized twice, but adding another #ifdef seems not worth it. Signed-off-by: Jan H. Schönherr Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1310661163-16606-1-git-send-email-schnhrr@cs.tu-berlin.de Signed-off-by: Ingo Molnar commit 26a148eb9c790149750f7e77da0d96029443d400 Author: Richard Kennedy Date: Fri Jul 15 11:41:31 2011 +0100 sched: Reorder root_domain to remove 64 bit alignment padding Reorder root_domain to remove 8 bytes of alignment padding on 64 bit builds, this shrinks the size from 1736 to 1728 bytes, therefore using one fewer cachelines. Signed-off-by: Richard Kennedy Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1310726492.1977.5.camel@castor.rsk Signed-off-by: Ingo Molnar commit 99bc52429f11d1f4f81495ac8237085aaeb6bccf Author: Bianca Lutz Date: Wed Jul 13 20:13:36 2011 +0200 sched: Do not attempt to destroy uninitialized rt_bandwidth If a task group is to be created and alloc_fair_sched_group() fails, then the rt_bandwidth of the corresponding task group is not yet initialized. The caller, sched_create_group(), starts a clean up procedure which calls free_rt_sched_group() which unconditionally destroys the not yet initialized rt_bandwidth. This crashes or hangs the system in lock_hrtimer_base(): UP systems dereference a NULL pointer, while SMP systems loop endlessly on a condition that cannot become true. This patch simply avoids the destruction of rt_bandwidth when the initialization code path was not reached. (This was discovered by accident with a custom kernel modification.) Signed-off-by: Bianca Lutz Signed-off-by: Jan Schoenherr Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1310580816-10861-7-git-send-email-schnhrr@cs.tu-berlin.de Signed-off-by: Ingo Molnar commit 045176d22f08bc0b650a028df0f62fc3c2747699 Author: Jan Schoenherr Date: Wed Jul 13 20:13:32 2011 +0200 sched: Remove unused function cpu_cfs_rq() The last reference to cpu_cfs_rq() was removed with commit 88ec22d3 ("sched: Remove the cfs_rq dependency from set_task_cpu()"). Thus, remove this function, too. Signed-off-by: Jan Schoenherr Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1310580816-10861-3-git-send-email-schnhrr@cs.tu-berlin.de Signed-off-by: Ingo Molnar commit 5f817d676b7b7ac4a29f5ed93063ae7a24550c12 Author: Jan Schoenherr Date: Wed Jul 13 20:13:31 2011 +0200 sched: Fix (harmless) typo 'CONFG_FAIR_GROUP_SCHED' This patch fixes a typo located in a comment. Signed-off-by: Jan Schoenherr Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1310580816-10861-2-git-send-email-schnhrr@cs.tu-berlin.de Signed-off-by: Ingo Molnar commit 9763b67fb9f3050c6da739105888327587c30c4d Author: Peter Zijlstra Date: Wed Jul 13 13:09:25 2011 +0200 sched, cgroup: Optimize load_balance_fair() Use for_each_leaf_cfs_rq() instead of list_for_each_entry_rcu(), this achieves that load_balance_fair() only iterates those task_groups that actually have tasks on busiest, and that we iterate bottom-up, trying to move light groups before the heavier ones. No idea if it will actually work out to be beneficial in practice, does anybody have a cgroup workload that might show a difference one way or the other? [ Also move update_h_load to sched_fair.c, loosing #ifdef-ery ] Signed-off-by: Peter Zijlstra Reviewed-by: Paul Turner Link: http://lkml.kernel.org/r/1310557009.2586.28.camel@twins Signed-off-by: Ingo Molnar commit 9598c82dcacadc3b9daa8170613fd054c6124d30 Author: Paul Turner Date: Wed Jul 6 22:30:37 2011 -0700 sched: Don't update shares twice on on_rq parent In dequeue_task_fair() we bail on dequeue when we encounter a parenting entity with additional weight. However, we perform a double shares update on this entity as we continue the shares update traversal from this point, despite dequeue_entity() having already updated its queuing cfs_rq. Avoid this by starting from the parent when we resume. Signed-off-by: Paul Turner Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110707053059.797714697@google.com Signed-off-by: Ingo Molnar commit 9bbd7374361d9bfc75108c3ad1c1b6db28b1be59 Author: Paul Turner Date: Tue Jul 5 19:07:21 2011 -0700 sched: update correct entity's runtime in check_preempt_wakeup() While looking at check_preempt_wakeup() I realized that we are potentially updating the wrong entity in the fair-group scheduling case. In this case the current task's cfs_rq may not be the same as the one used for the comparison between the waking task and the existing task's vruntime. This potentially results in us using a stale vruntime in the pre-emption decision, providing a small false preference for the previous task. The effects of this are bounded since we always perform a hierarchal update on the tick. Signed-off-by: Paul Turner Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/CAPM31R+2Ke2urUZKao5W92_LupdR4AYEv-EZWiJ3tG=tEes2cw@mail.gmail.com Signed-off-by: Ingo Molnar commit 994bf1c92270e3d7731ea08f1d1bd7a668314e60 Merge: bd96efe cf6ace1 Author: Ingo Molnar Date: Thu Jul 21 17:59:54 2011 +0200 Merge branch 'linus' into sched/core Merge reason: pick up the latest scheduler fixes. Signed-off-by: Ingo Molnar commit 8a35241803eeb0e9fd3fe27835d6b2775c73b641 Author: Oleg Nesterov Date: Thu Jul 21 17:06:53 2011 +0200 ptrace: fix ptrace_signal() && STOP_DEQUEUED interaction Simple test-case, int main(void) { int pid, status; pid = fork(); if (!pid) { pause(); assert(0); return 0x23; } assert(ptrace(PTRACE_ATTACH, pid, 0,0) == 0); assert(wait(&status) == pid); assert(WIFSTOPPED(status) && WSTOPSIG(status) == SIGSTOP); kill(pid, SIGCONT); // <--- also clears STOP_DEQUEUD assert(ptrace(PTRACE_CONT, pid, 0,0) == 0); assert(wait(&status) == pid); assert(WIFSTOPPED(status) && WSTOPSIG(status) == SIGCONT); assert(ptrace(PTRACE_CONT, pid, 0, SIGSTOP) == 0); assert(wait(&status) == pid); assert(WIFSTOPPED(status) && WSTOPSIG(status) == SIGSTOP); kill(pid, SIGKILL); return 0; } Without the patch it hangs. After the patch SIGSTOP "injected" by the tracer is not ignored and stops the tracee. Note also that if this test-case uses, say, SIGWINCH instead of SIGCONT, everything works without the patch. This can't be right, and this is confusing. The problem is that SIGSTOP (or any other sig_kernel_stop() signal) has no effect without JOBCTL_STOP_DEQUEUED. This means it is simply ignored after PTRACE_CONT unless JOBCTL_STOP_DEQUEUED was set "by accident", say it wasn't cleared after initial SIGSTOP sent by PTRACE_ATTACH. At first glance we could change ptrace_signal() to add STOP_DEQUEUED after return from ptrace_stop(), but this is not right in case when the tracer does not change the reported SIGSTOP and SIGCONT comes in between. This is even more wrong with PT_SEIZED, SIGCONT adds JOBCTL_TRAP_NOTIFY which will be "lost" during the TRAP_STOP | TRAP_NOTIFY report. So lets add STOP_DEQUEUED _before_ we report the signal. It has no effect unless sig_kernel_stop() == T after the tracer resumes us, and in the latter case the pending STOP_DEQUEUED means no SIGCONT in between, we should stop. Note also that if SIGCONT was sent, PT_SEIZED tracee will correctly report PTRACE_EVENT_STOP/SIGTRAP and thus the tracer can notice the fact SIGSTOP was cancelled. Also, move the current->ptrace check from ptrace_signal() to its caller, get_signal_to_deliver(), this looks more natural. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 1d9e5a2bdaafee792fb68cd4381a292e9e340783 Merge: e8885cb 41ff445 Author: Arnd Bergmann Date: Thu Jul 21 16:53:43 2011 +0200 Merge branch 'msm/fixes' into next/fixes commit 41ff445cdb8b3d618425f8a16e2b873046bbe536 Author: Jeff Ohlstein Date: Thu Apr 7 17:41:09 2011 -0700 ARM: msm: platsmp: determine number of CPU cores at boot time Previously we just assumed there were CONFIG_NR_CPUS cpus present in the system. Instead, figure out the number of cpus from the MIDR register. Signed-off-by: Jeff Ohlstein Signed-off-by: David Brown [arnd: clarified patch title] Signed-off-by: Arnd Bergmann commit 1e89cbac16dd91f1ddbf53c68fecb85d42793841 Author: Emmanuel Grumbach Date: Wed Jul 20 17:51:22 2011 -0700 iwlagn: probe would crash with DEBUG_SHIRQ This is since my patch: iwlagn: introduce transport layer and implement rx_init The IRQ is requested before the locks are initialized, hence the crash. Initialize the tasklet before we request the IRQ on the way. Reported-by: Johannes Berg Tested-by: Johannes Berg Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit d1057c40682990d29d4ee93d6ffd9836043552e6 Author: Guennadi Liakhovetski Date: Sun Jul 17 22:04:07 2011 +0200 mmc: MAINTAINERS: add myself as a tmio-mmc maintainer Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit bb9cab941c7139304899fa7922f3069bb2097f4e Author: Daniel Drake Date: Sun Jul 17 16:38:41 2011 +0100 mmc: print debug messages for runtime PM actions At http://www.mail-archive.com/linux-mmc@vger.kernel.org/msg08371.html (thread: "mmc: sdio: reset card during power_restore") we found and fixed a bug where mmc's runtime power management functions were not being called. We have now also made improvements to the SDIO powerup routine which could possibly mask this kind of issue in future. Add debug messages to the runtime PM hooks so that it is easy to verify if and when runtime PM is happening. Signed-off-by: Daniel Drake Signed-off-by: Chris Ball commit ecc024419a13da1e589aebc422d9d1e3c0124ba4 Author: Ohad Ben-Cohen Date: Sun Jul 17 16:38:21 2011 +0100 mmc: fix runtime PM with -ENOSYS suspend case In the case where a driver returns -ENOSYS from its suspend handler to indicate that the device should be powered down over suspend, the remove routine of the driver was not being called, leading to lots of confusion during resume. The problem is that runtime PM is disabled during this process, and when we reach mmc_sdio_remove, calling the runtime PM functions here (validly) return errors, and this was causing us to skip the remove function. Fix this by ignoring the error value of pm_runtime_get_sync(), which can return valid errors. This also matches the behaviour of pci_device_remove(). Signed-off-by: Daniel Drake Signed-off-by: Chris Ball commit b0a68ec9444384269ec06b474c0a841ccd6fcdf9 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Fri Jul 15 01:52:01 2011 +0200 mmc: at91_mci: move register header from include/ to drivers/ Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Signed-off-by: Chris Ball commit d982dcdc4e64eb1881df44b0035a8268bf1ab067 Author: Koen Beel Date: Fri Jul 15 17:39:00 2011 -0400 mmc: mxs-mmc: fix clock rate setting Fix clock rate setting in the mxs-mmc driver. Previously, if div2 was 0 then the value for TIMING_CLOCK_RATE would have been 255 instead of 0. The limits for div1 (TIMING_CLOCK_DIVIDE) and div2 (TIMING_CLOCK_RATE+1) were also not correctly defined. Can easily be reproduced on mx23evk: default clock for high speed sdio cards is 50 MHz. With a SSP_CLK of 28.8 MHz default), this resulted in an actual clock rate of about 56 kHz. Tested on mx23evk. Signed-off-by: Koen Beel Reviewed-by: Wolfram Sang Signed-off-by: Chris Ball commit 162f43e31c5a376ec16336e5d0ac973373d54c89 Author: Guennadi Liakhovetski Date: Thu Jul 14 18:39:10 2011 +0200 mmc: tmio: fix a deadlock Currently the tmio-mmc driver contains a recursive runtime PM method invocation, which leads to a deadlock on a mutex. Avoid it by taking care not to request DMA too early. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 332bdb506f800d177f6657247347a253dd5b5be8 Author: Guennadi Liakhovetski Date: Thu Jul 14 18:39:06 2011 +0200 mmc: tmio: fix a recently introduced bug in DMA code A recent commit "mmc: tmio: Share register access functions" has swapped arguments of a macro and broken DMA with TMIO MMC. This patch fixes the arguments back. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit c9b0cef23f8d2a16c97623d25d6e8f8e93a56e4b Author: Guennadi Liakhovetski Date: Thu May 26 15:33:30 2011 +0200 mmc: sh_mmcif: maximize power saving This patch uses runtime PM to allow the system to power down the MMC controller, when the MMC closk is switched off. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 71d111cd34ee119c93d056ad9e84dc0e82367f82 Author: Guennadi Liakhovetski Date: Thu Jul 14 12:16:59 2011 +0200 mmc: tmio: maximize power saving This patch uses runtime PM to allow the system to power down the MMC controller, when the MMC closk is switched off. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit b9269fdd4f61aa4d185c982b0f84a3e7b7ccb4d2 Author: Guennadi Liakhovetski Date: Thu Jul 14 12:12:38 2011 +0200 mmc: tmio: fix recursive spinlock, don't schedule with interrupts disabled Calling mmc_request_done() under a spinlock with interrupts disabled leads to a recursive spin-lock on request retry path and to scheduling in atomic context. This patch fixes both these problems by moving mmc_request_done() to the scheduler workqueue. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 15bed0f2fa8e1d7db201692532c210a7823d2d21 Author: Manoj Iyer Date: Mon Jul 11 16:28:35 2011 -0500 mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency Ricoh 1180:e823 does not recognize certain types of SD/MMC cards, as reported at http://launchpad.net/bugs/773524. Lowering the SD base clock frequency from 200Mhz to 50Mhz fixes this issue. This solution was suggest by Koji Matsumuro, Ricoh Company, Ltd. This change has no negative performance effect on standard SD cards, though it's quite possible that there will be one on UHS-1 cards. Signed-off-by: Manoj Iyer Tested-by: Daniel Manrique Cc: Koji Matsumuro Cc: Acked-by: Jesse Barnes Signed-off-by: Chris Ball commit 770d7432009c8bc89cf72d47313866adf600c66a Author: Adrian Hunter Date: Fri May 6 12:14:11 2011 +0300 mmc: omap_hsmmc: fix oops in omap_hsmmc_dma_cb() In the case of an I/O error, the DMA will have been cleaned up in the MMC interrupt and the request structure pointer will be null. In that case, it is essential to check if the DMA is over before dereferencing host->mrq->data. Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit 3796fb8ac40920e04ed36e45b1b40d13aec3909d Author: Andy Shevchenko Date: Wed Jul 13 11:31:15 2011 -0400 mmc: omap_hsmmc: refactor duplicated code There are a few places with the same functionality. This patch creates two functions omap_hsmmc_set_bus_width() and omap_hsmmc_set_bus_mode() to do the job. Signed-off-by: Andy Shevchenko Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit 5934df2f10a48d048fafe0d3c8b242a7c9106e69 Author: Andy Shevchenko Date: Fri May 6 12:14:06 2011 +0300 mmc: omap_hsmmc: fix a few bugs when setting the clock divisor There are two pieces of code which are similar, but not the same. Each of them contains a bug. The SYSCTL register should be read before writing to it in omap_hsmmc_context_restore() to retain the state of the reserved bits. Before setting the clock divisor and DTO bits the value from the SYSCTL register should be masked properly. We were lucky to have no problems with DTO bits. So, make sure we have clear DTO bits properly in omap_hsmmc_set_ios(). Additionally get rid of msleep(1). The actual time is rarely higher than 30us on OMAP 3630. The resulting pieces of code are refactored into the omap_hsmmc_set_clock() function. Signed-off-by: Andy Shevchenko Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit e0c7f99b863b485ad0cde371ea1f62ec8ff70c5d Author: Andy Shevchenko Date: Fri May 6 12:14:05 2011 +0300 mmc: omap_hsmmc: introduce start_clock and re-use stop_clock There is similar code in two functions which enable the clock. Refactor this code to omap_hsmmc_start_clock(). Re-use omap_hsmmc_stop_clock() in omap_hsmmc_context_restore() as well. Signed-off-by: Andy Shevchenko Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit ac330f44c6bcc5f8ef7eb6ea7fd00575a1d5ef1a Author: Andy Shevchenko Date: Tue May 10 15:51:54 2011 +0300 mmc: omap_hsmmc: split duplicate code to calc_divisor() function There are two places where the same calculations are done. Let's split them into a separate function. In addition, simplify by using the DIV_ROUND_UP kernel macro. Signed-off-by: Andy Shevchenko Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit 6b206efeccacafc8cd0cc0b72ff92f2be175ca9e Author: Andy Shevchenko Date: Wed Jul 13 11:16:29 2011 -0400 mmc: omap_hsmmc: move hardcoded frequency constants to defines Move the min and max frequency constants to the definition block in the source file. Signed-off-by: Andy Shevchenko Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit 699b958ba0608cde3b767d0d7445f080cc3fe975 Author: Adrian Hunter Date: Fri May 6 12:14:01 2011 +0300 mmc: omap_hsmmc: correct debug report error status mnemonics CERR and BADA were in the wrong place and there are only 32 not 35. Signed-off-by: Adrian Hunter Reviewed-by: Venkatraman S Signed-off-by: Chris Ball commit 393f9a08e2ee72e42379489a5781feaf9c406d5f Author: Jaehoon Chung Date: Wed Jul 13 17:02:16 2011 +0900 mmc: block: fixed NULL pointer dereference We already check for ongoing async transfers when handling discard requests, but not in mmc_blk_issue_flush(). This patch fixes that omission. Tested with an SDHCI controller and eMMC4.41. Signed-off-by: Jaehoon Chung Signed-off-by: Kyungmin Park Acked-by: Per Forlin Cc: Signed-off-by: Chris Ball commit 7937e878f91ccc32c09177f44cfdc45183d78605 Author: Per Forlin Date: Sun Jul 10 21:21:59 2011 +0200 mmc: documentation of mmc non-blocking request usage and design. Documentation about the background and the design of mmc non-blocking. Host driver guidelines to minimize request preparation overhead. Signed-off-by: Per Forlin Acked-by: Randy Dunlap Signed-off-by: Chris Ball commit 1e09939bad24df95ddeeeca4fbec64fa94b66def Merge: 4d09a93 e8de616 Author: Arnd Bergmann Date: Thu Jul 21 16:34:00 2011 +0200 Merge branch 'next-samsung-devel' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/devel commit d62b39e105e427510f8996c03db9ce1bf83fcad8 Author: Wey-Yi Guy Date: Mon Jul 18 16:58:58 2011 -0700 iwlagn: remove "disable otp refresh" W/A Remove the "disable otp refresh" work-around, not needed anymore. Signed-off-by: Wey-Yi Guy commit 5ddac6bc1c4bfcbf645d18668a5033ca257a8ea7 Merge: c33d432 89e1c3d Author: Arnd Bergmann Date: Thu Jul 21 16:32:06 2011 +0200 Merge branch 'next-samsung-board' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/board commit e1b1c0875daa8ef396593270b5d3ec0b8483c1ea Author: Johannes Berg Date: Sun Jul 17 01:44:11 2011 -0700 iwlagn: rename iwlagn_set_dynamic_key We now have iwlagn_set_dynamic_key() and iwl_set_dynamic_key() which is confusing, rename the former to iwlagn_send_sta_key() to better reflect what it does -- it only sends a command and doesn't change driver state. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit bbb05cb55a1b57003b17d47b5a7ac809bab60f80 Author: Johannes Berg Date: Mon Jul 18 01:59:22 2011 -0700 iwlagn: track beacon interval sent to device Sometimes, when mac80211 changes the beacon interval or when it isn't yet set in mac80211 before association, the uCode will sysassert because we send it confusing RXON timing vs. PAN parameters. To fix this, track the last beacon interval sent to the device and use that in PAN parameter calculations. This fixes a bug during P2P group formation as a client (and possibly association to a regular AP) while connected to another AP. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 21489ec2f18b56eaebc70c0dae928c1adae4c5f5 Author: Wey-Yi Guy Date: Mon Jul 18 13:59:23 2011 -0700 iwlagn: write iq invert register for 105/135 device For 105/135 series of devices, we need to do I/Q invert just like 2000 series devices. Signed-off-by: Wey-Yi Guy commit c8ac61cf6e53fefb3b439fc58390fb65d2730e63 Author: Johannes Berg Date: Fri Jul 15 13:23:45 2011 -0700 iwlagn: implement WoWLAN Implement WoWLAN support in iwlagn. The device supports a number of wakeup triggers and can do GTK rekeying when asleep (if HW crypto is used). Unfortunately, we need to disconnect from the AP after resume since we can't yet get all the info out of the wowlan uCode to stay connected safely. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 5a3d9882b84edf5fa8e8ca33a5d6df25e2e727a5 Author: Johannes Berg Date: Fri Jul 15 13:03:12 2011 -0700 iwlagn: rewrite HW crypto As I just discovered while doing WoWLAN, HW crypto is done wrong for GTKs: they should be programmed for the AP station ID (in the managed mode case) and the HW can actually deal with multiple group keys per station as well (which is useful in IBSS RSN but that I've chosen not to use this). To fix all this, modify the way keys are sent to the device and key offsets are allocated. After these changes, key offsets are stored into the hw_key_idx which we can then track for the key lifetime, not relying on our sta_cmd array. WEP default keys get special treatment, of course. Additionally, since I had the API for it, we can now pre-fill TKIP phase 1 keys for RX now that we can obtain the P1K from mac80211, a capability I had added for WoWLAN initially. Finally, some keys simply don't need to be added into the device's key cache -- a key that won't be used for RX is only needed in the TX header, so "pretend" to have accepted any key without adding it into the device -- no need to use up key space there for it. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit ab2a0e0d135490729e384c1826d118f92e88cae8 Merge: 09dd9b3 2f3ab04 Author: Arnd Bergmann Date: Thu Jul 21 16:31:22 2011 +0200 Merge branch 'next-samsung-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/cleanup commit 0bfe9895d402faf03d5ccd30cc0e6bbad09e5bbc Author: Johannes Berg Date: Thu Jul 14 12:55:36 2011 -0700 iwlagn: remove forgotten debugfs function It seems that due to merge issues between different trees or so this function prototype wasn't removed when it should have been, do it now. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 898ed67be047d0762cc7592f67bf1313dff53ca9 Author: Wey-Yi Guy Date: Wed Jul 13 08:38:57 2011 -0700 iwlagn: remove un-necessary "_agn" After driver split, extra _agn in priv structure is no needed, remove it. Signed-off-by: Wey-Yi Guy commit a920bffb88260aac36bfd05745696dc6aa256627 Author: Johannes Berg Date: Wed Jul 13 13:27:25 2011 -0700 iwlagn: remove keyinfo cache iwlagn keeps a copy of key stuff internally but never actually uses it, so remove it. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit c10e2c102ff180998bf91404c2d76ca66ced46a0 Author: Wey-Yi Guy Date: Wed Jul 13 11:13:46 2011 -0700 iwlagn: testmode fixed rate available for testmode only Move tm_fixed_rate inside CONFIG_IWLWIFI_DEVICE_SVTOOL and only available when the option is enable. Signed-off-by: Wey-Yi Guy commit b09b296dddde0998e2019d2f355212642056253f Author: Emmanuel Grumbach Date: Mon Jul 11 13:14:37 2011 +0300 iwlagn: add comment to warn about WoWLAN in resume / suspend flows WoWLAN may need the NIC even after suspend. One should not do anything to the NIC in the bus level, since one cannot check whether WoWLAN is enabled or not. Same for resume. Add a simple comment to the code to warn about this. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit c1c81401de30448baf35ec2f689ad21faffb0536 Author: Emmanuel Grumbach Date: Mon Jul 11 11:18:48 2011 +0300 iwlagn: iwl_bus holds drv_data as void * instead of iwl_priv The price to pay is the access to the log system. Therefore logs from bus layer are sent by dev_printk instead of IWL_XXXX. Rename bus->priv to bus->drv_data to make the separation even clearer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit d593411084a56124aa9d80aafa15db8463b2d8f7 Author: Emmanuel Grumbach Date: Mon Jul 11 10:48:51 2011 +0300 iwlagn: simplify the bus architecture Call iwl_probe with a ready iwl_bus struct. This means that the bus layer assigns the irq, dev and iwl_bus_ops pointers to iwl_bus before giving it to iwl_probe. The device specific struct is allocated together with the common iwl_bus struct by the bus specific layer. The pointer to the aggregate struct is passed to the upper layer that holds a pointer to iwl_bus instead of an embedded iw_bus. The private data given to the PCI subsystem is now iwl_bus and not iwl_priv. Provide bus_* inliners on the way in order to simplify the syntax. Rename iwl-pci.h -> iwl-bus.h since it is bus agnostic and represent the external of the bus layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 41c50542669cd7aec45ad708f5120ff8fdaa1194 Author: Emmanuel Grumbach Date: Mon Jul 11 08:51:04 2011 +0300 iwlagn: transport layer receives struct iwl_trans* It still holds a pointer to iwl_priv. But hopefully this will disappear at some point. Also add the multiple inclusion protection to iwl-trans.h that was forgotten. Move iwl-trans structures to iwl-trans.h Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 0286cee0d2b6357e8e30d817bbce8ff166f358b5 Author: Emmanuel Grumbach Date: Sun Jul 10 15:39:57 2011 +0300 iwlagn: move iwl_prepare_card_hw to the transport layer This function is really related to the transport layer - move it. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 392f8b789a4c96b39d527ff8ea5ceba20cd79d56 Author: Emmanuel Grumbach Date: Sun Jul 10 15:30:15 2011 +0300 iwlagn: move more functions from the start flow to the transport layer Basically all the nic_init flow should be in the transport layer. iwl_prepare_card_hw will move to the transport too in a separate patch. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 48d42c426947d8ffba0caa3cf9c58be6903302e0 Author: Emmanuel Grumbach Date: Sun Jul 10 10:47:01 2011 +0300 iwlagn: SCD configuration for AMPDU moves to transport layer All the configurations of the HW for AMPDU are now in the transport layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 2e27799621f9b6dc69d9fac5e365cb867eac539c Author: Wey-Yi Guy Date: Fri Jul 8 14:29:48 2011 -0700 iwlagn: radio sensor offset in le16 format For temperature offset calibration, send radio sensor offset in le16 format Signed-off-by: Wey-Yi Guy commit ad3f71244c93412087ae93aabce39c4a9fb12891 Author: Wey-Yi Guy Date: Fri Jul 8 14:29:47 2011 -0700 iwlagn: define valid init calibration mask Use the valid calibration mask for init calibration Signed-off-by: Wey-Yi Guy commit a21321c154f359a2254b76b1428017f51b96e379 Author: Wey-Yi Guy Date: Fri Jul 8 14:29:46 2011 -0700 iwlagn: remove legacy calibration command IWL_PHY_CALIBRATE_DIFF_GAIN_CMD is for legacy device, remove it Signed-off-by: Wey-Yi Guy commit df2a4dc802ad542039e0a78c84e8b0a562c6d8bb Author: Wey-Yi Guy Date: Fri Jul 8 14:29:45 2011 -0700 iwlagn: set correct calibration flag Set calibration config flag for complete notification Signed-off-by: Wey-Yi Guy commit 6bd4dba3d2b8a90d27dfd32b306fa965650599b4 Author: Emmanuel Grumbach Date: Sun Jul 3 15:45:34 2011 +0300 iwlagn: kill iwlagn_setup_deferred_work Since iwlagn_setup_deferred_work is always called, fold it into iwl_setup_deferred_work. BT related works are setup by the new bt_setup_deferred_work lib_ops. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 8d30119346d52516f289016e1c57f853a835cb4a Author: Emmanuel Grumbach Date: Sun Jul 3 15:45:34 2011 +0300 iwlagn: kill iwlagn_rx_handler_setup Since iwlagn_rx_handler_setup is always called, fold it into iwl_rx_handler_setup. BT related handlers are setup by the new bt_rx_handler_setup lib_ops. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 56d90f4c8ac186a708e6af290d23857ea901ba05 Author: Emmanuel Grumbach Date: Thu Jul 7 18:20:01 2011 +0300 iwlagn: add kick_nic API to transport layer kick_nic means to remove the RESET bit from the embedded CPU Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 78359cb86b8c4c8946f6732eac2757fa5e1d4de4 Author: Russell King Date: Thu Jul 21 15:14:21 2011 +0100 ARM: CPU hotplug: ensure we migrate all IRQs off a downed CPU Our selection of interrupts to consider for IRQ migration is sub- standard. We were potentially including per-CPU interrupts in our migration strategy, but omitting chained interrupts. This caused some interrupts to remain on a downed CPU. We were also trying to migrate interrupts which were not migratable, resulting in an OOPS. Instead, iterate over all interrupts, skipping per-CPU interrupts or interrupts whose affinity does not include the downed CPU, and attempt to set the affinity for every one else if their chip implements irq_set_affinity(). Signed-off-by: Russell King commit ca15af19ac07908c8ca386f6d944a18aa343b868 Author: Russell King Date: Thu Jul 21 15:07:56 2011 +0100 ARM: CPU hotplug: pass in proper affinity mask on IRQ migration Now that the GIC takes care of selecting a target interrupt from the affinity mask, we don't need all this complexity in the core code anymore. Just detect when we need to break affinity. Signed-off-by: Russell King commit 5dfc54e087c15f823ee9b6541d2f0f314e69cbed Author: Russell King Date: Thu Jul 21 15:00:57 2011 +0100 ARM: GIC: avoid routing interrupts to offline CPUs The irq_set_affinity() method can be called with masks which include offline CPUs. This allows offline CPUs to have interrupts routed to them by writing to /proc/irq/*/smp_affinity after hotplug has taken a CPU offline. Fix this by ensuring that we select a target CPU present in both the required affinity and the online CPU mask. Ensure that we return IRQ_SET_MASK_OK (which happens to be 0) on success to ensure generic code copies the new mask into the irq_data structure. Signed-off-by: Russell King commit 2ef75701d1711a1feee2a82b42a2597ddc05f88b Author: Russell King Date: Thu Jul 21 14:51:13 2011 +0100 ARM: CPU hotplug: fix abuse of irqdesc->node irqdesc's node member is supposed to mark the numa node number for the interrupt. Our use of it is non-standard. Remove this, replacing the functionality with a test of the affinity mask. Signed-off-by: Russell King commit a353fbb17961780c13e585e8658006ef0e543733 Author: Takashi Iwai Date: Thu Jul 21 14:23:35 2011 +0200 ALSA: hda - Remove a superfluous argument of via_auto_init_output() "force" argument is always true, so let's strip it off. Signed-off-by: Takashi Iwai commit bc8a2a9b4e5c418bebaa6bb812982b7ecd298821 Author: ice chien Date: Fri Jul 15 16:58:06 2011 +0800 HID: hid-multitouch: add one new multitouch device's VID/PID This patch adds support for the CSR panel built by XAT. Signed-off-by: Ice Chien Signed-off-by: Jiri Kosina commit 497888cf69bf607ac1fe061a6437e0a670b0022f Author: Phil Carmody Date: Thu Jul 14 15:07:13 2011 +0300 treewide: fix potentially dangerous trailing ';' in #defined values/expressions All these are instances of #define NAME value; or #define NAME(params_opt) value; These of course fail to build when used in contexts like if(foo $OP NAME) while(bar $OP NAME) and may silently generate the wrong code in contexts such as foo = NAME + 1; /* foo = value; + 1; */ bar = NAME - 1; /* bar = value; - 1; */ baz = NAME & quux; /* baz = value; & quux; */ Reported on comp.lang.c, Message-ID: Initial analysis of the dangers provided by Keith Thompson in that thread. There are many more instances of more complicated macros having unnecessary trailing semicolons, but this pile seems to be all of the cases of simple values suffering from the problem. (Thus things that are likely to be found in one of the contexts above, more complicated ones aren't.) Signed-off-by: Phil Carmody Signed-off-by: Jiri Kosina commit 06b72d06d6b182bdaaaec686dbd8b602949521ee Author: Jesper Juhl Date: Sun Jul 17 21:15:54 2011 +0200 uwb: Fix misspelling of neighbourhood in comment In drivers/uwb/uwbd.c, the word 'neighbourhood' is misspelled as 'neighboorhood' in a comment. Fix that. Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit f0da7ee410e63a1521af734c3970acc1470e8c50 Author: Jesper Juhl Date: Sun Jul 17 19:56:38 2011 +0200 net, netfilter: Remove redundant goto in ebt_ulog_packet In net/bridge/netfilter/ebt_ulog.c:ebt_ulog_packet() the 'goto unlock' before the 'alloc_failure' label is completely redundant. This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit d6b8f5819f56ab79741871a4bd8a6e9f9d127bd6 Author: Axel Lin Date: Thu Jul 21 15:47:28 2011 +0800 HID: prodikeys: remove a redundant forward declaration of struct pcmidi_snd Signed-off-by: Axel Lin Signed-off-by: Jiri Kosina commit f4c79818ac6e36e304a01ea2fb6be6e14a545bcf Author: Axel Lin Date: Thu Jul 21 15:21:33 2011 +0800 HID: prodikeys: make needlessly global symbols static The following symbols are not referenced outside this file so there's no need for it to be in the global name space. pcmidi_sustained_note_release init_sustain_timers stop_sustain_timers pcmidi_handle_report pcmidi_setup_extra_keys pcmidi_snd_initialise pcmidi_snd_terminate Make them static. Signed-off-by: Axel Lin Signed-off-by: Jiri Kosina commit 020066d1ecc95d74da9be6beb436ac575af01271 Author: Takashi Iwai Date: Thu Jul 21 13:45:56 2011 +0200 ALSA: hda - Fix indep-HP path (de-)activation for VT1708* codecs This patch fixes non-working indep-HP control on VT1708* codecs. The problems are that via_independent_hp_put() wasn't fixed to follow the recent change of three HP paths, and hp_indep_path didn't contain the amp nids of mixer elements. Together with the fixes, a few code clean-ups are done. Signed-off-by: Takashi Iwai commit 08a4a43fc407d780bdde36d98f89c0dbb2a6be6b Author: David Ahern Date: Mon Jul 11 15:38:24 2011 -0600 perf tools, x86: Fix 32-bit compile on 64-bit system Builds for 32-bit perf binaries on a 64-bit host currently fail with this error: [...] bench/../../../arch/x86/lib/memcpy_64.S: Assembler messages: bench/../../../arch/x86/lib/memcpy_64.S:29: Error: bad register name `%rdi' bench/../../../arch/x86/lib/memcpy_64.S:34: Error: invalid instruction suffix for `movs' bench/../../../arch/x86/lib/memcpy_64.S:50: Error: bad register name `%rdi' bench/../../../arch/x86/lib/memcpy_64.S:61: Error: bad register name `%rdi' ... The problem is the detection of the host arch without considering passed in flags. This change fixes 32-bit builds via: make EXTRA_CFLAGS=-m32 and 64-bit builds still reference the memcpy_64.S. Signed-off-by: David Ahern Acked-by: Frederic Weisbecker Signed-off-by: Peter Zijlstra Cc: Link: http://lkml.kernel.org/r/1310420304-21452-1-git-send-email-dsahern@gmail.com Signed-off-by: Ingo Molnar commit 0f598f0b4c3b2259366cfa8adc01bd8e714c82d0 Author: Chris Friesen Date: Thu Jul 21 12:07:10 2011 +0200 netfilter: ipset: fix compiler warnings "'hash_ip4_data_next' declared inline after being called" Some gcc versions warn about prototypes without "inline" when the declaration includes the "inline" keyword. The fix generates a false error message "marked inline, but without a definition" with sparse below 0.4.2. Signed-off-by: Chris Friesen Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 89dc79b787d20e4b6c4077dcee1c5b1be4ab55b8 Author: Jozsef Kadlecsik Date: Thu Jul 21 12:06:18 2011 +0200 netfilter: ipset: hash:net,iface fixed to handle overlapping nets behind different interfaces If overlapping networks with different interfaces was added to the set, the type did not handle it properly. Example ipset create test hash:net,iface ipset add test 192.168.0.0/16,eth0 ipset add test 192.168.0.0/24,eth1 Now, if a packet was sent from 192.168.0.0/24,eth0, the type returned a match. In the patch the algorithm is fixed in order to correctly handle overlapping networks. Limitation: the same network cannot be stored with more than 64 different interfaces in a single set. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit a6a7b759ba62e62542308e091f7fc9cfac4f978e Author: Jozsef Kadlecsik Date: Thu Jul 21 12:05:31 2011 +0200 netfilter: ipset: make possible to hash some part of the data element only Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 050438ed5a05b25cdf287f5691e56a58c2606997 Author: Huang Ying Date: Thu Jul 14 09:34:37 2011 +0800 kexec, x86: Fix incorrect jump back address if not preserving context In kexec jump support, jump back address passed to the kexeced kernel via function calling ABI, that is, the function call return address is the jump back entry. Furthermore, jump back entry == 0 should be used to signal that the jump back or preserve context is not enabled in the original kernel. But in the current implementation the stack position used for function call return address is not cleared context preservation is disabled. The patch fixes this bug. Reported-and-tested-by: Yin Kangkai Signed-off-by: Huang Ying Cc: Eric W. Biederman Cc: Vivek Goyal Cc: Link: http://lkml.kernel.org/r/1310607277-25029-1-git-send-email-ying.huang@intel.com Signed-off-by: Ingo Molnar commit baf040a0d1ac6319725c0fe400503683ac016580 Author: Jiri Olsa Date: Thu Jul 14 11:25:34 2011 +0200 perf tools: Make test use the preset debugfs path Use preset debugfs path instead of hardcoded one. Signed-off-by: Jiri Olsa Cc: acme@redhat.com Cc: a.p.zijlstra@chello.nl Cc: paulus@samba.org Link: http://lkml.kernel.org/r/1310635534-4013-4-git-send-email-jolsa@redhat.com Signed-off-by: Ingo Molnar commit 13b62567e909125145f90e91625b1062196d1258 Author: Jiri Olsa Date: Thu Jul 14 11:25:33 2011 +0200 perf tools: Add automated tests for events parsing Adding builtin test for parse_events function, which is responsible for parsing/processing "-e" option for stat/top/record commands. This new test will run within the builtin test command suite (perf test). One or several tests were added for each type of event. More tests could be added easily if needed. Signed-off-by: Jiri Olsa Cc: acme@redhat.com Cc: a.p.zijlstra@chello.nl Cc: paulus@samba.org Link: http://lkml.kernel.org/r/1310635534-4013-3-git-send-email-jolsa@redhat.com Signed-off-by: Ingo Molnar commit f120f9d51be3a7db8991e7b78dc08bab5f8ab8f3 Author: Jiri Olsa Date: Thu Jul 14 11:25:32 2011 +0200 perf tools: De-opt the parse_events function Moving out the option parameter from parse_events function, and adding new parse_events_option function instead. The option parameter is used only to carry "struct perf_evlist" pointer for chaining new events. Putting it away, enable us to call parse_events from other places without using the option parameter. Signed-off-by: Jiri Olsa Cc: acme@redhat.com Cc: a.p.zijlstra@chello.nl Cc: paulus@samba.org Link: http://lkml.kernel.org/r/1310635534-4013-2-git-send-email-jolsa@redhat.com Signed-off-by: Ingo Molnar commit 43605ef188cd39708ddc5e3adc47b337b6ebe40e Author: Alan Cox Date: Tue Jul 12 17:49:29 2011 +0100 x86, config: Introduce an INTEL_MID configuration We need to carve up the configuration between: - MID general - Moorestown specific - Medfield specific - Future devices As a base point create an INTEL_MID configuration property. We make the existing MRST configuration a sub-option. This means that the rest of the kernel config can still use X86_MRST checks without anything going backwards. After this is merged future patches will tidy up which devices are MID and which are X86_MRST, as well as add options for Medfield. Signed-off-by: Alan Cox Link: http://lkml.kernel.org/r/20110712164859.7642.84136.stgit@bob.linux.org.uk Signed-off-by: Ingo Molnar commit e8de616e39ccea3b8d3cf7e68f16d216f183c4bf Author: Padmavathi Venna Date: Thu Jul 21 16:57:59 2011 +0900 ARM: S5P64X0: External Interrupt Support Add external interrupt support for S5P64X0.The external interrupt group 0(0 to 15) is used for wake-up source in stop and sleep mode. Add generic irq chip support Signed-off-by: Padmavathi Venna Signed-off-by: Kukjin Kim commit 4c0f0a3ea1210082909f053eca75ba1149f3b039 Author: Marek Szyprowski Date: Thu Jul 21 16:43:25 2011 +0900 ARM: EXYNOS4: Enable MFC on Samsung NURI Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit b14f04dbdcd52aa78de7bd88e53d9387b843edde Author: Kamil Debski Date: Thu Jul 21 16:43:20 2011 +0900 ARM: EXYNOS4: Enable MFC on universal_c210 Signed-off-by: Kamil Debski Signed-off-by: Kyungmin Park Signed-off-by: Marek Szyprowski Signed-off-by: Kukjin Kim commit 66eb1238deb06f3bc1185c31cf0ee68d75fb7385 Author: Kamil Debski Date: Thu Jul 21 16:43:14 2011 +0900 ARM: S5PV210: Enable MFC on Goni Signed-off-by: Kamil Debski Signed-off-by: Kyungmin Park Signed-off-by: Marek Szyprowski Signed-off-by: Kukjin Kim commit 0f75a96bc0c4611dea0c7207533f822315120054 Author: Kamil Debski Date: Thu Jul 21 16:42:30 2011 +0900 ARM: S5P: Add support for MFC device Add support for MFC device to plat-s5p, mach-exynos4, mach-s5pv210: - clock support - memory mapping and reserving - s5p_device_mfc platform device Signed-off-by: Kamil Debski Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 35ce909ee6dacb0cb74ad04fd04e869fd5f83a7f Author: Jingoo Han Date: Thu Jul 21 15:46:32 2011 +0900 ARM: EXYNOS4: Add support FIMD on SMDKC210 This patch adds support EXYNOS4 FIMD0 and LTE480WV LCD pannel on Samsung SMDKC210 board. Signed-off-by: Jingoo Han Signed-off-by: Jonghun Han Signed-off-by: Kukjin Kim commit e61b170139225ccb808eb98a047dd2a8d3af830d Author: Jonghun Han Date: Thu Jul 21 15:46:26 2011 +0900 ARM: EXYNOS4: Add platform device and helper functions for FIMD This patch adds platform device s5p_device_fimd0 for EXYNOS4 FIMD0. EXYNOS4 has two FIMDs(FIMD0, FIMD1). FIMD1 will be added later. Some definitions used to enable EXYNOS4 FIMD0 are added. Signed-off-by: Jonghun Han Signed-off-by: Jingoo Han Signed-off-by: Kukjin Kim commit 1aee2add2179a46c93bd62137feca22b1822eda2 Author: Jonghun Han Date: Thu Jul 21 15:46:19 2011 +0900 ARM: EXYNOS4: Add resource definition for FIMD This patch adds resource definitions for EXYNOS4 FIMD. IRQ and SFR definitions are added. Signed-off-by: Jonghun Han Signed-off-by: Jingoo Han Signed-off-by: Kukjin Kim commit 268a7ef2f3a84b16a1b160bb171f70077bad5886 Author: Jingoo Han Date: Thu Jul 21 15:42:38 2011 +0900 ARM: EXYNOS4: Change devname for FIMD clkdev According to SoC name, EXYNOS4, this patch changes devname for FIMD from 's5pv310-fb' to 'exynos4-fb'. Signed-off-by: Jingoo Han [kgene.kim@samsung.com: removed to change wrong clock name] Signed-off-by: Kukjin Kim commit 2c0b6871008ffa455145affb08bb63f7b47040c3 Merge: 2d21237 e480559 Author: Kukjin Kim Date: Thu Jul 21 17:28:23 2011 +0900 Merge branch 'next-samsung-clkdev-fix' into next-samsung-devel commit 2d21237e38120c2dfbc047b39aa2a56df67bdeec Author: Sangbeom Kim Date: Thu Jul 21 14:15:11 2011 +0900 ARM: SAMSUNG: Add IRQ_I2S0 definition To handle i2s0 interrupt and To fix compilation error adds IRQ_I2S0 for exynos4, s3c64xx, s5p64x0 Signed-off-by: Sangbeom Kim [kgene.kim@samsung.com: Fixed build failure due to inclusion] Signed-off-by: Kukjin Kim commit 38175051f8e79c5e9f65daab7200fd8d1fa4a912 Author: Sergei Shtylyov Date: Mon Jul 11 19:01:38 2011 +0400 x86, quirks: Use pci_dev->revision This code uses PCI_CLASS_REVISION instead of PCI_REVISION_ID, so it wasn't converted by commit 44c10138fd4bbc ("PCI: Change all drivers to use pci_device->revision") before being moved to arch/x86/... Signed-off-by: Sergei Shtylyov Cc: Jesse Barnes Cc: Dave Jones Link: http://lkml.kernel.org/r/201107111901.39281.sshtylyov@ru.mvista.com Signed-off-by: Ingo Molnar commit adc4bf9955856f8aa081ba613dbf56ffd664f0b7 Author: David Ahern Date: Mon May 30 09:16:27 2011 -0600 perf script: Fix display of IP address for non-callchain path Non-callchain path is using al.addr which prints as: openssl 14564 17672.003587: 7862d _x86_64_AES_encrypt_compact This should be sample->ip to print as: openssl 14564 17672.003587: 3f7867862d _x86_64_AES_encrypt_compact Signed-off-by: David Ahern Acked-by: Frederic Weisbecker Cc: acme@ghostprotocols.net Cc: peterz@infradead.org Cc: paulus@samba.org Link: http://lkml.kernel.org/r/1306768587-15376-1-git-send-email-dsahern@gmail.com Signed-off-by: Ingo Molnar commit a6c23905ff0d6bbddf590ef0838489ee0f6c74ac Author: Greg Dietsche Date: Thu Jun 30 20:10:53 2011 -0500 x86, smpboot: Mark the names[] array in __inquire_remote_apic() as const This array is read-only. Make it explicit by marking as const. Signed-off-by: Greg Dietsche Link: http://lkml.kernel.org/r/1309482653-23648-1-git-send-email-Gregory.Dietsche@cuw.edu Signed-off-by: Ingo Molnar commit eda3913bb70ecebac13adccffe1e7f96e93cee02 Author: David Ahern Date: Fri Jul 15 12:34:09 2011 -0600 perf tools: Fix endian conversion reading event attr from file header The perf_event_attr struct has two __u32's at the top and they need to be swapped individually. With this change I was able to analyze a perf.data collected in a 32-bit PPC VM on an x86 system. I tested both 32-bit and 64-bit binaries for the Intel analysis side; both read the PPC perf.data file correctly. -v2: - changed the existing perf_event__attr_swap() to swap only elements of perf_event_attr and exported it for use in swapping the attributes in the file header - updated swap_ops used for processing events Signed-off-by: David Ahern Acked-by: Frederic Weisbecker Cc: acme@ghostprotocols.net Cc: peterz@infradead.org Cc: paulus@samba.org Cc: Link: http://lkml.kernel.org/r/1310754849-12474-1-git-send-email-dsahern@gmail.com Signed-off-by: Ingo Molnar commit 0111919da268e1ced315e009ad0d0435a2fb32ac Author: Jiri Olsa Date: Wed Jul 13 22:58:18 2011 +0200 perf tools: Add missing 'node' alias to the hw_cache[] array Add "node" as a simple alias for NODE cache events. The addition of NODE cache events broke the parse_alias function, so any mismatched event caused the segfault, like: # ./perf stat -e krava ls The hw_cache/hw_cache_op/hw_cache_result arrays needs to follow PERF_COUNT_HW_CACHE_*MAX enums. Adding those MAXs to be size of those arrays, so possible ommision in future wil not lead to segfault. Adding read/write/prefetch as allowed operations for node cache event. Signed-off-by: Jiri Olsa Acked-by: Peter Zijlstra Cc: acme@redhat.com Link: http://lkml.kernel.org/r/20110713205818.GB7827@jolsa.brq.redhat.com Signed-off-by: Ingo Molnar commit 9e380825ab3f5176f65306c4ac119fd23634ce03 Author: Shirley Ma Date: Wed Jul 20 10:23:12 2011 -0700 vhost: handle wrap around in # of bufs math The meth for calculating the # of outstanding buffers gives incorrect results when vq->upend_idx wraps around zero. Fix that. Signed-off-by: Shirley Ma Signed-off-by: Michael S. Tsirkin commit 4582c0a4866ea70c35aa9279e1f91834d3348a93 Author: Jean Delvare Date: Sat Jul 16 17:42:00 2011 +0200 mutex: Make mutex_destroy() an inline function The non-debug variant of mutex_destroy is a no-op, currently implemented as a macro which does nothing. This approach fails to check the type of the parameter, so an error would only show when debugging gets enabled. Using an inline function instead, offers type checking for earlier bug catching. Signed-off-by: Jean Delvare Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/20110716174200.41002352@endymion.delvare Signed-off-by: Ingo Molnar commit 40bcea7bbe8fe452a2d272e2ffd3dea281eec9ff Merge: 492f73a 14a8fd7 Author: Ingo Molnar Date: Thu Jul 21 09:32:40 2011 +0200 Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core commit 492f73a303b488ffd67097b2351d54aa6e6c7c73 Merge: e08fbb7 f7bc8b6 Author: Ingo Molnar Date: Thu Jul 21 09:29:14 2011 +0200 Merge branch 'perf/urgent' into perf/core Merge reason: pick up the latest fixes - they won't make v3.0. Signed-off-by: Ingo Molnar commit c047e5f3170c2595e66ed67f87cec01afd717212 Author: Michael S. Tsirkin Date: Wed Jul 20 13:41:31 2011 +0300 vhost-net: update used ring on backend change On backend change, we flushed out outstanding skbs but forgot to update the used ring, so that done entries were left in the ubuf_info ring. As a result we lose heads or complete incorrect ones, crashing the guest or leaking memory. Fix by updating the used ring. Signed-off-by: Michael S. Tsirkin commit ef68c8f87ed13f65df867dddf36c0e185b27b942 Author: Jan Beulich Date: Tue Jul 19 11:53:07 2011 +0100 x86: Serialize EFI time accesses on rtc_lock The EFI specification requires that callers of the time related runtime functions serialize with other CMOS accesses in the kernel, as the EFI time functions may choose to also use the legacy CMOS RTC. Besides fixing a latent bug, this is a prerequisite to safely enable the rtc-efi driver for x86, which ought to be preferred over rtc-cmos on all EFI platforms. Signed-off-by: Jan Beulich Acked-by: Matthew Garrett Cc: Link: http://lkml.kernel.org/r/4E257E33020000780004E319@nat28.tlf.novell.com Signed-off-by: Ingo Molnar Cc: Matthew Garrett commit ac619f4eba45da10053fc991f8a5d47b3be79fa3 Author: Jan Beulich Date: Tue Jul 19 11:39:03 2011 +0100 x86: Serialize SMP bootup CMOS accesses on rtc_lock With CPU hotplug, there is a theoretical race between other CMOS (namely RTC) accesses and those done in the SMP secondary processor bringup path. I am unware of the problem having been noticed by anyone in practice, but it would very likely be rather spurious and very hard to reproduce. So to be on the safe side, acquire rtc_lock around those accesses. Signed-off-by: Jan Beulich Cc: John Stultz Link: http://lkml.kernel.org/r/4E257AE7020000780004E2FF@nat28.tlf.novell.com Signed-off-by: Ingo Molnar commit 2f3ab04a47c9b5e7c93400601e8f69bef0fa184a Author: Jingoo Han Date: Thu Jul 21 15:42:38 2011 +0900 ARM: EXYNOS4: Change devname for FIMD clkdev According to SoC name, EXYNOS4, this patch changes devname for FIMD from 's5pv310-fb' to 'exynos4-fb'. Signed-off-by: Jingoo Han [kgene.kim@samsung.com: removed to change wrong clock name] Signed-off-by: Kukjin Kim commit a750036f35cda160ef77408ec92c3dc41f8feebb Author: Jan Beulich Date: Tue Jul 19 13:00:45 2011 +0100 x86: Fix write lock scalability 64-bit issue With the write lock path simply subtracting RW_LOCK_BIAS there is, on large systems, the theoretical possibility of overflowing the 32-bit value that was used so far (namely if 128 or more CPUs manage to do the subtraction, but don't get to do the inverse addition in the failure path quickly enough). A first measure is to modify RW_LOCK_BIAS itself - with the new value chosen, it is good for up to 2048 CPUs each allowed to nest over 2048 times on the read path without causing an issue. Quite possibly it would even be sufficient to adjust the bias a little further, assuming that allowing for significantly less nesting would suffice. However, as the original value chosen allowed for even more nesting levels, to support more than 2048 CPUs (possible currently only for 64-bit kernels) the lock itself gets widened to 64 bits. Signed-off-by: Jan Beulich Cc: Linus Torvalds Cc: Andrew Morton Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/4E258E0D020000780004E3F0@nat28.tlf.novell.com Signed-off-by: Ingo Molnar commit a738669464a1e0d8e7b20f631120192f9cf7cfbd Author: Jan Beulich Date: Tue Jul 19 13:00:19 2011 +0100 x86: Unify rwsem assembly implementation Rather than having two functionally identical implementations for 32- and 64-bit configurations, use the previously extended assembly abstractions to fold the rwsem two implementations into a shared one. Signed-off-by: Jan Beulich Cc: Linus Torvalds Cc: Andrew Morton Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/4E258DF3020000780004E3ED@nat28.tlf.novell.com Signed-off-by: Ingo Molnar commit 4625cd637919edfb562e0d62abf94f52e9321335 Author: Jan Beulich Date: Tue Jul 19 12:59:51 2011 +0100 x86: Unify rwlock assembly implementation Rather than having two functionally identical implementations for 32- and 64-bit configurations, extend the existing assembly abstractions enough to fold the two rwlock implementations into a shared one. Signed-off-by: Jan Beulich Cc: Linus Torvalds Cc: Andrew Morton Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/4E258DD7020000780004E3EA@nat28.tlf.novell.com Signed-off-by: Ingo Molnar commit 2839cc1e7e1f260afc5cf9fb6be5b6c3e9d85fea Author: Sangbeom Kim Date: Thu Jul 21 14:12:19 2011 +0900 ARM: SAMSUNG: Add platform device for idma Exynos4 and S5PC110(S5PV210) has Internal dma(idma) in AUDSS. To support idma, register idma platform device. and Exynos4 and S5PC110 has different IDMA address. TO handle different IDMA address, register idma platform data Signed-off-by: Sangbeom Kim Signed-off-by: Kukjin Kim commit b93cb91bd34ad9f9eaba78aeb84bb556f6150d0e Author: MyungJoo Ham Date: Thu Jul 21 11:25:23 2011 +0900 ARM: EXYNOS4: Add more registers to be saved and restored for PM We need more registers to be saved and restored for PM of EXYNOS4210. Otherwise, with additional drivers running, suspend-to-RAM fails to wake up properly. This patch adds registers omitted in the initial PM patches. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit d40474c819b484ded7da520a174117b65d56e1c1 Author: MyungJoo Ham Date: Thu Jul 21 11:21:56 2011 +0900 ARM: EXYNOS4: Add more register addresses of CMU These registers are crucial for PM to work properly. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 295cc522c2b2834b302424e41ebb5846df6d61bd Author: Wanlong Gao Date: Tue Jul 19 09:48:39 2011 +0800 fs:update the NOTE of the file_operations structure Big kernel lock had been removed and setlease now use the lock_flocks() to hold a special spin lock file_lock_lock by Matthew. So just remove the out-of-date NOTE. Signed-off-by: Wanlong Gao Signed-off-by: Al Viro commit 86c98e8cdb21ff4628f4d48559ab6e006380fa4b Author: Al Viro Date: Mon Jul 18 23:39:07 2011 -0400 Remove dead code in dget_parent() ->d_parent is never NULL... Signed-off-by: Al Viro commit e4b9f0058145a3bed4199eacee62a9969c163401 Author: David Howells Date: Mon Jul 18 13:50:00 2011 +0100 AFS: Fix silly characters in a comment Fix silly characters in a comment in AFS code (some weird characters replaced the word 'flag' some point way back). Reported-by: viro@ZenIV.linux.org.uk Signed-off-by: David Howells Signed-off-by: Al Viro commit 4513d899c418ff69052420e29e354e4c64b3ef76 Author: Al Viro Date: Sun Jul 17 10:52:14 2011 -0400 switch d_add_ci() to d_splice_alias() in "found negative" case as well Signed-off-by: Al Viro commit 6c673ab393bc18e8bff729cd04cf384d15e72a04 Author: Al Viro Date: Sun Jul 17 10:22:27 2011 -0400 simplify gfs2_lookup() d_splice_alias() will DTRT when given NULL or ERR_PTR Signed-off-by: Al Viro commit 79ac5a46c5c1c17476fbf84b4d4600d6d565defd Author: Al Viro Date: Sun Jul 17 10:17:46 2011 -0400 jfs_lookup(): don't bother with . or .. they'll never be passed to ->lookup() Signed-off-by: Al Viro commit 10d9f309d88ca7f47133d57e99b72810f119f75b Author: Al Viro Date: Sat Jul 16 23:09:10 2011 -0400 get rid of useless dget_parent() in btrfs rename() and link() ->d_parent is locked and stable there... Signed-off-by: Al Viro commit 2fbe8c8ad176db69dfc682b4abb721c8fc19c3fd Author: Al Viro Date: Sat Jul 16 21:38:06 2011 -0400 get rid of useless dget_parent() in fs/btrfs/ioctl.c both callers there have dentry->d_parent stabilized by the fact that their caller had obtained dentry from lookup_one_len() and had not dropped ->i_mutex on parent since then. Signed-off-by: Al Viro commit 02c24a82187d5a628c68edfe71ae60dc135cd178 Author: Josef Bacik Date: Sat Jul 16 20:44:56 2011 -0400 fs: push i_mutex and filemap_write_and_wait down into ->fsync() handlers Btrfs needs to be able to control how filemap_write_and_wait_range() is called in fsync to make it less of a painful operation, so push down taking i_mutex and the calling of filemap_write_and_wait() down into the ->fsync() handlers. Some file systems can drop taking the i_mutex altogether it seems, like ext3 and ocfs2. For correctness sake I just pushed everything down in all cases to make sure that we keep the current behavior the same for everybody, and then each individual fs maintainer can make up their mind about what to do from there. Thanks, Acked-by: Jan Kara Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit 22735068d53c7115e384bc88dea95b17e76a6839 Author: Josef Bacik Date: Mon Jul 18 13:21:39 2011 -0400 drivers: fix up various ->llseek() implementations Fix up a few ->llseek() implementations that won't deal with SEEK_HOLE/SEEK_DATA properly. Make them future proof so that if we ever add new options they will return -EINVAL. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit 06222e491e663dac939f04b125c9dc52126a75c4 Author: Josef Bacik Date: Mon Jul 18 13:21:38 2011 -0400 fs: handle SEEK_HOLE/SEEK_DATA properly in all fs's that define their own llseek This converts everybody to handle SEEK_HOLE/SEEK_DATA properly. In some cases we just return -EINVAL, in others we do the normal generic thing, and in others we're simply making sure that the properly due-dilligence is done. For example in NFS/CIFS we need to make sure the file size is update properly for the SEEK_HOLE and SEEK_DATA case, but since it calls the generic llseek stuff itself that is all we have to do. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit c334b1138bd44bea578eab7971c59bd9212a1093 Author: Josef Bacik Date: Mon Jul 18 13:21:37 2011 -0400 Ext4: handle SEEK_HOLE/SEEK_DATA generically Since Ext4 has its own lseek we need to make sure it handles SEEK_HOLE/SEEK_DATA. For now just do the same thing that is done in the generic case, somebody else can come along and make it do fancy things later. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit b26751575a9aa55fd6dbf3febde3ff06dfadc44f Author: Josef Bacik Date: Mon Jul 18 13:21:36 2011 -0400 Btrfs: implement our own ->llseek In order to handle SEEK_HOLE/SEEK_DATA we need to implement our own llseek. Basically for the normal SEEK_*'s we will just defer to the generic helper, and for SEEK_HOLE/SEEK_DATA we will use our fiemap helper to figure out the nearest hole or data. Currently this helper doesn't check for delalloc bytes for prealloc space, so for now treat prealloc as data until that is fixed. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit 982d816581eeeacfe5b2b7c6d47d13a157616eff Author: Josef Bacik Date: Mon Jul 18 13:21:35 2011 -0400 fs: add SEEK_HOLE and SEEK_DATA flags This just gets us ready to support the SEEK_HOLE and SEEK_DATA flags. Turns out using fiemap in things like cp cause more problems than it solves, so lets try and give userspace an interface that doesn't suck. We need to match solaris here, and the definitions are *o* If /whence/ is SEEK_HOLE, the offset of the start of the next hole greater than or equal to the supplied offset is returned. The definition of a hole is provided near the end of the DESCRIPTION. *o* If /whence/ is SEEK_DATA, the file pointer is set to the start of the next non-hole file region greater than or equal to the supplied offset. So in the generic case the entire file is data and there is a virtual hole at the end. That means we will just return i_size for SEEK_HOLE and will return the same offset for SEEK_DATA. This is how Solaris does it so we have to do it the same way. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit b4d5b10fb2e3a4327838c07d8ebd9e350fcc133d Author: Christoph Hellwig Date: Sat Jul 16 16:47:00 2011 -0400 reiserfs: make reiserfs default to barrier=flush Change the default reiserfs mount option to barrier=flush. Based on a patch from Jeff Mahoney in the SuSE tree. Signed-off-by: Jeff Mahoney Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit 00eacd66cd8ab5fff9df49aa3f261ad43d495434 Author: Christoph Hellwig Date: Sat Jul 16 16:46:50 2011 -0400 ext3: make ext3 mount default to barrier=1 This patch turns on barriers by default for ext3. mount -o barrier=0 will turn them off. Based on a patch from Chris Mason in the SuSE tree. Signed-off-by: Chris Mason Signed-off-by: Christoph Hellwig Acked-by: Eric Sandeen Acked-by: Jan Kara Acked-by: Jeff Mahoney Acked-by: Ted Ts'o Signed-off-by: Al Viro commit b85fd6bdc99da917f5ae0f90f0c2d86ef9a766aa Author: Al Viro Date: Sun Jul 17 11:19:44 2011 -0400 don't open-code parent_ino() in assorted ->readdir() Signed-off-by: Al Viro commit 2def9e4ec75e6771def66a07960dd516e119ab4c Author: Al Viro Date: Sat Jul 16 17:43:09 2011 -0400 minix_getattr(): don't bother with ->d_parent we can find superblock easier, TYVM... Signed-off-by: Al Viro commit ee60498f3ef94d7ed58dcd38077e27e839e7cafc Author: Al Viro Date: Sat Jul 16 17:06:30 2011 -0400 coda_venus_readdir(): use offsetof() Signed-off-by: Al Viro commit c066b65abfe20b7a23ad3b1161cd67315f65f3c1 Author: Al Viro Date: Sat Jul 16 12:41:29 2011 -0400 arm: don't create useless copies to pass into debugfs_create_dir() its first argument is const char * and it's really not modified... Signed-off-by: Al Viro commit 12520c438f48113593130d210eba821a532c893b Author: Al Viro Date: Sat Jul 16 12:37:57 2011 -0400 switch assorted clock drivers to debugfs_remove_recursive() Signed-off-by: Al Viro commit f15146380d28b746df3c8b81b392812eb982382a Author: Kay Sievers Date: Tue Jul 12 20:48:39 2011 +0200 fs: seq_file - add event counter to simplify poll() support Moving the event counter into the dynamically allocated 'struc seq_file' allows poll() support without the need to allocate its own tracking structure. All current users are switched over to use the new counter. Requested-by: Andrew Morton akpm@linux-foundation.org Acked-by: NeilBrown Tested-by: Lucas De Marchi lucas.demarchi@profusion.mobi Signed-off-by: Kay Sievers Signed-off-by: Al Viro commit 72c5052ddc3956d847f21c2b8d55c93664a51b2c Author: Christoph Hellwig Date: Fri Jun 24 14:29:48 2011 -0400 fs: move inode_dio_done to the end_io handler For filesystems that delay their end_io processing we should keep our i_dio_count until the the processing is done. Enable this by moving the inode_dio_done call to the end_io handler if one exist. Note that the actual move to the workqueue for ext4 and XFS is not done in this patch yet, but left to the filesystem maintainers. At least for XFS it's not needed yet either as XFS has an internal equivalent to i_dio_count. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit aacfc19c626ebd3daa675652457d71019a1f583f Author: Christoph Hellwig Date: Fri Jun 24 14:29:47 2011 -0400 fs: simplify the blockdev_direct_IO prototype Simple filesystems always pass inode->i_sb_bdev as the block device argument, and never need a end_io handler. Let's simply things for them and for my grepping activity by dropping these arguments. The only thing not falling into that scheme is ext4, which passes and end_io handler without needing special flags (yet), but given how messy the direct I/O code there is use of __blockdev_direct_IO in one instead of two out of three cases isn't going to make a large difference anyway. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit df2d6f26586f12a24f3ae5df4e236dc5c08d6eb4 Author: Christoph Hellwig Date: Fri Jun 24 14:29:46 2011 -0400 fs: always maintain i_dio_count Maintain i_dio_count for all filesystems, not just those using DIO_LOCKING. This these filesystems to also protect truncate against direct I/O requests by using common code. Right now the only non-DIO_LOCKING filesystem that appears to do so is XFS, which uses an opencoded variant of the i_dio_count scheme. Behaviour doesn't change for filesystems never calling inode_dio_wait. For ext4 behaviour changes when using the dioread_nonlock option, which previously was missing any protection between truncate and direct I/O reads. For ocfs2 that handcrafted i_dio_count manipulations are replaced with the common code now enable. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit 562c72aa57c36b178eacc3500a0215651eca9429 Author: Christoph Hellwig Date: Fri Jun 24 14:29:45 2011 -0400 fs: move inode_dio_wait calls into ->setattr Let filesystems handle waiting for direct I/O requests themselves instead of doing it beforehand. This means filesystem-specific locks to prevent new dio referenes from appearing can be held. This is important to allow generalizing i_dio_count to non-DIO_LOCKING filesystems. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit 11b80f459adaf91a712f95e7734a17655a36bf30 Author: Christoph Hellwig Date: Fri Jun 24 14:29:44 2011 -0400 rw_semaphore: remove up/down_read_non_owner Now that the last users is gone these can be removed. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit bd5fe6c5eb9c548d7f07fe8f89a150bb6705e8e3 Author: Christoph Hellwig Date: Fri Jun 24 14:29:43 2011 -0400 fs: kill i_alloc_sem i_alloc_sem is a rather special rw_semaphore. It's the last one that may be released by a non-owner, and it's write side is always mirrored by real exclusion. It's intended use it to wait for all pending direct I/O requests to finish before starting a truncate. Replace it with a hand-grown construct: - exclusion for truncates is already guaranteed by i_mutex, so it can simply fall way - the reader side is replaced by an i_dio_count member in struct inode that counts the number of pending direct I/O requests. Truncate can't proceed as long as it's non-zero - when i_dio_count reaches non-zero we wake up a pending truncate using wake_up_bit on a new bit in i_flags - new references to i_dio_count can't appear while we are waiting for it to read zero because the direct I/O count always needs i_mutex (or an equivalent like XFS's i_iolock) for starting a new operation. This scheme is much simpler, and saves the space of a spinlock_t and a struct list_head in struct inode (typically 160 bits on a non-debug 64-bit system). Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit f9b5570d7fdedff32a2e78102bfb54cd1b12b289 Author: Christoph Hellwig Date: Fri Jun 24 14:29:42 2011 -0400 fs: simplify handling of zero sized reads in __blockdev_direct_IO Reject zero sized reads as soon as we know our I/O length, and don't borther with locks or allocations that might have to be cleaned up otherwise. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit 9ea7df534ed2a18157434a496a12cf073ca00c52 Author: Jan Kara Date: Fri Jun 24 14:29:41 2011 -0400 ext4: Rewrite ext4_page_mkwrite() to use generic helpers Rewrite ext4_page_mkwrite() to use __block_page_mkwrite() helper. This removes the need of using i_alloc_sem to avoid races with truncate which seems to be the wrong locking order according to lock ordering documented in mm/rmap.c. Also calling ext4_da_write_begin() as used by the old code seems to be problematic because we can decide to flush delay-allocated blocks which will acquire s_umount semaphore - again creating unpleasant lock dependency if not directly a deadlock. Also add a check for frozen filesystem so that we don't busyloop in page fault when the filesystem is frozen. Signed-off-by: Jan Kara Signed-off-by: Al Viro commit 582686915803e34adc8fdcd90bff7ca7f6a42221 Author: Christoph Hellwig Date: Fri Jun 24 14:29:40 2011 -0400 fat: remove i_alloc_sem abuse Add a new rw_semaphore to protect bmap against truncate. Previous i_alloc_sem was abused for this, but it's going away in this series. Note that we can't simply use i_mutex, given that the swapon code calls ->bmap under it. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit 8c5dc70aae29d2571c0f461d69b37e4e6e01ff4c Author: Tobias Klauser Date: Fri Jul 1 13:44:51 2011 +0200 VFS: Fixup kerneldoc for generic_permission() The flags parameter went away in d749519b444db985e40b897f73ce1898b11f997e Signed-off-by: Tobias Klauser Signed-off-by: Al Viro commit e46ebd27823b27273da780376d54c080250ff1a2 Author: Tomasz Stanislawski Date: Tue Jul 12 11:27:20 2011 +0200 anonfd: fix missing declaration The forward declaration of struct file_operations is added to avoid compilation warnings. Signed-off-by: Tomasz Stanislawski Signed-off-by: Al Viro commit 8daaa83145ef1f0a146680618328dbbd0fa76939 Author: Dave Chinner Date: Fri Jul 8 14:14:46 2011 +1000 xfs: make use of new shrinker callout for the inode cache Convert the inode reclaim shrinker to use the new per-sb shrinker operations. This allows much bigger reclaim batches to be used, and allows the XFS inode cache to be shrunk in proportion with the VFS dentry and inode caches. This avoids the problem of the VFS caches being shrunk significantly before the XFS inode cache is shrunk resulting in imbalances in the caches during reclaim. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 8ab47664d51a69ea79fe70bb07ca80664f74f76b Author: Dave Chinner Date: Fri Jul 8 14:14:45 2011 +1000 vfs: increase shrinker batch size Now that the per-sb shrinker is responsible for shrinking 2 or more caches, increase the batch size to keep econmies of scale for shrinking each cache. Increase the shrinker batch size to 1024 objects. To allow for a large increase in batch size, add a conditional reschedule to prune_icache_sb() so that we don't hold the LRU spin lock for too long. This mirrors the behaviour of the __shrink_dcache_sb(), and allows us to increase the batch size without needing to worry about problems caused by long lock hold times. To ensure that filesystems using the per-sb shrinker callouts don't cause problems, document that the object freeing method must reschedule appropriately inside loops. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 0e1fdafd93980eac62e778798549ce0f6073905c Author: Dave Chinner Date: Fri Jul 8 14:14:44 2011 +1000 superblock: add filesystem shrinker operations Now we have a per-superblock shrinker implementation, we can add a filesystem specific callout to it to allow filesystem internal caches to be shrunk by the superblock shrinker. Rather than perpetuate the multipurpose shrinker callback API (i.e. nr_to_scan == 0 meaning "tell me how many objects freeable in the cache), two operations will be added. The first will return the number of objects that are freeable, the second is the actual shrinker call. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 4f8c19fdf3f97402b68f058b1c72a6c7166c9e59 Author: Dave Chinner Date: Fri Jul 8 14:14:43 2011 +1000 inode: remove iprune_sem Now that we have per-sb shrinkers with a lifecycle that is a subset of the superblock lifecycle and can reliably detect a filesystem being unmounted, there is not longer any race condition for the iprune_sem to protect against. Hence we can remove it. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit b0d40c92adafde7c2d81203ce7c1c69275f41140 Author: Dave Chinner Date: Fri Jul 8 14:14:42 2011 +1000 superblock: introduce per-sb cache shrinker infrastructure With context based shrinkers, we can implement a per-superblock shrinker that shrinks the caches attached to the superblock. We currently have global shrinkers for the inode and dentry caches that split up into per-superblock operations via a coarse proportioning method that does not batch very well. The global shrinkers also have a dependency - dentries pin inodes - so we have to be very careful about how we register the global shrinkers so that the implicit call order is always correct. With a per-sb shrinker callout, we can encode this dependency directly into the per-sb shrinker, hence avoiding the need for strictly ordering shrinker registrations. We also have no need for any proportioning code for the shrinker subsystem already provides this functionality across all shrinkers. Allowing the shrinker to operate on a single superblock at a time means that we do less superblock list traversals and locking and reclaim should batch more effectively. This should result in less CPU overhead for reclaim and potentially faster reclaim of items from each filesystem. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 8fb47a4fbf858a164e973b8ea8ef5e83e61f2e50 Author: J. Bruce Fields Date: Wed Jul 20 20:21:59 2011 -0400 locks: rename lock-manager ops Both the filesystem and the lock manager can associate operations with a lock. Confusingly, one of them (fl_release_private) actually has the same name in both operation structures. It would save some confusion to give the lock-manager ops different names. Signed-off-by: J. Bruce Fields commit 55fb25d5b39320242b41af894921f5cef0c7e293 Author: Dave Chinner Date: Mon Jul 18 03:40:19 2011 +0000 xfs: add size update tracepoint to IO completion For improving insight into IO completion behaviour. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit af3e40228fb2dbc18d94fbd5103f07344a720ae7 Author: Dave Chinner Date: Mon Jul 18 03:40:18 2011 +0000 xfs: convert AIL cursors to use struct list_head The list of active AIL cursors uses a roll-your-own linked list with special casing for the AIL push cursor. Simplify this code by replacing the list with standard struct list_head lists, and use a separate list_head to track the active cursors. This allows us to treat the AIL push cursor as a generic cursor rather than as a special case, further simplifying the code. Further, fix the duplicate push cursor initialisation that the special case handling was hiding, and clean up all the comments around the active cursor list handling. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit 16b5902943c793e632cf8c9526619f59893bdc29 Author: Dave Chinner Date: Mon Jul 18 03:40:17 2011 +0000 xfs: remove confusing ail cursor wrapper xfs_trans_ail_cursor_set() doesn't set the cursor to the current log item, it sets it to the next item. There is already a function for doing this - xfs_trans_ail_cursor_next() - and the _set function is simply a two line wrapper. Remove it and open code the setting of the cursor in the two locations that call it to remove the confusion. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit 1d8c95a363bf8cd4d4182dd19c01693b635311c2 Author: Dave Chinner Date: Mon Jul 18 03:40:16 2011 +0000 xfs: use a cursor for bulk AIL insertion Delayed logging can insert tens of thousands of log items into the AIL at the same LSN. When the committing of log commit records occur, we can get insertions occurring at an LSN that is not at the end of the AIL. If there are thousands of items in the AIL on the tail LSN, each insertion has to walk the AIL to find the correct place to insert the new item into the AIL. This can consume large amounts of CPU time and block other operations from occurring while the traversals are in progress. To avoid this repeated walk, use a AIL cursor to record where we should be inserting the new items into the AIL without having to repeat the walk. The cursor infrastructure already provides this functionality for push walks, so is a simple extension of existing code. While this will not avoid the initial walk, it will avoid repeating it tens of thousands of times during a single checkpoint commit. This version includes logic improvements from Christoph Hellwig. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit ad1a2c878ca70829874b4fcc83223cccb4e26dab Author: J. Bruce Fields Date: Thu Jul 14 20:50:36 2011 +0000 xfs: failure mapping nfs fh to inode should return ESTALE On xfs exports, nfsd is incorrectly returning ENOENT instead of ESTALE on attempts to use a filehandle of a deleted file (spotted with pynfs test PUTFH3). The ENOENT was coming from xfs_iget. (It's tempting to wonder whether we should just map all xfs_iget errors to ESTALE, but I don't believe so--xfs_iget can also return ENOMEM at least, which we wouldn't want mapped to ESTALE.) While we're at it, the other return of ENOENT in xfs_nfs_get_inode() also looks wrong. Signed-off-by: J. Bruce Fields Signed-off-by: Alex Elder commit adab0f67d1cdaf468bbc311bce4d61f17626a536 Author: Chandra Seetharaman Date: Wed Jun 29 22:10:14 2011 +0000 xfs: Remove the second parameter to xfs_sb_count() Remove the second parameter to xfs_sb_count() since all callers of the function set them. Also, fix the header comment regarding it being called periodically. Signed-off-by: Chandra Seetharaman Signed-off-by: Alex Elder commit 6eb77b214985f8c2568f1f20f941790fbf8bf97b Author: Stefan Berger Date: Mon Jul 18 09:11:55 2011 -0400 tpm: Fix compilation warning when CONFIG_PNP is not defined The is_itpm() function is only accessed from a block surrounded by #ifdef CONFIG_PNP. Therefore, also surround it with #ifdef CONFIG_PNP and remove the #else branch causing the warning. http://lxr.linux.no/#linux+v2.6.39/drivers/char/tpm/tpm_tis.c#L622 v2: - fixes a previous typo Signed-off-by: Stefan Berger Reported-by: Randy Dunlap Signed-off-by: James Morris commit cbaa51524b3224813814607177a00c350ee35d12 Author: John Stultz Date: Wed Jul 20 15:42:55 2011 -0700 time: Fix stupid KERN_WARN compile issue Terribly embarassing. Don't know how I committed this, but its KERN_WARNING not KERN_WARN. This fixes the following compile error: kernel/time/timekeeping.c: In function ‘__timekeeping_inject_sleeptime’: kernel/time/timekeeping.c:608: error: ‘KERN_WARN’ undeclared (first use in this function) kernel/time/timekeeping.c:608: error: (Each undeclared identifier is reported only once kernel/time/timekeeping.c:608: error: for each function it appears in.) kernel/time/timekeeping.c:608: error: expected ‘)’ before string constant make[2]: *** [kernel/time/timekeeping.o] Error 1 Reported-by: Ingo Molnar Signed-off-by: John Stultz commit 744120aadd60bc64a79b49681786b5e217dafbc1 Author: John Crispin Date: Thu Jun 9 20:15:21 2011 +0200 MIPS: Lantiq: Add missing clk_enable and clk_disable functions. Signed-of-by: John Crispin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2465/ Signed-off-by: Ralf Baechle commit de8839728742a1745370b643f3ac771126dff12f Author: Florian Fainelli Date: Sun Jun 12 20:57:17 2011 +0200 MIPS: AR7: Fix trailing semicolon bug in clock.c Signed-off-by: Florian Fainelli To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2489/ Signed-off-by: Ralf Baechle commit 6097050d26458ccd6ffcba2accc55d0edfc9a4cd Author: Ralf Baechle Date: Thu Jun 9 10:32:22 2011 +0100 MAINTAINERS: Update MIPS entry. o Add entry for MIPS patchworks o Reorder entries for readability. Signed-off-by: Ralf Baechle commit b29af676a2e11126e9bf9205c792faa81f775df0 Author: Jonas Gorski Date: Wed Jun 8 12:03:02 2011 +0200 MIPS: BCM63xx: Remove duplicate PERF_IRQSTAT_REG definition Signed-off-by: Jonas Gorski Cc: linux-mips@linux-mips.org Acked-by: Florian Fainelli Patchwork: https://patchwork.linux-mips.org/patch/2461/ Signed-off-by: Ralf Baechle commit 39263eeb44308a5d6ea6117376721a6091d2b622 Author: Jayachandran C Date: Tue Jun 7 03:14:12 2011 +0530 MIPS: Netlogic: SMP fixes for XLR/XLS platform code. Fix few issues in the Netlogic code: - Use handle_percpu_irq to handle per-cpu interrupts - Remove unused function nlm_common_ipi_handler() - Call scheduler_ipi() on SMP_RESCHEDULE_YOURSELF - Enable interrupts in nlm_smp_finish() Signed-off-by: Jayachandran C Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2460/ Signed-off-by: Ralf Baechle commit 1544129da2de9fa276429deed8fac3fbc45634be Author: Thomas Gleixner Date: Mon Jun 6 11:53:01 2011 +0200 MIPS: SB1250: Restore dropped irq_mask function Commit d6d5d5c4a (MIPS: Sibyte: Convert to new irq_chip functions) removed the mask function which breaks irq_shutdown(). Restore it. Reported-by: Matt Turner Signed-off-by: Thomas Gleixner Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2460/ Tested-by: Matt Turner Signed-off-by: Ralf Baechle commit 56eccc36dd8888f44c1de24c52b150adbf8ec427 Author: Ralf Baechle Date: Mon Jun 6 01:17:25 2011 +0100 MIPS: MIPSsim: Fix uniprocessor build. Signed-off-by: Ralf Baechle commit 4f55fd752fb4770a354dd2401d5043c98236cc29 Author: Ralf Baechle Date: Wed Jun 1 14:20:09 2011 +0100 MIPS: ARC: Fix build of firmware library on uniprocessor. Signed-off-by: Ralf Baechle commit bf45e583715eae15e0adecb6f55d97878e127d7d Author: Ralf Baechle Date: Mon May 30 14:59:47 2011 +0100 MIPS: XLR, XLS: Move makefile bits to were they belong. This patch combines linux-mips.org patches 637d69600fb1773da56487271ec2a79c33d237ed [MIPS: Netlogic: Yank out crap.] and 5e3c263b9658a4b1c6c5577793e9347efb44854e [MIPS: XLR, XLS: Add Kbuild files for platform.] Signed-off-by: Ralf Baechle Signed-off-by: Jayachandran C Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2415/ Signed-off-by: Ralf Baechle commit 852fe3105e94ca26d1b3df7e2cb6878ebdd67608 Author: Ralf Baechle Date: Sat May 28 15:27:59 2011 +0100 MIPS: Malta: Fix crash in SMP kernel on non-CMP systems. Since 6be63bbbdab66b9185dc6f67c8b1bacb6f37f946 (lmo) rsp. af3a1f6f4813907e143f87030cde67a9971db533 (kernel.org) the Malta code does no longer probe for presence of GCMP if CMP is not configured. This means that the variable gcmp_present well be left at its default value of -1 which normally is meant to indicate that GCMP has not yet been mmapped. This non-zero value is now interpreted as GCMP being present resulting in a write attempt to a GCMP register resulting in a crash. Reported and a build fix on top of my fix by Rob Landley . Reported-by: Rob Landley Signed-off-by: Ralf Baechle Patchwork: https://patchwork.linux-mips.org/patch/2413/ commit b12acf163f6e52ff7d41aca51382dde17c506068 Author: Ralf Baechle Date: Sat May 28 13:22:58 2011 +0100 MIPS: Wire up sendmmsg and renumber setns syscall. Renumbering was necessary because I had already wired up setns(2) in the linux-mips.org tree in commit c3fce54644cabbb90700cc3acc040718a377f609 [MIPS: Wire up new sendmmsg syscall.] but the same syscall numbers were used by 7b21fddd087678a70ad64afc0f632e0f1071b092 [ns: Wire up the setns system call] resulting in a conflict. Signed-off-by: Ralf Baechle commit 731f90fae9a94313916a51ef80c4d906c85d9f64 Author: Ralf Baechle Date: Sat May 28 01:09:02 2011 +0100 MIPS: SMTC: Fix build. Commit ee6114202e48dc282c6d04741e9c5d7171eb8bb8 (lmo) rsp. 1685f3b158a244d4f6e205e67c84483fffcb2d9f (kernel.org) ["MIPS: SMTC: Move declaration of smtc_init_secondary to ."] didn't quite do that - it rather lost the declaration of smtc_init_secondary resulting in a build error. Signed-off-by: Ralf Baechle commit 34ed9506aecdf2ab9d73497e11b9d160920973f5 Author: Ralf Baechle Date: Sat May 28 00:57:13 2011 +0100 MIPS: Malta SMTC: Fix build. Commit a561b02a2577aec51277ba39c82bd192a79c0267 (lmo) rsp. 7c8d948f1633da5ff81e4f5b31ef237d74c40127 (kernel.org) ["MIPS: i8259: Convert to new irq_chip functions"] missed one location to modify resulting in build breakage. Signed-off-by: Ralf Baechle commit 1bed3b9c71fdf241da2c09a91d39b5302145f7c6 Author: Ralf Baechle Date: Fri May 27 20:32:17 2011 +0100 MIPS: GT64120: Remove useless inclusion of clocksource.h. Signed-off-by: Ralf Baechle commit 84fe98ea6866625a19969892ff3e83d8e94dc976 Author: Ralf Baechle Date: Fri May 27 20:30:48 2011 +0100 MIPS: NILE4: Remove useless inclusion of GT64120 header. Signed-off-by: Ralf Baechle commit 101ed47e01516adeffeb4769df77b9207e6ba48a Author: Balaji T K Date: Fri Jul 1 22:09:36 2011 +0530 mmc: omap_hsmmc: Remove unused iclk After runtime conversion to handle clk, iclk node is not used. However fclk node is still used to get clock rate. Signed-off-by: Balaji T K Signed-off-by: Chris Ball commit fa4aa2d48dabed9d1288d235524cb8d0a8e81c00 Author: Balaji T K Date: Fri Jul 1 22:09:35 2011 +0530 mmc: omap_hsmmc: add runtime pm support * Add runtime pm support to HSMMC host controller. * Use runtime pm API to enable/disable HSMMC clock. * Use runtime autosuspend APIs to enable auto suspend delay. Based on OMAP HSMMC runtime implementation by Kevin Hilman and Kishore Kadiyala. Signed-off-by: Balaji T K Signed-off-by: Chris Ball commit 7a8c2cef3dd6ffc586dfc5e3f63b73b4be2662e7 Author: Balaji T K Date: Fri Jul 1 22:09:34 2011 +0530 mmc: omap_hsmmc: Remove lazy_disable lazy_disable framework in OMAP HSMMC manages multiple low power states and card is powered off after inactivity time of 8 seconds. Based on previous discussion on the list, card power (regulator) handling (when to power OFF/ON) should ideally be handled by core layer. Remove usage of lazy disable to allow core layer _only_ to handle card power. With the removal of lazy disable framework, MMC regulators are left ON until MMC_POWER_OFF via set_ios. Signed-off-by: Balaji T K Signed-off-by: Chris Ball commit ca8e99b32e3863c98ac958617cc157a00bf445b8 Author: Philip Rakity Date: Wed Jul 6 08:51:32 2011 -0700 mmc: core: Set non-default Drive Strength via platform hook Non default Drive Strength cannot be set automatically. It is a function of the board design and only if there is a specific platform handler can it be set. The platform handler needs to take into account the board design. Pass to the platform code the necessary information. For example: The card and host controller may indicate they support HIGH and LOW drive strength. There is no way to know what should be chosen without specific board knowledge. Setting HIGH may lead to reflections and setting LOW may not suffice. There is no mechanism (like ethernet duplex or speed pulses) to determine what should be done automatically. If no platform handler is defined -- use the default value. Signed-off-by: Philip Rakity Reviewed-by: Arindam Nath Signed-off-by: Chris Ball commit ee8a43a51c7681f19fe23b6b936e1d8094a8b7d1 Author: Per Forlin Date: Fri Jul 1 18:55:33 2011 +0200 mmc: block: add handling for two parallel block requests in issue_rw_rq Change mmc_blk_issue_rw_rq() to become asynchronous. The execution flow looks like this: * The mmc-queue calls issue_rw_rq(), which sends the request to the host and returns back to the mmc-queue. * The mmc-queue calls issue_rw_rq() again with a new request. * This new request is prepared in issue_rw_rq(), then it waits for the active request to complete before pushing it to the host. * When the mmc-queue is empty it will call issue_rw_rq() with a NULL req to finish off the active request without starting a new request. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 04296b7bfda45295a568b4b312e03828fae801dc Author: Per Forlin Date: Fri Jul 1 18:55:31 2011 +0200 mmc: queue: add a second mmc queue request member Add an additional mmc queue request instance to make way for two active block requests. One request may be active while the other request is being prepared. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit d78d4a8ad53f345dd3c0bb5f8d377baa523739f7 Author: Per Forlin Date: Fri Jul 1 18:55:30 2011 +0200 mmc: block: move error path in issue_rw_rq to a separate function. Break out code without functional changes. This simplifies the code and makes way for handling two parallel requests. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 54d49d77628bed77e5491b8a2a1158a492843a19 Author: Per Forlin Date: Fri Jul 1 18:55:29 2011 +0200 mmc: block: add a block request prepare function Break out code from mmc_blk_issue_rw_rq to create a block request prepare function. This doesn't change any functionallity. This helps when handling more than one active block request. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 97868a2bdfc2fc79a987b64f1611034b56a3f8c4 Author: Per Forlin Date: Sat Jul 9 17:12:36 2011 -0400 mmc: block: add member in mmc queue struct to hold request data The way the request data is organized in the mmc queue struct, it only allows processing of one request at a time. This patch adds a new struct to hold mmc queue request data such as sg list, request, blk request and bounce buffers, and updates any functions depending on the mmc queue struct. This prepares for using multiple active requests in one mmc queue. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit bf043330362b1ccb0c0611b8fc394e06ba8498b0 Author: Per Forlin Date: Fri Jul 1 18:55:27 2011 +0200 mmc: mmc_test: test to measure how sg_len affect performance Add a test that measures how the mmc bandwidth depends on the numbers of sg elements in the sg list. The transfer size if fixed and sg length goes from a few up to 512. The purpose is to measure overhead caused by multiple sg elements. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 9f9c4180f88d127e2bb83913d80750a8fbdb8f3e Author: Per Forlin Date: Fri Jul 1 18:55:26 2011 +0200 mmc: mmc_test: add test for non-blocking transfers Add four tests for read and write performance per different transfer size, 4k to 4M. * Read using blocking mmc request * Read using non-blocking mmc request * Write using blocking mmc request * Write using non-blocking mmc request The host driver must support pre_req() and post_req() in order to run the non-blocking test cases. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 54f3caf5bcb732c9ac48308b7b43eb9aaa7ed8ca Author: Per Forlin Date: Fri Jul 1 18:55:25 2011 +0200 mmc: mmc_test: add debugfs file to list all tests Add a debugfs file "testlist" to print all available tests. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 58c7ccbf9109abcc6b7ed2f76c21ebee244d31a8 Author: Per Forlin Date: Fri Jul 1 18:55:24 2011 +0200 mmc: mmci: implement pre_req() and post_req() pre_req() runs dma_map_sg() and prepares the dma descriptor for the next mmc data transfer. post_req() runs dma_unmap_sg. If not calling pre_req() before mmci_request(), mmci_request() will prepare the cache and dma just like it did it before. It is optional to use pre_req() and post_req() for mmci. Signed-off-by: Per Forlin Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 9782aff8df7e32e7745cc484f34ec471d9251651 Author: Per Forlin Date: Fri Jul 1 18:55:23 2011 +0200 mmc: omap_hsmmc: add support for pre_req and post_req pre_req() runs dma_map_sg(), post_req() runs dma_unmap_sg. If not calling pre_req() before omap_hsmmc_request(), dma_map_sg will be issued before starting the transfer. It is optional to use pre_req(). If issuing pre_req(), post_req() must be called as well. Signed-off-by: Per Forlin Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Signed-off-by: Chris Ball commit aa8b683a7d392271ed349c6ab9f36b8c313794b7 Author: Per Forlin Date: Fri Jul 1 18:55:22 2011 +0200 mmc: core: add non-blocking mmc request function Previously there has only been one function mmc_wait_for_req() to start and wait for a request. This patch adds: * mmc_start_req() - starts a request wihtout waiting If there is on ongoing request wait for completion of that request and start the new one and return. Does not wait for the new command to complete. This patch also adds new function members in struct mmc_host_ops only called from core.c: * pre_req - asks the host driver to prepare for the next job * post_req - asks the host driver to clean up after a completed job The intention is to use pre_req() and post_req() to do cache maintenance while a request is active. pre_req() can be called while a request is active to minimize latency to start next job. post_req() can be used after the next job is started to clean up the request. This will minimize the host driver request end latency. post_req() is typically used before ending the block request and handing over the buffer to the block layer. Add a host-private member in mmc_data to be used by pre_req to mark the data. The host driver will then check this mark to see if the data is prepared or not. Signed-off-by: Per Forlin Acked-by: Kyungmin Park Acked-by: Arnd Bergmann Reviewed-by: Venkatraman S Tested-by: Sourav Poddar Tested-by: Linus Walleij Signed-off-by: Chris Ball commit 0500f10cc2d624034f350edae2529975c0f1c1f8 Author: Madhusudhan Chikkature Date: Fri Jul 1 10:36:42 2011 -0700 mmc: MAINTAINERS: change omap_hsmmc maintainence to orphan Update the OMAP HSMMC entry from the MAINTAINERS file as I will no longer be able to maintain this driver. Signed-off-by: Madhusudhan Chikkature [khilman@ti.com: change to Orphan rather than complete removal] Signed-off-by: Kevin Hilman Acked-by: Venkatraman S Signed-off-by: Chris Ball commit 5c209f1fb7cc7691b51df0d7341ae58e43aa8c0f Author: Nicolas Ferre Date: Wed Jun 29 18:54:20 2011 +0200 mmc: kconfig: remove EXPERIMENTAL from the DMA selection of atmel-mci This driver has been used for years with this option enabled. Signed-off-by: Nicolas Ferre Signed-off-by: Chris Ball commit 5c2f2b9bd0db84eabaf0d2cf7a9392a1581c2545 Author: Nicolas Ferre Date: Wed Jul 6 11:31:36 2011 +0200 mmc: atmel-mci: add suspend/resume support Take care of slots while going to suspend state. Signed-off-by: Nicolas Ferre Reviewed-by: Felipe Balbi Signed-off-by: Chris Ball commit 0d013bcf5c272faea1f8e7a5ef3cb2e98103d5cb Author: Adrian Hunter Date: Wed Jun 29 14:23:47 2011 +0300 mmc: sdhci-pci: allow 8-bit bus width for Intel Medfield eMMCs Unless MMC_CAP_8_BIT_DATA is set, the bus width defaults to 4. Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit 68077b0261f00e4eb2d26f066efca1edb89488a8 Author: Major Lee Date: Wed Jun 29 14:23:46 2011 +0300 mmc: sdhci-pci: add 8-bit bus width support for mrst hc0 And hook platform_8bit_width to support 8-bit bus width. Signed-off-by: Major Lee Signed-off-by: Alan Cox Signed-off-by: Dirk Brandewie Signed-off-by: Chris Ball commit 94dd5b3371c989b32685a00a54cba7bb530f864d Author: James Hogan Date: Wed Jun 29 09:30:47 2011 +0100 mmc: dw_mmc: reset FIFO after an error If an error occurs mid way through a transaction (such as a missing CRC status response after the 2nd block written out of 3), then the FIFO may still contain data which will interfere with the next transaction. Therefore after an error has been detected, reset the fifo using the CTRL register. Signed-off-by: James Hogan Acked-by: Will Newton Tested-by: Jaehoon Chung Signed-off-by: Chris Ball commit 55c5efbc0dbcb20b7f0d264d172ab376494d79a1 Author: James Hogan Date: Wed Jun 29 09:29:58 2011 +0100 mmc: dw_mmc: handle "no CRC status" error When a data write isn't acknowledged by the card (so no CRC status token is detected after the data), the error -EIO is returned instead of the -ETIMEDOUT expected by mmc_test 15 - "Correct xfer_size at write (start failure)" and 17 "Correct xfer_size at write (midway failure)". In PIO mode the reported number of bytes transferred is also exaggerated since the last block actually failed. Handle the "Write no CRC" error specially, setting the error to -ETIMEDOUT and setting the bytes_xferred to 0. Signed-off-by: James Hogan Acked-by: Will Newton Tested-by: Jaehoon Chung Signed-off-by: Chris Ball commit ae837fe6ddb1e4e9238191629baa08c35ed4a6bb Author: James Hogan Date: Wed Jun 29 09:29:17 2011 +0100 mmc: dw_mmc: remove unnecessary error messages Remove error messages for timeout and CRC failure, since the error code already indicates the problem. Signed-off-by: James Hogan Acked-by: Will Newton Tested-by: Jaehoon Chung Signed-off-by: Chris Ball commit 03e8cb534e7cc3f71a07528a44da7ce68e5b5708 Author: James Hogan Date: Wed Jun 29 09:28:43 2011 +0100 mmc: dw_mmc: fix stop when fallen back to PIO There are several situations when dw_mci_submit_data_dma() decides to fall back to PIO mode instead of using DMA, due to a short (to avoid overhead) or "complex" (e.g. with unaligned buffers) transaction, even though host->use_dma is set. However dw_mci_stop_dma() decides whether to stop DMA or set the EVENT_XFER_COMPLETE event based on host->use_dma. When falling back to PIO mode this results in data timeout errors getting missed and the driver locking up. Therefore add host->using_dma to indicate whether the current transaction is using dma or not, and adjust dw_mci_stop_dma() to use that instead. Signed-off-by: James Hogan Acked-by: Will Newton Tested-by: Jaehoon Chung Signed-off-by: Chris Ball commit 65d13516b2358c38ac56a5f83e989a6837dcf825 Author: Wonil Choi Date: Wed Jun 29 11:38:38 2011 +0900 mmc: sdhci-s3c: Fix return value in sdhci_s3c_suspend/resume() Signed-off-by: Wonil Choi Signed-off-by: Minho Ban Cc: Ben Dooks Signed-off-by: Kukjin Kim Signed-off-by: Chris Ball commit 58d1246db340793c408b22884598e4ce4d1d4aba Author: Adrian Hunter Date: Tue Jun 28 17:16:03 2011 +0300 mmc: sdhci: specify maximum discard timeout In general, SDHC hardware timeout cannot be avoided. Accordingly, the maximum timeout is specified to limit the maximum discard size. Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit e056a1b5b67b4e4bfad00bf143ab14f634777705 Author: Adrian Hunter Date: Tue Jun 28 17:16:02 2011 +0300 mmc: queue: let host controllers specify maximum discard timeout Some host controllers will not operate without a hardware timeout that is limited in value. However large discards require large timeouts, so there needs to be a way to specify the maximum discard size. A host controller driver may now specify the maximum discard timeout possible so that max_discard_sectors can be calculated. However, for eMMC when the High Capacity Erase Group Size is not in use, the timeout calculation depends on clock rate which may change. For that case Preferred Erase Size is used instead. Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit e8cd77e467f7bb1d4b942037c47b087334a484d4 Author: Shawn Guo Date: Tue Jun 21 22:41:50 2011 +0800 mmc: sdhci-esdhc-imx: remove "WP" from flag ESDHC_FLAG_GPIO_FOR_CD_WP The use of flag ESDHC_FLAG_GPIO_FOR_CD_WP is all CD related. It does not necessarily need to bother WP in the flag name. Signed-off-by: Shawn Guo Signed-off-by: Chris Ball commit 803862a6f7de4939e0a557214e5e4b37e36f87ff Author: Shawn Guo Date: Tue Jun 21 22:41:49 2011 +0800 mmc: sdhci-esdhc-imx: SDHCI_CARD_PRESENT does not get cleared The function esdhc_readl_le intends to clear bit SDHCI_CARD_PRESENT, when the card detect gpio tells there is no card. But it does not clear the bit actually. The patch gives a fix on that. Signed-off-by: Shawn Guo Acked-by: Wolfram Sang Cc: Signed-off-by: Chris Ball commit d25928d1eed06a9c23c723466dfa7cbee0a5e07d Author: Shawn Guo Date: Tue Jun 21 22:41:48 2011 +0800 mmc: sdhci: fix interrupt storm from card detection The issue was initially found by Eric Benard as below. http://permalink.gmane.org/gmane.linux.ports.arm.kernel/108031 Not sure about other SDHCI based controller, but on Freescale eSDHC, the SDHCI_INT_CARD_INSERT bits will be immediately set again when it gets cleared, if a card is inserted. The driver need to mask the irq to prevent interrupt storm which will freeze the system. And the SDHCI_INT_CARD_REMOVE gets the same situation. The patch fixes the problem based on the initial idea from Eric Benard. Signed-off-by: Shawn Guo Cc: Eric Benard Tested-by: Arnaud Patard Signed-off-by: Chris Ball commit e312eb1e66e4357000e4e7438849d5a5fd738219 Author: Paul Parsons Date: Sun May 15 13:24:41 2011 +0000 mmc: tmio: Fix race condition resulting in spurious interrupts There is a race condition in the tmio_mmc_irq() interrupt handler, caused by the presence of a while loop, which results in warnings of spurious interrupts. This was found on an HP iPAQ hx4700 whose HTC ASIC3 reportedly incorporates the Toshiba TC6380AF controller. Towards the end of a multiple read (CMD18) operation the handler clears the final RXRDY status bit in the first loop iteration, sees the DATAEND status bit at the bottom of the loop, and so clears the DATAEND status bit in the second loop iteration. However the DATAEND interrupt is still queued in the system somewhere and can't be delivered until the handler has returned. This second interrupt is then reported as spurious in the next call to the handler. Likewise for single read (CMD17) operations. And something similar occurs for multiple write (CMD25) and single write (CMD24) operations, where CMDRESPEND and TXRQ status bits are cleared in a single call. In these cases the interrupt handler clears two separate interrupts when it should only clear the one interrupt for which it was invoked. The fix is to remove the while loop. Signed-off-by: Paul Parsons Signed-off-by: Chris Ball commit d6fec69d0da640366e1f0a0df092757d46821b10 Author: Paul Parsons Date: Thu Jun 30 11:50:12 2011 -0400 mmc: tmio: Fix build error without CONFIG_MMC_SDHI Only compile tmio_mmc_dma.o when CONFIG_MMC_SDHI is selected (as y or m). Signed-off-by: Paul Parsons Signed-off-by: Chris Ball commit 34b664a20e2664de0d0d7990ca60276b96c08c75 Author: James Hogan Date: Fri Jun 24 13:57:56 2011 +0100 mmc: dw_mmc: handle unaligned buffers and sizes Update functions for PIO pushing and pulling data to and from the FIFO so that they can handle unaligned output buffers and unaligned buffer lengths. This makes more of the tests in mmc_test pass. Unaligned lengths in pulls are handled by reading the full FIFO item, and storing the remaining bytes in a small internal buffer (part_buf). The next data pull will copy data out of this buffer first before accessing the FIFO again. Similarly, for pushes the final bytes that don't fill a FIFO item are stored in the part_buf (or sent anyway if it's the last transfer), and then the part_buf is included at the beginning of the next buffer pushed. Unaligned buffers in pulls are handled specially if the architecture cannot do efficient unaligned accesses, by reading FIFO items into a aligned local buffer, and memcpy'ing them into the output buffer, again storing any remaining bytes in the internal buffer. Similarly for pushes the buffer is memcpy'd into an aligned local buffer then written to the FIFO. Signed-off-by: James Hogan Acked-by: Will Newton Signed-off-by: Chris Ball commit b86d825323b4c5d0c406e5b1a85af614acf0cf5a Author: James Hogan Date: Fri Jun 24 13:57:18 2011 +0100 mmc: dw_mmc: don't hard code fifo depth, fix usage The FIFO_DEPTH hardware configuration parameter can be found from the power-on value of RX_WMark in the FIFOTH register. This is used to initialise the watermarks, but when calculating the number of free fifo spaces a preprocessor definition is used which is hard coded to 32. Fix reading the value out of FIFOTH (the default value in the RX_WMark field is FIFO_DEPTH-1 not FIFO_DEPTH). Allow the fifo depth to be overriden by platform data (since a bootloader may have changed FIFOTH making auto-detection unreliable). Store the fifo_depth for later use. Also fix the calculation to find the number of free bytes in the fifo to include the fifo depth in the left shift by the data shift, since the fifo depth is measured in fifo items not bytes. Signed-off-by: James Hogan Acked-by: Will Newton Signed-off-by: Chris Ball commit 892b1e312b179139026e366a9d70065a7f897dbc Author: James Hogan Date: Fri Jun 24 13:56:38 2011 +0100 mmc: dw_mmc: brackets in register access macros Add brackets around use of the dev argument to the mci_{read,write}{w,l,q}() macros, for extra safety. Signed-off-by: James Hogan Acked-by: Will Newton Signed-off-by: Chris Ball commit 1791b13ea4d97a6a7c162edd54485e932ad92f1b Author: James Hogan Date: Fri Jun 24 13:55:55 2011 +0100 mmc: dw_mmc: convert card tasklet to workqueue Convert the card insert/remove tasklet to a workqueue, and call the setpower platform specific callback without the spinlock held. This means neither of the setpower or get_cd callbacks are called from atomic context which allows them to sleep. Signed-off-by: James Hogan Acked-by: Will Newton Signed-off-by: Chris Ball commit 7456caae37396fc1bc6f8e9461d07664b8c2f280 Author: James Hogan Date: Fri Jun 24 13:55:10 2011 +0100 mmc: dw_mmc: fix race with request and removal When a request is made, the card presence is checked and the request is queued. These two parts must be atomic with respect to card removal, or a card removal could be handled in between, and the new request wouldn't get cancelled until another card was inserted. Therefore move the spinlock protection from dw_mci_queue_request() up into dw_mci_request() to cover the presence check. Note that the test_bit() used for the presence check isn't atomic itself, so should have been protected by a spinlock anyway. Signed-off-by: James Hogan Acked-by: Will Newton Signed-off-by: Chris Ball commit b40af3aa7712e8f1b73e00e781cd93181483f649 Author: James Hogan Date: Fri Jun 24 13:54:06 2011 +0100 mmc: dw_mmc: clear TXDR/RXDR ints before enabling DMA is only used for transactions exceeding a certain length, otherwise PIO is used. The TXDR and RXDR interrupts are masked when in DMA mode but still fire. When switching to PIO mode (e.g. to get SCR field when an SD card is inserted) these interrupts are not cleared and so they trigger the ISR as soon as they are unmasked. If the previous DMA did a write, then the ISR will handle the TXDR interrupt even if the transaction is a read, completing the transaction without modifying the read buffer. This is fixed primarily by clearing these two interrupts before unmasking them when setting up PIO mode, and also by making the ISR more robust by only handling TXDR/RXDR in the correct read/write direction. Signed-off-by: James Hogan Acked-by: Will Newton Signed-off-by: Chris Ball commit 973ed3af1a570612771ed10dec6506c757767668 Author: Simon Horman Date: Tue Jun 21 08:00:10 2011 +0900 mmc: sdhi: Add write16_hook Some controllers require waiting for the bus to become idle before writing to some registers. I have implemented this by adding a hook to sd_ctrl_write16() and implementing a hook for SDHI which waits for the bus to become idle. Cc: Guennadi Liakhovetski Cc: Magnus Damm Signed-off-by: Simon Horman Signed-off-by: Chris Ball commit a11862d3389d4304211eed0758f510d5e573f93c Author: Simon Horman Date: Tue Jun 21 08:00:09 2011 +0900 mmc: tmio: Share register access functions Move register access functions into a shared header. Use sd_ctrl_write16 in tmio_mmc_dma.c:tmio_mmc_enable_dma(). Other than avoiding (trivial) open-coding, the motivation for this is to allow platform-hooks in access functions to be applied across all applicable accesses. Cc: Guennadi Liakhovetski Cc: Magnus Damm Signed-off-by: Simon Horman Signed-off-by: Chris Ball commit 95c7348d948dc4832434ddfaeba804ac14732f02 Author: Simon Horman Date: Tue Jun 21 08:00:08 2011 +0900 mmc: tmio: name 0xd8 as CTL_DMA_ENABLE This reflects at least the current usage of this register and I think it improves the readability of the code ever so slightly. Cc: Guennadi Liakhovetski Cc: Magnus Damm Signed-off-by: Simon Horman Signed-off-by: Chris Ball commit 4c2b8f26eb8b54203e0e7834e0f7a11a7ae15ef1 Author: Russell King - ARM Linux Date: Mon Jun 20 20:10:49 2011 +0100 mmc: block: add checking of r/w command response Check the status bits in the r/w command response for any errors. If error bits are set, then we won't have seen any data transferred, so it's pointless doing any further checking. Signed-off-by: Russell King Acked-by: Linus Walleij Tested-by: Pawel Moll Signed-off-by: Chris Ball commit a01f3ccf845067de32189f8a8e85d22c381f93b9 Author: Russell King - ARM Linux Date: Mon Jun 20 20:10:28 2011 +0100 mmc: block: improve error recovery from command channel errors Command channel errors fall into four classes: 1. The command was issued with the card in the wrong state 2. The command failed to be received by the card correctly 3. The cards response failed to be received by the host (CRC error) 4. The card failed to respond to the card For (1), in theory we should know that the card is in the correct state. However, a failed stop command (or other failure) may result in the card remaining in a data transfer state from the previous command. If we detect this condition, we try to recover by sending a stop command. For the initial commands (set block count and the read/write command) no data will have been transferred. All that we need deal with is retrying at this point. A failed stop command can be remedied as above. If we are unable to recover the card (eg, the card ignores our requests for status, or we don't recognise the error code) then we immediately fail the request. Signed-off-by: Russell King Acked-by: Linus Walleij Tested-by: Pawel Moll Signed-off-by: Chris Ball commit 0a2d4048a22079d7e79d6654bbacbef57bd5728a Author: Russell King - ARM Linux Date: Mon Jun 20 20:10:08 2011 +0100 mmc: block: allow get_card_status() to return error status If the MMC_SEND_STATUS command is not successful, we should not return a zero status word, but instead allow the caller to know positively that an error occurred. Convert the open-coded get_card_status() to use the helper function, and provide definitions for the card state field. Signed-off-by: Russell King Acked-by: Linus Walleij Tested-by: Pawel Moll Signed-off-by: Chris Ball commit 6e83e10d92e12fa0181766a1fbb00d857bfab779 Author: Seungwon Jeon Date: Mon Jun 20 17:24:16 2011 +0900 mmc: dw_mmc: protect a sequence of request and request-done. Response timeout (RTO), Response crc error (RCRC) and Response error (RE) signals come with command done (CD) and can be raised preceding command done (CD). That is these error interrupts and CD can be handled in separate dw_mci_interrupt(). If mmc_request_done() is called because of a response timeout before command done has occured, we might send the next request before the CD of current request is finished. This can bring about a broken sequence of request and request-done. And Data error interrupt (DRTO, DCRC, SBE, EBE) and data transfer over (DTO) have the same problem. Signed-off-by: Seungwon Jeon Acked-by: Will Newton Signed-off-by: Chris Ball commit 1d56c453b14854637567c838109127b8decbf328 Author: Seungwon Jeon Date: Mon Jun 20 17:23:53 2011 +0900 mmc: dw_mmc: set the card_width bit per card. This patch sets the card_width bit of CTYPE for the corresponding card. CTYPE[31] and CTYPE[16] correspond respectively to card[15] and card[0] for 8-bit mode. And CTYPE[15] and CTYPE[0] correspond respectively to card[15] and CTYPE[0] for 1-bit or 4-bit mode. Signed-off-by: Seungwon Jeon Acked-by: Will Newton Signed-off-by: Chris Ball commit a5556f3cc7cbf65921dadc9b18f8eb0a07359619 Author: Zhangfei Gao Date: Wed Jun 8 17:42:01 2011 +0800 ARM: mmp2: update mmp2_defconfig to support mmc 1. support brownstone 2. support mmc 3. support basic filesystem and language 4. remove dynamic_debug, since too many log during access sd Signed-off-by: Zhangfei Gao Acked-by: Philip Rakity Acked-by: Mark F. Brown Signed-off-by: Chris Ball commit bfed345edfe05b291f7e5d396d4b447b6e8e66fa Author: Zhangfei Gao Date: Mon Jun 20 22:11:52 2011 +0800 mmc: sdhci-pxa: move platform data to include/linux/platform_data As suggested by Arnd, move platform data to include/linux/platform_data in order to improve build coverage for the driver. Signed-off-by: Zhangfei Gao Acked-by: Arnd Bergmann Signed-off-by: Chris Ball commit c984c2638501e9bdb23438e61b922e3234959fac Author: Zhangfei Gao Date: Wed Jun 8 17:42:00 2011 +0800 mmc: host: delete obsolete sdhci-pxa.c Delete obsolete sdhci-pxa.c, which was previously shared amongst the entire PXA series. Instead we now use sdhci-pxav3.c for mmp2 and sdhci-pxav2.c for pxa9xx. Signed-off-by: Zhangfei Gao Acked-by: Philip Rakity Acked-by: Mark F. Brown Signed-off-by: Chris Ball commit 6f984f3b26f08297b7d4c6af9c8f09de603f40a8 Author: Zhangfei Gao Date: Wed Jun 8 17:41:59 2011 +0800 mmc: update mmp2 mmc resources in arch/arm Update MMP2 platform code to "sdhci-pxav3", following the driver rename. Signed-off-by: Zhangfei Gao Acked-by: Philip Rakity Acked-by: Mark F. Brown Signed-off-by: Chris Ball commit 9f5d71e4a78a02f80f0bfbbbe84555d5a5468774 Author: Zhangfei Gao Date: Wed Jun 8 17:41:58 2011 +0800 mmc: host: split up sdhci-pxa, create sdhci-pxav2.c sdhci-pltfm driver for PXAV2 SoCs, such as pxa910. Signed-off-by: Zhangfei Gao Signed-off-by: Jun Nie Signed-off-by: Qiming Wu Acked-by: Philip Rakity Acked-by: Mark F. Brown Signed-off-by: Chris Ball commit a702c8abb2a95a5b5920373a727be0b94d96b33c Author: Zhangfei Gao Date: Wed Jun 8 17:41:57 2011 +0800 mmc: host: split up sdhci-pxa, create sdhci-pxav3.c sdhci-pltfm driver for PXAV3 SoCs, such as MMP2. Signed-off-by: Zhangfei Gao Signed-off-by: Philip Rakity Acked-by: Philip Rakity Acked-by: Mark F. Brown Signed-off-by: Chris Ball commit f0de836923186e1fc0acb65299c2f2089c7992af Author: Shawn Guo Date: Thu Jun 2 10:57:50 2011 +0800 mmc: sdhci: change sdhci-pltfm into a module There are a couple of problems left from the sdhci pltfm and OF consolidation changes. * When building more than one sdhci-pltfm based drivers in the same image, linker will give multiple definition error on the sdhci-pltfm helper functions. For example right now, building sdhci-of-esdhc and sdhci-of-hlwd together is a valid combination from Kconfig view. * With the current build method, there is error with building the drivers as module, but module installation fails with modprobe. The patch fixes above problems by changing sdhci-pltfm into a module. To avoid EXPORT_SYMBOL on so many big endian IO accessors, it moves these accessors into sdhci-pltfm.h as the 'static inline' functions. As a result, sdhci.h needs to be included in sdhci-pltfm.h, and in turn can be removed from individual drivers which already include sdhci-pltfm.h. Signed-off-by: Shawn Guo Signed-off-by: Chris Ball commit 100e918610b7487fa18db97b3879cd8d1fdd5974 Author: Robert P. J. Day Date: Fri May 27 16:04:03 2011 -0400 mmc: Standardize header file inclusion checks. Standardize the checks for multiple MMC header file inclusion, including adding comments to terminating #endif's, and fixing one incorrect comment. Signed-off-by: Robert P. J. Day Signed-off-by: Chris Ball commit 94cc6a86567cb3c2234807081a46ce5400c36b31 Author: Shawn Guo Date: Fri May 27 23:48:15 2011 +0800 mmc: sdhci: merge two sdhci-pltfm.h into one The structure sdhci_pltfm_data is not necessarily to be in a public header like include/linux/mmc/sdhci-pltfm.h, so the patch moves it into drivers/mmc/host/sdhci-pltfm.h and eliminates the former one. Signed-off-by: Shawn Guo Reviewed-by: Grant Likely Reviewed-by: Wolfram Sang Signed-off-by: Chris Ball commit 38576af1f8cad48446df47dcf404b197c9206dba Author: Shawn Guo Date: Fri May 27 23:48:14 2011 +0800 mmc: sdhci: make sdhci-of device drivers self registered The patch turns the sdhci-of-core common stuff into helper functions added into sdhci-pltfm.c, and makes sdhci-of device drviers self registered using the same pair of .probe and .remove used by sdhci-pltfm device drivers. As a result, sdhci-of-core.c and sdhci-of.h can be eliminated with those common things merged into sdhci-pltfm.c and sdhci-pltfm.h respectively. Signed-off-by: Shawn Guo Acked-by: Anton Vorontsov Reviewed-by: Wolfram Sang Signed-off-by: Chris Ball commit e307148fd4f971cecfaebb516ee28e164948a24b Author: Shawn Guo Date: Wed Jul 20 17:13:36 2011 -0400 mmc: sdhci: eliminate sdhci_of_host and sdhci_of_data The patch migrates the use of sdhci_of_host and sdhci_of_data to sdhci_pltfm_host and sdhci_pltfm_data, so that the former pair can be eliminated. Signed-off-by: Shawn Guo Reviewed-by: Grant Likely Reviewed-by: Wolfram Sang Acked-by: Anton Vorontsov Signed-off-by: Chris Ball commit c878c73f8dda48f64bcec24f78e80e154cbc5cf8 Author: Bernd Schubert Date: Wed Jul 20 23:16:33 2011 +0200 ext3: Fix compilation with -DDX_DEBUG Compilation of ext3/namei.c brought up an error and warning messages when compiled with -DDX_DEBUG. Signed-off-by: Bernd Schubert Signed-off-by: Jan Kara commit 85d6509dc8ca24b2b652863ef7a75622ddca17d6 Author: Shawn Guo Date: Fri May 27 23:48:12 2011 +0800 mmc: sdhci: make sdhci-pltfm device drivers self registered The patch turns the common stuff in sdhci-pltfm.c into functions, and add device drivers their own .probe and .remove which in turn call into the common functions, so that those sdhci-pltfm device drivers register itself and keep all device specific things away from common sdhci-pltfm file. Signed-off-by: Shawn Guo Reviewed-by: Grant Likely Acked-by: Arnd Bergmann Acked-by: Anton Vorontsov Signed-off-by: Chris Ball commit 7f70893173b056df691b2ee7546bb44fd9abae6a Author: Jan H. Schönherr Date: Tue Jul 19 21:10:26 2011 +0200 rcu: Fix wrong check in list_splice_init_rcu() If the list to be spliced is empty, then list_splice_init_rcu() has nothing to do. Unfortunately, list_splice_init_rcu() does not check the list to be spliced; it instead checks the list to be spliced into. This results in memory leaks given current usage. This commit therefore fixes the empty-list check. Signed-off-by: Jan H. Schönherr Signed-off-by: Paul E. McKenney commit cefcb602012482003ca2ccc44fcba628d006e4bd Author: Paul E. McKenney Date: Mon May 2 01:00:18 2011 -0700 net,rcu: Convert call_rcu(xt_rateest_free_rcu) to kfree_rcu() The RCU callback xt_rateest_free_rcu() just calls kfree(), so we can use kfree_rcu() instead of call_rcu(). This also allows us to dispense with an rcu_barrier() call, speeding up unloading of this module. Signed-off-by: Paul E. McKenney Cc: Patrick McHardy Reviewed-by: Josh Triplett commit a95cded32de3deae13af34715200532e6823cc9f Author: Paul E. McKenney Date: Sun May 1 23:21:00 2011 -0700 sysctl,rcu: Convert call_rcu(free_head) to kfree The RCU callback free_head just calls kfree(), so we can use kfree_rcu() instead of call_rcu(). Signed-off-by: Paul E. McKenney Cc: Andrew Morton Reviewed-by: Josh Triplett commit 22a3c7d188c2b7bfc8e949bf9fad215c094ba78b Author: Lai Jiangshan Date: Fri Mar 18 12:13:08 2011 +0800 vmalloc,rcu: Convert call_rcu(rcu_free_vb) to kfree_rcu() The rcu callback rcu_free_vb() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(rcu_free_vb). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Andrew Morton Cc: Namhyung Kim Cc: David Rientjes Reviewed-by: Josh Triplett commit 14769de93ffcaeead98bcb5771d9f88a84f7153c Author: Lai Jiangshan Date: Fri Mar 18 12:12:19 2011 +0800 vmalloc,rcu: Convert call_rcu(rcu_free_va) to kfree_rcu() The rcu callback rcu_free_va() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(rcu_free_va). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Andrew Morton Cc: Namhyung Kim Cc: David Rientjes Reviewed-by: Josh Triplett commit d4ee9aa33db94120532601a22566e989efc3e70c Author: Lai Jiangshan Date: Fri Mar 18 12:11:44 2011 +0800 ipc,rcu: Convert call_rcu(ipc_immediate_free) to kfree_rcu() The rcu callback ipc_immediate_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(ipc_immediate_free). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Andrew Morton Reviewed-by: Josh Triplett commit 693a8b6eecce1a0cfe91a469e85c56016dc1cc53 Author: Lai Jiangshan Date: Fri Mar 18 12:09:35 2011 +0800 ipc,rcu: Convert call_rcu(free_un) to kfree_rcu() The rcu callback free_un() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_un). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Andrew Morton Cc: Manfred Spraul Reviewed-by: Josh Triplett commit 449a68cc656fddeda448e324c57062a19cf451b9 Author: Lai Jiangshan Date: Fri Mar 18 12:05:57 2011 +0800 security,rcu: Convert call_rcu(sel_netport_free) to kfree_rcu() The rcu callback sel_netport_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(sel_netport_free). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Stephen Smalley Cc: James Morris Cc: Eric Paris Reviewed-by: Josh Triplett commit 9801c60e99ed76c5730fb290c00bfad12a419972 Author: Lai Jiangshan Date: Fri Mar 18 12:05:22 2011 +0800 security,rcu: Convert call_rcu(sel_netnode_free) to kfree_rcu() The rcu callback sel_netnode_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(sel_netnode_free). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Stephen Smalley Cc: James Morris Cc: Eric Paris Reviewed-by: Josh Triplett commit f218a7ee7a1c37058eef4bb5fefff9bdb0f52766 Author: Lai Jiangshan Date: Fri Mar 18 11:48:01 2011 +0800 ia64,rcu: Convert call_rcu(sn_irq_info_free) to kfree_rcu() The rcu callback sn_irq_info_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(sn_irq_info_free). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Jes Sorensen Cc: Tony Luck Cc: Fenghua Yu Reviewed-by: Josh Triplett commit 57bdfbf9ee2b0856d8b62180c3b3f8fa1533b8d1 Author: Lai Jiangshan Date: Fri Mar 18 11:42:58 2011 +0800 block,rcu: Convert call_rcu(disk_free_ptbl_rcu_cb) to kfree_rcu() The rcu callback disk_free_ptbl_rcu_cb() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(disk_free_ptbl_rcu_cb). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Jens Axboe Reviewed-by: Josh Triplett commit 8497a24a43374f0142335b0ef0614ccc459e3d8d Author: Lai Jiangshan Date: Fri Mar 18 11:41:14 2011 +0800 scsi,rcu: Convert call_rcu(fc_rport_free_rcu) to kfree_rcu() The rcu callback fc_rport_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(fc_rport_free_rcu). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Robert Love Cc: "James E.J. Bottomley" Reviewed-by: Josh Triplett commit 3b097c46964b07479855b01056c61540b8cadd50 Author: Lai Jiangshan Date: Tue Mar 15 18:03:53 2011 +0800 audit_tree,rcu: Convert call_rcu(__put_tree) to kfree_rcu() The rcu callback __put_tree() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(__put_tree). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Al Viro Cc: Eric Paris Reviewed-by: Josh Triplett commit 4805608ac1d1a60ca926ff81b1ebd3145f7adf78 Author: Liam Girdwood Date: Wed Jul 20 12:23:33 2011 +0100 ASoC: dapm - Add methods to retrieve snd_card and soc_card from dapm context. In preparation for ASoC Dynamic PCM (AKA DSP) support. Provide convenience methods to retrieve the soc_card or snd_card from a DAPM context. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit d7c3e9525ac8e898f1156a1f3a7c5038f6560186 Author: Sangbeom Kim Date: Wed Jul 20 17:07:13 2011 +0900 ASoC: SAMSUNG: Add I2S0 internal dma driver I2S in Exynos4 and S5PC110(S5PV210) has a internal dma. It can be used low power audio mode and 2nd channel transfer. This patch can support idma. Signed-off-by: Sangbeom Kim Acked-by: Jassi Brar Acked-by: Liam Girdwood Acked-by: Jassi Brar Signed-off-by: Mark Brown commit 61100f405de5c16a0866de7843ed442090436e6a Author: Sangbeom Kim Date: Wed Jul 20 17:07:12 2011 +0900 ASoC: SAMSUNG: Modify I2S driver to support idma Previously, I2S driver only can support system dma. In this patch, i2s driver can support internal dma too. IDMA h/w configuration is initialized on idma.c Signed-off-by: Sangbeom Kim Acked-by: Liam Girdwood Acked-by: Jassi Brar Signed-off-by: Mark Brown commit 82d1d521036eb3f5aae48b847f939d99a44c18bb Author: Rajashekhara, Sudhakar Date: Wed Jul 20 17:37:18 2011 +0530 ASoC: davinci: add missing break statement In davinci_vcif_trigger() function, a break() statement was missing causing the davinci_vcif_stop() function to be called as a fallback after calling davinci_vcif_start(). Signed-off-by: Rajashekhara, Sudhakar Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit 3012f43eaf7592d8121426918e43e3b5db013aff Author: Rajashekhara, Sudhakar Date: Wed Jul 20 17:36:04 2011 +0530 ASoC: davinci: fix codec start and stop functions According to DM365 voice codec data sheet at [1], before starting recording or playback, ADC/DAC modules should follow a reset and enable cycle. Writing a 1 to the ADC/DAC bit in the register resets the module and clearing the bit to 0 will enable the module. But the driver seems to be doing the reverse of it. [1] http://focus.ti.com/lit/ug/sprufi9b/sprufi9b.pdf Signed-off-by: Rajashekhara, Sudhakar Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit c219c80929ca942c38334aad38b7582aed4e038e Author: Liam Girdwood Date: Wed Jul 20 19:42:20 2011 +0100 ASoC: dapm - add DAPM macro for external enum widgets Add a convenience macro for external enumerated widgets. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 3198b9eb514fd27dd15c55f36b17ac2cddade1a5 Author: Mark Brown Date: Wed Jul 20 13:50:10 2011 +0100 ASoC: Acknowledge WM8962 interrupts before acting on them This closes the small race between a status being read in response to an interrupt and clearing the interrupt, meaning that if the status changes between those periods we might not get a reassertion of the interrupt. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 3a6d28b11a895d08b6b4fc6f16dd9ff995844b45 Merge: 136d9eb 2ebdc42 Author: Konrad Rzeszutek Wilk Date: Wed Jul 20 15:33:51 2011 -0400 Merge branch 'stable/xen-pciback-0.6.3' into stable/drivers * stable/xen-pciback-0.6.3: xen/pciback: Have 'passthrough' option instead of XEN_PCIDEV_BACKEND_PASS and XEN_PCIDEV_BACKEND_VPCI xen/pciback: Remove the DEBUG option. xen/pciback: Drop two backends, squash and cleanup some code. xen/pciback: Print out the MSI/MSI-X (PIRQ) values xen/pciback: Don't setup an fake IRQ handler for SR-IOV devices. xen: rename pciback module to xen-pciback. xen/pciback: Fine-grain the spinlocks and fix BUG: scheduling while atomic cases. xen/pciback: Allocate IRQ handler for device that is shared with guest. xen/pciback: Disable MSI/MSI-X when reseting a device xen/pciback: guest SR-IOV support for PV guest xen/pciback: Register the owner (domain) of the PCI device. xen/pciback: Cleanup the driver based on checkpatch warnings and errors. xen/pciback: xen pci backend driver. Conflicts: drivers/xen/Kconfig commit d931998669c3e0e917bd9983880f3498c27de0af Author: Daniel Drake Date: Wed Jul 20 17:53:56 2011 +0100 libertas: only enable mesh when interface is active Previously, the mesh was running whenever the appropriate hardware and firmware was present. Now we only run the mesh when the interface is running. Also simplifies interface management a little. Signed-off-by: Daniel Drake Acked-by: Dan Williams Signed-off-by: John W. Linville commit 3db4f989384c90f5f6be14e88c19732bfb0ac331 Author: Daniel Drake Date: Wed Jul 20 17:53:50 2011 +0100 libertas: mesh: misc cleanup Remove unused blindlist code. Mark a few items const and static where possible. Involved some code re-ordering, but no code changes. Signed-off-by: Daniel Drake Acked-by: Dan Williams Signed-off-by: John W. Linville commit 037b559a167c76f3457582d1b84b4d1e36e38925 Author: Andy Shevchenko Date: Wed Jul 20 16:34:31 2011 +0300 wireless: mwifiex: print hw address via %pM Signed-off-by: Andy Shevchenko Cc: Bing Zhao Signed-off-by: John W. Linville commit 8f895026e8ef26419c38851a958c16286fffb43a Author: Andy Shevchenko Date: Wed Jul 20 16:34:30 2011 +0300 wireless: ath9k: use %pM to print MAC Signed-off-by: Andy Shevchenko Cc: "Luis R. Rodriguez" Cc: ath9k-devel@lists.ath9k.org Signed-off-by: John W. Linville commit 1d15b5f2d380186761d49588de27b2a6538afacb Author: Andy Shevchenko Date: Wed Jul 20 16:34:29 2011 +0300 wireless: rtlwifi: throw away MAC_FMT and use %pM instead Signed-off-by: Andy Shevchenko Cc: Larry Finger Signed-off-by: John W. Linville commit a401d2bb363d942245acdd81c5b5a754011696ee Author: Johannes Berg Date: Wed Jul 20 00:52:16 2011 +0200 cfg80211: fix scan crash on single-band cards commit 58389c69150e6032504dfcd3edca6b1975c8b5bc Author: Johannes Berg Date: Mon Jul 18 18:08:35 2011 +0200 cfg80211: allow userspace to control supported rates in scan made single-band cards crash since it would always access all wiphy->bands[]. Fix this and reject any attempts in the new helper ieee80211_get_ratemask() to do the same, rejecting rates configuration for unsupported bands. Reported-by: Pavel Roskin Tested-by: Pavel Roskin Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 70126f6105f86366fd97644937ef2180b906b7c8 Author: Pavel Roskin Date: Tue Jul 19 18:02:15 2011 -0400 carl9170: fix sparse warnings enabled by CONFIG_SPARSE_RCU_POINTER Signed-off-by: Pavel Roskin Acked-by: Christian Lamparter Signed-off-by: John W. Linville commit 0a557ed3a0a4f7e36d76da137b781344f548c464 Author: Eliad Peller Date: Tue Jul 19 13:14:42 2011 +0300 mac80211: check sta_info_get() return value ieee80211_stop_rx_ba_session() was calling sta_info_get() without rcu locking, and the return value was not checked. This resulted in the following panic: [] (ieee80211_stop_rx_ba_session+0x0/0x60 [mac80211]) [] (wl1271_event_handle+0x0/0xdc8 [wl12xx]) [] (wl1271_irq+0x0/0x4a0 [wl12xx]) [] (irq_thread+0x0/0x254) [] (kthread+0x0/0x8c) Signed-off-by: Eliad Peller Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit 5966f2ddcda452455f8ab518b7cba221b5234a94 Author: Eliad Peller Date: Tue Jul 19 12:57:13 2011 +0300 cfg80211: enter psm when working as p2p_cli cfg80211_netdev_notifier_call() is configuring psm in case of NL80211_IFTYPE_STATION interface type (on NETDEV_UP). do the same for NL80211_IFTYPE_P2P_CLIENT interface type. Signed-off-by: Eliad Peller Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit b2abb6e2bcb91ae384c5857dffd0bb97b76c7a68 Author: Johannes Berg Date: Tue Jul 19 10:39:53 2011 +0200 mac80211: sync driver before TX In P2P client mode, the GO (AP) to connect to might have periods of time where it is not available due to powersave. To allow the driver to sync with it and send frames to the GO only when it is available add a new callback tx_sync (and the corresponding finish_tx_sync). These callbacks can sleep unlike the actual TX. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e0d687bd9df218ba3d97aac15919d30816d72dcb Author: Pavel Roskin Date: Thu Jul 14 20:21:55 2011 -0400 ath5k: merge ath5k_hw and ath5k_softc Both ath5k_hw and ath5k_softc represent one instance of the hardware. This duplication is historical and is not needed anymore. Keep the name "ath5k_hw" for the merged structure and "ah" for the variable pointing to it. "ath5k_hw" is shorter than "ath5k_softc", more descriptive and more widely used. Put the combined structure to ath5k.h where the old ath5k_softc used to be. Move some code from base.h to ath5k.h as needed. Remove memory allocation for struct ath5k_hw and the corresponding error handling. Merge iobase and ah_iobase fields. Signed-off-by: Pavel Roskin Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 6034f7e603cd2dae8ed9a1d8d2ccfeb6b5c48d73 Author: Lai Jiangshan Date: Tue Mar 15 18:07:57 2011 +0800 security,rcu: Convert call_rcu(whitelist_item_free) to kfree_rcu() The rcu callback whitelist_item_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(whitelist_item_free). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Acked-by: James Morris Reviewed-by: Josh Triplett commit b119cbab3aecd19dbd748a9823c02d200b96b2f8 Author: Lai Jiangshan Date: Fri Mar 18 11:59:14 2011 +0800 md,rcu: Convert call_rcu(free_conf) to kfree_rcu() The rcu callback free_conf() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_conf). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Acked-by: NeilBrown Reviewed-by: Josh Triplett commit b56efcf0a45aa7fc32de90d5f9838541082fbc19 Author: Eric Dumazet Date: Wed Jul 20 19:04:23 2011 +0200 slab: shrink sizeof(struct kmem_cache) Reduce high order allocations for some setups. (NR_CPUS=4096 -> we need 64KB per kmem_cache struct) We now allocate exact needed size (using nr_cpu_ids and nr_node_ids) This also makes code a bit smaller on x86_64, since some field offsets are less than the 127 limit : Before patch : # size mm/slab.o text data bss dec hex filename 22605 361665 32 384302 5dd2e mm/slab.o After patch : # size mm/slab.o text data bss dec hex filename 22349 353473 8224 384046 5dc2e mm/slab.o CC: Andrew Morton Reported-by: Konstantin Khlebnikov Signed-off-by: Eric Dumazet Acked-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 49965e658674f40eb5cb72be6833eb49b1770961 Author: Ajay Kumar Date: Thu Jul 21 01:23:19 2011 +0900 ARM: S3C64XX: Cleanup mach/regs-fb.h from mach-s3c64xx Use plat/regs-fb-v4.h in machine files instead of mach/regs-fb.h. Signed-off-by: Ajay Kumar Signed-off-by: Kukjin Kim commit 7bf3ba6b33c47c4171272253a0e4dd720a5b73a8 Author: Ajay Kumar Date: Thu Jul 21 01:14:58 2011 +0900 ARM: S5PV210: Cleanup mach/regs-fb.h from mach-s5pv210 Use plat/regs-fb-v4.h in machine files instead of mach/regs-fb.h. Signed-off-by: Ajay Kumar Signed-off-by: Kukjin Kim commit 1c4f6d48fc4818fc35b08eca5d8dac479afe2d9d Author: Ajay Kumar Date: Thu Jul 21 01:13:53 2011 +0900 ARM: S5PC100: Cleanup mach/regs-fb.h from mach-s5pc100 Use plat/regs-fb-v4.h in machine files instead of mach/regs-fb.h. Signed-off-by: Ajay Kumar Signed-off-by: Kukjin Kim commit 6a567c41850180901f3af7b8e76943fd2509123e Author: Banajit Goswami Date: Thu Jul 21 01:11:48 2011 +0900 ARM: S3C24XX: Use generic s3c_set_platdata for devices Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 7569fc5463cb212ac166d13187527f0338c27316 Author: Banajit Goswami Date: Thu Jul 21 01:11:48 2011 +0900 ARM: S3C64XX: Use generic s3c_set_platdata for OneNAND Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 17e86d3879d589fce4c457bfb9a2029f883fb2cb Author: Banajit Goswami Date: Thu Jul 21 01:11:48 2011 +0900 ARM: SAMSUNG: Use generic s3c_set_platdata for NAND Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit b19952ad9e2c5f9b16b12a919558226ce6a5e0ea Author: Banajit Goswami Date: Thu Jul 21 01:11:48 2011 +0900 ARM: SAMSUNG: Use generic s3c_set_platdata for USB OHCI Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 2eac3ad87a85f70990fe6e32f7d36dd629ae824f Author: Banajit Goswami Date: Thu Jul 21 01:11:48 2011 +0900 ARM: SAMSUNG: Use generic s3c_set_platdata for HWMON Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 6b5738c2d973cdcbc93a2fcd74600e5934daabad Author: Banajit Goswami Date: Thu Jul 21 01:11:48 2011 +0900 ARM: SAMSUNG: Use generic s3c_set_platdata for FB Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 07985bc78909e0dc802d97c24260a69cd931c7af Author: Banajit Goswami Date: Thu Jul 21 01:11:47 2011 +0900 ARM: SAMSUNG: Use generic s3c_set_platdata for TS Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 96d78686d4c4f2922a23de2e16d145f7355e0605 Author: Banajit Goswami Date: Wed Jul 20 23:45:22 2011 +0900 ARM: S3C64XX: Add PWM backlight support on SMDK6410 This patch adds support for LCD backlight using PWM timer for Samsung SMDK6410 board. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 543601f526bbe02d209d2f8c30b9ce59d8e70a41 Author: Banajit Goswami Date: Wed Jul 20 23:45:22 2011 +0900 ARM: S5P64X0: Add PWM backlight support on SMDK6450 This patch adds support for LCD backlight using PWM timer for Samsung SMDK6450 board. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 499d2969574d138b9f5c8bbb911027005f4f9ed9 Author: Banajit Goswami Date: Wed Jul 20 23:45:22 2011 +0900 ARM: S5P64X0: Add PWM backlight support on SMDK6440 This patch adds support for LCD backlight using PWM timer for Samsung SMDK6440 board. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 1cad6766ef113a8054a9cd36fdde3f1bbd50138a Author: Banajit Goswami Date: Wed Jul 20 23:45:22 2011 +0900 ARM: S5PC100: Add PWM backlight support on SMDKC100 This patch adds support for LCD backlight using PWM timer for Samsung SMDKC100 board. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 84ca326c7c77926ccb501eaa89f50d9230a9543b Author: Banajit Goswami Date: Wed Jul 20 23:45:22 2011 +0900 ARM: S5PV210: Add PWM backlight support on SMDKV210 This patch adds support for LCD backlight using PWM timer for Samsung SMDKV210 board. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit fef469f7c28268a9bfa8b4e440fbd8055ccc68c0 Author: Banajit Goswami Date: Wed Jul 20 23:45:21 2011 +0900 ARM: EXYNOS4: Add PWM backlight support on SMDKC210 This patch adds support for LCD backlight using PWM timer for Samsung SMDKC210 board. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 8689de73a805781ddfb1b26df28ca127a548d235 Author: Banajit Goswami Date: Wed Jul 20 23:45:21 2011 +0900 ARM: EXYNOS4: Add PWM backlight support on SMDKV310 This patch adds support for LCD backlight using PWM timer for Samsung SMDKV310 board. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit f00207b255f59ebedc5965c2ab0bd1cefae70f92 Author: Banajit Goswami Date: Wed Jul 20 23:44:21 2011 +0900 ARM: SAMSUNG: Create a common infrastructure for PWM backlight support This patch creates a common structure for LCD backlight using PWM timer to be used by various Samsung boards. Signed-off-by: Banajit Goswami Signed-off-by: Kukjin Kim commit 0665ccc4c3f229abe3eabe49f3f99763515cf0af Author: Chanwoo Choi Date: Mon Jul 18 15:07:14 2011 +0900 clocksource: convert 32-bit down counting clocksource on S5PV210/S5P64X0 Convert the S5PV210/S5P64X0 32-bit down-counting clocksource to the generic mmio clocksource infrastructure Signed-off-by: Chanwoo Choi Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 65f5eaa27a0c18ab79489b2fcbaf28d97c45101a Author: Naveen Krishna Chatradhi Date: Mon Jul 18 14:44:19 2011 +0900 ARM: SAMSUNG: Move duplicate code for SPDIF ops Move the duplicated code for SPDIF ops from S5PV210 and S5PC100. So, the same can be used in EXYNOS4. Signed-off-by: Naveen Krishna Chatradhi Signed-off-by: Kukjin Kim commit 696f6fc1be92a8e117b4d07de34bf2d514a9c079 Author: Naveen Krishna Chatradhi Date: Sat Jul 16 13:30:09 2011 +0900 ARM: SAMSUNG: Cleanup I2C code in plat-samsung Removes the duplication of default info structure in dev-i2c[0 ~ 7].c files Signed-off-by: Naveen Krishna Chatradhi Signed-off-by: Kukjin Kim commit 2c2e2c27e621e75313a6d0574afc0eedae3da84e Author: Naveen Krishna Chatradhi Date: Sat Jul 16 13:26:14 2011 +0900 ARM: SAMSUNG: Use generic set_plat_data function Calls the generic s3c_set_platdata function instead. Signed-off-by: Naveen Krishna Chatradhi Signed-off-by: Kukjin Kim commit cf2e9c7b48f1e6c715e30952e5a3a5ef5cd0f8e4 Merge: b5930b8 e480559 Author: Kukjin Kim Date: Thu Jul 21 02:09:46 2011 +0900 Merge branch 'next-samsung-clkdev-fix' into next-samsung-cleanup commit b5930b83c2791bd3b2da120f98f844f96fb2ca50 Author: Mark Brown Date: Tue May 24 08:27:59 2011 +0800 ARM: S3C64XX: Convert to using REGULATOR_SUPPLY() on SMDK6410 Signed-off-by: Mark Brown Signed-off-by: Kukjin Kim commit e48055999575750158108b4cfc7fc22e4c972efc Author: Thomas Abraham Date: Wed Jun 15 13:28:14 2011 +0900 ARM: SAMSUNG: Added mach/clkdev.h This is temporary patch for building with clkdev. Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit badc4f2d604ac20489a363b918edb0241b3b9032 Author: Thomas Abraham Date: Tue Jun 14 19:12:27 2011 +0900 ARM: EXYNOS4: Add clkdev support Signed-off-by: Thomas Abraham [kgene.kim@samsung.com: removed changes of mach-exynos4/time.c] Signed-off-by: Kukjin Kim commit d79195897e610bd0d3563ec401cfd29d836ce0e6 Author: Seungwon Jeon Date: Thu Jul 21 00:34:58 2011 +0900 ARM: EXYNOS4: Add platform device for dwmci driver This patch adds platform device for Synopsys DesignWare Multimedia Card Interface driver. Signed-off-by: Seungwon Jeon Signed-off-by: Kukjin Kim commit 3a1a2b9e69b22a7d9e3c2d9410309ccbedc0ef8f Author: MyungJoo Ham Date: Thu Jul 21 00:31:27 2011 +0900 ARM: EXYNOS4: configure rtc-s3c on NURI Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 605baf670e9b9900e169c516a650764db39f55c4 Author: MyungJoo Ham Date: Thu Jul 21 00:31:27 2011 +0900 ARM: EXYNOS4: configure MAX8903 secondary charger on NURI Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit ed9ba31f6b9fb80b07d27efa87b1f1f374db927c Author: MyungJoo Ham Date: Thu Jul 21 00:31:27 2011 +0900 ARM: EXYNOS4: configure ADC on NURI Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit a140b92ef398153c85ee1c697db0a1be210e9677 Author: MyungJoo Ham Date: Thu Jul 21 00:31:27 2011 +0900 ARM: EXYNOS4: configure MAX17042 fuel gauge on NURI Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 29dee863d5626a35354bb23d652011e457c935a4 Author: MyungJoo Ham Date: Thu Jul 21 00:31:27 2011 +0900 ARM: EXYNOS4: configure regulators and PMIC(MAX8997) on NURI Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park [kgene.kim@samsung.com: Fix build - inclusion of max8997-private.h] Signed-off-by: Kukjin Kim commit 89e1c3d0fffa0d610fa7292bbfafb5e87dc6be34 Author: Mark Brown Date: Thu Jul 21 01:26:24 2011 +0900 ARM: S3C64XX: Configure backup battery charger on Cragganmore Signed-off-by: Mark Brown Signed-off-by: Kukjin Kim commit 1a26d7344f2c304cc58e937fda1d03469de3d60a Author: Mark Brown Date: Wed Jun 22 13:08:59 2011 +0900 ARM: S3C64XX: Fix WM8915 IRQ polarity on Cragganmore The chip IRQ output is genuinely an IRQ output rather than /IRQ output by default - this had been working due to an interface issue with the IRQ controller. Signed-off-by: Mark Brown Signed-off-by: Kukjin Kim commit 3512729672e7f454f8dff2f3cdad7e3af190a9b6 Author: Mark Brown Date: Wed Jun 22 13:08:17 2011 +0900 ARM: S3C64XX: Configure supplies for all Cragganmore regulators All the regulators on the system are supplied from the fixed wall supply. While there's no functional value in telling the regulator core this it does ensure that as a regulator maintainer I'll be exercising the supply logic frequently. Signed-off-by: Mark Brown Signed-off-by: Kukjin Kim commit ae24c263271ea450df8af331c0ec34ff3086c962 Author: Mark Brown Date: Wed Jun 22 13:08:13 2011 +0900 ARM: S3C64XX: Refresh Cragganmore support The original Cragganmore code was submitted while new code was being refused for mainline. This patch was unexpectedly merged upstream but development had continued in the expectation that the code would be resubmitted later so no split patches were maintained. This patch synchronises that work with the recently merged driver. The main changes are fleshing out of the PMIC and audio integration for the system, including addition of the Dallas Dhu and Tobermory audio modules, plus some minor updates to account for revision 2 hardware. Signed-off-by: Mark Brown Signed-off-by: Kukjin Kim commit e1a3c74f52b02715599249e1a024e16419503d52 Author: Mark Brown Date: Fri May 6 09:45:13 2011 +0900 ARM: S3C64XX: Initial support for Wolfson/Simtec Cragganmore/Banff The Cragganmore carrier card and Banff CPU module are used on Wolfson Microelectronics reference systems. This initial support covers the core system which is a fairly generic S3C6410 based design, further patches will add support for the key features of the reference system. The initial board bringup and therefore much of the key code was done by Ben Dooks for Simtec, with additional work (especially around the integration of the Wolfson devices) being done by myself. Signed-off-by: Ben Dooks Signed-off-by: Mark Brown [kgene.kim@samsung.com: removed inclusion of ] Signed-off-by: Kukjin Kim commit 03614be3edb8bccf3b169630604d35c2d191194e Author: MyungJoo Ham Date: Thu Jul 21 00:31:26 2011 +0900 ARM: EXYNOS4: Increase NR_IRQS for devices with more IRQs MAX8997/17042, which are used by Exynos4-NURI, use additional IRQ numbers after GPIO's IRQs. The patch creates some room for those devices. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 0ff35771fc7a96a2244f38573b6d56199ec75056 Author: Peter Foley Date: Mon Jul 4 18:55:23 2011 -0400 kbuild: silence generated makefile message This patch silences the "make -C /usr/src/git O=/usr/src/git/build/." message shown when using the generated makefile in KBUILD_OUTDIR. Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit a0428f3adfe852c3e69c07d4777615bfbdebd779 Author: MyungJoo Ham Date: Wed Jul 20 21:08:18 2011 +0900 ARM: S5PV210: Support ADC Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 0e9e52655dd1e44578284236a85c8bc93ca0d5db Author: MyungJoo Ham Date: Wed Jul 20 21:08:18 2011 +0900 ARM: EXYNOS4: Support ADC Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 67dcaec8d62ab751dbd1d5f9b3f3c1ce4205edf5 Author: MyungJoo Ham Date: Wed Jul 20 21:08:18 2011 +0900 ARM: SAMSUNG: Revise PM for 12-bit ADC operations - Fixed: 12bit precision is lost at suspend/resume - Updated: use pm_dev_ops Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 64df92ea7893d1cfd714c2f6acfd2eb15fbe3279 Author: MyungJoo Ham Date: Wed Jul 20 21:08:18 2011 +0900 ARM: SAMSUNG: ADC Channel selection In S5PV210/S5PC110/EXYNOS4, ADCMUX channel selection uses ADCMUX register, not ADCCON register. This patch corrects the behavior of SAMSUNG-ADC for such CPUs. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit f462904ef1508c0a2cc22c65478a7be0cd89f47a Author: MyungJoo Ham Date: Wed Jul 20 21:08:17 2011 +0900 ARM: SAMSUNG: use regulator VDD for ADC This patch allows the Samsung ADC driver to enable VDD regulator at probe and resume and to disable at exit and suspend. In a platform where ADC's VDD regulator is not "always-on", this control is required although this patch does not provide fine-grained power control (turning on the regulator only when being accessed). However, if VDD regulator ("vdd" for the adc device) is not provided, the regulator control will not be activated because there are platforms that do not provide regulator for ADC device. arch_initcall has been modified to module_init in order to allow regulators to be available at probe. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 56c03d91f7f44991870f3f79b3067d40249b7bb9 Author: Jaecheol Lee Date: Mon Jul 18 19:25:13 2011 +0900 ARM: EXYNOS4: Add save/restore function for PLL The PLL restore routine supports waiting pll locking. If PLL is enabled in restoring sequence, it should wait until PLL is locked. Signed-off-by: Jaecheol Lee Signed-off-by: Kukjin Kim commit f4ba4b01ef28100070608d915feda173d2a61c0c Author: Jaecheol Lee Date: Mon Jul 18 19:25:03 2011 +0900 ARM: EXYNOS4: Add save/restore for other ARM registers This patch adds save/restore values for Power Control Register and Diagnostic Register for PM. Signed-off-by: Jaecheol Lee Signed-off-by: Kukjin Kim commit 12974e9f707888044a3af3a12ebdebf0a509a1fa Author: Jaecheol Lee Date: Mon Jul 18 19:21:41 2011 +0900 ARM: EXYNOS4: Move S5P_CENTRAL_SEQ_CONFIGURATION setting for PM We need to balance between set and check S5P_CENTRAL_SEQ_CONFIGURATION register in syscore_ops suspend/resume function when failure in enter suspend mode. Moved this register setting for PM for the purpose of balancing. Signed-off-by: Jaecheol Lee Signed-off-by: Kukjin Kim commit e240ab1cfbf8e341c38847fe9aee8579a01ed303 Author: Jaecheol Lee Date: Mon Jul 18 19:21:34 2011 +0900 ARM: EXYNOS4: Support early wakeup entering sleep mode Since early wakeup can be handled in pm so we don't need masking interrupts of external GIC. When the early wakeup interrupt happens, PMU(Power Management Unit) ignores WFI instruction. This means that PC(Program Counter) passed without any changes. This patch can handle that case by early wakeup interrupt. Signed-off-by: Jaecheol Lee [kgene.kim@samsung.com: fixed return of exynos4_cpu_suspend()] Signed-off-by: Kukjin Kim commit e4cf2d1495fc6030c6b01e266aaa125061f58d5b Author: Jaecheol Lee Date: Mon Jul 18 19:21:27 2011 +0900 ARM: EXYNOS4: Remove PMU configuration for S2RAM PMU(Power Management Unit) configuraion for S2RAM(SLEEP) is removed and using function which provided by PMU support code to configure PMU register. Signed-off-by: Jaecheol Lee Signed-off-by: Kukjin Kim commit e28e301475f373b4c4361a47c83da20c951c2201 Author: Jaecheol Lee Date: Mon Jul 18 19:21:23 2011 +0900 ARM: EXYNOS4: Support system level power down configuration EXYNOS4 supports 3 different system level power down mode by PMU (Power Management Unit). Each power down mode need to configure many PMU registers with different value. This patch supports function to configure PMU registers with pre-defined values in PMU code. This function may be used by PM code and AFTR/LPA support driver. Signed-off-by: Jaecheol Lee Signed-off-by: Kukjin Kim commit 2ba707ac3c7708ecf0c50de4b5bddadf92f0bfcc Author: Naveen Krishna Chatradhi Date: Mon Jul 18 15:14:01 2011 +0900 ARM: EXYNOS4: Add SPDIF for SMDKV310 This patch adds spdif to the machine supported device list for SMDKV310. Signed-off-by: Naveen Krishna Chatradhi Acked-by: Jassi Brar Signed-off-by: Kukjin Kim commit 911c29b0e5b299e39ed7875bb96906a9ef8617aa Author: JungHi Min Date: Sat Jul 16 13:39:09 2011 +0900 ARM: EXYNOS4: Add support Core1 Power On/Off with hotplug in/out To insert the code for power on/off with pmu control to support hotplug in/out core1 As for hotplug.c, the codes for core1 to be hotplug in/out is inserted. As for regs-pmu.h, S5P_CORE_LOCAL_PWR_EN is defined. As for platsmp.c, the codes for core1 to be powered on is inserted. Signed-off-by: JungHi Min Signed-off-by: Kukjin Kim commit 55981f7b3cc9885d300637ea590148db329cb741 Author: Changhwan Youn Date: Sat Jul 16 10:49:57 2011 +0900 ARM: EXYNOS4: Add chained enrty/exit function to uart interrupt handler This patch adds chained IRQ enter/exit functions to uart interrupt handler in order to function correctly on primary controllers with different methods of flow control. Signed-off-by: Changhwan Youn Signed-off-by: Kukjin Kim commit 069d4e743c4b0c56c5a5374e1636db3ffe24ca32 Author: Changhwan Youn Date: Sat Jul 16 10:49:53 2011 +0900 ARM: EXYNOS4: Remove clock event timers using ARM private timers External GIC cannot support PPI (Private Peripheral Interrupt) for ARM private timers. Thus MCT should be selected as clock event timers by default. Signed-off-by: Changhwan Youn Signed-off-by: Kukjin Kim commit aab74d3e753649defa52ea43cbec1e91ebb4cc8e Author: Changhwan Youn Date: Sat Jul 16 10:49:51 2011 +0900 ARM: EXYNOS4: Add support external GIC For full support of power modes, this patch adds implementation external GIC on EXYNOS4. External GIC of Exynos4 cannot support register banking so several interrupt related code for CPU1 should be different from that of CPU0. Signed-off-by: Changhwan Youn Signed-off-by: Kukjin Kim commit e807acbc6fd1d5ff115f9a8eae0c1af6cf1c46c6 Author: Changhwan Youn Date: Sat Jul 16 10:49:47 2011 +0900 ARM: GIC: move gic_chip_data structure declaration to header Since Samsung EXYNOS4210 cannot support register banking in GIC, so needs to update CPU interface base address. The 'gic_chip_data' is used for it, this patch moves gic_chip_data structure declaraton to arch/arm/include/asm/hardware/gic.h to use it. Cc: Russell King Signed-off-by: Changhwan Youn Signed-off-by: Kukjin Kim commit a8769a594a6d061f8018048a7cd1546924c61a5c Author: Changhwan Youn Date: Sat Jul 16 10:49:44 2011 +0900 ARM: EXYNOS4: set the affinity of mct1 interrupt using IRQ_MCT_L1 IRQ_MCT_L1 is connected directly to GIC in external GIC mapping, while in internal GIC mapping, it is connected to GIC through interrupt combiner. Therfore the affinity for mct1 event timer interrupt should be changed through IRQ_MCT_L1. Signed-off-by: Changhwan Youn Signed-off-by: Kukjin Kim commit 69644a8e23ab66c1a758ebab04cc3cf62d7b5bdd Author: Changhwan Youn Date: Sat Jul 16 10:49:41 2011 +0900 ARM: EXYNOS4: modify interrupt mappings for external GIC To support external GIC needs to update mapping of interrupt number. This patch modifies it for external GIC and accordingly removes the unused code. Signed-off-by: Changhwan Youn Signed-off-by: Kukjin Kim commit eb13f2bf7254f868486179b75d41c8b17a134996 Author: Changhwan Youn Date: Sat Jul 16 10:48:47 2011 +0900 ARM: EXYNOS4: Add external GIC io memory mapping This patch adds external GIC io memory mapping to support external GIC on EXYNOS4. Signed-off-by: Changhwan Youn Signed-off-by: Kukjin Kim commit 0d855f40a47213e488103fdaf74d01eb90a57f09 Author: Inderpal Singh Date: Mon Jul 4 19:19:36 2011 +0900 ARM: EXYNOS4: Enable SATA on SMDKV310 Adds device definition to enable SATA on SMDKV310 Signed-off-by: Inderpal Singh Signed-off-by: Kukjin Kim commit 0b398b69e1941fc00f9dd33f6ce05bd66843d534 Author: Marek Szyprowski Date: Wed Jun 22 13:43:39 2011 +0900 ARM: EXYNOS4: Add qt602240 touch screen device on Universal_C210 This patch adds definitions to enable support for qt602240 touch screen driver for Universal C210 board. Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit b908af44995d4a581477245de33e0d7ccc0b9a7a Author: Marek Szyprowski Date: Wed Jun 22 13:43:39 2011 +0900 ARM: EXYNOS4: Add MCS Touchkey device on Universal_C210 This patch adds definitions to enable support for MCS Touchkey driver for Universal C210 board. Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit edd967b899a9ecc55409c7ea1eeeb0cf0a9077e2 Author: Marek Szyprowski Date: Wed Jun 22 13:43:39 2011 +0900 ARM: EXYNOS4: Add FIMC device on Universal_C210 This patch adds definitions to enable support for s5p-fimc driver for Universal C210 board. Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 0d8f6e04adba626e21b65f149e7ef38d7e9eceac Author: Kukjin Kim Date: Mon Jun 13 16:46:09 2011 +0900 ARM: S5P: Added selection DEV_PWM for HRT Basically, the SAMSUNG_DEV_PWM is required to use s5p-time.c for HRT. Reported-by: Marek Szyprowski Signed-off-by: Kukjin Kim commit b5a4f52421d4e546c0f21d469a509388aa6670de Author: Marek Szyprowski Date: Mon Jun 13 15:47:17 2011 +0900 ARM: EXYNOS4: Fix compilation break The patch "ARM: SAMSUNG: Add support for pre-sleep/post-restore gpio control" broke compilation on Exynos4 platform with power management enabled. This patch adds missing stubs that fixes this issue. Signed-off-by: Marek Szyprowski Signed-off-by: Kukjin Kim commit 1bac282af43d81d826ef25945a35536fa9bd041d Author: Ben Dooks Date: Wed Jun 1 10:44:50 2011 +0100 ARM: SAMSUNG: Add support for pre-sleep/post-restore gpio control Add a callback so that per-arch can do pre-sleep and post-resume gpio configuration so that for the S3C64XX, the GPIO configuration is restored before the sleep mode is cleared. For the S3C64XX case, it means that the GPIOs get set back to normal operation after the restore code puts the original configurations back in after the Signed-off-by: Ben Dooks Signed-off-by: Mark Brown Signed-off-by: Kukjin Kim commit c17afc0aa69615b4c2250b6476431c4d601890a0 Author: Ben Dooks Date: Wed Jun 1 10:44:51 2011 +0100 ARM: S3C64XX: Ensure VIC based IRQs can be resumed from Any interrupts based off either of the onboard VICs cannot be resumed from any more as it seems set_irq_wake() is now checking the error code returned from the low level handlers and not setting the wake-state on the interrupt if this fails. Ensure that we make the interrupts we can resume from available on the VIC and then do a pre-sleep mask of all the VIC interrupts as the wakeup is handled by a seperate block. Signed-off-by: Ben Dooks Signed-off-by: Mark Brown Signed-off-by: Kukjin Kim commit d12dc256547cec4fe62dad6e94252dced4ee2d58 Author: Jan Kara Date: Wed Jul 20 14:31:47 2011 +0200 quota: Remove unused declaration There is no point in declaring quotactl() syscall prototype in kernel header and 'make headers_check' complains about it. So just remove those lines. Signed-off-by: Jan Kara commit b2a9dd466cb3a7c0122c644a4c6c112b424ca011 Author: Thomas Abraham Date: Tue Jun 14 19:12:27 2011 +0900 ARM: S5PV210: Add clkdev support Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit 29e8eb0fdb7521ff7808dea3603a1d7b2b4ccebf Author: Thomas Abraham Date: Tue Jun 14 19:12:27 2011 +0900 ARM: S5PC100: Add clkdev support Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit d8b22d25b738075a02201287a59561036da1a49b Author: Thomas Abraham Date: Tue Jun 14 19:12:27 2011 +0900 ARM: S5P64X0: Add clkdev support Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit 226e85f4dad0cdb2353b438b5dfedffba60f15b5 Author: Thomas Abraham Date: Tue Jun 14 19:12:26 2011 +0900 ARM: S3C64XX: Add clkdev support Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit e83626f2fd48fa53ece85760c7e0b4ec4a996a91 Author: Thomas Abraham Date: Tue Jun 14 19:12:26 2011 +0900 ARM: S3C24XX: Add clkdev support Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit f86c6660927614fcda257e083569bfb252fcf85e Author: Thomas Abraham Date: Tue Jun 14 19:12:26 2011 +0900 ARM: SAMSUNG: Add clkdev infrastructure The struct clk definition for Samsung platforms is extended to include a instance of struct clk_lookup and a device name. When clocks are registered using s3c24xx_register_clock function, the dev_id, con_id and clk members are initialized with information from the struct clk instance and struct clk_lookup member is registered. Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit 5822a5df5ee2bbb2a98a4baadf065829e191395f Author: Thomas Abraham Date: Tue Jun 14 19:12:26 2011 +0900 serial: Remove redundant console_initcall from s3c and s5p console drivers Uart port is registered as a console during the driver's probe. So explict registration of console with console_initcall is removed. Signed-off-by: Thomas Abraham [kgene.kim@samsung.com: removed changes of s3c2400 and s3c24a0] Signed-off-by: Kukjin Kim commit 9b42f06517ae19d6519e9c54eac5ea58d00f3028 Author: Jiri Kosina Date: Wed Jul 20 11:59:21 2011 +0200 trivial: don't touch files that are removed in the staging tree This is a partial revert of e44ba033c565 ("treewide: remove duplicate includes") and 28f65c11f2ff ("treewide: Convert uses of struct resource to resource_size(ptr)") as the files in question have been removed in staging tree, so get rid of the conflict. Reported-by: Stephen Rothwell Signed-off-by: Jiri Kosina commit 2dcd9543a28da523a179a13b1eefa5f9b8e05d72 Author: Axel Lin Date: Tue Jul 19 16:14:04 2011 +0800 HID: emsff: properly handle emsff_init failure emsff_init() may fail, let's properly handle the failure. Signed-off-by: Axel Lin Signed-off-by: Jiri Kosina commit f7723f0eaf53d51ee54374116b25ac33e0be8542 Author: Benjamin Herrenschmidt Date: Wed Jul 20 18:01:48 2011 +1000 powerpc/pseries: Fix hvc_vio.c build due to recent changes For some reason I didn't notice the failure in my test builds, probably lacking caffeine or something... Signed-off-by: Benjamin Herrenschmidt commit 6eab7ce65a4e6fae1d2cb5d866515ed288f2fdcc Author: Dan Carpenter Date: Tue Jul 19 23:16:29 2011 -0700 Input: kxtj9 - fix locking typo in kxtj9_set_poll() According to the comments we want to call mutex_lock() here instead of mutex_unlock(). That makes more sense. Signed-off-by: Dan Carpenter Signed-off-by: Dmitry Torokhov commit 4fd9fcf7c1ee6c339504525b43ad5e77334ff1b5 Author: Dan Carpenter Date: Tue Jul 19 23:12:21 2011 -0700 Input: kxtj9 - fix bug in probe() We are testing the wrong variable here. I believe tj9->input_dev is always NULL at this point, so probe() will fail. Signed-off-by: Dan Carpenter Signed-off-by: Dmitry Torokhov commit 12ad3ab66103e6582ca69c0c9de18b13487eaaef Author: Dave Chinner Date: Fri Jul 8 14:14:41 2011 +1000 superblock: move pin_sb_for_writeback() to fs/super.c The per-sb shrinker has the same requirement as the writeback threads of ensuring that the superblock is usable and pinned for the time it takes to run the work. Both need to take a passive reference to the sb, take a read lock on the s_umount lock and then only continue if an unmount is not in progress. pin_sb_for_writeback() does this exactly, so move it to fs/super.c and rename it to grab_super_passive() and exporting it via fs/internal.h for all the VFS code to be able to use. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 09cc9fc7a7c3d872065426d7fb0f0ad6d3eb90fc Author: Dave Chinner Date: Fri Jul 8 14:14:40 2011 +1000 inode: move to per-sb LRU locks With the inode LRUs moving to per-sb structures, there is no longer a need for a global inode_lru_lock. The locking can be made more fine-grained by moving to a per-sb LRU lock, isolating the LRU operations of different filesytsems completely from each other. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 98b745c647a5a90c3c21ea43cbfad9a47b0dfad7 Author: Dave Chinner Date: Fri Jul 8 14:14:39 2011 +1000 inode: Make unused inode LRU per superblock The inode unused list is currently a global LRU. This does not match the other global filesystem cache - the dentry cache - which uses per-superblock LRU lists. Hence we have related filesystem object types using different LRU reclaimation schemes. To enable a per-superblock filesystem cache shrinker, both of these caches need to have per-sb unused object LRU lists. Hence this patch converts the global inode LRU to per-sb LRUs. The patch only does rudimentary per-sb propotioning in the shrinker infrastructure, as this gets removed when the per-sb shrinker callouts are introduced later on. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit fcb94f72d3e0f4f34b326c2986da8e5996daf72c Author: Dave Chinner Date: Fri Jul 8 14:14:38 2011 +1000 inode: convert inode_stat.nr_unused to per-cpu counters Before we split up the inode_lru_lock, the unused inode counter needs to be made independent of the global inode_lru_lock. Convert it to per-cpu counters to do this. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit e9299f5058595a655c3b207cda9635e28b9197e6 Author: Dave Chinner Date: Fri Jul 8 14:14:37 2011 +1000 vmscan: add customisable shrinker batch size For shrinkers that have their own cond_resched* calls, having shrink_slab break the work down into small batches is not paticularly efficient. Add a custom batchsize field to the struct shrinker so that shrinkers can use a larger batch size if they desire. A value of zero (uninitialised) means "use the default", so behaviour is unchanged by this patch. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 3567b59aa80ac4417002bf58e35dce5c777d4164 Author: Dave Chinner Date: Fri Jul 8 14:14:36 2011 +1000 vmscan: reduce wind up shrinker->nr when shrinker can't do work When a shrinker returns -1 to shrink_slab() to indicate it cannot do any work given the current memory reclaim requirements, it adds the entire total_scan count to shrinker->nr. The idea ehind this is that whenteh shrinker is next called and can do work, it will do the work of the previously aborted shrinker call as well. However, if a filesystem is doing lots of allocation with GFP_NOFS set, then we get many, many more aborts from the shrinkers than we do successful calls. The result is that shrinker->nr winds up to it's maximum permissible value (twice the current cache size) and then when the next shrinker call that can do work is issued, it has enough scan count built up to free the entire cache twice over. This manifests itself in the cache going from full to empty in a matter of seconds, even when only a small part of the cache is needed to be emptied to free sufficient memory. Under metadata intensive workloads on ext4 and XFS, I'm seeing the VFS caches increase memory consumption up to 75% of memory (no page cache pressure) over a period of 30-60s, and then the shrinker empties them down to zero in the space of 2-3s. This cycle repeats over and over again, with the shrinker completely trashing the inode and dentry caches every minute or so the workload continues. This behaviour was made obvious by the shrink_slab tracepoints added earlier in the series, and made worse by the patch that corrected the concurrent accounting of shrinker->nr. To avoid this problem, stop repeated small increments of the total scan value from winding shrinker->nr up to a value that can cause the entire cache to be freed. We still need to allow it to wind up, so use the delta as the "large scan" threshold check - if the delta is more than a quarter of the entire cache size, then it is a large scan and allowed to cause lots of windup because we are clearly needing to free lots of memory. If it isn't a large scan then limit the total scan to half the size of the cache so that windup never increases to consume the whole cache. Reducing the total scan limit further does not allow enough wind-up to maintain the current levels of performance, whilst a higher threshold does not prevent the windup from freeing the entire cache under sustained workloads. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit acf92b485cccf028177f46918e045c0c4e80ee10 Author: Dave Chinner Date: Fri Jul 8 14:14:35 2011 +1000 vmscan: shrinker->nr updates race and go wrong shrink_slab() allows shrinkers to be called in parallel so the struct shrinker can be updated concurrently. It does not provide any exclusio for such updates, so we can get the shrinker->nr value increasing or decreasing incorrectly. As a result, when a shrinker repeatedly returns a value of -1 (e.g. a VFS shrinker called w/ GFP_NOFS), the shrinker->nr goes haywire, sometimes updating with the scan count that wasn't used, sometimes losing it altogether. Worse is when a shrinker does work and that update is lost due to racy updates, which means the shrinker will do the work again! Fix this by making the total_scan calculations independent of shrinker->nr, and making the shrinker->nr updates atomic w.r.t. to other updates via cmpxchg loops. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit 095760730c1047c69159ce88021a7fa3833502c8 Author: Dave Chinner Date: Fri Jul 8 14:14:34 2011 +1000 vmscan: add shrink_slab tracepoints It is impossible to understand what the shrinkers are actually doing without instrumenting the code, so add a some tracepoints to allow insight to be gained. Signed-off-by: Dave Chinner Signed-off-by: Al Viro commit a9049376ee05bf966bfe2b081b5071326856890a Author: Al Viro Date: Fri Jul 8 21:20:11 2011 -0400 make d_splice_alias(ERR_PTR(err), dentry) = ERR_PTR(err) ... and simplify the living hell out of callers Signed-off-by: Al Viro commit 0c1aa9a952c3608eb17bf990466f1491d1ee8b6c Author: Al Viro Date: Fri Jul 8 20:57:47 2011 -0400 deuglify squashfs_lookup() d_splice_alias(NULL, dentry) is equivalent to d_add(dentry, NULL), NULL so no need for that if (inode) ... in there (or ERR_PTR(0), for that matter) Signed-off-by: Al Viro commit 5b4b299cc7b6adfb9401bf7f826a80f190b971be Author: Al Viro Date: Thu Jul 7 18:43:21 2011 -0400 nfsd4_list_rec_dir(): don't bother with reopening rec_file just rewind it to the beginning before vfs_readdir() and be done with that... Signed-off-by: Al Viro commit e7f59097071f2e193e900093742a4be85839f3d9 Author: Al Viro Date: Thu Jul 7 15:45:59 2011 -0400 kill useless checks for sb->s_op == NULL never is... Signed-off-by: Al Viro commit 0ee5dc676a5f8fadede608c7281dfedb1ae714ea Author: Al Viro Date: Thu Jul 7 15:44:25 2011 -0400 btrfs: kill magical embedded struct superblock Signed-off-by: Al Viro commit fb408e6ccc32404a05783911b6f3fed56bd17b06 Author: Al Viro Date: Thu Jul 7 15:12:51 2011 -0400 get rid of pointless checks for dentry->sb == NULL it never is... Signed-off-by: Al Viro commit a4464dbc0ca6a3ab8e9d1206bc05059dae2a559d Author: Al Viro Date: Thu Jul 7 15:03:58 2011 -0400 Make ->d_sb assign-once and always non-NULL New helper (non-exported, fs/internal.h-only): __d_alloc(sb, name). Allocates dentry, sets its ->d_sb to given superblock and sets ->d_op accordingly. Old d_alloc(NULL, name) callers are converted to that (all of them know what superblock they want). d_alloc() itself is left only for parent != NULl case; uses __d_alloc(), inserts result into the list of parent's children. Note that now ->d_sb is assign-once and never NULL *and* ->d_parent is never NULL either. Signed-off-by: Al Viro commit e3c3d9c838d48c0341c40ea45ee087e3d8c8ea39 Author: Al Viro Date: Mon Jun 27 17:14:56 2011 -0400 unexport kern_path_parent() Signed-off-by: Al Viro commit e0a0124936171af6156b80fe8ac8799f039e767f Author: Al Viro Date: Mon Jun 27 17:00:37 2011 -0400 switch vfs_path_lookup() to struct path Signed-off-by: Al Viro commit ed75e95de574c99575e5f3e1d9ca59ea8c12a9cb Author: Al Viro Date: Mon Jun 27 16:53:43 2011 -0400 kill lookup_create() folded into the only caller (kern_path_create()) Signed-off-by: Al Viro commit 5da4e689449ad99ab31cf2208d99eddfce0498ba Author: Al Viro Date: Mon Jun 27 16:37:12 2011 -0400 devtmpfs: get rid of bogus mkdir in create_path() We do _NOT_ want to mkdir the path itself - we are preparing to mknod it, after all. Normally it'll fail with -ENOENT and just do nothing, but if somebody has created the parent in the meanwhile, we'll get buggered... Signed-off-by: Al Viro commit 69753a0f14d3cb2e8a70e559ef8d409e4deeac8a Author: Al Viro Date: Mon Jun 27 16:35:45 2011 -0400 switch devtmpfs to kern_path_create() Signed-off-by: Al Viro commit 2780f1ff6aec0cf708a61c022d475bfcaa648965 Author: Al Viro Date: Mon Jun 27 16:25:29 2011 -0400 switch devtmpfs object creation/removal to separate kernel thread ... and give it a namespace where devtmpfs would be mounted on root, thus avoiding abuses of vfs_path_lookup() (it was never intended to be used with LOOKUP_PARENT). Games with credentials are also gone. Signed-off-by: Al Viro commit 6657719390cd05be45f4e3b501d8bb46889c0a19 Author: Al Viro Date: Tue Jun 28 15:41:10 2011 -0400 make sure that nsproxy_cache is initialized early enough Signed-off-by: Al Viro commit 1ba106818615faddb63ba782f85f3498b9eb61c6 Author: Al Viro Date: Sun Jun 26 11:54:58 2011 -0400 switch do_spufs_create() to user_path_create(), fix double-unlock Signed-off-by: Al Viro commit dae6ad8f37529963ae7df52baaccf056b38f210e Author: Al Viro Date: Sun Jun 26 11:50:15 2011 -0400 new helpers: kern_path_create/user_path_create combination of kern_path_parent() and lookup_create(). Does *not* expose struct nameidata to caller. Syscalls converted to that... Signed-off-by: Al Viro commit 49084c3bb2055c401f3493c13edae14d49128ca0 Author: Al Viro Date: Sat Jun 25 21:59:52 2011 -0400 kill LOOKUP_CONTINUE LOOKUP_PARENT is equivalent to it now Signed-off-by: Al Viro commit 8aeb376ca0fe61038166c3b8243c678addb80abf Author: Al Viro Date: Sat Jun 25 21:48:43 2011 -0400 nfs: LOOKUP_{OPEN,CREATE,EXCL} is set only on the last step Signed-off-by: Al Viro commit 4352780386139ff33d2203868b392e6535deff61 Author: Al Viro Date: Sat Jun 25 21:45:21 2011 -0400 cifs_lookup(): LOOKUP_OPEN is set only on the last component Signed-off-by: Al Viro commit a127e0af59ab610e8b37ac2dfa4cdb2ec8c8f604 Author: Al Viro Date: Sat Jun 25 21:43:56 2011 -0400 ceph: LOOKUP_OPEN is set only when it's the last component Signed-off-by: Al Viro commit 5c0f360b083fb33d05d1bff4b138b82d715eb419 Author: Al Viro Date: Sat Jun 25 21:41:09 2011 -0400 jfs_ci_revalidate() is safe from RCU mode Signed-off-by: Al Viro commit 407938e79edcadba1b5a17cf928584d8a191a8d7 Author: Al Viro Date: Sat Jun 25 21:37:18 2011 -0400 LOOKUP_CREATE and LOOKUP_RENAME_TARGET can be set only on the last step Signed-off-by: Al Viro commit dd7dd556e45133ef13f2c4bddc0e0b1ac23bc0e4 Author: Al Viro Date: Sat Jun 25 21:17:17 2011 -0400 no need to check for LOOKUP_OPEN in ->create() instances ... it will be set in nd->flag for all cases with non-NULL nd (i.e. when called from do_last()). Signed-off-by: Al Viro commit bf6c7f6c7bd0ea779757d35b5fdc9f9157f056b3 Author: Al Viro Date: Sat Jun 25 21:08:31 2011 -0400 don't pass nameidata to vfs_create() from ecryptfs_create() Instead of playing with removal of LOOKUP_OPEN, mangling (and restoring) nd->path, just pass NULL to vfs_create(). The whole point of what's being done there is to suppress any attempts to open file by underlying fs, which is what nd == NULL indicates. Signed-off-by: Al Viro commit 8a5e929dd2e05ab4d3d89f58c5e8fca596af8f3a Author: Al Viro Date: Sat Jun 25 19:15:54 2011 -0400 don't transliterate lower bits of ->intent.open.flags to FMODE_... ->create() instances are much happier that way... Signed-off-by: Al Viro commit 554a8b9f54cd7ca2b89f5dc227df08be082fae0d Author: Al Viro Date: Thu Jun 23 12:35:50 2011 -0400 Don't pass nameidata when calling vfs_create() from mknod() All instances can cope with that now (and ceph one actually starts working properly). Signed-off-by: Al Viro commit f7c85868fcacc331dd3454a4f08f006d7942521f Author: Al Viro Date: Wed Jun 22 18:53:18 2011 -0400 fix mknod() on nfs4 (hopefully) a) check the right flags in ->create() (LOOKUP_OPEN, not LOOKUP_CREATE) b) default (!LOOKUP_OPEN) open_flags is O_CREAT|O_EXCL|FMODE_READ, not 0 c) lookup_instantiate_filp() should be done only with LOOKUP_OPEN; otherwise we need to issue CLOSE, lest we leak stateid on server. Signed-off-by: Al Viro commit 511415980ace0ceecd71088dbe1c7ce4ca7c79fe Author: Al Viro Date: Wed Jun 22 18:47:28 2011 -0400 nameidata_to_nfs_open_context() doesn't need nameidata, actually... just open flags; switched to passing just those and renamed to create_nfs_open_context() Signed-off-by: Al Viro commit 3d4ff43d895c50319af45eb4bf04a4618eccdf76 Author: Al Viro Date: Wed Jun 22 18:40:12 2011 -0400 nfs_open_context doesn't need struct path either just dentry, please... Signed-off-by: Al Viro commit 82a2c1b77ada3b81911deeb871719ec5ff77f83c Author: Al Viro Date: Wed Jun 22 18:30:55 2011 -0400 nfs4_opendata doesn't need struct path either Signed-off-by: Al Viro commit 643168c2dc0d04cb884ae7bcd1ee19d9ecdff6a8 Author: Al Viro Date: Wed Jun 22 18:20:23 2011 -0400 nfs4_closedata doesn't need to mess with struct path instead of path_get()/path_put(), we can just use nfs_sb_{,de}active() to pin the superblock down. Signed-off-by: Al Viro commit 7c97c200e2c5aa8b1067bebb99df0a7c2e12ebf3 Author: Al Viro Date: Tue Jun 21 08:51:28 2011 -0400 cifs: fix the type of cifs_demultiplex_thread() ... and get rid of a bogus typecast, while we are at it; it's not just that we want a function returning int and not void, but cast to pointer to function taking void * and returning void would be (void (*)(void *)) and not (void *)(void *), TYVM... Signed-off-by: Al Viro commit beefebf1aa611242e022e71bae87034f415d3314 Author: Al Viro Date: Tue Jun 21 01:01:59 2011 -0400 ecryptfs_inode_permission() doesn't need to bail out on RCU ... now that inode_permission() can take MAY_NOT_BLOCK and handle it properly. Signed-off-by: Al Viro commit 729cdb3a1ee03a4363f9c7e66ddd979727e99e1f Author: Al Viro Date: Tue Jun 21 01:01:22 2011 -0400 kill IPERM_FLAG_RCU not used anymore Signed-off-by: Al Viro commit 76fe3276be26cff2e609cdcfbc1265cf1dd72b2c Author: Al Viro Date: Mon Jun 20 21:56:31 2011 -0400 ->permission() sanitizing: document API changes Signed-off-by: Al Viro commit d2d9e9fbc2f8f492dae373482da61d34475c53c1 Author: Al Viro Date: Mon Jun 20 10:55:26 2011 -0400 merge do_revalidate() into its only caller Signed-off-by: Al Viro commit 4ad5abb3d01a2c10854969b00982fadb130784a6 Author: Al Viro Date: Mon Jun 20 19:57:03 2011 -0400 no reason to keep exec_permission() separate now cache footprint alone makes it a bad idea... Signed-off-by: Al Viro commit d594e7ec4da6c1a527dea4965eee37cd785792b8 Author: Al Viro Date: Mon Jun 20 19:55:42 2011 -0400 massage generic_permission() to treat directories on a separate path Signed-off-by: Al Viro commit eecdd358b467405a084d400d5ec571bbdbfe97a3 Author: Al Viro Date: Mon Jun 20 19:48:41 2011 -0400 ->permission() sanitizing: don't pass flags to exec_permission() pass mask instead; kill security_inode_exec_permission() since we can use security_inode_permission() instead. Signed-off-by: Al Viro commit cf1dd1dae851ce5765cda5de16aa965eef7c2dbf Author: Al Viro Date: Mon Jun 20 19:44:08 2011 -0400 selinux: don't transliterate MAY_NOT_BLOCK to IPERM_FLAG_RCU Signed-off-by: Al Viro commit e74f71eb78a4a8b9eaf1bc65f20f761648e85f76 Author: Al Viro Date: Mon Jun 20 19:38:15 2011 -0400 ->permission() sanitizing: don't pass flags to ->inode_permission() pass that via mask instead. Signed-off-by: Al Viro commit 10556cb21a0d0b24d95f00ea6df16f599a3345b2 Author: Al Viro Date: Mon Jun 20 19:28:19 2011 -0400 ->permission() sanitizing: don't pass flags to ->permission() not used by the instances anymore. Signed-off-by: Al Viro commit 2830ba7f34ebb27c4e5b8b6ef408cd6d74860890 Author: Al Viro Date: Mon Jun 20 19:16:29 2011 -0400 ->permission() sanitizing: don't pass flags to generic_permission() redundant; all callers get it duplicated in mask & MAY_NOT_BLOCK and none of them removes that bit. Signed-off-by: Al Viro commit 7e40145eb111a5192e6d819f764db9d6828d1abb Author: Al Viro Date: Mon Jun 20 19:12:17 2011 -0400 ->permission() sanitizing: don't pass flags to ->check_acl() not used in the instances anymore. Signed-off-by: Al Viro commit 9c2c703929e4c41210cfa6e3f599514421bab8dc Author: Al Viro Date: Mon Jun 20 19:06:22 2011 -0400 ->permission() sanitizing: pass MAY_NOT_BLOCK to ->check_acl() Signed-off-by: Al Viro commit 1fc0f78ca9f311c6277e2f1b7655bb4d43ceb311 Author: Al Viro Date: Mon Jun 20 18:59:02 2011 -0400 ->permission() sanitizing: MAY_NOT_BLOCK Duplicate the flags argument into mask bitmap. Signed-off-by: Al Viro commit 178ea73521d64ba41d7aa5488fb9f549c6d4507d Author: Al Viro Date: Mon Jun 20 11:31:30 2011 -0400 kill check_acl callback of generic_permission() its value depends only on inode and does not change; we might as well store it in ->i_op->check_acl and be done with that. Signed-off-by: Al Viro commit 07b8ce1ee87d291ff564c02cf878fae973317a52 Author: Al Viro Date: Mon Jun 20 10:52:57 2011 -0400 lockless get_write_access/deny_write_access new helpers: atomic_inc_unless_negative()/atomic_dec_unless_positive() Signed-off-by: Al Viro commit f4d6ff89d8e54b68a4322388d26d518d6133fa4e Author: Al Viro Date: Sun Jun 19 13:14:21 2011 -0400 move exec_permission() up to the rest of permission-related functions ... and convert the comment before it into linuxdoc form. Signed-off-by: Al Viro commit 3bfa784a6539f91a27d7ffdd408efdb638e3bebd Author: Al Viro Date: Sun Jun 19 12:55:10 2011 -0400 kill file_permission() completely convert the last remaining caller to inode_permission() Signed-off-by: Al Viro commit 1b5d783c94c328d406e801566f161adcfb018dda Author: Al Viro Date: Sun Jun 19 12:49:47 2011 -0400 consolidate BINPRM_FLAGS_ENFORCE_NONDUMP handling new helper: would_dump(bprm, file). Checks if we are allowed to read the file and if we are not - sets ENFORCE_NODUMP. Exported, used in places that previously open-coded the same logics. Signed-off-by: Al Viro commit 78f32a9b479e9b9f1ce2bf620a7602c1cdbc4c8e Author: Al Viro Date: Sun Jun 19 11:54:42 2011 -0400 switch path_init() to exec_permission() Signed-off-by: Al Viro commit 6f2861097467852f2271c2b40f9c3d1d01757048 Author: Al Viro Date: Sun Jun 19 11:49:08 2011 -0400 switch udf_ioctl() to inode_permission() Signed-off-by: Al Viro commit 4cf27141cbe0239f48ec6f0b37bad347d51d1785 Author: Al Viro Date: Sun Jun 19 01:50:08 2011 -0400 make exec_permission(dir) really equivalent to inode_permission(dir, MAY_EXEC) capability overrides apply only to the default case; if fs has ->permission() that does _not_ call generic_permission(), we have no business doing them. Moreover, if it has ->permission() that does call generic_permission(), we have no need to recheck capabilities. Besides, the capability overrides should apply only if we got EACCES from acl_permission_check(); any other value (-EIO, etc.) should be returned to caller, capabilities or not capabilities. Signed-off-by: Al Viro commit 43e15cdbefea4ce6d68113de98d4f61c0cf45687 Author: Al Viro Date: Fri Jun 3 20:16:57 2011 -0400 new helper: iterate_supers_type() Call the given function for all superblocks of given type. Function gets a superblock (with s_umount locked shared) and (void *) argument supplied by caller of iterator. Signed-off-by: Al Viro commit 44396f4b5cb8566f7118aec55eeac99be7ad94cb Author: Josef Bacik Date: Tue May 31 11:58:49 2011 -0400 fs: add a DCACHE_NEED_LOOKUP flag for d_flags Btrfs (and I'd venture most other fs's) stores its indexes in nice disk order for readdir, but unfortunately in the case of anything that stats the files in order that readdir spits back (like oh say ls) that means we still have to do the normal lookup of the file, which means looking up our other index and then looking up the inode. What I want is a way to create dummy dentries when we find them in readdir so that when ls or anything else subsequently does a stat(), we already have the location information in the dentry and can go straight to the inode itself. The lookup stuff just assumes that if it finds a dentry it is done, it doesn't perform a lookup. So add a DCACHE_NEED_LOOKUP flag so that the lookup code knows it still needs to run i_op->lookup() on the parent to get the inode for the dentry. I have tested this with btrfs and I went from something that looks like this http://people.redhat.com/jwhiter/ls-noreada.png To this http://people.redhat.com/jwhiter/ls-good.png Thats a savings of 1300 seconds, or 22 minutes. That is a significant savings. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro commit 2ebdc4263022e0015341016b123fe7f44f9cf396 Author: Konrad Rzeszutek Wilk Date: Mon Jul 11 16:49:41 2011 -0400 xen/pciback: Have 'passthrough' option instead of XEN_PCIDEV_BACKEND_PASS and XEN_PCIDEV_BACKEND_VPCI .. compile options. This way the user can decide during runtime whether they want the default 'vpci' (virtual pci passthrough) or where the PCI devices are passed in without any BDF renumbering. The option 'passthrough' allows the user to toggle the it from 0 (vpci) to 1 (passthrough). Signed-off-by: Konrad Rzeszutek Wilk commit 778999703db6d875c22e1a8d02c8296ad4648958 Author: Konrad Rzeszutek Wilk Date: Tue Jul 12 15:29:48 2011 -0400 xen/pciback: Remove the DEBUG option. The latter is easily fixed - by the developer compiling the module with -DDEBUG. And during runtime - the loglvl provides quite a lot of useful data. Signed-off-by: Konrad Rzeszutek Wilk commit a92336a1176b2119eaa990a1e8bf3109665fdbc6 Author: Konrad Rzeszutek Wilk Date: Tue Jul 19 19:40:51 2011 -0400 xen/pciback: Drop two backends, squash and cleanup some code. - Remove the slot and controller controller backend as they are not used. - Document the find pciback_[read|write]_config_[byte|word|dword] to make it easier to find. - Collapse the code from conf_space_capability_msi into pciback_ops.c - Collapse conf_space_capability_[pm|vpd].c in conf_space_capability.c [and remove the conf_space_capability.h file] - Rename all visible functions from pciback to xen_pcibk. - Rename all the printk/pr_info, etc that use the "pciback" to say "xen-pciback". - Convert functions that are not referenced outside the code to be static to save on name space. - Do the same thing for structures that are internal to the driver. - Run checkpatch.pl after the renames and fixup its warnings and fix any compile errors caused by the variable rename - Cleanup any structs that checkpath.pl commented about or just look odd. Signed-off-by: Konrad Rzeszutek Wilk commit c288b67b9b4d65790e1a1a1fd982330730b68f46 Author: Konrad Rzeszutek Wilk Date: Thu Feb 17 11:18:00 2011 -0500 xen/pciback: Print out the MSI/MSI-X (PIRQ) values If the verbose_request is set (and loglevel high enough), print out the MSI/MSI-X values that are sent to the guest. This should aid in debugging issues. Signed-off-by: Konrad Rzeszutek Wilk commit e17ab35f05cb8b3d19c70454a41ea67207caf484 Author: Konrad Rzeszutek Wilk Date: Wed Feb 16 15:43:25 2011 -0500 xen/pciback: Don't setup an fake IRQ handler for SR-IOV devices. If we try to setup an fake IRQ handler for legacy interrupts for devices that only have MSI-X (most if not all SR-IOV cards), we will fail with this: pciback[0000:01:10.0]: failed to install fake IRQ handler for IRQ 0! (rc:-38) Since those cards don't have anything in dev->irq. Signed-off-by: Konrad Rzeszutek Wilk commit a0b2fa8ef8fee0493f6c1e2ac08b9e50a629a7c2 Author: Ian Campbell Date: Thu Dec 3 21:56:20 2009 +0000 xen: rename pciback module to xen-pciback. pciback is rather generic for a modular distro style kernel. Signed-off-by: Ian Campbell Cc: Jeremy Fitzhardinge Cc: Konrad Rzeszutek Wilk Signed-off-by: Jeremy Fitzhardinge commit 494ef20db6ea2e2ab1c3a45a1461e6e717fdcf48 Author: Konrad Rzeszutek Wilk Date: Fri Jul 23 14:35:47 2010 -0400 xen/pciback: Fine-grain the spinlocks and fix BUG: scheduling while atomic cases. We were using coarse spinlocks that could end up with a deadlock. This patch fixes that and makes the spinlocks much more fine-grained. We also drop be->watchding state spinlocks as they are already guarded by the xenwatch_thread against multiple customers. Without that we would trigger the BUG: scheduling while atomic. Signed-off-by: Konrad Rzeszutek Wilk commit 0513fe9e5b54e47e37217ea078dd870e3825e02d Author: Konrad Rzeszutek Wilk Date: Tue Jul 19 18:56:39 2011 -0400 xen/pciback: Allocate IRQ handler for device that is shared with guest. If the device that is to be shared with a guest is a level device and the IRQ is shared with the initial domain we need to take actions. Mainly we install a dummy IRQ handler that will ACK on the interrupt line so as to not have the initial domain disable the interrupt line. This dummy IRQ handler is not enabled when the device MSI/MSI-X lines are set, nor for edge interrupts. And also not for level interrupts that are not shared amongst devices. Lastly, if the user passes to the guest all of the PCI devices on the shared line the we won't install the dummy handler either. There is also SysFS instrumentation to check its state and turn IRQ ACKing on/off if necessary. Signed-off-by: Konrad Rzeszutek Wilk commit a2be65fd363831502afdf0babdf48149b3959cde Author: Konrad Rzeszutek Wilk Date: Wed Mar 3 13:38:43 2010 -0500 xen/pciback: Disable MSI/MSI-X when reseting a device In cases where the guest is abruptly killed and has not disabled MSI/MSI-X interrupts we want to do it for it. Otherwise when the guest is started up and enables MSI, we would get a WARN() that the device already had been enabled. Signed-off-by: Konrad Rzeszutek Wilk commit fd5b221b348adf63d413de9adad030e4f13664b7 Author: Zhao, Yu Date: Wed Mar 3 13:27:55 2010 -0500 xen/pciback: guest SR-IOV support for PV guest These changes are for PV guest to use Virtual Function. Because the VF's vendor, device registers in cfg space are 0xffff, which are invalid and ignored by PCI device scan. Values in 'struct pci_dev' are fixed up by SR-IOV code, and using these values will present correct VID and DID to PV guest kernel. And command registers in the cfg space are read only 0, which means we have to emulate MMIO enable bit (VF only uses MMIO resource) so PV kernel can work properly. Acked-by: Jan Beulich Signed-off-by: Konrad Rzeszutek Wilk commit 6221a9b2a11acfb54e7b41da425e961b31e88553 Author: Konrad Rzeszutek Wilk Date: Wed Dec 9 17:43:15 2009 -0500 xen/pciback: Register the owner (domain) of the PCI device. When the front-end and back-end start negotiating we register the domain that will use the PCI device. Furthermore during shutdown of guest or unbinding of the PCI device (and unloading of module) from pciback we unregister the domain owner. Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Jeremy Fitzhardinge commit 8bfd4e023f5fb5793d7d7483b6e17e04933c53e9 Author: Konrad Rzeszutek Wilk Date: Tue Jul 19 20:09:43 2011 -0400 xen/pciback: Cleanup the driver based on checkpatch warnings and errors. Checkpatch found some extra warnings and errors. This mega patch fixes them all in one big swoop. We also spruce up the pcistub_ids to use DEFINE_PCI_DEVICE_TABLE macro (suggested by Jan Beulich). Signed-off-by: Konrad Rzeszutek Wilk commit 30edc14bf39afde24ef7db2de66c91805db80828 Author: Konrad Rzeszutek Wilk Date: Tue Oct 13 17:22:20 2009 -0400 xen/pciback: xen pci backend driver. This is the host side counterpart to the frontend driver in drivers/pci/xen-pcifront.c. The PV protocol is also implemented by frontend drivers in other OSes too, such as the BSDs. The PV protocol is rather simple. There is page shared with the guest, which has the 'struct xen_pci_sharedinfo' embossed in it. The backend has a thread that is kicked every-time the structure is changed and based on the operation field it performs specific tasks: XEN_PCI_OP_conf_[read|write]: Read/Write 0xCF8/0xCFC filtered data. (conf_space*.c) Based on which field is probed, we either enable/disable the PCI device, change power state, read VPD, etc. The major goal of this call is to provide a Physical IRQ (PIRQ) to the guest. The PIRQ is Xen hypervisor global IRQ value irrespective of the IRQ is tied in to the IO-APIC, or is a vector. For GSI type interrupts, the PIRQ==GSI holds. For MSI/MSI-X the PIRQ value != Linux IRQ number (thought PIRQ==vector). Please note, that with Xen, all interrupts (except those level shared ones) are injected directly to the guest - there is no host interaction. XEN_PCI_OP_[enable|disable]_msi[|x] (pciback_ops.c) Enables/disables the MSI/MSI-X capability of the device. These operations setup the MSI/MSI-X vectors for the guest and pass them to the frontend. When the device is activated, the interrupts are directly injected in the guest without involving the host. XEN_PCI_OP_aer_[detected|resume|mmio|slotreset]: In case of failure, perform the appropriate AER commands on the guest. Right now that is a cop-out - we just kill the guest. Besides implementing those commands, it can also - hide a PCI device from the host. When booting up, the user can specify xen-pciback.hide=(1:0:0)(BDF..) so that host does not try to use the device. The driver was lifted from linux-2.6.18.hg tree and fixed up so that it could compile under v3.0. Per suggestion from Jesse Barnes moved the driver to drivers/xen/xen-pciback. Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Jeremy Fitzhardinge commit 7ad711b49e661a0979ed1a84bed16bc9fa7f872b Author: Matvejchikov Ilya Date: Mon Jul 18 21:58:48 2011 +0000 slcan: remove unused 'leased', 'line' and 'pid' fields from the 'slcan' structure Signed-off-by: Matvejchikov Ilya Acked-by: Oliver Hartkopp Signed-off-by: David S. Miller commit a9481a38b1474aab0f686b30e4e2b57880065ad2 Author: Matvejchikov Ilya Date: Mon Jul 18 21:56:44 2011 +0000 slip: remove unused 'line' field from the 'slip' structure Signed-off-by: Matvejchikov Ilya Signed-off-by: David S. Miller commit e78e8f2d8318851d0911039999c903a6082bef2e Author: Peter Foley Date: Tue Jul 5 19:42:18 2011 -0400 kernel: prevent unnecessary rebuilding due to config_data.gz When IKCONFIG is built-in make oldconfig will cause the kernel to be relinked even if .config didn't change. This happens because of a config_data.gz dependency on .config. This patch changes the if_changed to a filechk so that config_data.h is only rebuilt when the contents have actually changed. Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit 491735929b63cb665b2215e3183b960e66f221f3 Author: Rafał Miłecki Date: Sun Jul 17 01:06:06 2011 +0200 b43: bcma: implement full core reset Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 6f53912fc317ab130bd910c5c30420a21ea38115 Author: Rafał Miłecki Date: Sun Jul 17 01:06:05 2011 +0200 bcma: allow enabling PLL Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 7424dd0d03502b9844b96bf6efd0716b79c36607 Author: Rafał Miłecki Date: Sun Jul 17 01:06:04 2011 +0200 bcma: allow setting FAST clockmode for a core Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 3de1a7748f68c63daed7c9e04ac9f048efcd9f20 Author: Rafał Miłecki Date: Sun Jul 17 01:06:03 2011 +0200 bcma: trivial: add helpers for masking/setting Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit bb932ad9805029af18232ffe5603fbc68e1c1fb6 Author: Rafał Miłecki Date: Sat Jul 16 18:43:36 2011 +0200 bcma: move define of BCMA_CLKCTLST register Recent experiments have shown many cores share 0x1E0 register used for clock management. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 2729df25550f041940f23c11ee8252094a6bd44b Author: Rafał Miłecki Date: Mon Jul 18 22:45:58 2011 +0200 b43: correctly display longer chipsets ids Some of the newer Broadcom chipsets have longe names like BCM43224, BCM43225, etc. However Broadcom decided to keep using u16 for storing them. Use %X or %d depending on chip_id value to avoid BCMA8D8, etc. Signed-off-by: Rafał Miłecki Acked-by: Pavel Roskin Signed-off-by: John W. Linville commit 85a237fe308405ee38eb9c6733571c49902ec229 Author: Johannes Berg Date: Mon Jul 18 18:08:36 2011 +0200 mac80211: implement scan supported rates Scanning currently uses the TX rate mask to restrict the rate set, which is bogus. Make it use the new set of rates from userspace. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 34850ab25d74ab4eead62c3b4a9e8036a25cc669 Author: Johannes Berg Date: Mon Jul 18 18:08:35 2011 +0200 cfg80211: allow userspace to control supported rates in scan Some P2P scans are not allowed to advertise 11b rates, but that is a rather special case so instead of having that, allow userspace to request the rate sets (per band) that are advertised in scan probe request frames. Since it's needed in two places now, factor out some common code parsing a rate array. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 0b5dd734d3545a9833c0bceeed5088ad9a1ca5e3 Author: Rafał Miłecki Date: Mon Jul 18 02:13:23 2011 +0200 b43: HT-PHY: fix masks in radio ctl Old masks were causing ugly, delayed lock ups. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 40c6226967c8b27eb21f6894abff1e145861c6e1 Author: Rafał Miłecki Date: Mon Jul 18 02:01:30 2011 +0200 b43: bcma: read info about supported bands Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 124cc1117569fbe23b2be1e01d76a01202a0ca93 Author: Rafał Miłecki Date: Mon Jul 18 02:01:29 2011 +0200 b43: bcma: define 80211 core specific IO status bits Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 2b5e3322b8bff484cb206e7920c6034663d37b87 Author: Rafał Miłecki Date: Mon Jul 18 02:01:28 2011 +0200 bcma: define IO status register Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 856799d58274bfa6a57bc80051ee1cefdb6b041f Author: Kalle Valo Date: Sun Jul 17 12:13:56 2011 +0300 ieee80211: add few wmm tspec values These are needed by ath6kl for parsing tspec status from an IE. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit eb1577b7c4b2cdd0e18b0d5d8e940e36329215e5 Author: Rafał Miłecki Date: Sun Jul 17 11:00:59 2011 +0200 bcma: handle alternative SPROM location Some cards do not use additional 0x30 offset for SPROM location. We do not know the real condition for it yet, make it BCM4331 specific for now. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit b473bc176702cb22529632b5c4315bda27e0d979 Author: Rafał Miłecki Date: Sun Jul 17 10:30:34 2011 +0200 b43: HT-PHY: fix typo in 0x2059 radio init Following operation was incorrectly translated: radio_read(0x0011) -> 0xffff radio_write(0x0011) <- 0xfff7 Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 49ac26fa5b05cace123af9b069e00e47ab6a6fe7 Author: Rafał Miłecki Date: Sun Jul 17 10:30:33 2011 +0200 b43: HT-PHY: find channel entry with regs data Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 315a685f26ac220711d82bbf88cca6f55f1d9ca3 Author: Rafał Miłecki Date: Sun Jul 17 10:30:32 2011 +0200 b43: HT-PHY: switch to channel after enabling radio Also change the default channel to 11. This is the first channel closed driver switches to. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 36677874100edb610b22720f90859ee0f41330e2 Author: Rafał Miłecki Date: Sat Jul 16 18:27:55 2011 +0200 b43: use agent R/W ops for BCMA_IOCTL BCMA_IOCTL is register in agent (AKA wrapper) core, we need to use special R/W ops for it. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 10d1459fafbb02a18e7bc8f2c384a9e973560b00 Author: David Teigland Date: Mon Jul 18 15:28:34 2011 -0500 dlm: don't limit active work items Allow multiple workqueue items (locks with callbacks) to be processed concurrently. There should be no reason not to take advantage of this workqueue feature. Signed-off-by: David Teigland commit 591567a5ea25852f20b7ef2953f6f72020121199 Author: Shawn Guo Date: Tue Jul 19 21:16:56 2011 +0800 gpio/mxc/mxs: fix build error introduced by the irq_gc_ack() renaming The following commit renames irq_gc_ack() to irq_gc_ack_set_bit(), and makes gpio-mxc and gpio-mxs fail to build. 659fb32d1b67476f4ade25e9ea0e2642a5b9c4b5 genirq: replace irq_gc_ack() with {set,clr}_bit variants (fwd) The patch fixed a couple of typo of comma to semicolon. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit e04f5f7e423018bcec84c11af2058cdce87816f3 Author: Alan Stern Date: Tue Jul 19 14:01:23 2011 -0400 EHCI: fix direction handling for interrupt data toggles This patch (as1480) fixes a rather obscure bug in ehci-hcd. The qh_update() routine needs to know the number and direction of the endpoint corresponding to its QH argument. The number can be taken directly from the QH data structure, but the direction isn't stored there. The direction is taken instead from the first qTD linked to the QH. However, it turns out that for interrupt transfers, qh_update() gets called before the qTDs are linked to the QH. As a result, qh_update() computes a bogus direction value, which messes up the endpoint toggle handling. Under the right combination of circumstances this causes usb_reset_endpoint() not to work correctly, which causes packets to be dropped and communications to fail. Now, it's silly for the QH structure not to have direct access to all the descriptor information for the corresponding endpoint. Ultimately it may get a pointer to the usb_host_endpoint structure; for now, adding a copy of the direction flag solves the immediate problem. This allows the Spyder2 color-calibration system (a low-speed USB device that sends all its interrupt data packets with the toggle set to 0 and hance requires constant use of usb_reset_endpoint) to work when connected through a high-speed hub. Thanks to Graeme Gill for supplying the hardware that allowed me to track down this bug. Signed-off-by: Alan Stern Reported-by: Graeme Gill CC: Signed-off-by: Greg Kroah-Hartman commit fd99beb9375b44309d5ed9c2b62063e23151610b Merge: 3fbcf6b b834226 Author: David S. Miller Date: Tue Jul 19 10:12:44 2011 -0700 Merge branch 'vhost-net-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost commit 3fbcf6bb55686c36086c8ab15fe9ee5a63eb79d4 Merge: 928ad22 1687b56 Author: David S. Miller Date: Tue Jul 19 10:11:21 2011 -0700 Merge branch 'davem-next.r8169' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6 commit 928ad22a3b033a994081dbf49f3c046195dd2349 Author: Dmitry Kravkov Date: Tue Jul 19 01:46:11 2011 +0000 bnx2x: disable FCoE for 578xx devices since not yet supported Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 53e51e2f480aaa000b0a7d2704ce2b4b646a73c7 Author: Vladislav Zolotarov Date: Tue Jul 19 01:45:02 2011 +0000 bnx2x: fix memory barriers Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit f5219d8eb8b32eb32522063d2163f95e1cf7bb5c Author: Vladislav Zolotarov Date: Tue Jul 19 01:44:11 2011 +0000 bnx2x: use BNX2X_Q_FLG_TPA_IPV6 for TPA queue configuration Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 019dbb4c0106f11b5c6543bffaedf10067e28398 Author: Vladislav Zolotarov Date: Tue Jul 19 01:43:25 2011 +0000 bnx2x: disable loacal BH when scheduling FCOE napi Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit d1c228d9b9b915a14cf362ebd817c10166be01e6 Author: Dmitry Kravkov Date: Tue Jul 19 01:42:40 2011 +0000 bnx2x: fix MB index for 4-port devices Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 6debea870a66be4aac2e28be0e3952dad6c7fcdb Author: Dmitry Kravkov Date: Tue Jul 19 01:42:04 2011 +0000 bnx2x: DCB rework create DCB related states in function state-machine allow handling of DCB errors from FW allow disablement of DCB in FW, when peer disappears or error clean up unused functions/variables as pointed by David Binderman Reported-by: David Binderman Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit f13ac41f5165c0ac0441f9d42f7d6f6f9ee7c075 Author: Vladislav Zolotarov Date: Tue Jul 19 01:40:27 2011 +0000 bnx2x: remove unnecessary dma_sync Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 9505ee376739c26cf1d7d4e551d2f63b9d7e5729 Author: Vladislav Zolotarov Date: Tue Jul 19 01:39:41 2011 +0000 bnx2x: stop tx before CNIC_STOP It may take some time to cnic to respond, this prevents tx_timeout when it happens. Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit c636322b24eb69b7c1ccdc070164de51cee3f37c Author: Dmitry Kravkov Date: Tue Jul 19 01:38:53 2011 +0000 bnx2x: add missing command in error handling flow Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 9924cafc403ca74614c0a8b1ad198406ae02c68b Author: Vladislav Zolotarov Date: Tue Jul 19 01:37:42 2011 +0000 bnx2x: use correct dma_sync function Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit c8f85523e70f8202ff49858bacd72fa65245f382 Merge: cc22b4c aa3831c Author: Arnd Bergmann Date: Tue Jul 19 18:10:44 2011 +0200 Merge branch 'cross-platform/clkdev' into next/cross-platform commit aa3831cf9d29cfeaebd8c2169378b74111364487 Author: Kyungmin Park Date: Mon Jul 18 16:34:54 2011 +0900 ARM: Consolidate the clkdev header files Now most of ARM machines has the alsmot same __clk_get/put() macro So place it at the arch/arm/include/asm/clkdev.h and remove the reduntant header files But some machines don't have the same form as above. It can use the machince specific clkdev file by HAVE_MACH_CLKDEV config Now there are only 3 caese. 1) define the clk structure with clkdev macro => Need to move clk structure to proper header file arch/arm/mach-versatile/include/mach/clkdev.h arch/arm/mach-realview/include/mach/clkdev.h arch/arm/mach-vexpress/include/mach/clkdev.h arch/arm/mach-integrator/include/mach/clkdev.h 2) export the __clk_get/put function at clock.c arch/arm/mach-shmobile/include/mach/clkdev.h 3) demuxing the clk source arch/arm/mach-u300/include/mach/clkdev.h Acked-by: Viresh Kumar Acked-by: H Hartley Sweeten Acked-by: Jean-Christophe PLAGNIOL-VILLARD Signed-off-by: Kyungmin Park commit 1687b56679880a47164ae149530abee543f9d6b1 Author: Francois Romieu Date: Tue Jul 19 17:21:29 2011 +0200 r8169: fix sticky accepts packet bits in RxConfig. e542a2269f232d61270ceddd42b73a4348dee2bb (r8169: adjust the RxConfig settings) broke the return from promiscuous mode to physical address match mode. Signed-off-by: Francois Romieu Cc: Signed-off-by: Hayes Wang commit 09bddc8eb26eeb976efcfde9569b5ad1d9b77574 Author: Wolfram Sang Date: Mon Jul 18 17:53:04 2011 +0200 ASoC: sgtl5000: guide user when regulator support is needed Print a hint when the user has a setup where CONFIG_REGULATOR is really needed to make the driver work. Signed-off-by: Wolfram Sang Tested-by: Dong Aisheng Tested-by: Shawn Guo Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit e94a4062c88e5245fef91ceac86788ae336f755b Author: Wolfram Sang Date: Mon Jul 18 17:53:03 2011 +0200 ASoC: sgtl5000: refactor registering internal ldo The code for registering the internal ldo was present twice. Turn it into a function instead. Also, inform the user if LDO is used now. Signed-off-by: Wolfram Sang Tested-by: Dong Aisheng Tested-by: Shawn Guo Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 1c8371d61e3a8e65fe6ef4ac535d1cd6d8ec7650 Author: Wolfram Sang Date: Sun Jul 17 18:00:26 2011 +0200 ASoC: core: make comments fit the code In one comment, cpu_dai was mentioned although codec_dai was used in the code. Also, fix the name for the card dai list which has no seperation into card_dai and codec_dai. Signed-off-by: Wolfram Sang Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 7be4ba24a3ea53bc8ade841635e4d4a59e98ceb5 Author: Mark Brown Date: Mon Jul 18 13:17:13 2011 +0900 ASoC: Mark cache as dirty when suspending Since quite a few drivers are not managing to flag the cache as needing to be resynced after suspend and it's a reasonable thing to do flag the cache as needing sync automatically when suspending. The expectation is that systems will mainly only keep the CODEC powered when doing audio through the CODEC so we won't actually suspend the device anyway; drivers which want to can override this behaviour when they resume. Signed-off-by: Mark Brown Acked-by: Liam Girdwood Cc: stable@kernel.org commit 7f294e4983b67be802277d139522837b3ce5769f Author: Linus Walleij Date: Fri Jul 8 09:57:15 2011 +0100 ARM: 6981/2: mmci: adjust calculation of f_min The ARM version maximum clock divider is 512 whereas for the ST variants it's 257. Let's use DIV_ROUND_UP() for both cases so we can see clearly what's going on here. [Use DIV_ROUND_UP to clarify elder code] Signed-off-by: Ulf Hansson Reviewed-by: Sebastian Rasmussen Signed-off-by: Linus Walleij Signed-off-by: Russell King commit b834226b04d6fb51178a64e98872856986c71474 Author: Michael S. Tsirkin Date: Tue Jul 19 17:15:43 2011 +0300 vhost: optimize interrupt enable/disable As we now only update used ring after enabling the backend, we can write flags with __put_user: as that's done on data path, it matters. Signed-off-by: Michael S. Tsirkin commit 29e9c68abe503fa65ef4f37bb19a1683f8610219 Author: Stephen Warren Date: Wed Jul 13 12:53:53 2011 -0600 ARM: Tegra: Seaboard: Fix I2C bus numbering for ADT7461 Bus number 4 doesn't exist in the mainline kernel. The device is attached to bus number 3. (In the ChromeOS kernel, one of the I2C busses is split in two with a mux, this pushing all later busses to a higher bus number. In this case, 4 is the correct bus number for the ADT7461). Signed-off-by: Stephen Warren Signed-off-by: Arnd Bergmann commit 3a2eef8eeb8ee3af407dfc8394991aeb452fe6aa Author: Stephen Warren Date: Wed Jul 13 16:42:47 2011 -0600 ARM: Tegra: Trimslice: Tri-state DAP3 pinmux DAP3 is used for a bunch of GPIOs. Not tri-stating the pins means audio signals get sent out there, and this ends up resetting USB and breaking SDHCI too. Signed-off-by: Stephen Warren Signed-off-by: Arnd Bergmann commit 026dfaf18973404a01f488d6aa556a8c466e06a4 Author: Wolfgang Denk Date: Tue Jul 19 11:25:38 2011 +0200 USB: serial: add IDs for WinChipHead USB->RS232 adapter Add ID 4348:5523 for WinChipHead USB->RS 232 adapter with Prolifec PL2303 chipset Signed-off-by: Wolfgang Denk Cc: stable Signed-off-by: Greg Kroah-Hartman commit 140d5dc1d7d86d766951b7a9aef5b66f1dfdfae2 Author: Catalin Marinas Date: Wed Jul 13 16:32:58 2011 +0100 ARM: 7000/1: LPAE: Use long long printk format for displaying the pud Currently using just long but this is not enough for the LPAE format (64-bit entries). Signed-off-by: Catalin Marinas Signed-off-by: Russell King commit 540b573875bd26dfe39aa18d22dc195f275fc0df Author: Dave Martin Date: Wed Jul 13 15:53:30 2011 +0100 ARM: 6999/1: head, zImage: Always Enter the kernel in ARM state Currently, the documented kernel entry requirements are not explicit about whether the kernel should be entered in ARM or Thumb, leading to an ambiguitity about how to enter Thumb-2 kernels. As a result, the kernel is reliant on the zImage decompressor to enter the kernel proper in the correct instruction set state. This patch changes the boot entry protocol for head.S and Image to be the same as for zImage: in all cases, the kernel is now entered in ARM. Documentation/arm/Booting is updated to reflect this new policy. A different rule will be needed for Cortex-M class CPUs as and when support for those lands in mainline, since these CPUs don't support the ARM instruction set at all: a note is added to the effect that the kernel must be entered in Thumb on such systems. Signed-off-by: Dave Martin Acked-by: Nicolas Pitre Signed-off-by: Russell King commit 4348810a241a330d3d143d62d7c988ec8b2e6629 Author: Russell King Date: Tue Jul 5 09:01:13 2011 +0100 ARM: btc: avoid invalidating the branch target cache on kernel TLB maintanence Kernel space needs very little in the way of BTC maintanence as most mappings which are created and destroyed are non-executable, and so could never enter the instruction stream. The case which does warrant BTC maintanence is when a module is loaded. This creates a new executable mapping, but at that point the pages have not been initialized with code and data, so at that point they contain unpredictable information. Invalidating the BTC at this stage serves little useful purpose. Before we execute module code, we call flush_icache_range(), which deals with the BTC maintanence requirements. This ensures that we have a BTC maintanence operation before we execute code via the newly created mapping. Signed-off-by: Russell King commit 75fd9edc1054a1fa1d1411adec368dadf68e764e Author: Michael S. Tsirkin Date: Tue Jul 19 13:19:18 2011 +0300 vhost: fix zcopy reference counting Fix get/put refcount imbalance with zero copy, which caused qemu to hang forever on guest driver unload. Signed-off-by: Michael S. Tsirkin commit 2723feaa8ec64f677f644c9189ed87d83f5559c1 Author: Jason Wang Date: Tue Jun 21 18:04:38 2011 +0800 vhost: set log when updating used flags or avail event We need to log writes when updating used flags and avail event fields. Otherwise the guest may see a stale value after migration and miss notifying the host. Signed-off-by: Jason Wang Signed-off-by: Michael S. Tsirkin commit f59281dafb832b161133743fcf3dc29051e6fdb8 Author: Jason Wang Date: Tue Jun 21 18:04:27 2011 +0800 vhost: init used ring after backend was set Move the used ring initialization after backend was set. This makes it possible to disable the backend and tweak the used ring, then restart. This will also make it possible to log the used ring write correctly. Signed-off-by: Jason Wang Signed-off-by: Michael S. Tsirkin commit 97d32cf9440d2111a12471740446d4d63231b79a Author: Florian Westphal Date: Tue Jul 19 11:46:33 2011 +0200 netfilter: nfnetlink_queue: batch verdict support Introduces a new nfnetlink type that applies a given verdict to all queued packets with an id <= the id in the verdict message. If a mark is provided it is applied to all matched packets. This reduces the number of verdicts that have to be sent. Applications that make use of this feature need to maintain a timeout to send a batchverdict periodically to avoid starvation. Signed-off-by: Florian Westphal Signed-off-by: Patrick McHardy commit 5863702a3421b0d2a63a473cf96afeb9fe09070d Author: Eric Dumazet Date: Tue Jul 19 11:44:17 2011 +0200 netfilter: nfnetlink_queue: assert monotonic packet ids Packet identifier is currently setup in nfqnl_build_packet_message(), using one atomic_inc_return(). Problem is that since several cpus might concurrently call nfqnl_enqueue_packet() for the same queue, we can deliver packets to consumer in non monotonic way (packet N+1 being delivered after packet N) This patch moves the packet id setup from nfqnl_build_packet_message() to nfqnl_enqueue_packet() to guarantee correct delivery order. This also removes one atomic operation. Signed-off-by: Eric Dumazet CC: Florian Westphal CC: Pablo Neira Ayuso CC: Eric Leblond Signed-off-by: Patrick McHardy commit 737c265bb8399b97231e5b10b5b2375914206427 Author: Takashi Iwai Date: Tue Jul 19 09:34:10 2011 +0200 ALSA: hda - Add documentation for codec-specific mixer controls Signed-off-by: Takashi Iwai commit 9974eec2b802b630aece96708349738e8d5a2cf6 Author: Andrew Gabbasov Date: Sat Jul 16 03:22:13 2011 +0000 powerpc: Exporting boot_cpuid_phys Kernel loadable module can use hard_smp_processor_id() if building with SMP kernel. In order to make it work for UP kernels too, boot_cpuid_phys symbol (which is what hard_smp_processor_id() macro resolves to in non-SMP configuration) must be exported. Signed-off-by: Andrew Gabbasov Signed-off-by: Benjamin Herrenschmidt commit 5115a026cebeb5537016497e78f4402e5d4ac54e Author: Michael Neuling Date: Thu Jul 14 19:25:12 2011 +0000 powerpc: Add CFAR to oops output Now we have the CFAR saved add it to the oops output. Signed-off-by: Michael Neuling Signed-off-by: Benjamin Herrenschmidt commit 762e77ae7dd055d0b77e0ad34d87db7416df109e Author: Anton Blanchard Date: Tue Jul 12 19:44:05 2011 +0000 hvc_console: Add kdb support Add poll_get_char and poll_put_char for kdb. Enable kdb at boot with: kgdboc=hvc0 or at runtime with: echo hvc0 > /sys/module/kgdboc/parameters/kgdboc Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 19df9abdd30a0448e5940c6aa3527096bb69aca7 Author: Anton Blanchard Date: Tue Jul 12 19:19:57 2011 +0000 powerpc/pseries: Fix hvterm_raw_get_chars to accept < 16 chars, fixing xmon commit 4d2bb3f50036 (powerpc/pseries: Re-implement HVSI as part of hvc_vio) changed udbg_getc to be based on hvterm_raw_get_chars. Unfortunately hvterm_raw_get_chars returns -EAGAIN if you ask for anything less than 16 characters. As a result xmon no longer accepts input and prints a stream of junk to the screen. The recent change highlights a problem that xmon on pseries VIO has had all along, that it can drop input characters. The issue is the hypervisor call does not take a count argument and can return up to 16 characters. This patch adds a per vterm buffer that we copy input data into and give it out as requested. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 88962934226c570717c346684ab5ed2f09c2b359 Author: Anton Blanchard Date: Thu Jul 7 20:35:38 2011 +0000 powerpc/irq: Quieten irq mapping printks HFI creates interrupts each time a window is setup. This results in a lot of messages in the kernel log buffer: irq: irq 199007 on host null mapped to virtual irq 351 This box has over 3500 of them, causing more important kernel messages to be overwritten. We can get at this information via debugfs now so we may as well turn it into a pr_debug. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 7a0200f66b0b9ad7c4eb8d3f4d3ebdf3c89a55cc Author: Anton Blanchard Date: Wed Jul 6 13:13:17 2011 +0000 powerpc: Enable lockup and hung task detectors in pseries and ppc64 defeconfigs As a result of changes to Kconfig files, we no longer enable the lockup and hung task detectors. Both are very light weight and provide useful information in the event of a hang, so reenable them. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit b260281cd1d45f8eb90f5821f26d87c5aee0d989 Author: Anton Blanchard Date: Wed Jul 6 13:13:16 2011 +0000 powerpc: Add mpt2sas driver to pseries and ppc64 defconfig Add mpt2sas driver to pseries and ppc64 defconfig. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 241590c35fc08230f80dde82920dae0f2f3d6d41 Author: Anton Blanchard Date: Wed Jul 6 13:13:15 2011 +0000 powerpc: Disable IRQs off tracer in ppc64 defconfig The IRQs off tracer enables mcount which has a big impact on performance. Disable it. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 29cd9913942a56cce612e0821fec976f29bc1e9b Author: Anton Blanchard Date: Wed Jul 6 13:13:14 2011 +0000 powerpc: Sync pseries and ppc64 defconfigs The pseries defconfig had a number of drivers enabled and we may as well add them to the ppc64 defconfig. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 51d33021425e1f905beb4208823146f2fb6517da Author: Anton Blanchard Date: Tue Jul 5 21:51:36 2011 +0000 powerpc/pseries/hvconsole: Fix dropped console output Return -EAGAIN when we get H_BUSY back from the hypervisor. This makes the hvc console driver retry, avoiding dropped printks. Signed-off-by: Anton Blanchard Cc: Signed-off-by: Benjamin Herrenschmidt commit 8c2381af0d3ef62a681dac5a141b6dabb27bf2e1 Author: Hendrik Brueckner Date: Tue Jul 5 21:50:18 2011 +0000 hvc_console: Improve tty/console put_chars handling Currently, the hvc_console_print() function drops console output if the hvc backend's put_chars() returns 0. This patch changes this behavior to allow a retry through returning -EAGAIN. This change also affects the hvc_push() function. Both functions are changed to handle -EAGAIN and to retry the put_chars() operation. If a hvc backend returns -EAGAIN, the retry handling differs: - hvc_console_print() spins to write the complete console output. - hvc_push() behaves the same way as for returning 0. Now hvc backends can indirectly control the way how console output is handled through the hvc console layer. Signed-off-by: Hendrik Brueckner Acked-by: Anton Blanchard Cc: Signed-off-by: Benjamin Herrenschmidt commit 63f21a56f1cc0b800a4c00349c59448f82473d19 Author: Michael Neuling Date: Mon Jul 4 20:40:10 2011 +0000 powerpc/kdump: Fix timeout in crash_kexec_wait_realmode The existing code it pretty ugly. How about we clean it up even more like this? From: Anton Blanchard We check for timeout expiry in the outer loop, but we also need to check it in the inner loop or we can lock up forever waiting for a CPU to hit real mode. Signed-off-by: Anton Blanchard Signed-off-by: Michael Neuling Cc: Signed-off-by: Benjamin Herrenschmidt commit f7ba2991e9063fa8cf668ee57c08e2842ad04f11 Author: Tony Breeds Date: Mon Jul 4 18:44:19 2011 +0000 powerpc/mm: Fix output of total_ram. On 32bit platforms that support >= 4GB memory total_ram was truncated. This creates a confusing printk: Top of RAM: 0x100000000, Total RAM: 0x0 Fix that: Top of RAM: 0x100000000, Total RAM: 0x100000000 Signed-off-by: Tony Breeds Acked-by: Josh Boyer Signed-off-by: Benjamin Herrenschmidt commit 5d8c665889e27e1b8989ca465166e8897dc302d1 Author: Dmitry Eremin-Solenikov Date: Wed Jun 29 05:07:56 2011 +0000 powerpc/cpufreq: Add cpufreq driver for Momentum Maple boards Add simple cpufreq driver for Maple-based boards (ppc970fx evaluation kit and others). Driver is based on a cpufreq driver for 64-bit powermac boxes with all pmac-dependant features removed and simple cleanup applied. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Benjamin Herrenschmidt commit 77c2342a578c11f22a1003e641f50d138dd9833a Author: Dmitry Eremin-Solenikov Date: Wed Jun 29 04:54:00 2011 +0000 powerpc: Correct annotations of pmu registration functions This fixes the following warning: WARNING: arch/powerpc/kernel/built-in.o(.text+0x29768): Section mismatch in reference from the function .register_power_pmu() to the function .cpuinit.text:.power_pmu_notifier() The function .register_power_pmu() references the function __cpuinit .power_pmu_notifier(). This is often because .register_power_pmu lacks a __cpuinit annotation or the annotation of .power_pmu_notifier is wrong. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Benjamin Herrenschmidt commit 0e0ebdb9c2ba7b56a82ba36d29ab3d8cb99de9e7 Author: Mathias Krause Date: Fri Jun 10 03:10:22 2011 +0000 powerpc: Remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause Signed-off-by: Benjamin Herrenschmidt commit 3cbe182a5b443c4a06a8ddaf13057cbd893963c7 Author: Manuel Zerpies Date: Thu Jun 16 12:10:40 2011 +0000 RDMA/cxgb4: Use printk_ratelimited() instead of printk_ratelimit() Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited(). Signed-off-by: Manuel Zerpies Signed-off-by: Roland Dreier commit c37791349cc79d025df6e9a4f896a7b0a97cdbd3 Author: Or Gerlitz Date: Wed Jun 15 14:51:27 2011 +0000 IB/mlx4: Support PMA counters for IBoE Use the per port counter attached to all QPs created on that port to implement port level packets/bytes performance counters a la IB. Derived from a patch by Eli Cohen Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit cfcde11c3d7ae175f49280bb6f913478c2f1bd8c Author: Or Gerlitz Date: Wed Jun 15 14:49:57 2011 +0000 IB/mlx4: Use flow counters on IBoE ports Allocate flow counter per Ethernet/IBoE port, and attach this counter to all the QPs created on that port. Based on patch by Eli Cohen . Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit 6aea213a62122701891fe55cc3405d31b927cfde Author: Or Gerlitz Date: Tue Jul 5 15:46:29 2011 +0000 IB/pma: Add include file for IBA performance counters definitions Move the various definitions and mad structures needed for software implementation of IBA PM agent from the ipath and qib drivers into a single include file, which in turn could be used by more consumers. Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit f2a3f6a32cf64db1495b5ced8625b9a80bde44e5 Author: Or Gerlitz Date: Wed Jun 15 14:47:14 2011 +0000 mlx4_core: Add network flow counters ConnectX devices support a set of flow counters that can be attached to a set containing one or more QPs. Each such counter tracks receive and transmit packets and bytes of these QPs. This patch queries the device to check support for counters, handles initialization of the HCA to enable counters, and initializes a bitmap allocator to control counter allocations. Derived from patch by Eli Cohen . Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit 98a13e487a3bdac8508e4dcb98d63385fabe6767 Author: Or Gerlitz Date: Wed Jun 15 14:43:43 2011 +0000 mlx4_core: Fix location of counter index in QP context struct Fix the address handle portion of the QP context structure to have the correct bit location for the counter index field. Signed-off-by: Eli Cohen Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit ccf863219675aa86bebdd6a2806acb8176478e37 Author: Or Gerlitz Date: Thu Jul 7 19:19:29 2011 +0000 mlx4_core: Read extended capabilities into the flags field Query another dword containing up to 32 extended device capabilities and merge it into struct mlx4_caps.flags. Update the code that handles the current extended device capabilities (e.g UDP RSS, WoL, vep steering, etc) to use the extended device cap flags field instead of a field per extended capability. Initial patch done by Eli Cohen . Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit 52eafc68d601afd699b023201b0c6be5209f39ce Author: Or Gerlitz Date: Wed Jun 15 14:41:42 2011 +0000 mlx4_core: Extend capability flags to 64 bits The latest firmware adds a second dword containing more device flags, so extend the device capabilities flags field from 32 to 64 bits. Derived from patch by Eli Cohen Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit 6451c712fef3b13bb3fc5a41adadc539e0d06a42 Author: Or Gerlitz Date: Wed Jun 15 14:40:29 2011 +0000 IB/mlx4: Generate GID change events in IBoE code IBoE doesn't use LIDs. Use the GID change event to update the IB core cache for addition/deletion of GIDs. Signed-off-by: Eli Cohen Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit 761d90ed4c36798a2f5fcb161d4ee2119bab478b Author: Or Gerlitz Date: Wed Jun 15 14:39:29 2011 +0000 IB/core: Add GID change event Add IB GID change event type. This is needed for IBoE when the HW driver updates the GID (e.g when new VLANs are added/deleted) table and the change should be reflected to the IB core cache. Signed-off-by: Eli Cohen Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit e449edbb91decd0260105fadd4f5fcc3ce170e01 Author: Axel Lin Date: Mon Jul 18 17:09:05 2011 -0700 Input: intel-mid-touch - remove pointless checking for variable 'found' The implementation does break from the for loop after we assign 'i' to variable 'found'. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit dc3e8247eb90655c0ff01ce03bdf3aa5868f1cde Author: Axel Lin Date: Mon Jul 18 17:09:46 2011 -0700 Input: hp_sdc - staticize hp_sdc_kicker() It's not referenced outside this file so there's no need for it to be in the global name space. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit edf21d9c38b945b91d100bae59d951bce131d58b Author: Axel Lin Date: Mon Jul 18 17:09:22 2011 -0700 Input: pmic8xxx-keypad - fix a leak of the IRQ during init failure Make sure we are passing the same cookie in all calls to request_any_context_irq() and free_irq(). Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 2c204109ec1018f72114c7f19132a1109a3f0653 Author: Axel Lin Date: Mon Jul 18 17:09:37 2011 -0700 Input: cy8ctmg110_ts - set reset_pin and irq_pin from platform data The implementation in cy8ctmg110_probe() does not properly set reset_pin and irq_pin from platform data. Let's fix it. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 2efdd6a038b2d72e74deb8d4725db1663135268c Author: Moni Shoua Date: Tue Jul 12 11:23:15 2011 +0000 RDMA/cma: Don't allow IPoIB port space for IBoE This patch fixes a kernel crash in cma_set_qkey(). When the link layer is Ethernet, it is wrong to use IPoIB port space since no IPoIB interface is available. Specifically, setting the Q_Key when port space is RDMA_PS_IPOIB requires MGID calculation and an SA query, which doesn't make sense over Ethernet. Signed-off-by: Moni Shoua Acked-by: Sean Hefty Signed-off-by: Roland Dreier commit 10e1b54bbb51ac134c51996022f3bd10579fbd3b Author: Bart Van Assche Date: Sat Jun 18 16:35:42 2011 +0000 RDMA: Allow for NULL .modify_device() and .modify_port() methods These methods don't make sense for iWARP devices, so rather than forcing them to implement stubs, just return -ENOSYS in the core if the hardware driver doesn't set .modify_device and/or .modify_port. Signed-off-by: Roland Dreier commit bd9ddc875b6659f9f74dcfd285c472bc58041abd Author: Jeremy Fitzhardinge Date: Mon Jun 20 17:52:13 2011 -0700 xen/trace: use class for multicall trace Signed-off-by: Jeremy Fitzhardinge commit c43ed60cbf3bd7d4bd6603258429361cffa09547 Author: Jeremy Fitzhardinge Date: Mon Jun 20 17:48:40 2011 -0700 xen/trace: convert mmu events to use DECLARE_EVENT_CLASS()/DEFINE_EVENT() Signed-off-by: Jeremy Fitzhardinge commit 2a6f6d095509c7dc6e9ff8d9fd9fba0b730ecce3 Author: Jeremy Fitzhardinge Date: Fri Dec 17 17:33:11 2010 -0800 xen/multicall: move *idx fields to start of mc_buffer The CPU would prefer small offsets. Signed-off-by: Jeremy Fitzhardinge commit eac303bf2ef63e7f7b6971badea0ff7bf08a2b22 Author: Jeremy Fitzhardinge Date: Fri Dec 17 17:32:28 2010 -0800 xen/multicall: special-case singleton hypercalls Singleton calls seem to end up being pretty common, so just directly call the hypercall rather than going via multicall. Signed-off-by: Jeremy Fitzhardinge commit 4a7b005dbfa554e7cc7fbc08e0299a9b7a91ef3b Author: Jeremy Fitzhardinge Date: Fri Dec 17 17:20:25 2010 -0800 xen/multicalls: add unlikely around slowpath in __xen_mc_entry() Signed-off-by: Jeremy Fitzhardinge commit ffc78767f2ac5b8007aeb366e748c8dd8b8bc3a3 Author: Jeremy Fitzhardinge Date: Fri Dec 17 17:19:42 2010 -0800 xen/multicalls: disable MC_DEBUG It's useful - and probably should be a config - but its very heavyweight, especially with the tracing stuff to help sort out problems. Signed-off-by: Jeremy Fitzhardinge commit bc7fe1d977734efe6059d6d537b439135ad4a34c Author: Jeremy Fitzhardinge Date: Fri Dec 17 14:58:43 2010 -0800 xen/mmu: tune pgtable alloc/release Make sure the fastpath code is inlined. Batch the page permission change and the pin/unpin, and make sure that it can be batched with any adjacent set_pte/pmd/etc operations. Signed-off-by: Jeremy Fitzhardinge commit dcf7435cfe617c9d9f3dd501d3f5ed4d0b30c218 Author: Jeremy Fitzhardinge Date: Fri Dec 17 09:17:32 2010 -0800 xen/mmu: use extend_args for more mmuext updates Signed-off-by: Jeremy Fitzhardinge commit c8eed1719afb337472c5ef31ec590d549770b173 Author: Jeremy Fitzhardinge Date: Mon Dec 20 13:15:04 2010 -0800 xen/trace: add tlb flush tracepoints Signed-off-by: Jeremy Fitzhardinge commit ab78f7ad2c78fb1b724b278479adec998933be36 Author: Jeremy Fitzhardinge Date: Fri Dec 17 15:54:28 2010 -0800 xen/trace: add segment desc tracing Signed-off-by: Jeremy Fitzhardinge commit 5f94fb5b8edf29bba06e2cd05f9d3a80a5dfb9bc Author: Jeremy Fitzhardinge Date: Fri Dec 17 15:31:23 2010 -0800 xen/trace: add xen_pgd_(un)pin tracepoints Signed-off-by: Jeremy Fitzhardinge commit c2ba050d2e5638774571ea0ad0375a1c17c7b04e Author: Jeremy Fitzhardinge Date: Fri Dec 17 14:21:17 2010 -0800 xen/trace: add ptpage alloc/release tracepoints Signed-off-by: Jeremy Fitzhardinge commit 847088079162a5cf8ab0d1ad1ecf7fa60c057246 Author: Jeremy Fitzhardinge Date: Thu Dec 16 17:02:35 2010 -0800 xen/trace: add mmu tracepoints Signed-off-by: Jeremy Fitzhardinge commit c796f213a6934712ede728d9b53ef0e5066db23a Author: Jeremy Fitzhardinge Date: Thu Dec 16 14:33:27 2010 -0800 xen/trace: add multicall tracing Signed-off-by: Jeremy Fitzhardinge commit f04e2ee41d3dbeb6eeb3685d1b4c208b898e278f Author: Jeremy Fitzhardinge Date: Thu Dec 16 14:15:23 2010 -0800 xen/trace: set up tracepoint skeleton Signed-off-by: Jeremy Fitzhardinge commit 84cdee76b15f3669f012d5916287d124c805ef2f Author: Jeremy Fitzhardinge Date: Thu Dec 16 13:42:55 2010 -0800 xen/multicalls: remove debugfs stats Remove debugfs stats to make way for tracing. Signed-off-by: Jeremy Fitzhardinge commit 634355d42be64f5ba934220d784bb32422ef3052 Author: Jeremy Fitzhardinge Date: Thu Dec 16 13:39:18 2010 -0800 trace/xen: add skeleton for Xen trace events Signed-off-by: Jeremy Fitzhardinge commit c46556c6be057da79f51b1a8325ec4c27938bd49 Author: J. Bruce Fields Date: Mon Jul 18 18:40:21 2011 -0400 nfsd4: update nfsv4.1 implementation notes Update documentation to reflect recent progress. Signed-off-by: J. Bruce Fields commit 99ce39e359fa29e4b609a6a13485e7573eda5dfb Author: Grant Likely Date: Tue Jul 5 23:42:37 2011 -0600 dt: include linux/errno.h in linux/of_address.h of_address.h makes reference to some of the error code #defines, so it needs to include errno.h. If CONFIG_PCI is not selected, then some files will fail to compile. Signed-off-by: Grant Likely commit 90e33f62e027d330485d03598e1b2d8db3ff031c Author: Grant Likely Date: Tue Jul 5 23:42:28 2011 -0600 of/address: Add of_find_matching_node_by_address helper of_find_matching_node_by_address() can be used to find a device tree node for a device at a specific address. Signed-off-by: Grant Likely commit 07f1c295de593ec0b0dca3092299c048c03374da Merge: 4aa96cc fb89fcf Author: Russell King Date: Mon Jul 18 23:00:42 2011 +0100 Merge branch 'dma' of http://git.linaro.org/git/people/nico/linux into devel-stable commit 21d541aa19e90752232bf6c43002f019f204f988 Author: Keiichi Kii Date: Fri Jun 17 20:45:01 2011 -0400 updated Documentation/ja_JP/SubmittingPatches Updated Documentaion/ja_JP/SubmittingPatches due to changes from upstream version(2.6.39) of the file. And also, this translated SubmittingPatches is already reviewed by JF project. The JF project is the Japanese equivalent of LDP. Signed-off-by: Keiichi Kii Signed-off-by: Greg Kroah-Hartman commit d0a542637f6879a493aa713b9f81c4fcd98f4f7a Author: Akinobu Mita Date: Sat Jul 9 14:01:17 2011 +0900 debugfs: add documentation for debugfs_create_x64 debugfs_create_x64() exists. Signed-off-by: Akinobu Mita Cc: Greg Kroah-Hartman Signed-off-by: Greg Kroah-Hartman commit e1703b329f7c7ea82ea181dc4c50020f25061a2c Author: Jonathan Cameron Date: Thu Jul 14 10:24:02 2011 +0100 staging:iio:meter:ade7753 should be 16 bit read not 8 bit for mode register. Build tested only. Signed-off-by: Jonathan Cameron Reported-by: Randy Dunlap Acked-by: Randy Dunlap Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 05a93489bc569d549e55cf7392a8b2bf50d9d095 Author: Jonathan Cameron Date: Wed Jul 13 12:52:00 2011 +0100 staging:iio:kfifo_buf fix double initialization of the ring device structure. Looks like this moved into the core at somepoint and kfifo buf got left behind. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8016934cbd0fdf694deee2510650d1f66304f7c3 Author: Jonathan Cameron Date: Wed Jul 13 12:51:59 2011 +0100 staging:iio:accel:lis3l02dq: fix incorrect pointer passed to spi_set_drvdata. This mean all sorts of interesting results on driver removal. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 91ab3fc907ab938b99683dbd8146008d10d09dd8 Author: Jonathan Cameron Date: Wed Jul 13 12:51:58 2011 +0100 staging:iio:imu fix missing register table index for some channels A number of these register indexes were not set or actually wrong. This only effects sysfs reads. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 9e158e3082f9c41da75efe7dd32f6c1cf55b5e72 Author: Alan Cox Date: Tue Jul 12 17:40:03 2011 +0100 spectra: enable device before poking it Otherwise if it is off at boot time things don't go to plan. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 19a3833fd4909c2d88683c0798fe039a69723194 Author: wwang Date: Mon Jul 11 10:20:20 2011 +0800 staging: rts_pstor: Fix a miswriting cppcheck reported: [staging/rts_pstor/sd.c:3730] -> [staging/rts_pstor/sd.c:3726]: (style) Found duplicate if expressions. It's a miswriting, and the second if expression should be "(rsp_type == SD_RSP_TYPE_R0)" Signed-off-by: wwang Signed-off-by: Greg Kroah-Hartman commit 66240a6883744047700f9e2da977a7d4bab5eddc Author: Dave Jones Date: Mon Jul 11 11:24:36 2011 -0400 staging/lirc_bt829: Return -ENODEV when no hardware is found. sys_init_module: 'lirc_bt829'->init suspiciously returned 1, it should follow 0/-E convention sys_init_module: loading module anyway... Pid: 8511, comm: modprobe Tainted: G WC 3.0.0-rc6+ #73 Call Trace: [] sys_init_module+0x217/0x230 [] system_call_fastpath+0x16/0x1b Signed-off-by: Dave Jones Signed-off-by: Greg Kroah-Hartman commit 950975a761d6c760d67f0df3af2e6e1fcfb33630 Author: Dave Jones Date: Mon Jul 11 12:21:45 2011 -0400 staging/lirc_parallel: remove pointless prototypes. These are right before the actual definitions, so redundant. Signed-off-by: Dave Jones Signed-off-by: Greg Kroah-Hartman commit 7cf131cb240fb0959f3b56155781f4d4de4608d1 Author: Dave Jones Date: Mon Jul 11 14:39:20 2011 -0400 staging/lirc_parallel: fix panic on rmmod lirc_parallel seems to leave a bunch of stuff around after rmmod. Without the patch below modprobe ; rmmod ; modprobe will cause a panic. There are still some remaining problems, (double registration of sysfs files) but this patch is at least a start to survive the panic. Signed-off-by: Dave Jones Signed-off-by: Greg Kroah-Hartman commit 38f71aa905c20ca458bb21c818d41579d03fdc28 Author: Jonathan Cameron Date: Wed Jul 13 13:42:47 2011 +0100 staging:iio:adc:ad7476: Incorrect pointer into spi_set_drvdata. Will cause issues only on driver removal. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit dffbb44d5575facfb38a57cbb2925b03a5fc751b Author: Jerome Marchand Date: Wed Jul 13 17:20:05 2011 +0200 Staging: zram: Fix kunmapping order This patch fixes the unmapping order of KM_USER0/1 in handle_uncompressed_page() and zram_read() so that kmap()/kunmap() calls are correctly nested. Reported-by: Nitin Gupta Signed-off-by: Jerome Marchand Reviewed-by: Nitin Gupta Signed-off-by: Greg Kroah-Hartman commit e8885cb68dbdaa0a292bf1defc98addd0aed9b04 Author: Imre Kaloz Date: Mon Jul 18 22:05:12 2011 +0200 ARM: orion5x: fixup 5181 MPP mask check During the refactoring of the Orion MPP code, the detection for the 5181l as been used to select the 5181 MPP mask, which is wrong. Select the 5181 mask for all 5181 variants. Signed-off-by: Imre Kaloz Signed-off-by: Nicolas Pitre commit f701e5b73a1a79ea62ffd45d9e2bed4c7d5c1fd2 Author: Vladimir Zapolskiy Date: Fri Jul 15 20:45:18 2011 +0300 connector: add an event for monitoring process tracers This change adds a procfs connector event, which is emitted on every successful process tracer attach or detach. If some process connects to other one, kernelspace connector reports process id and thread group id of both these involved processes. On disconnection null process id is returned. Such an event allows to create a simple automated userspace mechanism to be aware about processes connecting to others, therefore predefined process policies can be applied to them if needed. Note, a detach signal is emitted only in case, if a tracer process explicitly executes PTRACE_DETACH request. In other cases like tracee or tracer exit detach event from proc connector is not reported. Signed-off-by: Vladimir Zapolskiy Acked-by: Evgeniy Polyakov Cc: David S. Miller Signed-off-by: Oleg Nesterov commit fb89fcfb151698776be6c900aec8161b01990e92 Author: Nicolas Pitre Date: Mon Jul 18 15:17:15 2011 -0400 ARM: ARM_DMA_ZONE_SIZE is no more One less dependency on mach/memory.h. Signed-off-by: Nicolas Pitre commit fded1ef9c55e30d91508487c45334c8947cc5f7b Author: Nicolas Pitre Date: Tue Jul 5 22:28:09 2011 -0400 ARM: mach-shark: move ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size Signed-off-by: Nicolas Pitre commit e9107ab623648587a044ee925c1708655bdf9813 Author: Nicolas Pitre Date: Tue Jul 5 22:28:09 2011 -0400 ARM: mach-sa1100: move ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size Signed-off-by: Nicolas Pitre commit 00e9125e061022dcba2daea95491d5400c47789b Author: Nicolas Pitre Date: Tue Jul 5 22:28:09 2011 -0400 ARM: mach-realview: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size Signed-off-by: Nicolas Pitre commit 805e88dc40bbcc924797cfcac524931774c6e46c Author: Nicolas Pitre Date: Tue Jul 5 22:28:09 2011 -0400 ARM: mach-pxa: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size Signed-off-by: Nicolas Pitre commit 7553ee777b513c3bc8f45bb9fc75fb1bbc584ba1 Author: Nicolas Pitre Date: Tue Jul 5 22:28:09 2011 -0400 ARM: mach-ixp4xx: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size Signed-off-by: Nicolas Pitre commit 5065c71d7567a98de0550708e5427a187033d8a3 Author: Nicolas Pitre Date: Tue Jul 5 22:28:08 2011 -0400 ARM: mach-h720x: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size Signed-off-by: Nicolas Pitre commit f68deabf3dc6c13fb80ec28575d0153c59f7ecce Author: Nicolas Pitre Date: Tue Jul 5 22:28:08 2011 -0400 ARM: mach-davinci: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size Signed-off-by: Nicolas Pitre commit 4fddcaebb9014b4814f859420595cc419400fba6 Author: Nicolas Pitre Date: Tue Jul 5 22:28:08 2011 -0400 ARM: add dma_zone_size to the machine_desc structure Signed-off-by: Nicolas Pitre commit 8c400f6ce068366bc3517f1036bb99169cfec9cd Author: Borislav Petkov Date: Mon Jul 18 21:10:54 2011 +0200 x86, vdso: Drop now wrong comment Now that 1b3f2a72bbcfdf92e368a44448c45eb639b05b5e is in, it is very important that the below lying comment be removed! :-) Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/20110718191054.GA18359@liondog.tnic Acked-by: Andy Lutomirski Signed-off-by: H. Peter Anvin commit 650320181a08b64d4421c65c639cf47ad8cc2cd6 Author: Nicolas Pitre Date: Mon Jul 18 15:05:10 2011 -0400 ARM: change ARM_DMA_ZONE_SIZE into a variable Having this value defined at compile time prevents multiple machines with conflicting definitions to coexist. Move it to a variable in preparation for having a per machine value selected at run time. This is relevant only when CONFIG_ZONE_DMA is selected. Signed-off-by: Nicolas Pitre commit e800bd032c2623b10ef38a4d7d646e3e3c7bb3ad Author: Mitko Haralanov Date: Thu Jul 14 13:40:24 2011 +0000 IB/qib: Update active link width Update the active link width on QLE7220 chips when link goes down if chip width does not match shadowed width. Signed-off-by: Mitko Haralanov Signed-off-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 4356d0b64b9be53c507f66c572c1e275b4529239 Author: Ram Vepa Date: Fri May 27 13:41:55 2011 +0000 IB/qib: Fix potential deadlock with link down interrupt There is a possibility of a deadlock due to the way locks are acquired and released in qib_set_uevent_bits(). The function qib_set_uevent_bits() is called in process context and it uses spin_lock() and spin_unlock(). This same lock is acquired/released in interrupt context which can lead to a deadlock when running on the same cpu. The fix is to replace spin_lock() and spin_unlock() with spin_lock_irqsave() and spin_unlock_irqrestore() respectively in qib_set_uevent_bits(). Signed-off-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 2df4f7579d212e8e0df7c8a24f57bf90f23fd516 Author: Ram Vepa Date: Tue May 31 20:20:43 2011 +0000 IB/qib: Add sysfs interface to read free contexts Indicate the number of free user contexts via the sysfs file /sys/class/infiniband/qib0/nfreectxts as required for PSM. Signed-off-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 9b89925c0d8f7d1cc203682df4fab847a7b4b7ec Author: Jon Mason Date: Mon Jun 27 17:39:54 2011 +0000 IB/mthca: Remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Also, pci_is_pcie is a better way of determining if the device is PCIE or not (as it uses the same saved PCIE capability offset). Signed-off-by: Jon Mason Signed-off-by: Roland Dreier commit ac0cae4495303b8fffd3df9c7cb29c7d0c05f210 Author: Edwin van Vliet Date: Sun Jul 10 21:49:47 2011 +0000 IB/qib: Remove double define Signed-off-by: Edwin van Vliet Reviewed-by: Jesper Juhl Acked-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 7f27cda03708e3460849f82b47c604f1492e3777 Author: Jon Mason Date: Mon Jun 27 17:40:38 2011 +0000 IB/qib: Remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Acked-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 57631811728d12ad9b0e96ed3eccb486124a5605 Author: Motohiro KOSAKI Date: Thu May 19 01:04:42 2011 +0000 IB/ipath: Convert old cpumask api into new one Adapt to new api. We plan to remove old one later. Almost all changes are trivial, but there is one real fix: the following code is unsafe: int ncpus = num_online_cpus() for (i = 0; i < ncpus; i++) { .. } because 1) we don't guarantee last bit of online cpus is equal to num_online_cpus(). some arch assign sparse cpu number. 2) cpu hotplugging may change cpu_online_mask at same time. we need to pin it by get_online_cpus(). Signed-off-by: KOSAKI Motohiro Acked-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 0cd85e6738976b753fb156d833c94083418b3ae4 Author: Motohiro KOSAKI Date: Thu May 19 01:07:05 2011 +0000 IB/qib: Convert old cpumask api into new one Adapt to use new APIs. We plan to remove old one later and plan to change current->cpus_allowed implementation. No functional change. Signed-off-by: KOSAKI Motohiro Acked-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 81fc70d86527a1450560709500ca5f52e661da1f Author: Andy Shevchenko Date: Sun Jul 17 22:26:37 2011 +0000 net: can: remove custom hex_to_bin() Signed-off-by: Andy Shevchenko Cc: Wolfgang Grandegger Acked-by: Oliver Hartkopp Signed-off-by: David S. Miller commit 02c5172c314308eb85f80899cc3aef41bc31bbad Author: Rajkumar Manoharan Date: Sun Jul 17 11:38:49 2011 +0530 ath9k: Fix some smatch warnings drivers/net/wireless/ath/ath9k/hif_usb.c +135 hif_usb_mgmt_cb(6) warn: variable dereferenced before check 'cmd' drivers/net/wireless/ath/ath9k/btcoex.c +77 ath9k_hw_init_btcoex_hw(38) error: buffer overflow 'ah->hw_gen_timers.gen_timer_index' 32 <= 2009813776 Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit f9ab38ba95c718ba07b385720803ed29ff40d1e3 Author: Luciano Coelho Date: Sun Jul 17 10:06:34 2011 +0300 MAINTAINERS: change maintainer of the wl1251 driver Kalle Valo has asked me to take over the maintenance of the wl1251 driver. Thanks Kalle for all his work on the wl1251 driver, I'll try to keep up with his good work from now on. At the same time, update the Web URL to something more specific. There's not much in that page, but we will try to update it soon. Signed-off-by: Luciano Coelho Acked-by: Kalle Valo Signed-off-by: John W. Linville commit 5479de6e876e93d0037e43da7a8e7c2ed170b424 Author: Rajkumar Manoharan Date: Sun Jul 17 11:43:02 2011 +0530 ath9k: Fix sparse warnings drivers/net/wireless/ath/ath9k/init.c:199:21: warning: context imbalance in 'ath9k_reg_rmw' - different lock contexts for basic block drivers/net/wireless/ath/ath9k/xmit.c:1175:31: warning: context imbalance in 'ath_drain_txq_list' - unexpected unlock drivers/net/wireless/ath/ath9k/xmit.c:2047:23: warning: context imbalance in 'ath_tx_process_buffer' - unexpected unlock drivers/net/wireless/ath/ath9k/ar9003_eeprom.c:3041:24: warning: cast to restricted __le32 Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 0901edb758854e317fbc96774159739db4aff353 Author: Rafał Miłecki Date: Sun Jul 17 01:15:18 2011 +0200 b43: bus: drop inline from SSB functions We use all that functions by pointers only. This forces compiler to create additional duplicated functions that are not inline. Noticed by Michael in similar bcma code. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 582965672831180b2e1f5e15ea1f7dc6f5b93018 Author: Christian Lamparter Date: Sat Jul 16 17:30:19 2011 +0200 carl9170: set beacon xmit power to the max Harshal Chhaya discovered during network tests, that several of his clients dropped-off the network. The captured packets shows that the beacons sent by the AP are at a much lower power than the other data packets. The reason for this mishap: The driver never updated the beacon phy register, so all beacons were always sent at the lowest power. Reference: http://marc.info/?l=linux-wireless&m=131067225105801 Reported-by: Harshal Chhaya Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 943c33996f9b0851c4122dc96cae08d4ba8debf0 Author: Christian Lamparter Date: Sat Jul 16 17:25:14 2011 +0200 carl9170: move beacon_update into tx.c Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 43b52a5ae9b56c02fbf6e2d7de3c50ebf9ff7973 Author: Christian Lamparter Date: Sat Jul 16 17:21:01 2011 +0200 carl9170 firmware: update firmware headers * reserves feature bit for CCA counters * extends hardware register file definitions Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 21ec489d007b1873f86a379946938854b47df930 Author: Pavel Roskin Date: Fri Jul 15 19:06:46 2011 -0400 ath9k: use ath_opmode_to_string() Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 6c2c1ed8643b5c3bc331e3f61b3530d771abbdbe Author: Pavel Roskin Date: Fri Jul 15 19:06:40 2011 -0400 ath9k: remove defines in reg.h that exist in ../reg.h Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 78fa99abd7a7ecfd7364e7b7198c9ecc27766855 Author: Pavel Roskin Date: Fri Jul 15 19:06:33 2011 -0400 ath9k: use get_unaligned_{b16, le16, le32} where possible Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit d47d78dff4d6d72eec59dcdf0f6dd44064088112 Author: Pavel Roskin Date: Fri Jul 15 19:06:27 2011 -0400 ath: use get_unaligned_le{16,32} in ath_hw_keysetmac() Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit c54dcd197c3f9a66b60cb85ca50df06981a45211 Author: Rafał Miłecki Date: Thu Jul 14 21:49:21 2011 +0200 bcma: extract SPROM rev 9 the same way as rev 8 SPROM rev 9 was discovered on 14e4:4331, it seems to have very similar layout to rev 8 one. Use the same extracting function until we find some differences. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 18dfa4952c691898da3168886a160d4cecae20bc Author: Rafał Miłecki Date: Thu Jul 14 21:49:19 2011 +0200 bcma: cc: set GPIOTIMER register We use value supplied via SPROM, or default 10:90 as fallback. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 09779aded8ab0ef475427d4f037a7bd5c74d5faa Author: Rafał Miłecki Date: Thu Jul 14 21:49:18 2011 +0200 ssb: SPROM: add LED duty cycle fields Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 2683d65bb016a0533c25ead3025cbd24886cf35f Author: Eliad Peller Date: Thu Jul 14 20:29:42 2011 +0300 mac80211: reconfigure tx on device reconfiguration Add tx_conf array to save the current tx queues configuration, and reconfig it on resume (ieee80211_reconfig). On resume, the driver is being reconfigured. Without reconfiguring the tx queues as well, the driver might configure the device to use wrong ac params (e.g. ps-poll instead of uapsd). Signed-off-by: Eliad Peller Signed-off-by: John W. Linville commit 61b8013a114cb041db2c56f747953cac69637f26 Author: Srinivas Kandagatla Date: Sun Jul 17 20:54:09 2011 +0000 stmmac: Allow SOCs to use Store forward mode eventhough tx_coe is 0. (V2) This patch adds new field 'force_sf_dma_mode' to plat_stmmacenet_data struct to allow users to specify if they want to use force store forward eventhough tx_coe is not available in hw. without this flag stmmac driver will use cut-thru mode not use store-forward mode. Signed-off-by: Srinivas Kandagatla Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit eb0dc4bb2e22c04964d6e9545e86f629f117108b Author: Shiraz Hashim Date: Sun Jul 17 20:54:08 2011 +0000 stmmac: add memory barriers at appropriate places This patch, provided by ST SPEAr developers, has fixed a problem raised on ARM CA9 where happened that the dma_transmission was enabled before the dma descriptors were properly filled. To guarantee this data memory barriers have been explicity used in the driver. Signed-off-by: Shiraz Hashim Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit bab632d69ee48a106e779b60cc01adfe80a72807 Author: Michael S. Tsirkin Date: Mon Jul 18 03:48:46 2011 +0000 vhost: vhost TX zero-copy support >From: Shirley Ma This adds experimental zero copy support in vhost-net, disabled by default. To enable, set experimental_zcopytx module option to 1. This patch maintains the outstanding userspace buffers in the sequence it is delivered to vhost. The outstanding userspace buffers will be marked as done once the lower device buffers DMA has finished. This is monitored through last reference of kfree_skb callback. Two buffer indices are used for this purpose. The vhost-net device passes the userspace buffers info to lower device skb through message control. DMA done status check and guest notification are handled by handle_tx: in the worst case is all buffers in the vq are in pending/done status, so we need to notify guest to release DMA done buffers first before we get any new buffers from the vq. One known problem is that if the guest stops submitting buffers, buffers might never get used until some further action, e.g. device reset. This does not seem to affect linux guests. Signed-off-by: Shirley Signed-off-by: Michael S. Tsirkin Signed-off-by: David S. Miller commit 5c74501f76360ce6f410730b9b5e5976f38e8504 Author: Eric Dumazet Date: Mon Jul 18 03:16:33 2011 +0000 ipv4: save cpu cycles from check_leaf() Compiler is not smart enough to avoid double BSWAP instructions in ntohl(inet_make_mask(plen)). Lets cache this value in struct leaf_info, (fill a hole on 64bit arches) With route cache disabled, this saves ~2% of cpu in udpflood bench on x86_64 machine. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 0c9361fcdeccd316ed67d85aa819c08066964c5b Author: Jack Morgenstein Date: Sun Jul 17 10:46:47 2011 +0000 RDMA/cma: Avoid assigning an IS_ERR value to cm_id pointer in CMA id object Avoid assigning an IS_ERR value to the cm_id pointer. This fixes a few anomalies in the error flow due to confusion about checking for NULL vs IS_ERR, and eliminates the need to test for the IS_ERR value every time we wish to determine if the cma_id object has a cm device associated with it. Also, eliminate the now-unnecessary procedure cma_has_cm_dev (we can check directly for the existence of the device pointer -- for a non-NULL check, makes no difference if it is the iwarp or the ib pointer). Finally, make a few code changes here to improve coding consistency. Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit c8b7d43b6d539218c36f0ac8a6ad434b93195703 Author: Nicolas Pitre Date: Tue Jul 5 23:44:31 2011 -0400 ARM: mach-loki: delete This was introduced more than 3 years ago, and since then only generic janitorial changes were made without further addition of actual support for "real" devices. This is therefore a cost with no benefits to keep in the tree. If someone wishes to revive this code, it is always possible to retrieve it from the Git repository. Signed-off-by: Nicolas Pitre CC: Ke Wei CC: Saeed Bishara CC: Lennert Buytenhek commit 632b7cf6c056a355fe920c5165c4d7772393b817 Author: Nicolas Pitre Date: Tue Jul 5 23:44:31 2011 -0400 ARM: mach-s3c2400: delete On Tue, 28 Jun 2011, Ben Dooks wrote: > On Tue, Jun 28, 2011 at 11:22:57PM +0200, Arnd Bergmann wrote: > > > On a related note, what about mach-s3c2400? It seems to be even more > > incomplete. > > Probably the same fate awaits that. It is so old that there's little > incentive to do anything with it. So out it goes as well. The PORT_S3C2400 definition in include/linux/serial_core.h is left there to prevent a reuse of the same number for another port type. Signed-off-by: Nicolas Pitre Acked-by: Arnd Bergmann commit af0e060e24ce120804ac2b7c4abf3a13d57881ca Author: Nicolas Pitre Date: Tue Jul 5 23:44:31 2011 -0400 ARM: mach-s3c24a0: delete Commit bcae8aeb32 "[ARM] S3C24A0: Initial architecture support files" brought in a bunch of files while explicitly leaving out the corresponding Kconfig entry, stating that the series is not complete. More than 2.5 years later, the support for this has not seen any progress. This is therefore dead code. If someone wants to revive this code, it is always possible to retrieve it from the Git repository. Signed-off-by: Nicolas Pitre Acked-by: Ben Dooks Acked-by: Arnd Bergmann commit 3b607e3d3a2538e06686c8c26057f95471ac1f9c Author: Takashi Iwai Date: Mon Jul 18 16:54:40 2011 +0200 ALSA: hda - Switch HP DAC dynamically with indep-HP switch for VIA This patch changes the behavior of independent-HP enum switch. Now instead of returning a busy error, the driver switches dynamically the stream of the HP (and shared) DACs according to the current mode. The logic is similar like the dual-mic ADC switch, but a bit more complicated because of the presence of shared DAC. Together with the change, a mutex is introduced to protect against the possible races for the indep-HP mode setting. Signed-off-by: Takashi Iwai commit 3214b9665c06f684011f169428963b20f8ac554b Author: Takashi Iwai Date: Mon Jul 18 12:49:25 2011 +0200 ALSA: hda - Implement dynamic loopback control for VIA codecs This patch adds the dynamic control of analog-loopback for VIA codecs. When the loopback is enabled, the inputs from line-ins and mics are mixed with the front DAC, and sent to the front outputs. The very same input is routed to the headhpones and speakers in loopback mode. However, since the loopback mix can't take other than the front DAC, there is no longer individual volume controls for headphones and speakers. Once when the loopback control is off, these volumes take effect. Since the individual volumes are more desired in general use caess, the loopback mode is set to off as default for now. Signed-off-by: Takashi Iwai commit eb4cf5a642f6430cffff7ba5d8d9bd46ea409281 Author: Arnaud Lacombe Date: Thu Jul 14 15:31:07 2011 -0400 kconfig: fix missing "0x" prefix from S_HEX symbol in autoconf.h The specialized printer for headers (espectially autoconf.h) is missing fixup code for S_HEX symbol's "0x" prefix. As long as kconfig does not warn for such missing prefix, this code is needed. Fix this. In the same time, fix some nits in `header_print_symbol()'. Cc: Randy Dunlap Cc: Mauro Carvalho Chehab Broken-by: Arnaud Lacombe Reported-by: Randy Dunlap Reported-by: Mauro Carvalho Chehab Acked-by: Mauro Carvalho Chehab Acked-by: Randy Dunlap Signed-off-by: Arnaud Lacombe Signed-off-by: Michal Marek commit 84a797dd0b9f7130357b70577fcbda8e638c71a7 Author: Eric Dumazet Date: Mon Jul 18 16:08:27 2011 +0200 netfilter: nfnetlink_queue: provide rcu enabled callbacks nenetlink_queue operations on SMP are not efficent if several queues are used, because of nfnl_mutex contention when applications give packet verdict. Use new call_rcu field in struct nfnl_callback to advertize a callback that is called under rcu_read_lock instead of nfnl_mutex. On my 2x4x2 machine, I was able to reach 2.000.000 pps going through user land returning NF_ACCEPT verdicts without losses, instead of less than 500.000 pps before patch. Signed-off-by: Eric Dumazet CC: Florian Westphal CC: Eric Leblond Signed-off-by: Patrick McHardy commit 6b75e3e8d664a9a1b99d31a7f4976ae70d1d090a Author: Eric Dumazet Date: Mon Jul 18 16:08:07 2011 +0200 netfilter: nfnetlink: add RCU in nfnetlink_rcv_msg() Goal of this patch is to permit nfnetlink providers not mandate nfnl_mutex being held while nfnetlink_rcv_msg() calls them. If struct nfnl_callback contains a non NULL call_rcu(), then nfnetlink_rcv_msg() will use it instead of call() field, holding rcu_read_lock instead of nfnl_mutex Signed-off-by: Eric Dumazet CC: Florian Westphal CC: Eric Leblond Signed-off-by: Patrick McHardy commit 1091006c5eb15cba56785bd5b498a8d0b9546903 Author: J. Bruce Fields Date: Mon Jan 24 12:11:02 2011 -0500 nfsd: turn on reply cache for NFSv4 It's sort of ridiculous that we've never had a working reply cache for NFSv4. On the other hand, we may still not: our current reply cache is likely not very good, especially in the TCP case (which is the only case that matters for v4). What we really need here is some serious testing. Anyway, here's a start. Signed-off-by: J. Bruce Fields commit 3e98abffd1665b884a322aedcd528577842f762f Author: J. Bruce Fields Date: Sat Jul 16 17:15:10 2011 -0400 nfsd4: call nfsd4_release_compoundargs from pc_release This simplifies cleanup a bit. Signed-off-by: J. Bruce Fields commit c225150b86fef9f7663219b6e9f7606ea1607312 Author: Hugh Dickins Date: Mon Jul 11 13:35:08 2011 -0700 slab: fix DEBUG_SLAB build Fix CONFIG_SLAB=y CONFIG_DEBUG_SLAB=y build error and warnings. Now that ARCH_SLAB_MINALIGN defaults to __alignof__(unsigned long long), it is always defined (when slab.h included), but cannot be used in #if: mm/slab.c: In function `cache_alloc_debugcheck_after': mm/slab.c:3156:5: warning: "__alignof__" is not defined mm/slab.c:3156:5: error: missing binary operator before token "(" make[1]: *** [mm/slab.o] Error 1 So just remove the #if and #endif lines, but then 64-bit build warns: mm/slab.c: In function `cache_alloc_debugcheck_after': mm/slab.c:3156:6: warning: cast from pointer to integer of different size mm/slab.c:3158:10: warning: format `%d' expects type `int', but argument 3 has type `long unsigned int' Fix those with casts, whatever the actual type of ARCH_SLAB_MINALIGN. Acked-by: Christoph Lameter Signed-off-by: Hugh Dickins Signed-off-by: Pekka Enberg commit 1d07171c5e58e68a76a141970a3a5e816a414ce6 Author: Christoph Lameter Date: Thu Jul 14 12:49:12 2011 -0500 slub: disable interrupts in cmpxchg_double_slab when falling back to pagelock Split cmpxchg_double_slab into two functions. One for the case where we know that interrupts are disabled (and therefore the fallback does not need to disable interrupts) and one for the other cases where fallback will also disable interrupts. This fixes the issue that __slab_free called cmpxchg_double_slab in some scenarios without disabling interrupts. Tested-by: Hugh Dickins Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 013e896373fc53f3d3c039364a25ccbd1fc0729a Author: Christoph Lameter Date: Thu Jul 14 12:48:14 2011 -0500 Avoid duplicate _count variables in page_struct Restructure the union / struct cascade in struct page so that we only have one definition of _count. Tested-by: Hugh Dickins Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 3adf004d82c03ca9d57cbe960657757a71e4c2e7 Author: Pekka Enberg Date: Mon Jul 18 15:16:55 2011 +0300 Revert "SLUB: Fix build breakage in linux/mm_types.h" This reverts commit ea6bd8ee1a2ccdffc38b2b1fcfe941addfafaade. commit d3aaeb38c40e5a6c08dd31a1b64da65c4352be36 Author: David S. Miller Date: Mon Jul 18 00:40:17 2011 -0700 net: Add ->neigh_lookup() operation to dst_ops In the future dst entries will be neigh-less. In that environment we need to have an easy transition point for current users of dst->neighbour outside of the packet output fast path. Signed-off-by: David S. Miller commit c81c6b356b52d3fcb4d531d149573fc100aad643 Author: Clemens Ladisch Date: Sun Jul 17 22:18:05 2011 +0200 ALSA: virtuoso: fix silent analog output on Xonar Essence ST Deluxe Commit dd203fa97bd5 (ALSA: virtuoso: remove non-working controls on Essence ST Deluxe) made it impossible to adjust the volume after the driver initialized it to muted. Ensure that those DACs that can be accessed with I2C are initialized to the same volume that is the reset default of the DAC without I2C. Signed-off-by: Clemens Ladisch Cc: 2.6.38+ commit ffd96e35c16a99fdb490cc5723b8e32135ae5883 Author: Namhyung Kim Date: Mon Jul 18 17:38:51 2011 +1000 md/raid5: get rid of duplicated call to bio_data_dir() In raid5::make_request(), once bio_data_dir(@bi) is detected it never (and couldn't) be changed. Use the result always. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 6ce328462c1145a217ba1f27b882743be1407759 Author: Namhyung Kim Date: Mon Jul 18 17:38:50 2011 +1000 md/raid5: use kmem_cache_zalloc() Replace kmem_cache_alloc + memset(,0,) to kmem_cache_zalloc. I think it's not harmful since @conf->slab_cache already knows actual size of struct stripe_head. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit c65060ad4274f70048d62e0a86332cd3fd23f28d Author: Namhyung Kim Date: Mon Jul 18 17:38:49 2011 +1000 md/raid10: share pages between read and write bio's during recovery When performing a recovery, only first 2 slots in r10_bio are in use, for read and write respectively. However all of pages in the write bio are never used and just replaced to read bio's when the read completes. Get rid of those unused pages and share read pages properly. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 778ca01852e6cc9ff335119b37a1938a978df384 Author: Namhyung Kim Date: Mon Jul 18 17:38:47 2011 +1000 md/raid10: factor out common bio handling code When normal-write and sync-read/write bio completes, we should find out the disk number the bio belongs to. Factor those common code out to a separate function. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 2c4193df379bb89114ff60d4b0fa66131abe6a75 Author: Namhyung Kim Date: Mon Jul 18 17:38:43 2011 +1000 md/raid10: get rid of duplicated conditional expression Variable 'first' is initialized to zero and updated to @rdev->raid_disk only if it is greater than 0. Thus condition '>= first' always implies '>= 0' so the latter is not needed. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit e55b9422e186d208f162f056ee28b6eb6b9b81a9 Author: Alex Deucher Date: Fri Jul 15 19:53:52 2011 +0000 drm/radeon/kms: add info query for backend map The 3D driver need to get the pipe to backend map to certain things. Add a query to get the info. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 69cce1d1404968f78b177a0314f5822d5afdbbfb Author: David S. Miller Date: Sun Jul 17 23:09:49 2011 -0700 net: Abstract dst->neighbour accesses behind helpers. dst_{get,set}_neighbour() Signed-off-by: David S. Miller commit 9cbb7ecbcff85077bb12301aaf4c9b5a56c5993d Author: David S. Miller Date: Sun Jul 17 20:06:13 2011 -0700 ipv6: Get rid of rt6i_nexthop macro. It just makes it harder to see 1) what the code is doing and 2) grep for all users of dst{->,.}neighbour Signed-off-by: David S. Miller commit 8f40b161de4f27402b4c0659ad2ae83fad5a0cdd Author: David S. Miller Date: Sun Jul 17 13:34:11 2011 -0700 neigh: Pass neighbour entry to output ops. This will get us closer to being able to do "neigh stuff" completely independent of the underlying dst_entry for protocols (ipv4/ipv6) that wish to do so. We will also be able to make dst entries neigh-less. Signed-off-by: David S. Miller commit d46203159ed376fdbe2b05aa57e58207bf27a8f9 Author: Robin Dong Date: Sun Jul 17 23:43:42 2011 -0400 ext4: avoid eh_entries overflow before insert extent_idx If eh_entries is equal to (or greater than) eh_max, the operation of inserting new extent_idx will make number of entries overflow. So check eh_entries before inserting the new extent_idx. Although there is no bug case according the code (function ext4_ext_insert_index is called by ext4_ext_split and ext4_ext_split is called only if the index block has free space), the right logic should be "lookup the capacity before insertion". Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit 015861badd0db43d025bbb538f8fc62dfaf3f18d Author: Robin Dong Date: Sun Jul 17 23:27:43 2011 -0400 ext4: avoid wasted extent cache lookup if !PUNCH_OUT_EXT This patch avoids an extraneous lookup of the extent cache in ext4_ext_map_blocks() when the flag EXT4_GET_BLOCKS_PUNCH_OUT_EXT is absent. The existing logic was performing the lookup but not making use of the result. The patch simply reverses the order of evaluation in the condition. Since ext4_ext_in_cache() does not initialize newex on misses, bypassing its invocation does not introduce any new issue in this regard. Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" Reviewed-by: Lukas Czerner Reviewed-by: Eric Gouriou commit c6a0371cbefade85376bbc326d18451860632dce Author: Allison Henderson Date: Sun Jul 17 23:21:03 2011 -0400 ext4: remove unneeded parameter to ext4_ext_remove_space() This patch removes the extra parameter in ext4_ext_remove_space() which is no longer needed. Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" commit f7d0d3797fac6cad24ad9f86dd9baf65c586b434 Author: Allison Henderson Date: Sun Jul 17 23:17:02 2011 -0400 ext4: punch hole optimizations: skip un-needed extent lookup This patch optimizes the punch hole operation by skipping the tree walking code that is used by truncate. Since punch hole is done through map blocks, the path to the extent is already known in this function, so we do not need to look it up again. Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" commit 3eb08658431abd65c0fe6855d1860859c2d416f7 Author: Dan Ehrenberg Date: Sun Jul 17 21:18:51 2011 -0400 ext4: ignore a stripe width of 1 If the stripe width was set to 1, then this patch will ignore that stripe width and ext4 will act as if the stripe width were 0 with respect to optimizing allocations. Signed-off-by: Dan Ehrenberg Signed-off-by: "Theodore Ts'o" commit d7a1fee135771e6e5185642bdc17df19bbdbcc48 Author: Dan Ehrenberg Date: Sun Jul 17 21:11:30 2011 -0400 ext4: make the preallocation size be a multiple of stripe size Previously, if a stripe width was provided, then it would be used as the preallocation granularity, with no santiy checking and no way to override this. Now, mb_prealloc_size defaults to the smallest multiple of stripe size that is greater than or equal to the old default mb_prealloc_size, and this can be overridden with the sysfs interface. Signed-off-by: Dan Ehrenberg Signed-off-by: "Theodore Ts'o" commit 34006cee28f7344f9557a4be3816c7891b1bbab1 Author: Trond Myklebust Date: Sun Jul 17 18:11:34 2011 -0400 SUNRPC: Replace xprt->resend and xprt->sending with a priority queue Signed-off-by: Trond Myklebust commit 3b27bad7f7ceacca6d6c0ef647ffb38aa55a8336 Author: Trond Myklebust Date: Sun Jul 17 18:11:34 2011 -0400 SUNRPC: Allow caller of rpc_sleep_on() to select priority levels Currently, the caller has to change the value of task->tk_priority if it wants to select on which priority level the task will sleep. This patch allows the caller to select a priority level at sleep time rather than always using task->tk_priority. Signed-off-by: Trond Myklebust commit d9ba131d8f58c0d2ff5029e7002ab43f913b36f9 Author: Trond Myklebust Date: Sun Jul 17 18:11:30 2011 -0400 SUNRPC: Support dynamic slot allocation for TCP connections Allow the number of available slots to grow with the TCP window size. Signed-off-by: Trond Myklebust commit 21de0a955f3af29fa1100d96f66e6adade89e77a Author: Trond Myklebust Date: Sun Jul 17 16:57:32 2011 -0400 SUNRPC: Clean up the slot table allocation Signed-off-by: Trond Myklebust commit 8d9266ffe4332afc5ac9de401ef6f825b3798585 Author: Trond Myklebust Date: Sun Jul 17 16:01:09 2011 -0400 SUNRPC: Initalise the struct xprt upon allocation Signed-off-by: Trond Myklebust commit 43cedbf0e8dfb9c5610eb7985d5f21263e313802 Author: Trond Myklebust Date: Sun Jul 17 16:01:03 2011 -0400 SUNRPC: Ensure that we grab the XPRT_LOCK before calling xprt_alloc_slot This throttles the allocation of new slots when the socket is busy reconnecting and/or is out of buffer space. Signed-off-by: Trond Myklebust commit bc574e190d3fbed37d724e33a16aee326d6f2ac4 Merge: b0af8df db47ccc 345e397 Author: Arnd Bergmann Date: Sun Jul 17 21:48:22 2011 +0200 Merge branches 'omap/prcm' and 'omap/mfd' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/devel-2 commit 6c59c115b0f295434cc4f917d180fecd84d39f81 Merge: 3a6cb8c 257d643 Author: Arnd Bergmann Date: Sun Jul 17 21:44:10 2011 +0200 Merge branch 'omap/4460' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/soc commit 3a6cb8ce07d994f6e4a3679c5478d0f18b6b86c4 Merge: a990cbd 3d64b44 Author: Arnd Bergmann Date: Sun Jul 17 21:43:26 2011 +0200 Merge branch 'zynq/master' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/soc Conflicts: arch/arm/Kconfig arch/arm/mm/Kconfig commit c33d4326b60a3aea5cd070a365043f488f81a3b0 Merge: fe0d422 1ad9205 Author: Arnd Bergmann Date: Sun Jul 17 21:35:10 2011 +0200 Merge branch 'omap/board' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/board commit 69ecca86da4890c13a5e29c51b4ac76a1a8a62c9 Author: David Lamparter Date: Sun Jul 17 08:53:12 2011 +0000 net: vlan, qlcnic: make vlan_find_dev private there is only one user of vlan_find_dev outside of the actual vlan code: qlcnic uses it to iterate over some VLANs it knows. let's just make vlan_find_dev private to the VLAN code and have the iteration in qlcnic be a bit more direct. (a few rcu dereferences less too) Signed-off-by: David Lamparter Cc: Patrick McHardy Cc: Amit Kumar Salecha Cc: Anirban Chakraborty Cc: linux-driver@qlogic.com Signed-off-by: David S. Miller commit 178edcbc6b539dfc21062fed9bf31701a8952e1c Author: David Lamparter Date: Sun Jul 17 08:32:12 2011 +0000 net: add 802.1ad / 802.1ah / QinQ ethertypes define ETH_P_8021AD to 88a8 (assigned by IEEE) and add ETH_P_QINQ{1,2,3} for the pre-standard 9{1,2,3}00 types. all of them use 802.1q frame format, with 1 bit used differently in some cases. also define ETH_P_8021AH to 88e7 (assigned by IEEE). this is Mac-in-Mac and uses a different, 16-byte header. Signed-off-by: David Lamparter Signed-off-by: David S. Miller commit 4d09a938861ef16248334d57ae250e109b0004ae Merge: 93e85d8 8bb2c48 1459fc5 1c72f9e e04eb14 681e6ed fc5070b Author: Arnd Bergmann Date: Sun Jul 17 21:31:38 2011 +0200 Merge branches 'cns3xxx/devel', 'davinci/devel', 'imx/devel', 'lpc32xx/devel', 'pxa/devel', 'tegra/devel' and 'stericsson/master' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/devel commit 09dd9b39abf85b8fae3ea105a81825478dd227b6 Merge: 0420b32 56e580d fad1070 e1d62c9 226d3a1 Author: Arnd Bergmann Date: Sun Jul 17 21:28:52 2011 +0200 Merge branches 'davinci/cleanup', 'imx/cleanup', 'omap/cleanup' and 'pxa/cleanup' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/cleanup commit bcacff291c96c163da9341b764f0ccdeb97b38ad Merge: c8bbde4 6277839 6662498 Author: Arnd Bergmann Date: Sun Jul 17 21:27:28 2011 +0200 Merge branches 'at91/fixes', 'imx/fixes' and 'pxa/fixes' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc into next/fixes commit d184d6eb1dc3c9869e25a8e422be5c55ab0db4ac Author: Oleg Nesterov Date: Fri Jul 8 19:14:17 2011 +0200 ptrace: dont send SIGSTOP on auto-attach if PT_SEIZED The fake SIGSTOP during attach has numerous problems. PTRACE_SEIZE is already fine, but we have basically the same problems is SIGSTOP is sent on auto-attach, the tracer can't know if this signal signal should be cancelled or not. Change ptrace_event() to set JOBCTL_TRAP_STOP if the new child is PT_SEIZED, this triggers the PTRACE_EVENT_STOP report. Thereafter a PT_SEIZED task can never report the bogus SIGSTOP. Test-case: #define PTRACE_SEIZE 0x4206 #define PTRACE_SEIZE_DEVEL 0x80000000 #define PTRACE_EVENT_STOP 7 #define WEVENT(s) ((s & 0xFF0000) >> 16) int main(void) { int child, grand_child, status; long message; child = fork(); if (!child) { kill(getpid(), SIGSTOP); fork(); assert(0); return 0x23; } assert(ptrace(PTRACE_SEIZE, child, 0,PTRACE_SEIZE_DEVEL) == 0); assert(wait(&status) == child); assert(WIFSTOPPED(status) && WSTOPSIG(status) == SIGSTOP); assert(ptrace(PTRACE_SETOPTIONS, child, 0, PTRACE_O_TRACEFORK) == 0); assert(ptrace(PTRACE_CONT, child, 0,0) == 0); assert(waitpid(child, &status, 0) == child); assert(WIFSTOPPED(status) && WSTOPSIG(status) == SIGTRAP); assert(WEVENT(status) == PTRACE_EVENT_FORK); assert(ptrace(PTRACE_GETEVENTMSG, child, 0, &message) == 0); grand_child = message; assert(waitpid(grand_child, &status, 0) == grand_child); assert(WIFSTOPPED(status) && WSTOPSIG(status) == SIGTRAP); assert(WEVENT(status) == PTRACE_EVENT_STOP); kill(child, SIGKILL); kill(grand_child, SIGKILL); return 0; } Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit dcace06cc29df927a74a6bc0e57b9bef87704377 Author: Oleg Nesterov Date: Fri Jul 8 19:13:54 2011 +0200 ptrace: mv send-SIGSTOP from do_fork() to ptrace_init_task() If the new child is traced, do_fork() adds the pending SIGSTOP. It assumes that either it is traced because of auto-attach or the tracer attached later, in both cases sigaddset/set_thread_flag is correct even if SIGSTOP is already pending. Now that we have PTRACE_SEIZE this is no longer right in the latter case. If the tracer does PTRACE_SEIZE after copy_process() makes the child visible the queued SIGSTOP is wrong. We could check PT_SEIZED bit and change ptrace_attach() to set both PT_PTRACED and PT_SEIZED bits simultaneously but see the next patch, we need to know whether this child was auto-attached or not anyway. So this patch simply moves this code to ptrace_init_task(), this way we can never race with ptrace_attach(). Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 6634ae1033ceaeca5877dd75723210f8c2648c17 Author: Oleg Nesterov Date: Fri Jul 8 19:13:39 2011 +0200 ptrace_init_task: initialize child->jobctl explicitly new_child->jobctl is not initialized during the fork, it is copied from parent->jobctl. Currently this is harmless, the forking task is running and copy_process() can't succeed if signal_pending() is true, so only JOBCTL_STOP_DEQUEUED can be copied. Still this is a bit fragile, it would be more clean to set ->jobctl = 0 explicitly. Also, check ->ptrace != 0 instead of PT_PTRACED, move the CONFIG_HAVE_HW_BREAKPOINT code up. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 961c4675c75112717705fa5c0c53cb9664051479 Author: Oleg Nesterov Date: Thu Jul 7 21:33:54 2011 +0200 has_stopped_jobs: s/task_is_stopped/SIGNAL_STOP_STOPPED/ has_stopped_jobs() naively checks task_is_stopped(group_leader). This was always wrong even without ptrace, group_leader can be dead. And given that ptrace can change the state to TRACED this is wrong even in the single-threaded case. Change the code to check SIGNAL_STOP_STOPPED and simplify the code, retval + break/continue doesn't make this trivial code more readable. We could probably add the usual "|| signal->group_stop_count" check but I don't think this makes sense, the task can start the group-stop right after the check anyway. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 440085598672c0e3fde8a48495f61fea418b06d1 Merge: b0b3e6f b793eb6 Author: Mark Brown Date: Sun Jul 17 18:25:58 2011 +0900 Merge branch 'for-3.0' into for-3.1 commit b0b3e6f86178723878dbe401c4ba192172a8acdd Author: Mark Brown Date: Sat Jul 16 10:55:08 2011 +0900 ASoC: Don't use -1 to boostrap subseq so it can be used by drivers Makes life a little easier if you want to add subsequences to an existing driver as you can use -1 to put things at the start of sequences. Signed-off-by: Mark Brown commit 7453ea886e875544b50aa43b6f86313421bbc492 Author: Greg Kroah-Hartman Date: Sun Jul 17 11:13:39 2011 +0200 Revert "gma500: Fix dependencies" This reverts commit 66dca5178c70b7bb5ae1761e175569eac8708e1e. It caused build errors on some platforms: drivers/video/Kconfig:36:error: recursive dependency detected! drivers/video/Kconfig:36: symbol FB is selected by DRM_KMS_HELPER drivers/gpu/drm/Kconfig:22: symbol DRM_KMS_HELPER is selected by DRM_PSB drivers/staging/gma500/Kconfig:1: symbol DRM_PSB depends on ACPI_VIDEO Reported-by: Stephen Rothwell Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7d02173cd17a1ac3db04aa9b9e5de153f2d02dd5 Author: Mark Brown Date: Thu Jul 14 17:11:38 2011 +0900 ASoC: Reduce power consumption for idle DAIs in WM8994 If DAIs are idle but their clocks are in use for some reason (eg, as SYSCLK or for accessory detect) then set the clock dividers to the maximum to reduce slightly the power consumption of the unclocked circuits. Signed-off-by: Mark Brown commit ca1004bab9c6829e64036f7da5e25a698756ee28 Author: Mark Brown Date: Sat Jul 16 11:34:58 2011 +0900 ASoC: Report an error for unknown adav80x formats Not only fixes error handling but also some uninitialized variable warnings. Signed-off-by: Mark Brown Acked-by: Lars-Peter Clausen commit f0f5039c3dcc6f80756128aa38f2a4f5b895bbf1 Author: Mark Brown Date: Sat Jul 16 03:12:18 2011 +0900 ASoC: Handle failed WM8994 FLL lock waits Try the completion before we start the FLL so that if an interrupt was delayed long enough for us to miss it we don't wait for the completion it signalled. Signed-off-by: Mark Brown commit 542d4d685febf3110d1a08d0bcb9f6ef060b76f7 Author: David S. Miller Date: Sat Jul 16 18:06:24 2011 -0700 neigh: Kill ndisc_ops->queue_xmit It is always dev_queue_xmit(). Signed-off-by: David S. Miller commit b23b5455b6458920179a1f27513ce42e70d11f37 Author: David S. Miller Date: Sat Jul 16 17:45:02 2011 -0700 neigh: Kill hh_cache->hh_output It's just taking on one of two possible values, either neigh_ops->output or dev_queue_xmit(). And this is purely depending upon whether nud_state has NUD_CONNECTED set or not. Signed-off-by: David S. Miller commit 47ec132a40d788d45e2f088545dea68798034dab Author: David S. Miller Date: Sat Jul 16 17:39:57 2011 -0700 neigh: Kill neigh_ops->hh_output It's always dev_queue_xmit(). Signed-off-by: David S. Miller commit 0895b08adeb3f660cdff21990d0a9c2b59a919e7 Author: David S. Miller Date: Sat Jul 16 17:36:53 2011 -0700 neigh: Simply destroy handling wrt. hh_cache. Now that hh_cache entries are embedded inside of neighbour entries, their lifetimes and accesses are now synchronous to that of the encompassing neighbour object. Therefore we don't need to hook up the blackhole op to hh_output on destroy. Signed-off-by: David S. Miller commit 05e3aa0949c138803185f92bd7db9be59cfca1be Author: David S. Miller Date: Sat Jul 16 17:26:00 2011 -0700 net: Create and use new helper, neigh_output(). Signed-off-by: David S. Miller commit 265c6a0f9290c8f470b839257dc6af3c46b24da1 Author: Bernd Schubert Date: Sat Jul 16 19:41:23 2011 -0400 ext4: fix compilation with -DDX_DEBUG Compilation of ext4/namei.c brought up an error and warning messages when compiled with -DDX_DEBUG Signed-off-by: Bernd Schubert Signed-off-by: "Theodore Ts'o" commit a29282972cc9b80126d4e4d68251c6712bdad051 Author: David S. Miller Date: Sat Jul 16 14:30:47 2011 -0700 ipv6: Use calculated 'neigh' instead of re-evaluating dst->neighbour Signed-off-by: David S. Miller commit fec8292d9cb662274b583c5c69fdfa6932e593a5 Author: David S. Miller Date: Sat Jul 16 14:25:54 2011 -0700 ipv4: Use calculated 'neigh' instead of re-evaluating dst->neighbour Signed-off-by: David S. Miller commit faa2831445cdc95774584045fe10f749fa62244e Author: Dmitry Kravkov Date: Sat Jul 16 13:35:51 2011 -0700 bnx2x: Fix compilation when CNIC is not selected in config Reported-by: Randy Dunlap Signed-off-by: Dmitry Kravkov Signed-off-by: David S. Miller commit 2d9a8db54c4b1e206adb3b7942aefd544306560f Author: Jeff Kirsher Date: Sat Jul 16 12:35:27 2011 -0700 68360enet: Remove Kconfig/Makefile references 68360enet.c no longer exists, and from the research, it appears that 68360enet.c became fec.c back in 2004. The Kconfig and Makefile references were never cleaned up. This patch removes this "dead" references. Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit cd6340199f65cad63262db0fd561bdcfd69df3bd Author: Michael Chan Date: Fri Jul 15 06:53:58 2011 +0000 bnx2: Close device if tx_timeout reset fails Based on original patch and description from Flavio Leitner When bnx2_reset_task() is called, it will stop, (re)initialize and start the interface to restore the working condition. The bnx2_init_nic() calls bnx2_reset_nic() which will reset the chip and then calls bnx2_free_skbs() to free all the skbs. The problem happens when bnx2_init_chip() fails because bnx2_reset_nic() will just return skipping the ring initializations at bnx2_init_all_rings(). Later, the reset task starts the interface again and the system crashes due a NULL pointer access (no skb in the ring). To fix it, we call dev_close() if bnx2_init_nic() fails. One minor wrinkle to deal with is the cancel_work_sync() call in bnx2_close() to cancel bnx2_reset_task(). The call will wait forever because it is trying to cancel itself and the workqueue will be stuck. Since bnx2_reset_task() holds the rtnl_lock() and checks for netif_running() before proceeding, there is no need to cancel bnx2_reset_task() in bnx2_close() even if bnx2_close() and bnx2_reset_task() are running concurrently. The rtnl_lock() serializes the 2 calls. We need to move the cancel_work_sync() call to bnx2_remove_one() to make sure it is canceled before freeing the netdev struct. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Cc: Flavio Leitner Signed-off-by: David S. Miller commit b3c2ce131c7cd8c53b72b0cc04241cde17ce0c1d Author: Emmanuel Grumbach Date: Thu Jul 7 15:50:10 2011 +0300 iwlagn: add tx start API to transport layer tx start will start the tx queues: basically configure the SCD Remove the IWLAGN prefix to SCD defines on the way. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 1a361cd838173879672cb0f0ebe1e7654d7edff6 Author: Emmanuel Grumbach Date: Mon Jul 11 07:44:57 2011 -0700 iwlagn: move all the ICT related functions to iwl-trans-rx-pcie.c Since the ICT is transport related, move all its functions to the transport layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit ab6cf8e816bad473a1496f2006bea3a3849c2519 Author: Emmanuel Grumbach Date: Thu Jul 7 14:37:26 2011 +0300 iwlagn: move iwlagn_stop_device to transport layer Since iwlagn_stop_device was the only caller to the rx_stop / tx_stop, these two don't need to be API any more. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 253a634ccd1b291282cd0cade219bd90eb0371eb Author: Emmanuel Grumbach Date: Mon Jul 11 07:39:46 2011 -0700 iwlagn: move tx transport functions to iwl-trans-tx-pcie.c There are still a few functions here and there that should be put in the transport layer. Mainly the functions that are related to the reclaim flow. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit ab697a9f1e73ba817955e15bd899a8a0627f9fd6 Author: Emmanuel Grumbach Date: Mon Jul 11 07:35:34 2011 -0700 iwlagn: move rx transport functions to iwl-trans-rx-pcie.c Also create a new file: iwl-trans-int-pcie.h which will include the non static functions that are shared among the current pcie transport layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 4caab328eeea02b244765c355f9d875f8f5f6093 Author: Fry, Donald H Date: Thu Jul 7 15:24:07 2011 -0700 iwlagn: remove indirection for iwlagn_hw_valid_rtc_data_addr Not needed since the driver split. Signed-off-by: Don Fry Signed-off-by: Wey-Yi Guy commit 45d50024a766ef757f3ef7ca7d4f8fb38c5a79f0 Author: Wey-Yi Guy Date: Thu Jul 7 12:24:46 2011 -0700 iwlagn: calibration bitmap Define bitmap for calibration Signed-off-by: Wey-Yi Guy commit 6ff88a6414364d75ebd514d1efa11fbba603ac04 Author: Hsu, Kenny Date: Thu Jul 7 03:10:27 2011 -0700 iwlagn: set default of uCode ownership to driver The driver should take the ownership of the uCode as default setting for later operations after interface up. Signed-off-by: Kenny Hsu Signed-off-by: Wey-Yi Guy commit 2c2def10d03554c0f8ed02f5b5a2a8526958f6a3 Author: Johannes Berg Date: Thu Jul 7 05:11:51 2011 -0700 iwlagn: simplify TX flags assignments The first assignment of TX_CMD_FLG_SEQ_CTL_MSK for ack-expected mgmt frames is overwritten later in the function, so it's useless. Also, probe response frames, BACK request and others there are mutually exclusive so can be moved into an else branch. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 47365ab858a7f452e79437d1a44488245e903f37 Author: Emmanuel Grumbach Date: Thu Jul 7 09:25:51 2011 -0700 iwlagn: add comment to tx and get_tx_cmd in iwl_trans_ops Those comments were missed in a previous commit. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 7ed9af71684be2ee0366d0a30e8b0bda39126c3f Author: Wey-Yi Guy Date: Wed Jul 6 16:28:48 2011 -0700 iwlagn: comments for iwl_cfg Modify the comments for iwl_cfg, no functional changes Signed-off-by: Wey-Yi Guy commit e4305fe91f986aa3c56fbc18f0a8ecf05d65f26d Author: Wey-Yi Guy Date: Wed Jul 6 16:28:47 2011 -0700 iwlagn: another double indirect removed Another clean up work after driver split Signed-off-by: Wey-Yi Guy commit 90c300cbd89e76789dbff101a1cb1ec226af277f Author: Wey-Yi Guy Date: Thu Jul 7 08:33:01 2011 -0700 iwlagn: remove dual-indirect call to simply the code After driver split, no need to make the code so complex Signed-off-by: Wey-Yi Guy commit e505c433d35900d98870a2e266759166a03030dc Author: Wey-Yi Guy Date: Thu Jul 7 08:27:41 2011 -0700 iwlagn: remove un-necessary file Most of the functions in iwl-agn-hcmd are move to other files, no point to keep the file anymore. Signed-off-by: Wey-Yi Guy commit 1ab9f6c11b003d086ae4890ea202cc3c66f5a17a Author: Emmanuel Grumbach Date: Thu Jul 7 07:59:02 2011 -0700 iwlagn: move the Rx dispatching to the upper layer The upper layer receives a pointer to an iwl_rx_mem_buffer. I would prefer the upper layer to receive a pointer to an iwl_rx_packet, but this is impossible since the Rx path needs to add the address of the page to the skb. I may find a solution later. All the pre_rx_handler and notification code has been moved to the upper layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit a27367d25da06c24e0379ad4489542016ff11dbb Author: Emmanuel Grumbach Date: Mon Jul 4 09:06:44 2011 +0300 iwlagn: move sync_irq to transport layer Since all the irq / tasklet is now handled in the transport layer, it should give an API to ensure that all the irq / tasklet have finished running. This will allow the upper layer to release all its resources. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 34c1b7ba127d1815b3dd1cb81cc4338ce0e712b7 Author: Emmanuel Grumbach Date: Mon Jul 4 08:58:19 2011 +0300 iwlagn: move the tasklet / irq to the transport layer PCIe doesn't provide any ISR registration API, whereas other buses do. Hence, we need to move the tasklet and irq to the transport layer to allow this flexibility. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 47c1b496015e41e1068878814596af9a45d4fa84 Author: Emmanuel Grumbach Date: Sun Jul 3 11:22:15 2011 +0300 iwlagn: move Tx datapath to transport layer Split the Tx datapath in two parts: * the first deals with the Tx cmd composition * the second attaches the skb + Tx cmd to the queues Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 6ea12a04d295235ed67010a09fdea58c949e3eb0 Author: Alan Stern Date: Fri Jul 15 17:22:15 2011 -0400 USB: OHCI: fix another regression for NVIDIA controllers The NVIDIA series of OHCI controllers continues to be troublesome. A few people using the MCP67 chipset have reported that even with the most recent kernels, the OHCI controller fails to handle new connections and spams the system log with "unable to enumerate USB port" messages. This is different from the other problems previously reported for NVIDIA OHCI controllers, although it is probably related. It turns out that the MCP67 controller does not like to be kept in the RESET state very long. After only a few seconds, it decides not to work any more. This patch (as1479) changes the PCI initialization quirk code so that NVIDIA controllers are switched into the SUSPEND state after 50 ms of RESET. With no interrupts enabled and all the downstream devices reset, and thus unable to send wakeup requests, this should be perfectly safe (even for non-NVIDIA hardware). The removal code in ohci-hcd hasn't been changed; it will still leave the controller in the RESET state. As a result, if someone unloads ohci-hcd and then reloads it, the controller won't work again until the system is rebooted. If anybody complains about this, the removal code can be updated similarly. This fixes Bugzilla #22052. Tested-by: Larry Finger Cc: stable Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c06d4958922118dde4b35c47d6ec48dffe9ce73a Author: Alan Cox Date: Fri Jul 15 19:34:26 2011 +0100 gma500: Add medfield header Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9a00c24ae7cb08dcd46edf1327a47871e8466444 Author: Stefan Richter Date: Sat Jul 9 16:48:29 2011 +0200 firewire: document the sysfs ABIs of firewire-core and firewire-sbp2. Signed-off-by: Stefan Richter commit f6a7cd0212c359f7b55414aeee364ee7cac363cc Author: Stefan Richter Date: Thu Jul 14 21:08:39 2011 +0200 firewire: cdev: ABI documentation enhancements Add overview documentation in Documentation/ABI/stable/firewire-cdev. Improve the inline reference documentation in firewire-cdev.h: - Add /* available since kernel... */ comments to event numbers consistent with the comments on ioctl numbers. - Shorten some documentation on an event and an ioctl that are less interesting to current programming because there are newer preferable variants. - Spell Configuration ROM (name of an IEEE 1212 register) in upper case. - Move the dummy FW_CDEV_VERSION out of the reader's field of vision. We should remove it from the header next year or so. Signed-off-by: Stefan Richter commit 93b37905f70083d6143f5f4dba0a45cc64379a62 Author: Stefan Richter Date: Sat Jul 9 16:43:22 2011 +0200 firewire: cdev: prevent race between first get_info ioctl and bus reset event queuing Between open(2) of a /dev/fw* and the first FW_CDEV_IOC_GET_INFO ioctl(2) on it, the kernel already queues FW_CDEV_EVENT_BUS_RESET events to be read(2) by the client. The get_info ioctl is practically always issued right away after open, hence this condition only occurs if the client opens during a bus reset, especially during a rapid series of bus resets. The problem with this condition is twofold: - These bus reset events carry the (as yet undocumented) @closure value of 0. But it is not the kernel's place to choose closures; they are privat to the client. E.g., this 0 value forced from the kernel makes it unsafe for clients to dereference it as a pointer to a closure object without NULL pointer check. - It is impossible for clients to determine the relative order of bus reset events from get_info ioctl(2) versus those from read(2), except in one way: By comparison of closure values. Again, such a procedure imposes complexity on clients and reduces freedom in use of the bus reset closure. So, change the ABI to suppress queuing of bus reset events before the first FW_CDEV_IOC_GET_INFO ioctl was issued by the client. Note, this ABI change cannot be version-controlled. The kernel cannot distinguish old from new clients before the first FW_CDEV_IOC_GET_INFO ioctl. We will try to back-merge this change into currently maintained stable/ longterm series, and we only document the new behaviour. The old behavior is now considered a kernel bug, which it basically is. Signed-off-by: Stefan Richter Cc: commit d873d794235efa590ab3c94d5ee22bb1fab19ac4 Author: Stefan Richter Date: Sat Jul 9 16:42:26 2011 +0200 firewire: cdev: return -ENOTTY for unimplemented ioctls, not -EINVAL On Jun 27 Linus Torvalds wrote: > The correct error code for "I don't understand this ioctl" is ENOTTY. > The naming may be odd, but you should think of that error value as a > "unrecognized ioctl number, you're feeding me random numbers that I > don't understand and I assume for historical reasons that you tried to > do some tty operation on me". [...] > The EINVAL thing goes way back, and is a disaster. It predates Linux > itself, as far as I can tell. You'll find lots of man-pages that have > this line in it: > > EINVAL Request or argp is not valid. > > and it shows up in POSIX etc. And sadly, it generally shows up > _before_ the line that says > > ENOTTY The specified request does not apply to the kind of object > that the descriptor d references. > > so a lot of people get to the EINVAL, and never even notice the ENOTTY. [...] > At least glibc (and hopefully other C libraries) use a _string_ that > makes much more sense: strerror(ENOTTY) is "Inappropriate ioctl for > device" So let's correct this in the ABI while it is still young, relative to distributor adoption. Side note: We return -ENOTTY not only on _IOC_TYPE or _IOC_NR mismatch, but also on _IOC_SIZE mismatch. An ioctl with an unsupported size of argument structure can be seen as an unsupported version of that ioctl. Signed-off-by: Stefan Richter Cc: commit 8c11642a50555e584774737f7c296f9aece310cf Merge: 5d10302 620917d Author: Grant Likely Date: Fri Jul 15 20:11:34 2011 -0600 Merge commit 'v3.0-rc7' into devicetree/next commit 250bae8be0177fcc1435cb46d1aba7e40a0366b2 Author: Steven Rostedt Date: Fri Jul 15 22:05:59 2011 -0400 ktest: Fix bug when ADD_CONFIG is set but MIN_CONFIG is not The MIN_CONFIG is a single config that is considered to have all the configs that are required to boot the box. ADD_CONFIG is a list of configs that we add that may contain configs known to be broken (set off) or just configs that we want every box to have and this can include shared configs. If a config has no MIN_CONFIG defined, but has multiple files defined for the ADD_CONFIG, the test will die, because the MIN_CONFIG will default to ADD_CONFIG. The problem is the code to open MIN_CONFIG expects a string of one file, not multiple, and the open will fail. Since the real minconfig that is used is a concatination of MIN_CONFIG and ADD_CONFIG files, we change the code to open that instead of whatever MIN_CONFIG defaults to. Signed-off-by: Steven Rostedt commit 43d1b6518e523df1bd15f07be480d10a9eb043bc Author: Steven Rostedt Date: Fri Jul 15 22:01:56 2011 -0400 ktest: Keep fonud configs separate from default configs The IGNORE_CONFIG file holds the configs that we don't want to change (with their proper settings). But on start up, the make noconfig is executed, and the configs that are on are also put into the ignore config category. But these are configs that were forced on by the kconfig scripts and not something that we found must be enabled to boot our machine. By keeping the configs that are forced on by default, separate from the configs we found that are required to boot the box, we can get a much more interesting IGNORE_CONFIG. In fact, the IGNORE_CONFIG can usually end up being the must have configs to boot, and only have 6 or 7 configs set. Signed-off-by: Steven Rostedt commit 35ce5952e62bc72520e6a7dbcfa4baf8c9f9eedb Author: Steven Rostedt Date: Fri Jul 15 21:57:25 2011 -0400 ktest: Add prompt to use OUTPUT_MIN_CONFIG If the defined OUTPUT_MIN_CONFIG in the make_min_config test exists, then give a prompt to ask the user if they want to use that config instead, as it is very often the case, especially when the test has been interrupted. The OUTPUT_MIN_CONFIG is usually the config that one wants to use to continue the test where they left off. But if START_MIN_CONFIG is defined (thus the MIN_CONFIG is not the default), then do not prompt, as it will be annoying if the user has this as one of many tests, and the test pauses waiting for input, while the user is sleeping. Signed-off-by: Steven Rostedt commit b9066f6c0e215386d4b888eaedd739397b987421 Author: Steven Rostedt Date: Fri Jul 15 21:25:24 2011 -0400 ktest: Use Kconfig dependencies to shorten time to make min_config To save time, the test does not just grab any option and test it. The Kconfig files are examined to determine the dependencies of the configs. If a config is chosen that depends on another config, that config will be checked first. By checking the parents first, we can eliminate whole groups of configs that may have been enabled. For example, if a USB device config is chosen and depends on CONFIG_USB, the CONFIG_USB will be tested before the device. If CONFIG_USB is found not to be needed, it, as well as all configs that depend on it, will be disabled and removed from the current min_config. Note, the code from streamline_config (make localmodconfig) was copied and used to find the dependencies in the Kconfig file. Signed-off-by: Steven Rostedt commit 4c4ab1204fe4e201ece94c3062aa6b5eed670457 Author: Steven Rostedt Date: Fri Jul 15 21:16:17 2011 -0400 ktest: Add test type make_min_config After doing a make localyesconfig, your kernel configuration may not be the most useful minimum configuration. Having a true minimum config that you can use against other configs is very useful if someone else has a config that breaks on your code. By only forcing those configurations that are truly required to boot your machine will give you less of a chance that one of your set configurations will make the bug go away. This will give you a better chance to be able to reproduce the reported bug matching the broken config. Note, this does take some time, and may require you to run the test over night, or perhaps over the weekend. But it also allows you to interrupt it, and gives you the current minimum config that was found till that time. Note, this test automatically assumes a BUILD_TYPE of oldconfig and its test type acts like boot. TODO: add a test version that makes the config do more than just boot, like having network access. Signed-off-by: Steven Rostedt commit f85ef69ce08bc2209858135328335f668ba35bdb Author: J. Bruce Fields Date: Fri Jul 15 19:18:42 2011 -0400 pnfs: simplify pnfs files module autoloading Embed the necessary alias into the module rather than waiting for someone to add it to /etc/modprobe.conf Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit 674e405b8b3310702fd43d314f5f432ec2cb9980 Author: J. Bruce Fields Date: Fri Jul 15 19:09:08 2011 -0400 nfs: document nfsv4 sillyrename issues Somebody working on this code asked what the deal was with NFSv4, since this comment notes that it's v2/v3's statelessness that requires sillyrename. Shouldn't hurt to document the answer. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit ab1350b2b3c1dd2e465a6abdda608d8c44facfb8 Author: Mi Jinlong Date: Thu Jul 14 15:06:26 2011 +0800 nfsd41: Deny new lock before RECLAIM_COMPLETE done Before nfs41 client's RECLAIM_COMPLETE done, nfs server should deny any new locks or opens. rfc5661: " Whenever a client establishes a new client ID and before it does the first non-reclaim operation that obtains a lock, it MUST send a RECLAIM_COMPLETE with rca_one_fs set to FALSE, even if there are no locks to reclaim. If non-reclaim locking operations are done before the RECLAIM_COMPLETE, an NFS4ERR_GRACE error will be returned. " Signed-off-by: Mi Jinlong Signed-off-by: J. Bruce Fields commit ee19cc406d4c0ae3118f59e000984d935b372871 Author: Miklos Szeredi Date: Thu Jul 7 13:06:09 2011 +0200 fs: locks: remove init_once From: Miklos Szeredi Remove SLAB initialization entirely, as suggested by Bruce and Linus. Allocate with __GFP_ZERO instead and only initialize list heads. Signed-off-by: Miklos Szeredi Signed-off-by: J. Bruce Fields commit ae82a8d06fee573def55b63868b1ea109461a531 Author: Mi Jinlong Date: Thu Jul 14 14:56:02 2011 +0800 nfsd41: check the size of request Check in SEQUENCE that the request doesn't exceed maxreq_sz for the given session. Signed-off-by: Mi Jinlong Signed-off-by: J. Bruce Fields commit 1b74c25bc1a142ee8dd7ad080e2a974f28d1cb18 Author: Mi Jinlong Date: Thu Jul 14 14:50:17 2011 +0800 nfsd41: error out when client sets maxreq_sz or maxresp_sz too small According to RFC5661, 18.36.3, "if the client selects a value for ca_maxresponsesize such that a replier on a channel could never send a response,the server SHOULD return NFS4ERR_TOOSMALL in the CREATE_SESSION reply." So, error out when the client sets a maxreq_sz less than the minimum possible SEQUENCE request size, or sets a maxresp_sz less than the minimum possible SEQUENCE reply size. Signed-off-by: Mi Jinlong Signed-off-by: J. Bruce Fields commit f197c27196a5e7631b89e2e92daa096fcf7c302c Author: J. Bruce Fields Date: Wed Jun 29 08:23:50 2011 -0400 nfsd4: fix file leak on open_downgrade Stateid's hold a read reference for a read open, a write reference for a write open, and an additional one of each for each read+write open. The latter wasn't getting put on a downgrade, so something like: open RW open R downgrade to R was resulting in a file leak. Also fix an imbalance in an error path. Regression from 7d94784293096c0a46897acdb83be5abd9278ece "nfsd4: fix downgrade/lock logic". Cc: stable@kernel.org Signed-off-by: J. Bruce Fields commit 499f3edc23ca0431f3a0a6736b3a40944c81bf3b Author: J. Bruce Fields Date: Mon Jun 27 16:57:12 2011 -0400 nfsd4: remember to put RW access on stateid destruction Without this, for example, open read open read+write close will result in a struct file leak. Regression from 7d94784293096c0a46897acdb83be5abd9278ece "nfsd4: fix downgrade/lock logic". Cc: stable@kernel.org Signed-off-by: J. Bruce Fields commit 17456804546b78a1c13d2b934c8f50bbde141a38 Author: Bryan Schumaker Date: Wed Jul 13 10:50:48 2011 -0400 NFSD: Added TEST_STATEID operation This operation is used by the client to check the validity of a list of stateids. Signed-off-by: Bryan Schumaker Signed-off-by: J. Bruce Fields commit e1ca12dfb1be7fe8b82ca723a9b511f7d808bf81 Author: Bryan Schumaker Date: Wed Jul 13 11:04:21 2011 -0400 NFSD: added FREE_STATEID operation This operation is used by the client to tell the server to free a stateid. Signed-off-by: Bryan Schumaker Signed-off-by: J. Bruce Fields commit ebc63e531cc6a457595dd110b07ac530eae788c3 Author: J. Bruce Fields Date: Wed Jun 29 16:49:04 2011 -0400 svcrpc: fix list-corrupting race on nfsd shutdown After commit 3262c816a3d7fb1eaabce633caa317887ed549ae "[PATCH] knfsd: split svc_serv into pools", svc_delete_xprt (then svc_delete_socket) no longer removed its xpt_ready (then sk_ready) field from whatever list it was on, noting that there was no point since the whole list was about to be destroyed anyway. That was mostly true, but forgot that a few svc_xprt_enqueue()'s might still be hanging around playing with the about-to-be-destroyed list, and could get themselves into trouble writing to freed memory if we left this xprt on the list after freeing it. (This is actually functionally identical to a patch made first by Ben Greear, but with more comments.) Cc: stable@kernel.org Cc: gnb@fmeh.org Reported-by: Ben Greear Tested-by: Ben Greear Signed-off-by: J. Bruce Fields commit 058c5c99999609e3de7e15b49049665f02d06577 Author: J. Bruce Fields Date: Wed Jun 22 10:50:08 2011 -0400 rpc: allow autoloading of gss mechanisms Remove the need for an explicit modprobe of rpcsec_gss_krb5. Signed-off-by: J. Bruce Fields commit 13e0e958e8e06d27a2c69b2ace8c11d256b52d67 Author: H Hartley Sweeten Date: Mon Jun 20 18:19:12 2011 -0700 svcauth_unix.c: quiet sparse noise Like svcauth_unix, the symbol svcauth_null is used external from this file. Declare it as extern to quiet the following sparse noise: warning: symbol 'svcauth_null' was not declared. Should it be static? Signed-off-by: H Hartley Sweeten Cc: Trond Myklebust Cc: "J. Bruce Fields" Cc: Neil Brown Cc: "David S. Miller" Signed-off-by: J. Bruce Fields commit 177e4f998bb3a1a723d1ad200e9a7c7c20490f17 Author: H Hartley Sweeten Date: Mon Jun 20 17:54:51 2011 -0700 svcsock.c: include sunrpc.h to quiet sparse noise Include the private header sunrpc.h to pickup the declaration of the function svc_send_common to quiet the following sparse noise: warning: symbol 'svc_send_common' was not declared. Should it be static? Signed-off-by: H Hartley Sweeten Cc: Trond Myklebust Cc: "J. Bruce Fields" Cc: Neil Brown Cc: "David S. Miller" Signed-off-by: J. Bruce Fields commit 49b28684fdba2c84a3b8e54aaa0faa9ce2e4f140 Author: NeilBrown Date: Tue Jun 21 15:27:43 2011 +1000 nfsd: Remove deprecated nfsctl system call and related code. As promised in feature-removal-schedule.txt it is time to remove the nfsctl system call. Userspace has perferred to not use this call throughout 2.6 and it has been excluded in the default configuration since 2.6.36 (9 months ago). So this patch removes all the code that was being compiled out. There are still references to sys_nfsctl in various arch systemcall tables and related code. These should be cleaned out too, probably in the next merge window. Signed-off-by: NeilBrown Signed-off-by: J. Bruce Fields commit 094b5d74f4005ae1cc90688f2c814e00937809a8 Author: Benny Halevy Date: Thu Jun 16 11:39:10 2011 -0400 NFSD: allow OP_DESTROY_CLIENTID to be only op in COMPOUND DESTROY_CLIENTID MAY be preceded with a SEQUENCE operation as long as the client ID derived from the session ID of SEQUENCE is not the same as the client ID to be destroyed. If the client IDs are the same, then the server MUST return NFS4ERR_CLIENTID_BUSY. (that's not implemented yet) If DESTROY_CLIENTID is not prefixed by SEQUENCE, it MUST be the only operation in the COMPOUND request (otherwise, the server MUST return NFS4ERR_NOT_ONLY_OP). This fixes the error return; before, we returned NFS4ERR_OP_NOT_IN_SESSION; after this patch, we return NFS4ERR_NOTSUPP. Signed-off-by: Benny Halevy Signed-off-by: J. Bruce Fields commit 17edf2d79f1ea6dfdb4c444801d928953b9f98d6 Author: Len Brown Date: Fri Jul 15 17:37:15 2011 -0400 x86, intel, power: Correct the MSR_IA32_ENERGY_PERF_BIAS message Fix the printk_once() so that it actually prints (didn't print before due to a stray comma.) [ hpa: changed to an incremental patch and adjusted the description accordingly. ] Signed-off-by: Len Brown Link: http://lkml.kernel.org/r/alpine.LFD.2.02.1107151732480.18606@x980 Cc: Signed-off-by: H. Peter Anvin commit 7ae033cc0dfce68d8e0c83aca60837cf2bf0d2e6 Merge: ba1389d c8c9fda Author: Rafael J. Wysocki Date: Fri Jul 15 23:59:25 2011 +0200 Merge branch 'pm-runtime' into for-linus * pm-runtime: OMAP: PM: disable idle on suspend for GPIO and UART OMAP: PM: omap_device: add API to disable idle on suspend OMAP: PM: omap_device: add system PM methods for PM domain handling OMAP: PM: omap_device: conditionally use PM domain runtime helpers PM / Runtime: Add new helper function: pm_runtime_status_suspended() PM / Runtime: Consistent utilization of deferred_resume PM / Runtime: Prevent runtime_resume from racing with probe PM / Runtime: Replace "run-time" with "runtime" in documentation PM / Runtime: Improve documentation of enable, disable and barrier PM: Limit race conditions between runtime PM and system sleep (v2) PCI / PM: Detect early wakeup in pci_pm_prepare() PM / Runtime: Return special error code if runtime PM is disabled PM / Runtime: Update documentation of interactions with system sleep commit ba1389d74f34c0c6e95cc135a332cd29c29d9c20 Merge: f0c077a 5ca8081 Author: Rafael J. Wysocki Date: Fri Jul 15 23:59:09 2011 +0200 Merge branch 'pm-domains' into for-linus * pm-domains: (33 commits) ARM / shmobile: Return -EBUSY from A4LC power off if A3RV is active PM / Domains: Take .power_off() error code into account ARM / shmobile: Use genpd_queue_power_off_work() ARM / shmobile: Use pm_genpd_poweroff_unused() PM / Domains: Introduce function to power off all unused PM domains PM / Domains: Queue up power off work only if it is not pending PM / Domains: Improve handling of wakeup devices during system suspend PM / Domains: Do not restore all devices on power off error PM / Domains: Allow callbacks to execute all runtime PM helpers PM / Domains: Do not execute device callbacks under locks PM / Domains: Make failing pm_genpd_prepare() clean up properly PM / Domains: Set device state to "active" during system resume ARM: mach-shmobile: sh7372 A3RV requires A4LC PM / Domains: Export pm_genpd_poweron() in header ARM: mach-shmobile: sh7372 late pm domain off ARM: mach-shmobile: Runtime PM late init callback ARM: mach-shmobile: sh7372 D4 support ARM: mach-shmobile: sh7372 A4MP support ARM: mach-shmobile: sh7372: make sure that fsi is peripheral of spu2 ARM: mach-shmobile: sh7372 A3SG support ... commit f0c077a8b7f9dce590c760a7b2f3c417dffa52d1 Author: Akinobu Mita Date: Fri Jul 8 20:53:36 2011 +0200 PM: Improve error code of pm_notifier_call_chain() This enables pm_notifier_call_chain() to get the actual error code in the callback rather than always assume -EINVAL by converting all PM notifier calls to return encapsulate error code with notifier_from_errno(). Signed-off-by: Akinobu Mita Signed-off-by: Rafael J. Wysocki commit 1d8047a6f7973470bb1de4606a6e00c0bbee3cc6 Author: Rafael J. Wysocki Date: Mon Jun 27 01:01:16 2011 +0200 PM: Add "RTC" to PM trace time stamps to avoid confusion Some users are apparently confused by dmesg output from read_magic_time(), which looks like "real" time and date. Add the "RTC" string to time stamps printed by read_magic_time() to avoid that confusion. Reported-by: Justin P. Mattock Signed-off-by: Rafael J. Wysocki commit a5e4fd8783a2bec861ecf1138cdc042269ff59aa Author: Kevin Hilman Date: Mon Jun 27 01:01:07 2011 +0200 PM / Suspend: Export suspend_set_ops, suspend_valid_only_mem Some platforms wish to implement their PM core suspend code as modules. To do so, these functions need to be exported to modules. [rjw: Replaced EXPORT_SYMBOL with EXPORT_SYMBOL_GPL] Reported-by: Jean Pihet Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit 3b5fe85252326217cd96f24a7bda4460d8f71bee Author: MyungJoo Ham Date: Sun Jun 12 15:57:05 2011 +0200 PM / Suspend: Add .suspend_again() callback to suspend_ops A system or a device may need to control suspend/wakeup events. It may want to wakeup the system after a predefined amount of time or at a predefined event decided while entering suspend for polling or delayed work. Then, it may want to enter suspend again if its predefined wakeup condition is the only wakeup reason and there is no outstanding events; thus, it does not wakeup the userspace unnecessary or unnecessary devices and keeps suspended as long as possible (saving the power). Enabling a system to wakeup after a specified time can be easily achieved by using RTC. However, to enter suspend again immediately without invoking userland and unrelated devices, we need additional features in the suspend framework. Such need comes from: 1. Monitoring a critical device status without interrupts that can wakeup the system. (in-suspend polling) An example is ambient temperature monitoring that needs to shut down the system or a specific device function if it is too hot or cold. The temperature of a specific device may be needed to be monitored as well; e.g., a charger monitors battery temperature in order to stop charging if overheated. 2. Execute critical "delayed work" at suspend. A driver or a system/board may have a delayed work (or any similar things) that it wants to execute at the requested time. For example, some chargers want to check the battery voltage some time (e.g., 30 seconds) after the battery is fully charged and the charger has stopped. Then, the charger restarts charging if the voltage has dropped more than a threshold, which is smaller than "restart-charger" voltage, which is a threshold to restart charging regardless of the time passed. This patch allows to add "suspend_again" callback at struct platform_suspend_ops and let the "suspend_again" callback return true if the system is required to enter suspend again after the current instance of wakeup. Device-wise suspend_again implemented at dev_pm_ops or syscore is not done because: a) suspend_again feature is usually under platform-wise decision and controls the behavior of the whole platform and b) There are very limited devices related to the usage cases of suspend_again; chargers and temperature sensors are mentioned so far. With suspend_again callback registered at struct platform_suspend_ops suspend_ops in kernel/power/suspend.c with suspend_set_ops by the platform, the suspend framework tries to enter suspend again by looping suspend_enter() if suspend_again has returned true and there has been no errors in the suspending sequence or pending wakeups (by pm_wakeup_pending). Tested at Exynos4-NURI. [rjw: Fixed up kerneldoc comment for suspend_enter().] Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Acked-by: Pavel Machek Signed-off-by: Rafael J. Wysocki commit 99f381d3549432a250fe846a2a82d61a032804b0 Author: Nishanth Menon Date: Fri Jun 10 20:24:57 2011 +0200 PM / OPP: Introduce function to free cpufreq table cpufreq table allocated by opp_init_cpufreq_table is better freed by OPP layer itself. This allows future modifications to the table handling to be transparent to the users. Signed-off-by: Nishanth Menon Acked-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit cdb73db0b6bf7a1bcf5c788f0c8f803facb6e517 Author: Goldwyn Rodrigues Date: Thu Jul 7 17:20:40 2011 +0000 IB/mthca: Stop returning separate error and status from FW commands Instead of having firmware command functions return an error and also a status, leading to code like: err = mthca_FW_COMMAND(..., &status); if (err) goto out; if (status) { err = -E...; goto out; } all over the place, just handle the FW status inside the FW command handling code (the way mlx4 does it), so we can simply write: err = mthca_FW_COMMAND(...); if (err) goto out; In addition to simplifying the source code, this also saves a healthy chunk of text: add/remove: 0/0 grow/shrink: 10/88 up/down: 510/-3357 (-2847) function old new delta static.trans_table 324 584 +260 mthca_cmd_poll 352 477 +125 mthca_cmd_wait 511 567 +56 mthca_table_put 213 240 +27 mthca_cleanup_db_tab 372 387 +15 __mthca_remove_one 314 323 +9 mthca_cleanup_user_db_tab 275 283 +8 __mthca_init_one 1738 1746 +8 mthca_cleanup 20 21 +1 mthca_MAD_IFC 1081 1082 +1 mthca_MGID_HASH 43 40 -3 mthca_MAP_ICM_AUX 23 20 -3 mthca_MAP_ICM 19 16 -3 mthca_MAP_FA 23 20 -3 mthca_READ_MGM 43 38 -5 mthca_QUERY_SRQ 43 38 -5 mthca_QUERY_QP 59 54 -5 mthca_HW2SW_SRQ 43 38 -5 mthca_HW2SW_MPT 60 55 -5 mthca_HW2SW_EQ 43 38 -5 mthca_HW2SW_CQ 43 38 -5 mthca_free_icm_table 120 114 -6 mthca_query_srq 214 206 -8 mthca_free_qp 662 654 -8 mthca_cmd 38 28 -10 mthca_alloc_db 1321 1311 -10 mthca_setup_hca 1067 1055 -12 mthca_WRITE_MTT 35 22 -13 mthca_WRITE_MGM 40 27 -13 mthca_UNMAP_ICM_AUX 36 23 -13 mthca_UNMAP_FA 36 23 -13 mthca_SYS_DIS 36 23 -13 mthca_SYNC_TPT 36 23 -13 mthca_SW2HW_SRQ 35 22 -13 mthca_SW2HW_MPT 35 22 -13 mthca_SW2HW_EQ 35 22 -13 mthca_SW2HW_CQ 35 22 -13 mthca_RUN_FW 36 23 -13 mthca_DISABLE_LAM 36 23 -13 mthca_CLOSE_IB 36 23 -13 mthca_CLOSE_HCA 38 25 -13 mthca_ARM_SRQ 39 26 -13 mthca_free_icms 178 164 -14 mthca_QUERY_DDR 389 375 -14 mthca_resize_cq 1063 1048 -15 mthca_unmap_eq_icm 123 107 -16 mthca_map_eq_icm 396 380 -16 mthca_cmd_box 90 74 -16 mthca_SET_IB 433 417 -16 mthca_RESIZE_CQ 369 353 -16 mthca_MAP_ICM_page 240 224 -16 mthca_MAP_EQ 183 167 -16 mthca_INIT_IB 473 457 -16 mthca_INIT_HCA 745 729 -16 mthca_map_user_db 816 798 -18 mthca_SYS_EN 157 139 -18 mthca_cleanup_qp_table 78 59 -19 mthca_cleanup_eq_table 168 149 -19 mthca_UNMAP_ICM 143 121 -22 mthca_modify_srq 172 149 -23 mthca_unmap_fmr 198 174 -24 mthca_query_qp 814 790 -24 mthca_query_pkey 343 319 -24 mthca_SET_ICM_SIZE 34 10 -24 mthca_QUERY_DEV_LIM 1870 1846 -24 mthca_map_cmd 1130 1105 -25 mthca_ENABLE_LAM 401 375 -26 mthca_modify_port 247 220 -27 mthca_query_device 884 850 -34 mthca_NOP 75 41 -34 mthca_table_get 287 249 -38 mthca_init_qp_table 333 293 -40 mthca_MODIFY_QP 348 308 -40 mthca_close_hca 131 89 -42 mthca_free_eq 435 390 -45 mthca_query_port 755 705 -50 mthca_free_cq 581 528 -53 mthca_alloc_icm_table 578 524 -54 mthca_multicast_attach 1041 986 -55 mthca_init_hca 326 271 -55 mthca_query_gid 487 431 -56 mthca_free_srq 524 468 -56 mthca_free_mr 168 111 -57 mthca_create_eq 1560 1501 -59 mthca_multicast_detach 790 728 -62 mthca_write_mtt 918 854 -64 mthca_register_device 1406 1342 -64 mthca_fmr_alloc 947 883 -64 mthca_mr_alloc 652 582 -70 mthca_process_mad 1242 1164 -78 mthca_dev_lim 910 830 -80 find_mgm 482 400 -82 mthca_modify_qp 3852 3753 -99 mthca_init_cq 1281 1181 -100 mthca_alloc_srq 1719 1610 -109 mthca_init_eq_table 1807 1679 -128 mthca_init_tavor 761 491 -270 mthca_init_arbel 2617 2098 -519 Signed-off-by: Goldwyn Rodrigues commit 14a8fd7ceea6915c613746203d6e9a2bf273f16c Author: Masami Hiramatsu Date: Mon Jun 27 16:27:51 2011 +0900 perf probe: Support adding probes on offline kernel modules Support adding probes on offline kernel modules. This enables perf-probe to trace kernel-module init functions via perf-probe. If user gives the path of module with -m option, perf-probe expects the module is offline. This feature works with --add, --funcs, and --vars. E.g) # perf probe -m /lib/modules/`uname -r`/kernel/fs/btrfs/btrfs.ko \ -a "extent_io_init:5 extent_state_cache" Add new events: probe:extent_io_init (on extent_io_init:5 with extent_state_cache) probe:extent_io_init_1 (on extent_io_init:5 with extent_state_cache) You can now use it on all perf tools, such as: perf record -e probe:extent_io_init_1 -aR sleep 1 Signed-off-by: Masami Hiramatsu Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072751.6528.10230.stgit@fedora15 Signed-off-by: Steven Rostedt commit 190b57fcb9c5fed5414935a174094f534fc510bc Author: Masami Hiramatsu Date: Mon Jun 27 16:27:45 2011 +0900 perf probe: Add probed module in front of function Add probed module name and ":" in front of function name if -m module option is given. In the result, the symbol name passed to kprobe-tracer becomes MODULE:FUNCTION, so that kallsyms can solve it as a symbol in the module correctly. Signed-off-by: Masami Hiramatsu Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072745.6528.26416.stgit@fedora15 Signed-off-by: Steven Rostedt commit ff741783506c340035659a71be68ddb4068760d1 Author: Masami Hiramatsu Date: Mon Jun 27 16:27:39 2011 +0900 perf probe: Introduce debuginfo to encapsulate dwarf information Introduce debuginfo to encapsulate dwarf information. This new object allows us to reuse and expand debuginfo easily. Signed-off-by: Masami Hiramatsu Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072739.6528.12438.stgit@fedora15 Signed-off-by: Steven Rostedt commit e0d153c69040bb37cbdf09deb52fee3013c07742 Author: Masami Hiramatsu Date: Mon Jun 27 16:27:27 2011 +0900 perf-probe: Move dwarf library routines to dwarf-aux.{c, h} Move dwarf library related routines to dwarf-aux.{c,h}. This includes several minor changes. - Add simple documents for each API. - Rename die_find_real_subprogram() to die_find_realfunc() - Rename line_walk_handler_t to line_walk_callback_t. - Minor cleanups. Signed-off-by: Masami Hiramatsu Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072727.6528.57647.stgit@fedora15 Signed-off-by: Steven Rostedt commit bcfc082150c6b1e9443c1277bca8be80094150b5 Author: Masami Hiramatsu Date: Mon Jun 27 16:27:21 2011 +0900 perf probe: Remove redundant dwarf functions Since there are dwarf_bitsize, dwarf_bitoffset and dwarf_bytesize defined in libdw, we don't need die_get_bit_size, die_get_bit_offset and die_get_byte_size anymore. Signed-off-by: Masami Hiramatsu Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072721.6528.2747.stgit@fedora15 Signed-off-by: Steven Rostedt commit bad03ae476214d9d66bb96be02b630385936f788 Author: Masami Hiramatsu Date: Mon Jun 27 16:27:15 2011 +0900 perf probe: Move strtailcmp to string.c Since strtailcmp() is enough generic, it should be defined in string.c. Signed-off-by: Masami Hiramatsu Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072715.6528.10677.stgit@fedora15 Signed-off-by: Steven Rostedt commit 62778396020a29d742abf980c1e83f3df4b5426e Merge: 58f45e3 d3144df Author: Arnd Bergmann Date: Fri Jul 15 21:56:37 2011 +0200 Merge branch 'fixes-for-arnd' of git://git.pengutronix.de/git/imx/linux-2.6 into imx/fixes commit baad2d3e69ba154dae340904a47ae12414f1894f Author: Masami Hiramatsu Date: Mon Jun 27 16:27:09 2011 +0900 perf probe: Rename DIE_FIND_CB_FOUND to DIE_FIND_CB_END Since die_find/walk* callbacks use DIE_FIND_CB_FOUND for both of failed and found cases, it should be "END" instead "FOUND" for avoiding confusion. Signed-off-by: Masami Hiramatsu Reported-by: Arnaldo Carvalho de Melo Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Ingo Molnar Link: http://lkml.kernel.org/r/20110627072709.6528.45706.stgit@fedora15 Signed-off-by: Steven Rostedt commit 752ad5e82dfd83851e44a2b9da8761994cd7e61c Author: Peter Korsgaard Date: Fri Jul 15 10:25:32 2011 +0200 mcp23s08: add i2c support Add i2c bindings for the mcp230xx devices. This is quite a lot simpler than the spi one as there's no funky sub addressing done (one struct i2c_client per struct gpio_chip). The mcp23s08_platform_data structure is reused for i2c, even though only a single mcp23s08_chip_info structure is needed. To use, simply fill out a platform_data structure and pass it in i2c_board_info, E.G.: static const struct mcp23s08_platform_data mcp23017_data = { .chip[0] = { .pullups = 0x00ff, }, .base = 240, }; static struct i2c_board_info __initdata i2c_devs[] = { { I2C_BOARD_INFO("mcp23017", 0x20), .platform_data = &smartview_mcp23017_data, }, ... }; Signed-off-by: Peter Korsgaard Signed-off-by: Grant Likely commit d62b98f305a6b0d32fbdc72ac6ba3d4f4768adeb Author: Peter Korsgaard Date: Fri Jul 15 10:25:31 2011 +0200 mcp23s08: isolate spi specific parts Change spi member of struct mcp23s08 to be a ops-specific opaque data pointer, and move spi specific knowledge out of mcp23s08_probe_one(). No functional change, but is needed to add i2c support. Signed-off-by: Peter Korsgaard Signed-off-by: Grant Likely commit 1bb6f9b042eb1428ba927d2e851a00df6308877a Author: Peter Korsgaard Date: Fri Jul 15 10:25:30 2011 +0200 mcp23s08: get rid of setup/teardown callbacks There's no in-tree users, and bus notifiers are more generic anyway. Signed-off-by: Peter Korsgaard Signed-off-by: Grant Likely commit 7f6878a3d707b947603e09d95df0c3a98987e3a4 Author: Masami Hiramatsu Date: Mon Jun 27 16:27:03 2011 +0900 tracing/kprobe: Update symbol reference when loading module Since the address of a module-local variable can only be solved after the target module is loaded, the symbol fetch-argument should be updated when loading target module. Signed-off-by: Masami Hiramatsu Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072703.6528.75042.stgit@fedora15 Signed-off-by: Steven Rostedt commit 614243181050436785f5a621749a7da2336a7916 Author: Masami Hiramatsu Date: Mon Jun 27 16:26:56 2011 +0900 tracing/kprobes: Support module init function probing To support probing module init functions, kprobe-tracer allows user to define a probe on non-existed function when it is given with a module name. This also enables user to set a probe on a function on a specific module, even if a same name (but different) function is locally defined in another module. The module name must be in the front of function name and separated by a ':'. e.g. btrfs:btrfs_init_sysfs Signed-off-by: Masami Hiramatsu Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Frederic Weisbecker Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/20110627072656.6528.89970.stgit@fedora15 Signed-off-by: Steven Rostedt commit bc81d48d13d8839fae6833c95794c403b2133f36 Author: Masami Hiramatsu Date: Mon Jun 27 16:26:50 2011 +0900 kprobes: Return -ENOENT if probe point doesn't exist Return -ENOENT if probe point doesn't exist, but still returns -EINVAL if both of kprobe->addr and kprobe->symbol_name are specified or both are not specified. Acked-by: Ananth N Mavinakayanahalli Signed-off-by: Masami Hiramatsu Cc: Ananth N Mavinakayanahalli Cc: Arnaldo Carvalho de Melo Cc: Ingo Molnar Cc: Frederic Weisbecker Cc: Peter Zijlstra Cc: Anil S Keshavamurthy Cc: "David S. Miller" Link: http://lkml.kernel.org/r/20110627072650.6528.67329.stgit@fedora15 Signed-off-by: Steven Rostedt commit 1538f888f1e793de04e0f90372352ac1b05833cf Author: Masami Hiramatsu Date: Mon Jun 27 16:26:44 2011 +0900 tracing/kprobes: Merge trace probe enable/disable functions Merge redundant enable/disable functions into enable_trace_probe() and disable_trace_probe(). Signed-off-by: Masami Hiramatsu Cc: Arnaldo Carvalho de Melo Cc: Ingo Molnar Cc: Peter Zijlstra Cc: yrl.pp-manager.tt@hitachi.com Cc: Frederic Weisbecker Cc: Ingo Molnar Link: http://lkml.kernel.org/r/20110627072644.6528.26910.stgit@fedora15 [ converted kprobe selftest to use enable_trace_probe ] Signed-off-by: Steven Rostedt commit eb5064db408eaffa332f93ddcc19c0b653849093 Author: Olof Johansson Date: Thu Jul 14 22:17:13 2011 -0700 gpio/tegra: dt: add binding for gpio polarity Allocate one bit in the available extra cell to indicate if the gpio should be considered logically inverted. Signed-off-by: Olof Johansson Acked-by: Stephen Warren Signed-off-by: Grant Likely commit 94f9b97be5b3bf67392e43fb7f567721b09142c2 Author: Johannes Berg Date: Thu Jul 14 16:48:54 2011 +0200 mac80211: be more careful in suspend/resume When suspending with all netdevs down, the device is stopped but we still call a number of driver callbacks that the driver might not expect. The same happens during resume, we might call a few callbacks without starting the driver. Fix this by checking open_count around more things and exiting quickly if it is 0. Also, while at this I noticed that the coverage class isn't reprogrammed after resume, so add that. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3f29c522184ffb44fd475fdbe6083023ab1506f8 Author: Pavel Roskin Date: Wed Jul 13 21:38:18 2011 -0400 carl9170: fix formatting issues found by checkpatch Signed-off-by: Pavel Roskin Acked-By: christian Lamparter Signed-off-by: John W. Linville commit fcad584d12831864727aef917190fc3e24cfe541 Author: Bing Zhao Date: Wed Jul 13 13:11:58 2011 -0700 MAINTAINERS: add entry for Marvell mwifiex wireless driver Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit f850e00fcd7767d01101e2f0a6d464bee8e48b47 Author: Johannes Berg Date: Wed Jul 13 19:50:53 2011 +0200 mac80211: let key iteration get keys in install order ieee80211_iter_keys() currently returns keys in the backward order they were installed in, which is a bit confusing. Add them to the tail of the key list to make sure iterations go in the same order that keys were originally installed in. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8bca5d815311f53ada13b62f5e590df40fef317e Author: Johannes Berg Date: Wed Jul 13 19:50:34 2011 +0200 mac80211: allow driver access to TKIP RX P1K When the driver wants to pre-program the TKIP RX phase 1 key, it needs to be able to obtain it for the peer's TA. Add API to allow it to generate it. The generation uses a dummy on-stack context since it doesn't know the RX queue. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 66760eac005d569393bac34136bcbb8af55d8a5a Author: Felix Fietkau Date: Wed Jul 13 23:35:05 2011 +0800 ath9k: improve reliability of MIC error detection For unicast the hardware sometimes reports MIC errors even though the frame that it received actually contains a valid MIC - on some chips this can happen frequently enough to trigger TKIP countermeasures. Fix this issue by not reporting MIC errors for unicast frames with a valid key, letting mac80211 validate the MIC instead. Additionally, strip the MIC for all frames that the hardware considers valid to avoid wasting CPU cycles re-validating it. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 933d594313a5928ffc5325d7bbb6e2383d79622e Author: Pavel Roskin Date: Wed Jul 13 11:19:57 2011 -0400 orinoco: minor fixes for problems found by checkpatch.pl Eliminate spaces before tabs. Eliminate typedefs. Add spaces around operators. Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 16c929df0895e6f52f4a0f17683d709f5fef95d8 Author: Yogesh Ashok Powar Date: Wed Jul 13 17:42:06 2011 +0530 mwl8k: Fixing sta dereference when ieee80211_tx_info->control.sta is NULL Following oops was seen on SMP machine >BUG: unable to handle kernel NULL pointer dereference at 00000012 >IP: [] mwl8k_tx+0x20e/0x561 [mwl8k] >*pde = 00000000 >Oops: 0000 [#1] SMP >Modules linked in: mwl8k mac80211 cfg80211 [last unloaded: cfg80211] As ieee80211_tx_info->control.sta may be NULL during ->tx call, avoiding sta dereference in such scenario with the following patch. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit 5a865bad44984de245d20bfb7cff99993e8e8294 Author: Luciano Coelho Date: Wed Jul 13 14:57:29 2011 +0300 nl80211/cfg80211: add max_sched_scan_ie_len in the hw description Some chips may support different lengths of user-supplied IEs with a single scheduled scan command than with a single normal scan command. To support this, this patch creates a separate hardware description element that describes the maximum size of user-supplied information element data supported in scheduled scans. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 93b6aa693a355932b69c96956596b03f91baec35 Author: Luciano Coelho Date: Wed Jul 13 14:57:28 2011 +0300 nl80211/cfg80211: add max_sched_scan_ssids in the hw description Some chips can scan more SSIDs with a single scheduled scan command than with a single normal scan command (eg. wl12xx chips). To support this, this patch creates a separate hardware description element that describes the amount of SSIDs supported in scheduled scans. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 77dbbb138986b26cb99f868d4b6410577ef4c040 Author: Johannes Berg Date: Wed Jul 13 10:48:55 2011 +0200 nl80211: advertise GTK rekey support, new triggers Since we now have the necessary API in place to support GTK rekeying, applications will need to know whether it is supported by a device. Add a pseudo-trigger that is used only to advertise that capability. Also, add some new triggers that match what iwlagn devices can do. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 23e8e1aaacb10d9f05e44a93e10ea4ee5b3838a5 Author: David Teigland Date: Tue Apr 5 13:16:24 2011 -0500 dlm: use workqueue for callbacks Instead of creating our own kthread (dlm_astd) to deliver callbacks for all lockspaces, use a per-lockspace workqueue to deliver the callbacks. This eliminates complications and slowdowns from many lockspaces sharing the same thread. Signed-off-by: David Teigland commit 1e18d178ac5434b2a6b5d7b790cbdfb55dfd81bc Author: Alan Cox Date: Fri Jul 15 17:47:11 2011 +0100 gma500: wire up the mrst i2c bus from chip_info We did the groundwork earlier now we can use it Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c603685443208fa6c52d5080637b36bf7092ac69 Author: Alan Cox Date: Fri Jul 15 17:46:58 2011 +0100 gma500: Fix DPU build Fix up the merge build Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3a970ac1b14cf1a49076d69369aa75a23d4ad2db Author: Alan Cox Date: Fri Jul 15 17:35:49 2011 +0100 gma500: Clean up the DPU config and make it runtime We really don't want this all done by ifdeffery - and this isn't any need as it's fairly easy to sort out. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3caa89e933646263cb4efedd5660dba00a107b51 Author: Alan Cox Date: Fri Jul 15 17:35:36 2011 +0100 gma500: resync with Medfield progress Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f75c7538c5ee3bfd0ac50d20457e773c43858a75 Author: Alan Cox Date: Fri Jul 15 17:35:24 2011 +0100 gma500: Use the mrst helpers and power control for mode commit We want to hit the MM panel backlight when appropriate Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 83c871ee2b60619d74d03eaf6f75a7d9c3cb0e45 Author: Alan Cox Date: Fri Jul 15 17:35:12 2011 +0100 gma500@ Fix backlight range error If we go out of range we break the pm counts on the error path Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f642062fc7a6bebdd857408e7a9f678bfd2e4004 Author: Alan Cox Date: Fri Jul 15 17:34:58 2011 +0100 gma500: More Moorestown muddle meddling means MM maybe might modeset There are a least three different species we need to deal with and right now it seems the only way to sort them out is via DMI. Encapsulate the entire pile somewhere private and out of the way. Hopefully a saner method will emerge later. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 1e585b52fd8ea59792634bc31d227eb3456af22e Author: Alan Cox Date: Fri Jul 15 17:34:41 2011 +0100 gma500: Add the Oaktrail HDMI support This differs enough from the Cedarview HDMI sufficiently to want to keep them separated. We need to sort out the power management for Oaktrail/Moorestown in order to plumb this lot into the register handling logic. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 80e2f055e05b62d1132eadc934f83c6d81c7cfa4 Author: Alan Cox Date: Fri Jul 15 17:34:28 2011 +0100 gma500: Fix cdv warning on unused variable Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 6e4b308a286821458633a90b82d63d2ce7e742b5 Author: Octavian Purdila Date: Fri Jul 15 17:34:15 2011 +0100 gma500: skip getting modes via DDC on Moorestown Moorestown does not have a DDC bus, skip getting modes via DDC. This fixes the following bug: BUG: unable to handle kernel NULL pointer dereference at 00000010 IP: [] i2c_transfer+0x17/0xb0 *pde = 00000000 Oops: 0000 [#1] Call Trace: [] drm_do_probe_ddc_edid+0x59/0x90 [] drm_get_edid+0x24/0x250 [] psb_intel_ddc_get_modes+0x22/0x60 [] psb_intel_lvds_get_modes+0x21/0x80 Signed-off-by: Octavian Purdila Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 173b3de9a5817ec2c264eca1b8795c7dbda3c50e Author: Octavian Purdila Date: Fri Jul 15 17:33:57 2011 +0100 gma500: fix compile warnings when CONFIG_BACKLIGHT_CLASS_DEVICE is not defined Signed-off-by: Octavian Purdila [Fixed up for other changes, and tidied some existing variable names] Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3de78a9dbf173952270e761c21f2df3a7e1ed256 Author: Alan Cox Date: Fri Jul 15 17:33:43 2011 +0100 gma500: Make crtc count a property of the device Octavian Purdila posted a patch that sets num_crtc to 1 for Moorestown, but Oaktrail has 2 so we need to split Oaktrail/Moorestown more sensibly, and also cope with some other differences later on. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a458ca1edc318bc63a632b97ab3d04b86b81f7ef Author: Octavian Purdila Date: Fri Jul 15 17:33:26 2011 +0100 gma500: remove the legacy PM method PCI core only prefer one of legacy PM and new PM. And since runtime pm is implemented, which requires the new PM method, we should remove the legacy PM method. Signed-off-by: Octavian Purdila Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7d7b7adf6bf934064c8fdc4031e75f1a20aaac92 Author: Alan Cox Date: Fri Jul 15 17:33:08 2011 +0100 gma500: allow the creation of 'stolen' memory objects For things like cursors and many kinds of framebuffer set up we are actually best using the stolen memory when possible. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7dfe43c52d2cd595964c38281499c5361a0a8e85 Author: Alan Cox Date: Fri Jul 15 17:32:38 2011 +0100 gma500: add an mmap ioctl This does the same as the dumb mmap but we want them separated in the ABI in case a future extension to the dumb interface means we can't treat them the same way. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit bd7b9f91ddc2d08381a853bd33b3ce7d0012b1df Author: Alan Cox Date: Fri Jul 15 17:32:13 2011 +0100 gma500: Move the 2D operations into DRM We currently have a test hack framebuffer mode ioctl, turn that into a DRM interface. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c5c44531ad00ed87078e799f0932c220031aa1c9 Author: Alan Cox Date: Fri Jul 15 17:31:26 2011 +0100 gma500: Cursor interface We need to provide an interface to create additional buffers for the cursor Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 66dca5178c70b7bb5ae1761e175569eac8708e1e Author: Alan Cox Date: Mon Jul 11 19:41:24 2011 +0100 gma500: Fix dependencies ACPI Video is used by GMA500 so we need to depend upon it Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 78010c75d290d8061fbbd75625101f382c44f204 Author: Alan Cox Date: Mon Jul 11 19:41:09 2011 +0100 gma500: Sort out dither Ubuntu users reported that dithering was not being set on Poulsbo, and they have a point as we set one variable and check another which is never set. Signed-off-by: Alan Cox Tested-by: Luca Forina Signed-off-by: Greg Kroah-Hartman commit f00dfacb5123f2c439973347bf9ec7ebf3af8719 Author: Alan Cox Date: Mon Jul 11 19:40:34 2011 +0100 gma500: don't dynamically allocate the psb_gtt struct It's part of the psb_device so just make it part of the struct not a pointer. This does cause a bit of noise shuffling indirections. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 18a4ca2a11ce6c4adf6f5933a65e1104fbc5cd77 Author: Alan Cox Date: Mon Jul 11 19:39:43 2011 +0100 gma500: Final polish This completes the clean up all the non Medfield C files to the point where checkpatch approves of them barring some silly 80 column whining. The Medfield stuff is still in a lot of flux but the rest is now ready for general tidy and review. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 25009a1ae1171eda6bff44b7e44eb0e076713811 Merge: 6864ddb 95a943c Author: David S. Miller Date: Fri Jul 15 08:51:13 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 6864ddb2d3089739d29418a1ff52adb2fbf9c0ca Author: françois romieu Date: Fri Jul 15 00:21:44 2011 +0000 8139cp: convert to new VLAN model. The registers and descriptors bits are identical to the pre-8168 8169 chipsets : {RxDesc / TxDesc}.opts2 can only contain VLAN information. Signed-off-by: Francois Romieu Reviewed-by: Jiri Pirko Signed-off-by: David S. Miller commit f0c50c7c9a4b0e92a9189c498e4960919fe66d45 Author: Krishna Kumar Date: Thu Jul 14 23:16:21 2011 +0000 Remove redundant variable/code in __qdisc_run Remove redundant variable "work". Signed-off-by: Krishna Kumar Signed-off-by: David S. Miller commit 2af4ba85913bb1755a06193109917c3ddc130265 Author: Oliver Hartkopp Date: Thu Jul 14 21:49:19 2011 +0000 slcan: remove obsolete code in slcan initialisation This patch removes obsolete code in the initialisation/creation of slcan devices. It follows the suggested cleanups from Ilya Matvejchikov in drivers/net/slip.c that where recently applied to net-next-2.6: - slip: remove dead code within the slip initialization - slip: remove redundant check slip_devs for NULL Signed-off-by: Oliver Hartkopp Signed-off-by: David S. Miller commit 8279171a5fe95902be12f4018907f246d51616d4 Author: Shyam Iyer Date: Thu Jul 14 15:00:32 2011 +0000 Separate handling of irq type flags variable from the irq_flags request_irq variable Commit 5f77898de17ff983ff0e2988b73a6bdf4b6f9f8b does not completely fix the problem of handling allocations with irqs disabled.. The below patch on top of it fixes the problem completely. Based on review by "Ivan Vecera" .. " Small note, the root of the problem was that non-atomic allocation was requested with IRQs disabled. Your patch description does not contain wwhy were the IRQs disabled. The function bnad_mbox_irq_alloc incorrectly uses 'flags' var for two different things, 1) to save current CPU flags and 2) for request_irq call. First the spin_lock_irqsave disables the IRQs and saves _all_ CPU flags (including one that enables/disables interrupts) to 'flags'. Then the 'flags' is overwritten by 0 or 0x80 (IRQF_SHARED). Finally the spin_unlock_irqrestore should restore saved flags, but these flags are now either 0x00 or 0x80. The interrupt bit value in flags register on x86 arch is 0x100. This means that the interrupt bit is zero (IRQs disabled) after spin_unlock_irqrestore so the request_irq function is called with disabled interrupts. " Signed-off-by: Shyam Iyer Signed-off-by: David S. Miller commit 1479c3fb5f0ca8410428006cb04ca27263beea25 Author: Mark Brown Date: Fri Jul 15 17:33:26 2011 +0900 ASoC: Handle spurious wm_hubs DC servo done interrupts Don't assume the first fire indicates that we're done. Signed-off-by: Mark Brown commit 6b3860b0a20a790fb26ca67aadcba0714e879667 Author: Dimitris Papastamos Date: Fri Jul 15 13:51:30 2011 +0100 ASoC: WM8983: Initial driver The WM8983 is a low power, high quality stereo CODEC designed for portable multimedia applications. Highly flexible analogue mixing functions enable new application features, combining hi-fi quality audio with voice communication. Signed-off-by: Dimitris Papastamos Signed-off-by: Mark Brown commit 95a943c162d74b20d869917bdf5df11293c35b63 Merge: ecae42d 95acac6 Author: John W. Linville Date: Fri Jul 15 10:05:24 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem Conflicts: net/bluetooth/l2cap_core.c commit 47d90a03ebd44951060a6284316ecd0cb3aaf3e2 Merge: 5849990 b35e160 Author: Mark Brown Date: Fri Jul 15 22:43:07 2011 +0900 Merge branch 'for-3.0' into for-3.1 commit 94b134ac8e9965309e70684b504c53bca36338b4 Author: Trond Myklebust Date: Wed Jul 13 19:26:49 2011 -0400 NFS: Convert nfs4_set_ds_client to EXPORT_SYMBOL_GPL This is not part of an external ABI... Signed-off-by: Trond Myklebust commit 0d961aa934b799ca7369db582e52952cc50c656d Author: Trond Myklebust Date: Wed Jul 13 19:24:15 2011 -0400 SUNRPC: Convert the backchannel exports to EXPORT_SYMBOL_GPL Ensure that the backchannel exports conform to the existing sunrpc practice. Signed-off-by: Trond Myklebust commit 9e00abc3c20904fd6a5d888bb7023925799ec8a5 Author: Trond Myklebust Date: Wed Jul 13 19:20:49 2011 -0400 SUNRPC: sunrpc should not explicitly depend on NFS config options Change explicit references to CONFIG_NFS_V4_1 to implicit ones Get rid of the unnecessary defines in backchannel_rqst.c and bc_svc.c: the Makefile takes care of those dependency. Signed-off-by: Trond Myklebust commit 1f9453578f059d2651aa6c6b16756627fc9f2a74 Author: Trond Myklebust Date: Wed Jul 13 15:59:57 2011 -0400 NFS: Clean up - simplify the switch to read/write-through-MDS Use nfs_pageio_reset_read_mds and nfs_pageio_reset_write_mds instead of completely reinitialising the struct nfs_pageio_descriptor. Signed-off-by: Trond Myklebust commit dce81290eed64d24493989bb7a08f9e20495e184 Author: Trond Myklebust Date: Wed Jul 13 15:59:19 2011 -0400 NFS: Move the pnfs write code into pnfs.c ...and ensure that we recoalese to take into account differences in differences in block sizes when falling back to write through the MDS. Signed-off-by: Trond Myklebust commit 493292ddc78d18ee2ad2d5c24c2b7dd6a24641d2 Author: Trond Myklebust Date: Wed Jul 13 15:58:28 2011 -0400 NFS: Move the pnfs read code into pnfs.c ...and ensure that we recoalese to take into account differences in block sizes when falling back to read through the MDS. Signed-off-by: Trond Myklebust commit d9156f9f364897e93bdd98b4ad22138de18f7c24 Author: Trond Myklebust Date: Tue Jul 12 13:42:02 2011 -0400 NFS: Allow the nfs_pageio_descriptor to signal that a re-coalesce is needed If an attempt to do pNFS fails, and we have to fall back to writing through the MDS, then we may want to re-coalesce the requests that we already have since the block size for the MDS read/writes may be different to that of the DS read/writes. Signed-off-by: Trond Myklebust commit d097971d8ab4042eaa4bff98698ae9cc55942327 Author: Trond Myklebust Date: Tue Jul 12 13:42:02 2011 -0400 NFS: Use the nfs_pageio_descriptor->pg_bsize in the read/write request Instead of looking up the rsize and wsize, the routines that generate the RPC requests should really be using the pg_bsize, since that is what we use when deciding whether or not to coalesce write requests... Signed-off-by: Trond Myklebust commit 50828d7e6767a92726708bc0666e2b8b84575808 Author: Trond Myklebust Date: Tue Jul 12 13:42:02 2011 -0400 NFS: Cache rpc_ops in struct nfs_pageio_descriptor Signed-off-by: Trond Myklebust commit 275acaafd45fbc8ecc3beabd6367e60b3049606a Author: Trond Myklebust Date: Tue Jul 12 13:42:02 2011 -0400 NFS: Clean up: split out the RPC transmission from nfs_pagein_multi/one ...and do the same for nfs_flush_multi/one. Signed-off-by: Trond Myklebust commit 3b6091846d5b6113d695c79caec7cc96b62d469b Author: Peng Tao Date: Fri Jul 15 03:33:42 2011 -0400 NFS: fix return value of nfs_pagein_one/nfs_flush_one Signed-off-by: Peng Tao Signed-off-by: Trond Myklebust commit 4aa96ccf9ee35cdbd0d423e87a4d551019570218 Merge: cb5fd90 8f2ffa0 Author: Russell King Date: Fri Jul 15 10:06:42 2011 +0100 Merge branch 'kprobes-thumb' of git://git.yxit.co.uk/linux into devel-stable commit d3144df5bd8eb1c8137cc92989e2e6bc9f2e5a27 Author: Dong Aisheng Date: Wed Jul 13 11:40:54 2011 +0800 ARM: mxs-dma: include Other files using dma.h may fail to compile as follows: In file included from sound/soc/mxs/mxs-pcm.h:22, from sound/soc/mxs/mxs-saif.h:112, from sound/soc/mxs/mxs-sgtl5000.c:34: arch/arm/mach-mxs/include/mach/dma.h:16: warning: 'struct dma_chan' declared inside parameter list arch/arm/mach-mxs/include/mach/dma.h:16: warning: its scope is only this definition or declaration, which is probably not what you want arch/arm/mach-mxs/include/mach/dma.h: In function 'mxs_dma_is_apbh': arch/arm/mach-mxs/include/mach/dma.h:18: error: dereferencing pointer to incomplete type arch/arm/mach-mxs/include/mach/dma.h: At top level: arch/arm/mach-mxs/include/mach/dma.h:21: warning: 'struct dma_chan' declared inside parameter list arch/arm/mach-mxs/include/mach/dma.h: In function 'mxs_dma_is_apbx': arch/arm/mach-mxs/include/mach/dma.h:23: error: dereferencing pointer to incomplete type make[3]: *** [sound/soc/mxs/mxs-sgtl5000.o] Error 1 make[2]: *** [sound/soc/mxs] Error 2 make[1]: *** [sound/soc] Error 2 make: *** [sound] Error 2 It seems it's better for dma.h to include dmaengine.h himself. Signed-off-by: Dong Aisheng Cc: Sascha Hauer Cc: Shawn Guo Signed-off-by: Sascha Hauer commit 9e32be11f3844b534310dfc9db00bcffb38ccdd9 Author: Troy Kisky Date: Mon Jul 11 17:02:05 2011 -0700 ARM: i.MX53: consistently use MX53_UART_PAD_CTRL for uart txd/rxd/rts/cts Signed-off-by: Troy Kisky Signed-off-by: Sascha Hauer commit c5bc9bcf3dac6a3a7f09ffcd7119cdbadaa2a1f8 Author: Troy Kisky Date: Mon Jul 11 17:02:04 2011 -0700 ARM: i.MX53: UARTn_CTS pin should not change RTS input select If both the RTS pad and CTS pad definitions setup IOMUXC_UARTn_IPP_UART_RTS_MUX_SELECT_INPUT, then the order of setup will matter. We don't want that. Signed-off-by: Troy Kisky Signed-off-by: Sascha Hauer commit 967181d330e6a4988be74cdecb419c26341fcb0a Author: Troy Kisky Date: Mon Jul 11 17:02:03 2011 -0700 ARM: i.MX53: UARTn_TXD pin should not change RXD input select If both the RXD pad and TXD pad definitions setup IOMUXC_UARTn_IPP_UART_RXD_MUX_SELECT_INPUT, then the order of setup will matter. We don't want that. Signed-off-by: Troy Kisky Signed-off-by: Sascha Hauer commit 46fcb2ed29ff7a9ec34c4ae67b631743eb7e756f Author: Eric Sandeen Date: Thu Jun 23 10:39:34 2011 -0500 GFS2: combine duplicated block freeing routines __gfs2_free_data and __gfs2_free_meta are almost identical, and can be trivially combined. [This is as per Eric's original patch minus gfs2_free_data() which had no callers left and plus the conversion of the bmap.c calls to these functions. All in all, a nice clean up] Signed-off-by: Eric Sandeen Signed-off-by: Steven Whitehouse commit 9964afbb797329e4c6e5d05ebc199c39af618c5f Author: Steven Whitehouse Date: Thu Jun 16 14:06:55 2011 +0100 GFS2: Add S_NOSEC support This adds S_NOSEC support to GFS2. We set/reset the flag either when a user calls setattr or when we have just regained the glock from another node. The flag is only set if there are no xattrs on the inode and there is no suid bit set. Signed-off-by: Steven Whitehouse Reviewed-by: Andi Kleen Cc: Al Viro commit 7cf8dcd3b68a760d66fbc7f0d75d3fbb8f21775d Author: Bob Peterson Date: Wed Jun 15 11:41:48 2011 -0400 GFS2: Automatically adjust glock min hold time This patch is a performance improvement for GFS2 in a clustered environment. It makes the glock hold time self-adjusting. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit 17d539f0499fa2c0321b7c260831cca2bb36d119 Author: Steven Whitehouse Date: Wed Jun 15 10:29:37 2011 +0100 GFS2: Cache dir hash table in a contiguous buffer This patch adds a cache for the hash table to the directory code in order to help simplify the way in which the hash table is accessed. This is intended to be a first step towards introducing some performance improvements in the directory code. There are two follow ups that I'm hoping to see fairly shortly. One is to simplify the hash table reading code now that we always read the complete hash table, whether we want one entry or all of them. The other is to introduce readahead on the heads of the hash chains which are referred to from the table. The hash table is a maximum of 128k in size, so it is not worth trying to read it in small chunks. Signed-off-by: Steven Whitehouse commit 0bd70c023cc7f58b605ca6bed284588b77144f75 Author: Fabio Estevam Date: Fri Jul 8 14:59:49 2011 -0300 ARM: mx25: Fix typo on CAN1_RX pad setting Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit ec51f2f1cf1eb7b7c4ca88ad89eaf1508742a19c Author: Lothar Waßmann Date: Fri Jul 8 09:22:14 2011 +0200 iomux-mx53: add missing 'IOMUX_CONFIG_SION' for some I2C pad definitions The I2C controller requires the SION bit to be set on SDA and SCL pins. This is missing on some pad definitions for the I2C function. Signed-off-by: Lothar Waßmann Signed-off-by: Sascha Hauer commit f21169aa876b3a26c0a95a70724886ca03998870 Author: Daniel T Chen Date: Thu Jul 14 22:06:06 2011 -0400 ALSA: intel8x0: Apply headphones+mute LED quirk for Dell Inspiron 9300 BugLink: https://bugs.launchpad.net/bugs/774895 The original reporter states that his volume keys do not change the desired Master and PCM mixer elements together, so apply the hp+mute led quirk for his PCI SSID. Reported-by: Jeffrey Finkelstein Signed-off-by: Daniel T Chen Signed-off-by: Takashi Iwai commit 28a4a163b561c39ac0c798d420e0927f29e9d4c8 Author: Rob Clark Date: Thu Jul 14 03:12:43 2011 +0000 drm: platform multi-device support Include the device id in the bus-id to give userspace a way to open the correct "cardN" when there are multiple device instances. Signed-off-by: Rob Clark Signed-off-by: Dave Airlie commit 73d382deccac186d103496bf10388bc2432a8384 Author: Oleg Nesterov Date: Sun Jul 10 18:44:24 2011 +0200 x86: Kill handle_signal()->set_fs() handle_signal()->set_fs() has a nice comment which explains what set_fs() is, but it doesn't explain why it is needed and why it depends on CONFIG_X86_64. Afaics, the history of this confusion is: 1. I guess today nobody can explain why it was needed in arch/i386/kernel/signal.c, perhaps it was always wrong. This predates 2.4.0 kernel. 2. then it was copy-and-past'ed to the new x86_64 arch. 3. then it was removed from i386 (but not from x86_64) by b93b6ca3 "i386: remove unnecessary code". 4. then it was reintroduced under CONFIG_X86_64 when x86 unified i386 and x86_64, because the patch above didn't touch x86_64. Remove it. ->addr_limit should be correct. Even if it was possible that it is wrong, it is too late to fix it after setup_rt_frame(). Linus commented in: http://lkml.kernel.org/r/alpine.LFD.0.999.0707170902570.19166@woody.linux-foundation.org ... about the equivalent bit from i386: Heh. I think it's entirely historical. Please realize that the whole reason that function is called "set_fs()" is that it literally used to set the %fs segment register, not "->addr_limit". So I think the "set_fs(USER_DS)" is there _only_ to match the other regs->xds = __USER_DS; regs->xes = __USER_DS; regs->xss = __USER_DS; regs->xcs = __USER_CS; things, and never mattered. And now it matters even less, and has been copied to all other architectures where it is just totally insane. Signed-off-by: Oleg Nesterov Link: http://lkml.kernel.org/r/20110710164424.GA20261@redhat.com Signed-off-by: H. Peter Anvin commit 9b429620740945363b746414e8b9a84b8119914c Author: Oleg Nesterov Date: Sun Jul 10 20:22:03 2011 +0200 x86, do_signal: Simplify the TS_RESTORE_SIGMASK logic 1. do_signal() looks at TS_RESTORE_SIGMASK and calculates the mask which should be stored in the signal frame, then it passes "oldset" to the callees, down to setup_rt_frame(). This is ugly, setup_rt_frame() can do this itself and nobody else needs this sigset_t. Move this code into setup_rt_frame. 2. do_signal() also clears TS_RESTORE_SIGMASK if handle_signal() succeeds. We can move this to setup_rt_frame() as well, this avoids the unnecessary checks and makes the logic more clear. 3. use set_current_blocked() instead of sigprocmask(SIG_SETMASK), sigprocmask() should be avoided. Signed-off-by: Oleg Nesterov Link: http://lkml.kernel.org/r/20110710182203.GA27979@redhat.com Signed-off-by: H. Peter Anvin commit 3982294b0342474ff91472b34c6afb701785f524 Author: Oleg Nesterov Date: Sun Jul 10 21:27:27 2011 +0200 x86, signals: Convert the X86_32 code to use set_current_blocked() sys_sigsuspend() and sys_sigreturn() change ->blocked directly. This is not correct, see the changelog in e6fa16ab "signal: sigprocmask() should do retarget_shared_pending()" Change them to use set_current_blocked(). Signed-off-by: Oleg Nesterov Link: http://lkml.kernel.org/r/20110710192727.GA31759@redhat.com Signed-off-by: H. Peter Anvin commit 905f29e2aa004560907199cc96248fa11bafea8a Author: Oleg Nesterov Date: Sun Jul 10 21:27:24 2011 +0200 x86, signals: Convert the IA32_EMULATION code to use set_current_blocked() sys32_sigsuspend() and sys32_*sigreturn() change ->blocked directly. This is not correct, see the changelog in e6fa16ab "signal: sigprocmask() should do retarget_shared_pending()" Change them to use set_current_blocked(). Signed-off-by: Oleg Nesterov Link: http://lkml.kernel.org/r/20110710192724.GA31755@redhat.com Signed-off-by: H. Peter Anvin commit acdca31dba86c4f426460aa000d13930a00549b7 Author: Yuan Kang Date: Fri Jul 15 11:21:42 2011 +0800 crypto: caam - ablkcipher support caam now supports encrypt and decrypt for aes, des and 3des Signed-off-by: Yuan Kang Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 1acebad3d8db8d5220b3010c2eb160c625434cf2 Author: Yuan Kang Date: Fri Jul 15 11:21:42 2011 +0800 crypto: caam - faster aead implementation Job descriptors only contain header and seq pointers. Other commands are stored in separate shared descriptors for encrypt, decrypt and givencrypt, stored as arrays in caam_ctx. This requires additional macros to create math commands to calculate assoclen and cryptlen. Signed-off-by: Yuan Kang Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 885e9e2fd3f009de56dd265f4ecd8740e9ad5aaa Author: Yuan Kang Date: Fri Jul 15 11:21:41 2011 +0800 crypto: caam - structure renaming caam_ctx.key_phys to key_dma caam_alg_template supports multiple algorithm types listed in union, which requires cases for different types in function caam_alg_alloc Signed-off-by: Yuan Kang Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 0e47930020081b07047842be3e4552edb2395352 Author: Yuan Kang Date: Fri Jul 15 11:21:41 2011 +0800 crypto: caam - shorter names "aead_authenc" and "ipsec_esp" changed to "aead," except for function "ipsec_esp," which is changed to "init_aead_job." Variable name of aead_request structures changed to "req" and name of aead_givcrypt_request structure changed to "areq" Signed-off-by: Yuan Kang Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 1c2b4abb19285368808f303ad61e17b172f1a108 Author: Kim Phillips Date: Fri Jul 15 11:21:40 2011 +0800 crypto: talitos - don't bad_key in ablkcipher setkey crypto/ablkcipher.c's setkey() has already checked against the min, max key sizes before it calls here, and all max_keysize assignments in the algorithm template array do not exceed TALITOS_MAX_KEY_SIZE. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit febec54286623a540cbe483a5d471ff6576a6e2e Author: Kim Phillips Date: Fri Jul 15 11:21:39 2011 +0800 crypto: talitos - remove unused giv from ablkcipher methods Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 602dba5a81790375f364e484cbc439f17157752e Author: Kim Phillips Date: Fri Jul 15 11:21:39 2011 +0800 crypto: talitos - don't set done notification in hot path IRQ done notification is always set. Remove its explicit assignment from the hot path by including it in the descriptor header template assignment in talitos_cra_init. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 5228f0f79e983c2b39c202c75af901ceb0003fc1 Author: Kim Phillips Date: Fri Jul 15 11:21:38 2011 +0800 crypto: talitos - ensure request ordering within a single tfm Assign single target channel per tfm in talitos_cra_init instead of performing channel scheduling dynamically during the encryption request. This changes the talitos_submit interface to accept a new channel number argument. Without this, rapid bursts of misc. sized requests could make it possible for IPsec packets to be encrypted out-of-order, which would result in packet drops due to sequence numbers falling outside the anti-reply window on a peer gateway. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit f7bc8b61f65726ff98f52e286b28e294499d7a08 Author: Steven Rostedt Date: Thu Jul 14 23:02:27 2011 -0400 ftrace: Fix regression where ftrace breaks when modules are loaded Enabling function tracer to trace all functions, then load a module and then disable function tracing will cause ftrace to fail. This can also happen by enabling function tracing on the command line: ftrace=function and during boot up, modules are loaded, then you disable function tracing with 'echo nop > current_tracer' you will trigger a bug in ftrace that will shut itself down. The reason is, the new ftrace code keeps ref counts of all ftrace_ops that are registered for tracing. When one or more ftrace_ops are registered, all the records that represent the functions that the ftrace_ops will trace have a ref count incremented. If this ref count is not zero, when the code modification runs, that function will be enabled for tracing. If the ref count is zero, that function will be disabled from tracing. To make sure the accounting was working, FTRACE_WARN_ON()s were added to updating of the ref counts. If the ref count hits its max (> 2^30 ftrace_ops added), or if the ref count goes below zero, a FTRACE_WARN_ON() is triggered which disables all modification of code. Since it is common for ftrace_ops to trace all functions in the kernel, instead of creating > 20,000 hash items for the ftrace_ops, the hash count is just set to zero, and it represents that the ftrace_ops is to trace all functions. This is where the issues arrise. If you enable function tracing to trace all functions, and then add a module, the modules function records do not get the ref count updated. When the function tracer is disabled, all function records ref counts are subtracted. Since the modules never had their ref counts incremented, they go below zero and the FTRACE_WARN_ON() is triggered. The solution to this is rather simple. When modules are loaded, and their functions are added to the the ftrace pool, look to see if any ftrace_ops are registered that trace all functions. And for those, update the ref count for the module function records. Reported-by: Thomas Gleixner Signed-off-by: Steven Rostedt commit 8ff37c38a26dbdba16f07d48c13bf5f212a98c89 Author: Peter Korsgaard Date: Thu Jul 14 21:59:26 2011 +0200 mcp23s08: remove unused work queue Never accessed anywhere. Signed-off-by: Peter Korsgaard Signed-off-by: Grant Likely commit 98eedc3a9dbf90cecb91093d2a7fa083942b7d13 Author: Andy Lutomirski Date: Wed Jul 13 09:24:16 2011 -0400 Document the vDSO and add a reference parser It turns out that parsing the vDSO is nontrivial if you don't already have an ELF dynamic loader around. So document it in Documentation/ABI and add a reference CC0-licenced parser. This code is dedicated to Go issue 1933: http://code.google.com/p/go/issues/detail?id=1933 Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/a315a9514cd71bcf29436cc31e35aada21a5ff21.1310563276.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit 574c44fa8fa6262ffd5939789ef51a6e98ed62d7 Author: Andy Lutomirski Date: Wed Jul 13 09:24:15 2011 -0400 ia64: Replace clocksource.fsys_mmio with generic arch data Now that clocksource.archdata is available, use it for ia64-specific code. Cc: Clemens Ladisch Cc: linux-ia64@vger.kernel.org Cc: Tony Luck Cc: Fenghua Yu Cc: John Stultz Cc: Thomas Gleixner Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/d31de0ee0842a0e322fb6441571c2b0adb323fa2.1310563276.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit 98d0ac38ca7b1b7a552c9a2359174ff84decb600 Author: Andy Lutomirski Date: Thu Jul 14 06:47:22 2011 -0400 x86-64: Move vread_tsc and vread_hpet into the vDSO The vsyscall page now consists entirely of trap instructions. Cc: John Stultz Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/637648f303f2ef93af93bae25186e9a1bea093f5.1310639973.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit ecae42d37045ec71831d0e0e493e00b0e0732edd Author: Geoff Levand Date: Thu Jul 14 16:03:29 2011 -0700 net/ps3: Fix gelic RX DMA restart Fix the condition where PS3 network RX hangs when no network TX is occurring by calling gelic_card_enable_rxdmac() during RX_DMA_CHAIN_END event processing. The gelic hardware automatically clears its RX_DMA_EN flag when it detects an RX_DMA_CHAIN_END event. In its processing of RX_DMA_CHAIN_END the gelic driver is required to set RX_DMA_EN (with a call to gelic_card_enable_rxdmac()) to restart RX DMA transfers. The existing gelic driver code does not set RX_DMA_EN directly in its processing of the RX_DMA_CHAIN_END event, but uses a flag variable card->rx_dma_restart_required to schedule the setting of RX_DMA_EN until next inside the interrupt handler. It seems this delayed setting of RX_DMA_EN causes the hang since the next RX interrupt after the RX_DMA_CHAIN_END event where RX_DMA_EN is scheduled to be set will not occur since RX_DMA_EN was not set. In the case were network TX is occuring, RX_DMA_EN is set in the next TX interrupt and RX processing continues. Signed-off-by: Geoff Levand Signed-off-by: David S. Miller commit 6383c0b35b48bfbd0fc8c6fe126a6603c5a9a4b3 Author: Ariel Elior Date: Thu Jul 14 08:31:57 2011 +0000 bnx2x: Multiple concurrent l2 traffic classes Overview: Support mapping of priorities to traffic classes and traffic classes to transmission queues ranges in the net device. The queue ranges are (count, offset) pairs relating to the txq array. This can be done via DCBX negotiation or by kernel. As a result Enhanced Transmission Selection (ETS) and Priority Flow Control (PFC) are supported between L2 network traffic classes. Mapping: This patch uses the netdev_set_num_tc, netdev_set_prio_tc_map and netdev_set_tc_queue functions to map priorities to traffic classes and traffic classes to transmission queue ranges. This mapping is performed by bnx2x_setup_tc function which is connected to the ndo_setup_tc. This function is always called at nic load where by default it maps all priorities to tc 0, and it may also be called by the kernel or by the bnx2x upon DCBX negotiation to modify the mapping. rtnl lock: When the ndo_setup_tc is called at nic load or by kernel the rtnl lock is already taken. However, when DCBX negotiation takes place the lock is not taken. The work is therefore scheduled to be handled by the sp_rtnl task. Fastpath: The fastpath structure of the bnx2x which was previously used to hold the information of one tx queue and one rx queue was redesigned to represent multiple tx queues, one for each traffic class. The transmission queue supplied in the skb by the kernel can no longer be interpreted as a straightforward index into the fastpath structure array, but it must rather be decoded to the appropriate fastpath index and the tc within that fastpath. Slowpath: The bnx2x's queue object was redesigned to accommodate multiple transmission queues. The queue object's state machine was enhanced to allow opening multiple transmission-only connections on top of the regular tx-rx connection. Firmware: This feature relies on the tx-only queue feature introduced in the bnx2x 7.0.23 firmware and the FW likewise must have the bnx2x multi cos support. Signed-off-by: Ariel Elior Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 7be08a7222c345798b0697a89ea3dd2c7c83f47c Author: Ariel Elior Date: Thu Jul 14 08:31:19 2011 +0000 bnx2x: Renaming the "reset_task" to "sp_rtnl_task" Renaming the "reset_task" to a more general purpose name, "sp_rtnl_task", as it is already used for another purpose other than reset which is parity recovery, and since I plan to add a third operation for this task, updating the priority to traffic class and traffic class to transmission queues mappings after dcbx negotiation takes place. Signed-off-by: Ariel Elior Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 39770653ca4423562e88726a629886c41139610b Merge: e20e694 e542a22 Author: David S. Miller Date: Thu Jul 14 15:59:38 2011 -0700 Merge branch 'davem-next.r8169' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6 commit 4bb82178f5cb074783aaeaa06f9f840c67af7707 Author: H. Peter Anvin Date: Thu Jul 14 14:58:44 2011 -0700 x86, msr: Fix typo in ENERGY_PERF_BIAS_POWERSAVE Fix a trivial typo in the name of the constant ENERGY_PERF_BIAS_POWERSAVE. This didn't cause trouble because this constant is not currently used for anything. Signed-off-by: H. Peter Anvin Cc: Len Brown Link: http://lkml.kernel.org/r/tip-abe48b108247e9b90b4c6739662a2e5c765ed114@git.kernel.org commit e20e6940736fb7b4dd024933f7456b9da4c44118 Author: Michał Mirosław Date: Thu Jul 14 14:45:59 2011 -0700 net: remove SK_ROUTE_CAPS from meta ematch Remove it, as it indirectly exposes netdev features. It's not used in iproute2 (2.6.38) - is anything else using its interface? Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 974151e6119f20d2af4acb97526c780ae0f18ccb Author: Michał Mirosław Date: Thu Jul 14 14:45:15 2011 -0700 net: remove /sys/class/net/*/features The same information and more can be obtained by using ethtool with ETHTOOL_GFEATURES. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 7143f168e2aa4bc7f8a8bcfe46d8dc52f7be869a Author: Masami Hiramatsu Date: Mon Jun 27 16:26:36 2011 +0900 tracing/kprobes: Rename probe_* to trace_probe_* Rename probe_* to trace_probe_* for avoiding namespace confliction. This also fixes improper names of find_probe_event() and cleanup_all_probes() to find_trace_probe() and release_all_trace_probes() respectively. Signed-off-by: Masami Hiramatsu Cc: Arnaldo Carvalho de Melo Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/20110627072636.6528.60374.stgit@fedora15 Signed-off-by: Steven Rostedt commit fec30c33819b442fd618b10f405248ee7cbb51d8 Author: Michał Mirosław Date: Wed Jul 13 14:10:30 2011 +0000 net: unexport netdev_fix_features() It is not used anywhere except net/core/dev.c now. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 1180e7d6599c1fb0c56a23a649a3eb37d877b9d0 Author: Michał Mirosław Date: Thu Jul 14 14:41:11 2011 -0700 net: cleanup vlan_features setting in register_netdev vlan_features contains features inherited from underlying device. NETIF_SOFT_FEATURES are not inherited but belong to the vlan device itself (ensured in vlan_dev_fix_features()). Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 6c9c1b5456e3ba0b4a1a43866600e84bbba0db12 Author: Michał Mirosław Date: Thu Jul 14 14:39:29 2011 -0700 net: vlan: remove reduntant check in ndo_fix_features callback Use the fact that ORing with zero is a no-op. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 512e4002ab9ac54a2d8f7f198a9cd503dcc3c161 Author: Michał Mirosław Date: Thu Jul 14 14:38:17 2011 -0700 net: m68k/nfeth: Remove wrong usage of dev->flags Remove wrong setting of dev->flags. NETIF_F_NO_CSUM maps to IFF_DEBUG there, so looks like a mistake. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit f91298709790b9a483752ca3c967845537df2af3 Author: Cyrill Gorcunov Date: Sat Jul 9 00:17:12 2011 +0400 perf, x86: P4 PMU - Introduce event alias feature Instead of hw_nmi_watchdog_set_attr() weak function and appropriate x86_pmu::hw_watchdog_set_attr() call we introduce even alias mechanism which allow us to drop this routines completely and isolate quirks of Netburst architecture inside P4 PMU code only. The main idea remains the same though -- to allow nmi-watchdog and perf top run simultaneously. Note the aliasing mechanism applies to generic PERF_COUNT_HW_CPU_CYCLES event only because arbitrary event (say passed as RAW initially) might have some additional bits set inside ESCR register changing the behaviour of event and we can't guarantee anymore that alias event will give the same result. P.S. Thanks a huge to Don and Steven for for testing and early review. Acked-by: Don Zickus Tested-by: Steven Rostedt Signed-off-by: Cyrill Gorcunov CC: Ingo Molnar CC: Peter Zijlstra CC: Stephane Eranian CC: Lin Ming CC: Arnaldo Carvalho de Melo CC: Frederic Weisbecker Link: http://lkml.kernel.org/r/20110708201712.GS23657@sun Signed-off-by: Steven Rostedt commit e542a2269f232d61270ceddd42b73a4348dee2bb Author: Hayes Wang Date: Wed Jul 6 15:58:04 2011 +0800 r8169: adjust the RxConfig settings. Set the init value before reset in probe function. And then just modify the relative bits and keep the init settings. For 8110S, 8110SB, and 8110SC series, the initial value of RxConfig needs to be set after the tx/rx is enabled. Signed-off-by: Hayes Wang Acked-by: Francois Romieu commit aaa89c08d9ffa3739c93d65d98b73ec2aa2e93a5 Author: Hayes Wang Date: Wed Jul 6 15:58:08 2011 +0800 r8169: don't enable rx when shutdown. Only 8111b needs to enable rx when shutdowning with WoL. Signed-off-by: Hayes Wang Acked-by: Francois Romieu commit d4ed95d796e5126bba51466dc07e287cebc8bd19 Author: Hayes Wang Date: Wed Jul 6 15:58:07 2011 +0800 r8169: fix wake on lan setting for non-8111E. Only 8111E needs enable RxConfig bit 0 ~ 3 when suspending or shutdowning for wake on lan. Signed-off-by: Hayes Wang Acked-by: Francois Romieu commit 70090424e59652c4b2e777b533cc23134b176b83 Author: Hayes Wang Date: Wed Jul 6 15:58:06 2011 +0800 r8169: support RTL8111E-VL. Signed-off-by: Hayes Wang Acked-by: Francois Romieu commit 133ac40ac26a6cba957ad5765892f0531ba6ccee Author: Hayes Wang Date: Wed Jul 6 15:58:05 2011 +0800 r8169: add ERI functions. Add the ERI functions which would be used by the new chips. Signed-off-by: Hayes Wang Acked-by: Francois Romieu commit 92fc43b4159b518f5baae57301f26d770b0834c9 Author: Hayes Wang Date: Wed Jul 6 15:58:03 2011 +0800 r8169: modify the flow of the hw reset. - Disable tx and rx by resetting hw, so replace rtl8169_asic_down with rtl8169_hw_reset. - RxConfig bits 0 ~ 5 have to be cleared before hw reset to avoid receiving spurious data. - Certain chips need to do some checking before reset. - Remove hw reset which is done before hw_start. It is done in close, down or device probe functions. - Move rtl8169_init_ring_indexes function into rtl_hw_reset function. The indexes of tx and rx only need to be zero when the hw resets. Signed-off-by: Hayes Wang Acked-by: Francois Romieu commit 4f6b00e5f139d7be3ca8371b769778f94fa549dd Author: Hayes Wang Date: Wed Jul 6 15:58:02 2011 +0800 r8169: adjust some registers. Define new registers and modify some existing ones. Signed-off-by: Hayes Wang Acked-by: Francois Romieu commit 4a9bd3f134decd6d16ead8d288342d57aad486be Author: Steven Rostedt Date: Thu Jul 14 16:36:53 2011 -0400 tracing: Have dynamic size event stack traces Currently the stack trace per event in ftace is only 8 frames. This can be quite limiting and sometimes useless. Especially when the "ignore frames" is wrong and we also use up stack frames for the event processing itself. Change this to be dynamic by adding a percpu buffer that we can write a large stack frame into and then copy into the ring buffer. For interrupts and NMIs that come in while another event is being process, will only get to use the 8 frame stack. That should be enough as the task that it interrupted will have the full stack frame anyway. Requested-by: Thomas Gleixner Signed-off-by: Steven Rostedt commit 259032bfe379281bf7cba512b7705bdb4ce41db5 Author: Sonny Rao Date: Thu Jul 14 13:34:43 2011 +1000 perf: Robustify proc and debugfs file recording While attempting to create a timechart of boot up I found perf didn't tolerate modules being loaded/unloaded. This patch fixes this by reading the file once and then writing the size read at the correct point in the file. It also simplifies the code somewhat. Cc: Peter Zijlstra Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Signed-off-by: Sonny Rao Signed-off-by: Michael Neuling Link: http://lkml.kernel.org/r/10011.1310614483@neuling.org Signed-off-by: Steven Rostedt commit 22a85e4cd51b49ec99703ddfdff8686d5442a093 Author: Shawn Guo Date: Sun Jul 10 01:16:41 2011 +0800 spi/imx: add device tree probe support It adds device tree probe support for spi-imx driver. Signed-off-by: Shawn Guo Cc: Grant Likely Signed-off-by: Grant Likely commit c2387cb9e55f9c85ed33a5bf086f348312158133 Author: Shawn Guo Date: Sun Jul 10 01:16:40 2011 +0800 spi/imx: copy gpio number passed by platform data into driver private data It copies gpio number passed via platform data embedded pointer into driver private data, so that we do not need to refer to this embedded pointer passed by platform data after probe function exits. Signed-off-by: Shawn Guo Cc: Uwe Kleine-König Cc: Sascha Hauer Cc: Grant Likely Signed-off-by: Grant Likely commit 04ee585495a6d474d1ff9a821b52abf7db99cad3 Author: Shawn Guo Date: Sun Jul 10 01:16:39 2011 +0800 spi/imx: use soc name in spi device type naming scheme Software defined version number is not stable enough to be used in device type naming scheme. The patch changes it to use implicit soc name for spi device type definition. In this way, we can easily align the naming scheme with device tree binding, which comes later. It removes fifosize from spi_imx_data and adds devtype there, so that fifosize can be set in an inline function according to devtype. Also, cpu_is_mx can be replaced by inline functions checking devtype. Signed-off-by: Shawn Guo Cc: Uwe Kleine-König Cc: Sascha Hauer Cc: Grant Likely Signed-off-by: Grant Likely commit 2a64a90a2c64420e880b25dfeec6524ea78926fb Author: Shawn Guo Date: Sun Jul 10 01:16:38 2011 +0800 spi/imx: merge type SPI_IMX_VER_0_7 into SPI_IMX_VER_0_4 The only difference between SPI_IMX_VER_0_7 and SPI_IMX_VER_0_4 is .config function. The patch uses cpu_is_mx35 (to be removed) as the temporary solution to consolidate functions spi_imx0_4_config and spi_imx0_7_config into mx31_config. As a result, type SPI_IMX_VER_0_7 can be merged into SPI_IMX_VER_0_4. It also renames function spi_imx0_4_reset to mx31_reset to keep consistency with other function naming. A couple of redundant macros, MX3_CSPISTAT and MX3_CSPISTAT_RR, together with the useless type SPI_IMX_VER_0_5 also get cleaned up. Signed-off-by: Shawn Guo Cc: Uwe Kleine-König Cc: Sascha Hauer Cc: Grant Likely Signed-off-by: Grant Likely commit 66de757c589bedc13f503fb23df67bc86803f371 Author: Shawn Guo Date: Sun Jul 10 01:16:37 2011 +0800 spi/imx: do not use spi_imx2_3 to name SPI_IMX_VER_2_3 function and macro It's confusing to use spi_imx2_3 to name SPI_IMX_VER_2_3 function and macro, as it easily make people think of imx2 and imx3. It's better to use specific soc name just like what other SPI_IMX_VER do. For SPI_IMX_VER_2_3 case, it will be mx51. To distinguish it from CSPI on mx51, mx51_ecspi might be a good choice. Signed-off-by: Shawn Guo Cc: Uwe Kleine-König Cc: Sascha Hauer Cc: Grant Likely Signed-off-by: Grant Likely commit 3451fb15635d11c52a2ba4d3f1ae3a6b4c265070 Author: Shawn Guo Date: Sun Jul 10 01:16:36 2011 +0800 spi/imx: use mx21 to name SPI_IMX_VER_0_0 function and macro SPI_IMX_VER_0_0 covers i.mx21 and i.mx27. It makes more sense to use mx21 rather than mx27 to name SPI_IMX_VER_0_0 function and macro, since i.mx21 comes out ealier than i.mx27. Signed-off-by: Shawn Guo Cc: Uwe Kleine-König Cc: Sascha Hauer Cc: Grant Likely Signed-off-by: Grant Likely commit edd501bbf177ab62f963476c917cbdb0dc7dc862 Author: Shawn Guo Date: Sun Jul 10 01:16:35 2011 +0800 spi/imx: do not make copy of spi_imx_devtype_data spi_imx_devtype_data has already been driver private data. There is really no need to make a copy in spi_imx_data. Instead, a reference pointer works perfectly fine. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit abe48b108247e9b90b4c6739662a2e5c765ed114 Author: Len Brown Date: Thu Jul 14 00:53:24 2011 -0400 x86, intel, power: Initialize MSR_IA32_ENERGY_PERF_BIAS Since 2.6.36 (23016bf0d25), Linux prints the existence of "epb" in /proc/cpuinfo, Since 2.6.38 (d5532ee7b40), the x86_energy_perf_policy(8) utility has been available in-tree to update MSR_IA32_ENERGY_PERF_BIAS. However, the typical BIOS fails to initialize the MSR, presumably because this is handled by high-volume shrink-wrap operating systems... Linux distros, on the other hand, do not yet invoke x86_energy_perf_policy(8). As a result, WSM-EP, SNB, and later hardware from Intel will run in its default hardware power-on state (performance), which assumes that users care for performance at all costs and not for energy efficiency. While that is fine for performance benchmarks, the hardware's intended default operating point is "normal" mode... Initialize the MSR to the "normal" by default during kernel boot. x86_energy_perf_policy(8) is available to change the default after boot, should the user have a different preference. Signed-off-by: Len Brown Link: http://lkml.kernel.org/r/alpine.LFD.2.02.1107140051020.18606@x980 Acked-by: Rafael J. Wysocki Signed-off-by: H. Peter Anvin Cc: commit 5ca80817e231723f1399bff495854ba2171103ca Author: Rafael J. Wysocki Date: Thu Jul 14 20:59:35 2011 +0200 ARM / shmobile: Return -EBUSY from A4LC power off if A3RV is active Since the A4LC should only be powered off if the A3RV is off, make the A4LC's power down routine return -EBUSY if A3RV is not off to indicate to the core that it doesn't want to power off the domain in that case. This will cause the core to regard A4LC as active, so the pm_genpd_poweron() in pd_power_down_a3rv() is not necessary any more. Signed-off-by: Rafael J. Wysocki Acked-by: Magnus Damm commit d28054020f97c7c9f15327a53945f0f40ffc5d7a Author: Rafael J. Wysocki Date: Thu Jul 14 20:59:20 2011 +0200 PM / Domains: Take .power_off() error code into account Currently pm_genpd_poweroff() discards error codes returned by the PM domain's .power_off() callback, because it's safer to always regard the domain as inaccessible to drivers after a failing .power_off(). Still, there are situations in which the low-level code may want to indicate that it doesn't want to power off the domain, so allow it to do that by returning -EBUSY from .power_off(). Signed-off-by: Rafael J. Wysocki Acked-by: Magnus Damm commit 0bc5b2debb832191a42baea7ff59d2ca6ce9f7d5 Author: Rafael J. Wysocki Date: Thu Jul 14 20:59:07 2011 +0200 ARM / shmobile: Use genpd_queue_power_off_work() Make pd_power_down_a3rv() use genpd_queue_power_off_work() to queue up the powering off of the A4LC domain to avoid queuing it up when it is pending. Signed-off-by: Rafael J. Wysocki Acked-by: Magnus Damm commit f996f2081276c37da4dbd7b2e6310fbc8f0034f6 Author: Jan Engelhardt Date: Thu Jul 14 18:48:56 2011 +0200 lib/vsprintf: replace link to Draft by final RFC number The draft has evolved to RFC 5952. Signed-off-by: Jan Engelhardt Signed-off-by: Jiri Kosina commit 883ba74f43092823d0ed4c6b21f0171e9b334607 Author: David Teigland Date: Thu Jul 14 12:31:49 2011 -0500 dlm: remove deadlock debug print gfs2 recently began using this feature heavily, creating more debug output than we want to see. Signed-off-by: David Teigland commit eff896ce0b4231a998d8b3aa81e846ffc4f6c0a4 Author: Andre Heider Date: Tue Jul 12 10:13:26 2011 +0000 ps3_gelic: Don't kill the device on DMA failure Reset card->tx_dma_progress when lv1_net_start_tx_dma() fails or it won't send anything afterwards anymore Signed-off-by: Andre Heider Acked-by: Geoff Levand Signed-off-by: David S. Miller commit bb4f85ce1731d78648870333f0ce77123fa162e6 Author: Andre Heider Date: Tue Jul 12 10:13:25 2011 +0000 ps3_gelic: Fix start_xmit kick error path Revert to a proper state when gelic_card_kick_txdma() fails: - Don't trigger BUG_ON when releasing the unsent tx descriptor - Reset the tx chain head since the tail was not modified and hence not in sync - Unlink the released descriptor bus address from its predecessor Signed-off-by: Andre Heider Acked-by: Geoff Levand Signed-off-by: David S. Miller commit e3001c98df51d81a72534837d8069bfb53f3e1ea Author: Andre Heider Date: Tue Jul 12 10:13:24 2011 +0000 ps3_gelic: Fix typos Signed-off-by: Andre Heider Acked-by: Geoff Levand Signed-off-by: David S. Miller commit 40522998dec20d970fe6f0ea8507004aef18f72d Author: Anirban Chakraborty Date: Thu Jul 14 03:16:55 2011 +0000 qlcnic: change capture mask for FW dump o Change FW dump capture mask to a defult value, instead of using the recommended value from the FW. This was done to keep the capture mask consistent with other function drivers. o Update driver version to 5.0.21 Signed-off-by: Anirban Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit fef0c0600b265ea5d4b1e39574801e6509a1dae6 Author: Amit Kumar Salecha Date: Thu Jul 14 03:16:54 2011 +0000 qlcnic: define error code for loopback test o Defined error code such as fw not responding, test already running and cable not connected. o Check Fw capability before performing loopback test. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit f127f4727f3f60359570b6daa136ac1156e38fbf Author: Sucheta Chakraborty Date: Thu Jul 14 03:16:53 2011 +0000 qlcnic: fix race in skb->len access. As soon as skb is given to hardware, TX completion can free skb under us. Therefore, we should update dev stats before kicking the device. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit e5dcf6dcde26ffdbd237dda4956bc6d7115dfae6 Author: Sucheta Chakraborty Date: Thu Jul 14 03:16:52 2011 +0000 qlcnic: enable mac-learning in promiscous mode. MAC learning is required in bridge mode. During bridge mode device will be put in promiscous mode. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit a941fef81b48179ea64728034f3ed5cda2336987 Author: Sritej Velaga Date: Thu Jul 14 03:16:51 2011 +0000 qlcnic: updated supported cards information Added QME8242-k 10GbE Dual Port Mezzanine Card to supported card info. Signed-off-by: Sritej Velaga Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 7b749ff4dfba109d25a6b4fd011ee78877831e86 Author: Sritej Velaga Date: Thu Jul 14 03:16:50 2011 +0000 qlcnic: fix chip reset logic Chip reset logic (IDC logic) has changed with fw dump support. This broked compatibility with driver using older IDC logic. Changes to make it compatible with drivers using older IDC logic. Signed-off-by: Sritej Velaga Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 41c2178adce37b249147063624f8a27b064b471e Author: Michael Chan Date: Wed Jul 13 17:24:22 2011 +0000 bnx2: Read iSCSI config from shared memory during ->probe() The scratchpad location that we were reading from has not been initialized yet during ->probe(), so we were getting inaccurate information. Update version to 2.1.10. Signed-off-by: Michael Chan Reviewed-by: Matt Carlson Signed-off-by: David S. Miller commit ecdbf6e0d555d353188647d1b2dee9a79db69c68 Author: Jeffrey Huang Date: Wed Jul 13 17:24:21 2011 +0000 bnx2: Add MCP dump to help debug issues related to management firmware. Signed-off-by: Jeffrey Huang Signed-off-by: Michael Chan Reviewed-by: Matt Carlson Signed-off-by: David S. Miller commit 558e4c758c4c7bf209325f5865189c6558860b2b Author: Michael Chan Date: Wed Jul 13 17:24:20 2011 +0000 cnic: Return proper error code if we fail to send netlink message to allow iSCSI connection to fail faster instead of waiting for the long timeout. Update version to 2.5.6. Signed-off-by: Michael Chan Reviewed-by: Matt Carlson Signed-off-by: David S. Miller commit e1dd883cb15310dc2ded9995a1f1d8b1cb1e88f3 Author: Michael Chan Date: Wed Jul 13 17:24:19 2011 +0000 cnic: Fix ring setup/shutdown code Latest bnx2x driver uses different CID for the iSCSI rings, so we need to pass it in the ring init data. The rx ring is also zeroed out to prevent stale DMA addresses from being used after shutdown. The same cp local variable redefined inside the else branch is also eliminated. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit b7d40315c9643034ac4b5c9dda480d0124416f89 Author: Michael Chan Date: Wed Jul 13 17:24:18 2011 +0000 cnic: Fix port_mode setting CHIP_2_PORT_MODE was not set correctly. Signed-off-by: Michael Chan Reviewed-by: Matt Carlson Signed-off-by: David S. Miller commit 973e574e26cc8f4704e5d7f112fd566386e37f04 Author: Michael Chan Date: Wed Jul 13 17:24:17 2011 +0000 cnic: Replace get_random_bytes() with random32() Suggested by Stephen Hemminger Signed-off-by: Michael Chan Reviewed-by: Matt Carlson Signed-off-by: David S. Miller commit 10d1e8ca8d7136111641472e9800775205ef5a0f Merge: cd0d722 ff79c8a Author: David S. Miller Date: Thu Jul 14 08:43:32 2011 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc-next commit cd0d7228b4f0279f219bc555fa0192dc072d79cd Author: Matt Carlson Date: Wed Jul 13 09:27:33 2011 +0000 tg3: Match power source to driver state Now that the driver state (and power source) is being more intensely scrutinized, we need to make sure it is correct 100% of the time. This patch finds and fixes all dangling power state transitions. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 3a1e19d383c7b91c8af52e8938ab60c40e3d26b3 Author: Matt Carlson Date: Wed Jul 13 09:27:32 2011 +0000 tg3: Add function status reporting This patch adds code to update the status of the function to a common location to the critical section added in the previous patch. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 6f5c8f8317d37045ffc7ea21dab8319a53c1ae57 Author: Matt Carlson Date: Wed Jul 13 09:27:31 2011 +0000 tg3: Create critical section around GPIO toggling The code that performs the power source switching will need to consider the status of the other devices before making any switches. The status updates and power source switching will need to be an atomic operation, so a critical section will be needed. This patch establishes the critical section through a CPMU mutex. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 69f11c9936ba310ed3620072983da6ed95e86cc0 Author: Matt Carlson Date: Wed Jul 13 09:27:30 2011 +0000 tg3: Determine PCI function number in one place tg3 devices will need to know exactly what function number they are so that they can communicate their status to the other functions. In a KVM environment, the function number of a device presented by the kernel might not be the true function number, so an alternative method to determine the function number is needed. This patch used to contain an implementation for the alternative method, but recently we discovered a hardware bug that renders it incorrect. While new method is not yet known, it is still useful to consolidate the code that determines the PCI function to one location and use the results throughout the code. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit bed9829f3ec4b30d5cbec6511a11368ba5f169fb Author: Matt Carlson Date: Wed Jul 13 09:27:29 2011 +0000 tg3: Check transitions to D0 power state Currently pci_set_power_state() does not return useful return codes for transitions to the D0 power state. If a device refuses to go into D0, the PCI layer issues a warning but returns success. Entering into D0 is a requirement for correct operation of tg3 devices though. If the PCI layer should be changed to return an error code for this type of failure, the tg3 driver would be interested in catching it and reacting to it. This patch makes the necessary modifications. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 168212858712b12c65e0fa1bec6c9c65808e7621 Author: Matt Carlson Date: Wed Jul 13 09:27:28 2011 +0000 tg3: Move power state transitions to init_one The tg3 driver is going to require memory mapped register access much sooner than before. This patch makes sure the device is in the D0 power state as soon as possible, and moves the code that enables the memory arbiter outside tg3_get_eeprom_hw_cfg() where it can be more easily monitored. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit c9cab24e954867a03ab833ea3b4c0e6e607eb0d6 Author: Matt Carlson Date: Wed Jul 13 09:27:27 2011 +0000 tg3: Detect APE enabled devs earlier The following patch will require the driver to communicate with the APE much sooner than before. This patch make sure the APE registers are memory mapped and that the ENABLE_APE bit is set before the first use. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit cc9f01b246ca8e4fa245991840b8076394f86707 Author: Chetan Loke Date: Thu Jul 14 08:36:33 2011 -0700 af-packet: fix - avoid reading stale data Currently we flush tp_status and then flush the remainder of the header+payload. tp_status should be flushed in the end to avoid stale data being read by user-space. Incorrectly re-ordered barriers in v1. Signed-off-by: Chetan Loke Signed-off-by: David S. Miller commit 6a7ebdf2fd15417e87b4fd02ff411aeaca34da5f Merge: f6b72b6 51414d4 Author: David S. Miller Date: Thu Jul 14 07:56:40 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: net/bluetooth/l2cap_core.c commit f6b72b6217f8c24f2a54988e58af858b4e66024d Author: David S. Miller Date: Thu Jul 14 07:53:20 2011 -0700 net: Embed hh_cache inside of struct neighbour. Now that there is a one-to-one correspondance between neighbour and hh_cache entries, we no longer need: 1) dynamic allocation 2) attachment to dst->hh 3) refcounting Initialization of the hh_cache entry is indicated by hh_len being non-zero, and such initialization is always done with the neighbour's lock held as a writer. Signed-off-by: David S. Miller commit 00ef9610acf2a90b3e75096355b92ff34e7c8f74 Author: Takashi Iwai Date: Thu Jul 14 15:57:27 2011 +0200 ALSA: hda - Fix krealloc() replacement in hda_codec.c It was obviously wrong, grr.... Signed-off-by: Takashi Iwai commit 7b1655f5f21a9bd1eb8b478c5dab9b83de809edc Author: Takashi Iwai Date: Thu Jul 14 15:31:21 2011 +0200 ALSA: hda - Re-add need_dac_fix check for multi-io jacks of Realtek codecs During the rewrite, the check of spec->need_dac_fix and the corresponding num_dacs change was dropped from the channel-mode control. This patch re-adds it, and also enables need_dac_fix for ALC880 as default, as this feature was originally introduced to fix h/w bugs of this chip. Signed-off-by: Takashi Iwai commit 5d10302f46df1d9a85c34ea97f9b6c29e414482e Author: Grant Likely Date: Thu Jul 14 05:33:52 2011 -0600 dt: remove extra xsysace platform_driver registration After commit 1c48a5c93, "dt: Eliminate of_platform_{,un}register_driver", the xsysace driver attempts to register two platform_drivers with the same name, which a) doesn't work, and b) isn't necessary. This patch merges the two platform_drivers. Reported-by: Daniel Hellstrom Signed-off-by: Grant Likely commit 58499906c8e9a87b4b65435effca733802c9b57d Author: Axel Lin Date: Thu Jul 14 18:14:46 2011 +0800 ASoC: wm8900: fix a memory leak if wm8900_set_fll fails Signed-off-by: Axel Lin Signed-off-by: Mark Brown commit 095c0aa83e52d6c3dd7168610746703921f570af Author: Glauber Costa Date: Mon Jul 11 15:28:18 2011 -0400 sched: adjust scheduler cpu power for stolen time This patch makes update_rq_clock() aware of steal time. The mechanism of operation is not different from irq_time, and follows the same principles. This lives in a CONFIG option itself, and can be compiled out independently of the rest of steal time reporting. The effect of disabling it is that the scheduler will still report steal time (that cannot be disabled), but won't use this information for cpu power adjustments. Everytime update_rq_clock_task() is invoked, we query information about how much time was stolen since last call, and feed it into sched_rt_avg_update(). Although steal time reporting in account_process_tick() keeps track of the last time we read the steal clock, in prev_steal_time, this patch do it independently using another field, prev_steal_time_rq. This is because otherwise, information about time accounted in update_process_tick() would never reach us in update_rq_clock(). Signed-off-by: Glauber Costa Acked-by: Rik van Riel Acked-by: Peter Zijlstra Tested-by: Eric B Munson CC: Jeremy Fitzhardinge CC: Anthony Liguori Signed-off-by: Avi Kivity commit e6e6685accfa81f509fadfc9624bc7c3862d75c4 Author: Glauber Costa Date: Mon Jul 11 15:28:17 2011 -0400 KVM guest: Steal time accounting This patch accounts steal time time in account_process_tick. If one or more tick is considered stolen in the current accounting cycle, user/system accounting is skipped. Idle is fine, since the hypervisor does not report steal time if the guest is halted. Accounting steal time from the core scheduler give us the advantage of direct acess to the runqueue data. In a later opportunity, it can be used to tweak cpu power and make the scheduler aware of the time it lost. [avi: doesn't exist on many archs] Signed-off-by: Glauber Costa Acked-by: Rik van Riel Acked-by: Peter Zijlstra Tested-by: Eric B Munson CC: Jeremy Fitzhardinge CC: Anthony Liguori Signed-off-by: Avi Kivity commit 747f2925836b678d2a0de980d70101fd35620f2a Author: Glauber Costa Date: Mon Jul 11 15:28:16 2011 -0400 ia64: add jump labels for paravirt Since in a later patch I intend to call jump labels inside CONFIG_PARAVIRT, IA64 would fail to compile if they are not provided. This patch provides those jump labels for the IA64 architecture. Signed-off-by: Glauber Costa Acked-by: Isaku Yamahata Acked-by: Rik van Riel CC: Tony Luck CC: Eddie Dong CC: Jeremy Fitzhardinge CC: Peter Zijlstra CC: Anthony Liguori CC: Eric B Munson Signed-off-by: Avi Kivity commit 3c404b578fab699c4708279938078d9404b255a4 Author: Glauber Costa Date: Mon Jul 11 15:28:15 2011 -0400 KVM guest: Add a pv_ops stub for steal time This patch adds a function pointer in one of the many paravirt_ops structs, to allow guests to register a steal time function. Besides a steal time function, we also declare two jump_labels. They will be used to allow the steal time code to be easily bypassed when not in use. Signed-off-by: Glauber Costa Acked-by: Rik van Riel Tested-by: Eric B Munson CC: Jeremy Fitzhardinge CC: Peter Zijlstra CC: Anthony Liguori Signed-off-by: Avi Kivity commit c9aaa8957f203bd6df83b002fb40b98390bed078 Author: Glauber Costa Date: Mon Jul 11 15:28:14 2011 -0400 KVM: Steal time implementation To implement steal time, we need the hypervisor to pass the guest information about how much time was spent running other processes outside the VM, while the vcpu had meaningful work to do - halt time does not count. This information is acquired through the run_delay field of delayacct/schedstats infrastructure, that counts time spent in a runqueue but not running. Steal time is a per-cpu information, so the traditional MSR-based infrastructure is used. A new msr, KVM_MSR_STEAL_TIME, holds the memory area address containing information about steal time This patch contains the hypervisor part of the steal time infrasructure, and can be backported independently of the guest portion. [avi, yongjie: export delayacct_on, to avoid build failures in some configs] Signed-off-by: Glauber Costa Tested-by: Eric B Munson CC: Rik van Riel CC: Jeremy Fitzhardinge CC: Peter Zijlstra CC: Anthony Liguori Signed-off-by: Yongjie Ren Signed-off-by: Avi Kivity commit b30d89d1055f9acd14b5eaf82d8f6a4763e91d85 Author: Axel Lin Date: Thu Jul 14 13:07:51 2011 +0800 HID: ACRUX - add missing hid_hw_stop() in ax_probe() error path hid_hw_stop() must be called in ax_probe() error path if hid_hw_start() was successful. Signed-off-by: Axel Lin Signed-off-by: Jiri Kosina commit 3b1af3f8c8f3298170fcbf6ef7971c3aeccc4318 Author: Mark Brown Date: Thu Jul 14 12:38:18 2011 +0900 ASoC: Log WM8994 FIFO errors from the interrupt We should spot them anyway on state changes but logging them gives us better time information about when the misconfiguration happened. Signed-off-by: Mark Brown commit 0f2a55d5bb2372058275b0b343d90dd5d640d045 Author: Tetsuo Handa Date: Thu Jul 14 14:46:51 2011 +0900 TOMOYO: Update kernel-doc. Update comments for scripts/kernel-doc and fix some of errors reported by scripts/checkpatch.pl . Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit d0254d56c72532b5d818d83c5e247fc627803f08 Author: Michel Dänzer Date: Wed Jul 13 15:18:10 2011 +0000 drm/radeon: Don't clobber error return value in page flipping cleanup paths. Signed-off-by: Michel Dänzer Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit fcc485d6672952f0ec6d077ea92f703670075323 Author: Michel Dänzer Date: Wed Jul 13 15:18:09 2011 +0000 drm/radeon: Don't generate new fence for page flip. Use the fence of the new frontbuffer, if any. Generating a new fence could cause us to wait for completely unrelated rendering to finish before performing the flip. Signed-off-by: Michel Dänzer Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit 5762a179b64cf37305d1d4d624e1b6ad9ee80602 Merge: cf056ed 6e96e77 Author: Dave Airlie Date: Thu Jul 14 06:45:23 2011 +0100 Merge branch 'drm-intel-next' of ssh://master.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6 into drm-core-next * 'drm-intel-next' of ssh://master.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6: (52 commits) drm/i915: provide module parameter description drm/i915: add module parameter compiler hints drm/i915/bios: Avoid temporary allocation whilst searching for downclock drm/i915: Cache GT fifo count for SandyBridge i915: Fix opregion notifications drm/i915: TVDAC_STATE_CHG does not indicate successful load-detect drm/i915: Select correct pipe during TV detect drm/i915/ringbuffer: Idling requires waiting for the ring to be empty Revert "drm/i915: enable rc6 by default" drm/i915: Clean up i915_driver_load failure path drm/i915: Enable i915 frame buffer compression by default drm/i915: Share the common work of disabling active FBC before updating drm/i915: Perform intel_enable_fbc() from a delayed task drm/i915: Disable FBC across page-flipping drm/i915: Set persistent-mode for ILK/SNB framebuffer compression drm/i915: Use of a CPU fence is mandatory to update FBC regions upon CPU writes drm/i915: Remove vestigial pitch from post-gen2 FBC control routines drm/i915: Replace direct calls to vfunc.disable_fbc with intel_disable_fbc() drm/i915: Only export the generic intel_disable_fbc() interface drm/i915: Enable GPU reset on Ivybridge. ... commit cd27918dc9d2b730fbb898ff075d4fbfb7f674aa Author: Axel Lin Date: Mon Jul 11 08:53:38 2011 +0800 gpio/da9052: remove a redundant assignment for gpio->da9052 We just set it twice in da9052_gpio_probe. Signed-off-by: Axel Lin Signed-off-by: Grant Likely commit 6e96e7757a0133a9a66fd9b86cd04b5e7b88122a Author: Ben Widawsky Date: Wed Jul 13 14:38:18 2011 -0700 drm/i915: provide module parameter description Signed-off-by: Ben Widawsky Signed-off-by: Keith Packard commit a35d9d3cf75604e9ef17faedd333bf2a66a513d8 Author: Ben Widawsky Date: Wed Jul 13 14:38:17 2011 -0700 drm/i915: add module parameter compiler hints Signed-off-by: Ben Widawsky Signed-off-by: Keith Packard commit 6331c28c962561aee59e5a493b7556a4bb585957 Author: Steven Rostedt Date: Wed Jul 13 15:11:02 2011 -0400 ftrace: Fix dynamic selftest failure on some archs Archs that do not implement CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST, will fail the dynamic ftrace selftest. The function tracer has a quick 'off' variable that will prevent the call back functions from being called. This variable is called function_trace_stop. In x86, this is implemented directly in the mcount assembly, but for other archs, an intermediate function is used called ftrace_test_stop_func(). In dynamic ftrace, the function pointer variable ftrace_trace_function is used to update the caller code in the mcount caller. But for archs that do not have CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST set, it only calls ftrace_test_stop_func() instead, which in turn calls __ftrace_trace_function. When more than one ftrace_ops is registered, the function it calls is ftrace_ops_list_func(), which will iterate over all registered ftrace_ops and call the callbacks that have their hash matching. The issue happens when two ftrace_ops are registered for different functions and one is then unregistered. The __ftrace_trace_function is then pointed to the remaining ftrace_ops callback function directly. This mean it will be called for all functions that were registered to trace by both ftrace_ops that were registered. This is not an issue for archs with CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST, because the update of ftrace_trace_function doesn't happen until after all functions have been updated, and then the mcount caller is updated. But for those archs that do use the ftrace_test_stop_func(), the update is immediate. The dynamic selftest fails because it hits this situation, and the ftrace_ops that it registers fails to only trace what it was suppose to and instead traces all other functions. The solution is to delay the setting of __ftrace_trace_function until after all the functions have been updated according to the registered ftrace_ops. Also, function_trace_stop is set during the update to prevent function tracing from calling code that is caused by the function tracer itself. Signed-off-by: Steven Rostedt commit 072126f4529196f71a97960248bca54fd4554c2d Author: Steven Rostedt Date: Wed Jul 13 15:08:31 2011 -0400 ftrace: Update filter when tracing enabled in set_ftrace_filter() Currently, if set_ftrace_filter() is called when the ftrace_ops is active, the function filters will not be updated. They will only be updated when tracing is disabled and re-enabled. Update the functions immediately during set_ftrace_filter(). Signed-off-by: Steven Rostedt commit 41fb61c2d08107ce96a5dcb3a6289b2afd3e135c Author: Steven Rostedt Date: Wed Jul 13 15:03:44 2011 -0400 ftrace: Balance records when updating the hash Whenever the hash of the ftrace_ops is updated, the record counts must be balance. This requires disabling the records that are set in the original hash, and then enabling the records that are set in the updated hash. Moving the update into ftrace_hash_move() removes the bug where the hash was updated but the records were not, which results in ftrace triggering a warning and disabling itself because the ftrace_ops filter is updated while the ftrace_ops was registered, and then the failure happens when the ftrace_ops is unregistered. The current code will not trigger this bug, but new code will. Signed-off-by: Steven Rostedt commit 95bfea1675c02d83cf1923272e62f91db11cbb8f Author: Shawn Guo Date: Thu Jun 30 16:06:33 2011 +0800 dmaengine: mxs-dma: skip request_irq for NO_IRQ In general, the mxs-dma users get separate irq for each channel, but gpmi is special one which has only one irq shared by all gpmi channels. It causes mxs_dma channel allocation function fail for all other gpmi channels except the first one calling into the function. The patch gets request_irq call skipped for NO_IRQ case, and leaves this gpmi specific quirk to gpmi driver to sort out. It will fix above problem if gpmi driver sets chan_irq as gpmi irq for only one channel and NO_IRQ for all the rest channels. Signed-off-by: Shawn Guo Cc: Vinod Koul Signed-off-by: Vinod Koul commit b89243dd0e6a1c96a4a346cb3e1ba2c637cdfe98 Author: Linus Walleij Date: Fri Jul 1 16:47:28 2011 +0200 dmaengine/coh901318: fix slave submission semantics While testing Per Forlins MMC speed improvements I noticed a semantic bug in the COH901318 driver: it will write to channel registers in the prep_slave_sg() function, instead of deferring it to later, breaking the assumption from the drivers to be able to queue up new jobs while another job is running. Fix this by storing up the initial register writes in the job descriptors and write them to hardware when we process the descriptor instead. Now the stress tests work. Acked-by: Per Forlin Signed-off-by: Linus Walleij Signed-off-by: Vinod Koul commit b3d7615f2a012c5e589209d08e89c4116134c9f4 Author: Giridhar Maruthy Date: Wed Jul 13 16:52:06 2011 +0530 ASoC: SAMSUNG: 24-bit audio playback on Exynos4210 Using 256fs or 512fs will result in distortion of 24-bit audio samples. This is because the lrclk generated is not proper. Using 384 fs generates proper output. Signed-off-by: Giridhar Maruthy Signed-off-by: Mark Brown commit ff79c8ac40a115adf5d94e1349f4a379ae156f55 Author: Ben Hutchings Date: Wed Jul 13 16:21:24 2011 +0100 sfc: Remove 'Communications' after 'Solarflare' in references to hardware Branding can now be abbreviated. Signed-off-by: Ben Hutchings commit 98ca528916c47ad17f78a07b45e49de3940fba77 Author: Rabin Vincent Date: Mon Jun 27 11:33:38 2011 +0200 dmaengine/ste_dma40: allow memory buswidth/burst to be configured Currently the runtime config implementation forces the memory side parameters to be the same as the peripheral side. Allow these to be different, and check for misconfiguration. Signed-off-by: Rabin Vincent Reviewed-by: Ulf HANSSON Tested-by: Stefan Nilsson Reviewed-by: Per Forlin Reviewed-by: Srinidhi Kasagar Cc: Robert Marklund Signed-off-by: Linus Walleij Signed-off-by: Vinod Koul commit f4b89764c470230bbf9d18c0a3411887c48bb5a2 Author: Linus Walleij Date: Mon Jun 27 11:33:46 2011 +0200 dmaengine/ste_dma40: use AMBA PrimeCell helper macros The DMA40 is not a PrimeCell from ARM, but it still use the same ID registers. So let's utilize the existing macros in the PrimeCell header to identify manufacturer and revision of the IP block instead of reinventing the wheel. Cc: Robert Marklund Cc: Per Forlin Cc: Rabin Vincent Signed-off-by: Linus Walleij Signed-off-by: Vinod Koul commit 79ca7ec3d1046a79c64f95f0cac0f5fd29829f53 Author: Robert Marklund Date: Mon Jun 27 11:33:24 2011 +0200 dmaengine/ste_dma40: make the cyclic alloc NOWAIT This function may be initiated from IRQ context, so the allocation must allocate NOWAIT memory. Signed-off-by: Robert Marklund Reviewed-by: Rabin Vincent Reviewed-by: Philippe Langlais Signed-off-by: Linus Walleij Signed-off-by: Vinod Koul commit ae752bf4cb78520e42f96f904e441c50f2114c7b Author: om prakash Date: Mon Jun 27 11:33:31 2011 +0200 dmaengine/ste_dma40: fix missing kernel-doc Missing documentation creates kernel-doc warnings, so add the documenation. Signed-off-by: Om Prakash Reviewed-by: Rabin Vincent Reviewed-by: Jonas Aberg Reviewed-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Vinod Koul commit 78fdaec3416fcbf2c38927cdf8b2de9f402693f1 Author: Per Forlin Date: Sun Jun 26 23:29:53 2011 +0200 dmaengine: remove ste_dma40 from issue_pending TODO ste_dma40 now implements issue_pending according to documentation. Submit adds descriptos to a pending queue with are flushed down to the DMAC at issue_pending. Signed-off-by: Per Forlin Signed-off-by: Vinod Koul commit a8f3067bce60b96215f3169d2c71e21f784ef507 Author: Per Forlin Date: Sun Jun 26 23:29:52 2011 +0200 dmaengine/ste_dma40: add a separate queue for pending requests tx_submit will add descriptors to the pending queue. Issue pending will then move the pending descriptors to the transfer queue. Signed-off-by: Per Forlin Signed-off-by: Vinod Koul commit 133de1211982bd2ba9ab401f7a73d25d052ccd61 Author: Axel Lin Date: Fri Jul 8 14:24:36 2011 +0800 [CPUFREQ] s5pv210: make needlessly global symbols static The following symbols are needlessly defined global: s5pv210_verify_speed s5pv210_getspeed Make them static. Signed-off-by: Axel Lin Acked-by: Kukjin Kim Signed-off-by: Dave Jones commit 2f0d6f20ec4cc157ba092e008ed20a99590142c4 Author: Axel Lin Date: Fri Jul 8 14:20:44 2011 +0800 [CPUFREQ] exynos4210: make needlessly global symbols static The following symbols are needlessly defined global: exynos4_verify_speed exynos4_getspeed exynos4_set_clkdiv Make them static. Signed-off-by: Axel Lin Acked-by: Kukjin Kim Signed-off-by: Dave Jones commit ef993ef8dcd4f3e4d058400c5bd2f7c547344e74 Author: Mark Brown Date: Tue Jun 28 20:26:49 2011 -0700 [CPUFREQ] S3C6410: Add some lower frequencies for 800MHz base clock operation By extension from the 667MHz based clocks currently supported add 100MHz and 200MHz operating points. Due to a lack of documentation these have not been confirmed as supported but by extension from the existing frequencies they should be OK, and I've given them quite a bit of runtime testing. The major risk is synchronization with the non-ARM clocks but as we can't currently scale the ARM PLL the risk should be relatively low. Signed-off-by: Mark Brown Acked-by: Kukjin Kim Signed-off-by: Dave Jones commit fe7f1bcbff917f22e121d4b2c045fb1de80cc450 Author: Huisung Kang Date: Fri Jun 24 16:04:18 2011 +0900 [CPUFREQ] S5PV210: Add reboot notifier to prevent system hang When system reboot, the CPUFREQ level should be 800MHz to prevent system lockup. Signed-off-by: Huisung Kang Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit 74df8e69e901e624fe0b439f914aa7be66201154 Author: Todd Poynor Date: Fri Jun 24 16:04:17 2011 +0900 [CPUFREQ] S5PV210: Adjust udelay prior to voltage scaling down Voltage scaling accesses the MAX8998 regulators over bit-banged I2C with lots of udelays. In the case of decreasing CPU speed, the number of loops per us for udelay needs to be adjusted prior to decreasing voltage to avoid delaying for up to 10X too long. Signed-off-by: Todd Poynor Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit 5b02b7794b555e299c5e9298c6b223b538888ec8 Author: Arve Hjønnevåg Date: Fri Jun 24 16:04:16 2011 +0900 [CPUFREQ] S5PV210: Lock a mutex while changing the cpu frequency Without this lock the call to change the frequency for suspend could switch to a new frequency while another thread was still changing the cpu voltage. Signed-off-by: Arve Hjønnevåg Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit 405e6d6df739a27a267b381213aa9e86c4929543 Author: Huisung Kang Date: Fri Jun 24 16:04:15 2011 +0900 [CPUFREQ] S5PV210: Add pm_notifier to prevent system unstable Minimum 800MHz is needed to enter/exit suspend mode due to voltage mismatch. Signed-off-by: Huisung Kang Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit e8b4c1986efbb5b1e1bab9f359c340816e4d9869 Author: Jonghwan Choi Date: Fri Jun 24 16:04:14 2011 +0900 [CPUFREQ] S5PV210: Add arm/int voltage control support Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit 90d5d0a119bcf189e8b33f776b4f8371b789b311 Author: Huisung Kang Date: Fri Jun 24 16:04:13 2011 +0900 [CPUFREQ] S5PV210: Add additional symantics for "relation" in cpufreq with pm Relation has an additional symantics other than standard. s5pv310_target funtion have below additional relation. - DISABLE_FURTHER_CPUFREQ : disable further access to target - ENABLE_FURTHER_CPUFRER : enable access to target Signed-off-by: Huisung Kang Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit fb3b1fefaaccdbdc716db0963ba41fb6b4221e60 Author: Mark Brown Date: Wed Jun 22 15:08:56 2011 +0100 [CPUFREQ] S3C64xx: Notify transition complete as soon as frequency changed The CPUFREQ_POSTCHANGE notification is used to update things that depend on the system clock rates. Since this may include the interfaces used to talk to the regulators do the notification before we try to update regulators to reflect lowered system clock rate. The voltage scaling is just a power optimisation and may not happen at all so there's no concern about it not having completed. Signed-off-by: Mark Brown Acked-by: Kukjin Kim Signed-off-by: Dave Jones commit c6e2d68558b612fdfdb0d7ddcb51ad4578b81eba Author: Mark Brown Date: Wed Jun 8 14:49:15 2011 +0100 [CPUFREQ] S3C6410: Support 800MHz operation in cpufreq At least some newer S3C6410 silicon supports operation up to 800MHz rather than just 667MHz. Unfortunately I don't have access to any of documentation of this other than some running systems, add a new cpufreq table entry for this based on the behaviour of those systems. Signed-off-by: Mark Brown Acked-by: Kukjin Kim Signed-off-by: Dave Jones commit 4911ca1031c2ade225fdf22cc872bc121c2c2ec5 Author: Julia Lawall Date: Mon Jun 6 18:59:02 2011 -0700 [CPUFREQ] s5pv210-cpufreq.c: Add missing clk_put The successive calls to clk_get each call clk_put in the case of failure, but this is not done for subsequent error handling code. The calls to clk_get are moved to the end of the function, and appropriate gotos are added. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit 15964d388528c1dbb672027c8003fe7e81630a35 Author: Kukjin Kim Date: Mon Jun 6 18:43:01 2011 -0700 [CPUFREQ] Move compile for S3C64XX cpufreq to /drivers/cpufreq Cc: Mark Brown Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit 069283c3ec87e0abaa14f6bef96342b609f0fb92 Author: Dave Jones Date: Mon Jun 6 21:10:04 2011 -0400 [CPUFREQ] Remove some vi noise that escaped into the Makefile. commit f7d770790f29781116d0de1339214934b8020c1e Author: Kukjin Kim Date: Wed Jun 1 14:18:22 2011 -0700 [CPUFREQ] Move ARM Samsung cpufreq drivers to drivers/cpufreq/ According to discussion of the ARM arch subsystem migration, ARM cpufreq drivers move to drivers/cpufreq. So this patch adds Kconfig.arm for ARM like x86 and adds Samsung S5PV210 and EXYNOS4210 cpufreq driver compile in there. As a note, otherw will be moved. Cc: Dave Jones Signed-off-by: Kukjin Kim Signed-off-by: Dave Jones commit be2de99beaca6506a1f97a636750c108a41b5c00 Author: Mark Brown Date: Tue May 10 15:42:08 2011 +0200 [CPUFREQ/S3C64xx] Move S3C64xx CPUfreq driver into drivers/cpufreq This is a straight code motion patch, there are no changes to the driver itself. The Kconfig is left untouched as the ARM CPUfreq Kconfig is all in one big block in arm/Kconfig and should be moved en masse rather than being done piecemeal. Signed-off-by: Mark Brown Signed-off-by: Dave Jones commit 92e03c41a415e8e9e8009a1f5bbb9036f3bfb2f4 Author: Matthew Garrett Date: Wed Jul 13 17:58:32 2011 -0400 [CPUFREQ] Handle CPUs with different capabilities in acpi-cpufreq acpi-cpufreq checks each CPU for aperf/mperf support, but only sets a global flag. This will cause errors if some CPUs in the system don't support the feature. Check boot_cpu_has() instead in order to make sure that all CPUs support it. Signed-off-by: Matthew Garrett Signed-off-by: Dave Jones commit 70f18915846f092e0e1c988f1726a532fa3ab3a1 Author: Alexander Stein Date: Wed Jun 22 17:05:33 2011 +0200 pch_dma: Fix channel locking Fix for the following INFO message ================================= [ INFO: inconsistent lock state ] 2.6.39+ #89 --------------------------------- inconsistent {HARDIRQ-ON-W} -> {IN-HARDIRQ-W} usage. rs232/822 [HC1[1]:SC0[0]:HE0:SE1] takes: (&(&pd_chan->lock)->rlock){?.....}, at: [] pdc_desc_get+0x16/0xab {HARDIRQ-ON-W} state was registered at: [] mark_irqflags+0xbd/0x11a [] __lock_acquire+0x501/0x6bb [] lock_acquire+0x63/0x7b [] _raw_spin_lock_bh+0x43/0x51 [] pd_alloc_chan_resources+0x92/0x11e [] dma_chan_get+0x9b/0x107 [] __dma_request_channel+0x61/0xdc [] pch_request_dma+0x61/0x19e [] pch_uart_startup+0x16a/0x1a2 [] uart_startup+0x87/0x147 [] uart_open+0x117/0x13e [] tty_open+0x23c/0x34c [] chrdev_open+0x140/0x15f [] __dentry_open.clone.14+0x14a/0x22b [] nameidata_to_filp+0x36/0x40 [] do_last+0x513/0x635 [] path_openat+0x9c/0x2aa [] do_filp_open+0x27/0x69 [] do_sys_open+0xfd/0x184 [] sys_open+0x24/0x2a [] sysenter_do_call+0x12/0x32 irq event stamp: 2522 hardirqs last enabled at (2521): [] _raw_spin_unlock_irqrestore+0x36/0x52 hardirqs last disabled at (2522): [] common_interrupt+0x27/0x34 softirqs last enabled at (2354): [] __do_softirq+0x10a/0x11a softirqs last disabled at (2299): [] do_softirq+0x57/0xa4 other info that might help us debug this: 2 locks held by rs232/822: #0: (&tty->atomic_write_lock){+.+.+.}, at: [] tty_write_lock+0x14/0x3c #1: (&port_lock_key){-.....}, at: [] pch_uart_interrupt+0x17/0x1e9 stack backtrace: Pid: 822, comm: rs232 Not tainted 2.6.39+ #89 Call Trace: [] ? printk+0x19/0x1b [] print_usage_bug+0x184/0x18f [] ? print_irq_inversion_bug+0x10e/0x10e [] mark_lock_irq+0xa5/0x1f6 [] mark_lock+0x208/0x2d7 [] mark_irqflags+0x55/0x11a [] __lock_acquire+0x501/0x6bb [] ? dump_trace+0x92/0xb6 [] lock_acquire+0x63/0x7b [] ? pdc_desc_get+0x16/0xab [] _raw_spin_lock+0x3e/0x4c [] ? pdc_desc_get+0x16/0xab [] pdc_desc_get+0x16/0xab [] ? __lock_acquire+0x653/0x6bb [] pd_prep_slave_sg+0x7c/0x1cb [] ? nommu_map_sg+0x6e/0x81 [] dma_handle_tx+0x2cf/0x344 [] ? pch_uart_interrupt+0x17/0x1e9 [] pch_uart_interrupt+0x160/0x1e9 [] handle_irq_event_percpu+0x25/0x127 [] handle_irq_event+0x2c/0x43 [] ? handle_fasteoi_irq+0x84/0x84 [] handle_edge_irq+0xac/0xce [] ? do_IRQ+0x38/0x9d [] ? common_interrupt+0x2e/0x34 [] ? __lock_acquire+0x1f6/0x6bb [] ? _raw_spin_unlock_irqrestore+0x38/0x52 [] ? uart_start+0x2d/0x32 [] ? uart_flush_chars+0x8/0xa [] ? n_tty_write+0x12c/0x1c6 [] ? try_to_wake_up+0x251/0x251 [] ? tty_write+0x169/0x1dc [] ? n_tty_ioctl+0xb7/0xb7 [] ? vfs_write+0x91/0x10d [] ? tty_write_lock+0x3c/0x3c [] ? sys_write+0x3e/0x63 [] ? sysenter_do_call+0x12/0x32 Signed-off-by: Alexander Stein Tested-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit 4de1ba155bbe9b629b9fb03919c5d905b747e62f Author: H Hartley Sweeten Date: Mon Jun 6 13:49:00 2011 -0700 dma: mv_xor: use resource_size() Signed-off-by: H Hartley Sweeten Cc: Dan Williams (supporter:ASYNCHRONOUS TRAN...) Cc: Vinod Koul (supporter:DMA GENERIC OFFLO...) Signed-off-by: Vinod Koul commit 99834ea446d5c0da3f6cfa355fe4670840d45f79 Author: Chris Wilson Date: Wed Jul 13 21:01:46 2011 +0100 drm/i915/bios: Avoid temporary allocation whilst searching for downclock Alan Cox reported a missing check on the kmalloc return value for the allocation of a temporary mode used for searching for the LVDS downlock frequency. This allocation is roughly 200 bytes, a little too large to friviously place on the stack. However, we can simply use the few bytes we need stored within the original DVO timing data, skip the translation and do the compare directly between the timing data rather than on a mode, thus avoiding the need for any temporary allocations. Signed-off-by: Chris Wilson Cc: Alan Cox Cc: Keith Packard Signed-off-by: Keith Packard commit d7b7630130e52361af66ce3b994696e2357ba7de Author: Richard Kennedy Date: Wed Jul 13 21:17:23 2011 +0200 block: reorder request_queue to remove 64 bit alignment padding Reorder request_queue to remove 16 bytes of alignment padding in 64 bit builds. On my config this shrinks the size of this structure from 1608 to 1592 bytes and therefore needs one fewer cachelines. Also trivially move the open bracket { to be on the same line as the structure name to make it easier to grep. Signed-off-by: Richard Kennedy Acked-by: Tejun Heo Signed-off-by: Jens Axboe commit 95acac61ba66c4abd40e038dae8c1ed2e176c7b1 Author: Johannes Berg Date: Tue Jul 12 12:30:59 2011 +0200 mac80211: allow driver to disconnect after resume In WoWLAN, devices may use crypto keys for TX/RX and could also implement GTK rekeying. If the driver isn't able to retrieve replay counters and similar information from the device upon resume, or if the device isn't responsive due to platform issues, it isn't safe to keep the connection up as GTK rekey messages from during the sleep time could be replayed against it. The only protection against that is disconnecting from the AP. Modifying mac80211 to do that while it is resuming would be very complex and invasive in the case that the driver requires a reconfig, so do it after it has resumed completely. In that case, however, packets might be replayed since it can then only happen after TX/RX are up again, so mark keys for interfaces that need to disconnect as "tainted" and drop all packets that are sent or received with those keys. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2fcf282471f04f465d0368e46e973e01504292b3 Author: Mohammed Shafi Shajakhan Date: Tue Jul 12 15:19:04 2011 +0530 mac80211: remove a redundant check is_valid_ether_addr itself checks for is_zero_ether_addr Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 5d82c53a380ca96421a714481c9113ba54ede609 Author: Yogesh Ashok Powar Date: Mon Jul 11 20:04:44 2011 -0700 mwifiex: add cfg80211 handler for set_bitrate_mask Currently, setting only legacy bitrates on 2.4GHz band are supported. Mode 802.11b/g/bg is enabled based on bitrates selection. If only CCK bitrates selected then 802.11b mode is enabled. If only OFDM bitrates are selected then 802.11g mode is enabled. For both: CCK and OFDM rates 802.11bg mixed mode is enabled. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 4e868796bbcbae2f2ea3a828c803686787392b71 Author: Felix Fietkau Date: Tue Jul 12 09:02:05 2011 +0800 ath5k: do not call ieee80211_stop_queue for queues not managed by mac80211 Instead of using ieee80211_stop_queue, check the configured tx queue limit before calling ieee80211_get_buffered_bc. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 6340211c5f4775a52c98052fb5661565f79249fd Author: Felix Fietkau Date: Tue Jul 12 09:02:04 2011 +0800 ath5k: disable 32KHz sleep clock operation by default While 32 KHz sleep clock might provide some power saving benefits, it is also a major source of stability issues, on OpenWrt it produced some reproducible data bus errors on register accesses on several different MIPS platforms. All the Atheros drivers that I can find do not enable this feature, so it makes sense to leave it disabled in ath5k as well. Signed-off-by: Felix Fietkau Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit f00643888ca435ce6934482243733cc140281d10 Author: Felix Fietkau Date: Tue Jul 12 09:02:03 2011 +0800 ath5k: fix reference clock usec duration setting restore enabling the sleep clock alters the AR5K_USEC_32 field, but disabling it didn't restore it. Signed-off-by: Felix Fietkau Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit fe00deb3e4b50eede61cc7d4ab9bce7911f0a074 Author: Felix Fietkau Date: Tue Jul 12 09:02:02 2011 +0800 ath5k: delay full calibration after reset During scans the full calibration usually does not make much sense, PAPD probing and IQ calibration should be deferred until there is enough time to complete them. Adding 100 ms to the initial full calibration delay should be enough to do this. Signed-off-by: Felix Fietkau Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 26d16d23e621cdc679118ca2fe604752b3a36e9f Author: Felix Fietkau Date: Tue Jul 12 09:02:01 2011 +0800 ath5k: initialize common->clockrate Fixes a division by zero when setting distance before activating the device for the first time. Signed-off-by: Felix Fietkau Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 2d2cf471d51743c631f216f62a02a62b58126191 Author: Felix Fietkau Date: Tue Jul 12 09:02:00 2011 +0800 ath5k: fix reference clock frequency for spur mitigation on AR2413 AR2413 uses the same reference clock as AR5413 Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit ca8bfd94bbe5bd89ff6a4bbf5a050251950cce25 Author: Felix Fietkau Date: Tue Jul 12 09:01:59 2011 +0800 ath5k: apply the synth voltage tweak only on AR5112 rev 2 Might fix some stability issues on newer chips Signed-off-by: Felix Fietkau Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit b613c7262dda30563bb1759573e39392a81524e6 Author: Felix Fietkau Date: Tue Jul 12 09:01:58 2011 +0800 ath5k: add missing checks for rfgain probe rfgain probe is only necessary for OFDM operation on AR5111 and AR5112. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 0472ade031b5c0c69c21cf96acf64c50eb9ba3c2 Author: Senthil Balasubramanian Date: Tue Jul 12 00:02:56 2011 +0530 ath9k_hw: Fix incorrect key_miss handling Decryping frames on key_miss handling shouldn't be done for Michael MIC failed frames as h/w would have already decrypted such frames successfully anyway. Also leaving CRC and PHY error(where the frame is going to be dropped anyway), we are left to prcoess Decrypt error for which s/w decrypt is selected anway and so having key_miss as a separate check doesn't serve anything. So making key_miss handling mutually exlusive with other RX status handling makes much more sense. This patch addresses an issue with STA not reporting MIC failure events resulting in STA being disconnected immediately. Cc: stable@kernel.org Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 2a897d41a30b0af2dbc61c18aa3d2edd9b80fe6a Author: Joe Perches Date: Fri Jul 8 23:20:25 2011 -0700 iwlagn: Add missing comma between constant string array Multiple quoted strings are concatenated without comma separators. Make the array const while there. Signed-off-by: Joe Perches Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 861d9c3f25d216ccbec71a45280eff17fb912434 Author: Joe Perches Date: Fri Jul 8 23:20:24 2011 -0700 iwlegacy: Add missing comma between constant string array Multiple quoted strings are concatenated without comma separators. Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit 95736720fc866eadb2ce1789631b907c0f38cb7c Author: Chris Wilson Date: Thu May 12 22:17:09 2011 +0100 drm/i915: Cache GT fifo count for SandyBridge The read back of the available FIFO entries is vital for system stability, but extremely costly. However, we only need a guide so as to avoid eating into the reserved entries and since we are the only consumer we can cache the read of the count from the last write. Signed-off-by: Chris Wilson Reviewed-by: Ben Widawsky Signed-off-by: Keith Packard commit 433bd805e5fd2c731b3a9025b034f066272d336e Author: Andy Lutomirski Date: Wed Jul 13 09:24:13 2011 -0400 clocksource: Replace vread with generic arch data The vread field was bloating struct clocksource everywhere except x86_64, and I want to change the way this works on x86_64, so let's split it out into per-arch data. Cc: x86@kernel.org Cc: Clemens Ladisch Cc: linux-ia64@vger.kernel.org Cc: Tony Luck Cc: Fenghua Yu Cc: John Stultz Cc: Thomas Gleixner Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/3ae5ec76a168eaaae63f08a2a1060b91aa0b7759.1310563276.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit 7f79ad15f33cf4968cafb0e3d2beba427de01d3a Author: Andy Lutomirski Date: Wed Jul 13 09:24:12 2011 -0400 x86-64: Add --no-undefined to vDSO build This gives much nicer diagnostics when something goes wrong. It's supported at least as far back as binutils 2.15. Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/de0b50920469ff6359c529526e7639fdd36fa83c.1310563276.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit 1b3f2a72bbcfdf92e368a44448c45eb639b05b5e Author: Andy Lutomirski Date: Wed Jul 13 09:24:11 2011 -0400 x86-64: Allow alternative patching in the vDSO This code is short enough and different enough from the module loader that it's not worth trying to share anything. Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/e73112e4381fff29e31b882c2d0856822edaea53.1310563276.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit 59e97e4d6fbcd5b74a94cb48bcbfc6f8478a5e93 Author: Andy Lutomirski Date: Wed Jul 13 09:24:10 2011 -0400 x86: Make alternative instruction pointers relative This save a few bytes on x86-64 and means that future patches can apply alternatives to unrelocated code. Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/ff64a6b9a1a3860ca4a7b8b6dc7b4754f9491cd7.1310563276.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit c9712944b2a12373cb6ff8059afcfb7e826a6c54 Author: Andy Lutomirski Date: Wed Jul 13 09:24:09 2011 -0400 x86-64: Improve vsyscall emulation CS and RIP handling Three fixes here: - Send SIGSEGV if called from compat code or with a funny CS. - Don't BUG on impossible addresses. - Add a missing local_irq_disable. This patch also removes an unused variable. Signed-off-by: Andy Lutomirski Link: http://lkml.kernel.org/r/6fb2b13ab39b743d1e4f466eef13425854912f7f.1310563276.git.luto@mit.edu Signed-off-by: H. Peter Anvin commit f5a3d0c4086d1854cbda545092c462b84cba20ce Author: Matthew Garrett Date: Tue Jul 12 18:30:52 2011 -0400 i915: Fix opregion notifications opregion-based platforms will send ACPI video event 0x80 for a range of notification types for legacy compatibility. This is interpreted as a display switch event, which may not be appropriate in the circumstances. When we receive such an event we should make sure that the platform is genuinely requesting a display switch before passing that event through to userspace. Signed-off-by: Matthew Garrett Tested-by: Adam Jackson Signed-off-by: Keith Packard commit 2bf71160f94270319eb965935045f825ec446e8a Author: Keith Packard Date: Thu May 12 17:10:58 2011 -0700 drm/i915: TVDAC_STATE_CHG does not indicate successful load-detect Do not use this bit to indicate that load detection has completed, instead just wait for vblank, at which point the load registers will have been updated. Signed-off-by: Keith Packard Tested-by: Yi Sun commit 835bff7ef220f9d7df94970557a6a2296f74106f Author: Keith Packard Date: Thu May 12 17:10:57 2011 -0700 drm/i915: Select correct pipe during TV detect Signed-off-by: Keith Packard Tested-by: Yi Sun commit 8f2ffa00fb3c05ec0659cd7b056c4e8e106072f1 Author: Jon Medhurst Date: Mon Jun 13 18:39:29 2011 +0100 ARM: kprobes: Remove now unused code Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 0239269db6ba1ea908006fe309ade12991dd4e21 Author: Jon Medhurst Date: Thu Jul 7 18:25:20 2011 +0100 ARM: kprobes: Decode ARM preload (immediate) instructions These were missing from the previous implementation. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 465f1ea595a5040d8b9563e75e0b571a0bacb733 Author: Jon Medhurst Date: Sat Jun 11 15:16:41 2011 +0100 ARM: kprobes: Reject probing of unprivileged load and store instructions These occur extremely rarely in the kernel and writing test cases for them is difficult. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 711bf10633485e0489fec0fc35abee240dd619ae Author: Jon Medhurst Date: Sat Jun 11 15:08:24 2011 +0100 ARM: kprobes: Use new versions of emulate_ldr() and emulate_str() Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 3c48fbb1478f47a95d18a56ff2662b40cb236152 Author: Jon Medhurst Date: Sat Jun 11 13:10:49 2011 +0100 ARM: kprobes: Add new versions of emulate_ldr() and emulate_str() These use the register calling conventions required by the new decoding table framework for calling simulated instructions. We rename the old versions of these functions to *_old for now. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 12ce5d3388dab15109e94eb847c948b23b709a03 Author: Jon Medhurst Date: Fri Jun 10 18:32:15 2011 +0100 ARM: kprobes: Add emulate_rdlo12rdhi16rn0rm8_rwflags_nopc() This is the emulation function for the instruction format used by the ARM multiply long instructions. It replaces use of prep_emulate_rdhi16rdlo12rs8rm0_wflags(). Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit c82584ebdf5948bfc6f0509be1c2bef714b49a33 Author: Jon Medhurst Date: Fri Jun 10 18:10:36 2011 +0100 ARM: kprobes: Add emulate_rd12rm0_noflags_nopc() This is the emulation function for the instruction format used by the ARM bit-field manipulation instructions. Various other instruction forms can also make use of this and it is used to replace use of prep_emulate_rd12{rm0}{_modify} Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 35fab77469f8883077d8c9eda9325b38647ad3dc Author: Jon Medhurst Date: Fri Jun 10 17:55:10 2011 +0100 ARM: kprobes: Replace use of prep_emulate_rd12rn16rm0_wflags() These can now use emulate_rd12rn16rm0_rwflags_nopc(). Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 6091dfae4f289b7316b21277c38c8cd519e47f79 Author: Jon Medhurst Date: Fri Jun 10 17:35:51 2011 +0100 ARM: kprobes: Add emulate_rd16rn12rm0rs8_rwflags_nopc() This is the emulation function for the instruction format used by the ARM multiply-accumulate instructions. These don't allow use of PC so we don't have to add special cases for this. This function is used to replace use of prep_emulate_rd16rs8rm0_wflags and prep_emulate_rd16rn12rs8rm0_wflags. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit e9a92859e91acaa67337b4a820040a820906ea4c Author: Jon Medhurst Date: Fri Jun 10 11:36:36 2011 +0100 ARM: kprobes: Migrate remaining instruction decoding functions to tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 0d32e7d11b5ce8b3ab11fd74123b46b88f26b3e2 Author: Jon Medhurst Date: Thu Jun 9 09:46:56 2011 +0100 ARM: kprobes: Migrate ARM space_cccc_100x to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 56d8fbddc2a2be7aa81d65e5a6f0f6093ee70c48 Author: Jon Medhurst Date: Thu Jun 9 09:12:58 2011 +0100 ARM: kprobes: Migrate ARM space_cccc_01xx to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit ad2e81a78d016176b9f194414495a4ce166399e1 Author: Jon Medhurst Date: Wed Jun 8 18:09:36 2011 +0100 ARM: kprobes: Migrate ARM space_cccc_0111__1 to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 2ce5d03307222b3d5b7c5e9849eb4857eb979fa9 Author: Jon Medhurst Date: Wed Jun 8 17:36:45 2011 +0100 ARM: kprobes: Migrate ARM space_cccc_0110__1 to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 0e44e9a0fae65c07fa5a23bd720b6108892c96f8 Author: Jon Medhurst Date: Thu Jun 9 17:23:50 2011 +0100 ARM: kprobes: Add emulate_rd12rn16rm0_rwflags_nopc() This is the emulation function for the instruction format used by the ARM media instructions. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit c038f3af507943244f2522585d17614915afd324 Author: Jon Medhurst Date: Wed Jun 8 14:39:11 2011 +0100 ARM: kprobes: Migrate ARM space_cccc_001x to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 75f115c087bbd163d1c603160f6200cb494c9997 Author: Jon Medhurst Date: Tue Jun 7 09:58:11 2011 +0100 ARM: kprobes: Migrate ARM space_cccc_000x to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 6c8a192929af0383f4b0f14646af85208e9c3f00 Author: Jon Medhurst Date: Mon Jun 6 15:07:42 2011 +0100 ARM: kprobes: Migrate ARM LDRD and STRD to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 8723942f7b4501c87a95b7446786e6f4ba3779cf Author: Jon Medhurst Date: Thu Jun 9 17:39:42 2011 +0100 ARM: kprobes: Add emulate_ldrdstrd() This is an emulation function for the LDRD and STRD instructions. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 3535a89ab26db6b69603abf04420ec0b6c9ac387 Author: Jon Medhurst Date: Mon Jun 6 16:52:50 2011 +0100 ARM: kprobes: Migrate ARM data-processing (register) instructions to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 9f596e51261f96d602aa4eaf6db7f12ce53260d6 Author: Jon Medhurst Date: Thu Jun 9 17:35:36 2011 +0100 ARM: kprobes: Add emulate_rd12rn16rm0rs8_rwflags() This is the emulation function for the instruction format used by the ARM data-processing instructions. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 7be7ee2d295f6a069e1e92db95bf92eea2a173cf Author: Jon Medhurst Date: Thu Jul 7 14:03:08 2011 +0100 ARM: kprobes: Add BLX macro This is for use by inline assembler which will be added to kprobes-arm.c It saves memory when used on newer ARM architectures and also provides correct interworking should ARM probes be required on Thumb kernels in the future. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit df4fa1f8dde23db25f50e49535d2c7db0005f9ad Author: Jon Medhurst Date: Fri Jul 1 17:32:06 2011 +0100 ARM: kprobes: Add alu_write_pc() This writes a new value to PC which was obtained as the result of an ARM ALU instruction. For ARMv7 and later this performs interworking. On ARM kernels we shouldn't encounter any ALU instructions trying to switch to Thumb mode so support for this isn't strictly necessary. However, the approach taken in all other instruction decoding is for us to avoid unpredictable modification of the PC for security reasons. This is usually achieved by rejecting insertion of probes on problematic instruction, but for ALU instructions we can't do this as it depends on the contents of the CPU registers at the time the probe is hit. So, as we require some form of run-time checking to trap undesirable PC modification, we may as well simulate the instructions correctly, i.e. in the way they would behave in the absence of a probe. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 9a5c1284a3ec76c15a8bc51b2badc29e42fc5d92 Author: Jon Medhurst Date: Mon Jun 6 12:20:25 2011 +0100 ARM: kprobes: Migrate ARM space_1111 to decoding tables Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit bb1085f82710f0194bf8a1b587c96ecae7f131f8 Author: Jon Medhurst Date: Sun Jul 3 15:15:59 2011 +0100 ARM: kprobes: Decode 32-bit Thumb multiply and absolute difference instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 231fb150c6f8a1f226380affc5498dd9abffc9d7 Author: Jon Medhurst Date: Sun Jul 3 15:15:11 2011 +0100 ARM: kprobes: Decode 32-bit Thumb long multiply and divide instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 31656c1a9a9872e2621b2b952294bdea4c23f5bd Author: Jon Medhurst Date: Sun Jul 3 15:07:19 2011 +0100 ARM: kprobes: Decode 32-bit Thumb data-processing (register) instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit d691023b62bdf33ed84023330f4d2c77d2325b01 Author: Jon Medhurst Date: Sun Jul 3 15:04:26 2011 +0100 ARM: kprobes: Decode 32-bit Thumb load/store single data item instructions We will reject probing of unprivileged load and store instructions. These rarely occur and writing test cases for them is difficult. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 46009cc5c59e0acdf165ed8a9d1ccc43baf44800 Author: Jon Medhurst Date: Sun Jul 3 15:00:42 2011 +0100 ARM: kprobes: Decode 32-bit Thumb memory hint instructions We'll treat the preload instructions as nops as they are just performance hints. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 6a0d1a1c5692d6192684fb7aa8f4d7f401f8dbab Author: Jon Medhurst Date: Sun Jul 3 14:57:18 2011 +0100 ARM: kprobes: Reject 32-bit Thumb coprocessor and SIMD instructions The kernel doesn't currently support VFP or Neon code, and probing of code with CP15 operations is fraught with bad consequences. So we will just reject probing these instructions. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit ce715c772f0124f9d3f6f5cffcb85688c81d2c07 Author: Jon Medhurst Date: Sun Jul 3 14:53:45 2011 +0100 ARM: kprobes: Decode 32-bit Thumb branch instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit b06f3ee34d8b817d566d15d25a21f8320b3f7c57 Author: Jon Medhurst Date: Sun Jul 3 14:52:18 2011 +0100 ARM: kprobes: Decode 32-bit miscellaneous control instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 7848786a7a198dd5e097330ad0cbfdf155a25499 Author: Jon Medhurst Date: Sun Jul 3 14:40:26 2011 +0100 ARM: kprobes: Decode 32-bit Thumb data-processing (plain binary immediate) instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 2fcaf7e75804dbb75862a230a5a19d0508153324 Author: Jon Medhurst Date: Sun Jul 3 14:36:35 2011 +0100 ARM: kprobes: Decode 32-bit Thumb data-processing (modified immediate) instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 080e0013269e9fd428fd834e8a915a80fe6c8ae9 Author: Jon Medhurst Date: Sun Jul 3 14:31:58 2011 +0100 ARM: kprobes: Decode 32-bit Thumb data-processing (shifted register) instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit dd212bd3cbd337f8f3bd6b30929bef5a8c8ba81b Author: Jon Medhurst Date: Sun Jul 3 14:26:16 2011 +0100 ARM: kprobes: Decode 32-bit Thumb table branch instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit b48354d3584e93284fba2ee99f6f9f44d18e4f83 Author: Jon Medhurst Date: Sun Jul 3 14:23:21 2011 +0100 ARM: kprobes: Decode 32-bit Thumb load/store dual and load/store exclusive instructions We reject probing of load/store exclusive instructions because any emulation routine could never succeed in gaining exclusive access as the exception framework clears the exclusivity monitor when a probes breakpoint is hit. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit eaf1d06500c48109dcd37b7856773fdf608a8d21 Author: Jon Medhurst Date: Thu Jul 7 08:59:32 2011 +0100 ARM: kprobes: Decode 32-bit Thumb load/store multiple instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 3d4a99785abee0687f8fad9a055d2f0c61a9dd57 Author: Jon Medhurst Date: Tue Jun 14 15:54:28 2011 +0100 ARM: kprobes: Optimise emulation of LDM and STM This patch improves the performance of LDM and STM instruction emulation. This is desirable because. - jprobes and kretprobes probe the first instruction in a function and, when the frame pointer is omitted, this instruction is often a STM used to push registers onto the stack. - The STM and LDM instructions are common in the body and tail of functions. - At the same time as being a common instruction form, they also have one of the slowest and most complicated simulation routines. The approach taken to optimisation is to use emulation rather than simulation, that is, a modified form of the instruction is run with an appropriate register context. Benchmarking on an OMAP3530 shows the optimised emulation is between 2 and 3 times faster than the simulation routines. On a Kirkwood based device the relative performance was very significantly better than this. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 235a4ce79feb8d5351f9164981bc57d5e29f974b Author: Jon Medhurst Date: Thu Jul 7 08:57:22 2011 +0100 ARM: kprobes: Add common decoding function for LDM and STM The encoding of these instructions is substantially the same for both ARM and Thumb, so we can have common decoding and simulation functions. This patch moves the simulation functions from kprobes-arm.c to kprobes-common.c. It also adds a new simulation function (simulate_ldm1_pc) for the case where we load into PC because this may need to interwork. The instruction decoding is done by a custom function (kprobe_decode_ldmstm) rather than just relying on decoding table entries because we will later be adding optimisation code. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 263e368a2f1f960db07d7524a4a3e7df951f1f72 Author: Jon Medhurst Date: Fri Jun 10 20:29:04 2011 +0100 ARM: kprobes: Add load_write_pc() This writes a value to PC which was obtained as the result of a LDR or LDM instruction. For ARMv5T and later this must perform interworking. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit f39ca8b488a6c1e8db47746e1cdb841a6999edd7 Author: Jon Medhurst Date: Sun Jul 3 13:55:47 2011 +0100 ARM: kprobes: Decode 32-bit Thumb hint instructions For hints which may have observable effects, like SEV (send event), we use kprobe_emulate_none which emulates the hint by executing the original instruction. For NOP we simulate the instruction using kprobe_simulate_nop, which does nothing. As probes execute with interrupts disabled this is also used for hints which may block for an indefinite time, like WFE (wait for event). Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 0a188ccb5eceb58101fcc11b3ec2d860ccbf92a3 Author: Jon Medhurst Date: Sat Jul 2 16:39:07 2011 +0100 ARM: kprobes: Reject 16-bit Thumb SETEND, CPS and BKPT instructions These are very rare and/or problematic to emulate so we will take the easy option and disallow probing them (as does the existing ARM implementation). Rejecting these instructions doesn't actually require any entries in the decoding table as it is the default case for instructions which aren't found. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 396b41f68d937a0c48ba624186ed06288b35bb4e Author: Jon Medhurst Date: Sat Jul 2 16:30:43 2011 +0100 ARM: kprobes: Decode 16-bit Thumb branch instructions We previously changed the behaviour of probes so that conditional instructions don't fire when the condition isn't met. For ARM branches, and Thumb branches in IT blocks, this means they don't fire if the branch isn't taken. For consistency, we implement the same for Thumb conditional branch instructions. This involves setting up insn_check_cc to point to the relevant condition checking function. As the emulation routine is only called when this condition passes, it doesn't need to check again and can unconditionally update PC. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 444956677eccfcdfe05de761e1286f62c423ce88 Author: Jon Medhurst Date: Sat Jul 2 16:25:47 2011 +0100 ARM: kprobes: Reject 16-bit Thumb SVC and UNDEFINED instructions SVC (SWI) instructions shouldn't occur in kernel code so we don't need to be able to probe them. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 5b94faf8d76be2116223c2591b31ddae5eecac2b Author: Jon Medhurst Date: Sat Jul 2 16:16:05 2011 +0100 ARM: kprobes: Decode 16-bit Thumb IT instruction The normal Thumb singlestepping routine updates the IT state after calling the instruction handler. We don't what this to happen after the IT instruction simulation sets the IT state, therefore we need to provide a custom singlestep routine. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit fd0c8d8a48c57cb8a3f1fbbe46a2b208b57ff477 Author: Jon Medhurst Date: Sat Jul 2 16:13:29 2011 +0100 ARM: kprobes: Decode 16-bit Thumb PUSH and POP instructions These instructions are equivalent to stmdb sp!,{r0-r7,lr} ldmdb sp!,{r0-r7,pc} and we emulate them by transforming them into the 32-bit Thumb instructions stmdb r9!,{r0-r7,r8} ldmdb r9!,{r0-r7,r8} This is simpler, and almost certainly executes faster, than writing simulation functions. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 32818f31f8ed811ea7ef924f24642580a63a7c85 Author: Jon Medhurst Date: Sat Jul 2 16:10:44 2011 +0100 ARM: kprobes: Decode 16-bit Thumb CBZ and bit manipulation instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 2f335829040cb16d0640e87121bef208894d4934 Author: Jon Medhurst Date: Sat Jul 2 16:05:53 2011 +0100 ARM: kprobes: Decode 16-bit Thumb PC- and SP-relative address instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit f8695142820f3cb3bc97444a240eec5375a2b107 Author: Jon Medhurst Date: Sat Jul 2 16:00:09 2011 +0100 ARM: kprobes: Decode 16-bit Thumb load and store instructions Most of these instructions only operate on the low registers R0-R7 so they can make use of t16_emulate_loregs_rwflags. The instructions which use SP or PC for addressing have their own simulation functions. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 3b5940e81182ff26d539dcf0ee8b2310f6965833 Author: Jon Medhurst Date: Sat Jul 2 15:54:57 2011 +0100 ARM: kprobes: Decode 16-bit Thumb special data instructions These data-processing instructions operate on the full range of CPU registers, so to simulate them we have to modify the registers used by the instruction. We can't make use of the decoding table framework to do this because the registers aren't encoded cleanly in separate nibbles, therefore we need a custom decode function. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit a9c3c29e72cc459be0ecd597f0af11a67713175b Author: Jon Medhurst Date: Sat Jul 2 15:51:03 2011 +0100 ARM: kprobes: Decode 16-bit Thumb BX and BLX instructions Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 059987ffa7f8905fada25c8af1734e254209c55d Author: Jon Medhurst Date: Thu Jun 9 11:01:54 2011 +0100 ARM: kprobes: Add bx_write_pc() This writes a value to PC, with interworking. I.e. switches to Thumb or ARM mode depending on the state of the least significant bit. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 02d194f64772aee91e7319ca033905b0bafee04c Author: Jon Medhurst Date: Sat Jul 2 15:46:05 2011 +0100 ARM: kprobes: Decode 16-bit Thumb data-processing instructions These instructions only operate on the low registers R0-R7, therefore it is possible to emulate them by executing the original instruction unaltered if we restore and save these registers. This is what t16_emulate_loregs does. Some of these instructions don't update the PSR when they execute in an IT block, so there are two flavours of emulation functions: t16_emulate_loregs_{noit}rwflags Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 7460bce42323df6570c7ba5091cb5201c7af1944 Author: Jon Medhurst Date: Fri Jun 3 12:12:33 2011 +0100 ARM: ptrace: Add APSR_MASK definition to ptrace.h APSR_MASK can be used to extract the APSR bits from the CPSR. The comment for these definitions is also changed because it was inaccurate as the existing defines didn't refer to any part of the APSR. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 3f92dfed6a9a5f490128c8e7cc6a64dfe412994f Author: Jon Medhurst Date: Sat Jul 2 15:36:32 2011 +0100 ARM: kprobes: Decode 16-bit Thumb hint instructions For hints which may have observable effects, like SEV (send event), we use kprobe_emulate_none which emulates the hint by executing the original instruction. For NOP we simulate the instruction using kprobe_simulate_nop, which does nothing. As probes execute with interrupts disabled this is also used for hints which may block for an indefinite time, like WFE (wait for event). Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 0d1a095aa1e6e2a233bfb1729e15233e77f69d54 Author: Jon Medhurst Date: Tue Apr 26 15:15:56 2011 +0100 ARM: kprobes: Infrastructure for table driven decoding of CPU instructions The existing ARM instruction decoding functions are a mass of if/else code. Rather than follow this pattern for Thumb instruction decoding this patch implements an infrastructure for a new table driven scheme. This has several advantages: - Reduces the kernel size by approx 2kB. (The ARM instruction decoding will eventually have -3.1kB code, +1.3kB data; with similar or better estimated savings for Thumb decoding.) - Allows programmatic checking of decoding consistency and test case coverage. - Provides more uniform source code and is therefore, arguably, clearer. For a detailed explanation of how decoding tables work see the in-source documentation in kprobes.h, and also for kprobe_decode_insn(). Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit e2960317d4581689bf80dbad4d75e7a59f11a3f7 Author: Jon Medhurst Date: Thu Jun 9 14:05:51 2011 +0100 ARM: kprobes: Extend arch_specific_insn to add pointer to emulated instruction When we come to emulating Thumb instructions then, to interwork correctly, the code on in the instruction slot must be invoked with a function pointer which has the least significant bit set. Rather that set this by hand in every Thumb emulation function we will add a new field for this purpose to arch_specific_insn, called insn_fn. This also enables us to seamlessly share emulation functions between ARM and Thumb code. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit c6a7d97d57ef41477a85f4c0f48ea5243132ee1f Author: Jon Medhurst Date: Thu Jun 9 12:11:27 2011 +0100 ARM: kprobes: Add hooks to override singlestep() When a probe fires we must single-step the instruction which was replaced by a breakpoint. As the steps to do this vary between ARM and Thumb instructions we need a way to customise single-stepping. This is done by adding a new hook called insn_singlestep to arch_specific_insn which is initialised by the instruction decoding functions. These single-step hooks must update PC and call the instruction handler. For Thumb instructions an additional step of updating ITSTATE is needed. We do this after calling the handler because some handlers will need to test if they are running in an IT block. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 3b26945597d5eff5d428a268c9d109338fce801e Author: Jon Medhurst Date: Thu Jun 16 17:22:37 2011 +0100 ARM: kprobes: Use conditional breakpoints for ARM probes Now we no longer trigger probes on conditional instructions when the condition is false, we can make use of conditional instructions as breakpoints in ARM code to avoid taking unnecessary exceptions. Note, we can't rely on not getting an exception when the condition check fails, as that is Implementation Defined on newer ARM architectures. We therefore still need to perform manual condition checks as well. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 3cca6c243568d355c1ccecaaa71bf490f014d729 Author: Jon Medhurst Date: Thu Jun 16 15:54:00 2011 +0100 ARM: kprobes: Don't trigger probes on conditional instructions when condition is false This patch changes the behavior of kprobes on ARM so that: Kprobes on conditional instructions don't trigger when the condition is false. For conditional branches, this means that they don't trigger in the branch not taken case. Rationale: When probes are placed onto conditionally executed instructions in a Thumb IT block, they may not fire if the condition is not met. This is because we use invalid instructions for breakpoints and "it is IMPLEMENTATION DEFINED whether the instruction executes as a NOP or causes an Undefined Instruction exception". Therefore, for consistency, we will ignore all probes on any conditional instructions when the condition is false. Alternative solutions seem to be too complex to implement or inconsistent. This issue was discussed on linux.arm.kernel in the thread titled "[RFC] kprobes with thumb2 conditional code" See http://comments.gmane.org/gmane.linux.linaro.devel/2985 Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 6aaa8b5570c7b5b9eb8913ec80263a1012b1dd66 Author: Jon Medhurst Date: Thu Jun 16 14:53:56 2011 +0100 ARM: kprobes: Add it_advance() This advances the ITSTATE bits in CPSR to their values for the next instruction. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit eaf4f33feca2704ad1d06f1ef6b427712c506cc0 Author: Jon Medhurst Date: Wed Apr 20 19:29:52 2011 +0100 ARM: kprobes: Add condition code checking to Thumb emulation Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit aceb487ab2ea0dca43f5131e456f45bc9f8c1bed Author: Jon Medhurst Date: Tue Apr 19 17:18:35 2011 +0100 ARM: kprobes: Add Thumb breakpoint support Extend the breakpoint insertion and catching functions to support Thumb code. As breakpoints are no longer of a fixed size, the flush_insns macro is modified to take a size argument instead of an instruction count. Note, we need both 16- and 32-bit Thumb breakpoints, because if we were to use a 16-bit breakpoint to replace a 32-bit instruction which was in an IT block, and the condition check failed, then the breakpoint may not fire (it's unpredictable behaviour) and the CPU could then try and execute the second half of the 32-bit Thumb instruction. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 856bc356394a28edb8c388e31212f6ceb0a04ce6 Author: Jon Medhurst Date: Tue Jun 14 13:09:39 2011 +0100 ARM: Kconfig: Allow kprobes on Thumb-2 kernels Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 2437170710c4a3dee137a65623960aa7ac82a32e Author: Jon Medhurst Date: Tue Apr 19 17:56:58 2011 +0100 ARM: kprobes: Add Thumb instruction decoding stubs Extend arch_prepare_kprobe to support probing of Thumb code. For the actual decoding of Thumb instructions, stub functions are added which currently just reject the probe. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit de41984003ed2315dbb7d58168cc3e72e15b075c Author: Jon Medhurst Date: Tue Jun 14 13:08:04 2011 +0100 ARM: kprobes: Make kprobes framework work on Thumb-2 kernels Fix up kprobes framework so that it builds and correctly interworks on Thumb-2 kernels. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit aea490299f7f0412f884a4895bc96211d8d8dbaf Author: Jon Medhurst Date: Thu Jul 7 19:58:29 2011 +0100 ARM: kprobes: Make str_pc_offset a constant on ARMv7 The str_pc_offset value is architecturally defined on ARMv7 onwards so we can make it a compile time constant. This means on Thumb kernels the runtime checking code isn't needed, which saves us from having to fix it to work for Thumb. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 6c8df3300f60cae54aeb2a6dda8efe7ffe16a322 Author: Jon Medhurst Date: Thu Jul 7 10:21:40 2011 +0100 ARM: kprobes: Move find_str_pc_offset into kprobes-common.c Move str_pc_offset into kprobes-common.c as it will be needed by common code later. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 1b59d874660be7f790861ad849858cc009089515 Author: Jon Medhurst Date: Wed Jul 6 20:33:41 2011 +0100 ARM: kprobes: Move is_writeback define to header file. This will be used later in other files. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 0ab4c02ddae2e1d32d686a7773608f6c44fb2a83 Author: Jon Medhurst Date: Wed Jul 6 11:25:18 2011 +0100 ARM: kprobes: Add kprobes-common.c This file will contain the instruction decoding and emulation code which is common to both ARM and Thumb instruction sets. For now, we will just move over condition_checks from kprobes-arm.c This table is also renamed to kprobe_condition_checks to avoid polluting the public namespace with a too generic name. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 221bf15ffd2ad6cdc624aa4274f706499501c123 Author: Jon Medhurst Date: Wed Apr 20 10:52:38 2011 +0100 ARM: kprobes: Split out internal parts of kprobes.h Later, we will be adding a considerable amount of internal implementation definitions to kprobe header files and it would be good to have these in local header file along side the source code, rather than pollute the existing header which is include by all users of kprobes. To this end, we add arch/arm/kernel/kprobes.h and move into this the existing internal defintions from arch/arm/include/asm/kprobes.h Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 691b2ff294a4787f3e54f5bb541570ac74bcb6f4 Author: Jon Medhurst Date: Wed Jul 6 10:49:07 2011 +0100 ARM: kprobes: Rename kprobes-decode.c to kprobes-arm.c This file contains decoding and emulation functions for the ARM instruction set. As we will later be adding a file for Thumb and a file with common decoding functions, this renaming makes things clearer. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 592201a9f154cdd5db59304d1369e94d8b551803 Author: Jon Medhurst Date: Sat Mar 26 19:19:07 2011 +0000 ARM: Thumb-2: Support Thumb-2 in undefined instruction handler This patch allows undef_hook's to be specified for 32-bit Thumb instructions and also to be used for thumb kernel-side code. 32-bit Thumb instructions are specified in the form: ((first_half << 16 ) | second_half) which matches the layout used by the ARM ARM. ptrace was handling 32-bit Thumb instructions by hooking the first halfword and manually checking the second half. This method would be broken by this patch so it is migrated to make use of the new Thumb-2 support. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit 594810621d9605dd40b6ce42e2e188a7dd6ba27c Author: Jon Medhurst Date: Fri Mar 18 17:32:44 2011 +0000 ARM: Thumb-2: Fix exception return sequence to restore stack correctly The implementation of svc_exit didn't take into account any stack hole created by svc_entry; as happens with the undef handler when kprobes are configured. The fix is to read the saved value of SP rather than trying to calculate it. Signed-off-by: Jon Medhurst Acked-by: Nicolas Pitre commit fd1b6c4a693c9cac59375ffb36ffe5d7c079037c Author: Bart Van Assche Date: Wed Jul 13 09:19:16 2011 -0700 IB/srp: Avoid duplicate devices from LUN scan SCSI scanning of a channel:id:lun triplet in Linux works as follows (function scsi_scan_target() in drivers/scsi/scsi_scan.c): - If lun == SCAN_WILD_CARD, send a REPORT LUNS command to the target and process the result. - If lun != SCAN_WILD_CARD, send an INQUIRY command to the LUN corresponding to the specified channel:id:lun triplet to verify whether the LUN exists. So a SCSI driver must either take the channel and target id values in account in its quecommand() function or it should declare that it only supports one channel and one target id. Currently the ib_srp driver does neither. As a result scanning the SCSI bus via e.g. rescan-scsi-bus.sh causes many duplicate SCSI devices to be created. For each 0:0:L device, several duplicates are created with the same LUN number and with (C:I) != (0:0). Fix this by declaring that the ib_srp driver only supports one channel and one target id. Signed-off-by: Bart Van Assche Cc: Acked-by: David Dillow Signed-off-by: Roland Dreier commit 52a09a040dc258ca9eb4fa6530e52ccdbc72e353 Author: Mike Marciniszyn Date: Wed Jul 13 09:19:10 2011 -0700 MAINTAINERS: Update ipath/qib (QLogic IB adapter) entries Signed-off-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit f05bdb8bb6c5e34a9c8c12483022e4cac5133139 Author: Mark Brown Date: Wed Jul 13 15:52:13 2011 +0900 ASoC: Don't warn on low WM8994/58 AIFnCLKs We can have valid but very low clocks in accessory detection modes. Signed-off-by: Mark Brown commit c7ebf932e5afa9caf8720435519b857b5d6e63bc Author: Mark Brown Date: Tue Jul 12 19:47:59 2011 +0900 ASoC: Use WM8994 FLL lock interrupt If we have interrupts then wait for the FLL lock interrupt rather than using dead reckoning when waiting for the FLL to start. Signed-off-by: Mark Brown commit b30ead5f391d34c6011e6affe88eb21bb0b9f9dd Author: Mark Brown Date: Tue Jul 12 15:47:17 2011 +0900 ASoC: Hook up DC servo completion IRQ for WM8994 and WM8958 Signed-off-by: Mark Brown commit d96ca3cd0bcefdcd1d9ad1f2610dcd959fccd252 Author: Mark Brown Date: Tue Jul 12 15:25:03 2011 +0900 ASoC: Implement DC servo completion IRQ handling for wm_hubs devices The individual devices should set the flag dcs_done_irq in the hubs shared data structure to indicate that they will flag the interrupt by calling wm_hubs_dcs_done(). Signed-off-by: Mark Brown commit b70a51bab9c64d2cabf7c052ebb3f5db2801fd05 Author: Mark Brown Date: Wed Jun 29 00:21:09 2011 -0700 ASoC: Use late enable handling for direct voice, speaker and headphone This ensures appropriate clocking for bypass paths to speaker and headphone and direct voice paths on affected revisions. Signed-off-by: Mark Brown commit 889ebae537f5cd3adfd149160b8092217de3cff0 Author: Johannes Stezenbach Date: Mon Jul 11 17:01:24 2011 +0200 ASoC: STA32x: Preserve reserved register bits Chip documentation explicitly requires that the reset values of reserved register bits are left untouched. It is possible there are differences between STA326 and STA328 or future chip revisions in these bits, and clobbering them might cause malfunction. Signed-off-by: Johannes Stezenbach Signed-off-by: Mark Brown commit 796884391504426e9da15bdf76f73c5f4eda3714 Author: Johannes Stezenbach Date: Mon Jul 11 17:01:23 2011 +0200 ASoC: STA32x: Add mixer controls for biquad coefficients The STA32x has a number of preset EQ settings, but also allows full user control of the biquad filter coeffcients (when "Automode EQ" is set to "User"). Each biquad has five signed, 24bit, fixed-point coefficients representing the range -1...1. The five biquad coefficients can be uploaded in one atomic operation into on-chip coefficient RAM. There are also a few prescale, postscale and mixing coefficients, in the same numeric format and range (a negative coefficient inverts phase). These coefficients are made available as SNDRV_CTL_ELEM_TYPE_BYTES mixer controls. Signed-off-by: Johannes Stezenbach Signed-off-by: Mark Brown commit 851f186835c850cf51001369e4e22c0f9241e745 Author: Ben Hutchings Date: Wed Jul 13 16:10:02 2011 +0100 sfc: Remove 'Solarstorm' from Kconfig descriptions The 'Solarstorm' brand is being retired and it's redundant with the company name. Signed-off-by: Ben Hutchings commit a1e806550e566e987e06561873ab8276ee54d130 Author: Arnaud Lacombe Date: Sun Jul 10 03:27:33 2011 -0400 kconfig/nconf: remove useless conditionnal After the test if (!submenu || ...) continue; the variable `submenu' can _not_ be NULL, so do not test for this situation. Cc: Nir Tzachar Signed-off-by: Arnaud Lacombe Signed-off-by: Michal Marek commit f98ee76955f883abf2ea2a5e5b43deab01734f47 Author: Arnaud Lacombe Date: Sun Jul 10 03:27:05 2011 -0400 kconfig/nconf: prevent segfault on empty menu nconf does not check the validity of the current menu when help is requested (with either , '?' or 'h'). This leads to a NULL pointer dereference when an empty menu is encountered. The following reduced testcase exposes the problem: config DEP bool menu "FOO" config BAR bool "BAR" depends on DEP endmenu Issue will happen when entering menu "FOO" and requesting help. nconf is the only front-end which do not filter the validity of the current menu. Such filter can not really happen beforehand as other key which does not deals with the current menu might be entered by the user, so just bails out earlier if we encounter an invalid menu. Cc: Nir Tzachar Cc: Andrej Gelenberg Reported-by: Andrej Gelenberg Signed-off-by: Arnaud Lacombe Signed-off-by: Michal Marek commit 5416857867c9cc94aba641898c567d9707de30f1 Author: Arnaud Lacombe Date: Sun Jul 10 03:27:04 2011 -0400 kconfig/nconf: use the generic menu_get_ext_help() nconf is the only front-end which does not use this helper, but prefer to copy/paste the code. The test wrt. menu validity added in this version of the code is bogus anyway as an invalid menu will get dereferenced a few line below by calling menu_get_prompt(). For now, convert nconf to use menu_get_ext_help(), as do every other front-end. We will deals with menu validity checks properly in a separate commit. Cc: Nir Tzachar Cc: Andrej Gelenberg Signed-off-by: Arnaud Lacombe Signed-off-by: Michal Marek commit e9882ac0e53332f6d7ab776e7a214a9cfbf3e4b4 Author: Raghavendra D Prabhu Date: Sat Jul 9 21:54:49 2011 +0530 nconfig: Avoid Wunused-but-set warning I am seeing Wunused-but-set warning while make nconfig. Looks like active_menu is not used. Removing it fixes the warning. Signed-off-by: Raghavendra D Prabhu Acked-by: WANG Cong Signed-off-by: Michal Marek commit d0f9e8fb4cc6dd5d07c72eeecc2f332b6e85e221 Author: Christoph Hellwig Date: Wed Jul 13 13:43:50 2011 +0200 xfs: remove the dead XFS_DABUF_DEBUG code Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit c84470dda7a1165d90f55c2025c4c8ca403d485e Author: Christoph Hellwig Date: Wed Jul 13 13:43:50 2011 +0200 xfs: remove leftovers of the old btree tracing code Remove various bits left over from the old kdb-only btree tracing code, but leave the actual trace point stubs in place to ease adding new event based btree tracing. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit ea15ab3cdda1bc6822f572ce9ce5d86f097f9b08 Author: Christoph Hellwig Date: Wed Jul 13 13:43:50 2011 +0200 xfs: remove the dead QUOTADEBUG code Remove the dead hash table test rid which has been rotting away under QUOTADEBUG, including some code that was compiled for normal debug builds, but not actually called without QUOTADEBUG, and enable a few cheap debug checks that were hidden under QUOTADEBUG for normal debug builds. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 54244fec67024032cb54eb604b2a36579b5db2d3 Author: Christoph Hellwig Date: Wed Jul 13 13:43:49 2011 +0200 xfs: remove the unused xfs_buf_delwri_sort function Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit cb669ca5701153a808db6627521cc8aa52fc42d1 Author: Christoph Hellwig Date: Wed Jul 13 13:43:49 2011 +0200 xfs: remove wrappers around b_iodone Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit adadbeefb34f755a3477da51035eeeec2c1fde38 Author: Christoph Hellwig Date: Wed Jul 13 13:43:49 2011 +0200 xfs: remove wrappers around b_fspriv Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit bf9d9013a2a559858efb590bf922377be9d6d969 Author: Christoph Hellwig Date: Wed Jul 13 13:43:49 2011 +0200 xfs: add a proper transaction pointer to struct xfs_buf Replace the typeless b_fspriv2 and the ugly macros around it with a properly typed transaction pointer. As a fallout the log buffer state debug checks are also removed. We could have kept them using casts, but as they do not have a real purpose we can as well just remove them. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 77936d0280616d84d1eb0eb38a6f857d2827a434 Author: Christoph Hellwig Date: Wed Jul 13 13:43:49 2011 +0200 xfs: factor out xfs_da_grow_inode_int xfs_da_grow_inode and xfs_dir2_grow_inode are mostly duplicate code. Factor the meat of those two functions into a new common helper. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit a230a1df40864ef68ff6fbd09302f16d2a216ea5 Author: Christoph Hellwig Date: Wed Jul 13 13:43:48 2011 +0200 xfs: factor out xfs_dir2_leaf_find_stale Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit a00b7745c6e68ee89a123cd81e1dbc52fb55868e Author: Christoph Hellwig Date: Wed Jul 13 13:43:48 2011 +0200 xfs: cleanup struct xfs_dir2_free Change the bests array to be a proper variable sized entry. This is done easily as no one relies on the size of the structure. Also change XFS_DIR2_MAX_FREE_BESTS to an inline function while we're at it. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 5792664070c62479b088e4909000582de3686396 Author: Christoph Hellwig Date: Wed Jul 13 13:43:48 2011 +0200 xfs: reshuffle dir2 headers Replace the current mess of dir2 headers with just three that have a clear purpose: - xfs_dir2_format.h for all format definitions, including the inline helpers to access our variable size structures - xfs_dir2_priv.h for all prototypes that are internal to the dir2 code and not needed by anything outside of the directory code. For this purpose xfs_da_btree.c, and phase6.c in xfs_repair are considered part of the directory code. - xfs_dir2.h for the public interface to the directory code In addition to the reshuffle I have also update the comments to not only match the new file structure, but also to describe the directory format better. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 2bcf6e970f5a88fa05dced5eeb0326e13d93c4a1 Author: Christoph Hellwig Date: Wed Jul 13 13:43:48 2011 +0200 xfs: start periodic workers later Start the periodic sync workers only after we have finished xfs_mountfs and thus fully set up the filesystem structures. Without this we can call into xfs_qm_sync before the quotainfo strucute is set up if the mount takes unusually long, and probably hit other incomplete states as well. Also clean up the xfs_fs_fill_super error path by using consistent label names, and removing an impossible to reach case. Signed-off-by: Christoph Hellwig Reported-by: Arkadiusz Miskiewicz Reviewed-by: Alex Elder commit 796204142a98b6e0e71b494e808d1b6ee62cc75f Author: Rafael J. Wysocki Date: Wed Jul 13 12:32:07 2011 +0200 ARM / shmobile: Use pm_genpd_poweroff_unused() Make shmobile use pm_genpd_poweroff_unused() instead of the open-coded powering off PM domains without devices in use. Signed-off-by: Rafael J. Wysocki Acked-by: Magnus Damm commit 5125bbf3880755419eff68672623cde49c4f31e8 Author: Rafael J. Wysocki Date: Wed Jul 13 12:31:52 2011 +0200 PM / Domains: Introduce function to power off all unused PM domains Add a new function pm_genpd_poweroff_unused() queuing up the execution of pm_genpd_poweroff() for every initialized generic PM domain. Calling it will cause every generic PM domain without devices in use to be powered off. Signed-off-by: Rafael J. Wysocki Acked-by: Magnus Damm commit 390fd0b388e4f85549e5d60bdeb21364b344d9b9 Author: Matvejchikov Ilya Date: Tue Jul 12 21:47:38 2011 +0000 slip: remove dead code within the slip initialization This following code contains a dead "if (dev).." block: ... for (i = 0; i < slip_maxdev; i++) { dev = slip_devs[i]; if (dev == NULL) break; } /* Sorry, too many, all slots in use */ if (i >= slip_maxdev) return NULL; if (dev) { sl = netdev_priv(dev); if (test_bit(SLF_INUSE, &sl->flags)) { unregister_netdevice(dev); dev = NULL; slip_devs[i] = NULL; } } ... The reason is that the code starting with "if (dev).." is never called as when we found an empty slot (dev == NULL) we break the loop and "if (dev).." not works eiter the loop ends and we get out with "i >= slip_maxdev". Signed-off-by: Matvejchikov Ilya Signed-off-by: David S. Miller commit 9173a88f46bf53e2fa85337563b39e13c43c7f2e Author: Matvejchikov Ilya Date: Tue Jul 12 21:46:57 2011 +0000 slip: remove redundant check slip_devs for NULL As slip_devs is initialized on module load stage there is no reason to check it for NULL anywhere instead of the deinitialization routine because if we can't get enough memory on startup we don't run at all. Signed-off-by: Matvejchikov Ilya Signed-off-by: David S. Miller commit e28634d6b229dec216596298c765c203d6b6fa4c Author: Matvejchikov Ilya Date: Tue Jul 12 21:46:17 2011 +0000 slip: fix MTU comparation operation when reallocating buffers In sl_realloc_bufs() there is no reason to check if the requested MTU greater than or equal to the current MTU value as this function called only when requested MTU not equals to the current value. So, the ">=" operation can be safely replaced with the ">". Signed-off-by: Matvejchikov Ilya Signed-off-by: David S. Miller commit 30c5f8ecf246997d16ba5b11becc5f10f9deaf7a Author: Matvejchikov Ilya Date: Tue Jul 12 21:45:37 2011 +0000 slip: remove redundant NULL-pointer check before calling slhc_free Signed-off-by: Matvejchikov Ilya Signed-off-by: David S. Miller commit 5c25f686db352082eef8daa21b760192351a023a Author: David S. Miller Date: Wed Jul 13 00:51:10 2011 -0700 net: Kill support for multiple hh_cache entries per neighbour This never, ever, happens. Neighbour entries are always tied to one address family, and therefore one set of dst_ops, and therefore one dst_ops->protocol "hh_type" value. This capability was blindly imported by Alexey Kuznetsov when he wrote the neighbour layer. Signed-off-by: David S. Miller commit e69dd336ee3a05a589629b505b18ba5e7a5b4c54 Author: David S. Miller Date: Tue Jul 12 23:28:12 2011 -0700 net: Push protocol type directly down to header_ops->cache() Signed-off-by: David S. Miller commit 3769cffb1c48f64640ffab7ce3bffe867342c0f0 Author: David Miller Date: Mon Jul 11 22:44:24 2011 +0000 ipv4: Inline neigh binding. Get rid of all of the useless and costly indirection by doing the neigh hash table lookup directly inside of the neighbour binding. Rename from arp_bind_neighbour to rt_bind_neighbour. Use new helpers {__,}ipv4_neigh_lookup() In rt_bind_neighbour() get rid of useless tests which are never true in the context this function is called, namely dev is never NULL and the dst->neighbour is always NULL. Signed-off-by: David S. Miller commit cf056edbbe70393faa6edd2b7859a14467910946 Merge: 58b6542 620917d Author: Dave Airlie Date: Wed Jul 13 08:30:11 2011 +0100 Merge 3.0-rc7 into drm-core-next This pulls in all the drm fixes up to this point which are needed for some -next patches to work. commit 58b6542b50ded4243c26c251c0507e5f658642f6 Author: Jon Mason Date: Mon Jun 27 16:07:50 2011 +0000 DRM: remove drm_pci_device_is_pcie drm_pci_device_is_pcie duplicates the funcationality of pci_is_pcie. Convert callers of the former to the latter. This has the side benefit of removing an unnecessary search in the PCI configuration space due to using a saved PCIe capability offset. [airlied: update for new callsite] Signed-off-by: Jon Mason Signed-off-by: Dave Airlie commit d448303a77d8925fd06e7b2837bd1826e340bb02 Author: Axel Lin Date: Wed Jul 13 00:04:36 2011 -0700 Input: cy8ctmg110_ts - constify i2c_device_id table Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 21184c4efbba7b7959c7868cf2b99f43f29fc199 Author: Axel Lin Date: Wed Jul 13 00:03:36 2011 -0700 Input: cy8ctmg110_ts - fix checking return value of i2c_master_send i2c_master_send returns negative errno, or else the number of bytes written. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit fea2021c76a414b71204cc2aea623bb037fa913b Author: Axel Lin Date: Wed Jul 13 00:02:21 2011 -0700 Input: lifebook - make dmi callback functions return 1 We only care about if there is a successful match from the table (or no match at all), so let's make dmi_check_system return immediately instead of iterating thorough the whole table. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit c388b2c67e64d20cc0ad0d48d0e3e819d489bfed Author: Axel Lin Date: Tue Jul 12 23:59:41 2011 -0700 Input: atkbd - make dmi callback functions return 1 We only care about if there is a successful match from the table (or no match at all), so let's make dmi_check_system return immediately instead of iterating thorough the whole table. Make the dmi callback function return 1 then dmi_check_system will return immediately if we have a successful match. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit e5b1de1f5ebe0200e988e195fefb6c7396de6e20 Author: Michał Mirosław Date: Tue Jul 12 22:27:00 2011 -0700 net: Add documentation for netdev features handling v2: incorporated suggestions from Randy Dunlap Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 4c5102f94c175d81790a3a288e85efd4a8a1649a Author: Ajit Khaparde Date: Tue Jul 12 22:10:01 2011 -0700 be2net: move to new vlan model Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 1e75896294d282ecd5b1717fcb3f6aa2908d5946 Author: Eric Dumazet Date: Tue Jul 12 22:09:18 2011 -0700 be2net: account for skb allocation failures If we cannot allocate new skbs in RX completion handler, we should increase netdevice rx_dropped counter, not spam console messages. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit c2fed9965c60e1f989f57889357c557f7b907ab7 Author: Jeff Kirsher Date: Tue Jul 12 16:10:12 2011 +0000 e1000e: use GFP_KERNEL allocations at init time In process and sleep allowed context, favor GFP_KERNEL allocations over GFP_ATOMIC ones. -v2: fixed checkpatch.pl warnings CC: Eric Dumazet CC: Ben Greear CC: Bruce Allan Signed-off-by: Jeff Kirsher Tested-by: Aaron Brown Signed-off-by: David S. Miller commit a3d72d5d01b82a86f3b16ca1918d2040b1acba8c Author: Carolyn Wyborny Date: Tue Jul 12 16:10:11 2011 +0000 e1000e: Add Jumbo Frame support to 82583 devices This patch adds support for the Jumbo Frames feature on 82583 devices. Signed-off-by: Carolyn Wyborny Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 1e01979c8f502ac13e3cdece4f38712c5944e6e8 Author: Tejun Heo Date: Tue Jul 12 09:45:34 2011 +0200 x86, numa: Implement pfn -> nid mapping granularity check SPARSEMEM w/o VMEMMAP and DISCONTIGMEM, both used only on 32bit, use sections array to map pfn to nid which is limited in granularity. If NUMA nodes are laid out such that the mapping cannot be accurate, boot will fail triggering BUG_ON() in mminit_verify_page_links(). On 32bit, it's 512MiB w/ PAE and SPARSEMEM. This seems to have been granular enough until commit 2706a0bf7b (x86, NUMA: Enable CONFIG_AMD_NUMA on 32bit too). Apparently, there is a machine which aligns NUMA nodes to 128MiB and has only AMD NUMA but not SRAT. This led to the following BUG_ON(). On node 0 totalpages: 2096615 DMA zone: 32 pages used for memmap DMA zone: 0 pages reserved DMA zone: 3927 pages, LIFO batch:0 Normal zone: 1740 pages used for memmap Normal zone: 220978 pages, LIFO batch:31 HighMem zone: 16405 pages used for memmap HighMem zone: 1853533 pages, LIFO batch:31 BUG: Int 6: CR2 (null) EDI (null) ESI 00000002 EBP 00000002 ESP c1543ecc EBX f2400000 EDX 00000006 ECX (null) EAX 00000001 err (null) EIP c16209aa CS 00000060 flg 00010002 Stack: f2400000 00220000 f7200800 c1620613 00220000 01000000 04400000 00238000 (null) f7200000 00000002 f7200b58 f7200800 c1620929 000375fe (null) f7200b80 c16395f0 00200a02 f7200a80 (null) 000375fe 00000002 (null) Pid: 0, comm: swapper Not tainted 2.6.39-rc5-00181-g2706a0b #17 Call Trace: [] ? early_fault+0x2e/0x2e [] ? mminit_verify_page_links+0x12/0x42 [] ? memmap_init_zone+0xaf/0x10c [] ? free_area_init_node+0x2b9/0x2e3 [] ? free_area_init_nodes+0x3f2/0x451 [] ? paging_init+0x112/0x118 [] ? setup_arch+0x791/0x82f [] ? start_kernel+0x6a/0x257 This patch implements node_map_pfn_alignment() which determines maximum internode alignment and update numa_register_memblks() to reject NUMA configuration if alignment exceeds the pfn -> nid mapping granularity of the memory model as determined by PAGES_PER_SECTION. This makes the problematic machine boot w/ flatmem by rejecting the NUMA config and provides protection against crazy NUMA configurations. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/20110712074534.GB2872@htj.dyndns.org LKML-Reference: <20110628174613.GP478@escobedo.osrc.amd.com> Reported-and-Tested-by: Hans Rosenfeld Cc: Conny Seidel Signed-off-by: H. Peter Anvin commit d0ead157387f19801beb1b419568723b2e9b7c79 Author: Tejun Heo Date: Tue Jul 12 09:44:22 2011 +0200 x86, mm: s/PAGES_PER_ELEMENT/PAGES_PER_SECTION/ DISCONTIGMEM on x86-32 implements pfn -> nid mapping similarly to SPARSEMEM; however, it calls each mapping unit ELEMENT instead of SECTION. This patch renames it to SECTION so that PAGES_PER_SECTION is valid for both DISCONTIGMEM and SPARSEMEM. This will be used by the next patch to implement mapping granularity check. This patch is trivial constant rename. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/20110712074422.GA2872@htj.dyndns.org Cc: Hans Rosenfeld Signed-off-by: H. Peter Anvin commit 681e6edc25a452e26e263386caaa4afb02b5f131 Author: Colin Cross Date: Sun Jul 10 14:59:45 2011 -0700 ARM: tegra: remove copy-and-pasted usb platform data from boards trimslice and paz00 both have functionally identical platform data for the tegra-ehci driver. Move the platform data into devices.c, and remove it from all the board files. Signed-off-by: Colin Cross Tested-by: Konstantin Sinyuk Acked-by: Olof Johansson commit 78702e43c1cadd600e35374411caba82ad9354b6 Author: Colin Cross Date: Sun Jul 10 14:37:22 2011 -0700 ARM: tegra: remove copy-and-pasted i2c platform data in boards Every board file includes the same platform data definition for the i2c-tegra driver's bus speed. Move the platform data into devices.c, and remove it from all the board files. Signed-off-by: Colin Cross Tested-by: Konstantin Sinyuk Acked-by: Olof Johansson commit 4c755997ea1eb3e3c2df7ef657494d8188d0c120 Author: Mike Rapoport Date: Sun Apr 17 11:59:32 2011 +0300 ARM: tegra: trimslice: enable USB ports Signed-off-by: Mike Rapoport Signed-off-by: Colin Cross commit 9504940ae03e0ebe6cfef9cd8914199a42128107 Author: Mike Rapoport Date: Sun Apr 17 11:10:35 2011 +0300 ARM: tegra: trimslice: add audio devices and clocks Signed-off-by: Mike Rapoport Signed-off-by: Colin Cross commit bea2d6b84bdf1ae7384286394e0048a692e12c3f Author: Mike Rapoport Date: Wed Apr 13 13:52:25 2011 +0300 ARM: tegra: trimslice: register i2c busses and devices Signed-off-by: Mike Rapoport Signed-off-by: Colin Cross commit 24fe4325207d4adc095e71009773d6705237c29b Author: KOSAKI Motohiro Date: Thu Jun 23 17:28:28 2011 +0900 arm,tegra: replace cpu_set() with modern api cpu_set() is marked as obsolete cpumask function and we plan to remove it in future. This patch replace it with modern cpumask function. Signed-off-by: KOSAKI Motohiro Cc: Colin Cross Cc: Erik Gilling Cc: Olof Johansson Cc: Russell King Cc: linux-tegra@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: Colin Cross commit e051526ba7cce238f232fc4a69a61c5ac0b03828 Author: Robert Morell Date: Tue Jun 7 18:53:23 2011 -0700 arm: tegra: remove generic disp clock divisor flag Although disp1 and disp2 have 7.1 divisors, their corresponding registers in the clk_rst block are not the interface to program the divisors. Setting the generic DIV_U71 flag may cause the code to attempt to program the clock at a different divisor, which will confuse any code attempting to use that clock since it isn't actually being divided. Signed-off-by: Robert Morell Signed-off-by: Colin Cross commit d1890d4d1a12f92ce423b10270f8dba604a039df Author: Marc Dietrich Date: Thu May 19 14:08:29 2011 +0200 ARM: tegra: paz00: change the machine name This renames "paz00" in MACHINE_START macro to a neater string. PAZ00 seems to have been the Compal internal project name, while PROCYON looks like Toshiba project name. Anyway, the AC100 support package in Ubuntu needs the new naming to identify the machine. Signed-off-by: Marc Dietrich Signed-off-by: Colin Cross commit 41cdc62e1245cc0cc603310e085ea9af72029e75 Author: Marc Dietrich Date: Thu May 19 14:08:28 2011 +0200 ARM: tegra: paz00: cleanup sdhci ports The internal storage has no gpios connected to. Also the second port is not connected at all, so remove it from the board file. Signed-off-by: Marc Dietrich Signed-off-by: Colin Cross commit 13db7a7f41a6ab619ed622d6e7b5bc1285124e1d Author: Marc Dietrich Date: Thu May 19 14:08:27 2011 +0200 ARM: tegra: paz00: enable usb ports This patch add support for the second and third ehci bus on paz00. The first bus needs gadget and nvec support and will be added once the needed patches are upstream. Signed-off-by: Marc Dietrich Signed-off-by: Colin Cross commit dda9cd289ca781593354cf9ad9c091aa5a1260a8 Author: Marc Dietrich Date: Thu May 19 14:08:26 2011 +0200 ARM: tegra: paz00: register i2c busses This adds support for the i2c busses on paz00. The 3rd bus is reserved for the nvec, which acts as master and i2c-tegra has not yet support for this kind of operation. The sound codec (alc5632) is connected to the first bus and will be added once the codec and glue driver is upstream. The thermal sensor (atd7461) is connected to dvc as usual, but will not be added now because i2c-tegra still misses probe support (needs I2C_FUNC_SMBUS_EMUL). Signed-off-by: Marc Dietrich Signed-off-by: Colin Cross commit 4592de7da8ec8d7d8d84da72aa517c145826dcc3 Author: Marc Dietrich Date: Thu May 19 14:08:25 2011 +0200 ARM: tegra: paz00: whitespace cleanup This patch replaces long sequences of spaces by tabs and tabs by spaces were appropriate. Signed-off-by: Marc Dietrich Signed-off-by: Colin Cross commit 2b0aaaf11a000adb1d1de29953318e6ede6c302b Author: Colin Cross Date: Sun Jul 10 13:54:02 2011 -0700 ARM: tegra: remove mach/barriers.h The barriers implemented in arch/arm/mach-tegra/mach/barriers.h are exactly the same as the default barriers implemented in arch/arm/include/asm/system.h. Remove barriers.h from Tegra, and don't select ARCH_HAS_BARRIERS. Signed-off-by: Colin Cross Acked-by: Olof Johansson commit cfeb34ede47921a5f9af48313eb4c61adbb6b343 Author: Stephen Warren Date: Tue May 31 15:14:08 2011 -0600 ARM: Tegra: Seaboard: Re-order sdhci device registration Ensure the built-in eMMC is always named mmcblk0. This is important because: * U-Boot statically assigns MMC device IDs based on controller ID. * U-Boot assumes that kernel MMC device ID numbering matches U-Boot numbering. * U-Boot provides a kernel cmdline option e.g. root=/dev/mmcblk0p3 based on that numbering. * The kernel dynamically assigns MMC device IDs based on enumeration order of the memory behind the host controller, rather than statically based on host controller ID like U-Boot. * By registering the SDHCI controller for the built-in eMMC first, the enumeration of the built-in eMMC is performed first, and hence eMMC gets assigned ID 0 just like U-Boot. If the SD slot is filled, it then gets assigned ID 1 just like U-Boot. * If the MMC IDs mismatch, and the system boots from SD card not eMMC, the kernel will access the eMMC instead of SD card when attempting to mount /dev/mmcblk1p3 as the root fs. If eMMC is not partitioned/formatted, the kernel will panic since the root fs can't be mounted. If eMMC is partitioned and formatted, the kernel will mount an unexpected filesystem as the root fs. This change relies on the SDHCI driver performing initial card detection synchronously during device registration. This is currently the case. Signed-off-by: Stephen Warren Signed-off-by: Colin Cross commit 42f0efc5aae2bd7e3bc420c0902c7024ef77391f Author: Naga Chumbalkar Date: Tue Jul 12 21:17:35 2011 +0000 x86, ioapic: Print IR_IO_APIC_route_entry when IR is enabled When IR (interrupt remapping) is enabled print_IO_APIC() displays output according to legacy RTE (redirection table entry) definitons: NR Dst Mask Trig IRR Pol Stat Dmod Deli Vect: 00 00 1 0 0 0 0 0 0 00 01 00 0 0 0 0 0 0 0 01 02 00 0 0 0 0 0 0 0 02 03 00 1 0 0 0 0 0 0 03 04 00 1 0 0 0 0 0 0 04 05 00 1 0 0 0 0 0 0 05 06 00 1 0 0 0 0 0 0 06 ... The above output is as per Sec 3.2.4 of the IOAPIC datasheet: 82093AA I/O Advanced Programmable Interrupt Controller (IOAPIC): http://download.intel.com/design/chipsets/datashts/29056601.pdf Instead the output should display the fields as discussed in Sec 5.5.1 of the VT-d specification: (Intel Virtualization Technology for Directed I/O: http://download.intel.com/technology/computing/vptech/Intel(r)_VT_for_Direct_IO.pdf) After the fix: NR Indx Fmt Mask Trig IRR Pol Stat Indx2 Zero Vect: 00 0000 0 1 0 0 0 0 0 0 00 01 000F 1 0 0 0 0 0 0 0 01 02 0001 1 0 0 0 0 0 0 0 02 03 0002 1 1 0 0 0 0 0 0 03 04 0011 1 1 0 0 0 0 0 0 04 05 0004 1 1 0 0 0 0 0 0 05 06 0005 1 1 0 0 0 0 0 0 06 ... Signed-off-by: Naga Chumbalkar Link: http://lkml.kernel.org/r/20110712211658.2939.93123.sendpatchset@nchumbalkar.americas.cpqcorp.net Signed-off-by: H. Peter Anvin commit c9206693457a946698e1d67db2b424e1d101493d Author: Stefan Berger Date: Wed Mar 30 12:13:34 2011 -0400 tpm: Fix a typo This patch fixes a typo. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 9519de3f265f112e992aa7f446d905196bd608e8 Author: Stefan Berger Date: Wed Mar 30 12:13:33 2011 -0400 tpm_tis: Probing function for Intel iTPM bug This patch introduces a function for automatic probing for the Intel iTPM STS_DATA_EXPECT flaw. The patch splits the current tpm_tis_send function into 2 parts where the 1st part is now called tpm_tis_send_data() and merely sends the data to the TPM. This function is then used for probing. The new tpm_tis_send function now first calls tpm_tis_send_data and if that succeeds has the TPM process the command and waits until the response is there. The probing for the Intel iTPM is only invoked if the user has not passed itpm=1 as parameter for the module *or* if such a TPM was detected via ACPI. Previously it was necessary to pass itpm=1 when also passing force=1 to the module when doing a 'modprobe'. This function is more general than the ACPI test function and the function relying on ACPI could probably be removed. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit a7b66822b20f67f106690d0acee3d0ba667fd9bb Author: Stefan Berger Date: Wed Mar 30 12:13:32 2011 -0400 tpm_tis: Fix the probing for interrupts This patch fixes several aspects of the probing for interrupts. This patch reads the TPM's timeouts before probing for the interrupts. The tpm_get_timeouts() function is invoked in polling mode and gets the proper timeouts from the TPM so that we don't need to fall back to 2 minutes timeouts for short duration commands while the interrupt probing is happening. This patch introduces a variable probed_irq into the vendor structure that gets the irq number if an interrupt is received while the the tpm_gen_interrupt() function is run in polling mode during interrupt probing. Previously some parts of tpm_gen_interrupt() were run in polling mode, then the irq variable was set in the interrupt handler when an interrupt was received and execution of tpm_gen_interrupt() ended up switching over to interrupt mode. tpm_gen_interrupt() execution ended up on an event queue where it eventually timed out since the probing handler doesn't wake any queues. Before calling into free_irq() clear all interrupt flags that may have been set by the TPM. The reason is that free_irq() will call into the probing interrupt handler and may otherwise fool us into thinking that a real interrupt happened (because we see the flags as being set) while the TPM's interrupt line is not even connected to anything on the motherboard. This solves a problem on one machine I did testing on (Thinkpad T60). If a TPM claims to use a specifc interrupt, the probing is done as well to verify that the interrupt is actually working. If a TPM indicates that it does not use a specific interrupt (returns '0'), probe all interrupts from 3 to 15. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 20b87bbfada971ae917cc2ff9dbc9dae05b94d25 Author: Stefan Berger Date: Wed Mar 30 12:13:31 2011 -0400 tpm_tis: Delay ACPI S3 suspend while the TPM is busy This patch delays the (ACPI S3) suspend while the TPM is busy processing a command and the TPM TIS driver is run in interrupt mode. This is the same behavior as we already have it for the TPM TIS driver in polling mode. Reasoning: Some of the TPM's commands advance the internal state of the TPM. An example would be the extending of one of its PCR registers. Upper layers, such as IMA or TSS (TrouSerS), would certainly want to be sure that the command succeeded rather than getting an error code (-62 = -ETIME) that may not give a conclusive answer as for what reason the command failed. Reissuing such a command would put the TPM into the wrong state, so waiting for it to finish is really the only option. The downside is that some commands (key creation) can take a long time and actually prevent the machine from entering S3 at all before the 20 second timeout of the power management subsystem arrives. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 45baa1d1fa3926510ead93c96e6b0baa5ad79bd3 Author: Stefan Berger Date: Wed Mar 30 12:13:30 2011 -0400 tpm_tis: Re-enable interrupts upon (S3) resume This patch makes sure that if the TPM TIS interface is run in interrupt mode (rather than polling mode) that all interrupts are enabled in the TPM's interrupt enable register after a resume from ACPI S3 suspend. The registers may either have been cleared by the TPM loosing its state during device sleep or by the BIOS leaving the TPM in polling mode (after sending a command to the TPM for starting it up again) You may want to check if your TPM runs with interrupts by doing cat /proc/interrupts | grep -i tpm and see whether there is an entry or otherwise for it to use interrupts: modprobe tpm_tis interrupts=1 [add 'itpm=1' for Intel TPM ] v2: - the patch was adapted to work with the pnp and platform driver implementations in tpm_tis.c Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 5a79444f24cb169b79f0f346482a42ab28329bae Author: Stefan Berger Date: Wed Mar 30 12:13:29 2011 -0400 tpm: Fix display of data in pubek sysfs entry This patch fixes the TPM's pubek sysfs entry that is accessible as long as the TPM doesn't have an owner. It was necessary to shift the access to the data by -10 -- the first byte immediately follows the 10 byte header. The line data = tpm_cmd.params.readpubek_out_buffer; sets it at the offset '10' in the packet, so we can read the data array starting at offset '0'. Before: Algorithm: 00 0C 00 00 Encscheme: 08 00 Sigscheme: 00 00 Parameters: 00 00 00 00 01 00 AC E2 5E 3C A0 78 Modulus length: -563306801 Modulus: 28 21 08 0F 82 CD F2 B1 E7 49 F7 74 70 BE 59 8C 43 78 B1 24 EA 52 E2 FE 52 5C 3A 12 3B DC 61 71 [...] After: Algorithm: 00 00 00 01 Encscheme: 00 03 Sigscheme: 00 01 Parameters: 00 00 08 00 00 00 00 02 00 00 00 00 Modulus length: 256 Modulus: AC E2 5E 3C A0 78 DE 6C 9E CF 28 21 08 0F 82 CD F2 B1 E7 49 F7 74 70 BE 59 8C 43 78 B1 24 EA 52 [...] Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 6259210176510c64251a314ffb74834a790f09a0 Author: Stefan Berger Date: Wed Mar 30 12:13:28 2011 -0400 tpm_tis: Add timeouts sysfs entry Display the TPM's interface timeouts in a 'timeouts' sysfs entry. Display the entries as having been adjusted when they were scaled due to their values being reported in milliseconds rather than microseconds. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit e3e1a1e169d4e7f73c60ded937ebe24526bc6427 Author: Stefan Berger Date: Wed Mar 30 12:13:27 2011 -0400 tpm: Adjust interface timeouts if they are too small Adjust the interface timeouts if they are found to be too small, i.e., if they are returned in milliseconds rather than microseconds as we heared from Infineon that some (old) Infineon TPMs do. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 829bf0675272d24ba0056f5f79e09544464f0c8d Author: Stefan Berger Date: Wed Mar 30 12:13:26 2011 -0400 tpm: Use interface timeouts returned from the TPM The TPM driver currently discards the interface timeout values returned from the TPM. The check of the response packet needs to consider that the return_code field is 0 on success and the size of the expected packet is equivalent to the header size + u32 length indicator for the TPM_GetCapability() result + 4 interface timeout indicators of type u32. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 04ab2293bbd36fc04060da93058cef7789414585 Author: Stefan Berger Date: Wed Mar 30 12:13:25 2011 -0400 tpm_tis: Introduce durations sysfs entry Display the TPM's command timeouts in a 'durations' sysfs entry. Display the entries as having been adjusted when they were scaled due to their values being reported in milliseconds rather than microseconds. Signed-off-by: Stefan Berger Tested-by: Guillaume Chazarain Signed-off-by: Rajiv Andrade commit e934acca1ee993e1d99d7dc203569a6e5cdfb392 Author: Stefan Berger Date: Wed Mar 30 12:13:24 2011 -0400 tpm: Adjust the durations if they are too small Adjust the durations if they are found to be too small, i.e., if they are returned in milliseconds rather than microseconds as some Infineon TPMs are reported to do. Signed-off-by: Stefan Berger Signed-off-by: Rajiv Andrade commit 979b140614a5459f340f5f8b1641ef77c863d899 Author: Stefan Berger Date: Wed Mar 30 12:13:23 2011 -0400 tpm: Use durations returned from TPM The TPM driver currently discards the durations values returned from the TPM. The check of the response packet needs to consider that the return_code field is 0 on success and the size of the expected packet is equivalent to the header size + u32 length indicator for the TPM_GetCapability() result + 3 timeout indicators of type u32. v4: - sysfs entry 'durations' is now a patch of its own - the work-around for TPMs reporting durations in milliseconds is now in a patch of its own v3: - sysfs entry now called 'durations' to resemble TPM-speak (previously was called 'timeouts') v2: - adjusting all timeouts for TPM devices reporting timeouts in msec rather than usec - also displaying in sysfs whether the timeouts are 'original' or 'adjusted' Signed-off-by: Stefan Berger Tested-by: Guillaume Chazarain Signed-off-by: Rajiv Andrade commit 3040db92ee1b6c5b6b6d73f8cdcad54c0da11563 Author: Naga Chumbalkar Date: Tue Jul 12 21:17:41 2011 +0000 x86, ioapic: Print IRTE when IR is enabled When "apic=debug" is used as a boot parameter, Linux prints the IOAPIC routing entries in "dmesg". Below is output from IOAPIC whose apic_id is 8: # dmesg | grep "routing entry" IOAPIC[8]: Set routing entry (8-1 -> 0x31 -> IRQ 1 Mode:0 Active:0 Dest:0) IOAPIC[8]: Set routing entry (8-2 -> 0x30 -> IRQ 0 Mode:0 Active:0 Dest:0) IOAPIC[8]: Set routing entry (8-3 -> 0x33 -> IRQ 3 Mode:0 Active:0 Dest:0) ... Similarly, when IR (interrupt remapping) is enabled, and the IRTE (interrupt remapping table entry) is set up we should display it. After the fix: # dmesg | grep IRTE IOAPIC[8]: Set IRTE entry (P:1 FPD:0 Dst_Mode:0 Redir_hint:1 Trig_Mode:0 Dlvry_Mode:0 Avail:0 Vector:31 Dest:00000000 SID:00F1 SQ:0 SVT:1) IOAPIC[8]: Set IRTE entry (P:1 FPD:0 Dst_Mode:0 Redir_hint:1 Trig_Mode:0 Dlvry_Mode:0 Avail:0 Vector:30 Dest:00000000 SID:00F1 SQ:0 SVT:1) IOAPIC[8]: Set IRTE entry (P:1 FPD:0 Dst_Mode:0 Redir_hint:1 Trig_Mode:0 Dlvry_Mode:0 Avail:0 Vector:33 Dest:00000000 SID:00F1 SQ:0 SVT:1) ... The IRTE is defined in Sec 9.5 of the Intel VT-d Specification. Signed-off-by: Naga Chumbalkar Link: http://lkml.kernel.org/r/20110712211704.2939.71291.sendpatchset@nchumbalkar.americas.cpqcorp.net Signed-off-by: H. Peter Anvin commit 25970852280c9d5fb2de899769880d3e97332baa Author: Naga Chumbalkar Date: Tue Jul 12 05:59:07 2011 +0000 x86, x2apic: Preserve high 32-bits of IA32_APIC_BASE MSR If there's no special reason to zero-out the "high" 32-bits of the IA32_APIC_BASE MSR, let's preserve it. The x2APIC Specification doesn't explicitly state any such requirement. (Sec 2.2 in: http://www.intel.com/Assets/PDF/manual/318148.pdf). Signed-off-by: Naga Chumbalkar Link: http://lkml.kernel.org/r/20110712055831.2498.78521.sendpatchset@nchumbalkar.americas.cpqcorp.net Reviewed-by: Cyrill Gorcunov Reviewed-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 3881ac04ebf94268ba3d6e486aa524fd41f893a9 Author: David Teigland Date: Thu Jul 7 14:05:03 2011 -0500 dlm: improve rsb searches By pre-allocating rsb structs before searching the hash table, they can be inserted immediately. This avoids always having to repeat the search when adding the struct to hash list. This also adds space to the rsb struct for a max resource name, so an rsb allocation can be used by any request. The constant size also allows us to finally use a slab for the rsb structs. Signed-off-by: David Teigland commit c8c9fda5069456eb9e0e403c19764b2e257802e1 Author: Kevin Hilman Date: Tue Jul 12 22:48:42 2011 +0200 OMAP: PM: disable idle on suspend for GPIO and UART Until these drivers are runtime PM converted, their device power states are managed by calling custom driver hooks late in the idle/suspend path. Therefore, do not let the suspend/resume core code automatically idle these devices since they will be managed manually by the OMAP PM core very late in the idle/suspend path. Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit 80c6d1e65c25fbf198b463cfaec015820fb9bcdc Author: Kevin Hilman Date: Tue Jul 12 22:48:29 2011 +0200 OMAP: PM: omap_device: add API to disable idle on suspend By default, omap_devices will be automatically idled on suspend (and re-enabled on resume.) Using this new API, device init code can disable this feature if desired. NOTE: any driver/device that has been runtime PM converted should not be using this API. Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit c03f007a8bf0e092caeb6856a5c8a850df10b974 Author: Kevin Hilman Date: Tue Jul 12 22:48:19 2011 +0200 OMAP: PM: omap_device: add system PM methods for PM domain handling In the omap_device PM domain callbacks, use omap_device idle/enable to automatically manage device idle states during system suspend/resume. If an omap_device has not already been runtime suspended, the ->suspend_noirq() method of the PM domain will use omap_device_idle() to idle the HW after calling the driver's ->runtime_suspend() callback. Similarily, upon resume, if the device was suspended during ->suspend_noirq(), the ->resume_noirq() method of the PM domain will use omap_device_enable() to enable the HW and then call the driver's ->runtime_resume() callback. If a device has already been runtime suspended, the noirq methods of the PM domain leave the device runtime suspended by default. However, if a driver needs to runtime resume a device during suspend (for example, to change its wakeup settings), it may do so using pm_runtime_get* in it's ->suspend() callback. Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit 256a5435975e344b975f89c5434aa6f6eeb03fa1 Author: Kevin Hilman Date: Tue Jul 12 22:48:03 2011 +0200 OMAP: PM: omap_device: conditionally use PM domain runtime helpers Only build and use the runtime PM helper functions only when runtime PM is actually enabled. Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit a8e616b9a41212655042f59c969f30bb7de1ec73 Author: Josh Boyer Date: Tue Jul 12 16:37:50 2011 -0400 powerpc/4xx: Move PCIE printk to proper function Move the "Checking link..." printk to the function that actually checks the linke. Reported-by: Ayman El-Khashab Signed-off-by: Josh Boyer commit e2270ea62ae4d7a47d6d72942cdb8c669be6357a Author: David S. Miller Date: Tue Jul 12 10:37:21 2011 -0700 netdevice: Kill 'feature' test macros. Almost all of these have long outstayed their welcome. And for every one of these macros, there are 10 features for which we didn't add macros. Let's just delete them all, and get out of habit of doing things this way. Signed-off-by: David S. Miller Acked-by: Stephen Hemminger Acked-by: Arnd Bergmann commit cf01b73e26a8e93b46cf0b8ae878206277fb8838 Author: Paul Menzel Date: Tue Jul 12 19:53:56 2011 +0200 ALSA: hda - fix up typos in Kconfig help for default buffer size introduced in acfa634f This commit is a fix up for commit acfa634f. commit acfa634f7e199193ec28282e82a5a6dd8edebcb7 Author: Takashi Iwai Date: Tue Jul 12 17:27:46 2011 +0200 ALSA: hda - Add Kconfig for the default buffer size Signed-off-by: Paul Menzel Signed-off-by: Takashi Iwai commit 6e4efd568574221840ee8dd86f176dc977c1330c Author: Trond Myklebust Date: Tue Jul 12 13:42:02 2011 -0400 NFS: Clean up nfs_read_rpcsetup and nfs_write_rpcsetup Split them up into two parts: one which sets up the struct nfs_read/write_data, the other which sets up the actual RPC call or pNFS call. Signed-off-by: Trond Myklebust commit 87ed5eb44ad9338b1617a0e78dea81d681325298 Author: Trond Myklebust Date: Tue Jul 12 13:42:01 2011 -0400 NFS: Don't use DATA_SYNC writes If we're writing back data, and the FLUSH_STABLE flag is set, then we always want to use NFS_FILE_SYNC, since we're always in a situation where we're doing page reclaim, and so we want to free up the page as quickly as possible. If we're in the FLUSH_COND_STABLE case, then we either want to use another unstable write (if we have to do a commit anyway) or again, we want to use NFS_FILE_SYNC because we know that we have no more pages to write out. Signed-off-by: Trond Myklebust commit c47abcf8ff4d0c56d20ce541e80d3e1c975f54b5 Author: Andy Adamson Date: Wed Jun 15 17:52:40 2011 -0400 NFSv4.1: do not use deviceids after MDS clientid invalidation Mark all deviceids established under an expired MDS clientid as invalid. Stop all new i/o through DS and send through the MDS. Don't use any new LAYOUTGETs that use the invalid deviceid. Purge all layouts established under the expired MDS clientid. Remove the MDS clientid deviceid and data servers reference Signed-off-by: Andy Adamson Signed-off-by: Trond Myklebust commit a56aaa02b1f723e28b41d339ddff02e958d32d43 Author: Trond Myklebust Date: Wed Jun 15 11:59:10 2011 -0400 NFSv4.1: Clean up layoutreturn Since we take a reference to it, we really ought to pass the a pointer to the layout header in the arguments instead of assuming that NFS_I(inode)->layout will forever point to the correct object. Signed-off-by: Trond Myklebust commit aa5c01446610f0305f96251d0f9621866b8e5a14 Author: Boaz Harrosh Date: Mon Jun 13 17:52:55 2011 -0400 pnfs-obj: pnfs_osd_xdr: Remove dead code and cleanup * Some leftovers from ancient times. * This file will only define common types and client API. Remove server from comments Signed-off-by: Boaz Harrosh Signed-off-by: Trond Myklebust commit 7c24d9489fe57d67cb56c6bdad58d89806e7fd97 Author: Andy Adamson Date: Mon Jun 13 18:22:38 2011 -0400 NFSv4.1: File layout only supports whole file layouts Ask for whole file layouts. Until support for layout segments is fully supported in the file layout code, discard non-whole file layouts. Signed-off-by: Andy Adamson Signed-off-by: Fred Isaman Signed-off-by: Trond Myklebust commit 47cb498e9316314e7e681f417135589195ad78a7 Author: Trond Myklebust Date: Tue Jun 14 12:18:11 2011 -0400 NFSv4.1: Clean ups for the device id cache The fact that the global device id cache holds a reference to the nfs4_deviceid_node until it is invisible to rcu lookups implies that we can always assume that the reference count is non-zero in _find_get_deviceid. Also clean up nfs4_put_deviceid_node and the removal of the device id from the cache. Signed-off-by: Trond Myklebust commit e885de1a5bc9f46ef8f934c5a7602c89d2d51e8d Author: Trond Myklebust Date: Fri Jun 10 13:30:23 2011 -0400 NFSv4.1: Fall back to ordinary i/o through the mds if we have no layout segment Signed-off-by: Trond Myklebust commit d8007d4dd6ff8749cc8a4063c3ec87442db76d82 Author: Trond Myklebust Date: Fri Jun 10 13:30:23 2011 -0400 NFSv4.1: Add an initialisation callback for pNFS Ensure that we always get a layout before setting up the i/o request. Signed-off-by: Trond Myklebust commit 1751c3638f2a07a8c66a803a31791bab9bd3fced Author: Trond Myklebust Date: Fri Jun 10 13:30:23 2011 -0400 NFS: Cleanup of the nfs_pageio code in preparation for a pnfs bugfix We need to ensure that the layouts are set up before we can decide to coalesce requests. To do so, we want to further split up the struct nfs_pageio_descriptor operations into an initialisation callback, a coalescing test callback, and a 'do i/o' callback. This patch cleans up the existing callback methods before adding the 'initialisation' callback. Signed-off-by: Trond Myklebust commit f062eb6ced3b297277b94b4da3113b1d3782e539 Author: Bryan Schumaker Date: Thu Jun 2 14:59:10 2011 -0400 NFS: test and free stateids during recovery When recovering open files and locks, the stateid should be tested against the server and freed if it is invalid. This patch adds new recovery functions for NFS v4.1. Signed-off-by: Bryan Schumaker Signed-off-by: Trond Myklebust commit 9aeda35fd643eba683fdb8dba8907fa796a85dda Author: Bryan Schumaker Date: Thu Jun 2 14:59:09 2011 -0400 NFS: added FREE_STATEID call FREE_STATEID is used to tell the server that we want to free a stateid that no longer has any locks associated with it. This allows the client to reclaim locks without encountering edge conditions documented in section 8.4.3 of RFC 5661. Signed-off-by: Bryan Schumaker Signed-off-by: Trond Myklebust commit 7d9747947ae66d8f6a9a9a023a3a5e28df6a536e Author: Bryan Schumaker Date: Thu Jun 2 14:59:08 2011 -0400 NFS: Added TEST_STATEID call This patch adds in the xdr for doing a TEST_STATEID call with a single stateid. RFC 5661 allows multiple stateids to be tested in a single call, but only testing one keeps things simpler for now. Signed-off-by: Bryan Schumaker Signed-off-by: Trond Myklebust commit fca78d6d2c77f87d7dbee89bbe4836a44da881e2 Author: Bryan Schumaker Date: Thu Jun 2 14:59:07 2011 -0400 NFS: Add SECINFO_NO_NAME procedure If the client is using NFS v4.1, then we can use SECINFO_NO_NAME to find the secflavor for the initial mount. If the server doesn't support SECINFO_NO_NAME then I fall back on the "guess and check" method used for v4.0 mounts. Signed-off-by: Bryan Schumaker Signed-off-by: Trond Myklebust commit 6382a44138e7aa40bf52170e7afc014443a24806 Author: Weston Andros Adamson Date: Wed Jun 1 16:44:44 2011 -0400 NFS: move pnfs layouts to nfs_server structure Layouts should be tracked per nfs_server (aka superblock) instead of per struct nfs_client, which may have multiple FSIDs associated with it. Signed-off-by: Weston Andros Adamson Signed-off-by: Trond Myklebust commit 35dbbc99e93e57680837c17f96efe370f0535064 Author: Weston Andros Adamson Date: Wed Jun 1 16:32:21 2011 -0400 NFS: fix comment We support IPv4 and IPv6 now. Signed-off-by: Weston Andros Adamson Signed-off-by: Trond Myklebust commit 78fe0f41d9937ee62817912ac8d627e06243c269 Author: Weston Andros Adamson Date: Tue May 31 19:05:47 2011 -0400 NFS: use scope from exchange_id to skip reclaim can be skipped if the "eir_server_scope" from the exchange_id proc differs from previous calls. Also, in the future server_scope will be useful for determining whether client trunking is available Signed-off-by: Weston Andros Adamson Signed-off-by: Trond Myklebust commit 7e574f0d3911c5cc60d4d2b57fee975c462d6cd0 Author: Weston Andros Adamson Date: Tue May 31 18:48:58 2011 -0400 NFS: pnfs: loop over multipath addrs on connect Don't just use the first addr in the multipath list - instead, loop over addresses when calling nfs4_set_ds_client() (which calls connect) until it is successful. Although this is not real multipath support, it's a quick fix to handle when an MDS sends a list of addresses for a DS and some of the addr families are unsupported or misconfigured (like no routable ipv6 addr assigned). This will attempt all paths to the DS before giving up, instead of immediately falling back to the MDS. As before, an error encountered after a successful connect() will cause all i/o to fall back to the MDS. Signed-off-by: Weston Andros Adamson Signed-off-by: Trond Myklebust commit 14f9a6076f5388f3fd6341ad4b841337b28fc825 Author: Weston Andros Adamson Date: Tue May 31 18:48:57 2011 -0400 NFS: Parse and store all multipath DS addresses This parses and stores all addresses associated with each data server, laying the groundwork for supporting multipath to data servers. - Skips over addresses that cannot be parsed (ie IPv6 addrs if v6 is not enabled). Only fails if none of the addresses are recognizable - Currently only uses the first address that parsed cleanly - Tested against pynfs server (modified to support multipath) Signed-off-by: Weston Andros Adamson Signed-off-by: Trond Myklebust commit c9895cb69b07a4b17d8fdae26667f9a9fba5183b Author: Weston Andros Adamson Date: Tue May 31 18:48:56 2011 -0400 NFS: pnfs IPv6 support Handle ipv6 remote addresses from GETDEVICEINFO - supports netid "tcp" for ipv4 and "tcp6" for ipv6 as rfc 5665 specifies - added ds_remotestr to avoid having to handle different AFs in every dprintk - tested against pynfs 4.1 server, submitting ipv6 support patch to pynfs - tested with IPv6 disabled, it compiles cleanly and relies on rpc_pton to refuse to accept IPv6 addresses Signed-off-by: Weston Andros Adamson Signed-off-by: Trond Myklebust commit 82c2c8b8616fa9e77264c53f0df483f74ac54613 Author: Vasily Averin Date: Wed Jun 1 16:54:32 2011 +0400 lockd: properly convert be32 values in debug messages lockd: server returns status 50331648 it's quite hard to understand that number in this message is 3 in big endian Signed-off-by: Vasily Averin Signed-off-by: Trond Myklebust commit 726fd6ad59f73bd116b6a22d701db078183673c8 Author: Vasily Averin Date: Wed Jun 1 16:23:59 2011 +0400 sunrpc: use dprint_status() macro in call_decode() common dprint_status() macro is used in all callbacks but not in call_decode() Signed-off-by: Vasily Averin Signed-off-by: Trond Myklebust commit 9aa73a51c91cb0d0af4caaa9823969c1a1179a12 Merge: c7c3694 a94919e Author: Keith Packard Date: Tue Jul 12 10:40:25 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit cc22b4c18540e5e8bf55c7d124044f9317527d3c Author: Rob Herring Date: Tue Jun 28 21:22:40 2011 -0500 ARM: set vga memory base at run-time Convert the incorrectly named PCIMEM_BASE to a variable called vga_base. This removes the dependency on mach/hardware.h. Signed-off-by: Rob Herring Acked-by: Nicolas Pitre Reviewed-by: Arnd Bergmann commit c9d95fbe59e426eed7f16e7cac812e46ac4772d0 Author: Rob Herring Date: Tue Jun 28 21:16:13 2011 -0500 ARM: convert PCI defines to variables Convert PCIBIOS_MIN_IO and PCIBIOS_MIN_MEM to variables to allow multi-platform builds. This also removes the requirement for a platform to have a mach/hardware.h. The default values for i/o and mem are 0x1000 and 0x01000000, respectively. Per Arnd Bergmann, other values are likely to be incorrect, but this commit does not try to address that issue. Signed-off-by: Rob Herring Acked-by: Nicolas Pitre Reviewed-by: Arnd Bergmann commit dc8d966bccde0b8b6c9e8c6e663c747030c17435 Author: Rob Herring Date: Wed Jun 29 10:59:45 2011 -0500 ARM: pci: make pcibios_assign_all_busses use pci_has_flag Convert pcibios_assign_all_busses from a define to inline so platforms can control this setting. Signed-off-by: Rob Herring Acked-by: Nicolas Pitre Reviewed-by: Arnd Bergmann commit b480a4b0c81b5e3a5ccc3c045da35d890e80afb4 Author: Rob Herring Date: Tue Jun 28 21:09:45 2011 -0500 ARM: remove unnecessary mach/hardware.h includes Remove some includes of mach/hardware.h which are not needed. hardware.h will be removed completely for tegra and cns3xxx in follow on patch. Signed-off-by: Rob Herring Acked-by: Nicolas Pitre Reviewed-by: Arnd Bergmann commit 0f5733b0c883158b13366ae34b5e4bd52a1ac346 Author: Guillaume Pellerin Date: Tue Jul 12 18:13:46 2011 +0200 ALSA: usb-audio - Add quirks for M-Audio Fast Track Pro and Quattro This patch gives M-Audio Fast Track Pro and M-Audio Quattro quirks and endpoints to boot and setup those devices with special options (digital inputs and outputs, 24 bits mode, etc...). M-Audio Audiophile quirks are just adapted to match the new global M-Audio parameters. Special configurations can be then loaded through a modprobe conf file. For example, to set the 24 bits mode on the Fast Track Pro add /etc/modprobe.d/fast_track_pro.conf : options snd_usb_audio vid=0x763 pid=0x2012 device_setup=0x08 Here is a list of the possibilities in this example : http://files.parisson.com/debian/fast-track-pro.conf Signed-off-by: Guillaume Pellerin Signed-off-by: Takashi Iwai commit a990cbd887585a1056b927b3b20de325f14fdf96 Author: Barry Song <21cnbao@gmail.com> Date: Tue Jul 12 21:44:10 2011 +0800 MAINTAINERS: add maintainer of CSR SiRFprimaII machine Signed-off-by: Barry Song Signed-off-by: Arnd Bergmann commit f4ffd5e5dfdae561e3ea449eb2160a8d155cdec4 Author: Rob Herring Date: Wed Jun 29 11:46:54 2011 -0500 pci: move microblaze and powerpc pci flag functions into asm-generic Move separate microblaze and powerpc pci flag functions pci_set_flags, pci_add_flags, and pci_has_flag into asm-generic/pci-bridge.h so other archs can use them. Signed-off-by: Rob Herring Acked-by: Nicolas Pitre Acked-by: Benjamin Herrenschmidt Cc: Jesse Barnes Signed-off-by: Michal Simek commit acfa634f7e199193ec28282e82a5a6dd8edebcb7 Author: Takashi Iwai Date: Tue Jul 12 17:27:46 2011 +0200 ALSA: hda - Add Kconfig for the default buffer size Add a Kconfig entry to specify the default buffer size. Distros using PulseAudio can choose a larger value here. Signed-off-by: Takashi Iwai commit b691347a92e12e0bf19fe500eb23cf0363f2ecd5 Author: Sergei Shtylyov Date: Tue Jul 12 07:59:38 2011 -0700 lanai: use pci_dev->subsystem_device The driver reads PCI subsystem IDs from the PCI configuration registers while it is already stored by the PCI subsystem in the 'subsystem_device' field of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: David S. Miller commit 9661534d6ad75f881d8bbeb73dd7372f41cbad99 Author: Dave Kleikamp Date: Mon Jul 4 18:36:57 2011 +0000 powerpc/47x: allow kernel to be loaded in higher physical memory The 44x code (which is shared by 47x) assumes the available physical memory begins at 0x00000000. This is not necessarily the case in an AMP environment. Support CONFIG_RELOCATABLE for 476 in order to allow the kernel to be loaded into a higher memory range. Signed-off-by: Tony Breeds Signed-off-by: Dave Kleikamp Cc: Benjamin Herrenschmidt Cc: Josh Boyer Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Josh Boyer commit 0e47ff1ce65bbd0b12a9421a2756b26987ea5083 Author: Rob Herring Date: Tue Jul 12 09:25:51 2011 -0500 powerpc: rename ppc_pci_*_flags to pci_*_flags This renames pci flags functions and enums in preparation for creating generic version in asm-generic/pci-bridge.h. The following search and replace is done: s/ppc_pci_/pci_/ s/PPC_PCI_/PCI_/ Direct accesses to ppc_pci_flag variable are replaced with helper functions. Signed-off-by: Rob Herring Acked-by: Benjamin Herrenschmidt Cc: Paul Mackerras commit 3052091c67faee59fd12570e9f36971950b25216 Author: Josh Boyer Date: Tue Jul 12 10:03:40 2011 -0400 MAINTAINERS: Update PowerPC 4xx entry Update my email address Signed-off-by: Josh Boyer commit aab42ed51b7d4a6e63dbd6a78924f216860254e8 Author: Stefan Roese Date: Tue Jul 12 01:25:54 2011 +0000 powerpc/44x: Use correct phy-address dt nodes on taishan.dts Taishan (440GX) has the first PHY (EMAC2) mapped at PHY address 1 and the 2nd PHY (EMAC3) at PHY address 3. Use "phy-address" to correctly describe this instead of "phy-map". Signed-off-by: Stefan Roese Cc: Josh Boyer Signed-off-by: Josh Boyer commit e817513b1b3399f7fe0b1d77046a71b845114378 Author: Dave Kleikamp Date: Mon Jul 4 18:38:17 2011 +0000 powerpc/44x: boot wrapper: allow kernel to load into non-zero address For AMP, different kernel instances load into separate memory regions. Read the start of memory from the device tree and limit the memory to what's specified in the device tree. Signed-off-by: Dave Kleikamp Signed-off-by: Tony Breeds Cc: Benjamin Herrenschmidt Cc: Josh Boyer Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Josh Boyer commit 91b191c71eae79c0e652c52a968d06cd96b539c5 Author: Dave Kleikamp Date: Mon Jul 4 18:38:03 2011 +0000 powerpc/44x: don't use tlbivax on AMP systems Since other OS's may be running on the other cores don't use tlbivax Signed-off-by: Dave Kleikamp Signed-off-by: Tony Breeds Cc: Benjamin Herrenschmidt Cc: Josh Boyer Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Josh Boyer commit 112d1fe9f7715db423ffeec5ac1beccff6093dc4 Author: Tony Breeds Date: Thu Jun 30 20:44:24 2011 +0000 powerpc/4xx: Add check_link to struct ppc4xx_pciex_hwops All current pcie controllers unconditionally use SDR to check the link and poll for reset. Refactor the code to include device reset in the port_init_hw() op and add a new check_link() op. This will make room fro new controllers that do not use SDR for these operations. Tested on 460ex. Signed-off-by: Tony Breeds Signed-off-by: Josh Boyer commit 7700fc4f675fa38094e78e345b594363a2fd895b Author: Shaohua Li Date: Tue Jul 12 14:24:56 2011 +0200 CFQ: add think time check for group Currently when the last queue of a group has no request, we don't expire the queue to hope request from the group comes soon, so the group doesn't miss its share. But if the think time is big, the assumption isn't correct and we just waste bandwidth. In such case, we don't do idle. [global] runtime=30 direct=1 [test1] cgroup=test1 cgroup_weight=1000 rw=randread ioengine=libaio size=500m runtime=30 directory=/mnt filename=file1 thinktime=9000 [test2] cgroup=test2 cgroup_weight=1000 rw=randread ioengine=libaio size=500m runtime=30 directory=/mnt filename=file2 patched base test1 64k 39k test2 548k 540k total 604k 578k group1 gets much better throughput because it waits less time. To check if the patch changes behavior of queue without think time. I also tried to give test1 2ms think time or no think time. The test result is stable. The thoughput doesn't change with/without the patch. Signed-off-by: Shaohua Li Acked-by: Vivek Goyal Signed-off-by: Jens Axboe commit f5f2b6ceb23e02ff35c6dbc6a39aa776ace99cda Author: Shaohua Li Date: Tue Jul 12 14:24:55 2011 +0200 CFQ: add think time check for service tree Currently when the last queue of a service tree has no request, we don't expire the queue to hope request from the service tree comes soon, so the service tree doesn't miss its share. But if the think time is big, the assumption isn't correct and we just waste bandwidth. In such case, we don't do idle. [global] runtime=10 direct=1 [test1] rw=randread ioengine=libaio size=500m directory=/mnt filename=file1 thinktime=9000 [test2] rw=read ioengine=libaio size=1G directory=/mnt filename=file2 patched base test1 41k/s 33k/s test2 15868k/s 15789k/s total 15902k/s 15817k/s A slightly better To check if the patch changes behavior of queue without think time. I also tried to give test1 2ms think time or no think time. The test has variation even without the patch, but the average throughput doesn't change with/without the patch. Signed-off-by: Shaohua Li Acked-by: Vivek Goyal Signed-off-by: Jens Axboe commit 383cd7213f95a2784ab5038fe292844178768b82 Author: Shaohua Li Date: Tue Jul 12 14:24:35 2011 +0200 CFQ: move think time check variables to a separate struct Move the variables to do think time check to a sepatate struct. This is to prepare adding think time check for service tree and group. No functional change. Signed-off-by: Shaohua Li Acked-by: Vivek Goyal Signed-off-by: Jens Axboe commit e04eb14fd28ab044a48fd0a71e8c9117087176fb Author: Haojian Zhuang Date: Fri Apr 1 10:39:28 2011 +0800 ARM: mmp/dkb: enable max7312 gpio expander Support max7312 gpio expander in TTC DKB. Signed-off-by: Haojian Zhuang Signed-off-by: Eric Miao commit f16e05c7501d6cc5d7c947e8d8ff2f8ac6fa97f4 Author: Tanmay Upadhyay Date: Mon May 2 11:30:00 2011 +0530 ARM: pxa168: Add board support for gplugD Tested UART console, Ethernet & I2C interfaces Signed-off-by: Tanmay Upadhyay Signed-off-by: Eric Miao commit 80def0dc35886328284dfbde525815643882e730 Author: Tanmay Upadhyay Date: Mon May 2 11:29:59 2011 +0530 ARM: pxa168: Add support for Ethernet Add wrapper that creates resources for PXA168 Ethernet driver Signed-off-by: Tanmay Upadhyay Signed-off-by: Eric Miao commit 26407f818e62a88ac9cee64f250ec844fb079862 Author: Tanmay Upadhyay Date: Mon May 2 11:29:58 2011 +0530 ARM: pxa168: Add support for UART3 PXA168 has 3 onchip UARTs. Added support for the third one Signed-off-by: Tanmay Upadhyay Signed-off-by: Eric Miao commit 41646b24993590c49d21e6cc0f4378505e1f94a6 Author: Vasily Khoruzhick Date: Tue Mar 15 22:11:17 2011 +0200 ARM: pxa/z2: add poweroff function Signed-off-by: Vasily Khoruzhick Signed-off-by: Eric Miao commit 8a97ae2f554d762a4bc67b5d13b52ef39c8d6baa Author: Eric Miao Date: Wed May 18 21:30:04 2011 +0800 ARM: pxa: enable MULTI_IRQ_HANDLER for all boards Signed-off-by: Eric Miao commit ca0e687c8ea5a7ae4b1c7a735f797f95ed953f9a Author: Eric Miao Date: Wed May 18 21:19:04 2011 +0800 ARM: pxa: move declarations from generic.h to .h Signed-off-by: Eric Miao commit a551e4f787220459c6e78668a15cbe01f1ac7637 Author: Eric Miao Date: Wed Apr 27 22:48:05 2011 +0800 ARM: pxa: introduce {icip,ichp}_handle_irq() to prepare MULTI_IRQ_HANDLER Thanks Dmitry for providing a fix to the original code. Signed-off-by: Eric Miao Signed-off-by: Dmitry Eremin-Solenikov commit 688d3be815b1563b1484ce67702249a4a7a6314e Author: Christoph Lameter Date: Tue Jul 12 13:35:57 2011 +0200 percpu: Fixup __this_cpu_xchg* operations Somehow we got into a situation where the __this_cpu_xchg() operations were not defined in the same way as this_cpu_xchg() and friends. I had some build failures under 32 bit that were addressed by these fixes. Signed-off-by: Christoph Lameter Signed-off-by: Tejun Heo commit 5d284e353eb11ab2e8b1c5671ba06489b0bd1e0c Author: Eric Miao Date: Wed Apr 27 22:48:04 2011 +0800 ARM: pxa: avoid accessing interrupt registers directly Signed-off-by: Eric Miao commit 9c86441081e84c9fb9fac3929c6e7d3e6f4dd891 Author: Eric Miao Date: Wed May 18 15:35:54 2011 +0800 ARM: pxa: add common header file for pxa3xx Signed-off-by: Eric Miao commit 52585ccd93d75e368382af09ae336ed8f231642c Author: Haojian Zhuang Date: Fri Apr 8 20:15:38 2011 +0800 ARM: pxa: add clk_set_rate() Since there're mulitple clock rates in some device controllers, enable clk_set_rate() for this usage. Signed-off-by: Haojian Zhuang Signed-off-by: Eric Miao commit 4e234cc0ee9db31d5b16b58d7c09af17246b2466 Author: Eric Miao Date: Mon Apr 4 15:06:33 2011 +0800 ARM: pxa: enable AUTO_ZRELADDR Signed-off-by: Eric Miao commit a4841e39f7ca85ee2a40803ebac6221c6d8822c0 Author: Russell King - ARM Linux Date: Mon Jul 11 22:25:43 2011 +0100 ARM: introduce handle_IRQ() not to dump exception stack On Mon, Jul 11, 2011 at 3:52 PM, Russell King - ARM Linux wrote: ... > The __exception annotation on a function causes this to happen: > > [] (asm_do_IRQ+0x6c/0x8c) from [] > (__irq_svc+0x44/0xcc) > Exception stack(0xc3897c78 to 0xc3897cc0) > 7c60: 4022d320 4022e000 > 7c80: 08000075 00001000 c32273c0 c03ce1c0 c2b49b78 4022d000 c2b420b4 00000001 > 7ca0: 00000000 c3897cfc 00000000 c3897cc0 c00afc54 c002edd8 00000013 ffffffff > > Where that stack dump represents the pt_regs for the exception which > happened. Any function found in while unwinding will cause this to > be printed. > > If you insert a C function between the IRQ assembly and asm_do_IRQ, > the > dump you get from asm_do_IRQ will be the stack for your function, > not > the pt_regs. That makes the feature useless. > When __irq_svc - or any of the other exception handling assembly code - calls the C code, the stack pointer will be pointing at the pt_regs structure. All the entry points into C code from the exception handling code are marked with __exception or __exception_irq_enter to indicate that they are one of the functions which has pt_regs above them. Normally, when you've entered asm_do_IRQ() you will have this stack layout (higher address towards top): pt_regs asm_do_IRQ frame If you insert a C function between the exception assembly code and asm_do_IRQ, you end up with this stack layout instead: pt_regs your function frame asm_do_IRQ frame This means when we unwind, we'll get to asm_do_IRQ, and rather than dumping out the pt_regs, we'll dump out your functions stack frame instead, because that's what is above the asm_do_IRQ stack frame rather than the expected pt_regs structure. The fix is to introduce handle_IRQ() for no exception stack dump, so it can be called with MULTI_IRQ_HANDLER is selected and a C function is between the assembly code and the actual IRQ handling code. Signed-off-by: Russell King Signed-off-by: Eric Miao commit 9ddabbe72e41ca6794cb4947c70929c9410e6752 Author: Glauber Costa Date: Mon Jul 11 15:28:13 2011 -0400 KVM: KVM Steal time guest/host interface To implement steal time, we need the hypervisor to pass the guest information about how much time was spent running other processes outside the VM. This is per-vcpu, and using the kvmclock structure for that is an abuse we decided not to make. In this patchset, I am introducing a new msr, KVM_MSR_STEAL_TIME, that holds the memory area address containing information about steal time This patch contains the headers for it. I am keeping it separate to facilitate backports to people who wants to backport the kernel part but not the hypervisor, or the other way around. Signed-off-by: Glauber Costa Acked-by: Rik van Riel Tested-by: Eric B Munson CC: Jeremy Fitzhardinge CC: Peter Zijlstra CC: Anthony Liguori Signed-off-by: Avi Kivity commit 4b6b35f55ca81d3bfdec63b0adb61798702ceb2e Author: Glauber Costa Date: Mon Jul 11 15:28:12 2011 -0400 KVM: Add constant to represent KVM MSRs enabled bit in guest/host interface This patch is simple, put in a different commit so it can be more easily shared between guest and hypervisor. It just defines a named constant to indicate the enable bit for KVM-specific MSRs. Signed-off-by: Glauber Costa Acked-by: Rik van Riel Tested-by: Eric B Munson CC: Jeremy Fitzhardinge CC: Peter Zijlstra CC: Anthony Liguori Signed-off-by: Avi Kivity commit e03b644fe68b1c6401465b02724d261538dba10f Author: Gleb Natapov Date: Mon Jul 11 15:28:11 2011 -0400 KVM: introduce kvm_read_guest_cached Introduce kvm_read_guest_cached() function in addition to write one we already have. [ by glauber: export function signature in kvm header ] Signed-off-by: Gleb Natapov Signed-off-by: Glauber Costa Acked-by: Rik van Riel Tested-by: Eric Munson Signed-off-by: Avi Kivity commit 29d03158f9d400450c17bb25ee0533b52f651d04 Author: Alexander Graf Date: Fri Jul 1 20:26:32 2011 +0200 KVM: PPC: Remove prog_flags Commit c8f729d408 (KVM: PPC: Deliver program interrupts right away instead of queueing them) made away with all users of prog_flags, so we can just remove it from the headers. Signed-off-by: Alexander Graf commit 9e368f2915601cd5bc7f5fd638b58435b018bbd7 Author: Paul Mackerras Date: Wed Jun 29 00:40:08 2011 +0000 KVM: PPC: book3s_hv: Add support for PPC970-family processors This adds support for running KVM guests in supervisor mode on those PPC970 processors that have a usable hypervisor mode. Unfortunately, Apple G5 machines have supervisor mode disabled (MSR[HV] is forced to 1), but the YDL PowerStation does have a usable hypervisor mode. There are several differences between the PPC970 and POWER7 in how guests are managed. These differences are accommodated using the CPU_FTR_ARCH_201 (PPC970) and CPU_FTR_ARCH_206 (POWER7) CPU feature bits. Notably, on PPC970: * The LPCR, LPID or RMOR registers don't exist, and the functions of those registers are provided by bits in HID4 and one bit in HID0. * External interrupts can be directed to the hypervisor, but unlike POWER7 they are masked by MSR[EE] in non-hypervisor modes and use SRR0/1 not HSRR0/1. * There is no virtual RMA (VRMA) mode; the guest must use an RMO (real mode offset) area. * The TLB entries are not tagged with the LPID, so it is necessary to flush the whole TLB on partition switch. Furthermore, when switching partitions we have to ensure that no other CPU is executing the tlbie or tlbsync instructions in either the old or the new partition, otherwise undefined behaviour can occur. * The PMU has 8 counters (PMC registers) rather than 6. * The DSCR, PURR, SPURR, AMR, AMOR, UAMOR registers don't exist. * The SLB has 64 entries rather than 32. * There is no mediated external interrupt facility, so if we switch to a guest that has a virtual external interrupt pending but the guest has MSR[EE] = 0, we have to arrange to have an interrupt pending for it so that we can get control back once it re-enables interrupts. We do that by sending ourselves an IPI with smp_send_reschedule after hard-disabling interrupts. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 969391c58a4efb8411d6881179945f425ad9cbb5 Author: Paul Mackerras Date: Wed Jun 29 00:26:11 2011 +0000 powerpc, KVM: Split HVMODE_206 cpu feature bit into separate HV and architecture bits This replaces the single CPU_FTR_HVMODE_206 bit with two bits, one to indicate that we have a usable hypervisor mode, and another to indicate that the processor conforms to PowerISA version 2.06. We also add another bit to indicate that the processor conforms to ISA version 2.01 and set that for PPC970 and derivatives. Some PPC970 chips (specifically those in Apple machines) have a hypervisor mode in that MSR[HV] is always 1, but the hypervisor mode is not useful in the sense that there is no way to run any code in supervisor mode (HV=0 PR=0). On these processors, the LPES0 and LPES1 bits in HID4 are always 0, and we use that as a way of detecting that hypervisor mode is not useful. Where we have a feature section in assembly code around code that only applies on POWER7 in hypervisor mode, we use a construct like END_FTR_SECTION_IFSET(CPU_FTR_HVMODE | CPU_FTR_ARCH_206) The definition of END_FTR_SECTION_IFSET is such that the code will be enabled (not overwritten with nops) only if all bits in the provided mask are set. Note that the CPU feature check in __tlbie() only needs to check the ARCH_206 bit, not the HVMODE bit, because __tlbie() can only get called if we are running bare-metal, i.e. in hypervisor mode. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit aa04b4cc5be64b4fb9ef4e0fdf2418e2f4737fb2 Author: Paul Mackerras Date: Wed Jun 29 00:25:44 2011 +0000 KVM: PPC: Allocate RMAs (Real Mode Areas) at boot for use by guests This adds infrastructure which will be needed to allow book3s_hv KVM to run on older POWER processors, including PPC970, which don't support the Virtual Real Mode Area (VRMA) facility, but only the Real Mode Offset (RMO) facility. These processors require a physically contiguous, aligned area of memory for each guest. When the guest does an access in real mode (MMU off), the address is compared against a limit value, and if it is lower, the address is ORed with an offset value (from the Real Mode Offset Register (RMOR)) and the result becomes the real address for the access. The size of the RMA has to be one of a set of supported values, which usually includes 64MB, 128MB, 256MB and some larger powers of 2. Since we are unlikely to be able to allocate 64MB or more of physically contiguous memory after the kernel has been running for a while, we allocate a pool of RMAs at boot time using the bootmem allocator. The size and number of the RMAs can be set using the kvm_rma_size=xx and kvm_rma_count=xx kernel command line options. KVM exports a new capability, KVM_CAP_PPC_RMA, to signal the availability of the pool of preallocated RMAs. The capability value is 1 if the processor can use an RMA but doesn't require one (because it supports the VRMA facility), or 2 if the processor requires an RMA for each guest. This adds a new ioctl, KVM_ALLOCATE_RMA, which allocates an RMA from the pool and returns a file descriptor which can be used to map the RMA. It also returns the size of the RMA in the argument structure. Having an RMA means we will get multiple KMV_SET_USER_MEMORY_REGION ioctl calls from userspace. To cope with this, we now preallocate the kvm->arch.ram_pginfo array when the VM is created with a size sufficient for up to 64GB of guest memory. Subsequently we will get rid of this array and use memory associated with each memslot instead. This moves most of the code that translates the user addresses into host pfns (page frame numbers) out of kvmppc_prepare_vrma up one level to kvmppc_core_prepare_memory_region. Also, instead of having to look up the VMA for each page in order to check the page size, we now check that the pages we get are compound pages of 16MB. However, if we are adding memory that is mapped to an RMA, we don't bother with calling get_user_pages_fast and instead just offset from the base pfn for the RMA. Typically the RMA gets added after vcpus are created, which makes it inconvenient to have the LPCR (logical partition control register) value in the vcpu->arch struct, since the LPCR controls whether the processor uses RMA or VRMA for the guest. This moves the LPCR value into the kvm->arch struct and arranges for the MER (mediated external request) bit, which is the only bit that varies between vcpus, to be set in assembly code when going into the guest if there is a pending external interrupt request. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 371fefd6f2dc46668e00871930dde613b88d4bde Author: Paul Mackerras Date: Wed Jun 29 00:23:08 2011 +0000 KVM: PPC: Allow book3s_hv guests to use SMT processor modes This lifts the restriction that book3s_hv guests can only run one hardware thread per core, and allows them to use up to 4 threads per core on POWER7. The host still has to run single-threaded. This capability is advertised to qemu through a new KVM_CAP_PPC_SMT capability. The return value of the ioctl querying this capability is the number of vcpus per virtual CPU core (vcore), currently 4. To use this, the host kernel should be booted with all threads active, and then all the secondary threads should be offlined. This will put the secondary threads into nap mode. KVM will then wake them from nap mode and use them for running guest code (while they are still offline). To wake the secondary threads, we send them an IPI using a new xics_wake_cpu() function, implemented in arch/powerpc/sysdev/xics/icp-native.c. In other words, at this stage we assume that the platform has a XICS interrupt controller and we are using icp-native.c to drive it. Since the woken thread will need to acknowledge and clear the IPI, we also export the base physical address of the XICS registers using kvmppc_set_xics_phys() for use in the low-level KVM book3s code. When a vcpu is created, it is assigned to a virtual CPU core. The vcore number is obtained by dividing the vcpu number by the number of threads per core in the host. This number is exported to userspace via the KVM_CAP_PPC_SMT capability. If qemu wishes to run the guest in single-threaded mode, it should make all vcpu numbers be multiples of the number of threads per core. We distinguish three states of a vcpu: runnable (i.e., ready to execute the guest), blocked (that is, idle), and busy in host. We currently implement a policy that the vcore can run only when all its threads are runnable or blocked. This way, if a vcpu needs to execute elsewhere in the kernel or in qemu, it can do so without being starved of CPU by the other vcpus. When a vcore starts to run, it executes in the context of one of the vcpu threads. The other vcpu threads all go to sleep and stay asleep until something happens requiring the vcpu thread to return to qemu, or to wake up to run the vcore (this can happen when another vcpu thread goes from busy in host state to blocked). It can happen that a vcpu goes from blocked to runnable state (e.g. because of an interrupt), and the vcore it belongs to is already running. In that case it can start to run immediately as long as the none of the vcpus in the vcore have started to exit the guest. We send the next free thread in the vcore an IPI to get it to start to execute the guest. It synchronizes with the other threads via the vcore->entry_exit_count field to make sure that it doesn't go into the guest if the other vcpus are exiting by the time that it is ready to actually enter the guest. Note that there is no fixed relationship between the hardware thread number and the vcpu number. Hardware threads are assigned to vcpus as they become runnable, so we will always use the lower-numbered hardware threads in preference to higher-numbered threads if not all the vcpus in the vcore are runnable, regardless of which vcpus are runnable. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 54738c097163c3f01e67ccc85462b78d4d4f495f Author: David Gibson Date: Wed Jun 29 00:22:41 2011 +0000 KVM: PPC: Accelerate H_PUT_TCE by implementing it in real mode This improves I/O performance for guests using the PAPR paravirtualization interface by making the H_PUT_TCE hcall faster, by implementing it in real mode. H_PUT_TCE is used for updating virtual IOMMU tables, and is used both for virtual I/O and for real I/O in the PAPR interface. Since this moves the IOMMU tables into the kernel, we define a new KVM_CREATE_SPAPR_TCE ioctl to allow qemu to create the tables. The ioctl returns a file descriptor which can be used to mmap the newly created table. The qemu driver models use them in the same way as userspace managed tables, but they can be updated directly by the guest with a real-mode H_PUT_TCE implementation, reducing the number of host/guest context switches during guest IO. There are certain circumstances where it is useful for userland qemu to write to the TCE table even if the kernel H_PUT_TCE path is used most of the time. Specifically, allowing this will avoid awkwardness when we need to reset the table. More importantly, we will in the future need to write the table in order to restore its state after a checkpoint resume or migration. Signed-off-by: David Gibson Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit a8606e20e41a8149456bafdf76ad29d47672027c Author: Paul Mackerras Date: Wed Jun 29 00:22:05 2011 +0000 KVM: PPC: Handle some PAPR hcalls in the kernel This adds the infrastructure for handling PAPR hcalls in the kernel, either early in the guest exit path while we are still in real mode, or later once the MMU has been turned back on and we are in the full kernel context. The advantage of handling hcalls in real mode if possible is that we avoid two partition switches -- and this will become more important when we support SMT4 guests, since a partition switch means we have to pull all of the threads in the core out of the guest. The disadvantage is that we can only access the kernel linear mapping, not anything vmalloced or ioremapped, since the MMU is off. This also adds code to handle the following hcalls in real mode: H_ENTER Add an HPTE to the hashed page table H_REMOVE Remove an HPTE from the hashed page table H_READ Read HPTEs from the hashed page table H_PROTECT Change the protection bits in an HPTE H_BULK_REMOVE Remove up to 4 HPTEs from the hashed page table H_SET_DABR Set the data address breakpoint register Plus code to handle the following hcalls in the kernel: H_CEDE Idle the vcpu until an interrupt or H_PROD hcall arrives H_PROD Wake up a ceded vcpu H_REGISTER_VPA Register a virtual processor area (VPA) The code that runs in real mode has to be in the base kernel, not in the module, if KVM is compiled as a module. The real-mode code can only access the kernel linear mapping, not vmalloc or ioremap space. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit de56a948b9182fbcf92cb8212f114de096c2d574 Author: Paul Mackerras Date: Wed Jun 29 00:21:34 2011 +0000 KVM: PPC: Add support for Book3S processors in hypervisor mode This adds support for KVM running on 64-bit Book 3S processors, specifically POWER7, in hypervisor mode. Using hypervisor mode means that the guest can use the processor's supervisor mode. That means that the guest can execute privileged instructions and access privileged registers itself without trapping to the host. This gives excellent performance, but does mean that KVM cannot emulate a processor architecture other than the one that the hardware implements. This code assumes that the guest is running paravirtualized using the PAPR (Power Architecture Platform Requirements) interface, which is the interface that IBM's PowerVM hypervisor uses. That means that existing Linux distributions that run on IBM pSeries machines will also run under KVM without modification. In order to communicate the PAPR hypercalls to qemu, this adds a new KVM_EXIT_PAPR_HCALL exit code to include/linux/kvm.h. Currently the choice between book3s_hv support and book3s_pr support (i.e. the existing code, which runs the guest in user mode) has to be made at kernel configuration time, so a given kernel binary can only do one or the other. This new book3s_hv code doesn't support MMIO emulation at present. Since we are running paravirtualized guests, this isn't a serious restriction. With the guest running in supervisor mode, most exceptions go straight to the guest. We will never get data or instruction storage or segment interrupts, alignment interrupts, decrementer interrupts, program interrupts, single-step interrupts, etc., coming to the hypervisor from the guest. Therefore this introduces a new KVMTEST_NONHV macro for the exception entry path so that we don't have to do the KVM test on entry to those exception handlers. We do however get hypervisor decrementer, hypervisor data storage, hypervisor instruction storage, and hypervisor emulation assist interrupts, so we have to handle those. In hypervisor mode, real-mode accesses can access all of RAM, not just a limited amount. Therefore we put all the guest state in the vcpu.arch and use the shadow_vcpu in the PACA only for temporary scratch space. We allocate the vcpu with kzalloc rather than vzalloc, and we don't use anything in the kvmppc_vcpu_book3s struct, so we don't allocate it. We don't have a shared page with the guest, but we still need a kvm_vcpu_arch_shared struct to store the values of various registers, so we include one in the vcpu_arch struct. The POWER7 processor has a restriction that all threads in a core have to be in the same partition. MMU-on kernel code counts as a partition (partition 0), so we have to do a partition switch on every entry to and exit from the guest. At present we require the host and guest to run in single-thread mode because of this hardware restriction. This code allocates a hashed page table for the guest and initializes it with HPTEs for the guest's Virtual Real Memory Area (VRMA). We require that the guest memory is allocated using 16MB huge pages, in order to simplify the low-level memory management. This also means that we can get away without tracking paging activity in the host for now, since huge pages can't be paged or swapped. This also adds a few new exports needed by the book3s_hv code. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 3c42bf8a717cb636e0ed2ed77194669e2ac3ed56 Author: Paul Mackerras Date: Wed Jun 29 00:20:58 2011 +0000 KVM: PPC: Split host-state fields out of kvmppc_book3s_shadow_vcpu There are several fields in struct kvmppc_book3s_shadow_vcpu that temporarily store bits of host state while a guest is running, rather than anything relating to the particular guest or vcpu. This splits them out into a new kvmppc_host_state structure and modifies the definitions in asm-offsets.c to suit. On 32-bit, we have a kvmppc_host_state structure inside the kvmppc_book3s_shadow_vcpu since the assembly code needs to be able to get to them both with one pointer. On 64-bit they are separate fields in the PACA. This means that on 64-bit we don't need to copy the kvmppc_host_state in and out on vcpu load/unload, and in future will mean that the book3s_hv code doesn't need a shadow_vcpu struct in the PACA at all. That does mean that we have to be careful not to rely on any values persisting in the hstate field of the paca across any point where we could block or get preempted. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 923c53caea446d246949c94703be83e68f251af7 Author: Paul Mackerras Date: Wed Jun 29 00:20:24 2011 +0000 powerpc: Set up LPCR for running guest partitions In hypervisor mode, the LPCR controls several aspects of guest partitions, including virtual partition memory mode, and also controls whether the hypervisor decrementer interrupts are enabled. This sets up LPCR at boot time so that guest partitions will use a virtual real memory area (VRMA) composed of 16MB large pages, and hypervisor decrementer interrupts are disabled. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit df6909e5d52f67be01862c5cb453e509aee661f1 Author: Paul Mackerras Date: Wed Jun 29 00:19:50 2011 +0000 KVM: PPC: Move guest enter/exit down into subarch-specific code Instead of doing the kvm_guest_enter/exit() and local_irq_dis/enable() calls in powerpc.c, this moves them down into the subarch-specific book3s_pr.c and booke.c. This eliminates an extra local_irq_enable() call in book3s_pr.c, and will be needed for when we do SMT4 guest support in the book3s hypervisor mode code. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit f9e0554deca54a42fb2cf7f68c05a4a37461c205 Author: Paul Mackerras Date: Wed Jun 29 00:19:22 2011 +0000 KVM: PPC: Pass init/destroy vm and prepare/commit memory region ops down This arranges for the top-level arch/powerpc/kvm/powerpc.c file to pass down some of the calls it gets to the lower-level subarchitecture specific code. The lower-level implementations (in booke.c and book3s.c) are no-ops. The coming book3s_hv.c will need this. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 3cf658b605393d793ea52416c2306b86fbde9d9a Author: Paul Mackerras Date: Wed Jun 29 00:18:52 2011 +0000 KVM: PPC: Deliver program interrupts right away instead of queueing them Doing so means that we don't have to save the flags anywhere and gets rid of the last reference to to_book3s(vcpu) in arch/powerpc/kvm/book3s.c. Doing so is OK because a program interrupt won't be generated at the same time as any other synchronous interrupt. If a program interrupt and an asynchronous interrupt (external or decrementer) are generated at the same time, the program interrupt will be delivered, which is correct because it has a higher priority, and then the asynchronous interrupt will be masked. We don't ever generate system reset or machine check interrupts to the guest, but if we did, then we would need to make sure they got delivered rather than the program interrupt. The current code would be wrong in this situation anyway since it would deliver the program interrupt as well as the reset/machine check interrupt. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit b01c8b54a1a271c0fc4243845927fe1d250767a3 Author: Paul Mackerras Date: Wed Jun 29 00:18:26 2011 +0000 powerpc, KVM: Rework KVM checks in first-level interrupt handlers Instead of branching out-of-line with the DO_KVM macro to check if we are in a KVM guest at the time of an interrupt, this moves the KVM check inline in the first-level interrupt handlers. This speeds up the non-KVM case and makes sure that none of the interrupt handlers are missing the check. Because the first-level interrupt handlers are now larger, some things had to be move out of line in exceptions-64s.S. This all necessitated some minor changes to the interrupt entry code in KVM. This also streamlines the book3s_32 KVM test. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit f05ed4d56e9cff1c46d2b3049ba0c72e7e29392f Author: Paul Mackerras Date: Wed Jun 29 00:17:58 2011 +0000 KVM: PPC: Split out code from book3s.c into book3s_pr.c In preparation for adding code to enable KVM to use hypervisor mode on 64-bit Book 3S processors, this splits book3s.c into two files, book3s.c and book3s_pr.c, where book3s_pr.c contains the code that is specific to running the guest in problem state (user mode) and book3s.c contains code which should apply to all Book 3S processors. In doing this, we abstract some details, namely the interrupt offset, updating the interrupt pending flag, and detecting if the guest is in a critical section. These are all things that will be different when we use hypervisor mode. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit c4befc58a0cc5a8cc5b4a7234d67b6b16dec4e70 Author: Paul Mackerras Date: Wed Jun 29 00:17:33 2011 +0000 KVM: PPC: Move fields between struct kvm_vcpu_arch and kvmppc_vcpu_book3s This moves the slb field, which represents the state of the emulated SLB, from the kvmppc_vcpu_book3s struct to the kvm_vcpu_arch, and the hpte_hash_[v]pte[_long] fields from kvm_vcpu_arch to kvmppc_vcpu_book3s. This is in accord with the principle that the kvm_vcpu_arch struct represents the state of the emulated CPU, and the kvmppc_vcpu_book3s struct holds the auxiliary data structures used in the emulation. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 149dbdb1859be46a063a5b1b0aa99a5f999b7632 Author: Paul Mackerras Date: Wed Jun 29 00:16:42 2011 +0000 KVM: PPC: Fix machine checks on 32-bit Book3S Commit 69acc0d3ba ("KVM: PPC: Resolve real-mode handlers through function exports") resulted in vcpu->arch.trampoline_lowmem and vcpu->arch.trampoline_enter ending up with kernel virtual addresses rather than physical addresses. This is OK on 64-bit Book3S machines, which ignore the top 4 bits of the effective address in real mode, but on 32-bit Book3S machines, accessing these addresses in real mode causes machine check interrupts, as the hardware uses the whole effective address as the physical address in real mode. This fixes the problem by using __pa() to convert these addresses to physical addresses. Signed-off-by: Paul Mackerras Signed-off-by: Alexander Graf commit 3c8c652ae4c984a950d0672597085db866509914 Author: Takuya Yoshikawa Date: Fri Jul 1 01:37:24 2011 +0900 KVM: MMU: Introduce is_last_gpte() to clean up walk_addr_generic() Suggested by Ingo and Avi. Cc: Ingo Molnar Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 92c1c1e85bdd72b41f9fd39b9d43d4b3c146d02d Author: Takuya Yoshikawa Date: Fri Jul 1 01:36:07 2011 +0900 KVM: MMU: Rename the walk label in walk_addr_generic() The current name does not explain the meaning well. So give it a better name "retry_walk" to show that we are trying the walk again. This was suggested by Ingo Molnar. Cc: Ingo Molnar Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 134291bf3cb434a9039298ba6b15ef33e65ba542 Author: Takuya Yoshikawa Date: Fri Jul 1 01:34:56 2011 +0900 KVM: MMU: Clean up the error handling of walk_addr_generic() Avoid two step jump to the error handling part. This eliminates the use of the variables present and rsvd_fault. We also use the const type qualifier to show that write/user/fetch_fault do not change in the function. Both of these were suggested by Ingo Molnar. Cc: Ingo Molnar Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit f8f7e5ee1037e347eafff8f526913b92cec54873 Author: Marcelo Tosatti Date: Tue Jun 21 14:00:10 2011 -0300 Revert "KVM: MMU: make kvm_mmu_reset_context() flush the guest TLB" This reverts commit bee931d31e588b8eb86b7edee32fac2d16930cd7. TLB flush should be done lazily during guest entry, in kvm_mmu_load(). Signed-off-by: Marcelo Tosatti commit 1aee47a0276f75a371e13a936a48f64eb5d3ec1b Author: Scott Wood Date: Tue Jun 14 18:35:20 2011 -0500 KVM: PPC: e500: Don't search over the entire TLB0. Only look in the 4 entries that could possibly contain the entry we're looking for. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit dd9ebf1f94354b010f2ac7a98bf69168636cb08e Author: Liu Yu Date: Tue Jun 14 18:35:14 2011 -0500 KVM: PPC: e500: Add shadow PID support Dynamically assign host PIDs to guest PIDs, splitting each guest PID into multiple host (shadow) PIDs based on kernel/user and MSR[IS/DS]. Use both PID0 and PID1 so that the shadow PIDs for the right mode can be selected, that correspond both to guest TID = zero and guest TID = guest PID. This allows us to significantly reduce the frequency of needing to invalidate the entire TLB. When the guest mode or PID changes, we just update the host PID0/PID1. And since the allocation of shadow PIDs is global, multiple guests can share the TLB without conflict. Note that KVM does not yet support the guest setting PID1 or PID2 to a value other than zero. This will need to be fixed for nested KVM to work. Until then, we enforce the requirement for guest PID1/PID2 to stay zero by failing the emulation if the guest tries to set them to something else. Signed-off-by: Liu Yu Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 08b7fa92b9250eab0f493f7721977e781a887b3d Author: Liu Yu Date: Tue Jun 14 18:34:59 2011 -0500 KVM: PPC: e500: Stop keeping shadow TLB Instead of a fully separate set of TLB entries, keep just the pfn and dirty status. Signed-off-by: Liu Yu Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit a4cd8b23ac5786943202c0174c717956947db43c Author: Scott Wood Date: Tue Jun 14 18:34:41 2011 -0500 KVM: PPC: e500: enable magic page This is a shared page used for paravirtualization. It is always present in the guest kernel's effective address space at the address indicated by the hypercall that enables it. The physical address specified by the hypercall is not used, as e500 does not have real mode. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 9973d54eeafcd1c3a2e89f0f59280c4c1e03e73b Author: Scott Wood Date: Tue Jun 14 18:34:39 2011 -0500 KVM: PPC: e500: Support large page mappings of PFNMAP vmas. This allows large pages to be used on guest mappings backed by things like /dev/mem, resulting in a significant speedup when guest memory is mapped this way (it's useful for directly-assigned MMIO, too). This is not a substitute for hugetlbfs integration, but is useful for configurations where devices are directly assigned on chips without an IOMMU -- in these cases, we need guest physical and true physical to match, and be contiguous, so static reservation and mapping via /dev/mem is the most straightforward way to set things up. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 59c1f4e35c3db6c7ea5a04503a43bcbeb98977df Author: Scott Wood Date: Tue Jun 14 18:34:37 2011 -0500 KVM: PPC: e500: Eliminate shadow_pages[], and use pfns instead. This is in line with what other architectures do, and will allow us to map things other than ordinary, unreserved kernel pages -- such as dedicated devices, or large contiguous reserved regions. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 0ef309956cecbaf6d96c31371bf393c296886fa6 Author: Scott Wood Date: Tue Jun 14 18:34:35 2011 -0500 KVM: PPC: e500: don't use MAS0 as intermediate storage. This avoids races. It also means that we use the shadow TLB way, rather than the hardware hint -- if this is a problem, we could do a tlbsx before inserting a TLB0 entry. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 6fc4d1eb911cced6bc103f2b36497397e99e8c43 Author: Scott Wood Date: Tue Jun 14 18:34:34 2011 -0500 KVM: PPC: e500: Disable preloading TLB1 in tlb_load(). Since TLB1 loading doesn't check the shadow TLB before allocating another entry, you can get duplicates. Once shadow PIDs are enabled in a later patch, we won't need to invalidate the TLB on every switch, so this optimization won't be needed anyway. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 4cd35f675ba41a99a477e28a6add4a66833325f2 Author: Scott Wood Date: Tue Jun 14 18:34:31 2011 -0500 KVM: PPC: e500: Save/restore SPE state This is done lazily. The SPE save will be done only if the guest has used SPE since the last preemption or heavyweight exit. Restore will be done only on demand, when enabling MSR_SPE in the shadow MSR, in response to an SPE fault or mtmsr emulation. For SPEFSCR, Linux already switches it on context switch (non-lazily), so the only remaining bit is to save it between qemu and the guest. Signed-off-by: Liu Yu Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit ecee273fc48f7f48f0c2f074335c43aaa790c308 Author: Scott Wood Date: Tue Jun 14 18:34:29 2011 -0500 KVM: PPC: booke: use shadow_msr Keep the guest MSR and the guest-mode true MSR separate, rather than modifying the guest MSR on each guest entry to produce a true MSR. Any bits which should be modified based on guest MSR must be explicitly propagated from vcpu->arch.shared->msr to vcpu->arch.shadow_msr in kvmppc_set_msr(). While we're modifying the guest entry code, reorder a few instructions to bury some load latencies. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit c51584d52e3878aa9b2bb98cdfb87173e7acf560 Author: Scott Wood Date: Tue Jun 14 18:34:27 2011 -0500 powerpc/e500: SPE register saving: take arbitrary struct offset Previously, these macros hardcoded THREAD_EVR0 as the base of the save area, relative to the base register passed. This base offset is now passed as a separate macro parameter, allowing reuse with other SPE save areas, such as used by KVM. Acked-by: Kumar Gala Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 685659ee70db0bac47ffd619c726cf600e504fd7 Author: yu liu Date: Tue Jun 14 18:34:25 2011 -0500 powerpc/e500: Save SPEFCSR in flush_spe_to_thread() giveup_spe() saves the SPE state which is protected by MSR[SPE]. However, modifying SPEFSCR does not trap when MSR[SPE]=0. And since SPEFSCR is already saved/restored in _switch(), not all the callers want to save SPEFSCR again. Thus, saving SPEFSCR should not belong to giveup_spe(). This patch moves SPEFSCR saving to flush_spe_to_thread(), and cleans up the caller that needs to save SPEFSCR accordingly. Signed-off-by: Liu Yu Acked-by: Kumar Gala Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit a22a2daccfa3ade5cdd9ef1e8a05cf1e6ffca42b Author: Alexander Graf Date: Tue Jun 7 20:45:34 2011 +0200 KVM: PPC: Resolve real-mode handlers through function exports Up until now, Book3S KVM had variables stored in the kernel that a kernel module or the kvm code in the kernel could read from to figure out where some real mode helper functions are located. This is all unnecessary. The high bits of the EA get ignore in real mode, so we can just use the pointer as is. Also, it's a lot easier on relocations when we use the normal way of resolving the address to a function, instead of jumping through hoops. This patch fixes compilation with CONFIG_RELOCATABLE=y. Signed-off-by: Alexander Graf commit 24294b9a3fbe00289c039fb3e80087be66b8c415 Author: Stuart Yoder Date: Tue May 17 18:26:00 2011 -0500 KVM: PPC: fix partial application of "exit timing in ticks" When http://www.spinics.net/lists/kvm-ppc/msg02664.html was applied to produce commit b51e7aa7ed6d8d134d02df78300ab0f91cfff4d2, the removal of the conversion in add_exit_timing was left out. Signed-off-by: Stuart Yoder Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 45bd07b9d5202c910b31c92bd15572b560198c26 Author: Avi Kivity Date: Sun Jun 12 18:14:08 2011 +0300 KVM: MMU: make kvm_mmu_reset_context() flush the guest TLB kvm_set_cr0() and kvm_set_cr4(), and possible other functions, assume that kvm_mmu_reset_context() flushes the guest TLB. However, it does not. Fix by flushing the tlb (and syncing the new root as well). Signed-off-by: Avi Kivity commit 411c588dfb863feee78b721d5e7c86ac38921c49 Author: Avi Kivity Date: Mon Jun 6 16:11:54 2011 +0300 KVM: MMU: Adjust shadow paging to work when SMEP=1 and CR0.WP=0 When CR0.WP=0, we sometimes map user pages as kernel pages (to allow the kernel to write to them). Unfortunately this also allows the kernel to fetch from these pages, even if CR4.SMEP is set. Adjust for this by also setting NX on the spte in these circumstances. Signed-off-by: Avi Kivity commit a01c8f9b4e266df1d7166d23216f2060648f862d Author: Yang, Wei Date: Tue Jun 14 15:19:06 2011 +0800 KVM: Enable ERMS feature support for KVM This patch exposes ERMS feature to KVM guests. The REP MOVSB/STOSB instruction can enhance fast strings attempts to move as much of the data with larger size load/stores as possible. Signed-off-by: Yang, Wei Signed-off-by: Avi Kivity commit 176f61da82435eae09cc96f70b530d1ba0746b8b Author: Yang, Wei Date: Tue Jun 14 20:10:19 2011 +0800 KVM: Expose RDWRGSFS bit to KVM guests This patch exposes RDWRGSFS bit to KVM guests. Signed-off-by: Yang, Wei Signed-off-by: Avi Kivity commit 74dc2b4ffe3af1eac367be0178f88487cb9b240a Author: Yang, Wei Date: Tue Jun 14 20:10:18 2011 +0800 KVM: Add RDWRGSFS support when setting CR4 This patch adds RDWRGSFS support when setting CR4. Signed-off-by: Yang, Wei Signed-off-by: Avi Kivity commit d9c3476d8a99455cd3af1bd773acd77aa947a934 Author: Yang, Wei Date: Tue Jun 14 20:10:17 2011 +0800 KVM: Remove RDWRGSFS bit from CR4_RESERVED_BITS This patch removes RDWRGSFS bit from CR4_RESERVED_BITS. Signed-off-by: Yang, Wei Signed-off-by: Avi Kivity commit 4a00efdf0c7c93dc6f6b3ce7e2d6bd4cd1ac1651 Author: Yang, Wei Y Date: Mon Jun 13 21:52:33 2011 +0800 KVM: Enable DRNG feature support for KVM This patch exposes DRNG feature to KVM guests. The RDRAND instruction can provide software with sequences of random numbers generated from white noise. Signed-off-by: Yang, Wei Signed-off-by: Avi Kivity commit 02668b061db1b9f7f18872e594ac68e237db0bed Author: Andre Przywara Date: Fri Jun 10 11:35:30 2011 +0200 KVM: fix XSAVE bit scanning (now properly) commit 123108f1c1aafd51d6a5c79cc04d7999dd88a930 tried to fix KVMs XSAVE valid feature scanning, but it was wrong. It was not considering the sparse nature of this bitfield, instead reading values from uninitialized members of the entries array. This patch now separates subleaf indicies from KVM's array indicies and fills the entry before querying it's value. This fixes AVX support in KVM guests. Signed-off-by: Andre Przywara Signed-off-by: Avi Kivity commit 58f0964ee445d6703bf2bfd5170e75fb0920ad8f Author: Jan Kiszka Date: Sat Jun 11 12:24:24 2011 +0200 KVM: Fix KVM_ASSIGN_SET_MSIX_ENTRY documentation The documented behavior did not match the implemented one (which also never changed). Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity commit 9f3191aec595ef9f3c80bc96664fd7aef57ef5be Author: Jan Kiszka Date: Sat Jun 11 12:23:55 2011 +0200 KVM: Fix off-by-one in overflow check of KVM_ASSIGN_SET_MSIX_NR KVM_MAX_MSIX_PER_DEV implies that up to that many MSI-X entries can be requested. But the kernel so far rejected already the upper limit. Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity commit 1dda606c5f94b14a8f36c220d1d8844bab68a720 Author: Alexander Graf Date: Wed Jun 8 02:45:37 2011 +0200 KVM: Add compat ioctl for KVM_SET_SIGNAL_MASK KVM has an ioctl to define which signal mask should be used while running inside VCPU_RUN. At least for big endian systems, this mask is different on 32-bit and 64-bit systems (though the size is identical). Add a compat wrapper that converts the mask to whatever the kernel accepts, allowing 32-bit kvm user space to set signal masks. This patch fixes qemu with --enable-io-thread on ppc64 hosts when running 32-bit user land. Signed-off-by: Alexander Graf Signed-off-by: Avi Kivity commit 91e3d71db29d9b3b67b64e2a08e724a7ff538b4c Author: Jan Kiszka Date: Fri Jun 3 08:51:05 2011 +0200 KVM: Clarify KVM_ASSIGN_PCI_DEVICE documentation Neither host_irq nor the guest_msi struct are used anymore today. Tag the former, drop the latter to avoid confusion. Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity commit e57d4a356ad3ac46881399c424cc6cf6dd16359d Author: Yang, Wei Y Date: Fri Jun 3 11:14:16 2011 +0800 KVM: Add instruction fetch checking when walking guest page table This patch adds instruction fetch checking when walking guest page table, to implement SMEP when emulating instead of executing natively. Signed-off-by: Yang, Wei Signed-off-by: Shan, Haitao Signed-off-by: Li, Xin Signed-off-by: Avi Kivity commit 611c120f7486a19e7df2225f875a52ef0b599ae8 Author: Yang, Wei Y Date: Fri Jun 3 11:14:03 2011 +0800 KVM: Mask function7 ebx against host capability word9 This patch masks CPUID leaf 7 ebx against host capability word9. Signed-off-by: Yang, Wei Signed-off-by: Shan, Haitao Signed-off-by: Li, Xin Signed-off-by: Avi Kivity commit c68b734fba402b9bfdd49e23b776c42dbeaf1f5b Author: Yang, Wei Y Date: Fri Jun 3 11:13:42 2011 +0800 KVM: Add SMEP support when setting CR4 This patch adds SMEP handling when setting CR4. Signed-off-by: Yang, Wei Signed-off-by: Shan, Haitao Signed-off-by: Li, Xin Signed-off-by: Avi Kivity commit 8d9c975fc5b825cb76953a1b45a84195ffc6f4ab Author: Yang, Wei Y Date: Fri Jun 3 11:13:35 2011 +0800 KVM: Remove SMEP bit from CR4_RESERVED_BITS This patch removes SMEP bit from CR4_RESERVED_BITS. Signed-off-by: Yang, Wei Signed-off-by: Shan, Haitao Signed-off-by: Li, Xin Signed-off-by: Avi Kivity commit 509c75ea198fe524adaf90ca1021487b733447ce Author: Nadav Har'El Date: Thu Jun 2 11:54:52 2011 +0300 KVM: nVMX: Fix bug preventing more than two levels of nesting The nested VMX feature is supposed to fully emulate VMX for the guest. This (theoretically) not only allows it to run its own guests, but also also to further emulate VMX for its own guests, and allow arbitrarily deep nesting. This patch fixes a bug (discovered by Kevin Tian) in handling a VMLAUNCH by L2, which prevented deeper nesting. Deeper nesting now works (I only actually tested L3), but is currently *absurdly* slow, to the point of being unusable. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 7f4382e8fd8c87bcb7122a2f63c03e8713f594a0 Author: Jan Kiszka Date: Thu Jun 2 16:16:20 2011 +0200 KVM: Fixup documentation section numbering Signed-off-by: Jan Kiszka Signed-off-by: Marcelo Tosatti commit 9dac77fa4011bdb4b541a8db087eac96a602faec Author: Avi Kivity Date: Wed Jun 1 15:34:25 2011 +0300 KVM: x86 emulator: fold decode_cache into x86_emulate_ctxt This saves a lot of pointless casts x86_emulate_ctxt and decode_cache. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 36dd9bb5ce32bc39e25a5fcc61415f13e3ed5d17 Author: Avi Kivity Date: Wed Jun 1 15:34:24 2011 +0300 KVM: x86 emulator: rename decode_cache::eip to _eip The name eip conflicts with a field of the same name in x86_emulate_ctxt, which we plan to fold decode_cache into. The name _eip is unfortunate, but what's really needed is a refactoring here, not a better name. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 2e4ce7f574369f374ad537a180b4870e2098cf0e Author: Jan Kiszka Date: Wed Jun 1 12:57:30 2011 +0200 KVM: VMX: Silence warning on 32-bit hosts a is unused now on CONFIG_X86_32. Signed-off-by: Jan Kiszka Signed-off-by: Marcelo Tosatti commit f411e6cdc275e63ead2ffb427d0497daae6f6069 Author: Takuya Yoshikawa Date: Sun May 29 22:05:15 2011 +0900 KVM: x86 emulator: Use opcode::execute for CLI/STI(FA/FB) Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit d06e03adcb30f9e9fff4df1d80a3087f54a62d9a Author: Takuya Yoshikawa Date: Sun May 29 22:04:08 2011 +0900 KVM: x86 emulator: Use opcode::execute for LOOP/JCXZ LOOP/LOOPcc : E0-E2 JCXZ/JECXZ/JRCXZ : E3 Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 5c5df76b8b32055956ee4cca338d29046016b13e Author: Takuya Yoshikawa Date: Sun May 29 22:02:55 2011 +0900 KVM: x86 emulator: Clean up INT n/INTO/INT 3(CC/CD/CE) Call emulate_int() directly to avoid spaghetti goto's. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 1bd5f469b2d54330ba41d9c4b857dc5051e8dcf7 Author: Takuya Yoshikawa Date: Sun May 29 22:01:33 2011 +0900 KVM: x86 emulator: Use opcode::execute for MOV(8C/8E) Different functions for those which take segment register operands. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit ebda02c2a5a6001c787f311b4d5a0dc827ce2d92 Author: Takuya Yoshikawa Date: Sun May 29 22:00:22 2011 +0900 KVM: x86 emulator: Use opcode::execute for RET(C3) Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit e4f973ae913028bac8c07187e0fd49c1dc08ce58 Author: Takuya Yoshikawa Date: Sun May 29 21:59:09 2011 +0900 KVM: x86 emulator: Use opcode::execute for XCHG(86/87) In addition, replace one "goto xchg" with an em_xchg() call. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 9f21ca599cd609502de8a56c1d4c4688d40abb2d Author: Takuya Yoshikawa Date: Sun May 29 21:57:53 2011 +0900 KVM: x86 emulator: Use opcode::execute for TEST(84/85, A8/A9) Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit db5b0762f3cab58398f16379ab37ef66ef9ba497 Author: Takuya Yoshikawa Date: Sun May 29 21:56:26 2011 +0900 KVM: x86 emulator: Use opcode::execute for some instructions Move the following functions to the opcode tables: RET (Far return) : CB IRET : CF JMP (Jump far) : EA SYSCALL : 0F 05 CLTS : 0F 06 SYSENTER : 0F 34 SYSEXIT : 0F 35 Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit e01991e71a179ddab494c8e02100ad73bc0010c4 Author: Takuya Yoshikawa Date: Sun May 29 21:55:10 2011 +0900 KVM: x86 emulator: Rename emulate_xxx() to em_xxx() The next patch will change these to be called by opcode::execute. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 9d74191ab1ea857d1cc27e439316eebf8ae46d19 Author: Takuya Yoshikawa Date: Sun May 29 21:53:48 2011 +0900 KVM: x86 emulator: Use the pointers ctxt and c consistently We should use the local variables ctxt and c when the emulate_ctxt and decode appears many times. At least, we need to be consistent about how we use these in a function. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 55399a02e90fdc6cd45165b2df5dd97b7c3f018f Author: Sasha Levin Date: Sat May 28 14:12:30 2011 +0300 KVM: Document KVM_IOEVENTFD Document KVM_IOEVENTFD that can be used to receive notifications of PIO/MMIO events without triggering an exit. Signed-off-by: Sasha Levin Signed-off-by: Marcelo Tosatti commit 823e396558e509b7c3225cd76806f3d6643ff5f8 Author: Nadav Har'El Date: Wed May 25 23:17:11 2011 +0300 KVM: nVMX: Documentation This patch includes a brief introduction to the nested vmx feature in the Documentation/kvm directory. The document also includes a copy of the vmcs12 structure, as requested by Avi Kivity. [marcelo: move to Documentation/virtual/kvm] Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 022ae537b23cb14a391565e9ad9e9945f4b17138 Author: Russell King Date: Fri Jul 8 21:26:59 2011 +0100 ARM: dma: replace ISA_DMA_THRESHOLD with a variable ISA_DMA_THRESHOLD has been unused by non-arch code, so lets now get rid of it from ARM by replacing it with arm_dma_zone_mask. Move dma_supported() and dma_set_mask() out of line, and have dma_supported() check this new variable instead. Signed-off-by: Russell King commit f3393b62f157cc87f8d78247e97b87778dc077b8 Author: Kevin Hilman Date: Tue Jul 12 11:17:09 2011 +0200 PM / Runtime: Add new helper function: pm_runtime_status_suspended() This boolean function simply returns whether or not the runtime status of the device is 'suspended'. Unlike pm_runtime_suspended(), this function returns the runtime status whether or not runtime PM for the device has been disabled or not. Also add entry to Documentation/power/runtime.txt Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit 1c72f9eaa53e920f142f4c1d20b4fc82b1a10ed5 Author: Wolfram Sang Date: Mon Mar 28 16:51:35 2011 +0200 arm: lpc32xx: add rtc-device Signed-off-by: Wolfram Sang Tested-by: Kevin Wells commit 7db2b37751caa2f17b026223a382eca07c90c575 Author: Wolfram Sang Date: Mon Mar 21 16:14:43 2011 +0100 arm: lpc32xx: add tsc-device Fix the clock name, too. Signed-off-by: Wolfram Sang Tested-by: Kevin Wells commit 2844d8490523c5768cc37f21e065c76c45232724 Author: Nadav Har'El Date: Wed May 25 23:16:40 2011 +0300 KVM: nVMX: Miscellenous small corrections Small corrections of KVM (spelling, etc.) not directly related to nested VMX. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 7b8050f570a03718d21fc8662c54586192ea2dac Author: Nadav Har'El Date: Wed May 25 23:16:10 2011 +0300 KVM: nVMX: Add VMX to list of supported cpuid features If the "nested" module option is enabled, add the "VMX" CPU feature to the list of CPU features KVM advertises with the KVM_GET_SUPPORTED_CPUID ioctl. Qemu uses this ioctl, and intersects KVM's list with its own list of desired cpu features (depending on the -cpu option given to qemu) to determine the final list of features presented to the guest. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 7991825b8558a719eb7cfb93c4458d767ae1f2eb Author: Nadav Har'El Date: Wed May 25 23:15:39 2011 +0300 KVM: nVMX: Additional TSC-offset handling In the unlikely case that L1 does not capture MSR_IA32_TSC, L0 needs to emulate this MSR write by L2 by modifying vmcs02.tsc_offset. We also need to set vmcs12.tsc_offset, for this change to survive the next nested entry (see prepare_vmcs02()). Additionally, we also need to modify vmx_adjust_tsc_offset: The semantics of this function is that the TSC of all guests on this vcpu, L1 and possibly several L2s, need to be adjusted. To do this, we need to adjust vmcs01's tsc_offset (this offset will also apply to each L2s we enter). We can't set vmcs01 now, so we have to remember this adjustment and apply it when we later exit to L1. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 36cf24e01e9eba8c9ea201202762081ced2f8cdf Author: Nadav Har'El Date: Wed May 25 23:15:08 2011 +0300 KVM: nVMX: Further fixes for lazy FPU loading KVM's "Lazy FPU loading" means that sometimes L0 needs to set CR0.TS, even if a guest didn't set it. Moreover, L0 must also trap CR0.TS changes and NM exceptions, even if we have a guest hypervisor (L1) who didn't want these traps. And of course, conversely: If L1 wanted to trap these events, we must let it, even if L0 is not interested in them. This patch fixes some existing KVM code (in update_exception_bitmap(), vmx_fpu_activate(), vmx_fpu_deactivate()) to do the correct merging of L0's and L1's needs. Note that handle_cr() was already fixed in the above patch, and that new code in introduced in previous patches already handles CR0 correctly (see prepare_vmcs02(), prepare_vmcs12(), and nested_vmx_vmexit()). Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit eeadf9e7558ce2c34c0d91985d26047a6e2245e7 Author: Nadav Har'El Date: Wed May 25 23:14:38 2011 +0300 KVM: nVMX: Handling of CR0 and CR4 modifying instructions When L2 tries to modify CR0 or CR4 (with mov or clts), and modifies a bit which L1 asked to shadow (via CR[04]_GUEST_HOST_MASK), we already do the right thing: we let L1 handle the trap (see nested_vmx_exit_handled_cr() in a previous patch). When L2 modifies bits that L1 doesn't care about, we let it think (via CR[04]_READ_SHADOW) that it did these modifications, while only changing (in GUEST_CR[04]) the bits that L0 doesn't shadow. This is needed for corect handling of CR0.TS for lazy FPU loading: L0 may want to leave TS on, while pretending to allow the guest to change it. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 66c78ae40cd0a7258d01ef433ede74e33e4adbbe Author: Nadav Har'El Date: Wed May 25 23:14:07 2011 +0300 KVM: nVMX: Correct handling of idt vectoring info This patch adds correct handling of IDT_VECTORING_INFO_FIELD for the nested case. When a guest exits while delivering an interrupt or exception, we get this information in IDT_VECTORING_INFO_FIELD in the VMCS. When L2 exits to L1, there's nothing we need to do, because L1 will see this field in vmcs12, and handle it itself. However, when L2 exits and L0 handles the exit itself and plans to return to L2, L0 must inject this event to L2. In the normal non-nested case, the idt_vectoring_info case is discovered after the exit, and the decision to inject (though not the injection itself) is made at that point. However, in the nested case a decision of whether to return to L2 or L1 also happens during the injection phase (see the previous patches), so in the nested case we can only decide what to do about the idt_vectoring_info right after the injection, i.e., in the beginning of vmx_vcpu_run, which is the first time we know for sure if we're staying in L2. Therefore, when we exit L2 (is_guest_mode(vcpu)), we disable the regular vmx_complete_interrupts() code which queues the idt_vectoring_info for injection on next entry - because such injection would not be appropriate if we will decide to exit to L1. Rather, we just save the idt_vectoring_info and related fields in vmcs12 (which is a convenient place to save these fields). On the next entry in vmx_vcpu_run (*after* the injection phase, potentially exiting to L1 to inject an event requested by user space), if we find ourselves in L1 we don't need to do anything with those values we saved (as explained above). But if we find that we're in L2, or rather *still* at L2 (it's not nested_run_pending, meaning that this is the first round of L2 running after L1 having just launched it), we need to inject the event saved in those fields - by writing the appropriate VMCS fields. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 0b6ac343fc8e120b7d32fd2d51a8f81354086fa0 Author: Nadav Har'El Date: Wed May 25 23:13:36 2011 +0300 KVM: nVMX: Correct handling of exception injection Similar to the previous patch, but concerning injection of exceptions rather than external interrupts. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit b6f1250edb4462e38d72c7f6cce35911df21d31b Author: Nadav Har'El Date: Wed May 25 23:13:06 2011 +0300 KVM: nVMX: Correct handling of interrupt injection The code in this patch correctly emulates external-interrupt injection while a nested guest L2 is running. Because of this code's relative un-obviousness, I include here a longer-than- usual justification for what it does - much longer than the code itself ;-) To understand how to correctly emulate interrupt injection while L2 is running, let's look first at what we need to emulate: How would things look like if the extra L0 hypervisor layer is removed, and instead of L0 injecting an interrupt, we had hardware delivering an interrupt? Now we have L1 running on bare metal with a guest L2, and the hardware generates an interrupt. Assuming that L1 set PIN_BASED_EXT_INTR_MASK to 1, and VM_EXIT_ACK_INTR_ON_EXIT to 0 (we'll revisit these assumptions below), what happens now is this: The processor exits from L2 to L1, with an external- interrupt exit reason but without an interrupt vector. L1 runs, with interrupts disabled, and it doesn't yet know what the interrupt was. Soon after, it enables interrupts and only at that moment, it gets the interrupt from the processor. when L1 is KVM, Linux handles this interrupt. Now we need exactly the same thing to happen when that L1->L2 system runs on top of L0, instead of real hardware. This is how we do this: When L0 wants to inject an interrupt, it needs to exit from L2 to L1, with external-interrupt exit reason (with an invalid interrupt vector), and run L1. Just like in the bare metal case, it likely can't deliver the interrupt to L1 now because L1 is running with interrupts disabled, in which case it turns on the interrupt window when running L1 after the exit. L1 will soon enable interrupts, and at that point L0 will gain control again and inject the interrupt to L1. Finally, there is an extra complication in the code: when nested_run_pending, we cannot return to L1 now, and must launch L2. We need to remember the interrupt we wanted to inject (and not clear it now), and do it on the next exit. The above explanation shows that the relative strangeness of the nested interrupt injection code in this patch, and the extra interrupt-window exit incurred, are in fact necessary for accurate emulation, and are not just an unoptimized implementation. Let's revisit now the two assumptions made above: If L1 turns off PIN_BASED_EXT_INTR_MASK (no hypervisor that I know does, by the way), things are simple: L0 may inject the interrupt directly to the L2 guest - using the normal code path that injects to any guest. We support this case in the code below. If L1 turns on VM_EXIT_ACK_INTR_ON_EXIT, things look very different from the description above: L1 expects to see an exit from L2 with the interrupt vector already filled in the exit information, and does not expect to be interrupted again with this interrupt. The current code does not (yet) support this case, so we do not allow the VM_EXIT_ACK_INTR_ON_EXIT exit-control to be turned on by L1. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 644d711aa0e16111d8aba6d289caebec013e26ea Author: Nadav Har'El Date: Wed May 25 23:12:35 2011 +0300 KVM: nVMX: Deciding if L0 or L1 should handle an L2 exit This patch contains the logic of whether an L2 exit should be handled by L0 and then L2 should be resumed, or whether L1 should be run to handle this exit (using the nested_vmx_vmexit() function of the previous patch). The basic idea is to let L1 handle the exit only if it actually asked to trap this sort of event. For example, when L2 exits on a change to CR0, we check L1's CR0_GUEST_HOST_MASK to see if L1 expressed interest in any bit which changed; If it did, we exit to L1. But if it didn't it means that it is we (L0) that wished to trap this event, so we handle it ourselves. The next two patches add additional logic of what to do when an interrupt or exception is injected: Does L0 need to do it, should we exit to L1 to do it, or should we resume L2 and keep the exception to be injected later. We keep a new flag, "nested_run_pending", which can override the decision of which should run next, L1 or L2. nested_run_pending=1 means that we *must* run L2 next, not L1. This is necessary in particular when L1 did a VMLAUNCH of L2 and therefore expects L2 to be run (and perhaps be injected with an event it specified, etc.). Nested_run_pending is especially intended to avoid switching to L1 in the injection decision-point described above. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 7c1779384a2b2479722e90778721c40811e1b7a7 Author: Nadav Har'El Date: Wed May 25 23:12:04 2011 +0300 KVM: nVMX: vmcs12 checks on nested entry This patch adds a bunch of tests of the validity of the vmcs12 fields, according to what the VMX spec and our implementation allows. If fields we cannot (or don't want to) honor are discovered, an entry failure is emulated. According to the spec, there are two types of entry failures: If the problem was in vmcs12's host state or control fields, the VMLAUNCH instruction simply fails. But a problem is found in the guest state, the behavior is more similar to that of an exit. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 4704d0befb0721274bda863192c4782febb6b94c Author: Nadav Har'El Date: Wed May 25 23:11:34 2011 +0300 KVM: nVMX: Exiting from L2 to L1 This patch implements nested_vmx_vmexit(), called when the nested L2 guest exits and we want to run its L1 parent and let it handle this exit. Note that this will not necessarily be called on every L2 exit. L0 may decide to handle a particular exit on its own, without L1's involvement; In that case, L0 will handle the exit, and resume running L2, without running L1 and without calling nested_vmx_vmexit(). The logic for deciding whether to handle a particular exit in L1 or in L0, i.e., whether to call nested_vmx_vmexit(), will appear in a separate patch below. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 99e65e805dea4df061aa4038211112aa96416412 Author: Nadav Har'El Date: Wed May 25 23:11:03 2011 +0300 KVM: nVMX: No need for handle_vmx_insn function any more Before nested VMX support, the exit handler for a guest executing a VMX instruction (vmclear, vmlaunch, vmptrld, vmptrst, vmread, vmread, vmresume, vmwrite, vmon, vmoff), was handle_vmx_insn(). This handler simply threw a #UD exception. Now that all these exit reasons are properly handled (and emulate the respective VMX instruction), nothing calls this dummy handler and it can be removed. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit cd232ad02f00286c3f8c9df30948da17212ef905 Author: Nadav Har'El Date: Wed May 25 23:10:33 2011 +0300 KVM: nVMX: Implement VMLAUNCH and VMRESUME Implement the VMLAUNCH and VMRESUME instructions, allowing a guest hypervisor to run its own guests. This patch does not include some of the necessary validity checks on vmcs12 fields before the entry. These will appear in a separate patch below. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit fe3ef05c7572d68721c1ddd4d36009611f565ba2 Author: Nadav Har'El Date: Wed May 25 23:10:02 2011 +0300 KVM: nVMX: Prepare vmcs02 from vmcs01 and vmcs12 This patch contains code to prepare the VMCS which can be used to actually run the L2 guest, vmcs02. prepare_vmcs02 appropriately merges the information in vmcs12 (the vmcs that L1 built for L2) and in vmcs01 (our desires for our own guests). Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit bf8179a011d40e7322d34440039b5e86a0d03aed Author: Nadav Har'El Date: Wed May 25 23:09:31 2011 +0300 KVM: nVMX: Move control field setup to functions Move some of the control field setup to common functions. These functions will also be needed for running L2 guests - L0's desires (expressed in these functions) will be appropriately merged with L1's desires. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit a3a8ff8ebf87cbd828f54276d902c3c8ee0c4781 Author: Nadav Har'El Date: Wed May 25 23:09:01 2011 +0300 KVM: nVMX: Move host-state field setup to a function Move the setting of constant host-state fields (fields that do not change throughout the life of the guest) from vmx_vcpu_setup to a new common function vmx_set_constant_host_state(). This function will also be used to set the host state when running L2 guests. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 49f705c5324aa13bb5623b392c23996e23eabc23 Author: Nadav Har'El Date: Wed May 25 23:08:30 2011 +0300 KVM: nVMX: Implement VMREAD and VMWRITE Implement the VMREAD and VMWRITE instructions. With these instructions, L1 can read and write to the VMCS it is holding. The values are read or written to the fields of the vmcs12 structure introduced in a previous patch. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 6a4d7550601b5b17df227959bdbec208384f729c Author: Nadav Har'El Date: Wed May 25 23:08:00 2011 +0300 KVM: nVMX: Implement VMPTRST This patch implements the VMPTRST instruction. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 63846663eac783eabbc1ab7c325e41a3627d986f Author: Nadav Har'El Date: Wed May 25 23:07:29 2011 +0300 KVM: nVMX: Implement VMPTRLD This patch implements the VMPTRLD instruction. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 27d6c865211662721e6cf305706e4a3da35f12b4 Author: Nadav Har'El Date: Wed May 25 23:06:59 2011 +0300 KVM: nVMX: Implement VMCLEAR This patch implements the VMCLEAR instruction. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 0140caea3b9972f826416a796271f17b42cbe827 Author: Nadav Har'El Date: Wed May 25 23:06:28 2011 +0300 KVM: nVMX: Success/failure of VMX instructions. VMX instructions specify success or failure by setting certain RFLAGS bits. This patch contains common functions to do this, and they will be used in the following patches which emulate the various VMX instructions. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 22bd035868b06a614debf7352c09fb3efdc7c269 Author: Nadav Har'El Date: Wed May 25 23:05:57 2011 +0300 KVM: nVMX: Add VMCS fields to the vmcs12 In this patch we add to vmcs12 (the VMCS that L1 keeps for L2) all the standard VMCS fields. Later patches will enable L1 to read and write these fields using VMREAD/ VMWRITE, and they will be used during a VMLAUNCH/VMRESUME in preparing vmcs02, a hardware VMCS for running L2. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit ff2f6fe9618806d365f76a6f11a4f37881919412 Author: Nadav Har'El Date: Wed May 25 23:05:27 2011 +0300 KVM: nVMX: Introduce vmcs02: VMCS used to run L2 We saw in a previous patch that L1 controls its L2 guest with a vcms12. L0 needs to create a real VMCS for running L2. We call that "vmcs02". A later patch will contain the code, prepare_vmcs02(), for filling the vmcs02 fields. This patch only contains code for allocating vmcs02. In this version, prepare_vmcs02() sets *all* of vmcs02's fields each time we enter from L1 to L2, so keeping just one vmcs02 for the vcpu is enough: It can be reused even when L1 runs multiple L2 guests. However, in future versions we'll probably want to add an optimization where vmcs02 fields that rarely change will not be set each time. For that, we may want to keep around several vmcs02s of L2 guests that have recently run, so that potentially we could run these L2s again more quickly because less vmwrites to vmcs02 will be needed. This patch adds to each vcpu a vmcs02 pool, vmx->nested.vmcs02_pool, which remembers the vmcs02s last used to run up to VMCS02_POOL_SIZE L2s. As explained above, in the current version we choose VMCS02_POOL_SIZE=1, I.e., one vmcs02 is allocated (and loaded onto the processor), and it is reused to enter any L2 guest. In the future, when prepare_vmcs02() is optimized not to set all fields every time, VMCS02_POOL_SIZE should be increased. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 064aea774768749c6fd308b37818ea3a9600583d Author: Nadav Har'El Date: Wed May 25 23:04:56 2011 +0300 KVM: nVMX: Decoding memory operands of VMX instructions This patch includes a utility function for decoding pointer operands of VMX instructions issued by L1 (a guest hypervisor) Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit b87a51ae2893a5907f796eadb4beb60747a69209 Author: Nadav Har'El Date: Wed May 25 23:04:25 2011 +0300 KVM: nVMX: Implement reading and writing of VMX MSRs When the guest can use VMX instructions (when the "nested" module option is on), it should also be able to read and write VMX MSRs, e.g., to query about VMX capabilities. This patch adds this support. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit a9d30f33dd21b67b2f4db09f3dfe63a7c390d1b3 Author: Nadav Har'El Date: Wed May 25 23:03:55 2011 +0300 KVM: nVMX: Introduce vmcs12: a VMCS structure for L1 An implementation of VMX needs to define a VMCS structure. This structure is kept in guest memory, but is opaque to the guest (who can only read or write it with VMX instructions). This patch starts to define the VMCS structure which our nested VMX implementation will present to L1. We call it "vmcs12", as it is the VMCS that L1 keeps for its L2 guest. We will add more content to this structure in later patches. This patch also adds the notion (as required by the VMX spec) of L1's "current VMCS", and finally includes utility functions for mapping the guest-allocated VMCSs in host memory. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 5e1746d6205d1efa3193cc0c67aa2d15e54799bd Author: Nadav Har'El Date: Wed May 25 23:03:24 2011 +0300 KVM: nVMX: Allow setting the VMXE bit in CR4 This patch allows the guest to enable the VMXE bit in CR4, which is a prerequisite to running VMXON. Whether to allow setting the VMXE bit now depends on the architecture (svm or vmx), so its checking has moved to kvm_x86_ops->set_cr4(). This function now returns an int: If kvm_x86_ops->set_cr4() returns 1, __kvm_set_cr4() will also return 1, and this will cause kvm_set_cr4() will throw a #GP. Turning on the VMXE bit is allowed only when the nested VMX feature is enabled, and turning it off is forbidden after a vmxon. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit ec378aeef9dfc7c4ba72e9bd6cd4bd6f7d5fd0cc Author: Nadav Har'El Date: Wed May 25 23:02:54 2011 +0300 KVM: nVMX: Implement VMXON and VMXOFF This patch allows a guest to use the VMXON and VMXOFF instructions, and emulates them accordingly. Basically this amounts to checking some prerequisites, and then remembering whether the guest has enabled or disabled VMX operation. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit 801d342432190947928e18f893f073fd87cd8bdf Author: Nadav Har'El Date: Wed May 25 23:02:23 2011 +0300 KVM: nVMX: Add "nested" module option to kvm_intel This patch adds to kvm_intel a module option "nested". This option controls whether the guest can use VMX instructions, i.e., whether we allow nested virtualization. A similar, but separate, option already exists for the SVM module. This option currently defaults to 0, meaning that nested VMX must be explicitly enabled by giving nested=1. When nested VMX matures, the default should probably be changed to enable nested VMX by default - just like nested SVM is currently enabled by default. Signed-off-by: Nadav Har'El Signed-off-by: Marcelo Tosatti commit b5c9ff731f3cee5a2f2d7154f48f8006b48eb66d Author: Takuya Yoshikawa Date: Wed May 25 11:09:38 2011 +0900 KVM: x86 emulator: Avoid clearing the whole decode_cache During tracing the emulator, we noticed that init_emulate_ctxt() sometimes took a bit longer time than we expected. This patch is for mitigating the problem by some degree. By looking into the function, we soon notice that it clears the whole decode_cache whose size is about 2.5K bytes now. Furthermore, most of the bytes are taken for the two read_cache arrays, which are used only by a few instructions. Considering the fact that we are not assuming the cache arrays have been cleared when we store actual data, we do not need to clear the arrays: 2K bytes elimination. In addition, we can avoid clearing the fetch_cache and regs arrays. This patch changes the initialization not to clear the arrays. On our 64-bit host, init_emulate_ctxt() becomes 0.3 to 0.5us faster with this patch applied. Signed-off-by: Takuya Yoshikawa Cc: Gleb Natapov Signed-off-by: Avi Kivity commit adf52235b4082e67f31bf1fba36f1dce312633d6 Author: Takuya Yoshikawa Date: Wed May 25 11:06:16 2011 +0900 KVM: x86 emulator: Clean up init_emulate_ctxt() Use a local pointer to the emulate_ctxt for simplicity. Then, arrange the hard-to-read mode selection lines neatly. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit d780592b99d7d8a5ff905f6bacca519d4a342c76 Author: Jan Kiszka Date: Mon May 23 10:33:05 2011 +0200 KVM: Clean up error handling during VCPU creation So far kvm_arch_vcpu_setup is responsible for freeing the vcpu struct if it fails. Move this confusing resonsibility back into the hands of kvm_vm_ioctl_create_vcpu. Only kvm_arch_vcpu_setup of x86 is affected, all other archs cannot fail. Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity commit d462b8192368f10e979250377930f9695a4039d0 Author: Nadav Har'El Date: Tue May 24 15:26:10 2011 +0300 KVM: VMX: Keep list of loaded VMCSs, instead of vcpus In VMX, before we bring down a CPU we must VMCLEAR all VMCSs loaded on it because (at least in theory) the processor might not have written all of its content back to memory. Since a patch from June 26, 2008, this is done using a per-cpu "vcpus_on_cpu" linked list of vcpus loaded on each CPU. The problem is that with nested VMX, we no longer have the concept of a vcpu being loaded on a cpu: A vcpu has multiple VMCSs (one for L1, a pool for L2s), and each of those may be have been last loaded on a different cpu. So instead of linking the vcpus, we link the VMCSs, using a new structure loaded_vmcs. This structure contains the VMCS, and the information pertaining to its loading on a specific cpu (namely, the cpu number, and whether it was already launched on this cpu once). In nested we will also use the same structure to hold L2 VMCSs, and vmx->loaded_vmcs is a pointer to the currently active VMCS. Signed-off-by: Nadav Har'El Acked-by: Acked-by: Kevin Tian Signed-off-by: Avi Kivity commit 24c82e576b7860a4f02a21103e9df39e11e97006 Author: Avi Kivity Date: Wed May 18 05:56:07 2011 -0400 KVM: Sanitize cpuid Instead of blacklisting known-unsupported cpuid leaves, whitelist known- supported leaves. This is more conservative and prevents us from reporting features we don't support. Also whitelist a few more leaves while at it. Signed-off-by: Avi Kivity Acked-by: Joerg Roedel Signed-off-by: Marcelo Tosatti commit bcdd9a93c57571652c887cb522176db741893581 Author: Xiao Guangrong Date: Sun May 15 23:28:29 2011 +0800 KVM: MMU: cleanup for dropping parent pte Introduce drop_parent_pte to remove the rmap of parent pte and clear parent pte Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 38e3b2b28c5f8fe7914172f4ba631ef4552824d6 Author: Xiao Guangrong Date: Sun May 15 23:27:52 2011 +0800 KVM: MMU: cleanup for kvm_mmu_page_unlink_children Cleanup the same operation between kvm_mmu_page_unlink_children and mmu_pte_write_zap_pte Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 67052b3508f09956427d6476fd35e8fddde6c618 Author: Xiao Guangrong Date: Sun May 15 23:27:08 2011 +0800 KVM: MMU: remove the arithmetic of parent pte rmap Parent pte rmap and page rmap are very similar, so use the same arithmetic for them Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 53c07b18787d564a105e1aa678795d67eeb27447 Author: Xiao Guangrong Date: Sun May 15 23:26:20 2011 +0800 KVM: MMU: abstract the operation of rmap Abstract the operation of rmap to spte_list, then we can use it for the reverse mapping of parent pte in the later patch Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 1249b96e72533ffdb2fa25b5d7471918b065ccc8 Author: Xiao Guangrong Date: Sun May 15 23:25:10 2011 +0800 KVM: fix uninitialized warning Fix: warning: ‘cs_sel’ may be used uninitialized in this function warning: ‘ss_sel’ may be used uninitialized in this function Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 8b0cedff040b652f3d36b1368778667581b0c140 Author: Xiao Guangrong Date: Sun May 15 23:22:04 2011 +0800 KVM: use __copy_to_user/__clear_user to write guest page Simply use __copy_to_user/__clear_user to write guest page since we have already verified the user address when the memslot is set Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 332b207d65c1d7982489dbb83e5071c95e19eb75 Author: Xiao Guangrong Date: Sun May 15 23:20:27 2011 +0800 KVM: MMU: optimize pte write path if don't have protected sp Simply return from kvm_mmu_pte_write path if no shadow page is write-protected, then we can avoid to walk all shadow pages and hold mmu-lock Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 96304217a783a65c0923a26f54141cfe7a2a71b5 Author: Avi Kivity Date: Sun May 15 10:13:13 2011 -0400 KVM: VMX: always_inline VMREADs vmcs_readl() and friends are really short, but gcc thinks they are long because of the out-of-line exception handlers. Mark them always_inline to clear the misunderstanding. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 5e520e62787afd8fc28626fd8d4f77491135119d Author: Avi Kivity Date: Sun May 15 10:13:12 2011 -0400 KVM: VMX: Move VMREAD cleanup to exception handler We clean up a failed VMREAD by clearing the output register. Do it in the exception handler instead of unconditionally. This is worthwhile since there are more than a hundred call sites. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 7b105ca2903b84f023c49965d9a511c5e55256dc Author: Takuya Yoshikawa Date: Sun May 15 01:00:52 2011 +0900 KVM: x86 emulator: Stop passing ctxt->ops as arg of emul functions Dereference it in the actual users. This not only cleans up the emulator but also makes it easy to convert the old emulation functions to the new em_xxx() form later. Note: Remove some inline keywords to let the compiler decide inlining. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit ef5d75cc9af2bca7c525158666b5f9696846ffb6 Author: Takuya Yoshikawa Date: Sun May 15 00:57:43 2011 +0900 KVM: x86 emulator: Stop passing ctxt->ops as arg of decode helpers Dereference it in the actual users: only do_insn_fetch_byte(). This is consistent with the way __linearize() dereferences it. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 67cbc90db5c0f03aa5e54204c388403ec8c25862 Author: Takuya Yoshikawa Date: Sun May 15 00:54:58 2011 +0900 KVM: x86 emulator: Place insn_fetch helpers together The two macros need special care to use: Assume rc, ctxt, ops and done exist outside of them. Can goto outside. Considering the fact that these are used only in decode functions, moving these right after do_insn_fetch() seems to be a right thing to improve the readability. We also rename do_fetch_insn_byte() to do_insn_fetch_byte() to be consistent. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit e76779339ba9c3d56f1a39ff0bfb1dfe7614b062 Author: Avi Kivity Date: Wed May 11 08:30:51 2011 -0400 KVM: Document KVM_GET_LAPIC, KVM_SET_LAPIC ioctl Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 23c10becdbc712de3fb35d0c7ec105a81d21f4c7 Author: Ari Savolainen Date: Mon Jul 11 21:42:52 2011 +0300 HID: fix horizontal wheel for ms comfort mouse 4500 Microsoft comfort mouse 4500 report descriptor contains duplicate usages for horizontal wheel. This patch fixes the wrong mapping caused by that. Signed-off-by: Ari Savolainen Signed-off-by: Jiri Kosina commit 4aede84b33d6beb401136a3deca0651ae07c5e99 Author: Justin TerAvest Date: Tue Jul 12 08:31:45 2011 +0200 fixlet: Remove fs_excl from struct task. fs_excl is a poor man's priority inheritance for filesystems to hint to the block layer that an operation is important. It was never clearly specified, not widely adopted, and will not prevent starvation in many cases (like across cgroups). fs_excl was introduced with the time sliced CFQ IO scheduler, to indicate when a process held FS exclusive resources and thus needed a boost. It doesn't cover all file systems, and it was never fully complete. Lets kill it. Signed-off-by: Justin TerAvest Signed-off-by: Jens Axboe commit 3101ba035ca9ba92f6cec7fd37348646b7a5cb61 Author: Takashi Iwai Date: Tue Jul 12 08:05:16 2011 +0200 ALSA: Use krealloc() in possible places Signed-off-by: Takashi Iwai commit 30b4503378c976cf66201a1e81820519f6bd79ac Author: Takashi Iwai Date: Mon Jul 11 17:05:04 2011 +0200 ALSA: hda - Expose secret DAC-AA connection of some VIA codecs VT1718S and co have a secret connection from DAC to AA-mix, which doesn't appear in the connection list obtained from the h/w. Currently the driver fixes the connection index locally at init, but now we can expose it statically via snd_hda_override_connections() so that this conection can be checked better by the parser in future. Signed-off-by: Takashi Iwai commit 9e7717c9eb9da8dba98f36dd3c390a45375499b3 Author: Takashi Iwai Date: Mon Jul 11 15:42:52 2011 +0200 ALSA: hda - Always read raw connections for proc output In the codec proc outputs, read the raw connections instead of the cached connection list, i.e. proc files contain only raw values. Signed-off-by: Takashi Iwai commit b2f934a0dffd4153e9447ee9e0090e357a3d8b3b Author: Takashi Iwai Date: Mon Jul 4 16:23:26 2011 +0200 ALSA: hda - Add snd_hda_override_conn_list() helper function Add a function to add/modify the connection-list cache entry. It'll be useful to fix a buggy hardware result. Signed-off-by: Takashi Iwai commit bd0d7aa6b20a9e78def76a0ba8c414daf253c295 Author: Jesper Juhl Date: Mon Jul 11 22:15:02 2011 -0700 drivers/net: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for drivers/net/usb/kalmia.c This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit 6d1a3e042f55861a785527a35a6f1ab4217ee810 Author: Eric Dumazet Date: Mon Jul 11 02:49:52 2011 +0000 inetpeer: kill inet_putpeer race We currently can free inetpeer entries too early : [ 782.636674] WARNING: kmemcheck: Caught 32-bit read from uninitialized memory (f130f44c) [ 782.636677] 1f7b13c100000000000000000000000002000000000000000000000000000000 [ 782.636686] i i i i u u u u i i i i u u u u i i i i u u u u u u u u u u u u [ 782.636694] ^ [ 782.636696] [ 782.636698] Pid: 4638, comm: ssh Not tainted 3.0.0-rc5+ #270 Hewlett-Packard HP Compaq 6005 Pro SFF PC/3047h [ 782.636702] EIP: 0060:[] EFLAGS: 00010286 CPU: 0 [ 782.636707] EIP is at inet_getpeer+0x25b/0x5a0 [ 782.636709] EAX: 00000002 EBX: 00010080 ECX: f130f3c0 EDX: f0209d30 [ 782.636711] ESI: 0000bc87 EDI: 0000ea60 EBP: f0209ddc ESP: c173134c [ 782.636712] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 [ 782.636714] CR0: 8005003b CR2: f0beca80 CR3: 30246000 CR4: 000006d0 [ 782.636716] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 [ 782.636717] DR6: ffff4ff0 DR7: 00000400 [ 782.636718] [] rt_set_nexthop.clone.45+0x56/0x220 [ 782.636722] [] __ip_route_output_key+0x309/0x860 [ 782.636724] [] tcp_v4_connect+0x124/0x450 [ 782.636728] [] inet_stream_connect+0xa3/0x270 [ 782.636731] [] sys_connect+0xa1/0xb0 [ 782.636733] [] sys_socketcall+0x25d/0x2a0 [ 782.636736] [] sysenter_do_call+0x12/0x28 [ 782.636738] [] 0xffffffff Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 995181b9529adbfecd6882c734ee702b5ed9226c Author: Eric Dumazet Date: Mon Jul 11 10:00:40 2011 +0000 e1000e: remove e1000_queue_stats struct e1000_queue_stats is not used, lets remove it Signed-off-by: Eric Dumazet Acked-by: Bruce Allan Signed-off-by: David S. Miller commit 4915a0de43c3e9aef92005c1f94a8ff3a6cfced5 Author: Eric Dumazet Date: Mon Jul 11 20:08:34 2011 -0700 net: introduce __netdev_alloc_skb_ip_align RX rings should use GFP_KERNEL allocations if possible, add __netdev_alloc_skb_ip_align() helper to ease this. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 039f02ebd9c2f3f3cb95c00b763fb70870c9116e Merge: f610b74 1fc5f03 Author: David S. Miller Date: Mon Jul 11 20:07:20 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-next-2.6 commit 78f23926dff9c8587d510fa4d746e77a8ad9410d Author: Greg Kroah-Hartman Date: Tue Jul 12 04:53:56 2011 +0200 Staging: delete westbridge code It's been stagnant for a while with out much forward progress for a variety of different reasons. So remove it for now. It can be reverted at any time if development picks back up again. Acked-by: David Cross Signed-off-by: Greg Kroah-Hartman commit 1fc5f0386461dcb3fcbda7a8bcac87f7a822bc56 Author: Alexander Duyck Date: Thu Jun 2 04:28:39 2011 +0000 ixgbe: Make certain to initialize the fdir_perfect_lock in all cases This fix makes it so that the fdir_perfect_lock is initialized in all cases. This is necessary as the fdir_filter_exit routine will always attempt to take the lock before inspecting the filter table. Reported-by: Ben Greear Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit 2c670b5bd794ef93c81bf8797b7d6393c8453fc6 Author: Carolyn Wyborny Date: Tue May 24 06:52:51 2011 +0000 igb: Add support of SerDes Forced mode for certain hardware This patch changes the serdes link code to support a forced mode for some hardware, based on bit set in EEPROM. Signed-off-by: Carolyn Wyborny Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher commit 4297f99b846942c6068f4ec80585c05ac94e612e Author: Carolyn Wyborny Date: Wed Jun 29 01:16:10 2011 +0000 igb: Update copyright on all igb driver files. This patch updates the copyright on the igb driver files to 2011. Signed-off-by: Carolyn Wyborny Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 064b43304ed8ede8e13ff7b4338d09fd37bcffb1 Author: Carolyn Wyborny Date: Sat Jun 25 13:18:12 2011 +0000 igb: Fix lack of flush after register write and before delay Register writes followed by a delay are required to have a flush before the delay in order to commit the values to the register. Without the flush, the code following the delay may not function correctly. Reported-by: Tong Ho Reported-by: Guenter Roeck Signed-off-by: Carolyn Wyborny Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit afb86178cb9b6a7329cf8709aa210fb0a245b606 Author: Lukas Czerner Date: Mon Jul 11 18:47:04 2011 -0400 ext4: remove unnecessary comments in ext4_orphan_add() The comment from Al Viro about possible race in the ext4_orphan_add() is not justified. There is no race possible as we always have either i_mutex locked, or the inode can not be referenced from outside hence the J_ASSERS should not be hit from the reason described in comment. This commit replaces it with notion that we are holding i_mutex so it should not be possible for i_nlink to be changed while waiting for s_orphan_lock. Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" commit caaf7a29d31da21bb8d8200d5e42d1c93d3c6e00 Author: Tao Ma Date: Mon Jul 11 18:42:42 2011 -0400 ext4: Fix a double free of sbi->s_group_info in ext4_mb_init_backend If we meet with an error in ext4_mb_add_groupinfo, we kfree sbi->s_group_info[group >> EXT4_DESC_PER_BLOCK_BITS(sb)], but fail to reset it to NULL. So the caller ext4_mb_init_backend will try to kfree it again and causes a double free. So fix it by resetting it to NULL. Some typo in comments of mballoc.c are also changed. Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 56375fd420f851944960bd53dbb08d674f4d9406 Author: Rafael J. Wysocki Date: Tue Jul 12 00:40:03 2011 +0200 PM / Domains: Queue up power off work only if it is not pending In theory it is possible that pm_genpd_poweroff() for two different subdomains of the same parent domain will attempt to queue up the execution of pm_genpd_poweroff() for the parent twice in a row. This would lead to unpleasant consequences, so prevent it from happening by checking if genpd->power_off_work is pending before attempting to queue it up. Signed-off-by: Rafael J. Wysocki commit 4ecd6e651dd25ebbf0cc53c68162c0ab08641725 Author: Rafael J. Wysocki Date: Tue Jul 12 00:39:57 2011 +0200 PM / Domains: Improve handling of wakeup devices during system suspend Kevin points out that if there's a device that can wake up the system from sleep states, but it doesn't generate wakeup signals by itself (they are generated on its behalf by other parts of the system) and it currently is not enabled to wake up the system (that is, device_may_wakeup() returns "false" for it), we may need to change its wakeup settings during system suspend (for example, the device might have been configured to signal remote wakeup from the system's working state, as needed by runtime PM). Therefore the generic PM domains code should invoke the system suspend callbacks provided by the device's driver, which it doesn't do if the PM domain is powered off during the system suspend's "prepare" stage. This is a valid point. Moreover, this code also should make sure that system wakeup devices that are enabled to wake up the system from sleep states and have to remain active for this purpose are not suspended while the system is in a sleep state. To avoid the above issues, make the generic PM domains' .prepare() routine, pm_genpd_prepare(), force runtime resume of devices whose system wakeup settings may need to be changed during system suspend or that should remain active while the system is in a sleep state to be able to wake it up from that state. Reported-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit 697a7f3727b53c7d4c927948bbe1f6afc4fabfde Author: Rafael J. Wysocki Date: Tue Jul 12 00:39:48 2011 +0200 PM / Domains: Do not restore all devices on power off error Since every device in a PM domain has its own need_restore flag, which is set by __pm_genpd_save_device(), there's no need to walk the domain's device list and restore all devices on an error from one of the drivers' .runtime_suspend() callbacks. Signed-off-by: Rafael J. Wysocki commit c6d22b37263607ba5aeeb2e11169fa65caa29bee Author: Rafael J. Wysocki Date: Tue Jul 12 00:39:36 2011 +0200 PM / Domains: Allow callbacks to execute all runtime PM helpers A deadlock may occur if one of the PM domains' .start_device() or .stop_device() callbacks or a device driver's .runtime_suspend() or .runtime_resume() callback executed by the core generic PM domain code uses a "wrong" runtime PM helper function. This happens, for example, if .runtime_resume() from one device's driver calls pm_runtime_resume() for another device in the same PM domain. A similar situation may take place if a device's parent is in the same PM domain, in which case the runtime PM framework may execute pm_genpd_runtime_resume() automatically for the parent (if it is suspended at the moment). This, of course, is undesirable, so the generic PM domains code should be modified to prevent it from happening. The runtime PM framework guarantees that pm_genpd_runtime_suspend() and pm_genpd_runtime_resume() won't be executed in parallel for the same device, so the generic PM domains code need not worry about those cases. Still, it needs to prevent the other possible race conditions between pm_genpd_runtime_suspend(), pm_genpd_runtime_resume(), pm_genpd_poweron() and pm_genpd_poweroff() from happening and it needs to avoid deadlocks at the same time. To this end, modify the generic PM domains code to relax synchronization rules so that: * pm_genpd_poweron() doesn't wait for the PM domain status to change from GPD_STATE_BUSY. If it finds that the status is not GPD_STATE_POWER_OFF, it returns without powering the domain on (it may modify the status depending on the circumstances). * pm_genpd_poweroff() returns as soon as it finds that the PM domain's status changed from GPD_STATE_BUSY after it's released the PM domain's lock. * pm_genpd_runtime_suspend() doesn't wait for the PM domain status to change from GPD_STATE_BUSY after executing the domain's .stop_device() callback and executes pm_genpd_poweroff() only if pm_genpd_runtime_resume() is not executed in parallel. * pm_genpd_runtime_resume() doesn't wait for the PM domain status to change from GPD_STATE_BUSY after executing pm_genpd_poweron() and sets the domain's status to GPD_STATE_BUSY and increments its counter of resuming devices (introduced by this change) immediately after acquiring the lock. The counter of resuming devices is then decremented after executing __pm_genpd_runtime_resume() for the device and the domain's status is reset to GPD_STATE_ACTIVE (unless there are more resuming devices in the domain, in which case the status remains GPD_STATE_BUSY). This way, for example, if a device driver's .runtime_resume() callback executes pm_runtime_resume() for another device in the same PM domain, pm_genpd_poweron() called by pm_genpd_runtime_resume() invoked by the runtime PM framework will not block and it will see that there's nothing to do for it. Next, the PM domain's lock will be acquired without waiting for its status to change from GPD_STATE_BUSY and the device driver's .runtime_resume() callback will be executed. In turn, if pm_runtime_suspend() is executed by one device driver's .runtime_resume() callback for another device in the same PM domain, pm_genpd_poweroff() executed by pm_genpd_runtime_suspend() invoked by the runtime PM framework as a result will notice that one of the devices in the domain is being resumed, so it will return immediately. Signed-off-by: Rafael J. Wysocki commit 17b75eca7683d4942f4d8d00563fd15f37c39589 Author: Rafael J. Wysocki Date: Tue Jul 12 00:39:29 2011 +0200 PM / Domains: Do not execute device callbacks under locks Currently, the .start_device() and .stop_device() callbacks from struct generic_pm_domain() as well as the device drivers' runtime PM callbacks used by the generic PM domains code are executed under the generic PM domain lock. This, unfortunately, is prone to deadlocks, for example if a device and its parent are boths members of the same PM domain. For this reason, it would be better if the PM domains code didn't execute device callbacks under the lock. Rework the locking in the generic PM domains code so that the lock is dropped for the execution of device callbacks. To this end, introduce PM domains states reflecting the current status of a PM domain and such that the PM domain lock cannot be acquired if the status is GPD_STATE_BUSY. Make threads attempting to acquire a PM domain's lock wait until the status changes to either GPD_STATE_ACTIVE or GPD_STATE_POWER_OFF. This change by itself doesn't fix the deadlock problem mentioned above, but the mechanism introduced by it will be used for for this purpose by a subsequent patch. Signed-off-by: Rafael J. Wysocki commit b6c10c84665912985d0bf9b6ae8ce19fc4298d9f Author: Rafael J. Wysocki Date: Tue Jul 12 00:39:21 2011 +0200 PM / Domains: Make failing pm_genpd_prepare() clean up properly If pm_generic_prepare() in pm_genpd_prepare() returns error code, the PM domains counter of "prepared" devices should be decremented and its suspend_power_off flag should be reset if this counter drops down to zero. Otherwise, the PM domain runtime PM code will not handle the domain correctly (it will permanently think that system suspend is in progress). Signed-off-by: Rafael J. Wysocki commit 6f00ff78278fd5d6ac110b6903ee042af2d6af91 Author: Rafael J. Wysocki Date: Tue Jul 12 00:39:10 2011 +0200 PM / Domains: Set device state to "active" during system resume The runtime PM status of devices in a power domain that is not powered off in pm_genpd_complete() should be set to "active", because those devices are operational at this point. Some of them may not be in use, though, so make pm_genpd_complete() call pm_runtime_idle() in addition to pm_runtime_set_active() for each of them. Signed-off-by: Rafael J. Wysocki commit 823ba01fc07751200c43e45733925a98b73eac3a Author: Tao Ma Date: Mon Jul 11 18:26:01 2011 -0400 ext4: fix a race which could leak memory in ext4_groupinfo_create_slab() In ext4_groupinfo_create_slab, we create ext4_groupinfo_caches within ext4_grpinfo_slab_create_mutex, but set it outside the lock, and there does exist some case that we may create it twice and causes a memory leak. So set it before we call mutex_unlock. Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 598dbdf2433cad55bd44d923f67a053871e3eabf Author: Robin Dong Date: Mon Jul 11 18:24:01 2011 -0400 ext4: avoid unneeded ext4_ext_next_leaf_block() while inserting extents Optimize ext4_ext_insert_extent() by avoiding ext4_ext_next_leaf_block() when the result is not used/needed. Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit c2fda22207e2977d0b80eac58a9004b6f8beed6d Merge: fdcc205 e460974 Author: Arnd Bergmann Date: Mon Jul 11 23:53:01 2011 +0200 Merge branch 'fixes-part-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 into omap/fixes commit 0420b32c01fda83e845752ca465584e21ebb4d3a Author: Linus Walleij Date: Mon Jul 11 11:38:11 2011 +0200 mach-integrator: delete bits.h include file Not only does this file duplicate and implement a well-known antipattern, it is also not used by anything. Signed-off-by: Linus Walleij Acked-by: Russell King Signed-off-by: Arnd Bergmann commit a67792789868d95d14e46a7b6e0c1f214a6fcfb1 Author: Wey-Yi Guy Date: Mon Jul 11 10:47:39 2011 -0700 iwlagn: fix warning in testmode attribute table Fix the compile warning cause by [IWL_TM_ATTR_MAX - 1] Reported-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 9dff387046ef20547236b75dd0d095904e4c0779 Author: Mohammed Shafi Shajakhan Date: Mon Jul 11 20:14:14 2011 +0530 ath9k: remove an unnecessary function declaration Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 43bf8c245237b8309153aa39d4e8f1586cf56af0 Author: Eduardo Bacchi Kienetz Date: Sun Jul 10 17:05:14 2011 +0200 rt2800usb: Add new device ID for Belkin Belkin's Connect N150 Wireless USB Adapter, model F7D1101 version 2, uses ID 0x945b. Chipset info: rt: 3390, rf: 000b, rev: 3213. I have just bought one, which started to work perfectly after the ID was added through this patch. Signed-off-by: Eduardo Bacchi Kienetz Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 3ffca4fc404f056ecd79e57515dd7c2670db1fbf Author: Joe Perches Date: Sun Jul 10 02:28:26 2011 -0700 ath5k: Add missing breaks in switch/case Signed-off-by: Joe Perches Acked-by: Pavel Roskin Signed-off-by: John W. Linville commit 1288aa4e80145d9f4196df32f717b4c1cf6aab61 Author: Larry Finger Date: Sat Jul 9 13:15:58 2011 -0500 rtlwifi: rtl8192cu: Fix duplicate if test A typo causes routine rtl92cu_phy_rf6052_set_cck_txpower() to test the same condition twice. The problem was found using cppcheck-1.49, and the proper fix was verified against the pre-mac80211 version of the code. Reported-by: David Binderman Signed-off-by: Larry Finger Cc: stable [back to 2.6.39] Signed-off-by: John W. Linville commit df90d84382b03faf81637db31b6be14f477482c7 Author: Daniel Drake Date: Sat Jul 9 15:41:25 2011 +0100 libertas: fix handling of command timeout, completion and interruption When commands time out, corruption ensues. As lbs_complete_command() is called without locking, the command node is mistakenly freed twice. Also fixed up locking here in a few other places. The nature of command timeout may be that the card didn't even acknowledge receipt of the request. Detect this case and reset dnld_sent so that other commands don't hang forever. When cmdnodes are moved between the free list and the pending list, their list heads should be reinitialized. Fixed this. Sometimes commands are completed without actually submitting them or removing them from cmdpendingq. We must remember to remove them from cmdpendingq in these cases, so handle this in lbs_complete_command(). Harmless signals generated during suspend/resume were interrupting lbs_cmd. Convert to an uninterruptible sleep to avoid this. lbs_thread must be woken up every time there is some new work to do. I found that when 2 commands are queued, ther completion of the first command would not wake up lbs_thread to submit the second. Poke lbs_thread at the end of lbs_complete_command() to fix this. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 55d990592f83cbfabfefde6e32bf27d4e7493d0c Author: Johannes Berg Date: Sat Jul 9 15:39:16 2011 +0200 mac80211: allocate only one RX queue We don't have multiple RX queues, so there's no use in allocating multiple, use alloc_netdev_mqs() to allocate multiple TX but only one RX queue. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit f15220eaa7296154aace6832791a82188dddb8fd Author: Johannes Berg Date: Sat Jul 9 14:48:31 2011 +0200 mac80211: fix docbook I changed the TKIP key functions, but forgot to update the documentation includes, fix that. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit af71ff85047b744d37872491f485f7a1e0677990 Author: Johannes Berg Date: Sat Jul 9 14:48:30 2011 +0200 cfg80211: fix docbook Looks like I forgot to document the "gfp" parameter to cfg80211_gtk_rekey_notify, add it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 534e7a4566ca5fd3c0c92a655bcbaa6f9bd13042 Author: Hauke Mehrtens Date: Sat Jul 9 13:22:03 2011 +0200 bcma: add check if sprom is available before accessing it. The SoCs like the bcm4716 do not have a sprom on the bcma bus like a pcie device. It stores the values in some partition on flash memory. For ssb this informations are read out in the bcm47xx arch code, something like that should also be implemented for bcma. Without this patch bcma panics on SoCs. Signed-off-by: Hauke Mehrtens Signed-off-by: John W. Linville commit edcc3604805b37344d0569b61a34dbe22943ba9f Author: Olivier Sobrie Date: Sat Jul 9 12:57:05 2011 +0200 libertas: fix errors in functions accessing module registers Problems located in the two functions lbs_set_reg() and lbs_get_reg(): - The offset field of struct cmd_ds_reg_access was not filled in - The test on the return code of lbs_cmd_with_response() in function lbs_get_reg() was inverted Signed-off-by: Olivier Sobrie Signed-off-by: John W. Linville commit 6a2a0e738225fc9ec063f84b79f0adf5c0ed176c Author: Pavel Roskin Date: Sat Jul 9 00:17:51 2011 -0400 ath5k: fix typos, bad comment formatting and GHz in place of MHz Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 86fbe17d7f0856f4111e1ceaf3f5c399315fb4e7 Author: Pavel Roskin Date: Sat Jul 9 00:17:45 2011 -0400 ath5k: validate mode in ath5k_ani_init() before trying to set it Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 21394754bcca59aeb4a0b74c95c0220bb727808f Author: Felix Fietkau Date: Sat Jul 9 11:12:54 2011 +0700 ath9k_hw: add a missing delay for an analog register AR_AN_SYNTH9 is in the analog shift register range and thus needs to be written using the ath9k_hw_analog_shift_rmw function. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 7d865c7080b3cb9d95eaf7d40343712e582fc3e7 Author: Felix Fietkau Date: Sat Jul 9 11:12:53 2011 +0700 ath9k_hw: fix synth delay for half/quarter channels The radio needs twice / four times as much time to stabilize for half/quarter channels. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 0407cf1c7f0fdbecab7efbd8214ac2d1196a67f9 Author: Felix Fietkau Date: Sat Jul 9 11:12:52 2011 +0700 ath9k_hw: set 5 GHz half/quarter channels on AR9002 using fractional mode The radio seems to perform better that way Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit fe2b6afbce05abe90d31651d3b92c88e0abc5ecb Author: Felix Fietkau Date: Sat Jul 9 11:12:51 2011 +0700 ath9k_hw: remove ar9287 v1.3+ specific hardcoded register hacks Now that the clock rate is initialized properly and SIFS, EIFS, USEC, slot time and ACK timeout are properly calculated by the generic code, the 'async FIFO' register hacks are no longer necessary. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit b6ba41bb27eb9810d54e2301355ce56fd0e94a1a Author: Felix Fietkau Date: Sat Jul 9 11:12:50 2011 +0700 ath9k_hw: initialize more timing related registers for half/quarter channels Initialize the the clock-to-TSF field of AR_USEC and the SIFS and EIFS time registers based on the clock rate instead of relying on initvals. With those changes, some of the hardcoded AR9287 1.3+ specific overrides can be dropped. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 087b6ff682ff62c49c9a36ddfd24fc781367b1d1 Author: Felix Fietkau Date: Sat Jul 9 11:12:49 2011 +0700 ath9k_hw: fix MAC clock rate for AR9287 v1.3+ This chip uses the async FIFO feature and runs the MAC at 117 MHz Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 906c720527b23ba8c99683ea5f9ea1f9d7749e8c Author: Felix Fietkau Date: Sat Jul 9 11:12:48 2011 +0700 ath9k_hw: fix MAC clock for half/quarter rate Enabling half/quarter rate makes the MAC run at half/quarter clock speed. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit a949b1725c38775fb869d24433f13d2d104de145 Author: Felix Fietkau Date: Sat Jul 9 11:12:47 2011 +0700 ath9k_hw: always enable 5 GHz fast clock for AR9280 All devices support this, but some disable it using an EEPROM flag for some reason. Improves 5 GHz performance on those devices. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 804f6acb7cea1ea5b3e0ded1bf037f9bf02f1124 Author: Felix Fietkau Date: Sat Jul 9 11:12:46 2011 +0700 ath9k_hw: remove hardcoded PLL overrides for AR9280 Use the proper masks for the register instead. Fixes adding the (still unused) half/quarter PLL flags. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit cd27bc3c3efb95ee20e5b627c483eb9513cd0350 Author: Amitkumar Karwar Date: Fri Jul 8 20:40:30 2011 -0700 mwifiex: 11n specific configuration for transmit Currently device is not able to transmit in 40MHz in spite of enabling 40MHz support in HTCapInfo IE in assoc req, because 11n specific FW capabilities for transmission are not initialized. This patch adds code to initilize these capabilities. Signed-off-by: Amitkumar Karwar Signed-off-by: Yogesh Ashok Powar Signed-off-by: Kiran Divekar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 5c3d29fc0d083e674c09407f1bc78e9dbf4ae8a5 Author: Don Fry Date: Fri Jul 8 08:46:29 2011 -0700 iwlagn: remove iwlagn_hcmd_utils structure and call directly Not needed since the driver split. Move single use routines to calling location and keep static where possible. Signed-off-by: Don Fry Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 4e308119771573f949203f9f4732bcbfb9628279 Author: Wey-Yi Guy Date: Fri Jul 8 08:46:28 2011 -0700 iwlagn: separate and enhance the fixed rate from For testing purpose, we need better control of msc from user application. Separate the fixed_rate between debugfs and testmode and enforce it. Signed-off-by: Kenny Hsu Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit eedb6e357a4b1bd3d7e4544e77fbd71718492547 Author: Wey-Yi Guy Date: Fri Jul 8 08:46:27 2011 -0700 iwlagn: block regular host commands if driver don't own uCode The only host command allow to send to uCode is the one initiated from testmode if testmode is the owner of uCode Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit e98a1939a2d75354631487328339fe8d2117fce9 Author: Wey-Yi Guy Date: Fri Jul 8 08:46:26 2011 -0700 iwlagn: allow application own the uCode operation Since we open the door to allow application control the device behavior through testmode, add command to allow application request the ownership of the uCode Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit c7c1115b8ff485d3a48b70bb7135776a696778ad Author: Wey-Yi Guy Date: Fri Jul 8 08:46:25 2011 -0700 iwlagn: add CMD_ON_DEMAND flag for host command from testmode For all the hist command request from testmode, set the CMD_ON_DEMAND flag. this flag will be used later to control the uCode behavior Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 3a3b14c26cd285b4f4700bf10ea634bbbe73eac6 Author: Wey-Yi Guy Date: Fri Jul 8 08:46:24 2011 -0700 iwlagn: declare static Declare iwl_mac_rssi_callback as "static" Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 207ecc5eab908843449c167f7264a35d7d5d5e0b Author: Meenakshi Venkataraman Date: Fri Jul 8 08:46:23 2011 -0700 iwlagn: Enable/disable PS poll based on RSSI and BT coex traffic state WiFi throughput drops drastically when BT is turned on, BT and WiFi are simultaneously transmitting/receiving traffic. This is particularly true when BT has higher priority over WiFi, and hence the device defers TX frames. The AP assumes that the channel is bad and reduces the data rate, implying longer airtime, which exacerbates the problem further, resulting ultimately in what is popularly called the "death-spiral" phenomenon. The use of PS-poll in such scenarios guarantees a low but consistent throughput. Since the death-spiral phenomenon is observed only when the RSSI is low, use PS-poll only when RSSI is low and disable when high, with a known hysterisis. This feature specifies the high and low thresholds and implements the callbacks registered with mac80211, which will be called when threshold events occur. iwlwifi: dynamic pspoll: optimize rssi monitor code Signed-off-by: Meenakshi Venkataraman Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 615f7b9bb1f8e0e3188470245cec44f175189084 Author: Meenakshi Venkataraman Date: Fri Jul 8 08:46:22 2011 -0700 mac80211: add driver RSSI threshold events mac80211 maintains a running average of the RSSI when a STA is associated to an AP. Report threshold events to any driver that has registered callbacks for getting RSSI measurements. Implement callbacks in mac80211 so that driver can set thresholds. Add callbacks in mac80211 which is invoked when an RSSI threshold event occurs. mac80211: add tracing to rssi_reports api and remove extraneous fn argument mac80211: scale up rssi thresholds from driver by 16 before storing Signed-off-by: Meenakshi Venkataraman Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 0a49b2c2a6bf2f774675e472afe68951900596fb Author: Wey-Yi Guy Date: Fri Jul 8 08:46:21 2011 -0700 iwlagn: use bt handler for 2030 and 135 series devices For bt combo devices, need to use bt enabled handlers and functions Reported-by: Don Fry Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 909fc3cba374560ada33a7dc3ab242d0f1d2a135 Author: Wey-Yi Guy Date: Fri Jul 8 08:46:20 2011 -0700 iwlagn: remove double level temperature indirect call No need to do double level indirect call after driver split no functional changes Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 70e3e8a6e831bf58a7eb98187c186221f01d5b64 Author: Fry, Donald H Date: Fri Jul 8 08:46:19 2011 -0700 iwlagn: remove indirection for eeprom_query_addr Not needed since the driver split. Eliminate redundant routine. Signed-off-by: Don Fry Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit e4c598b7ce36f4416f7672617265bc1fa92e5a5f Author: Fry, Donald H Date: Fri Jul 8 08:46:18 2011 -0700 iwlagn: remove the indirection for iwl_apm_init Not needed since the driver split. Signed-off-by: Don Fry Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 6b6db91c8aa14fa9bd041321026d69b9f6ea42ff Author: Fry, Donald H Date: Fri Jul 8 08:46:17 2011 -0700 iwlagn: remove the indirection for update_chain_flags Not needed since the driver split. Signed-off-by: Don Fry Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit bdfbf0924ab05e02d28e50bd2d5024097642a78d Author: Emmanuel Grumbach Date: Fri Jul 8 08:46:16 2011 -0700 iwlagn: provide heplers to access the transport ops This removes the for priv->trans.ops->... Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 02f6f659b0080e60021aae3503163576f88c5ba8 Author: Wey-Yi Guy Date: Fri Jul 8 08:46:15 2011 -0700 iwlagn: remove the indirection for the dma channel num Not needed since the driver split. Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit e419d62d72b23392e7f9a5da047fb17d70edc54a Author: Emmanuel Grumbach Date: Fri Jul 8 08:46:14 2011 -0700 iwlagn: consolidate the API that sends host commands and move to transport Now, there are only two functions to send a host command: * send_cmd that receives a iwl_host_cmd * send_cmd_pdu that builds the iwl_host_cmd itself and received flags The flags CMD_ASYNC / CMD_SYNC / CMD_WANT_SKB are not changed by the API functions. Kill the unused flags CMD_SIZE_NORMAL / CMD_NO_SKB on the way. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 06f491ef4b659fa6f6850f31d05a4a03db0d9d96 Author: Emmanuel Grumbach Date: Fri Jul 8 08:46:13 2011 -0700 iwlagn: remove code duplication Code duplication was needed during the move, not needed any more. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit c170b867cc119fb9f6e9cac3a8245a3347bc718c Author: Emmanuel Grumbach Date: Fri Jul 8 08:46:12 2011 -0700 iwlagn: add an API for TX stop Tx stop moves to transport layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit c2c52e8bed1a186d060166ec57228e2a123cab2e Author: Emmanuel Grumbach Date: Fri Jul 8 08:46:11 2011 -0700 iwlagn: add an API for RX stop Rx stop moves to transport layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 1359ca4f305a1680ea6a1347a43bea76c352097c Author: Emmanuel Grumbach Date: Fri Jul 8 08:46:10 2011 -0700 iwlagn: add an API to free the TX context Tx free functions move to the transport layer. Unify the functions that deal with tx queues and cmd queue. Since the CMD queue is not fully allocated, but uses the q->n_bd / q->window trick, the release flow of TX queue and CMD queue was different. iwlagn_txq_free_tfd receives now the index of the TFD to be freed, which allows to unify the release flow for all the queues. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit afaf6b5742f85bab46232faae97fdd1493061173 Author: Emmanuel Grumbach Date: Fri Jul 8 08:46:09 2011 -0700 iwlagn: remove the CMD_MAPPED flag It is uneeded since Johannes removed the HUGE flag. The DMA mapping is always held in the same index as the command. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 4b42c542afbc119c4012324ea80e0c5a89afea4f Merge: d859898 e2fd318 Author: John W. Linville Date: Mon Jul 11 14:58:22 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6 Conflicts: net/bluetooth/l2cap_core.c commit d8598981146241064993e371cea8333f59553cb6 Merge: 8ae2e12 3445951 Author: John W. Linville Date: Mon Jul 11 14:46:59 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 Conflicts: drivers/net/wireless/ath/ath5k/sysfs.c net/bluetooth/l2cap_core.c net/mac80211/wpa.c commit 3c52b7bf6967e53dec3fbbcf99fee65e49e600df Author: Raghavendra D Prabhu Date: Sat Jul 9 21:59:07 2011 +0530 xen:pvhvm: Modpost section mismatch fix Removing __init from check_platform_magic since it is called by xen_unplug_emulated_devices in non-init contexts (It probably gets inlined because of -finline-functions-called-once, removing __init is more to avoid mismatch being reported). Signed-off-by: Raghavendra D Prabhu Acked-by: Stefano Stabellini Signed-off-by: Konrad Rzeszutek Wilk commit 97ffab1f14638d2c95ad986ce735481d164a0bd2 Author: Konrad Rzeszutek Wilk Date: Wed Jul 6 13:03:35 2011 -0400 xen/pci: Use 'acpi_gsi_to_irq' value unconditionally. In the past we would only use the function's value if the returned value was not equal to 'acpi_sci_override_gsi'. Meaning that the INT_SRV_OVR values for global and source irq were different. But it is OK to use the function's value even when the global and source irq are the same. Signed-off-by: Konrad Rzeszutek Wilk commit 78316ada2222b5e3abc043eea7644e12319042d6 Author: Konrad Rzeszutek Wilk Date: Wed Jul 6 15:15:23 2011 -0400 xen/pci: Remove 'xen_allocate_pirq_gsi'. In the past (2.6.38) the 'xen_allocate_pirq_gsi' would allocate an entry in a Linux IRQ -> {XEN_IRQ, type, event, ..} array. All of that has been removed in 2.6.39 and the Xen IRQ subsystem uses an linked list that is populated when the call to 'xen_allocate_irq_gsi' (universally done from any of the xen_bind_* calls) is done. The 'xen_allocate_pirq_gsi' is a NOP and there is no need for it anymore so lets remove it. Signed-off-by: Konrad Rzeszutek Wilk commit 34b1d1269d9fdaa1558e3014c3cc03ac0967de95 Author: Konrad Rzeszutek Wilk Date: Wed Jun 15 14:43:52 2011 -0400 xen/pci: Retire unnecessary #ifdef CONFIG_ACPI As the code paths that are guarded by CONFIG_XEN_DOM0 already depend on CONFIG_ACPI so the extra #ifdef is not required. The earlier patch that added them in had done its job. Signed-off-by: Konrad Rzeszutek Wilk commit 9b6519db5e226c0c83acddf788b7091b751fbb75 Author: Konrad Rzeszutek Wilk Date: Mon Jun 6 14:20:35 2011 -0400 xen/pci: Move the allocation of IRQs when there are no IOAPIC's to the end .. which means we can preset of NR_IRQS_LEGACY interrupts using the 'acpi_get_override_irq' API before this loop. This means that we can get the IRQ's polarity (and trigger) from either the ACPI (or MP); or use the default values. This fixes a bug if we did not have an IOAPIC we would not been able to preset the IRQ's polarity if the MP table existed. Signed-off-by: Konrad Rzeszutek Wilk commit a0ee05670915006564962114d4211dd578a8b28a Author: Konrad Rzeszutek Wilk Date: Thu Jun 9 09:49:13 2011 -0400 xen/pci: Squash pci_xen_initial_domain and xen_setup_pirqs together. Since they are only called once and the rest of the pci_xen_* functions follow the same pattern of setup. Signed-off-by: Konrad Rzeszutek Wilk commit ed89eb6396b3307bf9aaa4785f6a0914a68040cf Author: Konrad Rzeszutek Wilk Date: Wed Jul 6 12:42:43 2011 -0400 xen/pci: Use the xen_register_pirq for HVM and initial domain users .. to cut down on the code duplicity. Signed-off-by: Konrad Rzeszutek Wilk commit 30bd35edfd5c82147bdcf0540c6bd3cf92d101f8 Author: Konrad Rzeszutek Wilk Date: Wed Jul 6 10:48:22 2011 -0400 xen/pci: In xen_register_pirq bind the GSI to the IRQ after the hypercall. Not before .. also that code segment starts looking like the HVM one. Signed-off-by: Konrad Rzeszutek Wilk commit d92edd814e3c9d9105de55b14c8958b1f8f20269 Author: Konrad Rzeszutek Wilk Date: Wed Jul 6 10:41:47 2011 -0400 xen/pci: Provide #ifdef CONFIG_ACPI to easy code squashing. In the past we would guard those code segments to be dependent on CONFIG_XEN_DOM0 (which depends on CONFIG_ACPI) so this patch is not stricly necessary. But the next patch will merge common HVM and initial domain code and we want to make sure the CONFIG_ACPI dependency is preserved - as HVM code does not depend on CONFIG_XEN_DOM0. Signed-off-by: Konrad Rzeszutek Wilk commit 996c34aee3525c0ef91052af0e425e87d83ba6e0 Author: Konrad Rzeszutek Wilk Date: Mon Jun 6 12:22:23 2011 -0400 xen/pci: Update comments and fix empty spaces. Update the out-dated comment at the beginning of the file. Also provide the copyrights of folks who have been contributing to this code lately. Signed-off-by: Konrad Rzeszutek Wilk commit fef6e26208879f76bada77c11c80d56ebacb32e4 Author: Konrad Rzeszutek Wilk Date: Wed Jul 6 10:16:21 2011 -0400 xen/pci: Shuffle code around. The file is hard to read. Move the code around so that the contents of it follows a uniform format: - setup GSIs - PV, HVM, and initial domain case - then MSI/MSI-x setup - PV, HVM and then initial domain case. - then MSI/MSI-x teardown - same order. - lastly, the __init functions in PV, HVM, and initial domain order. Signed-off-by: Konrad Rzeszutek Wilk commit ffb505ff0f7b52318dea46dd139107a8371b4ad7 Author: Robin Dong Date: Mon Jul 11 11:43:59 2011 -0400 ext4: remove redundant goto in ext4_ext_insert_extent() If eh->eh_entries is smaller than eh->eh_max, the routine will go to the "repeat" and then go to "has_space" directlly , since argument "depth" and "eh" are not even changed. Therefore, goto "has_space" directly and remove redundant "repeat" tag. Signed-off-by: Robin Dong commit b2ce39740066604288876c752d8170b3b17a21aa Author: Alex Elder Date: Mon Jul 11 09:51:44 2011 -0500 Revert "xfs: fix filesystsem freeze race in xfs_trans_alloc" This reverts commit 7a249cf83da1813cfa71cfe1e265b40045eceb47. That commit created a situation that could lead to a filesystem hang. As Dave Chinner pointed out, xfs_trans_alloc() could hold a reference to m_active_trans (i.e., keep it non-zero) and then wait for SB_FREEZE_TRANS to complete. Meanwhile a filesystem freeze request could set SB_FREEZE_TRANS and then wait for m_active_trans to drop to zero. Nobody benefits from this sequence of events... Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 7fece83235a59b15d75d6c8ef2225c24abd4505b Author: Naga Chumbalkar Date: Fri Jul 8 18:46:42 2011 +0000 x86, ioapic: Also print Dest field The code in setup_ioapic_irq() determines the Destination Field, so why not also include it in the debug printk output that gets displayed when the boot parameter "apic=debug" is used. Before the change, "dmesg" will show: IOAPIC[0]: Set routing entry (8-1 -> 0x31 -> IRQ 1 Mode:0 Active:0) IOAPIC[0]: Set routing entry (8-2 -> 0x30 -> IRQ 0 Mode:0 Active:0) IOAPIC[0]: Set routing entry (8-3 -> 0x33 -> IRQ 3 Mode:0 Active:0) ... After the change, you will see: IOAPIC[0]: Set routing entry (8-1 -> 0x31 -> IRQ 1 Mode:0 Active:0 Dest:0) IOAPIC[0]: Set routing entry (8-2 -> 0x30 -> IRQ 0 Mode:0 Active:0 Dest:0) IOAPIC[0]: Set routing entry (8-3 -> 0x33 -> IRQ 3 Mode:0 Active:0 Dest:0) ... Signed-off-by: Naga Chumbalkar Link: http://lkml.kernel.org/r/20110708184603.2734.91071.sendpatchset@nchumbalkar.americas.cpqcorp.net Signed-off-by: Ingo Molnar commit bd6a46e087571897f0b2736917500b97d18dac13 Author: Naga Chumbalkar Date: Fri Jul 8 18:46:36 2011 +0000 x86, ioapic: Format clean up for IOAPIC output When IOAPIC data is displayed in "dmesg" with the help of the boot parameter "apic=debug" certain values are not formatted correctly wrt their size. In the "dmesg" snippet below, note that the output for "max redirection entries", and "IO APIC version" which are each defined to be just 8-bits long are displayed as 2 bytes in length. Similarly, "Dst" under the "IRQ redirection table" should only be 8-bits long. IO APIC #0...... ... ... .... register #01: 00170020 ....... : max redirection entries: 0017 ....... : PRQ implemented: 0 ....... : IO APIC version: 0020 ... ... .... IRQ redirection table: NR Dst Mask Trig IRR Pol Stat Dmod Deli Vect: 00 000 1 0 0 0 0 0 0 00 01 000 0 0 0 0 0 0 0 31 02 000 0 0 0 0 0 0 0 30 03 000 1 0 0 0 0 0 0 33 ... ... Do some formatting clean up, so you will see output like below: IO APIC #0...... ... ... .... register #01: 00170020 ....... : max redirection entries: 17 ....... : PRQ implemented: 0 ....... : IO APIC version: 20 ... ... .... IRQ redirection table: NR Dst Mask Trig IRR Pol Stat Dmod Deli Vect: 00 00 1 0 0 0 0 0 0 00 01 00 0 0 0 0 0 0 0 31 02 00 0 0 0 0 0 0 0 30 03 00 1 0 0 0 0 0 0 33 ... ... Signed-off-by: Naga Chumbalkar Link: http://lkml.kernel.org/r/20110708184557.2734.61830.sendpatchset@nchumbalkar.americas.cpqcorp.net Signed-off-by: Ingo Molnar commit 04da85b86188f224cc9b391b5bdd92a3ba20ffcf Author: Steven Rostedt Date: Mon Jul 11 10:12:59 2011 -0400 ftrace: Fix warning when CONFIG_FUNCTION_TRACER is not defined The struct ftrace_hash was declared within CONFIG_FUNCTION_TRACER but was referenced outside of it. Reported-by: Ingo Molnar Signed-off-by: Steven Rostedt commit df98b6e2c52f65665eaf0fc23e647fb64335b289 Author: Josef Bacik Date: Mon Jun 20 14:53:48 2011 -0400 Btrfs: fix how we merge extent states and deal with cached states First, we can sometimes free the state we're merging, which means anybody who calls merge_state() may have the state it passed in free'ed. This is problematic because we could end up caching the state, which makes caching useless as the state will no longer be part of the tree. So instead of free'ing the state we passed into merge_state(), set it's end to the other->end and free the other state. This way we are sure to cache the correct state. Also because we can merge states together, instead of only using the cache'd state if it's start == the start we are looking for, go ahead and use it if the start we are looking for is within the range of the cached state. Thanks, Signed-off-by: Josef Bacik commit 2f356126c589d562f98e2287f9c7b983388dc62f Author: Josef Bacik Date: Fri Jun 10 15:31:13 2011 -0400 Btrfs: use the normal checksumming infrastructure for free space cache We used to store the checksums of the space cache directly in the space cache, however that doesn't work out too well if we have more space than we can fit the checksums into the first page. So instead use the normal checksumming infrastructure. There were problems with doing this originally but those problems don't exist now so this works out fine. Thanks, Signed-off-by: Josef Bacik commit fdb5effd5c2a7e01dc3a4217bb194e2d3a5b160f Author: Josef Bacik Date: Tue Jun 7 16:07:44 2011 -0400 Btrfs: serialize flushers in reserve_metadata_bytes We keep having problems with early enospc, and that's because our method of making space is inherently racy. The problem is we can have one guy trying to make space for himself, and in the meantime people come in and steal his reservation. In order to stop this we make a waitqueue and put anybody who comes into reserve_metadata_bytes on that waitqueue if somebody is trying to make more space. Thanks, Signed-off-by: Josef Bacik commit b5009945be18023942ce28327893c7bc1e58fe54 Author: Josef Bacik Date: Tue Jun 7 15:07:51 2011 -0400 Btrfs: do transaction space reservation before joining the transaction We have to do weird things when handling enospc in the transaction joining code. Because we've already joined the transaction we cannot commit the transaction within the reservation code since it will deadlock, so we have to return EAGAIN and then make sure we don't retry too many times. Instead of doing this, just do the reservation the normal way before we join the transaction, that way we can do whatever we want to try and reclaim space, and then if it fails we know for sure we are out of space and we can return ENOSPC. Thanks, Signed-off-by: Josef Bacik commit fa09200b8334f9a6af3f656edae924a98d85630f Author: Josef Bacik Date: Fri May 27 12:06:11 2011 -0400 Btrfs: try to only do one btrfs_search_slot in do_setxattr I've been watching how many btrfs_search_slot()'s we do and I noticed that when we create a file with selinux enabled we were doing 2 each time we initialize the security context. That's because we lookup the xattr first so we can delete it if we're setting a new value to an existing xattr. But in the create case we don't have any xattrs, so it is completely useless to have the extra lookup. So re-arrange things so that we only lookup first if we specifically have XATTR_REPLACE. That way in the basic case we only do 1 search, and in the more complicated case we do the normal 2 lookups. Thanks, Signed-off-by: Josef Bacik commit 3d6aa675fff9eee5a6339d67b355b63a6d69565f Author: David Teigland Date: Wed Jul 6 17:00:54 2011 -0500 dlm: keep lkbs in idr This is simpler and quicker than the hash table, and avoids needing to search the hash list for every new lkid to check if it's used. Signed-off-by: David Teigland commit a22ca4806822154c163c6f220f4c2a05adf96fc7 Author: David Teigland Date: Mon Jul 11 08:40:53 2011 -0500 dlm: fix kmalloc args The gfp and size args were switched. Signed-off-by: David Teigland commit 5d70828a7703b1f68e2fd4ce4b42b28d9623f52b Author: Jesper Juhl Date: Sun Jul 10 22:54:31 2011 +0200 dlm: don't do pointless NULL check, use kzalloc and fix order of arguments In fs/dlm/lock.c in the dlm_scan_waiters() function there are 3 small issues: 1) There's no need to test the return value of the allocation and do a memset if is succeedes. Just use kzalloc() to obtain zeroed memory. 2) Since kfree() handles NULL pointers gracefully, the test of 'warned' against NULL before the kfree() after the loop is completely pointless. Remove it. 3) The arguments to kmalloc() (now kzalloc()) were swapped. Thanks to Dr. David Alan Gilbert for pointing this out. Signed-off-by: Jesper Juhl Signed-off-by: David Teigland commit 19110595c89b2d606883b7cb99260c7e47fd2143 Author: Takashi Iwai Date: Mon Jul 11 14:46:44 2011 +0200 ALSA: hda - Turn on extra EAPDs on Conexant codecs Some machines seem to use EAPD control of the unused pin for controlling the overall EAPD. Since the driver currently doesn't check the EAPD of unused pins, the EAPD isn't enabled. For avoiding such a problem, turn all extra EAPDs on as default. Signed-off-by: Takashi Iwai commit 6be914f11db8e88d11b08d6c496624dbbd642d80 Author: Nikolai Kondrashov Date: Wed Jul 6 09:23:41 2011 +0300 HID: uclogic: Add support for UC-Logic WP1062 Add support for UC-Logic Tablet WP1062 by fixing its report descriptor. This tablet is sold as Monoprice 10X6.25 Inches Graphic Drawing Tablet. Signed-off-by: Nikolai Kondrashov Signed-off-by: Jiri Kosina commit 3c1c2fce64fdfa2f0c0ff4fffb3bb171ea6361ca Author: David Herrmann Date: Tue Jul 5 13:45:19 2011 +0200 HID: wiimote: Add sysfs support to wiimote driver Add sysfs files for each led of the wiimote. Writing 1 to the file enables the led and 0 disables the led. We do not need memory barriers when checking wdata->ready since we use a spinlock directly after it. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 32a0d9a522b577d0efa6ce793a6ac0516c5e3627 Author: David Herrmann Date: Tue Jul 5 13:45:18 2011 +0200 HID: wiimote: Cache wiimote led state Save the current state of the leds in the wiimote data structure. This allows us to discard new led requests that wouldn't change anything. Protect the whole state structure by a spinlock. Every wiiproto_* function expects this spinlock to be held when called. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit db3083467f1527816fca95ae2d8bfe5d81503a8e Author: David Herrmann Date: Tue Jul 5 13:45:17 2011 +0200 HID: wiimote: Add wiimote led request Add new request that sets the leds on the target device. Also, per default, set led1 after initializing a device. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 1abb9ad389f037612b6ba6b0dede2095c59cd2fa Author: David Herrmann Date: Tue Jul 5 13:45:16 2011 +0200 HID: wiimote: Add wiimote input button parser Parse input report 0x30 from the wiimote as button input. We need to send events for all buttons on every input report because the wiimote does not send events for single buttons but always for all buttons to us. The input layer, however, filters redundant events. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit a4d19197627e2a8645cccd9039edf513c6384297 Author: David Herrmann Date: Tue Jul 5 13:45:15 2011 +0200 HID: wiimote: Add wiimote event handler Create array of all event handlers and call each handler when we receive the related event. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 23c063cb02b69244bbc215cb81c2cad0208fbecf Author: David Herrmann Date: Tue Jul 5 13:45:14 2011 +0200 HID: wiimote: Add output queue for wiimote driver The raw hid output function that is supported by bluetooth low-level hid driver does not provide an output queue and also may sleep. The wiimote driver, though, may need to send data in atomic context so this patch adds a buffered output queue for the wiimote driver. We use the shared workqueue to send our buffer to the hid device. There is always only one active worker which flushes the whole output queue to the device. If our queue is full, every further output is discarded. Special care is needed in the deinitialization routine. When wiimote_hid_remove is called, HID input is already disabled, but HID output may still be used from our worker and is then discarded by the lower HID layers. Therefore, we can safely disable the input layer since it is the only layer that still sends input events. Future sysfs attributes must be freed before unregistering input to avoid the sysfs handlers to send input events to a non-existing input layer. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 0c218f14487fd67e60059458c48b43cc3d36b96e Author: David Herrmann Date: Tue Jul 5 13:45:13 2011 +0200 HID: wiimote: Add wiimote send function The wiimote driver needs to send raw output reports to the wiimote device. Otherwise we could not manage the peripherals of the wiimote or perform memory operations on the wiimote. We cannot use hidinput_input_event of the lowlevel hid driver, since this does not accept raw input. Therefore, we need to use the same function that hidraw uses to send output. Side effect is, the raw output function is not buffered and can sleep. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 4d36e9754f6b71870a476e84f418a864c2ddf77c Author: David Herrmann Date: Tue Jul 5 13:45:12 2011 +0200 HID: wiimote: Synchronize wiimote input and hid event handling The wiimote first starts HID hardware and then registers the input device. We need to synchronize the startup so no event handler will start parsing events when the wiimote device is not ready, yet. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 672bc4e090c9a2c655c28f8295e981609a1b84ba Author: David Herrmann Date: Tue Jul 5 13:45:11 2011 +0200 HID: wiimote: Register input device in wiimote hid driver Register input device so the wiimote can report input events on it. We do not use HIDINPUT because the wiimote does not provide any descriptor table which might be used by HIDINPUT. So we avoid having HIDINPUT parse the wiimote descriptor and create unrelated or unknown event flags. Instead we register our own input device that we have full control of. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit e894d0e3e06650510c70e50b317dfaba5295f4db Author: David Herrmann Date: Tue Jul 5 13:45:10 2011 +0200 HID: wiimote: Add wiimote device structure Allocate wiimote device structure with all wiimote related data when registering new wiimote devices. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 02fb72a06ae1ed55b4373a4c678f25d70fd65902 Author: David Herrmann Date: Tue Jul 5 13:45:09 2011 +0200 HID: wiimote: Register wiimote hid driver stub The wiimote uses a fake HID protocol. Hence, we need to prevent HIDINPUT and HIDDEV from parsing wiimote data and instead parse raw hid events. Add VID/PID to hid-core so the special driver is loaded on new wiimotes. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit fb51b44385a0ded0d629d5cf4a2095f80fb01b56 Author: David Herrmann Date: Tue Jul 5 13:45:08 2011 +0200 HID: wiimote: Add Nintendo Wii Remote driver stub Add stub driver for the Nintendo Wii Remote. The wii remote uses the HID protocol to communicate with the host over bluetooth. Hence, add dependency for HIDP and place driver in hid subsystem. Signed-off-by: David Herrmann Signed-off-by: Jiri Kosina commit 35ed4b35beb875adee4d84f9e5e31449cab13c3f Author: Michael Witten Date: Sat Jul 9 04:02:31 2011 +0000 doc: Kconfig: `to be' -> `be' Also, a comma was inserted to offset a modifier. Signed-off-by: Michael Witten Signed-off-by: Jiri Kosina commit 622e040d577dc8a7a6efbfa4f056448f62b4039a Author: Michael Witten Date: Fri Jul 8 22:33:24 2011 +0000 doc: Kconfig: Typo: square -> squared Signed-off-by: Michael Witten Signed-off-by: Jiri Kosina commit 2dc98fd3206f8106520eced769781a21a20707ca Author: Michael Witten Date: Fri Jul 8 21:11:16 2011 +0000 doc: Konfig: Documentation/power/{pm => apm-acpi}.txt Signed-off-by: Michael Witten Signed-off-by: Jiri Kosina commit 587360885c0e7aa403831c29be1984b746fd24fb Author: Jesper Juhl Date: Sat Jul 9 23:24:43 2011 +0200 drivers/net: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for drivers/net/usb/kalmia.c This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit b7e9c223be8ce335e30f2cf6ba588e6a4092275c Merge: c172d82 e3bbfa7 Author: Jiri Kosina Date: Mon Jul 11 14:15:48 2011 +0200 Merge branch 'master' into for-next Sync with Linus' tree to be able to apply pending patches that are based on newer code already present upstream. commit c172d82500a6cf3c32d1e650722a1055d72ce858 Author: Jesper Juhl Date: Sat Jul 9 23:22:17 2011 +0200 drivers/media: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for drivers/media/video/omap/omap_vout.c This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 32575a9183c82a5ea0f9ed1bcf13c17189ea1118 Author: Jesper Juhl Date: Sat Jul 9 23:20:42 2011 +0200 drivers/i2c: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for drivers/i2c/busses/i2c-omap.c This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 14559f2f9a8b7e5d565c7de34a95097ee331c5cb Author: Jesper Juhl Date: Sat Jul 9 23:17:59 2011 +0200 XTENSA: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for arch/xtensa/variants/s6000/include/variant/dmac.h This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit e04008eb38d8b0e3bca926c23cbea309edce164b Author: Jesper Juhl Date: Sat Jul 9 23:16:22 2011 +0200 SH: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for arch/sh/* This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 628d7f697c9bcde82620895d25848c301e43ac30 Author: Jesper Juhl Date: Sat Jul 9 23:12:35 2011 +0200 MIPS: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for arch/mips/include/asm/mach-jz4740/gpio.h This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Also a few tiny whitespace changes. Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 82d508fac3e680b7853275090c3b1a3db2461198 Author: Jesper Juhl Date: Sat Jul 9 23:11:14 2011 +0200 ARM: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for arch/arm/mach-shmobile/board-ap4evb.c This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 9499473463628a1af4be5aea1ad8d35d3fd341b0 Author: Takashi Iwai Date: Mon Jul 11 11:36:44 2011 +0200 ALSA: hda - Preserve input pin-ctl bits in HP-automute for VIA codec For smart51 pins, we need to preserve the input pin-control bits at auto-mute controls instead of overwriting zero or pin-out-only. Otherwise the VREF won't be set properly when smart51 is disabled again. Signed-off-by: Takashi Iwai commit 6e969d9155a4ee7bce800dfbee02099105ca5b97 Author: Takashi Iwai Date: Mon Jul 11 11:28:13 2011 +0200 ALSA: hda - Set line-out pin-ctls properly when indep-HP mode changes When Independent-HP mode is changed for VIA, the driver needs to re-issue the auto-mute check so that the line-out pins are set properly without influence of HP pin state. Signed-off-by: Takashi Iwai commit e4609747a33b903c03346eea20d811fafd462269 Merge: 69d042d c845841 Author: Tony Lindgren Date: Mon Jul 11 02:08:37 2011 -0700 Merge branch 'prcm-fixes-3.1' of git://git.pwsan.com/linux-2.6 into fixes-part-2 commit 69d042d168ddc683fb51a3c56b90143a1bc49157 Author: Paul Walmsley Date: Fri Jul 1 08:52:25 2011 +0000 ASoC: omap: McBSP: fix build breakage on OMAP1 After commits d13586574d373ef40acd4725c9a269daa355e412 ("OMAP: McBSP: implement functional clock switching via clock framework") and cf4c87abe238ec17cd0255b4e21abd949d7f811e ("OMAP: McBSP: implement McBSP CLKR and FSR signal muxing via mach-omap2/mcbsp.c"), any OMAP1 board (such as the AMS Delta) that uses the ASoC McBSP driver will no longer build: sound/built-in.o: In function `omap_mcbsp_dai_set_dai_sysclk': last.c:(.text+0x24ff8): undefined reference to `omap2_mcbsp1_mux_clkr_src' last.c:(.text+0x2500c): undefined reference to `omap2_mcbsp1_mux_fsr_src' make: *** [vmlinux] Error 1 Fix by defining three OMAP1-only dummy functions for omap2_mcbsp1_mux_clkr_src(), omap2_mcbsp1_mux_fsr_src(), and omap2_mcbsp_set_clks_src(). Normally, code that is OMAP SoC-revision-specific like this should go under the arch/arm/*omap* directories, and get abstracted away from drivers via struct platform_data function pointers. This doesn't work in this case since there doesn't appear to be any convenient way to access struct platform_data (or something like it) in the current design of the sound/soc/omap/omap-mcbsp.c driver. Reported by Janusz Krzysztofik and Tony Lindgren . Janusz also posted a patch to fix this at: http://www.spinics.net/lists/linux-omap/msg39560.html (among other places), but the following approach seems less dependent on compiler behavior. This patch passes build tests for ams_delta_defconfig and omap2plus_defconfig, but since I don't have an AMS Delta here, I can't boot test it on that platform. Signed-off-by: Paul Walmsley Cc: Janusz Krzysztofik Cc: Tony Lindgren Cc: Jarkko Nikula Cc: Peter Ujfalusi Cc: Mark Brown Cc: Liam Girdwood Signed-off-by: Tony Lindgren commit f610b74b14d74a069f61583131e689550fd5bab3 Author: David S. Miller Date: Mon Jul 11 01:37:28 2011 -0700 ipv4: Use universal hash for ARP. We need to make sure the multiplier is odd. Signed-off-by: David S. Miller commit 21ce0b65272b85f122455818b0c69740945b451a Author: Takashi Iwai Date: Mon Jul 11 10:33:47 2011 +0200 ALSA: hda - Via Fix speaker-mute checks in VIA driver When the line-jack is plugged/unplugged, the driver must check also the headphone jack state in addition to the line-out jack. Currently it checks only the line-out state and ignores the headphone. Signed-off-by: Takashi Iwai commit cd0893369ca85fd11bc517081b2d9079d2ef2f90 Author: David S. Miller Date: Mon Jul 11 01:28:12 2011 -0700 neigh: Store hash shift instead of mask. And mask the hash function result by simply shifting down the "->hash_shift" most significant bits. Currently which bits we use is arbitrary since jhash produces entropy evenly across the whole hash function result. But soon we'll be using universal hashing functions, and in those cases more entropy exists in the higher bits than the lower bits, because they use multiplies. Signed-off-by: David S. Miller commit 226d3a151108970cb0c0c74c3a0ec2c073fdc186 Author: Jonathan Cameron Date: Mon Jun 6 14:52:25 2011 +0100 pcmcia: pxa2xx/trizeps4: remove unnecessary ifdefs Signed-off-by: Jonathan Cameron Acked-by: Marek Vasut Signed-off-by: Eric Miao commit b34e7b4f05730e6f26e9d8d3736271b0e4cdeac2 Author: Dmitry Eremin-Solenikov Date: Tue Jun 14 09:21:05 2011 +0400 ARM: scoop: drop pcmcia_init callback A pcmcia_init callback isn't used on any of the platforms. Drop it. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Eric Miao commit 4c738b2568340f5a99618d75293d7ee6a9267b1b Author: Philipp Zabel Date: Thu Apr 28 22:19:32 2011 +0200 ARM: pxa/mioa701: use gpio arrays for global and gsm gpios gpio_request_array() / gpio_free_array() are functional replacements for mio_gpio_request() / mio_gpio_free(), which are now obsolete. Signed-off-by: Philipp Zabel Acked-by: Robert Jarzmik Signed-off-by: Eric Miao commit 6d49e6cfb2a199256ec851b1855dd86de83c5092 Author: Philipp Zabel Date: Wed Apr 27 20:50:19 2011 +0200 ARM: pxa/hx4700: use gpio arrays for global gpios gpio_request_array() is a functional replacement for hx4700_gpio_request(), which is now obsolete. Signed-off-by: Philipp Zabel Signed-off-by: Eric Miao commit 5db15f86830070e0905940c5d3d92d12c0874424 Author: Philipp Zabel Date: Thu Apr 28 22:21:04 2011 +0200 ARM: pxa/magician: use gpio arrays for backlight and global gpios Use gpio_request_array() / gpio_free_array() in backlight init and exit functions and global gpio initialization. Signed-off-by: Philipp Zabel Signed-off-by: Eric Miao commit 250ccd4f343b8ecb50f94d27ef5dc131db337024 Author: Philipp Zabel Date: Thu Apr 21 15:57:04 2011 +0200 ARM: pxa/magician: fix MAGICIAN_EGPIO_BASE, align with NR_BUILTIN_GPIO Commit "ARM: pxa: align NR_BUILTIN_GPIO with GPIO interrupt number" increased NR_BUILTIN_GPIO from 128 to PXA_GPIO_IRQ_NUM (192). Adjust the previously hardcoded MAGICIAN_EGPIO_BASE accordingly. Signed-off-by: Philipp Zabel Signed-off-by: Eric Miao commit b52f0db50b8058567339dd5540e825fbd7df01dc Author: Igor Grinberg Date: Mon May 9 14:41:49 2011 +0300 ARM: pxa/cm-x300: update cm_x300_defconfig Signed-off-by: Igor Grinberg Signed-off-by: Eric Miao commit 32de50e2416bc3da8c5b68f7afc280bcef630c23 Author: Igor Grinberg Date: Mon May 9 14:41:48 2011 +0300 ARM: pxa/cm-x300: minor style cleanup introduce pr_fmt, so the pr_* calls will be cleaner Signed-off-by: Igor Grinberg Signed-off-by: Eric Miao commit 5a009df1f200efa49658b0e9c7ad056d59fbefe4 Author: Igor Grinberg Date: Mon May 9 14:41:47 2011 +0300 ARM: pxa/cm-x300: GPIO cleanup use gpio_request_() instead of multiple gpiolib calls Signed-off-by: Igor Grinberg Signed-off-by: Eric Miao commit 6c7b3ea52e345ab614edb91d3f0e9f3bb3713871 Author: Igor Grinberg Date: Mon May 9 14:41:46 2011 +0300 ARM: pxa/cm-x300: fix V3020 RTC functionality While in sleep mode the CS# and other V3020 RTC GPIOs must be driven high, otherwise V3020 RTC fails to keep the right time in sleep mode. Signed-off-by: Igor Grinberg Cc: stable@kernel.org Signed-off-by: Eric Miao commit 150f164ef20c2438fb845d3d90c1e2e43a674fe5 Author: Eric Miao Date: Wed May 18 15:48:32 2011 +0800 ARM: pxa/saarb: make use of pxa3xx_map_io() Signed-off-by: Eric Miao commit e1d62c9bd8779a8e4a335803f0fced9e614d0a9f Merge: 354a183 c402c0d Author: Tony Lindgren Date: Sun Jul 10 23:18:06 2011 -0700 Merge branch 'prcm-cleanup-3.1' of git://git.pwsan.com/linux-2.6 into cleanup-part-3 commit 536628d0983f1c6a7ccece28ded635661aa30319 Author: Jesper Juhl Date: Sat Jul 9 21:16:22 2011 +0000 SH: static should be at beginning of declaration Make sure that the 'static' keywork is at the beginning of declaration for arch/sh/* This gets rid of warnings like warning: ‘static’ is not at beginning of declaration when building with -Wold-style-declaration (and/or -Wextra which also enables it). Signed-off-by: Jesper Juhl Signed-off-by: Paul Mundt commit 1522043bf73ef0e9e61dc512a0f3cdbec1cbf89f Author: Kuninori Morimoto Date: Wed Jul 6 02:54:11 2011 +0000 sh: move CLKDEV_xxx_ID macro to sh_clk.h Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 354a183f536a8edf6cb80ee3e3f393736e278810 Author: Russell King - ARM Linux Date: Sun Jul 10 23:05:34 2011 -0700 Convert OMAPs 32kHz clocksource implementation to use the generic MMIO clocksource support. This achieves several things: 1. It means we get rid of all these helper functions which frankly should never have been necessary. 2. It means omap_readl() inside these helper functions does not appear in ftrace output. Another plus is that we avoid the overhead of calculating the address to read each time, but a minus is that we use readl() which has a barrier. Signed-off-by: Russell King [tony@atomide.com: updated to use ioremap] Signed-off-by: Tony Lindgren commit 4857c70dcecdcf14e6236f31ca8abc5fab0cd8f8 Author: Kuninori Morimoto Date: Wed Jul 6 01:18:53 2011 +0000 sh: clock-shx3: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 1f17e2a023b79266ba4533ac7277f21b4275caa6 Author: Kuninori Morimoto Date: Wed Jul 6 01:18:47 2011 +0000 sh: clock-sh7786: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 9b81308b86015affb3460ea05b7345bdcda32a77 Author: Kuninori Morimoto Date: Wed Jul 6 01:18:37 2011 +0000 sh: clock-sh7785: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 9b41757107a7fcabcf83bf2f04938dc8e596464c Author: Kuninori Morimoto Date: Wed Jul 6 01:18:27 2011 +0000 sh: clock-sh7757: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit ee0c2eff4f23b78cf2f425599b2235aada90ed63 Author: Kuninori Morimoto Date: Wed Jul 6 01:18:19 2011 +0000 sh: clock-sh7366: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 074fcdfff6c45e7ccb24cbc9fc229805d451e7e6 Author: Kuninori Morimoto Date: Wed Jul 6 01:18:12 2011 +0000 sh: clock-sh7343: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit ac6b4fd13fab57944f7ebf396719022e0996b6ac Author: Kuninori Morimoto Date: Wed Jul 6 01:18:03 2011 +0000 sh: clock-sh7722: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 23bcc04d0caaa21e0107876a34b4fd50baecddd1 Author: Kuninori Morimoto Date: Wed Jul 6 01:17:55 2011 +0000 sh: clock-sh7724: add CLKDEV_ICK_ID for cleanup Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 54f7c11647d093c8e1712f1bbe89c9bd4ee23b56 Author: Kuninori Morimoto Date: Tue Jul 5 09:38:21 2011 +0000 sh: clock-sh7366: modify I2C clock settings I2C doesn't work without this patch on SH7366 Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 36d1753ac124cb1bf7b8f6856b35489bf45a2f86 Author: Kuninori Morimoto Date: Tue Jul 5 09:38:09 2011 +0000 sh: clock-sh7343: modify I2C clock settings I2C doesn't work without this patch on SH7343 Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 16d9856a02d6f10d42717fdc4e42567061c539f2 Author: Kuninori Morimoto Date: Tue Jul 5 09:37:55 2011 +0000 sh: clock-sh7723: modify I2C clock settings I2C doesn't work without this patch on SH7723 Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 2125a8a69b9909c1fa33c90fb9498a7be4a46bec Author: Kuninori Morimoto Date: Tue Jul 5 09:37:33 2011 +0000 sh: clock-sh7722: modify I2C clock settings I2C doesn't work without this patch on SH7722 Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 1ec353a04e76c5737e84e2e31692bf8d8840075e Author: Kuninori Morimoto Date: Tue Jul 5 09:37:02 2011 +0000 sh: clock-sh7724: modify I2C clock settings I2C doesn't work without this patch on SH7724 Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit e2fd318e3a9208245ee1041f6d413c8593fba29d Author: Ilia Kolomisnky Date: Sun Jul 10 08:47:44 2011 +0300 Bluetooth: Fixes l2cap "command reject" reply according to spec There can 3 reasons for the "command reject" reply produced by the stack. Each such reply should be accompanied by the relevand data ( as defined in spec. ). Currently there is one instance of "command reject" reply with reason "invalid cid" wich is fixed. Also, added clean-up definitions related to the "command reject" replies. Signed-off-by: Ilia Kolomisnky Signed-off-by: Gustavo F. Padovan commit 22612283f7da1ce9849d9b3716010b07a0446fd9 Author: Tao Ma Date: Mon Jul 11 00:04:34 2011 -0400 ext4: Change the wrong param comment for ext4_trim_all_free at ext4_trim_all_free() comment, there is no longer an @e4b parameter, instead it is @group. Reported-by: Andreas Dilger Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 3d56b8d2c74cc3f375ce332b3ac3519e009d79ee Author: Tao Ma Date: Mon Jul 11 00:03:38 2011 -0400 ext4: Speed up FITRIM by recording flags in ext4_group_info In ext4, when FITRIM is called every time, we iterate all the groups and do trim one by one. It is a bit time wasting if the group has been trimmed and there is no change since the last trim. So this patch adds a new flag in ext4_group_info->bb_state to indicate that the group has been trimmed, and it will be cleared if some blocks is freed(in release_blocks_on_commit). Another trim_minlen is added in ext4_sb_info to record the last minlen we use to trim the volume, so that if the caller provide a small one, we will go on the trim regardless of the bb_state. A simple test with my intel x25m ssd: df -h shows: /dev/sdb1 40G 21G 17G 56% /mnt/ext4 Block size: 4096 run the FITRIM with the following parameter: range.start = 0; range.len = UINT64_MAX; range.minlen = 1048576; without the patch: [root@boyu-tm linux-2.6]# time ./ftrim /mnt/ext4/a real 0m5.505s user 0m0.000s sys 0m1.224s [root@boyu-tm linux-2.6]# time ./ftrim /mnt/ext4/a real 0m5.359s user 0m0.000s sys 0m1.178s [root@boyu-tm linux-2.6]# time ./ftrim /mnt/ext4/a real 0m5.228s user 0m0.000s sys 0m1.151s with the patch: [root@boyu-tm linux-2.6]# time ./ftrim /mnt/ext4/a real 0m5.625s user 0m0.000s sys 0m1.269s [root@boyu-tm linux-2.6]# time ./ftrim /mnt/ext4/a real 0m0.002s user 0m0.000s sys 0m0.001s [root@boyu-tm linux-2.6]# time ./ftrim /mnt/ext4/a real 0m0.002s user 0m0.000s sys 0m0.001s A big improvement for the 2nd and 3rd run. Even after I delete some big image files, it is still much faster than iterating the whole disk. [root@boyu-tm test]# time ./ftrim /mnt/ext4/a real 0m1.217s user 0m0.000s sys 0m0.196s Cc: Lukas Czerner Reviewed-by: Andreas Dilger Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit b3d4c2b10b68d205d3eb1b5c17dcb4649a502798 Author: Tao Ma Date: Mon Jul 11 00:01:52 2011 -0400 ext4: Add new ext4 trim tracepoints Add ext4_trim_extent and ext4_trim_all_free. Reviewed-by: Lukas Czerner Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 169ddc3ec83b5f732e51d975befb191d50795844 Author: Tao Ma Date: Mon Jul 11 00:00:07 2011 -0400 ext4: speed up group trim with the right free block count When we trim some free blocks in a group of ext4, we need to calculate the free blocks properly and check whether there are enough freed blocks left for us to trim. Current solution will only calculate free spaces if they are large for a trim which isn't appropriate. Let us see a small example: a group has 1.5M free which are 300k, 300k, 300k, 300k, 300k. And minblocks is 1M. With current solution, we have to iterate the whole group since these 300k will never be subtracted from 1.5M. But actually we should exit after we find the first 2 free spaces since the left 3 chunks only sum up to 900K if we subtract the first 600K although they can't be trimed. Reviewed-by: Andreas Dilger Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 22f10457432387615fa1ae6e0375d9cacc50819b Author: Tao Ma Date: Sun Jul 10 23:52:37 2011 -0400 ext4: fix trim length underflow with small trim length In 0f0a25b, we adjust 'len' with s_first_data_block - start, but it could underflow in case blocksize=1K, fstrim_range.len=512 and fstrim_range.start = 0. In this case, when we run the code: len -= first_data_blk - start; len will be underflow to -1ULL. In the end, although we are safe that last_group check later will limit the trim to the whole volume, but that isn't what the user really want. So this patch fix it. It also adds the check for 'start' like ext3 so that we can break immediately if the start is invalid. Cc: Lukas Czerner Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 12706394bcaa48e3d5e19c97d7b4e5683ebb12fb Author: Theodore Ts'o Date: Sun Jul 10 22:37:50 2011 -0400 ext4: add tracepoint for ext4_journal_start This will help debug who is responsible for starting a jbd2 transaction. Signed-off-by: "Theodore Ts'o" commit 4862fd6047ed02e2726667c54d35f538eecc56aa Author: Theodore Ts'o Date: Sun Jul 10 22:05:08 2011 -0400 jbd2: remove jbd2_dev_to_name() from jbd2 tracepoints Using function calls in TP_printk causes perf heartburn, so print the MAJOR/MINOR device numbers instead. Signed-off-by: "Theodore Ts'o" commit 97fb35e413f256ded07b88c73b3d932ec31ea84e Author: Tetsuo Handa Date: Fri Jul 8 13:25:53 2011 +0900 TOMOYO: Enable conditional ACL. Enable conditional ACL by passing object's pointers. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 5b636857fee642694e287e3a181b523b16098c93 Author: Tetsuo Handa Date: Fri Jul 8 13:24:54 2011 +0900 TOMOYO: Allow using argv[]/envp[] of execve() as conditions. This patch adds support for permission checks using argv[]/envp[] of execve() request. Hooks are in the last patch of this pathset. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 2ca9bf453bdd478bcb6c01aa2d0bd4c2f4350563 Author: Tetsuo Handa Date: Fri Jul 8 13:23:44 2011 +0900 TOMOYO: Allow using executable's realpath and symlink's target as conditions. This patch adds support for permission checks using executable file's realpath upon execve() and symlink's target upon symlink(). Hooks are in the last patch of this pathset. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 8761afd49ebff8ae04c1a7888af090177441d07d Author: Tetsuo Handa Date: Fri Jul 8 13:22:41 2011 +0900 TOMOYO: Allow using owner/group etc. of file objects as conditions. This patch adds support for permission checks using file object's DAC attributes (e.g. owner/group) when checking file's pathnames. Hooks for passing file object's pointers are in the last patch of this pathset. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 2066a36125fcbf5220990173b9d8e8bc49ad7538 Author: Tetsuo Handa Date: Fri Jul 8 13:21:37 2011 +0900 TOMOYO: Allow using UID/GID etc. of current thread as conditions. This patch adds support for permission checks using current thread's UID/GID etc. in addition to pathnames. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 575a1d4bdfa2ea9fc10733013136145b497e1be0 Author: Jiaying Zhang Date: Sun Jul 10 20:07:25 2011 -0400 ext4: free allocated and pre-allocated blocks when check_eofblocks_fl fails Upon corrupted inode or disk failures, we may fail after we already allocate some blocks from the inode or take some blocks from the inode's preallocation list, but before we successfully insert the corresponding extent to the extent tree. In this case, we should free any allocated blocks and discard the inode's preallocated blocks because the entries in the inode's preallocation list may be in an inconsistent state. Signed-off-by: Jiaying Zhang Signed-off-by: "Theodore Ts'o" Cc: stable@kernel.org commit 7132de744ba76930d13033061018ddd7e3e8cd91 Author: Maxim Patlasov Date: Sun Jul 10 19:37:48 2011 -0400 ext4: fix i_blocks/quota accounting when extent insertion fails The current implementation of ext4_free_blocks() always calls dquot_free_block This looks quite sensible in the most cases: blocks to be freed are associated with inode and were accounted in quota and i_blocks some time ago. However, there is a case when blocks to free were not accounted by the time calling ext4_free_blocks() yet: 1. delalloc is on, write_begin pre-allocated some space in quota 2. write-back happens, ext4 allocates some blocks in ext4_ext_map_blocks() 3. then ext4_ext_map_blocks() gets an error (e.g. ENOSPC) from ext4_ext_insert_extent() and calls ext4_free_blocks(). In this scenario, ext4_free_blocks() calls dquot_free_block() who, in turn, decrements i_blocks for blocks which were not accounted yet (due to delalloc) After clean umount, e2fsck reports something like: > Inode 21, i_blocks is 5080, should be 5128. Fix? because i_blocks was erroneously decremented as explained above. The patch fixes the problem by passing the new flag EXT4_FREE_BLOCKS_NO_QUOT_UPDATE to ext4_free_blocks(), to request that the dquot_free_block() call be skipped. Signed-off-by: Maxim Patlasov Signed-off-by: "Theodore Ts'o" Cc: stable@kernel.org commit bdda82162837a20e591ac01b306dc8f052270510 Author: Dmitry Torokhov Date: Sat Jul 9 12:41:46 2011 -0700 Input: gpio_keys - switch to using SIMPLE_DEV_PM_OPS This reduces amount #ifdeds in the code. Signed-off-by: Dmitry Torokhov commit fd05d08920b54d189aa247c5c5701a08e539ed0b Author: David Jander Date: Sat Jul 9 12:41:46 2011 -0700 Input: gpio_keys - add support for device-tree platform data This patch enables fetching configuration data, which is normally provided via platform_data, from the device-tree instead. If the device is configured from device-tree data, the platform_data struct is not used, and button data needs to be allocated dynamically. Big part of this patch deals with confining pdata usage to the probe function, to make this possible. Signed-off-by: David Jander Signed-off-by: Dmitry Torokhov commit eadba0c9c41bfa840b0f1e9ee369a869c2a322b3 Author: Edwin van Vliet Date: Sun Jul 10 16:07:28 2011 -0700 Input: aiptek - remove double define Constant AIPTEK_TOOL_BUTTON_PEN_MODE was defined twice. Signed-off-by: Edwin van Vliet Reviewed-by: Jesper Juhl Signed-off-by: Dmitry Torokhov commit a07405b7802691d29ab3b23bdc76ee6d006aad0b Author: Justin TerAvest Date: Sun Jul 10 22:09:19 2011 +0200 cfq: Remove special treatment for metadata rqs. There is no consistency among filesystems from what bios (or requests) are marked as being metadata. It's interesting to expose this in traces, but we shouldn't schedule the requests differently based on whether or not they're marked as being metadata. Signed-off-by: Justin TerAvest Signed-off-by: Jens Axboe commit 1ad920556f32a5a127397ca461d1a1faaf22c4e0 Merge: f67df6c 727e18b Author: Tony Lindgren Date: Sun Jul 10 11:48:26 2011 -0700 Merge branch 'cleanup-part-2' into devel-board Conflicts: arch/arm/mach-omap2/board-4430sdp.c arch/arm/mach-omap2/board-rx51-peripherals.c commit d84e0bd7971eb8357c700151ee4e8e4101ee65fa Author: Daniel Baluta Date: Sun Jul 10 07:04:04 2011 -0700 skbuff: update struct sk_buff members comments Rearrange struct sk_buff members comments to follow their definition order. Also, add missing comments for ooo_okay and dropcount members. Signed-off-by: Daniel Baluta Signed-off-by: David S. Miller commit db47cccebd74e575963bc80cc5ac926399388a21 Merge: 665d001 a530257 ad03f1c bf1e077 Author: Paul Walmsley Date: Sun Jul 10 06:04:55 2011 -0600 Merge branches 'omap4_clockdomain_hwmod_3.1', 'clock_debugfs_a_3.1', 'omap4_clock_auxclk_3.1' and 'omap_device_a_3.1' into prcm-devel-3.1 commit a53025724052b2b1edbc982a4a248784638f563d Author: Jon Hunter Date: Sun Jul 10 05:57:33 2011 -0600 OMAP: Add debugfs node to show the summary of all clocks Add a debugfs node called "summary" to /sys/kernel/debug/clock/ that displays a quick summary of all clocks registered in the "clocks" structure. The format of the output from this node is: This debugfs node was very helpful for taking a quick snapshot of the linux clock tree for OMAP and ensuring clock frequencies calculated by the kernel were indeed correct. This patch helped uncover some bugs in the linux clock tree for OMAP4. Signed-off-by: Jon Hunter Signed-off-by: Paul Walmsley commit 665d001338b494d6d62810aa99b4c0fa1a0884b9 Author: Rajendra Nayak Date: Sun Jul 10 05:57:07 2011 -0600 OMAP2+: hwmod: Follow the recommended PRCM module enable sequence On OMAP4, the PRCM recommended sequence for enabling a module after power-on-reset is: -1- Force clkdm to SW_WKUP -2- Enabling the clocks -3- Configure desired module mode to "enable" or "auto" -4- Wait for the desired module idle status to be FUNC -5- Program clkdm in HW_AUTO(if supported) This sequence applies to all older OMAPs' as well, however since they use autodeps, it makes sure that no clkdm is in IDLE, and hence not requiring a force SW_WKUP when a module is being enabled. OMAP4 does not need to support autodeps, because of the dyanamic dependency feature, wherein the HW takes care of waking up a clockdomain from idle and hence the module, whenever an interconnect access happens to the given module. Implementing the sequence for OMAP4 requires the clockdomain handling that is currently done in clock framework to be done as part of hwmod framework since the step -4- above to "Wait for the desired module idle status to be FUNC" is done as part of hwmod framework. Signed-off-by: Rajendra Nayak [b-cousson@ti.com: Adapt it to the new clkdm hwmod attribute and API] Signed-off-by: Benoit Cousson Cc: Paul Walmsley [paul@pwsan.com: dropped mach-omap2/clock.c changes; modified to only call the clockdomain code if oh->clkdm is set; disable clock->clockdomain interaction on OMAP4] Signed-off-by: Paul Walmsley commit 12706c542574ea0127a13815efe59ca9ba6d88d7 Author: Paul Walmsley Date: Sun Jul 10 05:57:06 2011 -0600 OMAP2+: clock: allow per-SoC clock init code to prevent clockdomain calls from clock code The OMAP2/3 clock code was written to notify the clockdomain code when the first clock in a clockdomain is enabled and when the last enabled clock in a clockdomain is disabled. OMAP4 requires a different approach: the hwmod code needs to signal the clockdomain code when to force-enable and auto-idle a clockdomain during the IP block enable process. The current conjecture is that once that hwmod sequence is implemented, it will no longer be necessary for the clock code to call into the clockdomain code for "optional clocks" on OMAP4. Add a static flag to the OMAP2+ clock code, clkdm_control, that by default preserves the OMAP2/3 behavior. Also add a function, omap2_clk_disable_clkdm_control(), intended to be called from OMAP4 and beyond clock initcalls, that disables the old behavior. Part of this patch was originally based on a patch by Rajendra Nayak . Signed-off-by: Paul Walmsley Cc: Benoît Cousson Cc: Rajendra Nayak commit 555e74ea08bfc04a0136f976cbaa200addf1ba87 Author: Rajendra Nayak Date: Sun Jul 10 05:56:55 2011 -0600 OMAP2+: clockdomain: Add per clkdm lock to prevent concurrent state programming Since the clkdm state programming is now done from within the hwmod framework (which uses a per-hwmod lock) instead of the being done from the clock framework (which used a global lock), there is now a need to have per-clkdm locking to prevent races between different hwmods/modules belonging to the same clock domain concurrently programming the clkdm state. Signed-off-by: Rajendra Nayak Signed-off-by: Benoit Cousson Cc: Paul Walmsley Signed-off-by: Paul Walmsley commit b86cfb52a145d8ddad66b98c39c6764f3883cd5a Author: Rajendra Nayak Date: Sun Jul 10 05:56:54 2011 -0600 OMAP2+: PM: idle clkdms only if already in idle The omap_set_pwrdm_state function forces clockdomains to idle, without checking the existing idle state programmed, instead based solely on the HW capability of the clockdomain to support idle. This is wrong and the clockdomains should be idled post a state_switch *only* if idle transitions on the clockdomain were already enabled. Signed-off-by: Rajendra Nayak Cc: Paul Walmsley Acked-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 32a363c0f5b44cb4e9adfe238dfc4efa9270f7ae Author: Paul Walmsley Date: Sun Jul 10 05:56:54 2011 -0600 OMAP2+: clockdomain: add clkdm_in_hwsup() Add a new function, clkdm_in_hwsup(), that returns true if a clockdomain is configured for hardware-supervised idle. It does not actually read the hardware; rather, it checks an internal flag in the struct clockdomain, which is changed when the clockdomain is switched in and out of hardware-supervised idle. This should be safe, since all changes to the idle mode should pass through the clockdomain code. Based on a set of patches by Rajendra Nayak which do the same thing by checking the hardware bits. This approach should be faster and more compact. Signed-off-by: Paul Walmsley Cc: Rajendra Nayak Cc: Todd Poynor Cc: Benoît Cousson commit 113a74137f5c85f2c7914e78350f70247ef9447c Author: Benoit Cousson Date: Sun Jul 10 05:56:54 2011 -0600 OMAP2+: clockdomain: Add 2 APIs to control clockdomain from hwmod framework Duplicate the existing API for clockdomain enable from clock to enable a clock domain from hwmod framework. This will be needed when the hwmod framework will move from the current clock centric approach to the module based approach. These APIs are returning 0 for the moment for OMAP2 and OMAP3 until their hwmods are updated with the clksm attribute. Signed-off-by: Benoit Cousson Cc: Kevin Hilman Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit a5122ff8ceb2b1f207965a3608d3da3af832e513 Author: Vaibhav Bedia Date: Sun Jul 10 05:56:53 2011 -0600 OMAP: clockdomain: Remove redundant call to pwrdm_wait_transition() The call to pwrdm_wait_transition() in clkdm_clk_enable() is redundant since the function pwrdm_clkdm_state_switch() which is called next also does the same thing. Signed-off-by: Vaibhav Bedia Signed-off-by: Paul Walmsley commit 45c38252d76a96e6e0e05f982ca44096191a8eea Author: Benoit Cousson Date: Sun Jul 10 05:56:33 2011 -0600 OMAP4: hwmod: Introduce the module control in hwmod control Take advantage of the explicit modulemode control to fix the way parents clocks are managed. A module must be disabled before any parents are disabled. That programming model was not possible with the previous implementation that was considering a modulemode as a leaf clock node managed by the clock fmwk. This was leading to bad crash upon disable when the parent clock was gated before the module completed its transition to idle. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 288d6a161819ee99b3a6e2972c5b0d9ede22c553 Author: Benoit Cousson Date: Sun Jul 10 05:56:32 2011 -0600 OMAP4: cm: Add two new APIs for modulemode control In OMAP4, a new programming model based on module control instead of clock control was introduced. Expose two APIs to allow the upper layer (omap_hwmod) to control the module mode independently of the parent clocks management. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak [paul@pwsan.com: renamed 'omap4_cm_' fns to 'omap4_cminst_'; cleaned up kerneldoc] Signed-off-by: Paul Walmsley commit 03fdefe53a3f057760751d958209f0c5507c8e40 Author: Benoit Cousson Date: Sun Jul 10 05:56:32 2011 -0600 OMAP4: hwmod data: Add modulemode entry in omap_hwmod structure Add a new field to provide the mode supported by the module. The mode will control the way mandatory clocks are managed by the PRCM. 0 : Module is temporarily disabled by SW. OCP access to module are stalled. Can be used to change timing parameter of GPMC module. 1 : Module is managed automatically by HW according to clock domain transition. A clock domain sleep transition put module into idle. A wakeup domain transition put it back into function. If CLKTRCTRL=3, any OCP access to module is always granted. Module clocks may be gated according to the clock domain state. 2 : Module is explicitly enabled. Interface clock (if not used for functions) may be gated according to the clock domain state. Functional clocks are guarantied to stay present. As long as in this configuration, power domain sleep transition cannot happen. Some modules will have a modulemode initialized at 1 (HWCTRL) by default. This is the case for interconnect and simple module like GPIO, WDT, MAILBOX. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 27bb00b58e04e5d8442335f694f2a1b6c31b184d Author: Benoit Cousson Date: Sun Jul 10 05:56:32 2011 -0600 OMAP4: hwmod data: Add PRM context register offset Add a 'context_offs' entry in the prcm.omap4 structure to all IPs when applicable. The offset will be used to retrieve the per module context lost information now available on OMAP4. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit ad53ebb725b5c8dce529cb8cb172d5e8c9bb7bda Author: Benoit Cousson Date: Sun Jul 10 05:56:31 2011 -0600 OMAP4: prm: Remove deprecated functions The new prminst_xxx accessors based on partition and offset is now used, so removed all the previous prcm_xxx accessors. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak [paul@pwsan.com: remove fn prototypes also] Signed-off-by: Paul Walmsley commit e54433f10d67f8e2cf786e8173281f1caeda1959 Author: Benoit Cousson Date: Sun Jul 10 05:56:31 2011 -0600 OMAP4: prm: Replace warm reset API with the offset based version The warm reset function was still using the obsolete API. Replace it by the new one and move the file to the proper c file. Change the function names to stick to the file convention as suggested by Paul Walmsley : prm_xxx -> prminst_xxx Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit eaac329dfa6d3a4025242bf34d33aa3cb9df9f9f Author: Benoit Cousson Date: Sun Jul 10 05:56:31 2011 -0600 OMAP4: hwmod: Replace RSTCTRL absolute address with offset macros The RSTCTRL register was accessed using an absolute address. The usage of hardcoded macros to calculate virtual address from physical one should be avoided as much as possible. The usage of an offset will allow future improvement like migration from the current architecture code toward a module driver. Update prm_xxx accessors, move definition to the proper header file and update copyrights. Change the s16 register offset parameter to u16. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak [paul@pwsan.com: use '_prminst_' in function names that are part of the prminst44xx.c file] Signed-off-by: Paul Walmsley commit 11b10341bd12c87a8409c69cdcd7ee898400842f Author: Benoit Cousson Date: Sun Jul 10 05:56:30 2011 -0600 OMAP: hwmod: Wait the idle status to be disabled It is mandatory to wait for a module to be in disabled state before potentially disabling source clock or re-asserting a reset. omap_hwmod_idle and omap_hwmod_shutdown does not wait for the module to be fully idle. Add a cm_xxx accessor to wait the clkctrl idle status to be disabled. Fix hwmod_[idle|shutdown] to use this API. Based on Rajendra's initial patch. Please note that most interconnects hwmod will return one timeout because it is impossible for them to be in idle since the processor is accessing the registers though the interconnect. Signed-off-by: Benoit Cousson Signed-off-by: Rajendra Nayak Cc: Paul Walmsley Cc: Todd Poynor [paul@pwsan.com: move cpu_is_*() tests to the top of _wait_target_disable(); incorporate some feedback from Todd] Signed-off-by: Paul Walmsley commit d0f0631ddc61026dca71b5b679803000d70fde50 Author: Benoit Cousson Date: Sun Jul 10 05:56:30 2011 -0600 OMAP4: hwmod: Replace CLKCTRL absolute address with offset macros The CLKCTRL register was accessed using an absolute address. The usage of hardcoded macros to calculate virtual address from physical one should be avoided as much as possible. The usage of a offset will allow future improvement like migration from the current architecture code toward a module driver. Update cm_xxx accessor, move definition to the proper header file and update copyrights. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Cc: Todd Poynor [paul@pwsan.com: renamed 'omap4_cm_' fns to 'omap4_cminst_'; removed empty fn prototype section from cm44xx.h; incorporated comments from Todd; documented some functions] Signed-off-by: Paul Walmsley commit 6ae769973adf1325115d0dfe3fec17e26cbacd81 Author: Benoit Cousson Date: Sun Jul 10 05:56:30 2011 -0600 OMAP2+: hwmod: Init clkdm field at boot time At boot time, lookup the clkdm_name to get the clkdm structure pointer for further usage. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit a5322c6f3a3b0a81347c57de2f3a86b851b49bcf Author: Benoit Cousson Date: Sun Jul 10 05:56:29 2011 -0600 OMAP4: hwmod data: Add clock domain attribute In OMAP PRCM terminology, the clock domain is defined as a group of IPs that share some clocks and most of the time an interface clock. Every IP does belong to a clockdomain. For the moment the clock domain attribute is affected to a clock node. The issue with that approach, is that a clock might or not belong to a clock domain. Moreover during module transition, it is up to a module to handle properly the clock domain state and not to a clock node. Create a clkdm_name attribute to provide this information per hwmod. Populate this attribute for every OMAP4 hwmod entries. Future cleanup series with remove that information from the OMAP4 clock when it is relevant. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak [paul@pwsan.com: fix the mpuss_clkdm name] Signed-off-by: Paul Walmsley commit ad03f1cb2d44257afa63a2171e84daad931c48cb Author: Rajendra Nayak Date: Sun Jul 10 05:56:14 2011 -0600 OMAP4: clock data: Add missing divider selection for auxclks On OMAP4 the auxclk nodes (part of SCRM) support both divider as well as parent selection. Supporting this requires splitting the existing nodes (which support only parent selection) into two nodes, one for parent and another for divider selection. The nodes for parent selection are named auxclk*_src_ck and the ones for divider selection as auxclk*_ck. Signed-off-by: Rajendra Nayak [b-cousson@ti.com: Rebase on top of clock cleanup and autogen alignement] Signed-off-by: Benoit Cousson Cc: Paul Walmsley Signed-off-by: Paul Walmsley commit bf1e0776cf5e4ef2622de3a4b63f84175b5b48ab Author: Benoit Cousson Date: Sun Jul 10 05:54:12 2011 -0600 OMAP: omap_device: Create clkdev entry for hwmod main_clk Extend the existing function to create clkdev for every optional clocks to add a well one "fck" alias for the main_clk of the omap_hwmod. It will allow to remove these static clkdev entries from the clockXXX_data.c file. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Kevin Hilman Cc: Todd Poynor [paul@pwsan.com: remove all of the "fck" role clkdev aliases from the clock data files; fixed error message] Signed-off-by: Paul Walmsley commit c84584139aaeef7631df152e13cbf319d8e55950 Merge: 9a2a360 a57341f 6d3c55f Author: Paul Walmsley Date: Sun Jul 10 05:44:23 2011 -0600 Merge branches 'powerdomain_fixes_3.1', 'hardware_workarounds_3.1', 'hwmod_dss_fix_3.1' and 'i2c_fixes_3.1' into prcm-fixes-3.1 commit 6d3c55fd4f0f94a9455d30df9414ddb0f755f402 Author: Avinash.H.M Date: Sun Jul 10 05:27:16 2011 -0600 OMAP: hwmod: fix the i2c-reset timeout during bootup The sequence of _ocp_softreset doesn't work for i2c. The i2c module has a special sequence to reset the module. The sequence is - Disable the I2C. - Write to SOFTRESET bit. - Enable the I2C. - Poll on the RESETDONE bit. The sequence is implemented as a function and the i2c_class is updated with the correct 'reset' pointer. omap_hwmod_softreset function is implemented which triggers the softreset by writing into sysconfig register. On following this sequence, i2c module resets properly and timeouts are not seen. Cc: Rajendra Nayak Cc: Paul Walmsley Cc: Benoit Cousson Cc: Kevin Hilman Signed-off-by: Avinash.H.M [paul@pwsan.com: combined this patch with a patch to remove HWMOD_INIT_NO_RESET from the 44xx hwmod flags; change register offset conditional code to use the IP block revision; minor code cleanup] Signed-off-by: Paul Walmsley commit 4d4441a6221ca3a30290045b7b696e5134646449 Author: Andy Green Date: Sun Jul 10 05:27:16 2011 -0600 I2C: OMAP2+: add correct functionality flags to all omap2plus i2c dev_attr This adds the new functionality flags for omap i2c unit to all OMAP2 hwmod definitions Cc: patches@linaro.org Cc: Ben Dooks Reported-by: Peter Maydell Signed-off-by: Andy Green Signed-off-by: Tony Lindgren Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit db791a75299bb6212ec984bdbe4ab581dbc07902 Author: Andy Green Date: Sun Jul 10 05:27:15 2011 -0600 I2C: OMAP2+: Tag all OMAP2+ hwmod defintions with I2C IP revision Since we cannot trust (or even reliably find) the OMAP I2C peripheral unit's own revision register, we must inform the OMAP i2c driver of which IP version it is running on. We do this by tagging the omap_hwmod_class for i2c on all the OMAP2+ platform / cpu specific hwmod init and passing it up to the driver (next patches). Cc: patches@linaro.org Cc: Ben Dooks Reported-by: Peter Maydell Signed-off-by: Andy Green Signed-off-by: Tony Lindgren Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 5a9aaf0cf89dfb776f45b7ef878fd1508faadbf7 Author: Andy Green Date: Sun Jul 10 05:27:15 2011 -0600 I2C: OMAP1/OMAP2+: create omap I2C functionality flags for each cpu_... test These represent the 8 kinds of implementation functionality that up until now were inferred by the 16 remaining cpu_...() tests in the omap i2c driver. Changed to use BIT() as suggested by Balaji T Krishnamoorthy. Cc: patches@linaro.org Cc: Ben Dooks Reported-by: Peter Maydell Signed-off-by: Andy Green Signed-off-by: Tony Lindgren Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit d72fe7883f9f835011cb581aea13e91c6fa2e31d Author: Andy Green Date: Sun Jul 10 05:27:14 2011 -0600 I2C: OMAP2+: Introduce I2C IP versioning constants These represent the two kinds of (incompatible) OMAP I2C peripheral unit in use so far. The constants are in linux/i2c-omap.h so the omap i2c driver can have them too. Cc: patches@linaro.org Cc: Ben Dooks Reported-by: Peter Maydell Signed-off-by: Andy Green Signed-off-by: Tony Lindgren Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 730027216079ef4ab9850a4367ef665554a6ef73 Author: Andy Green Date: Sun Jul 10 05:27:14 2011 -0600 I2C: OMAP2+: increase omap_i2c_dev_attr flags from u8 to u32 As part of removing cpu_...() from the OMAP I2C driver, we need to convert the CPU tests into functionality flags that are set by hwmod class in the same way the IP revision is. More flags are needed than will fit in the existing u8 flags member of omap_i2c_dev_attr. These flags can refer to options inside the IP block but they are most needed for information about cpu implementation specific options that are not part of the IP block itself. For example, how the CPU data bus is wired to the IP block databus differs between OMAP cpus and affects how you must shift the address in the IP block, but is not a feature of the IP block itself. Cc: patches@linaro.org Cc: Ben Dooks Reported-by: Peter Maydell Signed-off-by: Andy Green Signed-off-by: Tony Lindgren Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 3e6005221138bcfc08f1a35b6f9e43b53330e851 Author: Andy Green Date: Sun Jul 10 05:27:14 2011 -0600 I2C: OMAP2+: Set hwmod flags to only allow 16-bit accesses to i2c Peter Maydell noticed when running under QEMU he was getting errors reporting 32-bit access to I2C peripheral unit registers that are documented to be 8 or 16-bit only[1][2] The I2C driver is blameless as it wraps its accesses in a function using __raw_writew and __raw_readw, it turned out it is the hwmod stuff. However the hwmod code already has a flag to force a perhipheral unit to only be accessed using 16-bit operations. This patch applies the 16-bit only flag to the 2430, OMAP3xxx and OMAP44xx hwmod structs. 2420 was already correctly marked up as 16-bit. The 2430 change will need testing by TI as arranged in the comments to the previous patch version. When the 16-bit flag is or-ed with other flags, it is placed first as requested in comments. [1] OMAP4430 Technical reference manual section 23.1.6.2 [2] OMAP3530 Techincal reference manual section 18.6 Cc: patches@linaro.org Cc: Ben Dooks Reported-by: Peter Maydell Signed-off-by: Andy Green Signed-off-by: Tony Lindgren Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit da7cdfac1b0c58d6863532dd3b432c3fbc034978 Author: Tomi Valkeinen Date: Sat Jul 9 20:39:45 2011 -0600 OMAP4: hwmod data: Change DSS main_clk scheme Currently using pm_runtime with DSS requires the DSS driver to enable the DSS functional clock before calling pm_runtime_get(). That makes it impossible to use pm_runtime in DSS as it is meant to be used, with pm_runtime callbacks. This patch changes the hwmod database for OMAP4 so that enabling the hwmod via pm_runtime will also enable the DSS functional clock, allowing us to use pm_runtime properly in DSS driver. The DSS HWMOD side is not really correct, not before nor after this patch, and getting DSS to retention will probably not work currently. However, it is not supported in the mainline kernel anyway, so this won't break anything. So this patch allows us to write the pm_runtime adaptation for the DSS driver the way it should be done, and the HWMOD/PM side can be fixed later. Signed-off-by: Tomi Valkeinen Signed-off-by: Benoit Cousson Signed-off-by: Paul Walmsley commit 775b8ae8707592af9275b8b216c2bf056b3f5d82 Author: Magnus Damm Date: Sun Jul 10 10:39:32 2011 +0200 ARM: mach-shmobile: sh7372 A3RV requires A4LC Add a power domain workaround for the VPU and A3RV on sh7372. The sh7372 data sheet mentions that the VPU is located in the A3RV power domain. The A3RV power domain is not related to A4LC in any way, but testing shows that unless A3RV _and_ A4LC are powered on the VPU test program will bomb out. This issue may be caused by a more or less undocumented dependency on the MERAM block that happens to be located in A4LC. So now we know that the out-of-reset requirement of the VPU is that the MERAM is powered on. This patch adds a workaround for A3RV to make sure A4LC is powered on - this so we can use the VPU even though the LCDCs are in blanking state and A4LC is supposed to be off. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit 18b4f3f5d058b590e7189027eeb5d897742ade0a Author: Magnus Damm Date: Sun Jul 10 10:39:14 2011 +0200 PM / Domains: Export pm_genpd_poweron() in header Allow SoC-specific code to call pm_genpd_poweron(). Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit b9416f03fd9f809225a90f63b2fbc86f90010eab Author: Magnus Damm Date: Sun Jul 10 10:38:53 2011 +0200 ARM: mach-shmobile: sh7372 late pm domain off Add sh7372 specific code to power down unused pm domains. This should really be replaced by some generic PM core code IMO, but until that happens this patch makes sure we don't waste power by leaving unused power domains on. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit 999a4d2a4da0527567e4b17d4da0782509358a83 Author: Magnus Damm Date: Sun Jul 10 10:38:34 2011 +0200 ARM: mach-shmobile: Runtime PM late init callback Add a mach-shmobile specific callback for SoC-specific code to hook into. By having the late_initcall() in a common place we can have multi-SoC/board support in the same kernel binary. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit d24771dec9c62945a5d1c6a37e7a04f5c2a2ae6f Author: Magnus Damm Date: Sun Jul 10 10:38:22 2011 +0200 ARM: mach-shmobile: sh7372 D4 support Add support for the sh7372 D4 power domain. This power domain contains the Coresight-ETM hardware block. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit c1ba5bb5608664b37a3b1ac647e0dd67d46ddc99 Author: Kuninori Morimoto Date: Sun Jul 10 10:12:08 2011 +0200 ARM: mach-shmobile: sh7372 A4MP support Add support for the sh7372 A4MP power domain and hook up the FSI/SPU2 device. Signed-off-by: Kuninori Morimoto Acked-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit a41b64665a79b8be980d450f6e5b9354d7511700 Author: Kuninori Morimoto Date: Sun Jul 10 10:11:57 2011 +0200 ARM: mach-shmobile: sh7372: make sure that fsi is peripheral of spu2 FSI act as peripheral circuits of the SPU2. Signed-off-by: Kuninori Morimoto Acked-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit 1a12d8bd7b2998be01ee55edb64e7473728abb9c Author: Wu Fengguang Date: Sun Aug 29 13:28:09 2010 -0600 writeback: scale IO chunk size up to half device bandwidth Originally, MAX_WRITEBACK_PAGES was hard-coded to 1024 because of a concern of not holding I_SYNC for too long. (At least, that was the comment previously.) This doesn't make sense now because the only time we wait for I_SYNC is if we are calling sync or fsync, and in that case we need to write out all of the data anyway. Previously there may have been other code paths that waited on I_SYNC, but not any more. -- Theodore Ts'o So remove the MAX_WRITEBACK_PAGES constraint. The writeback pages will adapt to as large as the storage device can write within 500ms. XFS is observed to do IO completions in a batch, and the batch size is equal to the write chunk size. To avoid dirty pages to suddenly drop out of balance_dirty_pages()'s dirty control scope and create large fluctuations, the chunk size is also limited to half the control scope. The balance_dirty_pages() control scrope is [(background_thresh + dirty_thresh) / 2, dirty_thresh] which is by default [15%, 20%] of global dirty pages, whose range size is dirty_thresh / DIRTY_FULL_SCOPE. The adpative write chunk size will be rounded to the nearest 4MB boundary. http://bugzilla.kernel.org/show_bug.cgi?id=13930 CC: Theodore Ts'o CC: Dave Chinner CC: Chris Mason CC: Peter Zijlstra Signed-off-by: Wu Fengguang commit e1cbe236013c82bcf9a156e98d7b47efb89d2674 Author: Wu Fengguang Date: Mon Dec 6 22:34:29 2010 -0600 writeback: trace global_dirty_state Add trace event balance_dirty_state for showing the global dirty page counts and thresholds at each global_dirty_limits() invocation. This will cover the callers throttle_vm_writeout(), over_bground_thresh() and each balance_dirty_pages() loop. Signed-off-by: Wu Fengguang commit ffd1f609ab10532e8137b4b981fdf903ef4d0b32 Author: Wu Fengguang Date: Sun Jun 19 22:18:42 2011 -0600 writeback: introduce max-pause and pass-good dirty limits The max-pause limit helps to keep the sleep time inside balance_dirty_pages() within MAX_PAUSE=200ms. The 200ms max sleep means per task rate limit of 8pages/200ms=160KB/s when dirty exceeded, which normally is enough to stop dirtiers from continue pushing the dirty pages high, unless there are a sufficient large number of slow dirtiers (eg. 500 tasks doing 160KB/s will still sum up to 80MB/s, exceeding the write bandwidth of a slow disk and hence accumulating more and more dirty pages). The pass-good limit helps to let go of the good bdi's in the presence of a blocked bdi (ie. NFS server not responding) or slow USB disk which for some reason build up a large number of initial dirty pages that refuse to go away anytime soon. For example, given two bdi's A and B and the initial state bdi_thresh_A = dirty_thresh / 2 bdi_thresh_B = dirty_thresh / 2 bdi_dirty_A = dirty_thresh / 2 bdi_dirty_B = dirty_thresh / 2 Then A get blocked, after a dozen seconds bdi_thresh_A = 0 bdi_thresh_B = dirty_thresh bdi_dirty_A = dirty_thresh / 2 bdi_dirty_B = dirty_thresh / 2 The (bdi_dirty_B < bdi_thresh_B) test is now useless and the dirty pages will be effectively throttled by condition (nr_dirty < dirty_thresh). This has two problems: (1) we lose the protections for light dirtiers (2) balance_dirty_pages() effectively becomes IO-less because the (bdi_nr_reclaimable > bdi_thresh) test won't be true. This is good for IO, but balance_dirty_pages() loses an important way to break out of the loop which leads to more spread out throttle delays. DIRTY_PASSGOOD_AREA can eliminate the above issues. The only problem is, DIRTY_PASSGOOD_AREA needs to be defined as 2 to fully cover the above example while this patch uses the more conservative value 8 so as not to surprise people with too many dirty pages than expected. The max-pause limit won't noticeably impact the speed dirty pages are knocked down when there is a sudden drop of global/bdi dirty thresholds. Because the heavy dirties will be throttled below 160KB/s which is slow enough. It does help to avoid long dirty throttle delays and especially will make light dirtiers more responsive. Signed-off-by: Wu Fengguang commit c42843f2f0bbc9d716a32caf667d18fc2bf3bc4c Author: Wu Fengguang Date: Wed Mar 2 15:54:09 2011 -0600 writeback: introduce smoothed global dirty limit The start of a heavy weight application (ie. KVM) may instantly knock down determine_dirtyable_memory() if the swap is not enabled or full. global_dirty_limits() and bdi_dirty_limit() will in turn get global/bdi dirty thresholds that are _much_ lower than the global/bdi dirty pages. balance_dirty_pages() will then heavily throttle all dirtiers including the light ones, until the dirty pages drop below the new dirty thresholds. During this _deep_ dirty-exceeded state, the system may appear rather unresponsive to the users. About "deep" dirty-exceeded: task_dirty_limit() assigns 1/8 lower dirty threshold to heavy dirtiers than light ones, and the dirty pages will be throttled around the heavy dirtiers' dirty threshold and reasonably below the light dirtiers' dirty threshold. In this state, only the heavy dirtiers will be throttled and the dirty pages are carefully controlled to not exceed the light dirtiers' dirty threshold. However if the threshold itself suddenly drops below the number of dirty pages, the light dirtiers will get heavily throttled. So introduce global_dirty_limit for tracking the global dirty threshold with policies - follow downwards slowly - follow up in one shot global_dirty_limit can effectively mask out the impact of sudden drop of dirtyable memory. It will be used in the next patch for two new type of dirty limits. Note that the new dirty limits are not going to avoid throttling the light dirtiers, but could limit their sleep time to 200ms. Signed-off-by: Wu Fengguang commit 7762741e3af69720186802e945229b6a5afd5c49 Author: Wu Fengguang Date: Sun Sep 12 13:34:05 2010 -0600 writeback: consolidate variable names in balance_dirty_pages() Introduce nr_dirty = NR_FILE_DIRTY + NR_WRITEBACK + NR_UNSTABLE_NFS in order to simplify many tests in the following patches. balance_dirty_pages() will eventually care only about the dirty sums besides nr_writeback. Acked-by: Jan Kara Signed-off-by: Wu Fengguang commit 00821b002df7da867bb2c15b4f83f3706371383f Author: Wu Fengguang Date: Sun Aug 29 11:28:45 2010 -0600 writeback: show bdi write bandwidth in debugfs Add a "BdiWriteBandwidth" entry and indent others in /debug/bdi/*/stats. btw, increase digital field width to 10, for keeping the possibly huge BdiWritten number aligned at least for desktop systems. Impact: this could break user space tools if they are dumb enough to depend on the number of white spaces. CC: Theodore Ts'o CC: Jan Kara CC: Peter Zijlstra Signed-off-by: Wu Fengguang commit e98be2d599207c6b31e9bb340d52a231b2f3662d Author: Wu Fengguang Date: Sun Aug 29 11:22:30 2010 -0600 writeback: bdi write bandwidth estimation The estimation value will start from 100MB/s and adapt to the real bandwidth in seconds. It tries to update the bandwidth only when disk is fully utilized. Any inactive period of more than one second will be skipped. The estimated bandwidth will be reflecting how fast the device can writeout when _fully utilized_, and won't drop to 0 when it goes idle. The value will remain constant at disk idle time. At busy write time, if not considering fluctuations, it will also remain high unless be knocked down by possible concurrent reads that compete for the disk time and bandwidth with async writes. The estimation is not done purely in the flusher because there is no guarantee for write_cache_pages() to return timely to update bandwidth. The bdi->avg_write_bandwidth smoothing is very effective for filtering out sudden spikes, however may be a little biased in long term. The overheads are low because the bdi bandwidth update only occurs at 200ms intervals. The 200ms update interval is suitable, because it's not possible to get the real bandwidth for the instance at all, due to large fluctuations. The NFS commits can be as large as seconds worth of data. One XFS completion may be as large as half second worth of data if we are going to increase the write chunk to half second worth of data. In ext4, fluctuations with time period of around 5 seconds is observed. And there is another pattern of irregular periods of up to 20 seconds on SSD tests. That's why we are not only doing the estimation at 200ms intervals, but also averaging them over a period of 3 seconds and then go further to do another level of smoothing in avg_write_bandwidth. CC: Li Shaohua CC: Peter Zijlstra Signed-off-by: Wu Fengguang commit f7d2b1ecd0c714adefc7d3a942ef87beb828a763 Author: Jan Kara Date: Wed Dec 8 22:44:24 2010 -0600 writeback: account per-bdi accumulated written pages Introduce the BDI_WRITTEN counter. It will be used for estimating the bdi's write bandwidth. Peter Zijlstra : Move BDI_WRITTEN accounting into __bdi_writeout_inc(). This will cover and fix fuse, which only calls bdi_writeout_inc(). CC: Michael Rubin Reviewed-by: KOSAKI Motohiro Signed-off-by: Jan Kara Signed-off-by: Wu Fengguang commit d46db3d58233be4be980eb1e42eebe7808bcabab Author: Wu Fengguang Date: Wed May 4 19:54:37 2011 -0600 writeback: make writeback_control.nr_to_write straight Pass struct wb_writeback_work all the way down to writeback_sb_inodes(), and initialize the struct writeback_control there. struct writeback_control is basically designed to control writeback of a single file, but we keep abuse it for writing multiple files in writeback_sb_inodes() and its callers. It immediately clean things up, e.g. suddenly wbc.nr_to_write vs work->nr_pages starts to make sense, and instead of saving and restoring pages_skipped in writeback_sb_inodes it can always start with a clean zero value. It also makes a neat IO pattern change: large dirty files are now written in the full 4MB writeback chunk size, rather than whatever remained quota in wbc->nr_to_write. Acked-by: Jan Kara Proposed-by: Christoph Hellwig Signed-off-by: Wu Fengguang commit a57341f780660800e1463eaedb80ed152ad6b5de Author: Santosh Shilimkar Date: Sat Jul 9 20:42:59 2011 -0600 OMAP4: powerdomain data: Remove unsupported MPU powerdomain state On OMAP4430 devices, because of boot ROM code bug, MPU OFF state can't be attempted independently. When coming out of MPU OFF state, ROM code disables the clocks of IVAHD, TESLA which is not desirable. Hence the MPU OFF state is not usable on OMAP4430 devices. OMAP4460 onwards, MPU OFF state will be descoped completely because the DDR firewall falls in MPU power domain. When the MPU hit OFF state, DDR won't be accessible for other initiators. The deepest state supported is open switch retention (OSWR) just like CORE and PER PD on OMAP4430. So in summary MPU power domain OFF state is not supported on OMAP4 and onwards designs. Thanks to new PRCM design, device off mode can still be achieved with power domains hitting OSWR state. Signed-off-by: Santosh Shilimkar Signed-off-by: Rajendra Nayak [b-cousson@ti.com: Fix changelog typos] Signed-off-by: Benoit Cousson Signed-off-by: Paul Walmsley commit 93cac2ad0f9459422d0af79b6937d6e83ed3aec9 Author: Santosh Shilimkar Date: Sat Jul 9 20:42:59 2011 -0600 OMAP4: clock data: Keep GPMC clocks always enabled and hardware managed On OMAP4, CPU accesses on unmapped addresses are redirected to GPMC by L3 interconnect. Because of CPU speculative nature, such accesses are possible which can lead to indirect access to GPMC and if it's clock is not running, it can result in hang/abort on the platform. Above makes access to GPMC unpredictable during the execution, so it's module mode needs to be kept under hardware control instead of software control. Since the auto gating is supported for GPMC, there isn't any power impact because of this change. The issue was un-covered with security middleware running along with HLOS. In this case GPMC had a valid MMU descriptor on secure side where as HLOS didn't map the GMPC because it isn't being used. Signed-off-by: Santosh Shilimkar [b-cousson@ti.com: Update subject and fix typos in the changelog] Signed-off-by: Benoit Cousson Cc: Kevin Hilman Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 9a2a3603cf1c57ed21adb045a771405ab27335c1 Author: Benoit Cousson Date: Sat Jul 9 20:42:11 2011 -0600 OMAP4: powerdomain data: Fix core mem states and missing cefuse flag Since ES2.0, the core ocmram does not support a different state than the main power domain anymore during both ON and RET power domain state. Since PM is not supported at all in ES1.0, update the common structure. LOWPOWERSTATECHANGE is supported by the cefuse power domain but the flag was missing. Add the PWRDM_HAS_LOWPOWERSTATECHANGE in flags field. Update the TI copyright date to 2011. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Cc: Santosh Shilimkar [paul@pwsan.com: moved the indentation changes to a different patch set] Signed-off-by: Paul Walmsley commit 6349b96b439515e1100cd98f27ff55a262f558a3 Author: Rajendra Nayak Date: Sat Jul 9 20:42:11 2011 -0600 OMAP2+: PM: Initialise sleep_switch to a non-valid value sleep_switch which is initialised to 0 in omap_set_pwrdm_state happens to be a valid sleep_switch type (FORCEWAKEUP_SWITCH) which are defined as: #define FORCEWAKEUP_SWITCH 0 #define LOWPOWERSTATE_SWITCH 1 This causes the function to wrongly program some clock domains even when the Powerdomain is in ON state. Signed-off-by: Rajendra Nayak Cc: Paul Walmsley Acked-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 3a23aafcde66f6327bda0a6423586dfd8d694eb4 Author: Tomi Valkeinen Date: Sat Jul 9 20:39:44 2011 -0600 OMAP4: hwmod data: Modify DSS opt clocks Add missing DSS optional clocks to HWMOD data for OMAP4xxx. Add HWMOD_CONTROL_OPT_CLKS_IN_RESET flag for dispc to fix dispc reset. Signed-off-by: Tomi Valkeinen [b-cousson@ti.com: Remove a comment and update the subject] Signed-off-by: Benoit Cousson Cc: Tomi Valkeinen [paul@pwsan.com: removed DSS "fck" role and some clkdev aliases at Tomi's request] Signed-off-by: Paul Walmsley commit c402c0d9dfa8d4fb54dd98fc12525f39d0f29bfe Merge: a7cd4b08 34617e2 7e69ed9 571078a 476e5be 8f0d69d Author: Paul Walmsley Date: Sat Jul 9 20:24:07 2011 -0600 Merge branches 'dmtimer_precleanup_3.1', 'hwmod_core_cleanup_a_3.1', 'combine_common_hwmod_3.1', 'omap4_hwmod_data_cleanup_a_3.1', 'clock_cleanup_a_3.1', 'prcm_cleanup_a_3.1', 'omap_pm_cleanup_3.1' and 'omap_device_cleanup_3.1' into prcm-cleanup-3.1 commit 571078aa3485073964b611493eee480b5dc3c084 Author: Jon Hunter Date: Sat Jul 9 19:14:47 2011 -0600 OMAP4: clock data: Remove UNIPRO clock nodes UNIPRO was removed from OMAP4 devices from ES2.0 onwards. Since this IP was anyway non-functional and not supported, it is best to remove it completely. Signed-off-by: Jon Hunter [b-cousson@ti.com: Update the changelog] Signed-off-by: Benoit Cousson [paul@pwsan.com: split PRCM header file changes into a separate patch] Signed-off-by: Paul Walmsley commit de474535763c1a5c50cb26f34ec60f10aebc53fe Author: Jon Hunter Date: Sat Jul 9 19:14:47 2011 -0600 OMAP4: clock data: Remove McASP2, McASP3 and MMC6 clocks McASP2, 3 and MMC6 modules are not present in the OMAP4 family. Remove the fclk and the clksel related to these nodes. Rename the references that were potentially re-used in order nodes. Remove related macros in prcm header files. Update TI copyright date. Signed-off-by: Jon Hunter [b-cousson@ti.com: Update the patch according to autogen output] Signed-off-by: Benoit Cousson [paul@pwsan.com: split PRCM data changes into a separate patch] Signed-off-by: Paul Walmsley commit 476e5be710bec3d324d9a28cf1f4fd15bd358a86 Author: Jean Pihet Date: Sat Jul 9 19:15:41 2011 -0600 OMAP PM: remove OMAP_PM_NONE config option The current code base is not linking with the OMAP_PM_NONE option set. Since the option OMAP_PM_NOOP provides a no-op/debug layer, OMAP_PM_NONE can be removed. OMAP_PM_NOOP is enabled by default by Kconfig. Signed-off-by: Jean Pihet Signed-off-by: Paul Walmsley commit 8f0d69dedcf1d10f9f72845f17f9a09a6ef0d66c Author: Kevin Hilman Date: Sat Jul 9 19:15:20 2011 -0600 OMAP: omap_device: replace _find_by_pdev() with to_omap_device() The omap_device layer currently has two ways of getting an omap_device pointer from a platform_device pointer. Replace current usage of _find_by_pdev() with to_omap_device() since to_omap_device() is more familiar to the existing to_platform_device() used when getting a platform_device pointer from a struct device pointer. Cc: Felipe Balbi Signed-off-by: Kevin Hilman Reviewed-by: Felipe Balbi Signed-off-by: Paul Walmsley commit 3c95b707caf3504b37b11d2662bde77e1618d481 Author: Benoit Cousson Date: Sat Jul 9 19:15:06 2011 -0600 OMAP4: clockdomain data: Fix data order and wrong name MPUSS was renamed MPU and L3_D2D D2D. The rename will slightly change the order of the structure and thus generate some structures moves. Add a comment and remove a comma. Update Copyright for TI and Nokia and add back Paul in the author list. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit a3b90ad8d1fb0ddaa6964d83886283ae3e338cea Author: Benoit Cousson Date: Sat Jul 9 19:15:06 2011 -0600 OMAP4: prcm_mpu: Fix indent in few macros Some maros were not well aligned. Re-align them. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 7b342a8d4c310b5cc153b35ea80aab03ddf2e6da Author: Benoit Cousson Date: Sat Jul 9 19:15:05 2011 -0600 OMAP4: cm: Remove RESTORE macros to avoid access from SW The restore part of the CM is an alias of some regular registers used only during the SAR restore to facilate the dma to write a contiguous set of registers. The registers should never be used by the SW, only the original register have to be used. Remove them from cmX_44xx.h files to avoid anybody to use them by mistake. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Cc: Santosh Shilimkar Signed-off-by: Paul Walmsley commit 0fef658331354138d422500509d6e006d9f070d6 Author: Benoit Cousson Date: Sat Jul 9 19:15:05 2011 -0600 OMAP4: powerdomain data: Fix indentation Indent flags to be aligned with other fields. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Cc: Santosh Shilimkar [paul@pwsan.com: split this patch from an earlier patch by Benoît; edited commit message] Signed-off-by: Paul Walmsley commit 631af17cafae308d04d864d6250997cededb3467 Author: Benoit Cousson Date: Sat Jul 9 19:15:04 2011 -0600 OMAP4: prm: Remove wrong clockdomain offsets The following commit introduced new macros to define an offset per clock domain in an instance. commit e4156ee52fe617c2c2d80b5db993ff4bf07d7c3c OMAP4: CM instances: add clockdomain register offsets The PRM contains only two clock controls management entities: EMU and WKUP. Remove the other ones. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Signed-off-by: Paul Walmsley commit ad98a18b3ffa15761e6b3b4a944d4ef37f5ec2c5 Author: Benoit Cousson Date: Sat Jul 9 19:15:04 2011 -0600 OMAP4: prcm: Fix errors in few defines name A couple of macros were wrongly changed during the _MOD to _INST rename done in the following commit: OMAP4: PRCM: rename _MOD macros to _INST cdb54c4457d68994da7c2e16907adfbfc130060d Fix them to their original name. Some CM and PRM instances were not well aligned. Align them. Remove one blank line in cm2_44xx.h to align the output with the other (cm1_44xx.h, prm44xx.h) files. Update header copyright date. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 628479a8ea5d32ef26ba0b4eb26f8d6712a574ec Author: Benoit Cousson Date: Sat Jul 9 19:14:46 2011 -0600 OMAP4: clock data: Fix max mult and div for USB DPLL The DPLL USB can generate higher speed (x2) than the regular ones. The max multiplication value is then twice the previous value. Fix both max_mult and max_div with that correct values. Change the max_div variable type to u16 to allow storing up to 256. Replace as well the define with the value to avoid unneeded indirection and provide a better readability. Remove the defines that become useless. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 7ecd4228b48192890220e1fd1b39c8bd2988aa80 Author: Benoit Cousson Date: Sat Jul 9 19:14:45 2011 -0600 OMAP4: clock data: Re-order some clock nodes and structure fields A couple of fieds were edited manually and thus do not stick to the template used by the generator and by other structures. Move them to the correct location. Signed-off-by: Benoit Cousson Cc: Paul Walmsley [paul@pwsan.com: dropped the UNIPRO changes since those will be removed in a later patch] Signed-off-by: Paul Walmsley commit 6629f3c47006dd00db0b87ce02a55a16ecacfbbf Author: Benoit Cousson Date: Sat Jul 9 19:14:45 2011 -0600 OMAP4: clock data: Remove usb_host_fs clkdev with NULL dev usb_host_fs_fck does have a clkdev mapping with "usbhs-omap.0" and "fs_fck" alias used by the driver. The entry with NULL dev is thus not needed anymore. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Felipe Balbi Signed-off-by: Paul Walmsley commit 962519e07e44bdeb381fdc7689361a144fe3491c Author: Benoit Cousson Date: Sat Jul 9 19:14:45 2011 -0600 OMAP4: clock data: Add sddiv to USB DPLL The USB DPLL is a J-Type DPLL with the sddiv extra parameter. Add it in USB DPLL. Signed-off-by: Benoit Cousson Cc: Paul Walmsley [paul@pwsan.com: dropped UNIPRO change since it is removed in a later patch] Signed-off-by: Paul Walmsley commit 7e69ed974259b42c4f87a44222415dbb7472898d Author: Benoit Cousson Date: Sat Jul 9 19:14:28 2011 -0600 OMAP4: hwmod data: Align interconnect format with regular modules The interconnect modules were using a slightly different layout than the regular modules. Align the layout for better consitency. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 00fe610b7a699780e956756be91ba60343302e49 Author: Benoit Cousson Date: Sat Jul 9 19:14:28 2011 -0600 OMAP4: hwmod data: Fix bad alignement Fix .prcm alignement and usb_otg_hs class and hwmod structures. Add a couple of more potential hwmods in the comment. Remove hsi, since it is already included in the data. Remove one blank line. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Signed-off-by: Paul Walmsley commit 7ecc5373fe5788b993820eb0bc0e4b7c282147e2 Author: Benoit Cousson Date: Sat Jul 9 19:14:28 2011 -0600 OMAP4: hwmod data: Remove un-needed parens A couple of parens were added around some flags. Remove them, since they are not needed and not used for any other hwmods. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Signed-off-by: Paul Walmsley commit 9b4021befe59e53454d2fe0a4d22e269f1e843b1 Author: Benoit Cousson Date: Sat Jul 9 19:14:27 2011 -0600 OMAP4: hwmod data: Fix L3 interconnect data order and alignement Change the position of the ocp_if structure to match the template. Remove unneeded comma at the end of address space flag field. Remove USER_SDMA since this ocp link is only from the l3_main_1 path that is accessible only from the MPU in that case and not the SDMA. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Signed-off-by: Paul Walmsley commit 273b9465bc68d4f4bcdedc34411b231e26b48416 Author: Paul Walmsley Date: Sat Jul 9 19:14:08 2011 -0600 omap_hwmod: share identical omap_hwmod_class, omap_hwmod_class_sysconfig arrays To reduce kernel source file data duplication, share struct omap_hwmod_class and omap_hwmod_class_sysconfig arrays across OMAP2xxx and 3xxx hwmod data files. Signed-off-by: Paul Walmsley commit d826ebfa49aeb8a8f4d216165e5e00826741ad9c Author: Paul Walmsley Date: Sat Jul 9 19:14:07 2011 -0600 omap_hwmod: share identical omap_hwmod_dma_info arrays To reduce kernel source file data duplication, share struct omap_hwmod_dma_info arrays across OMAP2xxx and 3xxx hwmod data files. Signed-off-by: Paul Walmsley commit bc6149587b309e3231e5ac7138b84197813e17ec Author: Paul Walmsley Date: Sat Jul 9 19:14:07 2011 -0600 omap_hwmod: use a terminator record with omap_hwmod_dma_info arrays Previously, struct omap_hwmod_dma_info arrays were unterminated; and users of these arrays used the ARRAY_SIZE() macro to determine the length of the array. However, ARRAY_SIZE() only works when the array is in the same scope as the macro user. So far this hasn't been a problem. However, to reduce duplicated data, a subsequent patch will move common data to a separate, shared file. When this is done, ARRAY_SIZE() will no longer be usable. This patch removes ARRAY_SIZE() usage for struct omap_hwmod_dma_info arrays and uses a sentinel value (irq == -1) as the array terminator instead. Signed-off-by: Paul Walmsley commit 0d619a89998d308c48d06b033eccb7374c456f12 Author: Paul Walmsley Date: Sat Jul 9 19:14:07 2011 -0600 omap_hwmod: share identical omap_hwmod_mpu_irqs arrays To reduce kernel source file data duplication, share struct omap_hwmod_mpu_irqs arrays across OMAP2xxx and 3xxx hwmod data files. Signed-off-by: Paul Walmsley commit 212738a4499d278254ed6fdb400e3b4be4cb1de2 Author: Paul Walmsley Date: Sat Jul 9 19:14:06 2011 -0600 omap_hwmod: use a terminator record with omap_hwmod_mpu_irqs arrays Previously, struct omap_hwmod_mpu_irqs arrays were unterminated; and users of these arrays used the ARRAY_SIZE() macro to determine the length of the array. However, ARRAY_SIZE() only works when the array is in the same scope as the macro user. So far this hasn't been a problem. However, to reduce duplicated data, a subsequent patch will move common data to a separate, shared file. When this is done, ARRAY_SIZE() will no longer be usable. This patch removes ARRAY_SIZE() usage for struct omap_hwmod_mpu_irqs arrays and uses a sentinel value (irq == -1) as the array terminator instead. Signed-off-by: Paul Walmsley commit ded11383fc14a7483cf30700ffc253caf37c9933 Author: Paul Walmsley Date: Sat Jul 9 19:14:06 2011 -0600 omap_hwmod: share identical omap_hwmod_addr_space arrays To reduce kernel source file data duplication, share struct omap_hwmod_addr_space arrays across OMAP2xxx and 3xxx hwmod data files. Signed-off-by: Paul Walmsley commit 78183f3fdf76f422431a81852468be01b36db325 Author: Paul Walmsley Date: Sat Jul 9 19:14:05 2011 -0600 omap_hwmod: use a null structure record to terminate omap_hwmod_addr_space arrays Previously, struct omap_hwmod_addr_space arrays were unterminated; and users of these arrays used the ARRAY_SIZE() macro to determine the length of the array. However, ARRAY_SIZE() only works when the array is in the same scope as the macro user. So far this hasn't been a problem. However, to reduce duplicated data, a subsequent patch will move common data to a separate, shared file. When this is done, ARRAY_SIZE() will no longer be usable. This patch removes ARRAY_SIZE() usage for struct omap_hwmod_addr_space arrays and uses a null structure member as the array terminator instead. Signed-off-by: Paul Walmsley commit 34617e2a4d331fdd8172077d8c70a0421fc136e6 Author: Benoit Cousson Date: Fri Jul 1 22:54:07 2011 +0200 OMAP: hwmod: Move pr_debug to improve the readability Move the pr_debug at the top of the function to trace the entry even if the first test is failing. That help understanding that we entered the function but failed in it. Move the _enable last part out of the test to reduce indentation and improve readability. Signed-off-by: Benoit Cousson Cc: Paul Walmsley Signed-off-by: Paul Walmsley commit 6652271a2556c086c04658dce16de2947e849ffd Author: Benoit Cousson Date: Fri Jul 1 22:54:06 2011 +0200 OMAP: hwmod: Add warnings if enable failed Change the debug into warning to check what IPs are failing. Signed-off-by: Benoit Cousson Cc: Rajendra Nayak Signed-off-by: Paul Walmsley commit 31f62866c578b3d47ef7810b336e9e193b90167f Author: Benoit Cousson Date: Fri Jul 1 22:54:05 2011 +0200 OMAP2+: hwmod: Fix the HW reset management The HW reset must be de-assert after the clocks are enabled but before waiting for the target to be ready. Otherwise the reset might not work properly since the clock is not running to proceed the reset. De-assert the reset after _enable_clocks and before _wait_target_ready. Re-assert it only when the clocks are disabled. Signed-off-by: Benoit Cousson Signed-off-by: Paul Walmsley commit d24bcaa3fa711f7dd9c4aacf3c58083cf666418f Author: Benoit Cousson Date: Fri Jul 1 22:54:04 2011 +0200 OMAP2+: hwmod: Remove _populate_mpu_rt_base warning It is perfectly valid for some hwmod to not have any register target address for sysconfig. This is especially true for interconnect hwmods. Remove the warning. Signed-off-by: Benoit Cousson Signed-off-by: Paul Walmsley commit 1fe741139be5acfe3758b53cdbf0b5e3d26db3fe Author: Benoit Cousson Date: Fri Jul 1 22:54:03 2011 +0200 OMAP2+: hwmod: Do not write the enawakeup bit if SYSC_HAS_ENAWAKEUP is not set The Type 2 type of IPs will not have any enawakeup bit in their sysconfig. Writing to that bit will instead trigger a softreset. Check the flag to write this bit only if the module supports it. Reported-by: Miguel Vadillo Signed-off-by: Benoit Cousson Signed-off-by: Paul Walmsley commit 6481c73c22613660a5b791d2b4d0faf60508d731 Author: Miguel Vadillo Date: Fri Jul 1 22:54:02 2011 +0200 OMAP2+: hwmod: Enable module in shutdown to access sysconfig When calling the shutdown, the module may be already in idle. Accessing the sysconfig register will then lead to a crash. In that case, re-enable the module in order to allow the access to the sysconfig register. Signed-off-by: Miguel Vadillo Signed-off-by: Benoit Cousson Signed-off-by: Paul Walmsley commit c614ebf6f73de8e6d0481c4b3b962b649166fee9 Author: Benoit Cousson Date: Fri Jul 1 22:54:01 2011 +0200 OMAP4: hwmod data: Add MSTANDBY_SMART_WKUP flag Add the flag to every IPs that support it to allow the framework to enable it instead of the SMART_STANDBY default mode. Without that, an IP with busmaster capability will not be able to wakeup the interconnect at all. Signed-off-by: Benoit Cousson Signed-off-by: Paul Walmsley commit 724019b0137acf2ea43e5ca854798851f5ebf51f Author: Benoit Cousson Date: Fri Jul 1 22:54:00 2011 +0200 OMAP2+: hwmod: Fix smart-standby + wakeup support The commit 86009eb326afde34ffdc5648cd344aa86b8d58d4 was adding the wakeup support for new OMAP4 IPs. This support is incomplete for busmaster IPs that need as well to use smart-standby with wakeup. This new standbymode is suported on HSI and USB_HOST_FS for the moment. Add the new MSTANDBY_SMART_WKUP flag to mark the IPs that support this capability. Enable this new mode when applicable in _enable_wakeup, _disable_wakeup, _enable_sysc and _idle_sysc. The omap_hwmod_44xx_data.c will have to be updated to add this new flag. Signed-off-by: Benoit Cousson Signed-off-by: Djamil Elaidi Signed-off-by: Paul Walmsley commit a7cd4b08d9854bcf813fd6906ec3e97073b9bb19 Author: Paul Walmsley Date: Sat Jul 9 18:00:25 2011 -0600 OMAP: dmtimer: add missing include After commit caf64f2fdc48472995d40656eb1a75524c464447 ("omap: Make a subset of dmtimer functions into inline functions"), arch/arm/plat-omap/include/plat/dmtimer.h is missing an include of linux/io.h - add it. Signed-off-by: Paul Walmsley Cc: Tony Lindgren commit 2e39e5be1ddf9fc5fbe84fe7ae3e035bb07845e5 Author: Grant Likely Date: Tue Jul 5 23:42:36 2011 -0600 tty/serial: Add devicetree support for nVidia Tegra serial ports Acked-by: Greg Kroah-Hartman Signed-off-by: Grant Likely commit a66413fbc37994710d638aec3314f735a7ac0df5 Author: Dmitry Torokhov Date: Sat Jul 9 12:32:56 2011 -0700 Input: synaptics - set minimum coordinates as reported by firmware Newer Synaptics firmware allows to query minimum coordinates reported by the device, let's use this data. Acked-by: Chase Douglas Acked-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 19dad35fe0f10df8f0524f98037469e3a0dd1ec2 Author: Russell King Date: Sat Jul 9 17:41:33 2011 +0100 ARM: vfp: ensure that thread flushing works if preempted Prevent a preemption event causing the initialized VFP state being overwritten by ensuring that the VFP hardware access is disabled prior to starting initialization. We can then do this in safety while still allowing preemption to occur. Signed-off-by: Russell King commit f8f2a8522a88aacd62a310ce49e8dac530d1b403 Author: Russell King Date: Sat Jul 9 16:09:43 2011 +0100 ARM: vfp: fix a hole in VFP thread migration Fix a hole in the VFP thread migration. Lets define two threads. Thread 1, we'll call 'interesting_thread' which is a thread which is running on CPU0, using VFP (so vfp_current_hw_state[0] = &interesting_thread->vfpstate) and gets migrated off to CPU1, where it continues execution of VFP instructions. Thread 2, we'll call 'new_cpu0_thread' which is the thread which takes over on CPU0. This has also been using VFP, and last used VFP on CPU0, but doesn't use it again. The following code will be executed twice: cpu = thread->cpu; /* * On SMP, if VFP is enabled, save the old state in * case the thread migrates to a different CPU. The * restoring is done lazily. */ if ((fpexc & FPEXC_EN) && vfp_current_hw_state[cpu]) { vfp_save_state(vfp_current_hw_state[cpu], fpexc); vfp_current_hw_state[cpu]->hard.cpu = cpu; } /* * Thread migration, just force the reloading of the * state on the new CPU in case the VFP registers * contain stale data. */ if (thread->vfpstate.hard.cpu != cpu) vfp_current_hw_state[cpu] = NULL; The first execution will be on CPU0 to switch away from 'interesting_thread'. interesting_thread->cpu will be 0. So, vfp_current_hw_state[0] points at interesting_thread->vfpstate. The hardware state will be saved, along with the CPU number (0) that it was executing on. 'thread' will be 'new_cpu0_thread' with new_cpu0_thread->cpu = 0. Also, because it was executing on CPU0, new_cpu0_thread->vfpstate.hard.cpu = 0, and so the thread migration check is not triggered. This means that vfp_current_hw_state[0] remains pointing at interesting_thread. The second execution will be on CPU1 to switch _to_ 'interesting_thread'. So, 'thread' will be 'interesting_thread' and interesting_thread->cpu now will be 1. The previous thread executing on CPU1 is not relevant to this so we shall ignore that. We get to the thread migration check. Here, we discover that interesting_thread->vfpstate.hard.cpu = 0, yet interesting_thread->cpu is now 1, indicating thread migration. We set vfp_current_hw_state[1] to NULL. So, at this point vfp_current_hw_state[] contains the following: [0] = &interesting_thread->vfpstate [1] = NULL Our interesting thread now executes a VFP instruction, takes a fault which loads the state into the VFP hardware. Now, through the assembly we now have: [0] = &interesting_thread->vfpstate [1] = &interesting_thread->vfpstate CPU1 stops due to ptrace (and so saves its VFP state) using the thread switch code above), and CPU0 calls vfp_sync_hwstate(). if (vfp_current_hw_state[cpu] == &thread->vfpstate) { vfp_save_state(&thread->vfpstate, fpexc | FPEXC_EN); BANG, we corrupt interesting_thread's VFP state by overwriting the more up-to-date state saved by CPU1 with the old VFP state from CPU0. Fix this by ensuring that we have sane semantics for the various state describing variables: 1. vfp_current_hw_state[] points to the current owner of the context information stored in each CPUs hardware, or NULL if that state information is invalid. 2. thread->vfpstate.hard.cpu always contains the most recent CPU number which the state was loaded into or NR_CPUS if no CPU owns the state. So, for a particular CPU to be a valid owner of the VFP state for a particular thread t, two things must be true: vfp_current_hw_state[cpu] == &t->vfpstate && t->vfpstate.hard.cpu == cpu. and that is valid from the moment a CPU loads the saved VFP context into the hardware. This gives clear and consistent semantics to interpreting these variables. This patch also fixes thread copying, ensuring that t->vfpstate.hard.cpu is invalidated, otherwise CPU0 may believe it was the last owner. The hole can happen thus: - thread1 runs on CPU2 using VFP, migrates to CPU3, exits and thread_info freed. - New thread allocated from a previously running thread on CPU2, reusing memory for thread1 and copying vfp.hard.cpu. At this point, the following are true: new_thread1->vfpstate.hard.cpu == 2 &new_thread1->vfpstate == vfp_current_hw_state[2] Lastly, this also addresses thread flushing in a similar way to thread copying. Hole is: - thread runs on CPU0, using VFP, migrates to CPU1 but does not use VFP. - thread calls execve(), so thread flush happens, leaving vfp_current_hw_state[0] intact. This vfpstate is memset to 0 causing thread->vfpstate.hard.cpu = 0. - thread migrates back to CPU0 before using VFP. At this point, the following are true: thread->vfpstate.hard.cpu == 0 &thread->vfpstate == vfp_current_hw_state[0] Signed-off-by: Russell King commit 08409c33d6fdb43fa19d7dbdafd4f280b7835592 Author: Russell King Date: Sat Jul 9 14:24:36 2011 +0100 ARM: vfp: rename check_exception to vfp_hw_state_valid Rename this branch to more accurately reflect why its taken, rather than what the following code does. It is the only caller of this code. This helps to clarify following changes, yet this change results in no actual code change. Document the VFP hardware state at the target of this branch. Signed-off-by: Russell King commit af61bdf035e2e4dd646b37b270bd558188a127c0 Author: Russell King Date: Sat Jul 9 13:44:04 2011 +0100 ARM: vfp: rename last_VFP_context to vfp_current_hw_state Rename the slightly confusing 'last_VFP_context' variable to be more descriptive of what it actually is. This variable stores a pointer to the current owner's vfpstate structure for the context held in the VFP hardware. Signed-off-by: Russell King commit 9f426173e54a4f0882f9516c226f3165a3bd5474 Author: Stefan Richter Date: Sun Jul 3 17:39:26 2011 +0200 firewire: ohci: skip soft reset retries after card ejection The software reset in firewire-ohci's pci_remove does not have a great prospect of success if the card was already physically removed at this point. So let's skip the 500 ms that were spent in retries here. Also, replace a defined constant by its open-coded value. This is not a constant from a specification but an arbitrarily chosen retry limit. It was only used in this single place. Signed-off-by: Stefan Richter commit 215fa444c2a6d571f1f915cf3dc7a8b01cc51a0a Author: Stefan Richter Date: Wed Jun 22 21:05:08 2011 +0200 firewire: ohci: fix PHY reg access after card ejection Detect and handle ejection of FireWire CardBus cards in PHY register accesses: - The last attempt of firewire-core to reset the bus during shutdown caused a spurious "firewire_ohci: failed to write phy reg" error message in the log. Skip this message as well as the prior retry loop that needlessly took 100 milliseconds. - In the unlikely case that a PHY register was read right after card ejection, a bogus value was obtained and possibly acted upon. Instead, fail the read attempt. Signed-off-by: Stefan Richter commit b14c369d87d7fbf120ad21919d34a8f1290290f1 Author: Stefan Richter Date: Tue Jun 21 15:24:26 2011 +0200 firewire: ohci: add a comment on PHY reg access serialization Signed-off-by: Stefan Richter commit 9ef28ccd59a23d219c4660f55a11ac06ca91f632 Author: Stefan Richter Date: Sun Jun 12 14:30:57 2011 +0200 firewire: ohci: reduce potential context_stop latency Stopping an isochronous reception DMA context takes two loop iterations in context_stop on several controllers (JMicron, NEC, VIA). But there is no extra delay necessary between these two reg_read trials; the MMIO reads themselves are slow enough. Hence bring back the behavior from before commit dd6254e5c0efe01ad255188898cb3dadf98cb56d "firewire: ohci: remove superfluous posted write flushes" on these controllers by means of an "if (i)" condition. Isochronous context stop is performed in preemptible contexts (and only rarely), hence this change is of little impact. (Besides, Agere and TI controllers always, or almost always, have the context stopped already at the first ContextControl read.) More important is asynchronous transmit context stop, which is performed while local interrupts are disabled (on the two AT DMAs in bus_reset_tasklet, i.e. after a self-ID-complete event). In my experience with several controllers, tested with a usermode AT-request transmitter as well as with FTP transmission over firewire-net, the AT contexts were luckily already stopped at the first ContextControl read, i.e. never required another MMIO read let alone mdelay. A possible explanation for this is that the controllers which I tested perhaps stop AT DMA before they perform the self-ID reception DMA. But we cannot be sure about that and should keep the interrupts-disabled busy loop as short as possible. Hence, query the ContextControl register in 1000 udelay(10) intervals instead of 10 udelay(1000) intervals. I understand from an estimation by Clemens Ladisch that stopping a busy DMA context should take microseconds or at worst tens of microseconds, not milliseconds. Signed-off-by: Stefan Richter commit 5b7396709e0b2d43527024316e0bc4630759bcf3 Author: Mark Brown Date: Wed Jul 6 00:08:43 2011 -0700 ASoC: Conditionalize the enable of WM8994 ADC TDM mode Future devices will not benefit from this. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 3db1bbfd4aa231e67d39fb451d4c6f0423a6ba11 Merge: 3f9c42e e320bc4 Author: Mark Brown Date: Sat Jul 9 23:16:12 2011 +0900 Merge branch 'topic/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into for-3.1 commit 017f2a104c7fed53a9b2534f0795f1f5af87674f Author: Takashi Iwai Date: Sat Jul 9 14:42:25 2011 +0200 ALSA: hda - Implement 44kHz workaround for IdeadPad as fixup Instead of checking the model quirk, use a fixup table for workaround of 44kHz-fixed PCM for Lenovo IdeaPad with ALC269. Signed-off-by: Takashi Iwai commit 3f9c42ed6b94b16223215137e648d20127261e8f Merge: 71ae391 2c7beb9 Author: Mark Brown Date: Sat Jul 9 19:06:33 2011 +0900 Merge branch 'for-3.0' into for-3.1 commit 9975c2e4c3e4fc26148723dc99b5f0667716a249 Merge: 3e6179b abaead6 Author: Takashi Iwai Date: Sat Jul 9 11:58:06 2011 +0200 Merge branch 'fix/hda' into topic/hda Conflicts: sound/pci/hda/patch_realtek.c commit 42c8b11e284fe3186e27555d1adb7d4b77398e1b Author: Joe Perches Date: Sat Jul 9 02:56:56 2011 -0700 benet: Add missing comma between constant string array Multiple quoted strings are concatenated without comma separators. Make the arrays const while there. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit a48332f803093d5e3d431a5a1f595698911d1145 Author: Shirley Ma Date: Sat Jul 9 02:55:27 2011 -0700 skbuff: clear tx zero-copy flag This patch clears tx zero-copy flag as needed. Signed-off-by: Shirley Ma Signed-off-by: David S. Miller commit e320bc42be746b8f006d163b6e340e5fb79ce7b2 Merge: f187700 b5d5f59 Author: Takashi Iwai Date: Sat Jul 9 11:43:04 2011 +0200 Merge branch 'for-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc commit 71ae391d45bf5d983c3cdabfa83e2afa3c99c5ab Merge: b5d5f59 18361bb Author: Mark Brown Date: Sat Jul 9 18:20:36 2011 +0900 Merge branch 'for-3.0' into for-3.1 commit 07d0c38e7d84f911c72058a124c7f17b3c779a65 Author: Stephen M. Cameron Date: Sat Jul 9 09:04:12 2011 +0200 cciss: do not attempt to read from a write-only register Most smartarrays will tolerate it, but some new ones don't. Signed-off-by: Stephen M. Cameron Note: this is a regression caused by commit 1ddd5049 Cc: stable@kernel.org Signed-off-by: Jens Axboe commit 24a42bae6852d27ae569757f5415c91538e6a255 Author: Anupam Chanda Date: Fri Jul 8 11:42:50 2011 -0700 x86, hyper: Change hypervisor detection order Detect Xen before HyperV because in Viridian compatibility mode Xen presents itself as HyperV. Move Xen to the top since it seems more likely that Xen would emulate VMware than vice versa. Signed-off-by: Anupam Chanda Link: http://lkml.kernel.org/r/1310150570-26810-1-git-send-email-achanda@nicira.com Acked-by: Stefano Stabellini Acked-by: Yaozu (Eddie) Dong Reviewed-by: H. Peter Anvin Signed-off-by: H. Peter Anvin commit 89e162afd37caa6acab4e05b6e9e9fad6235381e Author: Rongjun Ying Date: Fri Jul 8 02:40:14 2011 -0700 ARM: CSR: initializing L2 cache Signed-off-by: Rongjun Ying Signed-off-by: Barry Song Reviewed-by: Arnd Bergmann commit 31adb06f9d68f9d033284c9ab0e264b2d581bceb Author: Barry Song Date: Fri Jul 8 02:40:13 2011 -0700 ARM: CSR: mapping early DEBUG_LL uart Signed-off-by: Barry Song Reviewed-by: Arnd Bergmann commit 02c981c07bc95ac1e42ec6c817f0c28cf3fe993a Author: Binghua Duan Date: Fri Jul 8 17:40:12 2011 +0800 ARM: CSR: Adding CSR SiRFprimaII board support SiRFprimaII is the latest generation application processor from CSR’s Multifunction SoC product family. Designed around an ARM cortex A9 core, high-speed memory bus, advanced 3D accelerator and full-HD multi-format video decoder, SiRFprimaII is able to meet the needs of complicated applications for modern multifunction devices that require heavy concurrent applications and fluid user experience. Integrated with GPS baseband, analog and PMU, this new platform is designed to provide a cost effective solution for Automotive and Consumer markets. This patch adds the basic support for this SoC and EVB board based on device tree. It is following the ZYNQ of Xilinx in some degree. Signed-off-by: Binghua Duan Signed-off-by: Rongjun Ying Signed-off-by: Zhiwu Song Signed-off-by: Yuping Luo Signed-off-by: Bin Shi Signed-off-by: Huayi Li Signed-off-by: Barry Song Reviewed-by: Arnd Bergmann commit 14cb6dcf0a023f5977461c94d8d5a163c937979b Author: Vivek Goyal Date: Fri Jul 8 13:19:26 2011 -0400 x86, boot: Wait for boot cpu to show up if nr_cpus limit is about to hit nr_cpus allows one to specify number of possible cpus in the system. Current assumption seems to be that first cpu to show up is boot cpu and this assumption will be broken in kdump scenario where we can be booting on a non boot cpu with nr_cpus=1. It might happen that first cpu we parse is not the cpu we boot on and later we ignore boot cpu. Though code later seems to recognize this anomaly and forcibly sets boot cpu in physical cpu map with following warning. if (!physid_isset(hard_smp_processor_id(), phys_cpu_present_map)) { printk(KERN_WARNING "weird, boot CPU (#%d) not listed by the BIOS.\n", hard_smp_processor_id()); physid_set(hard_smp_processor_id(), phys_cpu_present_map); } This patch waits for boot cpu to show up and starts ignoring the cpus once we have hit (nr_cpus - 1) number of cpus. So effectively we are reserving one slot out of nr_cpus for boot cpu explicitly. Signed-off-by: Vivek Goyal Acked-by: Yinghai Lu Link: http://lkml.kernel.org/r/20110708171926.GF2930@redhat.com Signed-off-by: H. Peter Anvin commit 18fbb93fbec3cfd6acf46f60990f7ab21c4221dd Merge: 3b87218 156833d Author: Greg Kroah-Hartman Date: Fri Jul 8 15:30:22 2011 -0700 Merge branch 'for-next' of master.kernel.org:/pub/scm/linux/kernel/git/balbi/usb into usb-next * 'for-next' of master.kernel.org:/pub/scm/linux/kernel/git/balbi/usb: usb: gadget: m66592-udc: add pullup function usb: gadget: m66592-udc: add function for external controller usb: gadget: r8a66597-udc: add pullup function usb: gadget: zero: add superspeed support usb: gadget: add SS descriptors to Ethernet gadget usb: gadget: r8a66597-udc: add support for TEST_MODE usb: gadget: m66592-udc: add support for TEST_MODE usb: gadget: r8a66597-udc: Make BUSWAIT configurable through platform data usb: gadget: r8a66597-udc: fix cannot connect after rmmod gadget driver usb: update email address in r8a66597-udc and m66592-udc usb: musb: restore INDEX register in resume path usb: gadget: fix up depencies usb: gadget: fusb300_udc: fix compile warnings usb: gadget: ci13xx_udc.c: fix compile warning usb: gadget: net2272: fix compile warnings usb: gadget: langwell_udc: fix compile warnings usb: gadget: fusb300_udc: drop dead code commit 156833dc3ca3b730127c4b3045c466cca46c2767 Merge: e931830 7eff1d8 Author: Felipe Balbi Date: Sat Jul 9 01:10:07 2011 +0300 Merge branch 'gadget' into for-next * gadget: usb: gadget: m66592-udc: add pullup function usb: gadget: m66592-udc: add function for external controller usb: gadget: r8a66597-udc: add pullup function usb: gadget: zero: add superspeed support usb: gadget: add SS descriptors to Ethernet gadget usb: gadget: r8a66597-udc: add support for TEST_MODE usb: gadget: m66592-udc: add support for TEST_MODE usb: gadget: r8a66597-udc: Make BUSWAIT configurable through platform data usb: gadget: r8a66597-udc: fix cannot connect after rmmod gadget driver usb: update email address in r8a66597-udc and m66592-udc usb: musb: restore INDEX register in resume path usb: gadget: fix up depencies usb: gadget: fusb300_udc: fix compile warnings usb: gadget: ci13xx_udc.c: fix compile warning usb: gadget: net2272: fix compile warnings usb: gadget: langwell_udc: fix compile warnings usb: gadget: fusb300_udc: drop dead code commit def90f4239f094f3846c108c1c41a4cd55c33e8e Author: Shreshtha Kumar Sahu Date: Thu Jun 9 22:56:32 2011 +0200 amba pl011: workaround for uart registers lockup This workaround aims to break the deadlock situation which raises during continuous transfer of data for long duration over uart with hardware flow control. It is observed that CTS interrupt cannot be cleared in uart interrupt register (ICR). Hence further transfer over uart gets blocked. It is seen that during such deadlock condition ICR don't get cleared even on multiple write. This leads pass_counter to decrease and finally reach zero. This can be taken as trigger point to run this UART_BT_WA. Workaround backups the register configuration, does soft reset of UART using BIT-0 of PRCC_K_SOFTRST_SET/CLEAR registers and restores the registers. This patch also provides support for uart init and exit function calls if present. Signed-off-by: Shreshtha Kumar Sahu Signed-off-by: Linus Walleij Signed-off-by: Greg Kroah-Hartman commit f086ced17191fa0c5712539d2b680eae3dc972a1 Author: Du, Alek Date: Thu Jul 7 15:16:48 2011 +0100 n_gsm: fix the wrong FCS handling FCS could be GSM0_SOF, so will break state machine... [This byte isn't quoted in any way so a SOF here doesn't imply an error occurred.] Signed-off-by: Alek Du Signed-off-by: Alan Cox Cc: stable [3.0] [Trivial but best backported once its in 3.1rc I think] Signed-off-by: Greg Kroah-Hartman commit bff52fd458a1bca06266449b0ab8a43e9a50d240 Author: Alexander Stein Date: Mon Jul 4 15:35:51 2011 +0200 pch_uart: add missing comment about OKI ML7223 Signed-off-by: Alexander Stein Reviewed-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit e463595fd9c752fa4bf06b47df93ef9ade3c7cf0 Author: Alexander Stein Date: Mon Jul 4 08:58:31 2011 +0200 pch_uart: Add MSI support Signed-off-by: Alexander Stein Signed-off-by: Greg Kroah-Hartman commit 7eff1d83a3b846d16a4cd706d06b5827a07c08a3 Author: Yoshihiro Shimoda Date: Thu Jul 7 09:58:50 2011 +0900 usb: gadget: m66592-udc: add pullup function Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit bb59dbff4e5fb0ac14e3ee47d3f688490f128155 Author: Yoshihiro Shimoda Date: Thu Jul 7 09:58:43 2011 +0900 usb: gadget: m66592-udc: add function for external controller M66592 has the pin of WR0 and WR1. So, if one write-pin of CPU connects to the pins, we have to change the setting of FIFOSEL register in the controller. If we don't change the setting, the controller cannot send the data of odd length. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit 8ca137562a79f573f822f5a84a4e56a0d8cc6792 Author: Yoshihiro Shimoda Date: Thu Jul 7 09:58:20 2011 +0900 usb: gadget: r8a66597-udc: add pullup function Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit 3b87218829a4182850cc62f8c0c28abcecfdf8e6 Author: Kuninori Morimoto Date: Sun Jul 3 17:42:35 2011 -0700 usb: renesas_usbhs: support multi driver Some SuperH/board has multi USBHS on it. This patch supports multi register for renesas_usbhs Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 4ef85e0f697051829179c4fdeda1bd3f4166dc17 Author: Kuninori Morimoto Date: Sun Jul 3 17:42:47 2011 -0700 usb: renesas_usbhs: inaccessible pipe is not an error Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 9a12d09765b72f7e1642f36d0e3ad2ce61fd31b6 Author: Kuninori Morimoto Date: Sun Jul 3 17:42:19 2011 -0700 usb: renesas_usbhs: care buff alignment when dma handler Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 27760f868663310ff9e701f47aec33da3b906f34 Author: Hans J. Koch Date: Thu Jul 7 23:11:38 2011 +0200 uio: uio_pdrv_genirq: Add OF support Adding OF binding to genirq. Version string is setup to the "devicetree". Compatible string is not setup for now but you can add your custom compatible string to uio_of_genirq_match structure. For example with "vendor,device" compatible string: static const struct of_device_id __devinitconst uio_of_genirq_match[] = { { .compatible = "vendor,device", }, { /* empty for now */ }, }; Signed-off-by: Michal Simek Signed-off-by: Hans J. Koch Reviewed-by: Wolfram Sang CC: Hans J. Koch CC: Arnd Bergmann CC: John Williams CC: Grant Likely CC: Wolfram Sang Signed-off-by: Greg Kroah-Hartman commit 8d48fdf689fed2c73c493e5146d1463689246442 Author: Michał Sroczyński Date: Tue Jul 5 21:53:35 2011 +0200 USB: PL2303: correctly handle baudrates above 115200 PL2303: correctly handle baudrates above 115200 Signed-off-by: Michal Sroczynski Signed-off-by: Greg Kroah-Hartman commit 35da41375caabe5433e6d20ab1ec087bd31d12b1 Author: Kuninori Morimoto Date: Thu Jul 7 02:36:32 2011 -0700 usb: r8a66597-hcd: fixup USB_PORT_STAT_C_SUSPEND shift This is typo fix of 749da5f8 (USB: straighten out port feature vs. port status usage) Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 030ed1fcb0279953d142665e89bb89ecfb0960f6 Author: Kuninori Morimoto Date: Thu Jul 7 02:17:37 2011 -0700 usb: renesas_usbhs: compile/config are rescued This patch rescues renesas_usbhs compile from commit 193ab2a (usb: gadget: allow multiple gadgets to be built) CONFIG_USB_RENESAS_USBHS compile renesas_usbhs main code which is shared between Host/Gadget. CONFIG_USB_RENESAS_USBHS_UDC add mod_gadget to it. It had lost USB_GADGET_DUALSPEED Signed-off-by: Kuninori Morimoto Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 233f519d273454e3e804e21363d5ef0bd031acfe Author: Kuninori Morimoto Date: Thu Jul 7 00:23:24 2011 -0700 usb: renesas_usbhs: fixup comment-out This patch add/modify comment-out of renesas_usbhs. On this process, usbhs_pkt_init was moved because it was placed under usbhsf_null_handler which has no relationship it Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 45304e8cd9d9df07e9221551678262b390bdaaa4 Author: Yoshihiro Shimoda Date: Thu Jul 7 09:58:56 2011 +0900 usb: update email address in ohci-sh and r8a66597-hcd Signed-off-by: Yoshihiro Shimoda Signed-off-by: Greg Kroah-Hartman commit f2e9039a43b01f01cab9dfaea2cad5f304fb3343 Author: Yoshihiro Shimoda Date: Thu Jul 7 09:57:10 2011 +0900 usb: r8a66597-hcd: add function for external controller R8A66597 has the pin of WR0 and WR1. So, if one write-pin of CPU connects to the pins, we have to change the setting of FIFOSEL register in the controller. If we don't change the setting, the controller cannot send the data of odd length. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Greg Kroah-Hartman commit 81463c1d707186adbbe534016cd1249edeab0dac Author: Sergei Shtylyov Date: Wed Jul 6 23:19:38 2011 +0400 EHCI: only power off port if over-current is active MAX4967 USB power supply chip we use on our boards signals over-current when power is not enabled; once it's enabled, over-current signal returns to normal. That unfortunately caused the endless stream of "over-current change on port" messages. The EHCI root hub code reacts on every over-current signal change with powering off the port -- such change event is generated the moment the port power is enabled, so once enabled the power is immediately cut off. I think we should only cut off power when we're seeing the active over-current signal, so I'm adding such check to that code. I also think that the fact that we've cut off the port power should be reflected in the result of GetPortStatus request immediately, hence I'm adding a PORTSCn register readback after write... Signed-off-by: Sergei Shtylyov Cc: stable@kernel.org Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8dec92b24064f1ffbb6537ba97729b633b400c28 Author: Tobias Klauser Date: Thu Jul 7 09:28:21 2011 +0200 USB: mon: Allow to use usbmon without debugfs Do not bail out with an error in mon_text_init() if debugfs is not available, instead just return 0 and let mon_init() go ahead with loading the binary API. Return -ENOMEM in case debugfs_create_dir() fails for other reasons. Later, it is enough to check for mon_dir not set. Signed-off-by: Tobias Klauser Signed-off-by: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman commit 004c19682884d4f40000ce1ded53f4a1d0b18206 Author: Alan Stern Date: Tue Jul 5 12:34:05 2011 -0400 USB: EHCI: go back to using the system clock for QH unlinks This patch (as1477) fixes a problem affecting a few types of EHCI controller. Contrary to what one might expect, these controllers automatically stop their internal frame counter when no ports are enabled. Since ehci-hcd currently relies on the frame counter for determining when it should unlink QHs from the async schedule, those controllers run into trouble: The frame counter stops and the QHs never get unlinked. Some systems have also experienced other problems traced back to commit b963801164618e25fbdc0cd452ce49c3628b46c8 (USB: ehci-hcd unlink speedups), which made the original switch from using the system clock to using the frame counter. It never became clear what the reason was for these problems, but evidently it is related to use of the frame counter. To fix all these problems, this patch more or less reverts that commit and goes back to using the system clock. But this can't be done cleanly because other changes have since been made to the scan_async() subroutine. One of these changes involved the tricky logic that tries to avoid rescanning QHs that have already been seen when the scanning loop is restarted, which happens whenever an URB is given back. Switching back to clock-based unlinks would make this logic even more complicated. Therefore the new code doesn't rescan the entire async list whenever a giveback occurs. Instead it rescans only the current QH and continues on from there. This requires the use of a separate pointer to keep track of the next QH to scan, since the current QH may be unlinked while the scanning is in progress. That new pointer must be global, so that it can be adjusted forward whenever the _next_ QH gets unlinked. (uhci-hcd uses this same trick.) Simplification of the scanning loop removes a level of indentation, which accounts for the size of the patch. The amount of code changed is relatively small, and it isn't exactly a reversion of the b963801164 commit. This fixes Bugzilla #32432. Signed-off-by: Alan Stern CC: Tested-by: Matej Kenda Signed-off-by: Greg Kroah-Hartman commit 0c42a4e84502533ec40544324debe2a62836ae11 Author: Anisse Astier Date: Tue Jul 5 16:38:46 2011 +0200 ehci: add pci quirk for Ordissimo and RM Slate 100 too Add another variant of the Pegatron tablet used by Ordissimo, and apparently RM Slate 100, to the list of models that should skip the negociation for the handoff of the EHCI controller. Signed-off-by: Anisse Astier Signed-off-by: Greg Kroah-Hartman commit 03c75362181b0b1d6a330e7cf8def10ba988dfbe Author: Anisse Astier Date: Tue Jul 5 16:38:45 2011 +0200 ehci: refactor pci quirk to use standard dmi_check_system method In commit 3610ea5397b80822e417aaa0e706fd803fb05680 (ehci: workaround for pci quirk timeout on ExoPC), a workaround was added to skip the negociation for the handoff of the EHCI controller. Refactor the DMI detection code to use standard dmi_check_system function. Signed-off-by: Anisse Astier Signed-off-by: Greg Kroah-Hartman commit cc62a7eb6396e8be95b9a30053ed09191818b99b Author: Kirill Smelkov Date: Sun Jul 3 20:36:57 2011 +0400 USB: EHCI: Allow users to override 80% max periodic bandwidth There are cases, when 80% max isochronous bandwidth is too limiting. For example I have two USB video capture cards which stream uncompressed video, and to stream full NTSC + PAL videos we'd need NTSC 640x480 YUV422 @30fps ~17.6 MB/s PAL 720x576 YUV422 @25fps ~19.7 MB/s isoc bandwidth. Now, due to limited alt settings in capture devices NTSC one ends up streaming with max_pkt_size=2688 and PAL with max_pkt_size=2892, both with interval=1. In terms of microframe time allocation this gives NTSC ~53us PAL ~57us and together ~110us > 100us == 80% of 125us uframe time. So those two devices can't work together simultaneously because the'd over allocate isochronous bandwidth. 80% seemed a bit arbitrary to me, and I've tried to raise it to 90% and both devices started to work together, so I though sometimes it would be a good idea for users to override hardcoded default of max 80% isoc bandwidth. After all, isn't it a user who should decide how to load the bus? If I can live with 10% or even 5% bulk bandwidth that should be ok. I'm a USB newcomer, but that 80% set in stone by USB 2.0 specification seems to be chosen pretty arbitrary to me, just to serve as a reasonable default. NOTE 1 ~~~~~~ for two streams with max_pkt_size=3072 (worst case) both time allocation would be 60us+60us=120us which is 96% periodic bandwidth leaving 4% for bulk and control. Alan Stern suggested that bulk then would be problematic (less than 300*8 bittimes left per microframe), but I think that is still enough for control traffic. NOTE 2 ~~~~~~ Sarah Sharp expressed concern that maxing out periodic bandwidth could lead to vendor-specific hardware bugs on host controllers, because > It's entirely possible that you'll run into > vendor-specific bugs if you try to pack the schedule with isochronous > transfers. I don't think any hardware designer would seriously test or > validate their hardware with a schedule that is basically a violation of > the USB bus spec (more than 80% for periodic transfers). So far I've only tested this patch on my HP Mini 5103 with N10 chipset kirr@mini:~$ lspci 00:00.0 Host bridge: Intel Corporation N10 Family DMI Bridge 00:02.0 VGA compatible controller: Intel Corporation N10 Family Integrated Graphics Controller 00:02.1 Display controller: Intel Corporation N10 Family Integrated Graphics Controller 00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02) 00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02) 00:1c.3 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 4 (rev 02) 00:1d.0 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02) 00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02) 00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 00:1f.0 ISA bridge: Intel Corporation NM10 Family LPC Controller (rev 02) 00:1f.2 SATA controller: Intel Corporation N10/ICH7 Family SATA AHCI Controller (rev 02) 01:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01) 02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8059 PCI-E Gigabit Ethernet Controller (rev 11) and the system works stable with 110us/uframe (~88%) isoc bandwith allocated for above-mentioned isochronous transfers. NOTE 3 ~~~~~~ This feature is off by default. I mean max periodic bandwidth is set to 100us/uframe by default exactly as it was before the patch. So only those of us who need the extreme settings are taking the risk - normal users who do not alter uframe_periodic_max sysfs attribute should not see any change at all. NOTE 4 ~~~~~~ I've tried to update documentation in Documentation/ABI/ thoroughly, but only "TBD" was put into Documentation/usb/ehci.txt -- the text there seems to be outdated and much needing refreshing, before it could be amended. Cc: Sarah Sharp Signed-off-by: Kirill Smelkov Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 4c67045bfc2c14a1d3c6040e80eb4a62946282dd Author: Kirill Smelkov Date: Sun Jul 3 20:36:56 2011 +0400 USB: EHCI: Move sysfs related bits into ehci-sysfs.c The only sysfs attr implemented so far is "companion" from ehci-hub.c, but in the next patch we are going to add another sysfs file, so prior to that let's structure things and move already-in-there sysfs code to separate file. NOTE: All the code I'm moving into this new file was written by Alan Stern (in 57e06c11 "EHCI: force high-speed devices to run at full speed"; Jan 16 2007), that's why I'm putting Copyright (C) 2007 by Alan Stern there after explicit request from the author. Signed-off-by: Kirill Smelkov Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 6f95b4b75295e40851e653e70884fc31c025789f Author: Chris Forbes Date: Sun Jul 3 11:53:34 2011 +1200 drivers: usb: atm: ueagle-atm: Add missing const qualifier Added missing const qualifier as flagged by checkpatch.pl Signed-off-by: Chris Forbes Signed-off-by: Greg Kroah-Hartman commit 586073071db01a1f2b939aa31df1e83debb28bf0 Author: Chris Forbes Date: Sun Jul 3 11:53:33 2011 +1200 drivers: usb: atm: ueagle-atm: use __packed Replaced __attribute__ ((packed)) with __packed; Signed-off-by: Chris Forbes Signed-off-by: Greg Kroah-Hartman commit 2cb30bb11963907acdd69f77e77b3fabb16cfa62 Author: Matthieu CASTET Date: Sat Jul 2 20:59:46 2011 +0200 ehci-msm : use ehci_setup Signed-off-by: Matthieu CASTET Tested-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 8f360119243c214eb5c5549c61981d51a276154a Author: Vinicius Costa Gomes Date: Fri Jul 8 18:31:46 2011 -0300 Bluetooth: Add support for returning the encryption key size This will be useful when userspace wants to restrict some kinds of operations based on the length of the key size used to encrypt the link. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 726b4ffcaa450d9593b9b6ac8605967ce9f3e506 Author: Vinicius Costa Gomes Date: Fri Jul 8 18:31:45 2011 -0300 Bluetooth: Add support for storing the key size In some cases it will be useful having the key size used for encrypting the link. For example, some profiles may restrict some operations depending on the key length. The key size is stored in the key that is passed to userspace using the pin_length field in the key structure. For now this field is only valid for LE controllers. 3.0+HS controllers define the Read Encryption Key Size command, this field is intended for storing the value returned by that command. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 5a0a8b49746771fba79866fb9185ffa051a6a183 Author: Vinicius Costa Gomes Date: Fri Jul 8 18:31:44 2011 -0300 Bluetooth: Add support for communicating keys with userspace As the key format has changed to something that has a dynamic size, the way that keys are received and sent must be changed. The structure fields order is changed to make the parsing of the information received from the Management Interface easier. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 966b9016a175f0c2a555e937fb918fd845e4b2cc Author: Dan Magenheimer Date: Thu Jul 7 07:37:19 2011 -0700 staging: zcache: support multiple clients, prep for KVM and RAMster This is version 3 of an update to zcache, incorporating feedback from the list. This patch adds support to the in-kernel transcendent memory ("tmem") code and the zcache driver for multiple clients, which will be needed for both RAMster and KVM support. It also adds additional tmem callbacks to support RAMster and corresponding no-op stubs in the zcache driver. In v2, I've also taken the liberty of adding some additional sysfs variables to both surface information and allow policy control. Those experimenting with zcache should find them useful. V3 clarifies some code walking and declaring arrays. Signed-off-by: Dan Magenheimer [v3: error27@gmail.com: fix array bounds/walking] [v2: konrad.wilk@oracle.com: fix bools, add check for NULL, fix a comment] [v2: sjenning@linux.vnet.ibm.com: add info/tunables for poor compression] [v2: marcusklemm@googlemail.com: add tunable for max persistent pages] Acked-by: Dan Carpenter Cc: Nitin Gupta Cc: linux-mm@kvack.org Cc: kvm@vger.kernel.org Signed-off-by: Greg Kroah-Hartman commit 94c97e8e0692ee3a58868a013b973fcf7fed348c Author: Justin P. Mattock Date: Thu Jul 7 15:19:54 2011 +0200 drivers:staging:rtl typo fix encryptiong to encryption. This patch fixes a typo. Signed-off-by: Justin P. Mattock Cc: Jiri Kosina Signed-off-by: Greg Kroah-Hartman commit 20c3d7f71d31aff167bb4a8c536df3e6bd85dd9e Author: Cho, Yu-Chen Date: Thu Jul 7 11:27:14 2011 +0800 Staging: Remove ENE UB6250 MS card codes from keucr Remove ENE UB6250 MS card codes from keucr. Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 33842cedfc33ee907b2a702f321a26f7c0bf0aaa Author: Cho, Yu-Chen Date: Thu Jul 7 11:27:13 2011 +0800 Staging: Merge ENE UB6250 MS card codes from keucr to drivers/usb/storage/ene_ub6250.c Merge ENE UB6250 MS card codes from keucr to drivers/usb/storage/ene_ub6250.c. Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 01e57c5742fcd4d08eddab59ef1c3b3e1f60610c Author: Bryan Freed Date: Thu Jul 7 12:01:56 2011 -0700 staging:iio:light:isl29018: Convert some of the isl29018 driver to the new iio_chan_spec framework. Remove the driver's get_sensor_data() interfaces and replace them with iio_chan_spec channels. This converts 4 files to the new framework. Driver ABI change: The intensity_infrared_raw file is now intensity_ir_raw. Signed-off-by: Bryan Freed Signed-off-by: Greg Kroah-Hartman commit f09f2c8142d275b0d9321d2ea93c8bd0d8dc32ec Author: Bryan Freed Date: Thu Jul 7 12:01:55 2011 -0700 staging:iio: Add an iio channel type string to support proximity sensors. Add "proximity" to the iio_chan_type_name_spec_shared string list to support proximity sensors. Now this list fully matches the declared iio_chan_type enums. Signed-off-by: Bryan Freed Signed-off-by: Greg Kroah-Hartman commit 9bff02f8f71c4366efd6f5d79150f9786884bd1c Author: Bryan Freed Date: Thu Jul 7 12:01:54 2011 -0700 staging:iio: Reorder channel type strings to match the iio.h enums. This makes comparison between the iio_chan_type_name_spec_shared strings and the iio_chan_type enums easier. Signed-off-by: Bryan Freed Signed-off-by: Greg Kroah-Hartman commit 152d52cf7ec18e655a2d5bb6a79d42e6e09d92d7 Author: Bryan Freed Date: Thu Jul 7 12:01:57 2011 -0700 staging:iio:light:isl29018: Fix the "Init of isl29018 fails" failure. The I2C clientdata is set to indio_dev instead of chip as of a couple weeks ago. Correct the calls to i2c_get_clientdata() accordingly. Otherwise the driver fails to initialize. Signed-off-by: Bryan Freed Signed-off-by: Greg Kroah-Hartman commit 6e882d472f2b9fdfa4838317c9b67a64403fef73 Author: Ravishankar Date: Fri Jul 8 13:14:45 2011 +0530 Staging: comedi: fix printk issue in rtd520.c This is a patch to the rtd520.c file that fixes up a printk warning found by the checkpatch.pl tool Signed-off-by: Ravishankr Signed-off-by: Greg Kroah-Hartman commit 7a98161646f98690d845fd599dc840cd7d765aad Author: Ravishankar Date: Fri Jul 8 16:38:31 2011 +0530 Staging: comedi: fix line over 80 character issue in rtd520.c This is a patch to the rtd520.c file that fixes up a warning: line over 80 character found by the checkpatch.pl tool Signed-off-by: Ravishankar Signed-off-by: Greg Kroah-Hartman commit 5fa88f3873e2d0afde618566d31e936a150be62a Author: Jean Delvare Date: Fri Jul 8 11:03:44 2011 +0200 staging: brcm80211: Fix module parameter permissions The third parameter of module_param is supposed to represent sysfs file permissions. A value of "1" makes no sense. I am changing it to "0" to align with the other module parameters in this driver. Signed-off-by: Jean Delvare Cc: Henry Ptasinski Cc: Brett Rudley Cc: Roland Vossen Cc: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 98c0a9c9badedd52f558f7657572e094c3d1c6e5 Author: Dan Carpenter Date: Fri Jul 8 10:25:40 2011 +0300 Staging: tm6000: remove unneeded check in get_next_buf() We dereference "buf" on the line before so if it were NULL here we would have OOPsed earlier. Also list_entry() never returns NULL. And finally, we handled the situation where the list is empty earlier in the function. So this test isn't needed and I've removed it. Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit e19d8ba145acbe5b0843270f25ff5821287e568e Author: Mark Einon Date: Thu Jul 7 23:38:58 2011 +0100 staging: et131x: et1310_mac.c: ConfigMacStatRegs() add missing regs to be zeroed The comment at the top of the function states 'we need to initialize all the macstat registers to zero', but not all macstat registers are zeroed. Zero the missing registers. Tested on an ET-131x device. Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 9c4715939a8fd4a9d90ef4855384481300f31c79 Author: Mark Einon Date: Thu Jul 7 23:38:57 2011 +0100 staging: et131x: Remove spaces between tabs inserted in patch 7b7fb34d3ffa I must remember to run checkpatch on 'trivial' patches too... Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 4af1c77fa618f077c23984f51aed0b0daca9fd45 Author: Mark Einon Date: Thu Jul 7 22:59:04 2011 +0100 staging: et131x: Convert et1310_address_map.h names from camel case Trivial name changes. Tested on an ET-131x device. Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 12d4f964482e59f59b2064510d168fe83e91ff04 Author: Mark Einon Date: Thu Jul 7 22:59:03 2011 +0100 staging: et131x: rename adapter->Flags to adapter->flags Trivial rename of the adapter flags struct member to remove camel case. Tested on a ET-131x device. Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 02cc343b83a57824b83e1c30024ec9a84e5fb3a2 Author: Joe Perches Date: Thu Jul 7 21:31:06 2011 -0700 staging: brcm80211: nicpci: Neatening Remove unnecessary casts of void *. Spacing and removal of unnecessary parentheses. 80 column wrapping. Comment neatening. Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 84db550cbdb2859a219dc2653bafe3bbdda11708 Author: Tracey Dent Date: Thu Jul 7 14:17:24 2011 -0400 Altera-stapl: Clean up makefile (-y instead of -objs) Changed Makefile to use -y instead of -objs because -objs is deprecated. Signed-off-by: Tracey Dent Signed-off-by: Greg Kroah-Hartman commit 06c156072b1edf831dcb20d566839f4c0b6c26f2 Author: Tracey Dent Date: Thu Jul 7 14:17:25 2011 -0400 Ath6kl: TODO: Fix spelling :) Change the word editign to editing Signed-off-by: Tracey Dent Signed-off-by: Greg Kroah-Hartman commit 73019286cddc8bba1773944a7b6b603137fd66ff Author: Tomas Winkler Date: Thu Jul 7 20:45:46 2011 +0300 staging/easycap: remove oss support remove support for OSS. OSS is being deprecated and it is just plain headache to support both alsa and oss. Last I broke the compilation when OSS is enabled with the patch cdaa898b5efcc598ab1004e8f913061dc7005091 staging/easycap: kill telltale logic so this fixes also that issue. Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 808a3b5f9b1deb7e449765192a0315e2da904553 Author: Tomas Winkler Date: Thu Jul 7 20:45:45 2011 +0300 staging/easycap: remove unused macro MICROSECONDS Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 26af13f15ab281c9e20f8027bc556111644662ae Author: Feng Tang Date: Fri Jul 8 09:59:26 2011 +0100 sst: avoid unnecessary firmware reloading for MRST SST HW on MRST doesn't need to reload the firmware during suspend/resume cycle, so remove the extra workload. This also fix a bug that the firmware sample rate can't be modified when there is no active playback/capture stream. Signed-off-by: Feng Tang Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 35b5ddb6466f66c511217abd8b3f490e759dae3e Author: Lu Guanqun Date: Fri Jul 8 09:59:10 2011 +0100 sst: report correct jack event The status of jack event is compared bitwise: [in sound/core/jack.c:snd_jack_report()] for (i = 0; i < ARRAY_SIZE(jack_switch_types); i++) { int testbit = 1 << i; if (jack->type & testbit) input_report_switch(jack->input_dev, jack_switch_types[i], status & testbit); } So in order to report the correct events, 3 should be passed instead of 1. Signed-off-by: Lu Guanqun Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0aee58894551d7a9992f79d77d89f5846eb5e938 Author: matt mooney Date: Thu Jul 7 00:31:56 2011 -0700 staging: usbip: userspace: usbip-utils 1.1.1 Bump package revision number! Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 45dd9a98f7968fb0f67995c6ba96f67bdfcd8100 Author: matt mooney Date: Thu Jul 7 00:31:55 2011 -0700 staging: usbip: userspace: README: update example output Change a missed reference to the `list' command, and update the output from `usbip bind ...' and `usbip list -r ...' Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 2435ab147bfb8f490c3b3d2b0ff550c3e02f0c2e Author: matt mooney Date: Thu Jul 7 00:31:54 2011 -0700 staging: usbip: userspace: usbip: modify `list' help message The remote devices listed are, technically, exportable and not necessarily exported. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit fcedd169be21564280f83ef486e403fa34f61a39 Author: matt mooney Date: Thu Jul 7 00:31:53 2011 -0700 staging: usbip: userspace: usbip_list.c: modify exportable device output Change spacing to provide better indentation for readability. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit dffb9649d392b7fa7971c5fa54a4154cec264809 Author: matt mooney Date: Thu Jul 7 00:31:52 2011 -0700 staging: usbip: userspace: fix header installation bug A bug that I created due to using simply expanding variables in the makefiles. Although only unexpanded paths are at issue here, I decided to use recursively expanding variables on all of the parameterized values. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 3c6e9e8f350c95fbf17736e42ce273f10094d529 Author: matt mooney Date: Thu Jul 7 00:31:51 2011 -0700 staging: usbip: userspace: add new prefix for usbip network code Change and add new usbip_net_ prefix to every function in the network code for easier identification. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit e2ec6b4e391a877a9069e1ccc824c5c18dd62eb0 Author: matt mooney Date: Thu Jul 7 00:31:50 2011 -0700 staging: usbip: userspace: usbipd: major cleanup of daemon Reorganize, rename [for clarity and to remove stub_driver references], modify output messages, and cleanup coding style; nevertheless, the actual implementation is pretty much untouched. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 6394c5a0379d0733396edd9452e31282e0684a3c Author: Randy Dunlap Date: Thu Jul 7 10:49:54 2011 -0700 staging: fix usbip printk format warning Fix usbip printk format warning for size_t: drivers/staging/usbip/stub_tx.c:236: warning: format '%lu' expects type 'long unsigned int', but argument 4 has type 'size_t' Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 33e73e0085089a2653cd638c990996b90833819b Author: Ravishankar Date: Thu Jul 7 21:14:43 2011 +0530 Staging: comedi: fix warning issue in unioxx5.c This is a patch to the unioxx5.c file that fixes up a warning found by the checkpatch.pl tool Signed-off-by: Ravishankar Signed-off-by: Greg Kroah-Hartman commit e9d1cf89ed5561adc1d36aea6d1349d12dfedd74 Author: Ravishankar Date: Thu Jul 7 19:53:04 2011 +0530 Staging: comedi: fix brace coding style issue in serial2002.c This is a patch to the serial2002.c file that fixes up a brace warning found by the checkpatch.pl tool Signed-off-by: Ravishankar Signed-off-by: Greg Kroah-Hartman commit b041267ea819054aa9b406efc94fe8821ea2e67b Author: Ravishankar Date: Thu Jul 7 17:35:27 2011 +0530 Staging: comedi: fix brace and printk coding style issue in serial2002.c This is a patch to the serial2002.c file that fixes up a brace and printk warning found by the checkpatch.pl tool Signed-off-by: Ravishankar Signed-off-by: Greg Kroah-Hartman commit cbecb8bf564f706e7b4346d54be8a39f0309b91c Author: Oren Weil Date: Thu Jul 7 16:02:45 2011 +0300 staging: mei: reordering the exit module cleanup keeping the exit flow in a reverse order then the init flow. Signed-off-by: Oren Weil Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit c3314080fede7b7ee84c2aa7001f72d46e884787 Author: Dan Carpenter Date: Fri Jul 8 09:45:49 2011 +0100 gma500: remove unneeded check in mdfld_crtc_mode_set() The list cursor is never NULL in a list_for_each_entry() loop. Signed-off-by: Dan Carpenter Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit d75758b3d12b45fc7535083a968b3a99935c9d9a Author: Dan Carpenter Date: Fri Jul 8 09:45:32 2011 +0100 gma500: reversed test in mdfld_dbi_dsr_exit() We should only cleanup "dsr_info" if it's non-NULL obviously and not the other way around. Signed-off-by: Dan Carpenter Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit fc5ace7ed2a58e32047abf65ff8b5a6432e92fac Author: Dan Carpenter Date: Fri Jul 8 09:45:19 2011 +0100 Staging: gma500: typo in array initialization There is a comma missing here between the strings so they were concatenated by mistake. Signed-off-by: Dan Carpenter Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 983e4d3432c5b5b55329347706fbd4e6f88d6760 Author: Alan Cox Date: Fri Jul 8 09:45:07 2011 +0100 gma500: Fix unused variable in cdv support Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9fce3623856d5998e01807ee7aa8991665ebf652 Author: Alan Cox Date: Fri Jul 8 09:44:52 2011 +0100 gma500; clean mid files Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit e913972423fc6ec0eee33469f691f9cce3a47680 Author: Alan Cox Date: Fri Jul 8 09:44:34 2011 +0100 gma500: tidy the mrst files Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0cf0db5e3d32b3b1bb7c792f09f945ac929c659e Author: Alan Cox Date: Fri Jul 8 09:44:20 2011 +0100 gma500: tidy up the CDV files We are close to having PSB and CDV ready for moving from staging so it's time to get the polish out. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 2b9428e20333ee42d00335c9700dcb20cf54f384 Author: Patrik Jakobsson Date: Fri Jul 8 09:44:03 2011 +0100 gma500: Mask out bits not part of the page table base address Otherwise we can't ioremap the gtt and the screen gets garbled. Signed-off-by: Patrik Jakobsson Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 5ed836acd2c7760e03c639566b59b4c1cc53a792 Author: Alan Cox Date: Fri Jul 8 09:43:45 2011 +0100 gma500: Fix symbol clash with i915 Randy Dunlap reports: | when both CONFIG_DRM_I915=y and CONFIG_DRM_PSB=y: | drivers/staging/built-in.o: In function `intel_opregion_init': | (.text+0x47943): multiple definition of `intel_opregion_init' | drivers/gpu/built-in.o:(.text+0x17277a): first defined here Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 75ec9bb006171cff72816eaffc3f5848f46944bc Author: Alan Cox Date: Fri Jul 8 09:43:29 2011 +0100 gma500: psb_intel_lvds style Fixed some stylistic uglies noticed while fixing the previous bug Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit d3cf695c58eae98271effac22e6dce00bb61cd06 Author: Alan Cox Date: Fri Jul 8 09:43:15 2011 +0100 gma500: Re-order checks and dereferences in psb_intel_lvds Dan Carpenter reports: Smatch complains about 6a7afe3acc4b "gma500: continue abstracting platform specific code" drivers/staging/gma500/psb_intel_lvds.c +579 psb_intel_lvds_set_property(7) warn: variable dereferenced before check 'encoder' --- a/drivers/staging/gma500/psb_intel_lvds.c +++ b/drivers/staging/gma500/psb_intel_lvds.c @@ -575,11 +575,12 @@ int psb_intel_lvds_set_property(struct drm_connector *connector, struct drm_property *property, uint64_t value) { - struct drm_encoder *pEncoder = connector->encoder; + struct drm_encoder *encoder = connector->encoder; + struct drm_psb_private *dev_priv = encoder->dev->dev_private; ^^^^^^^^^^^^ dereference encoder here. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit fa3b1c881247752677cec042dd4d82a9dde1bf88 Author: Jesper Juhl Date: Fri Jul 8 09:42:58 2011 +0100 gma500: strip unneeded version headers Remove unneeded version.h includes from drivers/staging/gma500/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/gma500/. This patch removes them. Signed-off-by: Jesper Juhl [updated for all th file cleanup and movement] Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0eb08e339836989557ea3aa4c427377bd32ce19c Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:42 2011 -0300 Bluetooth: Remove unused field in hci_conn Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 02bc74556a3f1b26adf3feb372376c56ba990564 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:41 2011 -0300 Bluetooth: Use the stored LTK for restabilishing security Now that it's possible that the exchanged key is present in the link key list, we may be able to estabilish security with an already existing key, without need to perform any SMP procedure. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit e7e62c8592484f79469312fc694d2995918aa152 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:40 2011 -0300 Bluetooth: Use the link key list to temporarily store the STK With this we can use only one place to store all keys, without need to use a field in the connection structure for this purpose. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 16b908396fbf1be49d417ffdb4a8b41c8c8cb670 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:39 2011 -0300 Bluetooth: Add support for storing the LTK Now when the LTK is received from the remote or generated it is stored, so it can later be used. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 54790f73a3ec87c181e4d6e5eb6963de3d50ebd7 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:38 2011 -0300 Bluetooth: Fix SM pairing parameters negotiation Before implementing SM key distribution, the pairing features exchange must be better negotiated, taking into account some features of the host and connection requirements. If we are in the "not pairable" state, it makes no sense to exchange any key. This allows for simplification of the key negociation method. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit bea710feff617e3469789dd8f930b284c83a87f5 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:37 2011 -0300 Bluetooth: Reject an encryption request when the key isn't found Now that we have methods to finding keys by its parameters we can reject an encryption request if the key isn't found. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 75d262c2ad927751bb5f096f3a6a37d81e7784f2 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:36 2011 -0300 Bluetooth: Add functions to manipulate the link key list for SMP As the LTK (the new type of key being handled now) has more data associated with it, we need to store this extra data and retrieve the keys based on that data. Methods for searching for a key and for adding a new LTK are introduced here. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 34918cd71b953905e5f832537ead436bcd57e8f9 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:35 2011 -0300 Bluetooth: Add new structures for supporting SM key distribution We need these changes because SMP keys may have more information associated with them, for example, in the LTK case, it has an encrypted diversifier (ediv) and a random number (rand). Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit d8bf4ca9ca9576548628344c9725edd3786e90b1 Author: Michal Hocko Date: Fri Jul 8 14:39:41 2011 +0200 rcu: treewide: Do not use rcu_read_lock_held when calling rcu_dereference_check Since ca5ecddf (rcu: define __rcu address space modifier for sparse) rcu_dereference_check use rcu_read_lock_held as a part of condition automatically so callers do not have to do that as well. Signed-off-by: Michal Hocko Acked-by: Paul E. McKenney Signed-off-by: Jiri Kosina commit 7034b911af1aa571995b56db3ed71a25daf00373 Author: Vinicius Costa Gomes Date: Thu Jul 7 18:59:34 2011 -0300 Bluetooth: Add support for SMP phase 3 (key distribution) This adds support for generating and distributing all the keys specified in the third phase of SMP. This will make possible to re-establish secure connections, resolve private addresses and sign commands. For now, the values generated are random. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 40bfff85ffb5c85ffabcb6d71e64f70799595f89 Author: Liu, ShuoX Date: Fri Jul 8 14:24:31 2011 +0800 spi/dw: Add spi number into spi irq desc Signed-off-by: ShuoX Liu Signed-off-by: Grant Likely commit 136d9ebff300044865693a57d68fe5905635992a Merge: 149bb2f a50777c Author: Konrad Rzeszutek Wilk Date: Fri Jul 8 15:07:30 2011 -0400 Merge branch 'xen-tmem-selfballoon-v8' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem into stable/drivers * 'xen-tmem-selfballoon-v8' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem: xen: tmem: self-ballooning and frontswap-selfshrinking commit 2cffff1281a74714c9e035322077ec52ffb1f838 Author: ShuoX Liu Date: Fri Jul 8 20:53:55 2011 +0200 PM / Runtime: Consistent utilization of deferred_resume dev->power.deferred_resume is used as a bool typically, so change one assignment to false from 0, like other places. Signed-off-by: ShuoX Liu commit b98c0239204d6603b3a33bcc2b3916adaa8d4160 Author: Shawn Guo Date: Fri Jul 8 16:27:33 2011 +0800 dt: add empty of_property_read_u32[_array] for non-dt The patch adds empty functions of_property_read_u32 and of_property_read_u32_array for non-dt build, so that drivers migrating to dt can save some '#ifdef CONFIG_OF'. Signed-off-by: Shawn Guo [grant.likely: Moved things around so only one new static inline is needed] [grant.likely: Added _string variant] Signed-off-by: Grant Likely commit c7e89b16eb90e7bdf0d71bd5ba265ce8d424f30b Author: Heechul Yun Date: Fri Jul 8 13:32:34 2011 +0100 ARM: 6995/2: mm: remove unnecessary cache flush on v6 copypage Originally introduced to maintain coherency between icache and dcache in v6 nonaliasing mode. This is now handled by __sync_icache_dcache since c0177800, therefore unnecessary in this function. Signed-off-by: Heechul Yun Acked-by: Catalin Marinas Signed-off-by: Russell King commit 8937cb602bea120248cef64961fc46836a394c8a Author: Shawn Guo Date: Thu Jul 7 00:37:43 2011 +0800 gpio/mxc: add device tree probe support The patch adds device tree probe support for gpio-mxc driver. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit 14305e685dff531583e95c5076f633f2fe2b141c Author: Shawn Guo Date: Thu Jul 7 00:37:42 2011 +0800 ARM: mxc: use ARCH_NR_GPIOS to define gpio number The patch removes MXC_GPIO_IRQS and instead uses ARCH_NR_GPIOS to define gpio number. This change is need when we change mxc gpio driver to be device tree aware. When migrating the driver to device tree, pdev->id becomes unusable. It requires driver get gpio range from gpio core, which will dynamically allocates number from ARCH_NR_GPIOS to 0. As a bonus point, it removes lines of '#if' and make the code a little bit cleaner. The side effect is the waste of number. But this is not a point when we go single image. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit e7fc6ae7446710a487510d212137a43289bbe90e Author: Shawn Guo Date: Thu Jul 7 00:37:41 2011 +0800 gpio/mxc: get rid of the uses of cpu_is_mx() The patch removes all the uses of cpu_is_mx(). Instead, it utilizes platform_device_id to distinguish the different gpio types, IMX1_GPIO on i.mx1, IMX21_GPIO on i.mx21 and i.mx27, IMX31_GPIO on all other i.mx SoCs. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit a50777c791031d7345ce95785ea6220f67339d90 Author: Dan Magenheimer Date: Fri Jul 8 12:26:21 2011 -0600 xen: tmem: self-ballooning and frontswap-selfshrinking This patch introduces two in-kernel drivers for Xen transcendent memory ("tmem") functionality that complement cleancache and frontswap. Both use control theory to dynamically adjust and optimize memory utilization. Selfballooning controls the in-kernel Xen balloon driver, targeting a goal value (vm_committed_as), thus pushing less frequently used clean page cache pages (through the cleancache code) into Xen tmem where Xen can balance needs across all VMs residing on the physical machine. Frontswap-selfshrinking controls the number of pages in frontswap, driving it towards zero (effectively doing a partial swapoff) when in-kernel memory pressure subsides, freeing up RAM for other VMs. More detail is provided in the header comment of xen-selfballooning.c. Signed-off-by: Dan Magenheimer [v8: konrad.wilk@oracle.com: set default enablement depending on frontswap] [v7: konrad.wilk@oracle.com: fix capitalization and punctuation in comments] [v6: fix frontswap-selfshrinking initialization] [v6: konrad.wilk@oracle.com: fix init pr_infos; add comments about swap] [v5: konrad.wilk@oracle.com: add NULL to attr list; move inits up to decls] [v4: dkiper@net-space.pl: use strict_strtoul plus a few syntactic nits] [v3: konrad.wilk@oracle.com: fix potential divides-by-zero] [v3: konrad.wilk@oracle.com: add many more comments, fix nits] [v2: rebased to linux-3.0-rc1] [v2: Ian.Campbell@citrix.com: reorganize as new file (xen-selfballoon.c)] [v2: dkiper@net-space.pl: proper access to vm_committed_as] [v2: dkiper@net-space.pl: accounting fixes] Cc: Jan Beulich Cc: Jeremy Fitzhardinge Cc: commit c7c369472dad852f6fe06a8be94dea72de784934 Author: Keith Packard Date: Fri Jul 8 10:29:42 2011 -0700 drm/i915: Enable i915 frame buffer compression by default We'll try again with the new fixes. Prepare to see this reverted when we get regression reports... Signed-off-by: Keith Packard commit 016b9b61ed692498a5d46dff974fe41b20e7e60b Author: Chris Wilson Date: Fri Jul 8 12:22:43 2011 +0100 drm/i915: Share the common work of disabling active FBC before updating Upon review, all path share the same dependencies for updating the registers and so we can benefit from sharing the code and checking early. This removes the unsightly intel_wait_for_vblank() from the lowlevel functions and upon further analysis the only path that will require a wait is if we are performing an instantaneous transition between two valid FBC configurations. The page-flip path itself will have disabled FBC registers and will have waited for at least one vblank before finishing the flip and attempting to re-enable FBC. This wait can be accomplished simply by delaying the enable until after we are sure that a vblank will have passed, which we are already doing to make sure that the display is settled before enabling FBC. Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 1630fe754c83b3e57efa51c85f1a21e612a63a0e Author: Chris Wilson Date: Fri Jul 8 12:22:42 2011 +0100 drm/i915: Perform intel_enable_fbc() from a delayed task In order to accommodate the requirements of re-enabling FBC after page-flipping, but to avoid doing so and incurring the cost of a wait for vblank in the middle of a page-flip sequence, we defer the actual enablement by 50ms. If any request to disable FBC arrive within that interval, the enablement is cancelled and we are saved from blocking on the wait. Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit 7782de3bd671657674e7baba854f0fd43e9f86bc Author: Chris Wilson Date: Fri Jul 8 12:22:41 2011 +0100 drm/i915: Disable FBC across page-flipping Page-flipping updates the scanout address, nukes the FBC compressed image and so forces an FBC update so that the displayed image remains consistent. However, page-flipping does not update the FBC registers themselves, which remain pointing to both the old address and the old CPU fence. Future updates to the new front-buffer (scanout) are then undetected! This first approach to demonstrate the issue and highlight the fix, simply disables FBC upon page-flip (a recompression will be forced on every flip so FBC becomes immaterial) and then re-enables FBC in the page-flip finish work function, so that the FBC registers are now pointing to the new framebuffer and front-buffer rendering works once more. Ideally, we want to only re-enable FBC after page-flipping is complete, as otherwise we are just wasting cycles and power (with needless recompression) whilst the page-flipping application is still running. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33487 Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit 9ce9d0695d15da23ffe817516ba5d0b58caf8d05 Author: Chris Wilson Date: Fri Jul 8 12:22:40 2011 +0100 drm/i915: Set persistent-mode for ILK/SNB framebuffer compression Persistent mode is intended for use with front-buffer rendering, such as X, where it is necessary to detect writes to the scanout either by the GPU or through the CPU's fence, and recompress the dirty regions on the fly. (By comparison to the back-buffer rendering, the scanout is always recompressed after a page-flip.) References: https://bugs.freedesktop.org/show_bug.cgi?id=33487 References: https://bugs.freedesktop.org/show_bug.cgi?id=31742 Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit de568510cd410d82d370d3000808aca63ef28a22 Author: Chris Wilson Date: Fri Jul 8 12:22:39 2011 +0100 drm/i915: Use of a CPU fence is mandatory to update FBC regions upon CPU writes ...and this requirement is enforced by intel_update_fbc() so we can remove the later check from g4x_enable_fbc() and ironlake_enable_fbc(). Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit f19a079a800dfd365fa8ed422acf29ca7a036ea3 Author: Chris Wilson Date: Fri Jul 8 12:22:38 2011 +0100 drm/i915: Remove vestigial pitch from post-gen2 FBC control routines The cfb_pitch was only used for 8xx_enable_fbc(), every later routine was just overwriting the value with itself thanks to a copy'n'paste error. Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit 973d04f990ac241881c4793cdfbe367b3caf3dba Author: Chris Wilson Date: Fri Jul 8 12:22:37 2011 +0100 drm/i915: Replace direct calls to vfunc.disable_fbc with intel_disable_fbc() ...to ensure that any pending FBC enable tasklet is cancelled. Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 43a9539fa9e780f16c0d1e4bc91a2701f1ce178f Author: Chris Wilson Date: Fri Jul 8 12:22:36 2011 +0100 drm/i915: Only export the generic intel_disable_fbc() interface As the enable/disable routines will be gain additional complexity in future patches, it is necessary that all callers do not bypass the generic interface by calling into the chipset routines directly. to do this we make the chipset routines static, so there is no choice. Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit a05e42c27f80d341a5ec2053b041e24231a002e2 Merge: 0a0e234 204d164 Author: David S. Miller Date: Fri Jul 8 09:36:30 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 81463b1ca8dbd2f4f180feac3f49c7640e2b5f79 Author: Chandra Seetharaman Date: Thu Jun 9 16:47:49 2011 +0000 xfs: remove variables that serve no purpose in xfs_alloc_ag_vextent_exact() Remove two variables that serve no purpose in xfs_alloc_ag_vextent_exact(). Signed-off-by: Chandra Seetharaman Signed-off-by: Alex Elder commit c0e090ced259b85b854636c99dda95b7070a2785 Author: Eric Sandeen Date: Fri May 20 21:52:17 2011 +0000 xfs: consolidate & clarify mount sanity checks Pavol pointed out that there is one silent error case in the mount path, and that others are rather uninformative. I've taken Pavol's suggested patch and extended it a bit to also: * fix a message which says "turned off" but actually errors out * consolidate the vaguely differentiated "SB sanity check [12]" messages, and hexdump the superblock for analysis Original-patch-by: Pavol Gono Signed-off-by: Eric Sandeen Signed-off-by: Alex Elder commit 0a0e2344a62ce9e7fac6129d6292e59aecfceced Author: Eric Dumazet Date: Fri Jul 8 05:29:30 2011 +0000 bna: use netdev_alloc_skb_ip_align() Some workloads need some headroom (NET_SKB_PAD) to avoid expensive reallocations. Using netdev_alloc_skb_ip_align() instead of bare skb_alloc() brings the NET_IP_ALIGN and the NET_SKB_PAD headroom. Signed-off-by: Eric Dumazet CC: Rasesh Mody CC: Debashis Dutt Signed-off-by: David S. Miller commit 135d23d66c53ade614c288d422f4c4b3205eb201 Author: Wang Shaoyan Date: Fri Jul 8 03:01:43 2011 +0000 ATM: Delete no use FILL_RX_POOLS_IN_BH marco The macro FILL_RX_POOLS_IN_BH is never been used, in order to avoid the compiler reports error because of the usage of function INIT_WORK, we just delete the marco. Cc: Chas Williams Cc: linux-atm-general@lists.sourceforge.net Signed-off-by: Wang Shaoyan Signed-off-by: David S. Miller commit 498d8e236304a62a2774d7264bdff2c6e8102b5b Author: Tobias Klauser Date: Thu Jul 7 22:06:26 2011 +0000 drivers/net: Omit check for multicast bit in netdev_for_each_mc_addr There is no need to check for the address being a multicast address in the netdev_for_each_mc_addr loop, so remove it. This patch covers all remaining network drivers still containing such a check. Cc: Joe Perches Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 40f5d72a4fc098c47068e3888cfb055922f6519f Author: Dan Carpenter Date: Thu Jul 7 21:27:24 2011 +0000 dcbnl: unlock on an error path in dcbnl_cee_fill() We need to release "dcb_lock" which we took on the previous line. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit c8bbde430f837c7ae280b6ac8d4a27b056b83318 Author: Barry Song Date: Thu Jul 7 19:54:29 2011 -0700 ARM: NUC93X: add UL suffix to VMALLOC_END to ensure it is properly typed Signed-off-by: Barry Song Acked-by: Russell King Signed-off-by: Arnd Bergmann commit 085fb6171f0b7d726250026e363c06d3c4d54312 Author: Barry Song Date: Thu Jul 7 19:54:28 2011 -0700 ARM: LPC32XXX: add UL suffix to VMALLOC_END to ensure it is properly typed Signed-off-by: Barry Song Acked-by: Russell King Signed-off-by: Arnd Bergmann commit ff5caab10e869274539654e02ae4ee155869b7e6 Author: Barry Song Date: Thu Jul 7 19:54:27 2011 -0700 ARM: CNS3XXX: add UL suffix to VMALLOC_END to ensure it is properly typed Signed-off-by: Barry Song Acked-by: Russell King Signed-off-by: Arnd Bergmann commit 560040b8400bbc9074ff23afb28891378482ee52 Author: stephen hemminger Date: Thu Jul 7 05:51:01 2011 +0000 skge/sky2: change config references to Marvell Change references to SysKonnect in Kconfig to Marvell since SysKonnect was acquired by Marvell back in 2002. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4ec8f0ca2ab6e1f89fd0ea73ede92a2e2d7409ef Author: stephen hemminger Date: Thu Jul 7 05:51:00 2011 +0000 sky2: version 1.29 Since new hardware chip support was added bump version. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4fb99cd6ac4fe6d03a334a6f4ebb2bbfc4b479ed Author: stephen hemminger Date: Thu Jul 7 05:50:59 2011 +0000 sky2: support for new Optima chipsets (EXPERIMENTAL) This is a backport from the vendor driver of support for the newer Optima (Prime and 2) chipsets. It also includes some setup changes for the current Optima chip as well. The code and comments intentionally mirror the vendor sk98lin driver to allow for easier maintenance. Although this adds support for new chip id's, these chip id's are not used by any of the current PCI device id's listed in the driver. The patch is just to get initial infrastructure in place to handle them when they come. I don't have access to any of this hardware to actually test it yet. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8e11680f5e1abc85298c12a99e2b741249eadc0c Author: stephen hemminger Date: Thu Jul 7 05:50:58 2011 +0000 sky2: use correct Inter Packet Gap at 10/100mbit This is another fix picked out of the vendor driver. The IPG value in the serial mode register is supposed to be programmed differently at lower speeds. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit aa5ca96c8fffea769aedd795f48695112393dc89 Author: stephen hemminger Date: Thu Jul 7 13:40:00 2011 +0000 sky2: force receive checksum when using RSS on some hardware (v2) Found when reviewing the vendor driver. Apparently some chip versions require receive checksumming to be enabled in order for RSS to work. Also, if fix_features has to change some settings; put in message in log in similar manner to netdev_fix_features. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8ae2e12f1534e647d4a816755e5a09c2de6f9fca Author: Rajkumar Manoharan Date: Fri Jul 8 18:12:03 2011 +0530 ath9k_htc: Inform stack about tx ack status Recent firmware changes report tx ack status properly to driver. Hence updating ath9k_htc driver capabilities. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 1fa1238e50385707b8e9fea97d16252c931448d8 Author: Rajkumar Manoharan Date: Fri Jul 8 18:12:02 2011 +0530 ath9k_hw: Remove read-only registers from AR9003 intervals This patch removes read only registers that cause invalid address access and also updates index for measurement filter calibration window size. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 43d9325b2477b556ac1cc95cf15f40cbd4100e5d Author: Rajkumar Manoharan Date: Fri Jul 8 18:12:01 2011 +0530 ath9k_hw: Disable power detector calibration for AR9003 The power detector calibration is disabled because this block doesn't exist in AR9003 based chips and also parallel calibration is enabled otherwise the calibration will never stop. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 6fea2b15cc166e8e8851083395c17314c7bd874a Author: Rajkumar Manoharan Date: Fri Jul 8 18:12:00 2011 +0530 ath9k_hw: Update AR9003 interval to improve 5G Tx EVM The number of temperature reading samples to average during a Tx packet is decreased to 1 from 2 to improve 5G Tx EVM with chain 0-only mode. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 1a84ff7564ae43dd1ea20e17f867de2700ca5b5b Author: Luciano Coelho Date: Fri Jul 8 11:16:16 2011 +0300 cfg80211: return -ENOENT when stopping sched_scan while not running If we try to stop a scheduled scan while it is not running, we should return -ENOENT instead of simply ignoring the command and returning success. This is more consistent with other parts of the code. Reported-by: Johannes Berg Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 331c5ea2d92c76bfe58a9bb5e6d21160850a29bc Author: Mohammed Shafi Shajakhan Date: Fri Jul 8 13:01:32 2011 +0530 ath9k_hw: Disable PAPRD based on paprd_ht20_mask for 5GHz Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit e156103cee78a1dd1c0d14efe08aa36fc9285013 Author: Yogesh Ashok Powar Date: Thu Jul 7 17:37:09 2011 -0700 mwifiex: 4-byte alignment in mwifiex_process_sta_txpd() In XMIT path, the skb that we get from the kernel itself is not aligned with 4-byte boundary on some embedded platforms. Had it not been the presence of tx_pkt_offset field in txpd, 4 byte memory alignment was not possible without memmove of entire skb. And that would have increased MIPS instead of reducing. With this patch few memory cycles can be saved while fetching interface header and txpd structure because of 4 bytes memory alignment. Reported-by: Philip Rakity Signed-off-by: Yogesh Ashok Powar Tested-by: Philip Rakity Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 38869d79e5b498bd35c9967231dfb01cdd301bf5 Author: Amitkumar Karwar Date: Thu Jul 7 17:33:20 2011 -0700 mwifiex: fix minor issue in debugfs command 'info' Debugfs command 'info' shows wrong interface type. The regression occurred due to commit eecd8250e (mwifiex: remove MWIFIEX_BSS_MODE_ macros) in which we replaced MWIFIEX_BSS_MODE_* macros by NL80211_IFTYPE_*, for example, MWIFIEX_BSS_MODE_IBSS (2) --> NL80211_IFTYPE_ADHOC (1) The issue is fixed by swapping static character array used to display interface type information. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit e6faada5daddcdf29056c8abee0869d4e2cd55b5 Author: Amitkumar Karwar Date: Thu Jul 7 17:33:19 2011 -0700 mwifiex: fix regression in WEP security mode Htcapinfo is unnecessarily sent in assoc request in WEP security due to a regression introduced by commit 2be50b8df53 (mwifiex: remove redundant encryption_mode mapping). The issue is fixed in this patch. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 4fc5401c144d95b031e839ba3208e04c79ac84cb Author: Pavel Roskin Date: Thu Jul 7 18:14:25 2011 -0400 ath5k: read sc->imask with sc->irqlock held Signed-off-by: Pavel Roskin sc->imask may change if ath5k_set_current_imask() races against itself. Signed-off-by: John W. Linville commit e2df64c1d767eb52a5c617668e20745d5e3015c8 Author: Pavel Roskin Date: Thu Jul 7 18:14:19 2011 -0400 ath5k: use kstrtoint() to parse numbers coming from sysfs Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 3f9aed7c7d517dbc717a97649d0a5a9dc80bf4f2 Merge: 31817df a7f9bec Author: David S. Miller Date: Fri Jul 8 08:44:57 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/linux-merge commit e4bbf2f541501dcde47ce687ffc6d238bd2f7813 Author: Pavel Roskin Date: Thu Jul 7 18:14:13 2011 -0400 ath5k: fix formatting errors found by checkpatch.pl Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit d2c7f7730e5660c812765acd57516f709ea35fc0 Author: Pavel Roskin Date: Thu Jul 7 18:14:07 2011 -0400 ath5k: fix misplaced or extraneous braces found by checkpatch.pl Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 633d006ee6a7229f1d2c60924084d902d60c0e5f Author: Pavel Roskin Date: Thu Jul 7 18:14:01 2011 -0400 ath5k: use parentheses around macro definitions Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 2753f87a574c4844dfa1709c7d0a474f0dc8d818 Author: Pavel Roskin Date: Thu Jul 7 18:13:55 2011 -0400 ath5k: don't use volatile, it's not needed Signed-off-by: Pavel Roskin The reg variable is only used by __raw_writel() and __raw_readl(), which should guarantee memory access in the right order. Signed-off-by: John W. Linville commit 2724a74a2620f98bd63e866e54938d092a017b21 Author: Pavel Roskin Date: Thu Jul 7 18:13:48 2011 -0400 ath5k: use more readable way to clear MAC address Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 25380d8068dbe983c929f5d10ae18647082511d8 Author: Pavel Roskin Date: Thu Jul 7 18:13:42 2011 -0400 ath5k: use DEFINE_PCI_DEVICE_TABLE in led.c, mark users with __devinit Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit ef82763d8dad6b2312ce388fd9af23dd2b4626d4 Author: Pavel Roskin Date: Thu Jul 7 18:13:36 2011 -0400 ath5k: use KERN_WARNING in ATH5K_PRINTF Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit fdd55d14b7d3a721e60fdc8be12ec0beb9cda8c6 Author: Pavel Roskin Date: Thu Jul 7 18:13:30 2011 -0400 ath5k: remove unneeded parentheses after return Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 0a5d381348fcb12d27289b3a66824fb3481911ce Author: Pavel Roskin Date: Thu Jul 7 18:13:24 2011 -0400 ath5k: replace spaces with tabs as suggested by checkpatch.pl Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit b988a887a448be479696544de31656754c133f30 Author: Pavel Roskin Date: Thu Jul 7 18:13:17 2011 -0400 ath5k: remove PRIV_ENTRY and PRIV_ASSIGN macros, they obfuscate the code Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 69f7235fe69be5c644f934566f3b972988e71ee4 Author: Christian Lamparter Date: Thu Jul 7 23:01:25 2011 +0200 carl9170: Implement tx_frames_pending mac80211 callback function Implementing this callback function will cause mac80211 refrain from going to powersave state when there are still untransmitted TX frames in the queues. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit cae561473e87fd01b07d980c643acd51c07e1f64 Author: Sebastian Andrzej Siewior Date: Thu Jul 7 21:58:10 2011 +0200 net/b43: don't return IRQ_HANDLED if nothing was done Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: John W. Linville commit 21a18f284b00f977b355a2901d0ca6dae929b370 Author: Rafał Miłecki Date: Thu Jul 7 20:06:56 2011 +0200 b43: HT-PHY: define dummy TX power functions Without them we get Oops with NULL pointer Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 676b58c27475a9defccc025fea1cbd2b141ee539 Author: Rajkumar Manoharan Date: Thu Jul 7 23:33:39 2011 +0530 mac80211: Restart STA timers only on associated state A panic was observed when the device is failed to resume properly, and there are no running interfaces. ieee80211_reconfig tries to restart STA timers on unassociated state. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 565dfefbe196206bc1e40bf92e7c5d53e9d9f706 Author: Rajkumar Manoharan Date: Thu Jul 7 23:33:38 2011 +0530 ath9k_htc: do not configure filter before driver is started Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 58eb7ff3dc056c6935c1cedee365ccf554000f45 Author: Rafał Miłecki Date: Thu Jul 7 18:58:25 2011 +0200 b43: LCN-PHY: include new PHY in common code Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 8b9bda759e5b7c042c2b3ae852aaa332c0ee4495 Author: Rafał Miłecki Date: Thu Jul 7 18:58:24 2011 +0200 b43: define firmwares for HT and LCN PHYs We were uploading different firmwares to the hardware until finding responding one. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 42d98795505314c7af42c7c6b988425300958ed3 Author: Johannes Berg Date: Thu Jul 7 18:58:01 2011 +0200 mac80211: allow driver to generate P1K for IV32 In order to support pre-populating the P1K cache in iwlwifi hardware for WoWLAN, we need to calculate the P1K for the current IV32. Allow drivers to get the P1K for any given IV32 instead of for a given packet, but keep the packet-based version around as an inline. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3ea542d3c2862142ae511fac5ce2dfc7419dcc53 Author: Johannes Berg Date: Thu Jul 7 18:58:00 2011 +0200 mac80211: allow drivers to access key sequence counter In order to implement GTK rekeying, the device needs to be able to encrypt frames with the right PN/IV and check the PN/IV in RX frames. To be able to tell it about all those counters, we need to be able to get them from mac80211, this adds the required API. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 9e26297a56453315ae6829aec609b5a6309af7b4 Author: Johannes Berg Date: Thu Jul 7 18:45:03 2011 +0200 mac80211: simplify RX PN/IV handling The current rx->queue value is slightly confusing. It is set to 16 on non-QoS frames, including data, and then used for sequence number and PN/IV checks. Until recently, we had a TKIP IV checking bug that had been introduced in 2008 to fix a seqno issue. Before that, we always used TID 0 for checking the PN or IV on non-QoS packets. Go back to the old status for PN/IV checks using the TID 0 counter for non-QoS by splitting up the rx->queue value into "seqno_idx" and "security_idx" in order to avoid confusion in the future. They each have special rules on the value used for non- QoS data frames. Since the handling is now unified, also revert the special TKIP handling from my patch "mac80211: fix TKIP replay vulnerability". Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 1d738e64f3d957d56c1b51e64ebdef986a8760e3 Author: Rafał Miłecki Date: Thu Jul 7 15:25:27 2011 +0200 b43: LCN-PHY add place for new PHY support LCN-PHY was found in 14e4:4727 card. It uses LCN/1 and 0x2064/1 radio. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 0cd20a278e1ef9da9f6a987942794c9d65af8c4d Author: Johannes Berg Date: Wed Jul 6 22:02:14 2011 +0200 mac80211: use AES_BLOCK_SIZE mac80211 has a defnition of AES_BLOCK_SIZE and multiple definitions of AES_BLOCK_LEN. Remove them all and use crypto/aes.h. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 544e5d8bcd7ab305494e57cfa388b2d06a43c520 Author: Rafał Miłecki Date: Wed Jul 6 20:27:25 2011 +0200 b43: read radio ID on new cores Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 3fd48508d0d3d8e5423cab6b52a3b818085b6245 Author: Rafał Miłecki Date: Wed Jul 6 20:27:24 2011 +0200 b43: use radio ID reading code to older cores only Newer ones need separated way Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 8c8b964c20adb79a7deb58dc9d55754b0ca1233c Author: Rafał Miłecki Date: Wed Jul 6 18:05:14 2011 +0200 b43: select BLOCKIO for BCMA We want PIO as fallback for BCMA as well. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 6ff1e5cf70abbe04b261b4ccd9696e1ab6785086 Author: Rafał Miłecki Date: Wed Jul 6 17:41:55 2011 +0200 b43: change selecting ucode for newer cores Older cores had unique PHY. This is not true anymore for newer ones. For example core rev 16 can be LP, SSLPN or N (PHY). Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 74abacb6b5b91141eb8963faa2f22b3f1bd7c68d Author: Rafał Miłecki Date: Wed Jul 6 15:45:28 2011 +0200 b43: bus: add helpers for getting/setting wldev from/in bus core Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 42c9a458965da2b74e772054fdc4bcdec0351da8 Author: Rafał Miłecki Date: Wed Jul 6 15:45:27 2011 +0200 b43: handle BCMA in bus switches Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 6cbab0d9139246405b2449ffebecc8c48d927a6e Author: Rafał Miłecki Date: Wed Jul 6 15:45:26 2011 +0200 b43: use switches for SSB specific code Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 75396ae6d433b49482e377e6f8dbf1f42ad53f3a Author: Johannes Berg Date: Wed Jul 6 22:00:35 2011 +0200 mac80211: fix CMAC races Just like TKIP and CCMP, CMAC has the PN race. It might not actually be possible to hit it now since there aren't multiple ACs for management frames, but fix it anyway. Also move scratch buffers onto the stack. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit aba83a0b301c32dbb91c017f33307611e1a1d384 Author: Johannes Berg Date: Wed Jul 6 21:59:39 2011 +0200 mac80211: fix CCMP races Since we can process multiple packets at the same time for different ACs, but the PN is allocated from a single counter, we need to use an atomic value there. Use atomic64_t to make this cheaper on 64-bit platforms, other platforms will support this through software emulation, see lib/atomic64.c. We also need to use an on-stack scratch buf so that multiple packets won't corrupt each others scratch buffers. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 523b02ea23b175dd3e46e3daf1bc9354376640a3 Author: Johannes Berg Date: Thu Jul 7 22:28:01 2011 +0200 mac80211: fix TKIP races, make API easier to use Our current TKIP code races against itself on TX since we can process multiple packets at the same time on different ACs, but they all share the TX context for TKIP. This can lead to bad IVs etc. Also, the crypto offload helper code just obtains the P1K/P2K from the cache, and can update it as well, but there's no guarantee that packets are really processed in order. To fix these issues, first introduce a spinlock that will protect the IV16/IV32 values in the TX context. This first step makes sure that we don't assign the same IV multiple times or get confused in other ways. Secondly, change the way the P1K cache works. I add a field "p1k_iv32" that stores the value of the IV32 when the P1K was last recomputed, and if different from the last time, then a new P1K is recomputed. This can cause the P1K computation to flip back and forth if packets are processed out of order. All this also happens under the new spinlock. Finally, because there are argument differences, split up the ieee80211_get_tkip_key() API into ieee80211_get_tkip_p1k() and ieee80211_get_tkip_p2k() and give them the correct arguments. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 397915c30731340ee3f348d1be597b22467acbdf Author: Rafał Miłecki Date: Wed Jul 6 19:03:46 2011 +0200 b43: implement BCMA bus ops Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit d1507051bf6004c8ff0cf823fc5e115fc0a740b3 Author: Rafał Miłecki Date: Tue Jul 5 23:54:07 2011 +0200 b43: make b43_wireless_init bus generic Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit e441a5eab928ddee8a946b4d48489341b41f88f2 Merge: 5f0dd29 f1a4638 Author: John W. Linville Date: Fri Jul 8 11:05:20 2011 -0400 Merge branch 'for-linville' of git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx commit 204d1641d200709c759d8c269458cbc7de378c40 Merge: 31817df 5f0dd29 Author: John W. Linville Date: Fri Jul 8 11:03:36 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit ecba3287b4121dcf3ca7607fe71c205913edec06 Merge: 13340b2 727e18b Author: Arnd Bergmann Date: Fri Jul 8 15:01:45 2011 +0000 Merge branch 'cleanup-part-2' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 into omap/cleanup commit 3e6179b8445bf76123cfab1e0af4833cc7618a4a Author: Takashi Iwai Date: Fri Jul 8 16:55:13 2011 +0200 ALSA: hda - Merge alc*_parse_auto_config() functions in patch_realtek.c Now all alc*_parse_auto_config() do almost same thing except for the NID list to ignore and the PINs for SSID-check, we can merge all these to a single function. A good amount of code reduction. Signed-off-by: Takashi Iwai commit 8452a982fb8a1d02d755a53a913c087a0d31aa18 Author: Takashi Iwai Date: Fri Jul 8 16:19:48 2011 +0200 ALSA: hda - Merge ALC260 auto-parser code Finally the last one. Signed-off-by: Takashi Iwai commit 4c11398edc19fdd9c651f3ff287cd628fecaf574 Author: Takashi Iwai Date: Fri Jul 8 16:12:05 2011 +0200 ALSA: hda - Merge ALC269 parser code One more code reduction. This codec has less DACs, thus the wiring to DAC can't be filled uniquely for all output pins, i.e. some outputs share the same volume control. Except for that, all seems working fine. Signed-off-by: Takashi Iwai commit be9bc37bccab8c492e6cbaaa4d5b1b2c8296b1c4 Author: Takashi Iwai Date: Fri Jul 8 16:01:47 2011 +0200 ALSA: hda - Merge ALC268/269 auto-parser codes Now coming to ALC268/269 parser codes. Signed-off-by: Takashi Iwai commit 72dcd8e76bd2b5d9846c3103ec020e1b550cdaac Author: Takashi Iwai Date: Fri Jul 8 15:16:55 2011 +0200 ALSA: hda - Merge ALC861 auto-parser code Merge more auto-parser code in patch_realtek.c, now for ALC861. The topology of this codec is pretty simple, and can be parsed well by the current starndard parser. Signed-off-by: Takashi Iwai commit 44c0240052892911d9ebcb2bbc2a5cfc3176077c Author: Takashi Iwai Date: Fri Jul 8 15:14:19 2011 +0200 ALSA: hda - Fix amp-cap checks in patch_realtek.c query_amp_caps() may return non-zero if the amp cap isn't supported by the codec. Thus one needs to check widget-caps first, then check the corresponding amp-caps. Signed-off-by: Takashi Iwai commit 3973c337759cd201773a0ecc7b6f39f1ea2a6287 Author: Russell King Date: Fri Jul 8 14:02:21 2011 +0100 ARM: dmabounce: simplify dma_set_mask() Simplify the dmabounce specific code in dma_set_mask(). We can just omit setting the dma mask if dmabounce is enabled (we will have already set dma mask via callbacks when the device is created in that case.) Signed-off-by: Russell King commit f8c63918c9a3004bd052fa4af08aa1cefbcd79ac Author: Axel Lin Date: Mon Jul 4 18:04:15 2011 +0800 gpio-charger: Fix checking return value of request_any_context_irq request_any_context_irq() returns a negative value on failure. On success, it returns either IRQC_IS_HARDIRQ or IRQC_IS_NESTED. Signed-off-by: Axel Lin Acked-by: Lars-Peter Clausen Signed-off-by: Anton Vorontsov commit 086ef502c202503a19a491838098157cdab6238e Author: Donggeun Kim Date: Thu Jun 30 18:07:41 2011 +0900 power_supply: MAX17042: Support additional properties This patch supports additional properties (PRESENT, CYCLE_COUNT, VOLTAGE_MAX, VOLTAGE_MIN_DESIGN, CURRENT_NOW, CURRENT_AVG, CHARGE_FULL, and TEMP). Plus, initialization code for registers is added. Signed-off-by: Donggeun Kim Signed-off-by: MyungJoo Ham Signed-off-by: KyungMin Park Signed-off-by: Anton Vorontsov commit 464f29a21792e0e506d936d147beea72a5f8e904 Author: MyungJoo Ham Date: Thu Jun 30 10:09:40 2011 +0900 max8903_charger: Allow platform data to be __initdata Platform files may have declared 8903 platform data as __initdata. This patch removes the dependency on pdata pointer so that using __initdata on pdata will not incur errors. Note that such error does not incur SECTION MISMATCH warning in (at least some) compilers. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Anton Vorontsov commit bb4ce9708785f40849f1a64931e6cc3b26171201 Author: Donggeun Kim Date: Fri Jun 24 19:04:18 2011 +0900 power_supply: Add charger driver for MAX8998/LP3974 This patch supports power supply APIs for MAX8998/LP3974. Signed-off-by: Donggeun Kim Signed-off-by: MyungJoo Ham Signed-off-by: KyungMin Park Acked-by: Samuel Ortiz Signed-off-by: Anton Vorontsov commit 149c077b4bd746eca2eeb241e55456eb4882b259 Author: Donggeun Kim Date: Wed Jun 22 19:40:06 2011 +0900 power_supply: Add charger driver for MAX8997/8966 MAX8997/8966 chip is a multi-function device which includes PMIC, RTC, Fuel Gauge, MUIC, Haptic, Flash control, and Battery charging control. The driver for it is located at drivers/mfd. This patch supports battery charging control of MAX8997/8966 chip and provides power supply class information to userspace. Signed-off-by: Donggeun Kim Signed-off-by: MyungJoo Ham Signed-off-by: KyungMin Park Acked-by: Samuel Ortiz Signed-off-by: Anton Vorontsov commit 7c4509b4cd1d99a1ea22ee4c1da4d3dbb9771c95 Author: Wolfram Sang Date: Mon Jun 20 23:01:14 2011 +0200 max17042_battery: Remove obsolete cleanup for clientdata A few new i2c-drivers came into the kernel which clear the clientdata-pointer on exit or error. This is obsolete meanwhile, the core will do it. Signed-off-by: Wolfram Sang Cc: MyungJoo Ham Cc: Kyungmin Park Acked-by: Jean Delvare Signed-off-by: Anton Vorontsov commit 28d48f04ead41438f14d167fe61fd179de7029f3 Author: Grazvydas Ignotas Date: Fri Jun 3 14:43:11 2011 +0300 twl4030_charger: Fix warnings Fix warnings emitted by some versions of gcc: drivers/power/twl4030_charger.c:490: warning: overflow in implicit constant conversion drivers/power/twl4030_charger.c:498: warning: overflow in implicit constant conversion While at it, also fix module_param permissions and a typo in my name. Signed-off-by: Grazvydas Ignotas Signed-off-by: Jean Delvare Signed-off-by: Anton Vorontsov commit ccf8fa2d1b4dd8660aadc830f22645781628b894 Author: Mark Brown Date: Tue May 31 13:30:11 2011 +0100 wm831x_power: Support multiple instances If there are multiple wm831x devices in the system we need to assign different names to the power supply devices in order to ensure we can create the sysfs entries for them. Signed-off-by: Mark Brown Signed-off-by: Anton Vorontsov commit d03760318edbc78b72cb7fa96bddb65263384d24 Author: Mark Brown Date: Tue May 31 13:30:10 2011 +0100 wm831x_backup: Support multiple instances If there are multiple wm831x devices in the system we need to assign different names to the power supply devices in order to ensure we can create the sysfs entries for them. Signed-off-by: Mark Brown Signed-off-by: Anton Vorontsov commit c84cad3d0fbb09dbfb30336ab05181cdbe097634 Author: Ken O'Brien Date: Sun May 29 18:53:12 2011 +0100 apm_power: Fix style error in macros Two macros in the changed file contained complex expressions which were not enclosed by parentheses. Signed-off-by: Ken O'Brien Signed-off-by: Anton Vorontsov commit f704d45ede331204b6f393ba7cf49353fe7936a7 Author: Mark Brown Date: Tue May 24 18:46:02 2011 +0800 s3c_adc_battery: Fix annotation for s3c_adc_battery_probe() A probe() function is used at device init time rather than system init time. Signed-off-by: Mark Brown Acked-by: Vasily Khoruzhick Signed-off-by: Anton Vorontsov commit ee177d96e0ff497c46b2fe5c3b49e47810b5a8ca Author: Rhyland Klein Date: Tue May 24 12:06:50 2011 -0700 bq20z75: Enable detection after registering Need to enable detection, which is also blocking the unit conversion logic after registering the power_supply. Signed-off-by: Rhyland Klein Signed-off-by: Anton Vorontsov commit 58ddafae2d7102d8f493840cb7aca0b4b2326b2a Author: Rhyland Klein Date: Tue May 24 12:05:59 2011 -0700 bq20z75: Add support for external notification Adding support for external power change notification. One problem found is that there is a lag time before the sensor will return a new status. To ensure that we only fire off the power_supply_changed event when the status returned from the sensor is actually different, we delay sending the the notification, and instead poll on it looking for a change. The amount of time to poll is configurable via platform data. Signed-off-by: Rhyland Klein Signed-off-by: Anton Vorontsov commit a1f649d5475f6fa7ea5707510ec8b2e3019f38dd Author: Takashi Iwai Date: Fri Jul 8 14:39:03 2011 +0200 ALSA: hda - Merge ALC861-VD auto-parse to the standard parser The existing standard auto-parser can work well with this codec, too. Let's merge. Signed-off-by: Takashi Iwai commit 268ff6fbe70a4ab3c931caa0fdffc3d49265d135 Author: Takashi Iwai Date: Fri Jul 8 14:37:35 2011 +0200 ALSA: hda - Fix auto-mic detection in Realtek codec-parser A regression fix from commit 21268961d3d1bbdd22a19b68adb80119e8c72dcd ALSA: hda - More flexible dynamic-ADC switching for Realtek codecs The auto-mic wasn't detected properly when no ADC-switch is needed. Signed-off-by: Takashi Iwai commit e163cbde981c5988c3e80ca29589132336f18a72 Author: Christoph Hellwig Date: Fri Jul 8 14:36:36 2011 +0200 xfs: avoid a few disk cache flushes There is no need for a pre-flush when doing writing the second part of a split log buffer, and if we are using an external log there is no need to do a full cache flush of the log device at all given that all writes to it use the FUA flag. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 1d5ae5dfeee024d51fb2c0205035d7611a8f0c86 Author: Christoph Hellwig Date: Fri Jul 8 14:36:32 2011 +0200 xfs: cleanup I/O-related buffer flags Remove the unused and misnamed _XBF_RUN_QUEUES flag, rename XBF_LOG_BUFFER to the more fitting XBF_SYNCIO, and split XBF_ORDERED into XBF_FUA and XBF_FLUSH to allow more fine grained control over the bio flags. Also cleanup processing of the flags in _xfs_buf_ioapply to make more sense, and renumber the sparse flag number space to group flags by purpose. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit c8da0faf6b07623c473cab42967f943ad4ab7560 Author: Christoph Hellwig Date: Fri Jul 8 14:36:25 2011 +0200 xfs: return the buffer locked from xfs_buf_get_uncached All other xfs_buf_get/read-like helpers return the buffer locked, make sure xfs_buf_get_uncached isn't different for no reason. Half of the callers already lock it directly after, and the others probably should also keep it locked if only for consistency and beeing able to use xfs_buf_rele, but I'll leave that for later. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 0c842ad46a51891ac4420b7285613f4134a65ccd Author: Christoph Hellwig Date: Fri Jul 8 14:36:19 2011 +0200 xfs: clean up buffer locking helpers Rename xfs_buf_cond_lock and reverse it's return value to fit most other trylock operations in the Kernel and XFS (with the exception of down_trylock, after which xfs_buf_cond_lock was modelled), and replace xfs_buf_lock_val with an xfs_buf_islocked for use in asserts, or and opencoded variant in tracing. remove the XFS_BUF_* wrappers for all the locking helpers. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit bbb4197c73be356a052dac25cce5ed0c157c6c90 Author: Christoph Hellwig Date: Fri Jul 8 14:36:10 2011 +0200 xfs: remove the unused xfs_bufhash structure Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 69ef921b55cc3788d1d2a27b33b27d04acd0090a Author: Christoph Hellwig Date: Fri Jul 8 14:36:05 2011 +0200 xfs: byteswap constants instead of variables Micro-optimize various comparisms by always byteswapping the constant instead of the variable, which allows to do the swap at compile instead of runtime. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 218106a1104c598011e5df9d9aac7e0416be03e6 Author: Christoph Hellwig Date: Fri Jul 8 14:35:58 2011 +0200 xfs: use generic get_unaligned_beXX helpers Switch the shortform directory code over to use the generic get_unaligned_beXX helpers instead of reinventing them. As a result kill off xfs_arch.h and move the setting of XFS_NATIVE_HOST into xfs_linux.h. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 2282396d8157033503318fe4dee77ba82dc9d144 Author: Christoph Hellwig Date: Fri Jul 8 14:35:53 2011 +0200 xfs: cleanup struct xfs_dir2_leaf Simplify the confusing xfs_dir2_leaf structure. It is supposed to describe an XFS dir2 leaf format btree block, but due to the variable sized nature of almost all elements in it it can't actuall do anything close to that job. Remove the members that are after the first variable sized array, given that they could only be used for sizeof expressions that can as well just use the underlying types directly, and make the ents array a real C99 variable sized array. Also factor out the xfs_dir2_leaf_size, to make the sizing of a leaf entry which already was convoluted somewhat readable after using the longer type names in the sizeof expressions. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 3ed8638f8867b4d0df1ec606231a087ff06c4a59 Author: Christoph Hellwig Date: Fri Jul 8 14:35:50 2011 +0200 xfs: cleanup the definition of struct xfs_dir2_data_entry Remove the tag member which is at a variable offset after the actual name, and make name a real variable sized C99 array instead of the incorrect one-sized array which confuses (not only) gcc. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 0ba9cd84ef2af58645333a86f9c901684ab1fef6 Author: Christoph Hellwig Date: Fri Jul 8 14:35:42 2011 +0200 xfs: kill struct xfs_dir2_data Remove the confusing xfs_dir2_data structure. It is supposed to describe an XFS dir2 data btree block, but due to the variable sized nature of almost all elements in it it can't actuall do anything close to that job. In addition to accessing the fixed offset header structure it was only used to get a pointer to the first dir or unused entry after it, which can be trivially replaced by pointer arithmetics on the header pointer. For most users that is actually more natural anyway, as they don't use a typed pointer but rather a character pointer for further arithmetics. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit c2066e2662070e794f57a96a129c42575e77cfcb Author: Christoph Hellwig Date: Fri Jul 8 14:35:38 2011 +0200 xfs: avoid usage of struct xfs_dir2_data In most places we can simply pass around and use the struct xfs_dir2_data_hdr, which is the first and most important member of struct xfs_dir2_data instead of the full structure. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit a64b04179735de6bfd9f00c130a68ed7f20d18ef Author: Christoph Hellwig Date: Fri Jul 8 14:35:32 2011 +0200 xfs: kill struct xfs_dir2_block Remove the confusing xfs_dir2_block structure. It is supposed to describe an XFS dir2 block format btree block, but due to the variable sized nature of almost all elements in it it can't actuall do anything close to that job. In addition to accessing the fixed offset header structure it was only used to get a pointer to the first dir or unused entry after it, which can be trivially replaced by pointer arithmetics on the header pointer. For most users that is actually more natural anyway, as they don't use a typed pointer but rather a character pointer for further arithmetics. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 4f6ae1a49ed5c81501d6f7385416bb4e07289e99 Author: Christoph Hellwig Date: Fri Jul 8 14:35:27 2011 +0200 xfs: avoid usage of struct xfs_dir2_block In most places we can simply pass around and use the struct xfs_dir2_data_hdr, which is the first and most important member of struct xfs_dir2_block instead of the full structure. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 78f70cd7b7e8fd44dc89af4f72fb110d865338a1 Author: Christoph Hellwig Date: Fri Jul 8 14:35:19 2011 +0200 xfs: cleanup the definition of struct xfs_dir2_sf_entry Remove the inumber member which is at a variable offset after the actual name, and make name a real variable sized C99 array instead of the incorrect one-sized array which confuses (not only) gcc. Based on this clean up the helpers to calculate the entry size. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit ac8ba50f6be4a3ab49a2ad2cb676422af4ebaf8a Author: Christoph Hellwig Date: Fri Jul 8 14:35:13 2011 +0200 xfs: kill struct xfs_dir2_sf The list field of it is never cactually used, so all uses can simply be replaced with the xfs_dir2_sf_hdr_t type that it has as first member. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 8bc387875870c87087f138741f456983cbc54660 Author: Christoph Hellwig Date: Fri Jul 8 14:35:03 2011 +0200 xfs: cleanup shortform directory inode number handling Refactor the shortform directory helpers that deal with the 32-bit vs 64-bit wide inode numbers into more sensible helpers, and kill the xfs_intino_t typedef that is now superflous. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 4fb44c8272a071290d2ad76164c532fa2902b604 Author: Christoph Hellwig Date: Fri Jul 8 14:34:59 2011 +0200 xfs: factor out xfs_dir2_leaf_find_entry Add a new xfs_dir2_leaf_find_entry helper to factor out some duplicate code from xfs_dir2_leaf_addname xfs_dir2_leafn_add. Found by Eric Sandeen using an automated code duplication checker. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 29d104af0a92ba1eac74b636da7fcf88242e1180 Author: Christoph Hellwig Date: Fri Jul 8 14:34:51 2011 +0200 xfs: kill the unused struct xfs_sync_work Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit f3ca87389dbff0a3dc1a7cb2fa7c62e25421c66c Author: Christoph Hellwig Date: Fri Jul 8 14:34:47 2011 +0200 xfs: remove i_transp Remove the transaction pointer in the inode. It's only used to avoid passing down an argument in the bmap code, and for a few asserts in the transaction code right now. Also use the local variable ip in a few more places in xfs_inode_item_unlock, so that it isn't only used for debug builds after the above change. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 7a249cf83da1813cfa71cfe1e265b40045eceb47 Author: Christoph Hellwig Date: Fri Jul 8 14:34:42 2011 +0200 xfs: fix filesystsem freeze race in xfs_trans_alloc As pointed out by Jan xfs_trans_alloc can race with a concurrent filesystem freeze when it sleeps during the memory allocation. Fix this by moving the wait_for_freeze call after the memory allocation. This means moving the freeze into the low-level _xfs_trans_alloc helper, which thus grows a new argument. Also fix up some comments in that area while at it. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 33b8f7c2479dfcbc5c27174e44b5f659d9f33c70 Author: Christoph Hellwig Date: Fri Jul 8 14:34:39 2011 +0200 xfs: improve sync behaviour in the face of aggressive dirtying The following script from Wu Fengguang shows very bad behaviour in XFS when aggressively dirtying data during a sync on XFS, with sync times up to almost 10 times as long as ext4. A large part of the issue is that XFS writes data out itself two times in the ->sync_fs method, overriding the livelock protection in the core writeback code, and another issue is the lock-less xfs_ioend_wait call, which doesn't prevent new ioend from being queue up while waiting for the count to reach zero. This patch removes the XFS-internal sync calls and relies on the VFS to do it's work just like all other filesystems do. Note that the i_iocount wait which is rather suboptimal is simply removed here. We already do it in ->write_inode, which keeps the current supoptimal behaviour. We'll eventually need to remove that as well, but that's material for a separate commit. ------------------------------ snip ------------------------------ #!/bin/sh umount /dev/sda7 mkfs.xfs -f /dev/sda7 # mkfs.ext4 /dev/sda7 # mkfs.btrfs /dev/sda7 mount /dev/sda7 /fs echo $((50<<20)) > /proc/sys/vm/dirty_bytes pid= for i in `seq 10` do dd if=/dev/zero of=/fs/zero-$i bs=1M count=1000 & pid="$pid $!" done sleep 1 tic=$(date +'%s') sync tac=$(date +'%s') echo echo sync time: $((tac-tic)) egrep '(Dirty|Writeback|NFS_Unstable)' /proc/meminfo pidof dd > /dev/null && { kill -9 $pid; echo sync NOT livelocked; } ------------------------------ snip ------------------------------ Signed-off-by: Christoph Hellwig Reported-by: Wu Fengguang Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 8f04c47aa9712874af2c8816c2ca2a332cba80e4 Author: Christoph Hellwig Date: Fri Jul 8 14:34:34 2011 +0200 xfs: split xfs_itruncate_finish Split the guts of xfs_itruncate_finish that loop over the existing extents and calls xfs_bunmapi on them into a new helper, xfs_itruncate_externs. Make xfs_attr_inactive call it directly instead of xfs_itruncate_finish, which allows to simplify the latter a lot, by only letting it deal with the data fork. As a result xfs_itruncate_finish is renamed to xfs_itruncate_data to make its use case more obvious. Also remove the sync parameter from xfs_itruncate_data, which has been unessecary since the introduction of the busy extent list in 2002, and completely dead code since 2003 when the XFS_BMAPI_ASYNC parameter was made a no-op. I can't actually see why the xfs_attr_inactive needs to set the transaction sync, but let's keep this patch simple and without changes in behaviour. Also avoid passing a useless argument to xfs_isize_check, and make it private to xfs_inode.c. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 857b9778d86ccba7d7b42c9d8aeecde794ec8a6b Author: Christoph Hellwig Date: Fri Jul 8 14:34:30 2011 +0200 xfs: kill xfs_itruncate_start xfs_itruncate_start is a rather length wrapper that evaluates to a call to xfs_ioend_wait and xfs_tosspages, and only has two callers. Instead of using the complicated checks left over from IRIX where we can to truncate the pagecache just call xfs_tosspages (aka truncate_inode_pages) directly as we want to get rid of all data after i_size, and truncate_inode_pages handles incorrect alignments and too large offsets just fine. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 681b120018e3c7e2680c93e8188c5ee34215df2f Author: Christoph Hellwig Date: Fri Jul 8 14:34:26 2011 +0200 xfs: always log timestamp updates in xfs_setattr_size Get rid of the special case where we use unlogged timestamp updates for a truncate to the current inode size, and just call xfs_setattr_nonsize for it to treat it like a utimes calls. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit c4ed4243c40f97ed5b7b121777bbbc6aeaa722f0 Author: Christoph Hellwig Date: Fri Jul 8 14:34:23 2011 +0200 xfs: split xfs_setattr Split up xfs_setattr into two functions, one for the complex truncate handling, and one for the trivial attribute updates. Also move both new routines to xfs_iops.c as they are fairly Linux-specific. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit dec58f1dfd30a3c3e9dadc808692f4e5cd922745 Author: Christoph Hellwig Date: Fri Jul 8 14:34:18 2011 +0200 xfs: work around bogus gcc warning in xfs_allocbt_init_cursor GCC 4.6 complains about an array subscript is above array bounds when using the btree index to index into the agf_levels array. The only two indices passed in are 0 and 1, and we have an assert insuring that. Replace the trick of using the array index directly with using constants in the already existing branch for assigning the XFS_BTREE_LASTREC_UPDATE flag. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit dbcdde3e76f45d56c4a30ca6c5d69b6d473d3fd1 Author: Christoph Hellwig Date: Fri Jul 8 14:34:14 2011 +0200 xfs: re-enable non-blocking behaviour in xfs_map_blocks The non-blockig behaviour in xfs_vm_writepage currently is conditional on having both the WB_SYNC_NONE sync_mode and the nonblocking flag set. The latter used to be used by both pdflush, kswapd and a few other places in older kernels, but has been fading out starting with the introduction of the per-bdi flusher threads. Enable the non-blocking behaviour for all WB_SYNC_NONE calls to get back the behaviour we want. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder Reviewed-by: Dave Chinner commit 680a647b49fa52de0b37b8bc58a3a8c4bc76b262 Author: Christoph Hellwig Date: Fri Jul 8 14:34:05 2011 +0200 xfs: PF_FSTRANS should never be set in ->writepage Now that we reject direct reclaim in addition to always using GFP_NOFS allocation there's no chance we'll ever end up in ->writepage with PF_FSTRANS set. Add a WARN_ON if we hit this case, and stop checking if we'd actually need to start a transaction. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Reviewed-by: Dave Chinner commit 732375c6a5a4cc825b676c922d547aba96b8ce15 Author: Dima Zavin Date: Thu Jul 7 17:27:59 2011 -0700 plist: Remove the need to supply locks to plist heads This was legacy code brought over from the RT tree and is no longer necessary. Signed-off-by: Dima Zavin Acked-by: Thomas Gleixner Cc: Daniel Walker Cc: Steven Rostedt Cc: Peter Zijlstra Cc: Andi Kleen Cc: Lai Jiangshan Link: http://lkml.kernel.org/r/1310084879-10351-2-git-send-email-dima@android.com Signed-off-by: Ingo Molnar commit ded1f6ab43a03be74a53649cf388b5424d447584 Author: Naga Chumbalkar Date: Fri Jul 8 08:36:34 2011 +0000 x86: print APIC data a little later during boot To view IOAPIC data you could boot with "apic=debug". When booting in such a way then the kernel will dump the IO-APIC's registers, for example: NR Dst Mask Trig IRR Pol Stat Dmod Deli Vect: 00 000 1 0 0 0 0 0 0 00 01 000 0 0 0 0 0 0 0 31 02 000 0 0 0 0 0 0 0 30 03 000 0 0 0 0 0 0 0 33 04 000 0 0 0 0 0 0 0 34 05 000 0 0 0 0 0 0 0 35 06 000 0 0 0 0 0 0 0 36 07 000 0 0 0 0 0 0 0 37 08 000 0 0 0 0 0 0 0 38 09 000 0 1 0 0 0 0 0 39 0a 000 0 0 0 0 0 0 0 3A 0b 000 0 0 0 0 0 0 0 3B 0c 000 0 0 0 0 0 0 0 3C 0d 000 0 0 0 0 0 0 0 3D 0e 000 0 0 0 0 0 0 0 3E 0f 000 0 0 0 0 0 0 0 3F 10 000 1 0 0 0 0 0 0 00 11 000 1 0 0 0 0 0 0 00 12 000 1 0 0 0 0 0 0 00 13 000 1 0 0 0 0 0 0 00 14 000 1 0 0 0 0 0 0 00 15 000 1 0 0 0 0 0 0 00 16 000 1 0 0 0 0 0 0 00 17 000 1 0 0 0 0 0 0 00 Delaying the call to print_ICs() gives better results: NR Dst Mask Trig IRR Pol Stat Dmod Deli Vect: 00 000 1 0 0 0 0 0 0 00 01 000 0 0 0 0 0 0 0 31 02 000 0 0 0 0 0 0 0 30 03 000 1 0 0 0 0 0 0 33 04 000 1 0 0 0 0 0 0 34 05 000 1 0 0 0 0 0 0 35 06 000 1 0 0 0 0 0 0 36 07 000 1 0 0 0 0 0 0 37 08 000 0 0 0 0 0 0 0 38 09 000 0 1 0 0 0 0 0 39 0a 000 1 0 0 0 0 0 0 3A 0b 000 1 0 0 0 0 0 0 3B 0c 000 0 0 0 0 0 0 0 3C 0d 000 1 0 0 0 0 0 0 3D 0e 000 1 0 0 0 0 0 0 3E 0f 000 1 0 0 0 0 0 0 3F 10 000 1 1 0 1 0 0 0 29 11 000 1 0 0 0 0 0 0 00 12 000 1 0 0 0 0 0 0 00 13 000 1 0 0 0 0 0 0 00 14 000 0 1 0 1 0 0 0 51 15 000 1 0 0 0 0 0 0 00 16 000 0 1 0 1 0 0 0 61 17 000 0 1 0 1 0 0 0 59 Notice that the entries beyond interrupt input signal 0x0f also get populated and arent just the hw-initialization default of all zeroes. Signed-off-by: Naga Chumbalkar Link: http://lkml.kernel.org/r/20110708083555.2598.42216.sendpatchset@nchumbalkar.americas.hpqcorp.net Signed-off-by: Ingo Molnar commit 57c97c02de0e7a59cb48d3d7666f4afaf9968e84 Author: Amit Blay Date: Sun Jul 3 17:29:31 2011 +0300 usb: gadget: zero: add superspeed support This patch adds SuperSpeed descriptors to the g_zero gadget. The SuperSpeed descriptors were added both for f_soursesink and f_loopback function drivers. Signed-off-by: Tatyana Brokhman Signed-off-by: Amit Blay Signed-off-by: Felipe Balbi commit 04617db7aa688598ebd3fce20691d31a5e778b45 Author: Paul Zimmerman Date: Mon Jun 27 14:13:18 2011 -0700 usb: gadget: add SS descriptors to Ethernet gadget Add SuperSpeed descriptors to the Network USB function drivers. This has been lightly tested using a Linux host. I was able to ssh from device to host and host to device, no obvious problems seen. Signed-off-by: Paul Zimmerman Signed-off-by: Felipe Balbi commit 257d643d7d7cd81075b6dee88cfba14f773805c7 Author: Rajendra Nayak Date: Sat Jul 2 08:00:24 2011 +0530 OMAP4: clocks: Update the clock tree with 4460 clock nodes Add the new clock nodes (bandgap_ts_fclk, div_ts_ck) for omap4460. Handle these nodes using the clock flags (CK_*). Signed-off-by: Rajendra Nayak Signed-off-by: Nishanth Menon Signed-off-by: Benoit Cousson Reviewed-by: Kevin Hilman Acked-by: Paul Walmsley Signed-off-by: Tony Lindgren commit 28dc10a5f1bebfbb7cb19f588bc1652a00992402 Author: Lydia Wang Date: Fri Jul 8 18:28:47 2011 +0800 ALSA: hda - Fix output-path of VT1812 codec For VT1812, add dac_mixer_idx for initialization. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 96fe53ef5498ba130b2f054f2de38e090ddaa55f Author: Yoshihiro Shimoda Date: Fri Jul 8 14:51:14 2011 +0900 usb: gadget: r8a66597-udc: add support for TEST_MODE The USB high speed device must support the TEST_MODE, but the driver didn't support it. When we sent the SET_FEATURE for TEST_MODE to the driver, the request was successful, but the module didn't enter the TEST_MODE. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit ceaa0a6eeadfd2f53df121210d99a1f80ee7645e Author: Yoshihiro Shimoda Date: Fri Jul 8 14:51:33 2011 +0900 usb: gadget: m66592-udc: add support for TEST_MODE The USB high speed device must support the TEST_MODE, but the driver didn't support it. When we sent the SET_FEATURE for TEST_MODE to the driver, the request was successful, but the module didn't enter the TEST_MODE. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit 5154e9f126c1d2ee8f5f93d9954f83d82b2d5e64 Author: Yoshihiro Shimoda Date: Fri Jul 8 14:51:27 2011 +0900 usb: gadget: r8a66597-udc: Make BUSWAIT configurable through platform data BUSWAIT is a 4-bit-wide value that controls the number of access waits from the CPU to on-chip USB module. b'0000 inserts 0 wait (2 access cycles) and b'1111 inserts 15 waits (17 access cycles, hardware initial value), respectively. BUSWAIT value depends on peripheral clock frequency supplied to on-chip of each CPU, hence should be configurable through platform data. Note that this patch assumes that b'0000 (0 wait, 2 access cycles) is rerely used and considered as invalid. If valid 'buswait' data is not provided by platform, initial b'1111 (15 waits, 17 access cycles) will be applied as a safe default. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit deafeb24e8a846da8555e68f4bcf651daa8a4ed1 Author: Yoshihiro Shimoda Date: Fri Jul 8 14:51:21 2011 +0900 usb: gadget: r8a66597-udc: fix cannot connect after rmmod gadget driver When we run rmmod a gadget driver, the driver will call disable_controller(). Then, because the bit of USBE in SYSCFG0 was cleared in on_chip=1 mode, we could not connect the usb when we run insmod a gadget driver next time. This patch also cleans up probe() and ->stop() about unnecessary init_controller(). Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit 5db05c09ac107ef957b7a052d7bba8190c93b460 Author: Yoshihiro Shimoda Date: Thu Jul 7 09:59:07 2011 +0900 usb: update email address in r8a66597-udc and m66592-udc Signed-off-by: Yoshihiro Shimoda Signed-off-by: Felipe Balbi commit 3c5fec75e121b21a2eb35e5a6b44291509abba6f Author: Ajay Kumar Gupta Date: Fri Jul 8 15:06:13 2011 +0530 usb: musb: restore INDEX register in resume path Restoring the missing INDEX register value in musb_restore_context(). Without this suspend resume functionality is broken with offmode enabled. Cc: stable@kernel.org Acked-by: Anand Gadiyar Signed-off-by: Ajay Kumar Gupta Signed-off-by: Felipe Balbi commit 21d45d2ba97fa5bcb41b444095338dde792026d3 Author: Takashi Iwai Date: Fri Jul 8 11:35:11 2011 +0200 ALSA: hda - Fix Oops in smart51 parsing in VIA codec Typical off-by-one thinko. Signed-off-by: Takashi Iwai commit 54d525735140e930d87c5afd1b0b3393ffdac021 Author: Stephen Boyd Date: Thu Jul 7 18:43:36 2011 +0100 ARM: 6996/1: mm: Poison freed init memory Poisoning __init marked memory can be useful when tracking down obscure memory corruption bugs. Therefore, poison init memory with 0xe7fddef0 to catch bugs earlier. The poison value is an undefined instruction in ARM mode and branch to an undefined instruction in Thumb mode. Signed-off-by: Stephen Boyd Acked-by: Nicolas Pitre Signed-off-by: Russell King commit 625426633d7786f26a33123a9d12bec476bcc3cd Author: Mathias Krause Date: Fri Jul 8 17:21:21 2011 +0800 crypto: gf128mul - fix call to memset() In gf128mul_lle() and gf128mul_bbe() r isn't completely initialized with zero because the size argument passed to memset() is the size of the pointer, not the structure it points to. Luckily there are no in-kernel users of those functions so the ABI change implied by this fix should break no existing code. Based on a patch by the PaX Team. Signed-off-by: Mathias Krause Cc: PaX Team Acked-by: David S. Miller Signed-off-by: Herbert Xu commit 6b54b4991289762887a572785e296d15adbc1550 Author: Rajendra Nayak Date: Sat Jul 2 08:00:23 2011 +0530 OMAP4: PRCM: OMAP4460 specific PRM and CM register bitshifts This patch adds additional register bitshifts for registers added in OMAP4460 platform. Signed-off-by: Rajendra Nayak Signed-off-by: Nishanth Menon Signed-off-by: Benoit Cousson Reviewed-by: Kevin Hilman Acked-by: Paul Walmsley [tony@atomide.com: updated to apply on cleanup patches] Signed-off-by: Tony Lindgren commit e47706295843730c815dbc98f47ed2f75e051109 Author: Takashi Iwai Date: Fri Jul 8 11:11:35 2011 +0200 ALSA: hda - Provide the standard auto_init for Realtek codecs Remove redundant definitions. Ideally, all init functions should be identical in future. Signed-off-by: Takashi Iwai commit cc0170b2d929b8a31fec3da66a132822a99f550b Author: Aneesh V Date: Sat Jul 2 08:00:22 2011 +0530 OMAP4: ID: add omap_has_feature for max freq supported Macros for identifying the max frequency supported by various OMAP4 variants - Expanding along the lines of OMAP3's feature handling. [nm@ti.com: minor fixes for checks that should only for 443x|446x] Signed-off-by: Nishanth Menon Signed-off-by: Aneesh V Signed-off-by: Rajendra Nayak Reviewed-by: Kevin Hilman Reviewed-by: Paul Walmsley Signed-off-by: Tony Lindgren commit afcd551508dcdb38e80728137c1c166d19bd47dd Author: Takashi Iwai Date: Fri Jul 8 11:07:59 2011 +0200 ALSA: hda - Merge ALC680 auto-parser to the standard parser Improved the standard Realtek auto-parser to support the codec topology like ALC680. Signed-off-by: Takashi Iwai commit fa54dccddc8f4a53c223d53c56c54c61ea7d2623 Author: Aneesh V Date: Sat Jul 2 08:00:21 2011 +0530 OMAP: ID: introduce chip detection for OMAP4460 Add support for detecting the latest in the OMAP4 family: OMAP4460 Among other changes, the new chip also can support 1.5GHz A9s, 1080p stereoscopic 3D and 12 MP stereo (dual camera). In addition, we have changes to OPPs supported, clock tree etc, hence having a chip detection is required. For more details on OMAP4460, see Highlights: http://focus.ti.com/general/docs/wtbu/wtbuproductcontent.tsp?contentId=53243&navigationId=12843&templateId=6123 Public TRM is available here as usual: http://focus.ti.com/general/docs/wtbu/wtbudocumentcenter.tsp?templateId=6123&navigationId=12667 [nm@ti.com: cleanups and introduction of ramp system] Signed-off-by: Nishanth Menon Signed-off-by: Aneesh V Signed-off-by: Rajendra Nayak Reviewed-by: Kevin Hilman Reviewed-by: Paul Walmsley [tony@atomide.com: updated to not use CHIP_IS_OMAP44XX] Signed-off-by: Tony Lindgren commit cb5fd904f0f14866ab76ec1f6ca3469896e4e2cf Merge: 2ff0720 f4daf06 Author: Russell King Date: Fri Jul 8 09:54:29 2011 +0100 Merge branch 'for-rmk' of git://linux-arm.org/linux-2.6-wd into devel-stable commit e59ea3ed9fe0cde526c004441465d13287426b29 Author: Takashi Iwai Date: Wed Jun 29 17:21:00 2011 +0200 ALSA: hda - Add a fix-up for HP RP5800 The BIOS provides bogus pin configs, and also invalid SSID. Signed-off-by: Takashi Iwai commit 08ef79490dad6b88010e94795cf9f89b018ed504 Author: Takashi Iwai Date: Tue Jun 14 15:57:08 2011 +0200 ALSA: pcmcia - Use pcmcia_request_irq() The drivers don't require the exclusive irqs. Let's fix the deprecated warnings. Signed-off-by: Takashi Iwai commit 81b85b6bd91e58bf800cbb3047aa74e61aff7bd9 Author: Pavel Roskin Date: Wed Jul 6 11:20:13 2011 -0400 ALSA: usb-audio: replace "void *" with more specific pointers Signed-off-by: Pavel Roskin Signed-off-by: Takashi Iwai commit f1a46384ad568f72c11edbe2a3ec284bf32f2dbd Author: Arik Nemtsov Date: Thu Jul 7 14:25:23 2011 +0300 wl12xx: start/stop queues according to global per-AC counters Split tx_queue_count to count per-AC skb's queued, instead of relying on the skb-queue len. The skb queues used were only valid in STA-mode, as AP-mode uses per-link queues. This fixes a major regression in AP-mode, caused by the patch "wl12xx: implement Tx watermarks per AC". With that patch applied, we effectively had no regulation of Tx queues in AP-mode. Therefore a sustained high rate of Tx could cause exhaustion of the skb memory pool. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit a2a870c82797e47884b2736e95e9d9c89a51c219 Author: Lydia Wang Date: Fri Jul 8 14:04:33 2011 +0800 ALSA: hda - Fix Independent-HP detection on VT2002P/1802/1812 codecs For VT2002P, VT1802 and VT1812 codecs, to create Independent HP control. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 5c9a5615dedec19196b1217e864616a2ce9e392a Author: Lydia Wang Date: Fri Jul 8 14:03:43 2011 +0800 ALSA: hda - Fix DAC checks for VT2002P/1802/1812 codecs For VT2002P, VT1802 and VT1812 codecs, there're only two DACs. So smart51 control shouldn't be created. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 316cc67d5e03801a5ee4ac660a4dfe9e02aed475 Author: Shaohua Li Date: Fri Jul 8 08:19:21 2011 +0200 block: document blk_plug list access I'm often confused why not disable preempt when changing blk_plug list. It would be better to add comments here in case others have the similar concerns. Signed-off-by: Shaohua Li Signed-off-by: Jens Axboe commit 55c022bbddb2c056b5dff1bd1b1758d31b6d64c9 Author: Shaohua Li Date: Fri Jul 8 08:19:20 2011 +0200 block: avoid building too big plug list When I test fio script with big I/O depth, I found the total throughput drops compared to some relative small I/O depth. The reason is the thread accumulates big requests in its plug list and causes some delays (surely this depends on CPU speed). I thought we'd better have a threshold for requests. When a threshold reaches, this means there is no request merge and queue lock contention isn't severe when pushing per-task requests to queue, so the main advantages of blk plug don't exist. We can force a plug list flush in this case. With this, my test throughput actually increases and almost equals to small I/O depth. Another side effect is irq off time decreases in blk_flush_plug_list() for big I/O depth. The BLK_MAX_REQUEST_COUNT is choosen arbitarily, but 16 is efficiently to reduce lock contention to me. But I'm open here, 32 is ok in my test too. Signed-off-by: Shaohua Li Signed-off-by: Jens Axboe commit d69607b3c39bb46b7f838f7b683716d4c22ee353 Author: Lydia Wang Date: Fri Jul 8 14:02:52 2011 +0800 ALSA: hda - Fix VIA output-path init for VT2002P/1802/1812 For VT2002P, VT1802 and VT1812 codecs, the original activate_output_path() function can't initialize output and hp path correctly, since mixers connected to output pin widgets are not considered. So modify the activate_output_path() function to satisify this kind of codec. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 8bb2c4813c534d26eba3beb7888fbd3cbc931f62 Author: Sekhar Nori Date: Wed Jul 6 06:01:24 2011 +0000 davinci: da850 evm: register SATA device Register the platform device for SATA interface present on the DA850/OMAP-L138/AM18x EVM. Signed-off-by: Sekhar Nori commit cbb2c9617ae80c99a7b290dbe5cf48ebf9a36ad9 Author: Sekhar Nori Date: Wed Jul 6 06:01:23 2011 +0000 davinci: da850: add support for SATA interface Add support for SATA controller on the DA850/OMAP-L138/AM18x devices. The patch adds the necessary clocks, platform resources and a routine to initialize the SATA controller. The PHY configuration in this patch is courtesy the work done by Zegeye Alemu, Swaminathan and Mansoor Ahamed from TI. While testing this patch, enable port multiplier support iff you are actually using one. The reasons of this behaviour are discussed here: http://patchwork.ozlabs.org/patch/78163/ ChangeLog: v3: Removed fields which were being initialized to zero in PHY configuration. Moved SATA base address definition to the top of the file to make it inline with what is done for the rest of the modules. v2: Addressed comments from Sergei. Removed unnecessary braces and removed unnecessary else after goto. Signed-off-by: Sekhar Nori commit aad70de20fc69970a3080e7e8f02b54a4a3fe3e6 Author: Sekhar Nori Date: Wed Jul 6 06:01:22 2011 +0000 davinci: enable forced transitions on PSC Some DaVinci modules like the SATA on DA850 need forced module state transitions. Define a "force" flag which can be passed to the PSC config function to enable it to make forced transitions. Forced transitions shouldn't normally be attempted, unless the TRM explicitly specifies its usage. ChangeLog: v2: Modified to take care of the fact that davinci_psc_config() now takes the flags directly. Signed-off-by: Sekhar Nori commit a51ca38b6330e463cc1a7adf64502ff735452915 Author: Sekhar Nori Date: Wed Jul 6 06:01:21 2011 +0000 davinci: pass clock flags to davinci_psc_config() Enabling or disabling a PSC can take certain modifiers like "disable with reset", "force enable/disable" and "enable/disable with local reset" apart from the regular clock gating functionality. Pass a flags argument to davinci_psc_config() so these variations can be supported there. At this time only "disable with reset" is supported, but other functionality will be added in subsequent patches. Signed-off-by: Sekhar Nori commit 6471fc6630a507fd54fdaceceee1ddaf3c917cde Author: Kumar Gala Date: Fri Jun 10 02:22:06 2011 -0500 powerpc: Dont require a dma_ops struct to set dma mask The only reason to require a dma_ops struct is to see if it has implemented set_dma_mask. If not we can fall back to setting the mask directly. This resolves an issue with how to sequence the setting of a DMA mask for platform devices. Before we had an issue in that we have no way of setting the DMA mask before the various low level bus notifiers get called that might check it (swiotlb). So now we can do: pdev = platform_device_alloc("foobar", 0); dma_set_mask(&pdev->dev, DMA_BIT_MASK(37)); platform_device_add(pdev); And expect the right thing to happen with the bus notifiers get called via platform_device_add. Acked-by: Greg Kroah-Hartman Signed-off-by: Kumar Gala commit 314b02f503c2c219fde0fcf6f086fda415f8a847 Author: Kumar Gala Date: Fri Jul 8 00:17:27 2011 -0500 powerpc: implement arch_setup_pdev_archdata We have a long standing issues with platform devices not have a valid dma_mask pointer. This hasn't been an issue to date as no platform device has tried to set its dma_mask value to a non-default value. Acked-by: Greg Kroah-Hartman Signed-off-by: Kumar Gala commit a77ce8167cc1d0370fcb1d79b367d62e050cb2b0 Author: Kumar Gala Date: Fri Jun 10 01:52:57 2011 -0500 driver core: Add ability for arch code to setup pdev_archdata On some architectures we need to setup pdev_archdata before we add the device. Waiting til a bus_notifier is too late since we might need the pdev_archdata in the bus notifier. One example is setting up of dma_mask pointers such that it can be used in a bus_notifier. We add weak noop version of arch_setup_pdev_archdata() and allow the arch code to override with access the full definitions of struct device, struct platform_device, and struct pdev_archdata. Acked-by: Greg Kroah-Hartman Signed-off-by: Kumar Gala commit 3160b09796129abc9523ea3cd1633b0faba64a02 Author: Becky Bruce Date: Tue Jun 28 14:54:47 2011 -0500 powerpc: Create next_tlbcam_idx percpu variable for FSL_BOOKE This is used to round-robin TLBCAM entries. Signed-off-by: Becky Bruce Signed-off-by: Kumar Gala commit f6ad160e6f4f4d6933eeb82a2bfa25ea008585f0 Author: Felix Radensky Date: Thu Jul 7 10:37:50 2011 +0300 powerpc/p1022ds: Remove fixed-link property from ethernet nodes. On P1022DS both ethernet controllers are connected to RGMII PHYs accessible via MDIO bus. Remove fixed-link property from ethernet nodes as they only required when fixed link PHYs without MDIO bus are used. Signed-off-by: Felix Radensky Acked-by: Timur Tabi Signed-off-by: Kumar Gala commit 2647aa19fb36326ae4d2642072e1e072d176a2fc Author: Laurentiu TUDOR Date: Thu Jul 7 16:44:30 2011 +0300 powerpc/85xx: Remove stale BUG_ON in mpc85xx_smp_init Under the FSL Hypervisor we triggered a BUG_ON in mpc85xx_smp_init that expected smp_ops.message_pass to be explicity set. However recent changes allows smp_ops.message_pass to be NULL and handled by default code. Thus the BUG_ON isn't relevant anymore. Signed-off-by: Laurentiu TUDOR Signed-off-by: Kumar Gala commit 3fce1c0ba2b35b68135d8d8a3438f8c8272a01d8 Author: Mingkai Hu Date: Tue Jun 28 15:52:34 2011 +0800 powerpc/85xx: Add p2040 RDB board support P2040RDB Specification: ----------------------- 2Gbyte unbuffered DDR3 SDRAM SO-DIMM(64bit bus) 128 Mbyte NOR flash single-chip memory 256 Kbit M24256 I2C EEPROM 16 Mbyte SPI memory SD connector to interface with the SD memory card dTSEC1: connected to the Vitesse SGMII PHY (VSC8221) dTSEC2: connected to the Vitesse SGMII PHY (VSC8221) dTSEC3: connected to the Vitesse SGMII PHY (VSC8221) dTSEC4: connected to the Vitesse RGMII PHY (VSC8641) dTSEC5: connected to the Vitesse RGMII PHY (VSC8641) I2C1: Real time clock, Temperature sensor I2C2: Vcore Regulator, 256Kbit I2C Bus EEPROM SATA: Lanes C and Land D of Bank2 are connected to two SATA connectors UART: supports two UARTs up to 115200 bps for console USB 2.0: connected via a internal UTMI PHY to two TYPE-A interfaces PCIe: - Lanes E, F, G and H of Bank1 are connected to one x4 PCIe SLOT1 - Lanes C and Land D of Bank2 are connected to one x4 PCIe SLOT2 Signed-off-by: Mingkai Hu Signed-off-by: Kumar Gala commit 59f8df290acb6d279a690733a67b3902766999f3 Author: Timur Tabi Date: Tue Jun 14 14:06:15 2011 -0500 powerpc/85xx: add hypervisor config entries to corenet_smp_defconfig CONFIG_PPC_EPAPR_HV_BYTECHAN adds support for the Freescale hypervisor byte channel tty driver. CONFIG_VIRT_DRIVERS and CONFIG_FSL_HV_MANAGER add support for the Freescale hypervisor management driver. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 6db7199407ca56f55bc0832fb124e1ad216ea57b Author: Timur Tabi Date: Thu Jun 9 15:52:06 2011 -0500 drivers/virt: introduce Freescale hypervisor management driver Add the drivers/virt directory, which houses drivers that support virtualization environments, and add the Freescale hypervisor management driver. The Freescale hypervisor management driver provides several services to drivers and applications related to the Freescale hypervisor: 1. An ioctl interface for querying and managing partitions 2. A file interface to reading incoming doorbells 3. An interrupt handler for shutting down the partition upon receiving the shutdown doorbell from a manager partition 4. A kernel interface for receiving callbacks when a managed partition shuts down. Signed-off-by: Timur Tabi Acked-by: Arnd Bergmann Signed-off-by: Kumar Gala commit 19495f70d1ebcdc732dd3c94f5968a4bff198ae5 Author: Anatolij Gustschin Date: Thu Jul 7 12:25:02 2011 +0200 UBIFS: fix master node recovery When the 1st LEB was unmapped and written but 2nd LEB not, the master node recovery doesn't succeed after power cut. We see following error when mounting UBIFS partition on NOR flash: UBIFS error (pid 1137): ubifs_recover_master_node: failed to recover master node Correct 2nd master node offset check is needed to fix the problem. If the 2nd master node is at the end in the 2nd LEB, first master node is used for recovery. When checking for this condition we should check whether the master node is exactly at the end of the LEB (without remaining empty space) or whether it is followed by an empty space less than the master node size. Artem: when the error happened, offs2 = 261120, sz = 512, c->leb_size = 262016. Signed-off-by: Anatolij Gustschin Signed-off-by: Artem Bityutskiy commit 4376cac66778b25e599be3f5d54f33f58ba8ead7 Author: Steven Rostedt Date: Fri Jun 24 23:28:13 2011 -0400 ftrace: Do not disable interrupts for modules in mcount update When I mounted an NFS directory, it caused several modules to be loaded. At the time I was running the preemptirqsoff tracer, and it showed the following output: # tracer: preemptirqsoff # # preemptirqsoff latency trace v1.1.5 on 2.6.33.9-rt30-mrg-test # -------------------------------------------------------------------- # latency: 1177 us, #4/4, CPU#3 | (M:preempt VP:0, KP:0, SP:0 HP:0 #P:4) # ----------------- # | task: modprobe-19370 (uid:0 nice:0 policy:0 rt_prio:0) # ----------------- # => started at: ftrace_module_notify # => ended at: ftrace_module_notify # # # _------=> CPU# # / _-----=> irqs-off # | / _----=> need-resched # || / _---=> hardirq/softirq # ||| / _--=> preempt-depth # |||| /_--=> lock-depth # |||||/ delay # cmd pid |||||| time | caller # \ / |||||| \ | / modprobe-19370 3d.... 0us!: ftrace_process_locs <-ftrace_module_notify modprobe-19370 3d.... 1176us : ftrace_process_locs <-ftrace_module_notify modprobe-19370 3d.... 1178us : trace_hardirqs_on <-ftrace_module_notify modprobe-19370 3d.... 1178us : => ftrace_process_locs => ftrace_module_notify => notifier_call_chain => __blocking_notifier_call_chain => blocking_notifier_call_chain => sys_init_module => system_call_fastpath That's over 1ms that interrupts are disabled on a Real-Time kernel! Looking at the cause (being the ftrace author helped), I found that the interrupts are disabled before the code modification of mcounts into nops. The interrupts only need to be disabled on start up around this code, not when modules are being loaded. Signed-off-by: Steven Rostedt commit e4a3f541f0b67fdad98b326c851dfe7f4b6b6dad Author: Steven Rostedt Date: Tue Jun 14 19:02:29 2011 -0400 tracing: Still trace filtered irq functions when irq trace is disabled If a function is set to be traced by the set_graph_function, but the option funcgraph-irqs is zero, and the traced function happens to be called from a interrupt, it will not be traced. The point of funcgraph-irqs is to not trace interrupts when we are preempted by an irq, not to not trace functions we want to trace that happen to be *in* a irq. Luckily the current->trace_recursion element is perfect to add a flag to help us be able to trace functions within an interrupt even when we are not tracing interrupts that preempt the trace. Reported-by: Heiko Carstens Tested-by: Heiko Carstens Signed-off-by: Steven Rostedt commit 5c4274f13819b40e726f6ee4ef13b4952cff5010 Author: Tetsuo Handa Date: Thu Jul 7 21:20:35 2011 +0900 TOMOYO: Remove /sys/kernel/security/tomoyo/.domain_status interface. /sys/kernel/security/tomoyo/.domain_status can be easily emulated using /sys/kernel/security/tomoyo/domain_policy . We can remove this interface by updating /usr/sbin/tomoyo-setprofile utility. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 6fe5a7e3cac5b60774186a95bbb7555fa604080c Merge: bc67f79 1083694 Author: Keith Packard Date: Thu Jul 7 15:39:51 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit e2f81844efa2d44d326bef48e1c9e48926162bc6 Author: Russell King Date: Wed Jul 6 10:53:22 2011 +0100 ARM: vmlinux.lds: use _text and _stext the same way as x86 x86 uses _text to mark the start of the kernel image including the head text, and _stext to mark the start of the .text section. Change our vmlinux.lds to conform. An audit of the places which use _stext and _text in arch/arm indicates no users of either symbol are impacted by this change. It does mean a slight change to /proc/iomem output. Acked-by: Nicolas Pitre Tested-by: Stephen Boyd Signed-off-by: Russell King commit 3835d69a6c7048a28d0aea3cb8403d5e83a0f867 Author: Russell King Date: Wed Jul 6 10:39:34 2011 +0100 ARM: vmlinux.lds: move init sections between text and data sections Place the init sections between the text and data sections. This means all code is grouped together at the beginning of the kernel image, and all data is at the end of the image. This avoids problems with the 24-bit branch instruction relocations becoming invalid with large initramfs images. Acked-by: Nicolas Pitre Tested-by: Stephen Boyd Signed-off-by: Russell King commit 43fc9d2fa5585adfadd0fdc06a20626727cf985a Author: Russell King Date: Wed Jul 6 00:01:20 2011 +0100 ARM: vmlinux.lds: remove .rodata/.rodata1 from main .text segment RODATA() already handles these sections, so allow it to take care of them for us. Acked-by: Nicolas Pitre Tested-by: Stephen Boyd Signed-off-by: Russell King commit 1604d79d372bcf0cf1aebcbdee251bd0f3d56665 Author: Russell King Date: Tue Jul 5 22:56:41 2011 +0100 ARM: vmlinux.lds: rearrange .init output section Keep the various linker tables as separate output sections rather than combining them together into one big .init section. This makes the 'vmlinux' easier to see what is placed where. Acked-by: Nicolas Pitre Tested-by: Stephen Boyd Signed-off-by: Russell King commit 39df88872f64b8a7c438861460063eadf2ba9011 Author: Russell King Date: Thu May 26 11:25:33 2011 +0100 ARM: vmlinux.lds: move discarded sections to beginning Rather than scattering the discarded sections throughout the linker file, move them to the start. Acked-by: Nicolas Pitre Tested-by: Stephen Boyd Signed-off-by: Russell King commit 3002b41bc6e5d66f7c1b5fd604f8f413e9bb37a5 Author: Russell King Date: Thu May 26 11:40:54 2011 +0100 ARM: decompressor: use better output sections Place read-only data in a .rodata output section, and the compressed piggy data in .piggydata. Place the .got.plt section before the .got section as is standard ELF practise. This allows the piggydata to be more easily extracted from the compressed vmlinux file for verification purposes. Acked-by: Nicolas Pitre Signed-off-by: Russell King commit c1f2d9991046769aa14a904ea2bf5434daf86262 Author: Russell King Date: Tue Jul 5 23:59:56 2011 +0100 ARM: ensure tag tables are const Nothing should ever modify a tag table entry, so mark these const. Acked-by: Nicolas Pitre Tested-by: Stephen Boyd Signed-off-by: Russell King commit bc67f799e7667fb3c00286f2415c3cc44a253aec Merge: 89c6143 c7ad381 Author: Keith Packard Date: Thu Jul 7 13:39:38 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 89c6143263ef8e14e42e17324a234418d8030b10 Author: Jesse Barnes Date: Fri Jun 24 12:19:28 2011 -0700 drm/i915: use pipe bpp in DP link bandwidth calculation Now that we track bpp on a per-pipe basis, we can use the actual value rather than assuming 24bpp. Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit b5626747eca6d02124544d1d69049220f1c01fb1 Author: Jesse Barnes Date: Fri Jun 24 12:19:27 2011 -0700 drm/i915: check for supported depth at fb init time This will catch bad fb configs earlier. Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 46e484566fe4dc8a34e0ccc154e2f8b939b9ec96 Author: Jesse Barnes Date: Fri Jun 24 12:19:26 2011 -0700 drm: bpp and depth changes require full mode sets To properly drive a framebuffer with a new depth or bpp, dither settings and link bandwidth calculations may change, so make sure we go through a full mode set in that case. Reported-by: Chris Wilson Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 020f6704b5fbf687534ce53aeedc0364a995ae8a Author: Jesse Barnes Date: Fri Jun 24 12:19:25 2011 -0700 drm/i915: use pipe bpp when setting HDMI bpc The Intel HDMI encoder can support 8bpc or 12bpc. Set the appropriate value based on the pipe bpp when configuring the output. Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 858fa03527ded333dc5701f546bd5d1b5d7515ad Author: Jesse Barnes Date: Fri Jun 24 12:19:24 2011 -0700 drm/i915: use pipe bpp in DP link bandwidth calculations The pipe may be driving various bpp values depending on the display configuration, so take that into account when calculating link bandwidth requirements. Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 17638cd68d5cbcd75dfad25966c0c56a5c2bac9f Author: Jesse Barnes Date: Fri Jun 24 12:19:23 2011 -0700 drm/i915: split out plane update code Updating the planes is device specific, so create a new display callback and use it in pipe_set_base. (In fact we could go even further, valid display plane bits have changed with each generation, as has tiled buffer handling.) Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 5a3542041bf85a65633ed203c3782492116ebb94 Author: Jesse Barnes Date: Fri Jun 24 12:19:22 2011 -0700 drm/i915: split out Ironlake pipe bpp picking code Figuring out which pipe bpp to use is a bit painful. It depends on both the encoder and display configuration attached to a pipe. For instance, to drive a 24bpp framebuffer out to an 18bpp panel, we need to use 6bpc on the pipe but also enable dithering. But driving that same framebuffer to a DisplayPort output on another pipe means using 8bpc and no dithering. So split out and enhance the code to handle the various cases, returning an appropriate pipe bpp as well as whether dithering should be enabled. Save the resulting pipe bpp in the intel_crtc struct for use by encoders in calculating bandwidth requirements (defaults to 24bpp on pre-ILK). Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 9325c9f088c42e3e07475d4f733ee6539ebf9c0b Author: Jesse Barnes Date: Fri Jun 24 12:19:21 2011 -0700 drm/i915: set bpc for DP transcoder This may not be the default value, so pull the bpc out of the pipe reg and write it to the DP transcoder so proper dithering and signaling occurs. Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit e9bcff5c0328f6edd3cbdd91783b23b5756f0880 Author: Jesse Barnes Date: Fri Jun 24 12:19:20 2011 -0700 drm/i915: don't set transcoder bpc on CougarPoint This prevents us from setting reserved or incorrect bits on CougarPoint. Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 5d4fac9716988dc7a26dddcd994f4dc7ee651e3c Author: Jesse Barnes Date: Fri Jun 24 12:19:19 2011 -0700 drm/i915: don't set SDVO color range on ILK+ These bits are reserved on ILK+ (ILK+ provides this feature in the transcoder and pipe configuration instead, which we already set). Signed-off-by: Jesse Barnes Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit 5a9ebe959967b7d3579de2a53d5df470fe0c7f22 Author: Kim Phillips Date: Thu Jul 7 14:43:12 2011 -0500 dt: bindings: move SEC node under new crypto/ Since technically it's not powerpc arch-specific. Also rename it sec2 to differentiate it from its incompatible successor, the SEC 4. Signed-off-by: Kim Phillips Signed-off-by: Grant Likely commit bfa71457a091ac0e4e20cab36e8ebad63935e504 Author: Pekka Enberg Date: Thu Jul 7 22:47:01 2011 +0300 SLUB: Fix missing include This fixes the following build breakage commit d6543e3 ("slub: Enable backtrace for create/delete points"): CC mm/slub.o mm/slub.c: In function ‘set_track’: mm/slub.c:428: error: storage size of ‘trace’ isn’t known mm/slub.c:435: error: implicit declaration of function ‘save_stack_trace’ mm/slub.c:428: warning: unused variable ‘trace’ make[1]: *** [mm/slub.o] Error 1 make: *** [mm/slub.o] Error 2 Signed-off-by: Pekka Enberg commit c4089f98e943ff445665dea49c190657b34ccffe Author: Marcin Slusarz Date: Sun Jun 26 21:39:18 2011 +0200 slub: reduce overhead of slub_debug slub checks for poison one byte by one, which is highly inefficient and shows up frequently as a highest cpu-eater in perf top. Joining reads gives nice speedup: (Compiling some project with different options) make -j12 make clean slub_debug disabled: 1m 27s 1.2 s slub_debug enabled: 1m 46s 7.6 s slub_debug enabled + this patch: 1m 33s 3.2 s check_bytes still shows up high, but not always at the top. Signed-off-by: Marcin Slusarz Cc: Christoph Lameter Cc: Pekka Enberg Cc: Matt Mackall Cc: linux-mm@kvack.org Signed-off-by: Pekka Enberg commit ea6bd8ee1a2ccdffc38b2b1fcfe941addfafaade Author: Christoph Lameter Date: Wed Jul 6 09:46:18 2011 -0500 SLUB: Fix build breakage in linux/mm_types.h On Wed, 6 Jul 2011, Jonathan Cameron wrote: > Getting: > > CHK include/linux/version.h > CHK include/generated/utsrelease.h > make[1]: `include/generated/mach-types.h' is up to date. > CC arch/arm/kernel/asm-offsets.s > In file included from include/linux/sched.h:64:0, > from arch/arm/kernel/asm-offsets.c:13: > include/linux/mm_types.h:74:15: error: duplicate member '_count' > make[1]: *** [arch/arm/kernel/asm-offsets.s] Error 1 > make: *** [prepare0] Error 2 > > Issue looks to have been introduced by > > mm: Rearrange struct page > > fc9bb8c768abe7ae10861c3510e01a95f98d5933 > > Guessing it's a known issue, but just thought I'd flag it up in case > it's something very specific about my build. > > gcc-2.6 armv7a > > Reverting that patch works, but given I don't know the history, I'm > not proposing doing that in general! Well _count exists in two unionized structs but always has the same offset within the larger struct. Maybe ARM creates different offsets there for some reason? The following is a patch to restructure the union / structs combo in such a way that only a single definition of _count Reported-by: Jonathan Cameron Tested-by: Piotr Hosowicz Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit d18a90dd85f8243ed20cdadb6d8a37d595df456d Author: Ben Greear Date: Thu Jul 7 11:36:37 2011 -0700 slub: Add method to verify memory is not freed This is for tracking down suspect memory usage. Acked-by: Christoph Lameter Signed-off-by: Ben Greear Signed-off-by: Pekka Enberg commit d6543e3935cec9f66b9647c24c2e44c68f8a91fd Author: Ben Greear Date: Thu Jul 7 11:36:36 2011 -0700 slub: Enable backtrace for create/delete points This patch attempts to grab a backtrace for the creation and deletion points of the slub object. When a fault is detected, we can then get a better idea of where the item was deleted. Example output from debugging some funky nfs/rpc behaviour: ============================================================================= BUG kmalloc-64: Object is on free-list ----------------------------------------------------------------------------- INFO: Allocated in rpcb_getport_async+0x39c/0x5a5 [sunrpc] age=381 cpu=3 pid=3750 __slab_alloc+0x348/0x3ba kmem_cache_alloc_trace+0x67/0xe7 rpcb_getport_async+0x39c/0x5a5 [sunrpc] call_bind+0x70/0x75 [sunrpc] __rpc_execute+0x78/0x24b [sunrpc] rpc_execute+0x3d/0x42 [sunrpc] rpc_run_task+0x79/0x81 [sunrpc] rpc_call_sync+0x3f/0x60 [sunrpc] rpc_ping+0x42/0x58 [sunrpc] rpc_create+0x4aa/0x527 [sunrpc] nfs_create_rpc_client+0xb1/0xf6 [nfs] nfs_init_client+0x3b/0x7d [nfs] nfs_get_client+0x453/0x5ab [nfs] nfs_create_server+0x10b/0x437 [nfs] nfs_fs_mount+0x4ca/0x708 [nfs] mount_fs+0x6b/0x152 INFO: Freed in rpcb_map_release+0x3f/0x44 [sunrpc] age=30 cpu=2 pid=29049 __slab_free+0x57/0x150 kfree+0x107/0x13a rpcb_map_release+0x3f/0x44 [sunrpc] rpc_release_calldata+0x12/0x14 [sunrpc] rpc_free_task+0x59/0x61 [sunrpc] rpc_final_put_task+0x82/0x8a [sunrpc] __rpc_execute+0x23c/0x24b [sunrpc] rpc_async_schedule+0x10/0x12 [sunrpc] process_one_work+0x230/0x41d worker_thread+0x133/0x217 kthread+0x7d/0x85 kernel_thread_helper+0x4/0x10 INFO: Slab 0xffffea00029aa470 objects=20 used=9 fp=0xffff8800be7830d8 flags=0x20000000004081 INFO: Object 0xffff8800be7830d8 @offset=4312 fp=0xffff8800be7827a8 Bytes b4 0xffff8800be7830c8: 87 a8 96 00 01 00 00 00 5a 5a 5a 5a 5a 5a 5a 5a .�......ZZZZZZZZ Object 0xffff8800be7830d8: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xffff8800be7830e8: 6b 6b 6b 6b 01 08 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkk..kkkkkkkkkk Object 0xffff8800be7830f8: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object 0xffff8800be783108: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b a5 kkkkkkkkkkkkkkk� Redzone 0xffff8800be783118: bb bb bb bb bb bb bb bb ������������� Padding 0xffff8800be783258: 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZ Pid: 29049, comm: kworker/2:2 Not tainted 3.0.0-rc4+ #8 Call Trace: [] print_trailer+0x131/0x13a [] object_err+0x35/0x3e [] verify_mem_not_deleted+0x7a/0xb7 [] rpcb_getport_done+0x23/0x126 [sunrpc] [] rpc_exit_task+0x3f/0x6d [sunrpc] [] __rpc_execute+0x78/0x24b [sunrpc] [] ? rpc_execute+0x42/0x42 [sunrpc] [] rpc_async_schedule+0x10/0x12 [sunrpc] [] process_one_work+0x230/0x41d [] ? process_one_work+0x17b/0x41d [] worker_thread+0x133/0x217 [] ? manage_workers+0x191/0x191 [] kthread+0x7d/0x85 [] kernel_thread_helper+0x4/0x10 [] ? retint_restore_args+0x13/0x13 [] ? __init_kthread_worker+0x56/0x56 [] ? gs_change+0x13/0x13 Acked-by: Christoph Lameter Signed-off-by: Ben Greear Signed-off-by: Pekka Enberg commit 345e397d841068c4ba2829a226fbe6613bac1d0d Merge: 727e18b 21385ee Author: Tony Lindgren Date: Thu Jul 7 12:11:23 2011 -0700 Merge branch 'peter/topic/for-tony' of git://gitorious.org/omap-audio/linux-audio into twl-asoc commit 727e18b429e3badda12d1de74f492bfa363a2e94 Merge: fd1ee39 b252b0e Author: Tony Lindgren Date: Thu Jul 7 12:08:58 2011 -0700 Merge branch 'peter/topic/for-tony_mach-cleanup' of git://gitorious.org/omap-audio/linux-audio into cleanup-part-2 commit fd1ee39151f397730a2b23d14fb232c098743f4b Author: Jarkko Nikula Date: Fri Jul 1 08:52:27 2011 +0000 omap: mcbsp: Remove port number enums These McBSP port number enums are used only in two places in the McBSP code so we may remove then and just use numeric values like rest of the code does. Signed-off-by: Jarkko Nikula Signed-off-by: Tony Lindgren commit 9df0fcc4c842703080ee431112d624b1f8f2f1c8 Author: Jarkko Nikula Date: Fri Jul 1 08:52:26 2011 +0000 omap: mcbsp: Remove rx_/tx_word_length variables These variables got unused after ("omap: mcbsp: Drop in-driver transfer support") but was noticed only afterwards. Signed-off-by: Jarkko Nikula Signed-off-by: Tony Lindgren commit fb1492186276ba52d99b58121b8a9a87f20cc9f3 Author: Lothar Waßmann Date: Thu Jul 7 14:50:16 2011 +0200 gpio/mxc: add missing initialization of basic_mmio_gpio shadow variables The bgpio_init() function does not initialise the shadow register for the GPIO direction register. Thus, when configuring the first GPIO with gpio_set_direction() all other GPIOs of the same bank will be configured as inputs. Since the bgpio layer cannot know whether the register is readable, the initialisation should be done by the caller of bgpio_init(). Also, the 'data' shadow variable that is used inside basic_mmio_gpio to cache the current value of the GPIO_DR register is initialised from the GPIO_PSR register within bgpio_init(). Thus when setting the output value of a certain GPIO, the other GPIO outputs of the same bank will be set or cleared depending on the pin state of the GPIO inputs during bgpio_init(). Signed-off-by: Lothar Waßmann Signed-off-by: Grant Likely commit fadd192e81b0a8d8086531b8c11bd88b311b68c2 Author: Mat Martineau Date: Thu Jul 7 09:39:03 2011 -0700 Bluetooth: Remove L2CAP busy queue The ERTM receive buffer is now handled in a way that does not require the busy queue and the associated polling code. Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit e328140fdacbba43292a59a22fb55d9185288318 Author: Mat Martineau Date: Thu Jul 7 09:39:02 2011 -0700 Bluetooth: Use event-driven approach for handling ERTM receive buffer This change moves most L2CAP ERTM receive buffer handling out of the L2CAP core and in to the socket code. It's up to the higher layer (the socket code, in this case) to tell the core when its buffer is full or has space available. The recv op should always accept incoming ERTM data or else the connection will go down. Within the socket layer, an skb that does not fit in the socket receive buffer will be temporarily stored. When the socket is read from, that skb will be placed in the receive buffer if possible. Once adequate buffer space becomes available, the L2CAP core is informed and the ERTM local busy state is cleared. Receive buffer management for non-ERTM modes is unchanged. Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit 26f880d221302b5d061185d8a6795bb532693bf3 Author: Mat Martineau Date: Thu Jul 7 09:39:01 2011 -0700 Bluetooth: Move code for ERTM local busy state to separate functions The local busy state is entered and exited based on buffer status in the socket layer (or other upper layer). This change is in preparation for general buffer status reports from the socket layer, which will then be used to change the local busy status. Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit f4daf06fc23b99df5ca5b3e892428b91e148cc52 Author: Will Deacon Date: Mon Jun 6 12:27:34 2011 +0100 ARM: proc: add definition of cpu_reset for ARMv6 and ARMv7 cores This patch adds simple definitions of cpu_reset for ARMv6 and ARMv7 cores, which disable the MMU via the SCTLR. Signed-off-by: Will Deacon commit 14abd038a7a209193c58ee7dde01ef4bf1523a91 Author: Will Deacon Date: Wed Jan 19 14:24:38 2011 +0000 ARM: perf: add support for the Cortex-A15 PMU This patch adds support for the Cortex-A15 PMU to the ARMv7 perf-event backend. Signed-off-by: Will Deacon commit 0c205cbe20654616e2f8389c0c1ff707d9dccb63 Author: Will Deacon Date: Fri Jun 3 17:40:15 2011 +0100 ARM: perf: add support for the Cortex-A5 PMU This patch adds support for the Cortex-A5 PMU to the ARMv7 perf-event backend. Signed-off-by: Will Deacon commit 6d4eaf991c654af54a19c0fa48e0ad62cefbc37c Author: Will Deacon Date: Wed Jan 19 14:15:34 2011 +0000 ARM: perf: add PMUv2 common event definitions The PMUv2 specification reserves a number of event encodings for common events. This patch adds these events to the common event enumeration in preparation for PMUv2 cores, such as Cortex-A15. Acked-by: Jean Pihet Signed-off-by: Will Deacon commit 7b35fa47eecd0c746924a6d6c2a897d2cec778ba Author: Will Deacon Date: Fri Jun 3 17:38:49 2011 +0100 ARM: perf: remove confusing comment from v7 perf events backend The comment about measuring TLB misses and refills in the ARMv7 perf backend makes little sense and refers loosely to raw counters that should be used instead. This patch removes the comments to avoid any confusion. Signed-off-by: Will Deacon commit 7665d9d2df2eb26284467c2f8591004bd511c75f Author: Will Deacon Date: Wed Jan 12 17:10:45 2011 +0000 ARM: proc: add proc info for Cortex-A15MP using classic page tables Multicore implementations of the Cortex-A15 require bit 6 of the auxiliary control register to be set in order for cache and TLB maintenance operations to be broadcast between CPUs. This patch adds a new proc_info structure for Cortex-A15, which enables the SMP bit during setup and includes the new HWCAP for integer division. Signed-off-by: Will Deacon commit 15eb169bfec291faf25b158cfa9842b72f7803ad Author: Pawel Moll Date: Fri May 20 14:39:29 2011 +0100 ARM: proc: add Cortex-A5 proc info This patch adds processor info for ARM Ltd. Cortex A5, which has SCU initialisation procedure identical to A9. Signed-off-by: Pawel Moll Signed-off-by: Will Deacon commit dc939cd835d0e2d3ff4197d6e2c017d269616d20 Author: Pawel Moll Date: Fri May 20 14:39:28 2011 +0100 ARM: proc: convert v7 proc infos into a common macro As most of the proc info content is common across all v7 processors, this patch converts existing A9 and generic v7 descriptions into a macro (allowing extra flags in future). Signed-off-by: Pawel Moll Signed-off-by: Will Deacon commit 18b9dc130c33de2d1fd46bd668e67d0e1a544b16 Author: Will Deacon Date: Wed Jun 8 11:42:43 2011 +0100 ARM: vfp: add VFPv4 capability detection and populate elf_hwcap The presence of VFPv4 cannot be detected simply by looking at the FPSID subarchitecture field, as a value >= 2 signifies the architecture as VFPv3 or later. This patch reads from MVFR1 to check whether or not the fused multiply accumulate instructions are supported. Since these are introduced with VFPv4, this tells us what we need to know. Signed-off-by: Will Deacon commit 254cdf8ec39653d19cce71b6622f38a6b62ac3a8 Author: Will Deacon Date: Fri Jun 3 14:15:22 2011 +0100 ARM: hwcaps: add new HWCAP defines for ARMv7-A Modern ARMv7-A cores can optionally implement these new hardware features: - VFPv4: The latest version of the ARMv7 vector floating-point extensions, including hardware support for fused multiple accumulate. D16 or D32 variants may be implemented. - Integer divide: The SDIV and UDIV instructions provide signed and unsigned integer division in hardware. When implemented, these instructions may be available in either both Thumb and ARM, or Thumb only. This patch adds new HWCAP defines to describe these new features. The integer divide capabilities are split into two bits for ARM and Thumb respectively. Whilst HWCAP_IDIVA should never be set if HWCAP_IDIVT is clear, separating the bits makes it easier to interpret from userspace. Signed-off-by: Will Deacon commit 194a7f720f6f009867a01b760f311b68f1e81872 Author: Will Deacon Date: Fri Jun 3 14:09:37 2011 +0100 ARM: hwcaps: use shifts instead of hardcoded constants The HWCAP numbers are defined as constants, each one being a power of 2. This has become slightly unwieldy now that we have reached 32k. This patch changes the HWCAP defines to use (1 << n) instead of coding the constant directly. The values remain unchanged. Signed-off-by: Will Deacon commit 305edadbfbc46f1d194d27e93e4237284b95fbb0 Merge: b0af8df 2ba564b Author: Will Deacon Date: Thu Jul 7 19:19:53 2011 +0100 Merge branch 'arm/proc-macros' of git://git.linaro.org/people/dmart/linux-2.6-arm into for-rmk commit 30ab2b034fa87472d700f584e277e3aeb7a84d2c Author: Jonas Bonn Date: Sat Jul 2 10:29:24 2011 +0200 asm-generic: adapt delay.h to common implementation Several architectures are using a common delay.h implementation that appears to have originated with the x86 architecture. This common implementation is a bit fuller than the current asm-generic version and has some compile-time checks that should be interesting for all architectures. This patch takes the common delay.h version and replaces the rather trivial asm-generic version with it. As no architecture was actually using asm-generic/delay.h, this change is rather innocuous; it will, however, allow us to switch at least four architectures over to using the asm-generic version. Signed-off-by: Jonas Bonn Acked-by: Arnd Bergmann commit 90810645f78f894acfb04b3768e8a7d45f2b303a Author: Christoph Lameter Date: Thu Jun 23 09:36:12 2011 -0500 slab allocators: Provide generic description of alignment defines Provide description for alignment defines. Acked-by: David Rientjes Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 8c156c322f8a300afe59259bd554db166cf88203 Author: Andre Guedes Date: Thu Jul 7 10:30:36 2011 -0300 Bluetooth: Fix potential deadlock in mgmt All threads running in process context should disable local bottom halve before locking hdev->lock. This patch fix the following message generated when Bluetooh module is loaded with enable_mgmt=y (CONFIG_PROVE_LOCKING enabled). [ 107.880781] ================================= [ 107.881631] [ INFO: inconsistent lock state ] [ 107.881631] 2.6.39+ #1 [ 107.881631] --------------------------------- [ 107.881631] inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage. [ 107.881631] rcuc0/7 [HC0[0]:SC1[3]:HE1:SE0] takes: [ 107.881631] (&(&hdev->lock)->rlock){+.?...}, at: [] mgmt_set_local_name_complete+0x84/0x10b [bluetooth] [ 107.881631] {SOFTIRQ-ON-W} state was registered at: [ 107.881631] [] __lock_acquire+0x347/0xd52 [ 107.881631] [] lock_acquire+0x8a/0xa7 [ 107.881631] [] _raw_spin_lock+0x2c/0x3b [ 107.881631] [] mgmt_control+0xd4d/0x175b [bluetooth] [ 107.881631] [] hci_sock_sendmsg+0x97/0x293 [bluetooth] [ 107.881631] [] sock_aio_write+0x126/0x13a [ 107.881631] [] do_sync_write+0xba/0xfa [ 107.881631] [] vfs_write+0xaa/0xca [ 107.881631] [] sys_write+0x45/0x69 [ 107.881631] [] system_call_fastpath+0x16/0x1b [ 107.881631] irq event stamp: 2100876 [ 107.881631] hardirqs last enabled at (2100876): [] restore_args+0x0/0x30 [ 107.881631] hardirqs last disabled at (2100875): [] save_args+0x6a/0x70 [ 107.881631] softirqs last enabled at (2100862): [] rcu_cpu_kthread+0x2b5/0x2e2 [ 107.881631] softirqs last disabled at (2100863): [] call_softirq+0x1c/0x26 [ 107.881631] [ 107.881631] other info that might help us debug this: [ 107.881631] Possible unsafe locking scenario: [ 107.881631] [ 107.881631] CPU0 [ 107.881631] ---- [ 107.881631] lock(&(&hdev->lock)->rlock); [ 107.881631] [ 107.881631] lock(&(&hdev->lock)->rlock); [ 107.881631] [ 107.881631] *** DEADLOCK *** [ 107.881631] [ 107.881631] 1 lock held by rcuc0/7: [ 107.881631] #0: (hci_task_lock){++.-..}, at: [] hci_rx_task+0x49/0x2f3 [bluetooth] [ 107.881631] [ 107.881631] stack backtrace: [ 107.881631] Pid: 7, comm: rcuc0 Not tainted 2.6.39+ #1 [ 107.881631] Call Trace: [ 107.881631] [] print_usage_bug+0x1e7/0x1f8 [ 107.881631] [] ? save_stack_trace+0x27/0x44 [ 107.881631] [] ? print_irq_inversion_bug.part.26+0x19a/0x19a [ 107.881631] [] mark_lock+0x106/0x258 [ 107.881631] [] __lock_acquire+0x2d3/0xd52 [ 107.881631] [] ? vprintk+0x3ab/0x3d7 [ 107.881631] [] lock_acquire+0x8a/0xa7 [ 107.881631] [] ? mgmt_set_local_name_complete+0x84/0x10b [bluetooth] [ 107.881631] [] ? lock_release+0x16c/0x179 [ 107.881631] [] _raw_spin_lock_bh+0x31/0x40 [ 107.881631] [] ? mgmt_set_local_name_complete+0x84/0x10b [bluetooth] [ 107.881631] [] mgmt_set_local_name_complete+0x84/0x10b [bluetooth] [ 107.881631] [] hci_event_packet+0x122b/0x3e12 [bluetooth] [ 107.881631] [] ? mark_held_locks+0x4b/0x6d [ 107.881631] [] ? _raw_spin_unlock_irqrestore+0x40/0x4d [ 107.881631] [] ? trace_hardirqs_on_caller+0x13f/0x172 [ 107.881631] [] ? _raw_spin_unlock_irqrestore+0x48/0x4d [ 107.881631] [] hci_rx_task+0xc8/0x2f3 [bluetooth] [ 107.881631] [] ? __local_bh_enable+0x90/0xa4 [ 107.881631] [] tasklet_action+0x87/0xe6 [ 107.881631] [] __do_softirq+0x9f/0x13f [ 107.881631] [] call_softirq+0x1c/0x26 [ 107.881631] [] ? do_softirq+0x46/0x9a [ 107.881631] [] ? rcu_cpu_kthread+0x2b5/0x2e2 [ 107.881631] [] _local_bh_enable_ip+0xac/0xc9 [ 107.881631] [] local_bh_enable+0xd/0xf [ 107.881631] [] rcu_cpu_kthread+0x2b5/0x2e2 [ 107.881631] [] ? __init_waitqueue_head+0x46/0x46 [ 107.881631] [] ? rcu_yield.constprop.42+0x98/0x98 [ 107.881631] [] kthread+0x7f/0x87 [ 107.881631] [] kernel_thread_helper+0x4/0x10 [ 107.881631] [] ? retint_restore_args+0x13/0x13 [ 107.881631] [] ? __init_kthread_worker+0x53/0x53 [ 107.881631] [] ? gs_change+0x13/0x13 Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit 8aded7110a5625bc00aef05e94dd4b1a9cf3605f Author: Andre Guedes Date: Thu Jul 7 10:30:35 2011 -0300 Bluetooth: Fix potential deadlock in hci_core Since hdev->lock may be acquired by threads runnning in interrupt context, all threads running in process context should disable local bottom halve before locking hdev->lock. This can be done by using hci_dev_lock_bh macro. This way, we avoid potencial deadlocks like this one reported by CONFIG_PROVE_LOCKING=y. [ 304.788780] ================================= [ 304.789686] [ INFO: inconsistent lock state ] [ 304.789686] 2.6.39+ #1 [ 304.789686] --------------------------------- [ 304.789686] inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage. [ 304.789686] ksoftirqd/0/3 [HC0[0]:SC1[1]:HE1:SE0] takes: [ 304.789686] (&(&hdev->lock)->rlock){+.?...}, at: [] hci_conn_check_pending+0x38/0x76 [bluetooth] [ 304.789686] {SOFTIRQ-ON-W} state was registered at: [ 304.789686] [] __lock_acquire+0x347/0xd52 [ 304.789686] [] lock_acquire+0x8a/0xa7 [ 304.789686] [] _raw_spin_lock+0x2c/0x3b [ 304.789686] [] hci_blacklist_del+0x1f/0x8a [bluetooth] [ 304.789686] [] hci_sock_ioctl+0x2d9/0x314 [bluetooth] [ 304.789686] [] sock_ioctl+0x1f2/0x214 [ 304.789686] [] do_vfs_ioctl+0x46c/0x4ad [ 304.789686] [] sys_ioctl+0x42/0x65 [ 304.789686] [] system_call_fastpath+0x16/0x1b [ 304.789686] irq event stamp: 9768 [ 304.789686] hardirqs last enabled at (9768): [] restore_args+0x0/0x30 [ 304.789686] hardirqs last disabled at (9767): [] save_args+0x6a/0x70 [ 304.789686] softirqs last enabled at (9726): [] __do_softirq+0x129/0x13f [ 304.789686] softirqs last disabled at (9739): [] run_ksoftirqd+0x82/0x133 [ 304.789686] [ 304.789686] other info that might help us debug this: [ 304.789686] Possible unsafe locking scenario: [ 304.789686] [ 304.789686] CPU0 [ 304.789686] ---- [ 304.789686] lock(&(&hdev->lock)->rlock); [ 304.789686] [ 304.789686] lock(&(&hdev->lock)->rlock); [ 304.789686] [ 304.789686] *** DEADLOCK *** [ 304.789686] [ 304.789686] 1 lock held by ksoftirqd/0/3: [ 304.789686] #0: (hci_task_lock){++.-..}, at: [] hci_rx_task+0x49/0x2f3 [bluetooth] [ 304.789686] [ 304.789686] stack backtrace: [ 304.789686] Pid: 3, comm: ksoftirqd/0 Not tainted 2.6.39+ #1 [ 304.789686] Call Trace: [ 304.789686] [] print_usage_bug+0x1e7/0x1f8 [ 304.789686] [] ? save_stack_trace+0x27/0x44 [ 304.789686] [] ? print_irq_inversion_bug.part.26+0x19a/0x19a [ 304.789686] [] mark_lock+0x106/0x258 [ 304.789686] [] ? retint_restore_args+0x13/0x13 [ 304.789686] [] __lock_acquire+0x2d3/0xd52 [ 304.789686] [] ? vprintk+0x3ab/0x3d7 [ 304.789686] [] ? printk+0x3c/0x3e [ 304.789686] [] lock_acquire+0x8a/0xa7 [ 304.789686] [] ? hci_conn_check_pending+0x38/0x76 [bluetooth] [ 304.789686] [] ? __dynamic_pr_debug+0x10c/0x11a [ 304.789686] [] _raw_spin_lock+0x2c/0x3b [ 304.789686] [] ? hci_conn_check_pending+0x38/0x76 [bluetooth] [ 304.789686] [] hci_conn_check_pending+0x38/0x76 [bluetooth] [ 304.789686] [] hci_event_packet+0x38e/0x3e12 [bluetooth] [ 304.789686] [] ? lock_release+0x16c/0x179 [ 304.789686] [] ? _raw_read_unlock+0x23/0x27 [ 304.789686] [] ? hci_send_to_sock+0x179/0x188 [bluetooth] [ 304.789686] [] hci_rx_task+0xc8/0x2f3 [bluetooth] [ 304.789686] [] tasklet_action+0x87/0xe6 [ 304.789686] [] __do_softirq+0x9f/0x13f [ 304.789686] [] run_ksoftirqd+0x82/0x133 [ 304.789686] [] ? __do_softirq+0x13f/0x13f [ 304.789686] [] kthread+0x7f/0x87 [ 304.789686] [] kernel_thread_helper+0x4/0x10 [ 304.789686] [] ? retint_restore_args+0x13/0x13 [ 304.789686] [] ? __init_kthread_worker+0x53/0x53 [ 304.789686] [] ? gs_change+0x13/0x13 Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit e08fbb78f03fe2c4f88824faf6f51ce6af185e11 Author: Steven Rostedt Date: Fri Jul 1 23:04:36 2011 -0400 tracing, x86/irq: Do not trace arch_local_{*,irq_*}() functions I triggered a triple fault with gcc 4.5.1 because it did not honor the inline annotation to arch_local_save_flags() function and that function was added to the pool of functions traced by the function tracer. When preempt_schedule() called arch_local_save_flags() (called by irqs_disabled()), it was traced, but the first thing the function tracer does is disable preemption. When it enables preemption, the NEED_RESCHED flag will not have been cleared and the preemption check will trigger the call to preempt_schedule() again. Although the dynamic function tracer crashed immediately, the static version of the function tracer (CONFIG_DYNAMIC_FTRACE is not set) actually was able to show where the problem was. swapper-1 3.N.. 103885us : arch_local_save_flags <-preempt_schedule swapper-1 3.N.. 103886us : arch_local_save_flags <-preempt_schedule swapper-1 3.N.. 103886us : arch_local_save_flags <-preempt_schedule swapper-1 3.N.. 103887us : arch_local_save_flags <-preempt_schedule swapper-1 3.N.. 103887us : arch_local_save_flags <-preempt_schedule swapper-1 3.N.. 103888us : arch_local_save_flags <-preempt_schedule swapper-1 3.N.. 103888us : arch_local_save_flags <-preempt_schedule It went on for a while before it triple faulted with a corrupted stack. The arch_local_save_flags and arch_local_irq_* functions should not be traced. Even though they are marked as inline, gcc may still make them a function and enable tracing of them. The simple solution is to just mark them as notrace. I had to add the for this file to include the notrace tag. Signed-off-by: Steven Rostedt Link: http://lkml.kernel.org/r/20110702033852.733414762@goodmis.org Signed-off-by: Ingo Molnar commit 5f0dd296a01c8173fcc05a8b262a1168ae90bc74 Author: Gertjan van Wingerde Date: Wed Jul 6 23:00:21 2011 +0200 rt2x00: Implement tx_frames_pending mac80211 callback function. Implementing this callback function will cause mac80211 refrain from going to powersave state when there are still untransmitted TX frames in the queues. This would exactly mimic the behaviour of the legacy vendor driver which also doesn't go in powersave mode if there are still TX frames that are not transmitted. This should make powersaving and rt2x00 a better couple. Signed-off-by: Gertjan van Wingerde Acked-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit acb56120d2c386d6dd104a6515c1a15dabc1ef87 Author: Gertjan van Wingerde Date: Wed Jul 6 22:59:19 2011 +0200 rt2x00: Properly identify rt2800usb devices. Sitecom WLA4000 (USB ID 0x0df6:0x0060) is an RT3072 chipset. Sitecom WLA5000 (USB ID 0x0df6:0x0062) is an RT3572 chipset. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 71e0b38c2914018b01f3f08b43ee9e3328197699 Author: Gertjan van Wingerde Date: Wed Jul 6 22:58:55 2011 +0200 rt2x00: Add device ID for RT539F device. Reported-by: Wim Vander Schelden Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 128f8f773d77d41a7dbcaf5d36325a0f4e7955cd Author: Gertjan van Wingerde Date: Wed Jul 6 22:57:37 2011 +0200 rt2x00: Reduce window of a queue's tx lock. Currently a lot of actions that can be done without the queue's tx lock being held are done inside the locked area. Move them out to have a leaner and meaner code that operates while the tx lock is being held. Signed-off-by: Gertjan van Wingerde Acked-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 77b5621bac4a56b83b9081f48d4e7d1accdde400 Author: Gertjan van Wingerde Date: Wed Jul 6 22:57:00 2011 +0200 rt2x00: Don't use queue entry as parameter when creating TX descriptor. The functions that create the tx descriptor structure do not operate on a queue entry at all. Signal this fact in the code by not providing a queue entry as a parameter, but the rt2x00 device structure and the skb directly. This patch is a preparation for reducing the time a queue is locked for a tx operation. Signed-off-by: Gertjan van Wingerde Acked-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 77a861c405da75d81e9e6e32c50eb7f9777777e8 Author: Gertjan van Wingerde Date: Wed Jul 6 22:56:24 2011 +0200 rt2x00: Serialize TX operations on a queue. The rt2x00 driver gets frequent occurrences of the following error message when operating under load: phy0 -> rt2x00queue_write_tx_frame: Error - Arrived at non-free entry in the non-full queue 2. This is caused by simultaneous attempts from mac80211 to send a frame via rt2x00, which are not properly serialized inside rt2x00queue_write_tx_frame, causing the second frame to fail sending with the above mentioned error message. Fix this by introducing a per-queue spinlock to serialize the TX operations on that queue. Reported-by: Andreas Hartmann Signed-off-by: Gertjan van Wingerde Acked-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9352f69c9194f1dcb3e096377e5c4804ab1bb5fb Author: Rafał Miłecki Date: Tue Jul 5 19:48:26 2011 +0200 bcma: detect PCI core working in hostmode We must not init it like clientmode one, it would break device (tested by Hauke on BCM4718). Add stub hostmode driver for now. Signed-off-by: Rafał Miłecki Signed-off-by: Hauke Mehrtens Signed-off-by: John W. Linville commit b5d5f59be2ac586db2db0ac324215a714961f364 Merge: e12c28a bd7fdbc Author: Mark Brown Date: Thu Jul 7 09:54:19 2011 -0700 Merge branch 'for-3.0' into for-3.1 commit e12c28a98f0517a8868ac80ef4585487b3e81853 Author: Axel Lin Date: Wed Jul 6 21:20:42 2011 +0800 ASoC: pxa2xx-pcm: remove unused variable 'dai' Remove unused variable 'dai' to eliminate below warning. CC sound/soc/pxa/pxa2xx-pcm.o sound/soc/pxa/pxa2xx-pcm.c: In function 'pxa2xx_soc_pcm_new': sound/soc/pxa/pxa2xx-pcm.c:91: warning: unused variable 'dai' Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a7f9becb7d27008af0f72f8449c110276b0df37d Author: Antonio Quartulli Date: Thu Jul 7 14:24:34 2011 +0200 batman-adv: request the full table if tt_crc doesn't match In case of tt_crc mismatching for a certain orig_node after applying the changes, the node must request the full table immediately. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner commit 980d55b20a730cbabc74cdc57be9c47713dba57b Author: Antonio Quartulli Date: Thu Jul 7 01:40:59 2011 +0200 batman-adv: keep global table consistency in case of roaming To keep consistency of other originator tables, new clients detected as roamed, are kept in the global table but are marked as TT_CLIENT_PENDING They are purged only when the new ttvn is received by the corresponding originator. Moreover they need to be considered as removed in case of global transtable lookup. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner commit 058d0e26989e3da2fa031f551235f6ff1e0bc27c Author: Antonio Quartulli Date: Thu Jul 7 01:40:58 2011 +0200 batman-adv: keep local table consistency for further TT_RESPONSE To keep transtable consistency among all the nodes, an originator must not send not yet announced clients within a full table TT_RESPONSE. Instead, deleted client have to be kept in the table in order to be sent within an immediate TT_RESPONSE. In this way all the nodes in the network will always provide the same response for the same request. All the modification are committed at the next ttvn increment event. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner commit c8c991bf2076d711f14ff9063db306fd522ddcd4 Author: Antonio Quartulli Date: Thu Jul 7 01:40:57 2011 +0200 batman-adv: initialise last_ttvn and tt_crc for the orig_node structure The last_ttvn and tt_crc fields of the orig_node structure were not initialised causing an immediate TT_REQ/RES dialogue even if not needed. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner commit 1d045db96ad9b8f4d876d5945ab097425252e4ab Author: Takashi Iwai Date: Thu Jul 7 18:23:21 2011 +0200 ALSA: hda - Split quirk codes from patch_realtek.c Put the all static quirk codes out of patch_realtek.c, split into the file for each codec model. For controlling the build of quirk codes, a new Kconfig, CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS is introduced. By setting this off, all quirk codes won't be built, thus you can save lots of memory. The codes in patch_realtek.c are also shuffled and more comments are given, but the contents aren't changed. This is just a refactoring. Signed-off-by: Takashi Iwai commit 0e4a73ae5893d61ae10a9f219e2f3371e44589a8 Author: Takashi Iwai Date: Thu Jul 7 17:05:48 2011 +0200 ALSA: hda - Use common paser for digital I/O for ALC260 Avoid open-codes. Signed-off-by: Takashi Iwai commit 21268961d3d1bbdd22a19b68adb80119e8c72dcd Author: Takashi Iwai Date: Thu Jul 7 15:01:13 2011 +0200 ALSA: hda - More flexible dynamic-ADC switching for Realtek codecs This patch changes the auto-parser and the auto-mic handling codes to allow more flexible dynamic ADC-switching with Realtek codecs. In the new code, the following strategy is taken: - When a cap-src can't handle all input-sources, either skip it, or switch to the ADC-switching mode. In ADC-switching mode, like the former dual-ADC mode for ALC275, it changes ADC on the fly according to the current input source. - When auto-mic is possible, always assign imux. If the mic pins are set statically via a quirk, rebuild imux according to the pins. In the auto-mic mode, the driver always changes the imux (although the imux isn't exposed as a mixer element). Signed-off-by: Takashi Iwai commit dd7f3d5458e5c0eded620fe8192abe7e418fc94c Author: Alexey Khoroshilov Date: Wed Jul 6 02:30:00 2011 +0400 hfsplus: Add error propagation for hfsplus_ext_write_extent_locked Implement error propagation through the callers of hfsplus_ext_write_extent_locked(). Signed-off-by: Alexey Khoroshilov Signed-off-by: Christoph Hellwig commit 5bd9d99d107c56ff7b35a29e930d85f91a07b2fd Author: Alexey Khoroshilov Date: Wed Jul 6 02:29:59 2011 +0400 hfsplus: add error checking for hfs_find_init() hfs_find_init() may fail with ENOMEM, but there are places, where the returned value is not checked. The consequences can be very unpleasant, e.g. kfree uninitialized pointer and inappropriate mutex unlocking. The patch adds checks for errors in hfs_find_init(). Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Signed-off-by: Christoph Hellwig commit 43dd61c9a09bd413e837df829e6bfb42159be52a Author: Steven Rostedt Date: Thu Jul 7 11:09:22 2011 -0400 ftrace: Fix regression of :mod:module function enabling The new code that allows different utilities to pick and choose what functions they trace broke the :mod: hook that allows users to trace only functions of a particular module. The reason is that the :mod: hook bypasses the hash that is setup to allow individual users to trace their own functions and uses the global hash directly. But if the global hash has not been set up, it will cause a bug: echo '*:mod:radeon' > /sys/kernel/debug/set_ftrace_filter produces: [drm:drm_mode_getfb] *ERROR* invalid framebuffer id [drm:radeon_crtc_page_flip] *ERROR* failed to reserve new rbo buffer before flip BUG: unable to handle kernel paging request at ffffffff8160ec90 IP: [] add_hash_entry+0x66/0xd0 PGD 1a05067 PUD 1a09063 PMD 80000000016001e1 Oops: 0003 [#1] SMP Jul 7 04:02:28 phyllis kernel: [55303.858604] CPU 1 Modules linked in: cryptd aes_x86_64 aes_generic binfmt_misc rfcomm bnep ip6table_filter hid radeon r8169 ahci libahci mii ttm drm_kms_helper drm video i2c_algo_bit intel_agp intel_gtt Pid: 10344, comm: bash Tainted: G WC 3.0.0-rc5 #1 Dell Inc. Inspiron N5010/0YXXJJ RIP: 0010:[] [] add_hash_entry+0x66/0xd0 RSP: 0018:ffff88003a96bda8 EFLAGS: 00010246 RAX: ffff8801301735c0 RBX: ffffffff8160ec80 RCX: 0000000000306ee0 RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff880137c92940 RBP: ffff88003a96bdb8 R08: ffff880137c95680 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: ffffffff81c9df78 R13: ffff8801153d1000 R14: 0000000000000000 R15: 0000000000000000 FS: 00007f329c18a700(0000) GS:ffff880137c80000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffffffff8160ec90 CR3: 000000003002b000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process bash (pid: 10344, threadinfo ffff88003a96a000, task ffff88012fcfc470) Stack: 0000000000000fd0 00000000000000fc ffff88003a96be38 ffffffff810d92f5 ffff88011c4c4e00 ffff880000000000 000000000b69f4d0 ffffffff8160ec80 ffff8800300e6f06 0000000081130295 0000000000000282 ffff8800300e6f00 Call Trace: [] match_records+0x155/0x1b0 [] ftrace_mod_callback+0xbc/0x100 [] ftrace_regex_write+0x16f/0x210 [] ftrace_filter_write+0xf/0x20 [] vfs_write+0xc8/0x190 [] sys_write+0x51/0x90 [] system_call_fastpath+0x16/0x1b Code: 48 8b 33 31 d2 48 85 f6 75 33 49 89 d4 4c 03 63 08 49 8b 14 24 48 85 d2 48 89 10 74 04 48 89 42 08 49 89 04 24 4c 89 60 08 31 d2 RIP [] add_hash_entry+0x66/0xd0 RSP CR2: ffffffff8160ec90 ---[ end trace a5d031828efdd88e ]--- Reported-by: Brian Marete Signed-off-by: Steven Rostedt commit 40ee4dffff061399eb9358e0c8fcfbaf8de4c8fe Author: Steven Rostedt Date: Tue Jul 5 14:32:51 2011 -0400 tracing: Have "enable" file use refcounts like the "filter" file The "enable" file for the event system can be removed when a module is unloaded and the event system only has events from that module. As the event system nr_events count goes to zero, it may be freed if its ref_count is also set to zero. Like the "filter" file, the "enable" file may be opened by a task and referenced later, after a module has been unloaded and the events for that event system have been removed. Although the "filter" file referenced the event system structure, the "enable" file only references a pointer to the event system name. Since the name is freed when the event system is removed, it is possible that an access to the "enable" file may reference a freed pointer. Update the "enable" file to use the subsystem_open() routine that the "filter" file uses, to keep a reference to the event system structure while the "enable" file is opened. Cc: Reported-by: Johannes Berg Signed-off-by: Steven Rostedt commit e9dbfae53eeb9fc3d4bb7da3df87fa9875f5da02 Author: Steven Rostedt Date: Tue Jul 5 11:36:06 2011 -0400 tracing: Fix bug when reading system filters on module removal The event system is freed when its nr_events is set to zero. This happens when a module created an event system and then later the module is removed. Modules may share systems, so the system is allocated when it is created and freed when the modules are unloaded and all the events under the system are removed (nr_events set to zero). The problem arises when a task opened the "filter" file for the system. If the module is unloaded and it removed the last event for that system, the system structure is freed. If the task that opened the filter file accesses the "filter" file after the system has been freed, the system will access an invalid pointer. By adding a ref_count, and using it to keep track of what is using the event system, we can free it after all users are finished with the event system. Cc: Reported-by: Johannes Berg Signed-off-by: Steven Rostedt commit 31817df025e24559a01d33ddd68bd11b21bf9d7b Author: David S. Miller Date: Thu Jul 7 08:18:04 2011 -0700 packet: Fix build with INET disabled. af_packet.c:(.text+0x3d130): undefined reference to `ip_defrag' or ERROR: "ip_defrag" [net/packet/af_packet.ko] undefined! Reported-by: Randy Dunlap Signed-off-by: David S. Miller commit 93e85d8e902e1a4468c6ade5c6ec3dd3055a489f Author: Anton Vorontsov Date: Wed Jul 6 16:45:09 2011 +0400 ARM: cns3xxx: Add support for L2 Cache Controller CNS3xxx SOCs have L310-compatible cache controller, so let's use it. With this patch benchmarking with 'gzip' shows that performance is doubled, and I'm still able to boot full-fledged userland over NFS (using PCIe NIC), so the support should be pretty robust. p.s. While CNS3xxx reports that it has PL310, it still needs to wait on cache line operations, so we should not select 'CACHE_PL310', which is a micro-optimization that removes these waits for v7 CPUs. Someday we'd better rename CACHE_PL310 Kconfig option into NO_CACHE_WAIT or something less ambiguous. Signed-off-by: Anton Vorontsov commit 00d2711d700ae77b5bb66ea7c73eaa2cf155fa97 Author: Imre Kaloz Date: Thu Jul 7 12:19:09 2011 +0200 ARM: cns3xxx: Should select CPU_V6K CNS3XXX is based on MPCore, so select the right CPU option for it. Signed-off-by: Imre Kaloz Signed-off-by: Anton Vorontsov commit 8dbb6bc13617379a6534700e51634a3f88c9a513 Author: Kumar Gala Date: Thu Jun 23 07:19:15 2011 -0500 powerpc/85xx: Add P5020 SoC device tree include stub Split out common (non-board specific) parts of the SoC related device tree into a stub so multiple board dts files can include it and we can reduce duplication and maintenance effort. Signed-off-by: Kumar Gala commit e5aae727c0014107c647c4148fa21c4f11e97307 Author: Kumar Gala Date: Mon Jun 27 07:53:24 2011 -0500 powerpc/85xx: Add P3041 SoC device tree include stub Split out common (non-board specific) parts of the SoC related device tree into a stub so multiple board dts files can include it and we can reduce duplication and maintenance effort. Signed-off-by: Kumar Gala commit 2ba564b90f4c53d7a25cdcf12c6fa15028db7bc9 Author: Dave Martin Date: Thu Jun 23 17:31:16 2011 +0100 ARM: mm: tlb-v7: Use the new processor struct macros Signed-off-by: Dave Martin commit 3b7f39fa9ad4e19fd87fb1e98a53b4f1700b5d0b Author: Dave Martin Date: Thu Jun 23 17:31:01 2011 +0100 ARM: mm: tlb-v6: Use the new processor struct macros Signed-off-by: Dave Martin commit ca560963675949d026314756221a95fcc38e2df1 Author: Dave Martin Date: Thu Jun 23 17:30:39 2011 +0100 ARM: mm: tlb-v4wbi: Use the new processor struct macros Signed-off-by: Dave Martin commit 2284ece2d6c1958dc0166aa3e9db0d0ee923ccb7 Author: Dave Martin Date: Thu Jun 23 17:30:11 2011 +0100 ARM: mm: tlb-v4wb: Use the new processor struct macros Signed-off-by: Dave Martin commit f249a6425a977314e4c2e35cab350fd600780386 Author: Dave Martin Date: Thu Jun 23 17:29:19 2011 +0100 ARM: mm: tlb-v4: Use the new processor struct macros Signed-off-by: Dave Martin commit d7b84d2438ece9bcf680ea184c8d5cf34239699d Author: Dave Martin Date: Thu Jun 23 17:29:04 2011 +0100 ARM: mm: tlb-v3: Use the new processor struct macros Signed-off-by: Dave Martin commit 27eebe4cc98c739298b271609d8d064a31f32522 Author: Dave Martin Date: Thu Jun 23 17:28:50 2011 +0100 ARM: mm: tlb-fa: Use the new processor struct macros Signed-off-by: Dave Martin commit ab1a746da9dd19e30a98d9744d5c7dc6df597fb0 Author: Dave Martin Date: Thu Jun 23 17:26:56 2011 +0100 ARM: mm: proc-xscale: Use new generic struct definition macros Without this patch, xscale_80200_A0_A1 is missing the icache_flush_all entry, which would result in the wrong functions being called at run-time. This patch re-uses xscale_icache_flush_all for xscale_80200_A0_A1_cache_fns. Signed-off-by: Dave Martin commit c21898f9f02f8d54d09905ea4ce3a47592900ec4 Author: Dave Martin Date: Thu Jun 23 17:26:38 2011 +0100 ARM: mm: proc-xsc3: Use new generic struct definition macros Signed-off-by: Dave Martin commit 78a8f3c365b8851eb9862c54425e95bfd523f22d Author: Dave Martin Date: Thu Jun 23 17:26:19 2011 +0100 ARM: mm: proc-v7: Use the new processor struct macros Signed-off-by: Dave Martin commit 7b7dc6e8885b863beef189ade5971ff14781a971 Author: Dave Martin Date: Thu Jun 23 17:25:46 2011 +0100 ARM: mm: proc-v6: Use the new processor struct macros Signed-off-by: Dave Martin commit f58d59f6c59397b8a1381207c58189034b904879 Author: Dave Martin Date: Thu Jun 23 17:25:30 2011 +0100 ARM: mm: proc-sa1100: Use the new processor struct macros Signed-off-by: Dave Martin commit 5973ba5886366bbcc7c911911d151b9ae13f2edb Author: Dave Martin Date: Thu Jun 23 17:25:11 2011 +0100 ARM: mm: proc-sa110: Use the new processor struct macros Signed-off-by: Dave Martin commit a39a32187b71f8a693f3d128b483a2428941e83a Author: Dave Martin Date: Thu Jun 23 17:22:29 2011 +0100 ARM: mm: proc-mohawk: Use the new processor struct macros This patch also defines a suitable flush_icache_all implementation which would otherwise be missing, resulting in a link failure. Thanks to Nicolas Pitre for suggesting the code for this. Signed-off-by: Dave Martin Signed-off-by: Nicolas Pitre commit e43b670e24de9531f847d1891e7487bffd57017b Author: Dave Martin Date: Thu Jun 23 17:22:12 2011 +0100 ARM: mm: proc-feroceon: Use the new processor struct macros Signed-off-by: Dave Martin Acked-by: Nicolas Pitre commit d6ed10ce39d364189fd09c6e9252d85f35d5f9fe Author: Dave Martin Date: Thu Jun 23 17:21:50 2011 +0100 ARM: mm: proc-fa526: Use the new processor struct macros Signed-off-by: Dave Martin commit b4a19f03c4d73c3aa5e08ce8fd3c78426c766ea7 Author: Dave Martin Date: Thu Jun 23 17:21:28 2011 +0100 ARM: mm: proc-arm9tdmi: Use the new processor struct macros Signed-off-by: Dave Martin commit b1b9892bcd08e5f4dd3c632852639707b24063f4 Author: Dave Martin Date: Thu Jun 23 17:21:17 2011 +0100 ARM: mm: proc-arm946: Use the new processor struct macros Signed-off-by: Dave Martin commit b3755801479a7b6c61dec5e49897486805d003a5 Author: Dave Martin Date: Thu Jun 23 17:21:02 2011 +0100 ARM: mm: proc-arm940: Use the new processor struct macros Signed-off-by: Dave Martin commit be90da45a97ac833d92eb9cd8b06df3bc5cf561b Author: Dave Martin Date: Thu Jun 23 17:20:46 2011 +0100 ARM: mm: proc-arm926: Use the new processor struct macros Signed-off-by: Dave Martin commit 6c240aec6fdcafd55905ae0b61d5047252da92d4 Author: Dave Martin Date: Thu Jun 23 17:20:31 2011 +0100 ARM: mm: proc-arm925: Use the new processor struct macros Signed-off-by: Dave Martin commit f3e7383f2a97879cfd21a427350ceac1cfd1f9bc Author: Dave Martin Date: Thu Jun 23 17:20:07 2011 +0100 ARM: mm: proc-arm922: Use the new processor struct macros Signed-off-by: Dave Martin commit 68f5e1acb527b3c64a0252ef84b3827bfb48ec00 Author: Dave Martin Date: Thu Jun 23 17:19:48 2011 +0100 ARM: mm: proc-arm920: Use the new processor struct macros Signed-off-by: Dave Martin commit fd10e2725efba154fb610845d846fc03155203f3 Author: Dave Martin Date: Thu Jun 23 17:19:26 2011 +0100 ARM: mm: proc-arm7tdmi: Use the new processor struct macros Signed-off-by: Dave Martin commit 4cc1f0fa06529aaba6c48d06b4257576474a9d33 Author: Dave Martin Date: Thu Jun 23 17:19:11 2011 +0100 ARM: mm: proc-arm740: Use the new processor struct macros Signed-off-by: Dave Martin commit 449870b1de24d967a571b0e38cd2635c49af2785 Author: Dave Martin Date: Thu Jun 23 17:18:56 2011 +0100 ARM: mm: proc-arm720: Use the new processor struct macros Signed-off-by: Dave Martin commit c3be06eb587fedafe1efd33783d376157f96e5a6 Author: Dave Martin Date: Thu Jun 23 17:18:31 2011 +0100 ARM: mm: proc-arm6_7: Use the new processor struct macros Signed-off-by: Dave Martin commit 5c9369bc2efe7d68f4dfdaa449f915f7cf6a8275 Author: Dave Martin Date: Thu Jun 23 17:18:11 2011 +0100 ARM: mm: proc-arm1026: Use the new processor struct macros Signed-off-by: Dave Martin commit f2d8cae1d56a28d4b2bcdaa4a6f7d551fd94be60 Author: Dave Martin Date: Thu Jun 23 17:17:29 2011 +0100 ARM: mm: proc-arm1022: Use the new processor struct macros Signed-off-by: Dave Martin commit fbaa8407304b28d9e768134cfa4188df6520149c Author: Dave Martin Date: Thu Jun 23 17:17:00 2011 +0100 ARM: mm: proc-arm1020e: Use the new processor struct macros Signed-off-by: Dave Martin commit 56d916509bf5ec3f5342692d31556e822301029e Author: Dave Martin Date: Thu Jun 23 17:16:44 2011 +0100 ARM: mm: proc-arm1020: Use the new processor struct macros Signed-off-by: Dave Martin commit 455a01ec30e19bd21e36adc5c109ce879c16628a Author: Dave Martin Date: Thu Jun 23 17:16:25 2011 +0100 ARM: mm: cache-v7: Use the new processor struct macros Signed-off-by: Dave Martin commit 641d8233a68e5b465d720d2c5e2f20f580d2797e Author: Dave Martin Date: Thu Jun 23 17:16:04 2011 +0100 ARM: mm: cache-v6: Use the new processor struct macros Signed-off-by: Dave Martin commit d5b5b2e2f8ed10d747854a78f6fab74315eb3607 Author: Dave Martin Date: Thu Jun 23 17:15:44 2011 +0100 ARM: mm: cache-v4wt: Use the new processor struct macros Signed-off-by: Dave Martin commit eec95e56e6b73cd64468401ce171e70c825b246a Author: Dave Martin Date: Thu Jun 23 17:15:17 2011 +0100 ARM: mm: cache-v4wb: Use the new processor struct macros Signed-off-by: Dave Martin commit 54d4e9ebbc73baf451e52ef2754224ae6c887dbd Author: Dave Martin Date: Thu Jun 23 17:14:52 2011 +0100 ARM: mm: cache-v4: Use the new processor struct macros Signed-off-by: Dave Martin commit 9c373968d64526ca56637ac929f1e4b03e84616b Author: Dave Martin Date: Thu Jun 23 17:13:55 2011 +0100 ARM: mm: cache-v3: Use the new processor struct macros Signed-off-by: Dave Martin commit 9bc7491341040632a660ab5e82dababfa32d67e3 Author: Dave Martin Date: Thu Jun 23 17:11:16 2011 +0100 ARM: mm: cache-fa: Use the new processor struct macros Signed-off-by: Dave Martin commit 8f51965e7033441cb10ce577d1ef2d580a80af08 Author: Dave Martin Date: Thu Jun 23 17:10:05 2011 +0100 ARM: assembler.h: Add string declaration macro Declaring strings in assembler source involves a certain amount of tedious boilerplate code in order to annotate the resulting symbol correctly. Encapsulating this boilerplate in a macro should help to avoid some duplication and the occasional mistake. Signed-off-by: Dave Martin Acked-by: Nicolas Pitre commit 66a625a88174664fc252d7b1ac1773e76e52326b Author: Dave Martin Date: Thu Jun 23 17:07:40 2011 +0100 ARM: mm: proc-macros: Add generic proc/cache/tlb struct definition macros This patch adds some generic macros to reduce boilerplate when declaring certain common structures in arch/arm/mm/*.S Thanks to Russell King for outlining what the define_processor_functions macro could look like. Signed-off-by: Dave Martin Acked-by: Nicolas Pitre commit 3d64b4496f5fd90618106555344205a522178c0c Author: Arnd Bergmann Date: Thu Jul 7 11:35:20 2011 +0000 ARM: Xilinx: merge board file into main platform code The zynq platform will never have board files other than the device tree one, so there is no point splitting it from common.c. This makes the code more compact. Signed-off-by: Arnd Bergmann Acked-by: John Linn commit a926757f0431042b32ef4188ce8201cbe0fcbb50 Author: Takashi Iwai Date: Thu Jul 7 15:12:55 2011 +0200 ALSA: hda - Fix warning with ALC882 digital-out detection The digital out pin on ALC882 may have multiple connections. Signed-off-by: Takashi Iwai commit 7fa22bd5460bb2021729fa5a1012c60b9b3a56e2 Author: Stephen Boyd Date: Thu Jul 7 01:56:51 2011 +0100 ARM: 6993/1: platsmp: Allow secondary cpu hotplug with maxcpus=1 If an ARM system has multiple cpus in the same socket and the kernel is booted with maxcpus=1, secondary cpus are possible but not present due to how platform_smp_prepare_cpus() is called. Since most typical ARM processors don't actually support physical hotplug, initialize the present map to be equal to the possible map in generic ARM SMP code. Also, always call platform_smp_prepare_cpus() as long as max_cpus is non-zero (0 means no SMP) to allow platform code to do any SMP setup. After applying this patch it's possible to boot an ARM system with maxcpus=1 on the command line and then hotplug in secondary cpus via sysfs. This is more in line with how x86 does things. Signed-off-by: Stephen Boyd Cc: Paul Mundt Cc: Kukjin Kim Cc: David Brown Cc: Tony Lindgren Cc: Srinidhi Kasagar Cc: Linus Walleij Signed-off-by: Russell King commit afe62c68cd3562c5f8e3ea293e82906dd5a87936 Author: Eric Dumazet Date: Thu Jul 7 06:41:29 2011 -0700 af_packet: lock imbalance fanout_add() might return with fanout_mutex held. Reduce indentation level while we are at it Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit eb032b9837a958e21ca000358a5bde5e17192ddb Author: Michael Büsch Date: Mon Jul 4 20:50:05 2011 +0200 Update my e-mail address Signed-off-by: Michael Buesch Signed-off-by: Jiri Kosina commit 68ac31918ec359a2bfb9f897bb62c2940652d2b8 Author: Eric Dumazet Date: Thu Jul 7 06:13:32 2011 -0700 sky2: use GFP_KERNEL allocations at device setup In process and sleep allowed context, favor GFP_KERNEL allocations over GFP_ATOMIC ones. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 3c878d4746ca12cc8022f9e02f055f175b847dbc Author: Shmulik Ravid Date: Thu Jul 7 05:11:30 2011 -0700 bnx2x: Add dcbnl notification This patch adds a dcbnl notification to the bnx2x. The notification is sent to user mode clients following a change in the dcb negotiated parameters as resolved by the embedded DCBX stack. Signed-off-by: Shmulik Ravid Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit be0e1e788b0973147b6b83cc940676cc26009eb7 Author: Ian Abbott Date: Thu Jul 7 01:18:49 2011 +0000 lib/checksum.c: optimize do_csum a bit Reduce the number of variables modified by the loop in do_csum() by 1, which seems like a good idea. On Nios II (a RISC CPU with 3-operand instruction set) it reduces the loop from 7 to 6 instructions, including the conditional branch. Signed-off-by: Ian Abbott Signed-off-by: David S. Miller commit 97bc3633bec7ed0fdfbda6b9cf86c51e4f58f8e2 Author: Shirley Ma Date: Wed Jul 6 12:26:11 2011 +0000 macvtap: macvtapTX zero-copy support Only 128 bytes is copied, the rest of data is DMA mapped directly from userspace. Signed-off-by: Shirley Ma Signed-off-by: David S. Miller commit a6686f2f382b13f8a7253401a66690c3633b6a74 Author: Shirley Ma Date: Wed Jul 6 12:22:12 2011 +0000 skbuff: skb supports zero-copy buffers This patch adds userspace buffers support in skb shared info. A new struct skb_ubuf_info is needed to maintain the userspace buffers argument and index, a callback is used to notify userspace to release the buffers once lower device has done DMA (Last reference to that skb has gone). If there is any userspace apps to reference these userspace buffers, then these userspaces buffers will be copied into kernel. This way we can prevent userspace apps from holding these userspace buffers too long. Use destructor_arg to point to the userspace buffer info; a new tx flags SKBTX_DEV_ZEROCOPY is added for zero-copy buffer check. Signed-off-by: Shirley Ma Signed-off-by: David S. Miller commit 1cdebb423202e255366a321814fc6df079802a0d Author: Shirley Ma Date: Wed Jul 6 12:17:30 2011 +0000 sock.h: Add a new sock zero-copy flag Signed-off-by: Shirley Ma Signed-off-by: David S. Miller commit 380b153cf59a5610ca97319fdb9601b8c453ece0 Author: Sebastian Poehn Date: Thu Jul 7 04:30:29 2011 -0700 gianfar v2: code cleanups This patch: # improves readability of some gianfar nfc code Signed-off-by: Sebastian Poehn Signed-off-by: David S. Miller commit 21385eeb02e59cb2a72b60cd146f9c1ce3cb0acd Author: Peter Ujfalusi Date: Tue Jul 5 22:35:53 2011 +0300 ASoC: twl6040: Add back support for legacy mode The legacy mode has been accidentaly removed by commit: ASoC: twl6040: add all ABE DAIs Add back the twl6040-hifi dai. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit ff593ca1a43042499cbe341fc91c9cc282c084cb Author: Peter Ujfalusi Date: Mon Jul 4 10:35:23 2011 +0300 ASoC: twl6040: No need to convert the PLL ID Since the PLL handling has been simplified, and rebased on 0, there is no longer need for converting the PLL ID. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit cfb7a33bea259d2d72a64adcb3de28532170dc25 Author: Peter Ujfalusi Date: Mon Jul 4 10:28:28 2011 +0300 MFD: twl6040: Remove enum for PLL tracking There is no need to have two different types for tracking the selected PLL. Use only the defines, when dealing with the PLLs. Signed-off-by: Peter Ujfalusi Acked-by: Samuel Ortiz commit 753621c2155bd49bff7d5d3844b3ddc203e44a06 Author: Peter Ujfalusi Date: Sun Jul 3 02:06:07 2011 +0300 ASoC: twl6040: Configure PLL only once Avoid configuring the PLL several times during audio startup. We can configure the PLL at prepare time with parameters collected earlier hw_param, and set_dai_sysclk calls. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit f53c346c08425b6448cf9729e882e4057ea505f0 Author: Peter Ujfalusi Date: Wed Jun 29 13:28:18 2011 +0300 ASoC: twl6040: Simplify sample rate constraint handling We can manage the sample rate constraints without the need to maintain a variable and a pointer. This simplifies the handling of the constraint, and makes it more robust. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit af958c72af88405501fe61a43f8011614cff29f5 Author: Peter Ujfalusi Date: Mon Jun 27 17:03:14 2011 +0300 ASoC: twl6040: Move PLL selection to codec driver It is better if the selection between the Low power, and High performance PLL is handled within the codec driver, not in machine driver(s) to avoid duplicated code, and also to have consistent tracking of the selected PLL, and the resulting differences in supported sample rates. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit 7cca606794ceb597e95fd0a0f3a8dcdd51af55e0 Author: Peter Ujfalusi Date: Mon Jun 27 13:33:14 2011 +0300 ASoC: twl6040: Use neutral name for power mode text/enum Change the variable names to be neutral (not refering to HS). This will ease up the introduction of PLL selection, which going to use the same enum strings. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit 1b7c4725e2e926eaeb8657ac22992ec27fe03135 Author: Peter Ujfalusi Date: Mon Jul 4 20:16:23 2011 +0300 MFD: twl6040: Remove wrapper for threaded irq request Remove the twl6040_request_irq/free_irq inline functions, and use direct calls instead in the core driver to register the threaded irq. Signed-off-by: Peter Ujfalusi Reviewed-by: Felipe Balbi Acked-by: Samuel Ortiz commit d20e1d21fd0c398a8beb170beacf8e2ca839844c Author: Peter Ujfalusi Date: Mon Jul 4 20:15:19 2011 +0300 MFD: twl6040: Demand valid interrupt configuration In order to operate correctly twl6040 needs correct interrupt configuration. The slave drivers (vibra, and ASoC codec) will refuse to probe, if the interrupt configuration is not correct. In this way some checks can be removed from the code. Signed-off-by: Peter Ujfalusi Reviewed-by: Felipe Balbi Acked-by: Samuel Ortiz commit 2a433b9daff58c8ff231b879242a586371acc93f Author: Peter Ujfalusi Date: Mon Jul 4 19:52:26 2011 +0300 ASoC: twl6040: Do not use wrapper for irq request The twl6040_request_irq/free_irq inline functions are going to be removed, so replace them with direct calls. The irq number is provided by the core driver via resource. Signed-off-by: Peter Ujfalusi Reviewed-by: Felipe Balbi Acked-by: Mark Brown commit 625cbe46bc97a82dcd9254b5bc01c8520d78b227 Author: Peter Ujfalusi Date: Mon Jul 4 19:50:02 2011 +0300 input: twl6040-vibra: Do not use wrapper for irq request The twl6040_request_irq/free_irq inline functions are going to be removed, so replace them with direct calls. The irq number is provided by the core driver via resource. Signed-off-by: Peter Ujfalusi Reviewed-by: Felipe Balbi Acked-by: Dmitry Torokhov commit 0f962ae2dd8655f0800ff3c4b02d5f5a2ff3899e Author: Peter Ujfalusi Date: Tue Jul 5 11:40:33 2011 +0300 MFD: twl6040: Use resource to provide irq number for slaves Provide the irq number for slaves via resource on the platform device. The irq number configuration is done in the twl6040-core at probe time, so machine drivers do not need to be modified. Signed-off-by: Peter Ujfalusi Reviewed-by: Felipe Balbi Acked-by: Samuel Ortiz commit 2bda8a0c8af5294b869da1efd2c2b9a562f50dcf Author: Bjørn Mork Date: Tue Jul 5 23:04:13 2011 +0000 Disable router anycast address for /127 prefixes RFC 6164 requires that routers MUST disable Subnet-Router anycast for the prefix when /127 prefixes are used. No need for matching code in addrconf_leave_anycast() as it will silently ignore any attempt to leave an unknown anycast address. Signed-off-by: Bjørn Mork Signed-off-by: David S. Miller commit b395fb36d59e17b9335805c10fa30fc51c8a94c6 Merge: fe0d422 6b385b4 Author: Ingo Molnar Date: Thu Jul 7 12:56:44 2011 +0200 Merge branch 'iommu-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu into core/iommu commit 6b385b46ee17d7e1a68d3411b8cdb2342e0f0445 Author: Joerg Roedel Date: Thu Jul 7 12:18:48 2011 +0200 iommu/core: Fix build with INTR_REMAP=y && CONFIG_DMAR=n IOMMU_API is not selected when no DMA remapping driver is selected, but the whole drivers/iommu/ directory is only built with IOMMU_API=y. Fixed with this patch by including the directory with IOMMU_SUPPORT instead. Signed-off-by: Joerg Roedel commit fa366124ef3aab35e378ae141f379c133d839943 Author: David S. Miller Date: Thu Jul 7 02:41:59 2011 -0700 rose: Delete commented out references to ancient firewalling code. These intefaces haven't existed since 2.2.x Signed-off-by: David S. Miller commit 1459fc5f6d244b4e43690df5e9e28e8de390caf0 Author: Jürgen Lambrecht Date: Tue Jul 5 15:35:31 2011 +0200 Enable RTC driver. The MC13783 MFD also contains an RTC. Enable it. To avoid "No RTC device found, ALARM timers will not wake from suspend", this patch is needed: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=c008ba58af24dc5d0d8e9fe6e59d876910254761 Signed-off-by: Jürgen Lambrecht Signed-off-by: Sascha Hauer commit 97ea3da2048e9018f2513a36a95d2f14b3853d1a Author: Wolfram Sang Date: Fri Jul 1 16:54:01 2011 +0200 arm: mxs: add mmc-device for mach-tx28 Signed-off-by: Wolfram Sang Signed-off-by: Sascha Hauer commit 2a90a69f652edb410f7936d0271bfa8566ef6a87 Author: Daiane Angolini Date: Thu Jun 30 14:41:46 2011 -0300 ARM: mach-mx5/mx53_ard: Add gpio_keys support Signed-off-by: Daiane Angolini Signed-off-by: Sascha Hauer commit d23cb578cc7c520d17c6a995e78a7a05cb0abe72 Author: Fabio Estevam Date: Sat Jun 25 13:28:53 2011 -0300 ARM: mach-mx5/mx53_ard: Add missing definition commit 9203d59 (ARM:mach-mx5/mx53_ard: Add I2C2 and I2C3 support) missed to include the define for ARD_I2CPORTEXP_B. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 22785de54bfeae4809a469483d9021730fe2f106 Author: Fabio Estevam Date: Mon Jun 27 17:12:11 2011 -0300 ARM: mx53: Add keypad support Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit e1fb61e38f8ec8e586c63d67a06197aa44ba952e Author: Fabio Estevam Date: Mon Jun 27 17:12:09 2011 -0300 ARM: mx53: Add SSI suport Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit fce43f99631b03a65b9309d956bfca93a8fe052f Author: Fabio Estevam Date: Mon Jun 27 17:12:08 2011 -0300 ARM: mx53: Add support for missing UARTs MX53 has five UART ports. Add support for the missing UART4 and UART5 ports. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 2e534b21a51bad9d1fad125adac6ad49e64e1d7a Author: Shawn Guo Date: Wed Jun 22 22:41:31 2011 +0800 dmaengine: imx-sdma: pass sdma firmware name via platform data It is not good to have cpu_name and to_version encoded into sdma firmware name as variables. For example, there are three TOs of imx51 soc, the sdma script never changes since TO1, which means all three TOs of imx51 uses TO1 version of sdma script. But we have to prepare three identical firmwares, sdma-imx51-to1.bin sdma-imx51-to2.bin and sdma-imx51-to3.bin, to have the kernel capable of running on all three TOs. The patch removes cpu_name and to_version from sdma platform data, and instead uses fw_name to pass the firmware name, so that we can pass the TO version where it's relevant and skip it where only one firmware exists. Signed-off-by: Shawn Guo Acked-by: Vinod Koul Signed-off-by: Sascha Hauer commit 3622360430e90d47a0d028dd5333a13771589331 Author: Shawn Guo Date: Wed Jun 22 22:41:30 2011 +0800 ARM: mxc: clean up imx-dma device registration The patch follows the implementation of gpio-mxc device registration to break the concentrated imx-dma device registration into soc specific setup function. Then we can avoid the churn of "#ifdef" and the cpu_is_mx checking on such a long list, which makes no sense, considering more soc supports need to be added and we need to support single image for multiple socs in the long run. Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit 8dd7b817a1135940406a3271346a4a8e39e2b87c Author: Andre Silva Date: Wed Jun 22 16:33:05 2011 -0300 ARM:mach-mx5/mx53_ard: Add I2C2 and I2C3 support Signed-off-by: Andre Silva Signed-off-by: Sascha Hauer commit b6a14477695e54da6621c6d3c72f019b8cddb89d Author: Andre Silva Date: Wed Jun 22 16:33:04 2011 -0300 ARM:mx53: Add I2C3 support Signed-off-by: Andre Silva Signed-off-by: Sascha Hauer commit 10f046bb1df0e40bbc56579ca5ccad5f951f4047 Author: Fabio Estevam Date: Wed Jun 22 09:25:26 2011 -0300 ARM: mach-imx/mx27_3ds: Add touchscreen support Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 1abcb4cca3a964a8dde1c1e2988fd9a9a1470178 Author: Fabio Estevam Date: Wed Jun 22 09:25:25 2011 -0300 ARM: mach-imx/mx27_3ds: Add LCD support On mx27_3ds board there is a l4f00242t03 LCD that is controlled via CSPI1. Add support for CSPI1 and LCD. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit f9e9fc2736805fe812d9d27444f57733453386fb Author: Dinh Nguyen Date: Mon Mar 28 10:14:57 2011 -0500 ARM: mx51: Add support for low power suspend on MX51 Adds initial low power suspend functionality to MX51. Supports "mem" and "standby" modes. Tested on mx51-babbage. Signed-off-by: Dinh Nguyen Tested-by: Arnaud Patard Tested-by: Shawn Guo Signed-off-by: Sascha Hauer commit aedc383caad3a682589e5e1b2158efed1b7f4e06 Author: Fabio Estevam Date: Tue Jun 21 14:49:35 2011 -0300 ARM: imx2: Fix GPIO iosize On MX1, MX21 and MX27 each GPIO port has an address space of 256 bytes. Fix the iosize for these platforms. Tested on a mx27_3ds board that can boot fine after this change. Cc: Shawn Guo Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 931de39219bd31944dda69a015ccef103cd1d193 Author: Fabio Estevam Date: Sun Jun 12 21:33:00 2011 -0300 ARM: mx53: Add SDMA support for MX53 Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit be070a40780ff61be7349b2aeeae35663e01b44b Author: Fabio Estevam Date: Wed Jun 15 09:59:35 2011 -0300 ARM: mx53: Add SDMA clock Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 40d32c89c897e573f28653920b223b07efbcfac8 Author: Andre Silva Date: Mon Jun 13 14:31:58 2011 -0300 ARM:mach-mx5/mx53_ard: Add Watchdog timer support Signed-off-by: Andre Silva Signed-off-by: Sascha Hauer commit e3a58be3be7f0d7cf3c0966f3f3369acfab421e8 Author: Andre Silva Date: Mon Jun 13 14:31:57 2011 -0300 ARM:mach-mx5/mx53_ard: Add ESDHC support Signed-off-by: Andre Silva Signed-off-by: Sascha Hauer commit 6ecdc11bf8e1105ae393bf74026427180a6c5207 Author: Andre Silva Date: Fri Jun 10 13:15:20 2011 -0300 ARM:mach-mx5/board-mx51_babbage: Add CD and WP GPIOs Signed-off-by: Andre Silva Signed-off-by: Sascha Hauer commit 1a636932f862d5d95b018c884a854c5cbc604f3b Author: Andre Silva Date: Fri Jun 10 13:15:19 2011 -0300 ARM:mach-mx5/board-mx53_loco: Add CD and WP GPIOs Signed-off-by: Andre Silva Signed-off-by: Sascha Hauer commit bd8978267d024521bdd6e453dcefc64d78d6afe6 Author: Andre Silva Date: Fri Jun 10 13:08:14 2011 -0300 ARM: mach-mx5/mx53_ard: Add support for i.MX53 ARD board Signed-off-by: Andre Silva Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 8b6c44f10087fedfb2e041e964b373df53c65514 Author: Shawn Guo Date: Tue Jun 7 13:59:14 2011 +0800 ARM: mxc: convert tzic to use generic irq chip The patch converts mxc tzic interrupt controller to use generic irq chip. Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit 53b8ff9d3781fe6ff74494ecaea735b322d9ef8e Author: Shawn Guo Date: Tue May 31 17:07:03 2011 +0800 ARM: mxs/mx28evk: add leds-gpio device for heartbeat It adds LED2 on mx28evk board as heartbeat trigger for diagnostic purpose. Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit 95b7445946ca68222ad84cad3703a1efe1110869 Author: Fabio Estevam Date: Mon May 30 12:42:26 2011 -0300 ARM: mx5/mx53_evk: Add support for LED Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 5dc3394c192cb8845a4594a4d029231392634d8a Author: Fabio Estevam Date: Sat May 28 11:51:32 2011 -0300 ARM: mx5/mx53_loco: Add support for LED Signed-off-by: Fabio Estevam Acked-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit d17572741bacb851f0a689c7751ce909835ad96c Author: Shawn Guo Date: Wed May 25 21:55:39 2011 +0800 ARM: mxs_defconfig: Add mx23evk and mx28evk build The patch adds following configurations to enable build of mx23evk and mx28evk in defconfig. CONFIG_MACH_MX23EVK CONFIG_MACH_MX28EVK Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit e59a7943f2f72a1dc218447f4f285c8b67b3a98e Merge: fad1070 2ce420d Author: Sascha Hauer Date: Thu Jul 7 10:00:49 2011 +0200 Merge remote-tracking branch 'grant/gpio/next-mx' into devel-features Conflicts: arch/arm/mach-imx/mach-mx31_3ds.c arch/arm/mach-imx/mach-scb9328.c Signed-off-by: Sascha Hauer commit fad107086d5a869c1c07e5bb35b7b57a10ecf578 Author: Sascha Hauer Date: Thu May 19 17:25:05 2011 +0200 ARM i.MX debug macro: use CONFIG_SOC_* instead of CONFIG_ARCH_* CONFIG_ARCH_* are deprecated, so remove one user. Signed-off-by: Sascha Hauer commit 6d2385ab2532f3a8e2b9d195c006c07919555c31 Author: Fabio Estevam Date: Wed Jun 22 09:25:28 2011 -0300 ARM: mach-imx/mx27_3ds: Do not annotate the chip select as internal On the i.MX SPI driver the chipselect pins can be of the following types: - internal: when the chipselect pin is used as a dedicated CS pin of the CSPI controller - GPIO: a generic GPIO can be used as a chipselect funtion On the mx27_3ds the SPI2 chip select is a GPIO, so don't annotate 'internal' in the chip select definition. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit c084473d7a51dde74008e44d995f6da569f17802 Author: Fabio Estevam Date: Wed Jun 22 09:25:27 2011 -0300 ARM: mach-imx/mx27_3ds: Use the standard gpio_to_irq function Use the standard gpio_to_irq function instead of a dedicated IRQ_GPIOx macro. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 31b738a4f4dfea3b464a9cb5fe18aa4ba85eb984 Author: Fabio Estevam Date: Tue Jun 21 14:49:36 2011 -0300 ARM: mach-imx/scb9328: Make the UART gpio setup simpler Place the UART gpio initialization inside the scb9328_init function as it is done on other i.MX boards. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit ae817266710b18f767cf247e9568f52fb88abca0 Author: H Hartley Sweeten Date: Mon Jun 6 13:44:57 2011 -0700 plat-mxc/pwm.c: use resource_size() Signed-off-by: H Hartley Sweeten Cc: Sascha Hauer Signed-off-by: Sascha Hauer commit 07d1483a420861eb5581ebff74904c8a5ec33b19 Author: Fabio Estevam Date: Tue May 10 11:21:00 2011 -0300 ARM: imx/mach-apf9328: Simplify UART0 registration As no flag is passed into UART0 platform data, pass NULL argument when registering UART0. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 7cf7381f35330b54cc894bd74137aae1ebb07bbf Author: Sascha Hauer Date: Wed May 11 11:31:54 2011 +0200 ARM i.MX: get rid of wrong MXC_INTERNAL_IRQ usage There are several occurences where MXC_INTERNAL_IRQ is assumed to be the start of the gpio interrupts. It was never meant this way. Replace these with gpio_to_irq. Signed-off-by: Sascha Hauer Acked-by: Fabio Estevam commit 5a24d69c2cd3522e5ed6f8bd7a1e956138149dcd Author: Sascha Hauer Date: Tue May 10 18:16:10 2011 +0200 ARM i.MX avic: do not depend on MXC_INTERNAL_IRQS This becomes meaningless in subsequent patches. Signed-off-by: Sascha Hauer commit fe31ad41590daf9c5262b53cf6947f3be5c24b60 Author: Sascha Hauer Date: Tue May 10 18:15:25 2011 +0200 ARM i.MX tzic: do not depend on MXC_INTERNAL_IRQS This becomes meaningless in subsequent patches. Signed-off-by: Sascha Hauer commit 7bce7e8c296b42bd975a6e8f2be7fc70979780dd Author: Sascha Hauer Date: Thu May 19 17:23:44 2011 +0200 ARM i.MX mxc.h: use CONFIG_SOC_* instead of CONFIG_ARCH_* CONFIG_ARCH_* are deprecated, so remove one user. Signed-off-by: Sascha Hauer commit 6b66ef01f550040674798395ec8c1a9e9f55af9a Author: Sascha Hauer Date: Mon May 9 18:41:35 2011 +0200 ARM i.MX: dmav1: kill SoC ifdefs since we now can include all soc specific headers at once we do not need the ifdeffery anymore. Signed-off-by: Sascha Hauer commit db279c1b8dc8b7da9d8de94a0ce103c0b9b8e1ae Author: Sascha Hauer Date: Mon May 9 18:38:51 2011 +0200 ARM i.MX: remove SoC defines around header includes All soc specific header have proper namespace now and thus can be included at once. Signed-off-by: Sascha Hauer commit 5a145baa1a499845103cd566ee5fe509e042aa80 Author: Sascha Hauer Date: Mon May 9 18:30:14 2011 +0200 ARM i.MX: define CLOCK_TICK_RATE to bogus value We have a clocksource which renders CLOCK_TICK_RATE useless. Define it to a bogus value to get rid of some ifdeffery. Signed-off-by: Sascha Hauer commit c0450dfffcbc2b4949cfbaab2928a0828dbd6305 Author: Sascha Hauer Date: Mon May 9 18:29:00 2011 +0200 ARM i.MX: fix last user of iomux.h and remove it Signed-off-by: Sascha Hauer commit 4daca0e0170b3996a403d10b6b5838a69785faeb Author: Uwe Kleine-König Date: Sat May 28 21:05:03 2011 +0200 ARM: mxs/tx28: convert to new leds-gpio registration helper This allows to move the led definition to .init.rodata. Signed-off-by: Uwe Kleine-König Cc: Shawn Guo Signed-off-by: Sascha Hauer commit 5b8d628ca4036e76a2d892f2c1d01b58d232809e Author: Uwe Kleine-König Date: Sat May 28 21:05:02 2011 +0200 ARM: mx5: convert to new leds-gpio registration helper This gets rid of per machine struct platform_device definitions and allows to move the platform data and led definition to .init.rodata. Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 47e837b54c01083ce153493882fb8d74d108ae4a Author: Uwe Kleine-König Date: Sat May 28 21:05:01 2011 +0200 ARM: imx: convert to new leds-gpio registration helper This gets rid of per machine struct platform_device definitions and allows to move the platform data and led definition to .init.rodata. Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 72370a5cc28f9efc94a4d7d7dff2ebcb76139088 Author: Fabio Estevam Date: Sat May 28 10:54:36 2011 -0300 ARM: mx5/mx51_babbage: Use gpio_request_array for USBH1 pins Instead of using gpio_request followed by gpio_direction_output use gpio_request_array when requesting multiple pins. Also fixed the location of the delay for the reset and make the BABBAGE_USB_PHY_RESET to toggle. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 2e7b1bfcb98dd232faf85b4a0a2611a49454c2ea Author: Fabio Estevam Date: Sat May 28 10:54:35 2011 -0300 ARM: mx5/mx51_babbage: Move GPIO initialization for USB PHY Reset line to common place The USB PHY Reset GPIO can be configured in the same place as the other GPIOs. While at it rename the pin as BABBAGE_USB_PHY_RESET to make clearer its purpose. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 58f45e3c6f4fd2b9b9d7d43af71409a79a4b4cf6 Author: Troy Kisky Date: Wed Jul 6 19:56:03 2011 -0700 ARM: i.MX53: Fix IOMUX type o's ", o" was used for ", 0" ", 17" was used for ", 7 | 0x10" Signed-off-by: Troy Kisky Signed-off-by: Sascha Hauer commit 6584cb8825e4c74915a5a13756b1902523391d78 Author: Sascha Hauer Date: Wed Jul 6 11:18:33 2011 +0200 ARM i.MX dma: Fix burstsize settings dmaengine expects the maxburst parameter in words, not bytes. The imxdma driver and its users do this wrong. Fix this. As a side note the imx-pcm-dma-mx2 driver was 'fixed' to work with imx-dma. This broke the driver with imx-sdma support which correctly takes the maxburst parameter in words. This patch puts the sdma based sound back to work. Signed-off-by: Sascha Hauer commit c2d986b0d21e53453de8751ecbb317148820d065 Author: Takashi Iwai Date: Wed Jul 6 18:30:08 2011 +0200 ALSA: hda - Clean-up PCM assignments in patch_realtek.c Instead of assigning each default hda_pcm_stream pointers, do NULL-checks and assign default values in alc_build_pcms(). Signed-off-by: Takashi Iwai commit f970de2555636c563935cdc2abc5684da2adacc4 Author: Takashi Iwai Date: Wed Jul 6 17:39:59 2011 +0200 ALSA: hda - Unify alc*_auto_init_input_src() in patch_realtek.c The only different implmentation was alc880_auto_init_input_src(), and now it covers this variant, and we can use the single function for all codecs. Signed-off-by: Takashi Iwai commit d6cc9fabd58f33e829a3182aa856db0d57c726ef Author: Takashi Iwai Date: Wed Jul 6 16:38:42 2011 +0200 ALSA: hda - Parse ADCs and CAPSRCs dynamically for Realtek auto-parser Now with the new code for looking for ADCs and MUXs, we can replace the whole ADC assignment with the parsed results. Signed-off-by: Takashi Iwai commit 0a7f532090f04093f8c11c4679e892f3a0fb63e5 Author: Takashi Iwai Date: Wed Jul 6 15:15:12 2011 +0200 ALSA: hda - Unify alc_auto_init_analog_input() calls All alc*_auto_init_analog_input() calls are identical, so let's use the same function more clearly without aliases. Signed-off-by: Takashi Iwai commit b78217096bcf60f2248fe2a5449a7e4f7fb29105 Author: Takashi Iwai Date: Wed Jul 6 15:12:46 2011 +0200 ALSA: hda - Parse ADCs in alc_auto_create_input_ctls() Parse ADCs and cap-srcs in alc_auto_create_input_ctls() by itself instead of passing explicitly from the caller. By this change, all alc*_auto_create_input_ctls() can be unified to the same calls. Signed-off-by: Takashi Iwai commit 343a04be376a3733514e4eca7a8c8adb2493ea23 Author: Takashi Iwai Date: Wed Jul 6 14:28:39 2011 +0200 ALSA: hda - Code consolidation for ALC88x and ALC662 auto-parsers Use the same common code for auto-parsing the output paths and their initializations, based on the existing ALC662 code, which is smarter than the old ALC880/2 code. Signed-off-by: Takashi Iwai commit 97aaab7b493d9e22a9c0a125a501920354e67846 Author: Takashi Iwai Date: Wed Jul 6 14:02:55 2011 +0200 ALSA: hda - Create bind-mutes appropriately for ALC662 auto-parser When multiple inputs are present on the mixer widget (typically a DAC and a loopback), mute/unmute both inputs with the corresponding mixer element. Signed-off-by: Takashi Iwai commit cd51155676b1c0f44604e304109cb9739a54ea7e Author: Takashi Iwai Date: Wed Jul 6 13:10:42 2011 +0200 ALSA: hda - Initialize DACs in ALC662 auto-parser mode The initialization of DACs was missing in ALC662 parser code. Signed-off-by: Takashi Iwai commit bb8bf4d40cb67dac12106746067994c38229de69 Author: Takashi Iwai Date: Wed Jul 6 13:07:54 2011 +0200 ALSA: hda - Parse HP and speaker DACs even for multi connections for ALC662 In alc662_auto_fill_dac_nids(), the HP and speaker DACs aren't parsed when the corresponding pins aren't fixed with single DACs. Now check these DACs even for non-fixed pins. Signed-off-by: Takashi Iwai commit 5a9d69179f294691bdfd1278f64212a9a7815b0e Author: stephen hemminger Date: Wed Jul 6 19:00:08 2011 +0000 skge: update version Update version number, and take "New" off the config information since old sk98lin has been gone for a couple years. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 57d6fa37f56ca594a1becaf5b8774382ddb7d720 Author: stephen hemminger Date: Wed Jul 6 19:00:07 2011 +0000 skge: make support for old Genesis chips optional The GENESIS boards are really old PCI-X boards that are rare. Marvell has dropped support for this hardware and there is no reason for most users to have to have this code. Rather than riddling code with ifdef's make one macro and let the compiler do the dead code elimination. This saves about 15% of the text size. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit c074304c2bcf4b45e2b7ff86011beaa035ee52fd Author: stephen hemminger Date: Wed Jul 6 19:00:06 2011 +0000 add pci-id for DGE-530T See also: https://bugzilla.kernel.org/show_bug.cgi?id=38862 Reported-by: jameshenderson@ruggedcom.com Signed-off-by: David S. Miller commit 6f7d32f41e5123cb3bbe8c8ce2df912d7a1e1537 Author: stephen hemminger Date: Wed Jul 6 19:00:05 2011 +0000 skge: cleanup pci id table The PCI table was using mix of defines for device id and hard coded hex values. This patch change it to all hex values. It also adds comments based on the names provided in the vendor driver table. There is NO CHANGE to the actual resulting table. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8e89995c58644682302fe9e298a9e30ff38d01a1 Merge: b687857 9c7a083 Author: Takashi Iwai Date: Thu Jul 7 09:28:47 2011 +0200 Merge branch 'fix/hda' into topic/hda commit d804c6f2122ae4ffac21757c7774007e38093390 Author: Shan Wei Date: Thu Jul 7 00:27:49 2011 -0700 net: doc: fix compile warning of no format arguments in ifenslave.c Fix following warning in ifenslave.c with gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4). Documentation/networking/ifenslave.c:263:4: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:271:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:277:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:285:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:291:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:292:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:312:4: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:323:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:342:4: warning: format not a string literal and no format arguments Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit fa917ff739eace9e1e1c214bd067a7a0f7bc264b Author: Shan Wei Date: Thu Jul 7 00:26:31 2011 -0700 net: fix warning of versioncheck net-next-2.6/drivers/net/bnx2x/bnx2x_sp.c: 19 linux/version.h not needed. net-next-2.6/drivers/net/caif/caif_hsi.c: 9 linux/version.h not needed. Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit 9d73242458d9a2fe26e2e240488063d414eacb1c Author: Lothar Waßmann Date: Mon Jul 4 15:52:17 2011 +0200 mach-mx5: fix the I2C clock parents The clock from which the I2C timing is derived is the ipg_perclk not ipg_clk. I2C bus frequency was lower by a factor of ~8 due to the clock divider calculation being based on 66.5MHz IPG clock while the bus actually uses 8MHz ipg_perclk. Kernel version: 3.0.0-rc2 branch 'imx-for-next' of git://git.pengutronix.de/git/imx/linux-2.6 Signed-off-by: Lothar Waßmann Signed-off-by: Sascha Hauer commit 23e99d4cae02fb782eece2101d9ea67c77920346 Author: Uwe Kleine-König Date: Tue Jul 5 12:06:36 2011 +0200 ARM: mxs/tx28: according to the TX28's datasheet D4-D7 are not used for MMC0 The pins are actually used (not in mainline yet): D4 -> SSP2_D0 D5 -> GPIO D6 -> GPIO D7 -> GPIO for owire so their pinmapping for SSP0 is wrong. Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit b9b65860e77cc4db913cbfd4340279f331620cc3 Author: Axel Lin Date: Thu Jun 30 21:35:03 2011 +0800 ARM i.MX23/28: platform-mxsfb: Add missing include of linux/dma-mapping.h Fix below build error: CC arch/arm/mach-mxs/devices/platform-mxsfb.o arch/arm/mach-mxs/devices/platform-mxsfb.c: In function 'mx23_add_mxsfb': arch/arm/mach-mxs/devices/platform-mxsfb.c:27: error: implicit declaration of function 'DMA_BIT_MASK' make[2]: *** [arch/arm/mach-mxs/devices/platform-mxsfb.o] Error 1 make[1]: *** [arch/arm/mach-mxs/devices] Error 2 make: *** [arch/arm/mach-mxs] Error 2 Signed-off-by: Axel Lin Tested-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit d7336b837f4234cf897cb83794c68d43d2307660 Author: Fabio Estevam Date: Tue Jun 28 12:58:36 2011 -0300 ARM: mx53: Fix some interrupts marked as reserved. Mark the actual interrupt source for some interrupts currently marked as reserved. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 425933b30b0ccfac58065bca6c853ea627443cdf Author: Troy Kisky Date: Fri Jun 24 10:52:56 2011 -0700 MXC: iomux-v3: correct NO_PAD_CTRL definition iomux-v3.c uses NO_PAD_CTRL as a 32 bit value so it should not be shifted left by MUX_PAD_CTRL_SHIFT(41) Previously, anything requesting NO_PAD_CTRL would get their pad control register set to 0. Since it is a pad control mask, place it with the other mask values. Signed-off-by: Troy Kisky Acked-by: Lothar Waßmann Tested-by: Lothar Waßmann Signed-off-by: Sascha Hauer commit 429a035d1d3f47963624baec81db9bdf81e62fb2 Author: Fabio Estevam Date: Mon Jun 27 17:12:10 2011 -0300 ARM: mx51: Fix the address space length for SSI On MX51 the address space length for SSI is 16KB. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 187e5f26a853448add574b7efaba3767267dbc15 Author: Shawn Guo Date: Wed Jun 22 22:41:29 2011 +0800 ARM: mxc: imx-dma on imx25 has no other TO version but TO1 The imx25 sdma script only gets TO1 version, so there is no need to encode "to1" in the variable name. Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit ee8814db9642713982e793cf3ae48ac0aef58433 Author: Shawn Guo Date: Wed Jun 22 22:41:28 2011 +0800 ARM: mxc: change imx-dma default to_version to 1 The value 0 is not a valid TO version number. With the current code, imx-sdma driver will try to load firmware sdma-imx25-to0.bin, which is obviously not a good name. Instead, sdma-imx25-to1.bin makes much more sense. Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit aa5f380cb0ba36f396cc7e8a6857e898ec654466 Author: Shawn Guo Date: Wed Jun 22 22:41:27 2011 +0800 ARM: mxc: sdma on imx25 is a V2 block The sdma on soc imx25 is not a V1 but V2 block. Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit 420766a97a93279ef5ccc096aa55ef8e03000e08 Author: Shawn Guo Date: Wed Jun 22 22:41:26 2011 +0800 ARM: mxc: imx-sdma device gets 16K iosize than 4K The sdma on all imx soc gets 16K IO space not 4K. Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit 6cecabb39122a859076d0bb23f8da4e00ece38de Author: Fabio Estevam Date: Wed Jun 22 11:31:00 2011 -0300 ARM: mxc: iomux-v1: Fix build warning Fix the following warning: CC arch/arm/plat-mxc/iomux-v1.o arch/arm/plat-mxc/iomux-v1.c: In function 'mxc_gpio_setup_multiple_pins': arch/arm/plat-mxc/iomux-v1.c:160: warning: 'ret' may be used uninitialized in this function arch/arm/plat-mxc/iomux-v1.c:160: note: 'ret' was declared here Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit aec250dc123be14805d51d29d19bf9c3abf733fa Author: Fabio Estevam Date: Wed Jun 22 09:25:24 2011 -0300 ARM: mach-imx/mx27_3ds: Fix regulator support Fix the 2.8V (VMMC1) and 1.8V (VGEN) voltage generation on mx27_3ds. Also configure the IOMUX for the PMIC interrupt pin and for the CSPI chip select that is connected to the MC13783 PMIC. In order to get the voltage for the LCD (2.8V and 1.8V) it is also necessary to turn on GPO1 and GPO3 supplies because they are connected to switches that enable these two voltages. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 581f84e24b45ab871ae5f15f9290261c7226ffa9 Author: Fabio Estevam Date: Tue Jun 21 14:49:37 2011 -0300 mxc: iomuxv1: Do not use gpio_request when setting the pin as GPIO When setting the IOMUX of multiple pins via mxc_gpio_setup_multiple_pins, gpio_request is called and this prevents subsequent calls of gpio_request done by drivers to succeed. Remove gpio_request call from mxc_gpio_setup_multiple_pins function. As gpio_request is removed from mxc_gpio_setup_multiple_pins, there is no need to have mxc_gpio_release_multiple_pins anymore, so remove this function. Tested on a mx27_3ds board and after applying this patch it is possible to define all the IOMUX setup in a static array Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit b2a08e3e46f594ad605c9b5f5fce6b9f36a9a3eb Author: Fabio Estevam Date: Mon Jun 20 10:37:13 2011 -0300 ARM: mach-imx/mx31_3ds: Fix IOMUX for SPI1 signals Original code was assuming that the CSPI1 pins on the MX31PDK were the primary pin function, which is incorrect. On MX31PDK board these are the pins that provide CSPI1 functionality: DSR_DCE1 (ALT mode 1) --> CSPI1_CLK RI_DCE1 (ALT mode 1) --> CSPI1_RDY DTR_DTE1 -->CSI1_MOSI DSR_DTE1 --> CSPI1_MISO DTR_DCE2 ---> CSPI1_SS2 The 3 IOMUX settings above are done via GPR as per Table A-1 of the MX31RM. This patch fixes the CSPI1 IOMUX and makes the LCD to be functional. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 98618cfe22a5dbb87c0deb341734436aeecd51bf Author: Fabio Estevam Date: Wed Jun 22 09:25:23 2011 -0300 ARM: mach-imx/mx27_3ds: Use the standard i.MX macro for GPIO numbering Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 9333d8731f677e54d5dc28a1652d0879096d8537 Author: Marc Kleine-Budde Date: Wed Jun 8 17:56:38 2011 +0200 ARM: mx53: Fix the base addresses for the DDR memory regions Signed-off-by: Marc Kleine-Budde Signed-off-by: Sascha Hauer commit 2aee401e03da21e81ed995dda6f8e8126058f822 Author: Fabio Estevam Date: Fri Jun 3 16:10:15 2011 -0300 ARM: mx53: Fix the chip select addresses MX53 has 4 chip selects (CS0 - CS3) and the valid combinations are: - CS0 (128MB) - CS0 (64MB), CS1 (64MB) - CS0 (64MB), CS1 (32MB), CS2 (32MB) - CS0 (32MB), CS1 (32MB), CS2 (32MB) , CS3 (32MB) Fix these addresses and also take into account all the four possibilities. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit f2abaae42eaf9ee617d8ea59090306da82f956c7 Author: Fabio Estevam Date: Sat Jun 4 13:35:00 2011 -0300 ARM: mx53: Fix alternate modes for MX53_PAD_PATA_DATA6 MX53_PAD_PATA_DATA6 can have the following alternate modes: PATA_DATA_6: mode 0 GPIO2_6: mode 1 EMI_NANDF_D_6: mode 3 ESDHC4_DAT6 mode 4 GPU3d_GPU_DEBUG_OUT_6 mode 5 IPU_DIAG_BUS_6 mode 6 Fix the modes accordingly. Signed-off-by: Fabio Estevam Signed-off-by: Dinh Nguyen Acked-by: Olof Johansson Signed-off-by: Sascha Hauer commit 38c7364917650e809945a4ad1b703f333564905e Author: Fabio Estevam Date: Sat May 28 11:11:34 2011 -0300 mx51: Let USB Storage be built by default Let USB Storage be built by default. Also select NLS_ISO8859 so that the USB device can be mounted. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit 9bb7fa1e6598e73172499f6120dad9bf59bb3844 Author: Shawn Guo Date: Wed May 25 21:55:38 2011 +0800 ARM: mxs_defconfig: Change CONFIG_RTC_CLASS 'm' to 'y' The patch fixes the warning below. arch/arm/configs/mxs_defconfig:92:warning: symbol value 'm' invalid for RTC_CLASS Signed-off-by: Shawn Guo Signed-off-by: Sascha Hauer commit 719c0c590609809365c6f3da2f923cd84dc99113 Author: Johannes Stezenbach Date: Thu Jul 7 08:18:18 2011 +0200 compat_ioctl: fix make headers_check regression Fix headers_check error introduced by 390192b30057: include/linux/fd.h:6: included file 'linux/compat.h' is not exported Signed-off-by: Johannes Stezenbach Signed-off-by: Jens Axboe commit 28d5fd860f97f017573c4cd8f199bab867c50a11 Author: Daniel Kurtz Date: Wed Jul 6 22:57:39 2011 -0700 Input: synaptics - process button bits in AGM packets AGM packets contain valid button bits, too. This patch refactors packet processing to parse button bits in AGM packets. However, they aren't actually used or reported. The point is to more completely process AGM packets, and prepare for future patches that may actually use AGM packet button bits. Signed-off-by: Daniel Kurtz Acked-by: Chase Douglas Signed-off-by: Dmitry Torokhov commit bea9f0ff263e1c2031d76afc21c22ad773f0b163 Author: Daniel Kurtz Date: Wed Jul 6 22:42:52 2011 -0700 Input: synaptics - rename set_slot to be more descriptive Signed-off-by: Daniel Kurtz Acked-by: Chase Douglas Signed-off-by: Dmitry Torokhov commit a9f0b79edfda3750d254ba5b192795e2554c361d Author: Daniel Kurtz Date: Wed Jul 6 22:39:14 2011 -0700 Input: synaptics - fuzz position for touchpad with reduced filtering Synaptics touchpads indicate via a capability bit when they perform reduced filtering on position data. In such a case, use a non-zero fuzz value. Fuzz = 8 was chosen empirically by observing the raw position data reported by a clickpad indicating it had reduced filtering. Signed-off-by: Daniel Kurtz Acked-by: Chase Douglas Signed-off-by: Dmitry Torokhov commit 8be3c650f54c259694e82282e54b12c14304487e Author: Daniel Kurtz Date: Wed Jul 6 22:27:47 2011 -0700 Input: synaptics - set resolution for MT_POSITION_X/Y axes Set resolution for MT_POSITION_X and MT_POSITION_Y to match ABS_X and ABS_Y, respectively. Signed-off-by: Daniel Kurtz Acked-by: Chase Douglas Signed-off-by: Dmitry Torokhov commit 84460014505685ab234fa8e1a45dffd32f3a46a7 Author: Ping Cheng Date: Wed Jul 6 18:05:43 2011 -0700 Input: wacom - cleanup a return value for the old Bamboo The old code may call input_sync() without sending any other events. While it will be suppressed by the input core not calling it at all is still cheaper. Signed-off-by: Ping Cheng Reviewed-by: Chris Bagwell Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 0bd10ef8f8a29d824561a4678f5e63350751407a Author: Ping Cheng Date: Wed Jul 6 18:05:42 2011 -0700 Input: wacom - update Graphire4 and old Bamboo tablet buttons Bamboo touch sets BTN_BACK, BTN_FORWARD, BTN_LEFT, and BTN_RIGHT as the default button events for tablet buttons. Change Graphire4 and old Bamboo to the same settings. Signed-off-by: Ping Cheng Reviewed-by: Chris Bagwell Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 998c454e1c850f8e5cc0ae2299c4789b395d6d98 Author: Ping Cheng Date: Wed Jul 6 18:05:41 2011 -0700 Input: wacom - add serial number for Graphire4 and old Bamboo With the removal of BTN_TOOL_FINGER for tablet buttons and expresskeys, serial number is needed to distingush if the events were from a regular tool (stylus, eraser, or mouse) or the attribures (buttons, strips, or wheels) on the tablet since there are overlapped events between the tools and the tablet attributes. Signed-off-by: Ping Cheng Reviewed-by: Chris Bagwell Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 358ea22ee3e14894a2598580297767ccc010119b Author: Ping Cheng Date: Wed Jul 6 18:05:41 2011 -0700 Input: wacom - remove BTN_TOOL_FINGER for pad BTN_TOOL_FINGER was designed to indicate a single finger touch. Remove the lines that borrowed this type for expresskeys and tablet buttons. Signed-off-by: Ping Cheng Signed-off-by: Dmitry Torokhov commit e8e70d83912b40c5c9ea7b85a6110b9925fbed62 Author: Chris Hudson Date: Wed Jul 6 18:36:51 2011 -0700 Input: add support for Kionix KXTJ9 accelerometer Signed-off-by: Chris Hudson Signed-off-by: Dmitry Torokhov commit ee430f16251de889ddf8e303970713d9fba9a3f5 Author: Thomas Abraham Date: Tue Jun 14 19:12:26 2011 +0900 serial: samsung: Fix unintended usage of uart port 0 as console In s3c24xx_serial_console_setup function, if the uart port that is being setup as a console has not been initialized, an error can be returned instead of using uart port 0 as the default console port. The uart port that was intended to be used as a console could be initialized at a later point during boot and then registered as a console. This will avoid using uart port 0 as a unintended console port. Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit 51c9d654c2def97827395a7fbfd0c6f865c26544 Author: Greg Kroah-Hartman Date: Wed Jul 6 16:48:28 2011 -0700 Staging: delete tty drivers Delete the drivers/staging/tty drivers as no one has wanted to step up and maintain and fix them. This was discussed in commit 4a6514e6d096716fb7bedf238efaaca877e2a7e8 (tty: move obsolete and broken tty drivers to drivers/staging/tty/) Cc: Arnd Bergmann Cc: Alan Cox Cc: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit bb2a97e9ccd525dd9c3326988e8c676d15d3e12a Author: Greg Kroah-Hartman Date: Wed Jul 6 16:44:09 2011 -0700 Staging: delete generic_serial drivers No one has steped up to claim them, so as described in commit 4c37705877e74c02c968735c2eee0f84914cf557 (tty: move obsolete and broken generic_serial drivers to drivers/staging/generic_serial/), they are now deleted from the system. Cc: Arnd Bergmann Cc: Alan Cox Cc: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit 8eb26942ae6eea7976273e554ab7c4fb2a128e17 Author: Greg Kroah-Hartman Date: Wed Jul 6 16:34:27 2011 -0700 Staging: msm: delete the driver It doesn't build anymore, no one is working on it, and, according to the developers, there's a different one that is working and in the real part of the kernel already. Acked-by: David Brown Signed-off-by: Greg Kroah-Hartman commit 2e65c9d2c5206eb24439f2dd2daa2f6702df358e Author: Andre Guedes Date: Thu Jun 30 19:20:56 2011 -0300 Bluetooth: Remove enable_smp parameter The enable_smp parameter is no longer needed. It can be replaced by checking lmp_host_le_capable. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit eead27da60df80a112d1ac3ea482226e9794c26b Author: Andre Guedes Date: Thu Jun 30 19:20:55 2011 -0300 Bluetooth: Add lmp_host_le_capable() macro Since we have the extended LMP features properly implemented, we should check the LMP_HOST_LE bit to know if the host supports LE. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit e6100a2541987b84af37e4c4247d989644a3aa69 Author: Andre Guedes Date: Thu Jun 30 19:20:54 2011 -0300 Bluetooth: Add enable_le module parameter This patch adds a new module parameter to enable/disable host LE support. By default host LE support is disabled. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit f9b49306dc0b9f514ffb275ae853c50d7ccd6856 Author: Andre Guedes Date: Thu Jun 30 19:20:53 2011 -0300 Bluetooth: Write LE Host Supported command This patch adds a handler to Write LE Host Supported command complete events. Once this commands has completed successfully, we should read the extended LMP features and update the extfeatures field in hci_dev. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit 971e3a4bbcbf7378315b85150853d86be59cffe0 Author: Andre Guedes Date: Thu Jun 30 19:20:52 2011 -0300 Bluetooth: Add extfeatures to struct hci_dev This new field holds the extended LMP features value. Some LE mechanism such as discovery procedure needs to read the extended LMP features to work properly. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit a0f30f592d2d81e28f3ed7fea7f03246b0d55b75 Author: Daniel Drake Date: Sat Jun 25 17:34:18 2011 +0100 x86, olpc: Add XO-1.5 SCI driver Add a driver for the ACPI-based EC event interface found on the OLPC XO-1.5 laptop. This enables notification of battery/AC power events, and enables various devices to be used as wakeup sources through regular ACPI mechanisms. This driver can't be built as a module, because some drivers need to know at boot-time if SCI-based functionality is available via olpc_ec_wakeup_available(). Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-12-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit cfee95977bea090ae5ec4fd442ebd381792d46c4 Author: Daniel Drake Date: Sat Jun 25 17:34:17 2011 +0100 x86, olpc: Add XO-1 RTC driver Add a driver to configure the XO-1 RTC via CS5536 MSRs, to be used as a system wakeup source via olpc-xo1-pm. Device detection is based on finding the relevant device tree node. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-11-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Acked-by: Grant Likely Reviewed-by: Sebastian Andrzej Siewior Cc: devicetree-discuss@lists.ozlabs.org Signed-off-by: H. Peter Anvin commit e1040ac693bac19eaeafbd6c5fd24d9429b5eeb8 Author: Daniel Drake Date: Sat Jun 25 17:34:16 2011 +0100 x86, olpc-xo1-sci: Propagate power supply/battery events EC events indicate change in AC power connectivity, battery state of charge, battery error, battery presence, etc. Send notifications to the power supply subsystem when changes are detected. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-10-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit 2cf2baea103f0a3d68b0f989d28df66f16dbc834 Author: Daniel Drake Date: Sat Jun 25 17:34:15 2011 +0100 x86, olpc-xo1-sci: Add lid switch functionality Configure the XO-1's lid switch GPIO to trigger an SCI interrupt, and correctly expose this input device which can be used as a wakeup source. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-9-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit 7bc74b3df73776fe06f3df9fafd2d2698e6ca28a Author: Daniel Drake Date: Sat Jun 25 17:34:14 2011 +0100 x86, olpc-xo1-sci: Add GPE handler and ebook switch functionality The EC in the OLPC XO-1 delivers GPE events to provide various notifications. Add the basic code for GPE/EC event processing and enable the ebook switch, which can be used as a wakeup source. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-8-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit bc4ecd5a5efc2435e6debfb7b279a15ae96697fd Author: Daniel Drake Date: Sat Jun 25 17:34:13 2011 +0100 x86, olpc: EC SCI wakeup mask functionality Update the EC SCI masks with recent additions. Add functions to query SCI events and set the wakeup mask, to be used by followup patches. Add functions to tweak an event mask used to select certain EC events as a system wakeup source. Also add a function to determine if EC wakeup functionality is available, as this depends on child drivers (different for each laptop model) to configure the SCI interrupt. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-7-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit 7feda8e9f35ebb0e9f90e03acb02280bc137f784 Author: Daniel Drake Date: Sat Jun 25 17:34:12 2011 +0100 x86, olpc: Add XO-1 SCI driver and power button control The System Control Interrupt is used in the OLPC XO-1 to control various features of the laptop. Add the driver base and the power button functionality. This driver can't be built as a module, because functionality added in future patches means that some drivers need to know at boot-time whether SCI-based functionality is available. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-6-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit 97c4cb71c18fe045a763ff6681a8ebbbbbec0b2b Author: Daniel Drake Date: Sat Jun 25 17:34:11 2011 +0100 x86, olpc: Add XO-1 suspend/resume support Add code needed for basic suspend/resume of the XO-1 laptop. Based on earlier work by Jordan Crouse, Andres Salomon, and others. This patch incorporates all earlier feedback from Thomas Gleixner. To clarify a certain point (now more obvious in the code itself): On resume, OpenFirmware returns execution to Linux in protected mode with a kernel-compatible GDT already set up. The changes and simplifications suggested have all been included. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-5-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit a3128588b3c6be634a9013a375903e0b55668f0a Author: Daniel Drake Date: Sat Jun 25 17:34:10 2011 +0100 x86, olpc: Rename olpc-xo1 to olpc-xo1-pm Based on earlier review comments, we'll no longer try to stick all of our XO-1 goodies in a single driver. We'll split it into a power management driver, and an EC/SCI driver. As a first step, rename olpc-xo1 to olpc-xo1-pm, and make it builtin instead of modular. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-4-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit 7a0d4fcf6d4b80b30503fd2701eeef1883e11404 Author: Daniel Drake Date: Sat Jun 25 17:34:09 2011 +0100 x86, olpc: Move CS5536-related constants to cs5535.h Move these definitions into the relevant header file. This was requested in the review of the upcoming XO-1 suspend/resume code. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-3-git-send-email-dsd@laptop.org Acked-by: Andres Salomon Signed-off-by: H. Peter Anvin commit f70d8ef4745349000dc599b6873a8b866289c694 Author: Daniel Drake Date: Sat Jun 25 17:34:08 2011 +0100 x86, olpc: Add missing elements to device tree In response to new device tree code in the kernel, OLPC will start using it for probing of certain devices. However, some firmware fixes are needed to put the devicetree into a usable state. Retain compatibility with old firmware by fixing up the device tree at boot-time if it does not contain the new nodes/properties that we need for probing. This is the same approach taken on PPC platforms. Signed-off-by: Daniel Drake Link: http://lkml.kernel.org/r/1309019658-1712-2-git-send-email-dsd@laptop.org Acked-by: Grant Likely Acked-by: Andres Salomon Cc: devicetree-discuss@lists.ozlabs.org Signed-off-by: H. Peter Anvin commit bcaadf5c1ac4ff84b52174a84adb86a1e3e806dd Author: Masatake YAMATO Date: Mon Jul 4 12:25:51 2011 +0900 dlm: dump address of unknown node When the dlm fails to make a network connection to another node, include the address of the node in the error message. Signed-off-by: Masatake YAMATO Signed-off-by: David Teigland commit 0e373639ad7c7ef2b0c9cf907574b266791b9778 Author: Rob Herring Date: Wed Jul 6 15:42:58 2011 -0500 dt: add helper function to read u32 arrays Rework of_property_read_u32 to read an array of values. Then of_property_read_u32 becomes an inline with array size of 1. Also make struct device_node ptr const. Signed-off-by: Rob Herring Signed-off-by: Grant Likely commit 10cdc7e5129ac26aefece4c7a7d5b1a0285237c2 Author: Rob Herring Date: Mon Jun 13 15:28:53 2011 +0100 ARM: 6960/1: allow enabling SCU code on UP The scu_power_mode function can be used on UP builds as it drives signals to an SOC power controller. So make it selectable for !SMP. Signed-off-by: Rob Herring Signed-off-by: Russell King commit eca5dc2a0028d64229aef1b7839bcbae1d864c5f Author: Will Deacon Date: Fri Jul 1 14:37:08 2011 +0100 ARM: 6988/1: multi-cpu: remove arguments from CPU proc macros The macros for invoking functions via the processor struct in the MULTI_CPU case define the arguments as part of the macros, making it impossible to take the address of those functions. This patch removes the arguments from the macro definitions so that we can take the address of these functions like we can for the !MULTI_CPU case. Reported-by: Frank Hofmann Signed-off-by: Will Deacon Signed-off-by: Russell King commit f022e4e41bb339a8bded1063e718d463904ec716 Author: Linus Walleij Date: Fri Jul 1 08:24:09 2011 +0100 ARM: 6986/1: mach-realview: add TCM support for PB1176 Enable TCM support on the RealView PB1176 - we have now taken the precautions necessary to support even multi-board builds of RealView systems with TCM enabled. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 201043f227576d42529ddb340746a060a00f57f6 Author: Linus Walleij Date: Fri Jul 1 08:23:36 2011 +0100 ARM: 6985/1: export functions to determine the presence of I/DTCM By allowing code to detect whether DTCM or ITCM is present, code paths involving TCM can be avoided when running on platforms that lack it. This is good for creating single kernels across several archs, if some of them utilize TCM but others don't. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 9715efb8dc9ffa629bf5a1215b11bf2f2f29908b Author: Linus Walleij Date: Fri Jul 1 08:23:06 2011 +0100 ARM: 6984/1: enhance TCM robustness The PB11MPCore reports "3" DTCM banks, but anything above 2 is an "undefined" value, so push this to become 0. Further add some checks if code is compiled to TCM even if there is no D/ITCM present in the system, and if we can really fit the compiled code. We don't do the BUG() since it's not helpful, it's better to deal with non-present TCM dynamically. If there is nothing compiled to the TCM and no TCM is detected, it will now just shut up even if TCM support is enabled. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 0f79960391a5a1e3679956024e18aeeb0369ac44 Author: Mike Snitzer Date: Wed Jul 6 21:30:50 2011 +0200 block: eliminate potential for infinite loop in blkdev_issue_discard Due to the recently identified overflow in read_capacity_16() it was possible for max_discard_sectors to be zero but still have discards enabled on the associated device's queue. Eliminate the possibility for blkdev_issue_discard to infinitely loop. Interestingly this issue wasn't identified until a device, whose discard_granularity was 0 due to read_capacity_16 overflow, was consumed by blk_stack_limits() to construct limits for a higher-level DM multipath device. The multipath device's resulting limits never had the discard limits stacked because blk_stack_limits() will only do so if the bottom device's discard_granularity != 0. This resulted in the multipath device's limits.max_discard_sectors being 0. Signed-off-by: Mike Snitzer Signed-off-by: Jens Axboe commit f0c717e6b7ac032e89611fa7629a1fff57e7667a Author: Amitkumar Karwar Date: Tue Jul 5 18:01:11 2011 -0700 mwifiex: modify SDIO aggregation Tx/Rx buffer size The SDIO aggregation buffer size has been modified to an optimum value which gives good throughput results. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 96a95c1abb8235ed26f5915511ce30fbb42de8dd Author: Jean Delvare Date: Wed Jul 6 00:27:06 2011 +0200 ipw2100: Fix command list for debugging There is a stray "undefined" string in the array, get rid of it. Signed-off-by: Jean Delvare Cc: "John W. Linville" Signed-off-by: John W. Linville commit c68f4b892c241bdddeb6f1c1864ac26197229471 Author: Johannes Berg Date: Tue Jul 5 16:35:41 2011 +0200 mac80211: support GTK rekey offload This adds the necessary mac80211 APIs to support GTK rekey offload, mirroring the functionality from cfg80211. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e5497d766adb92bcbd1fa4a147e188f84f34b20a Author: Johannes Berg Date: Tue Jul 5 16:35:40 2011 +0200 cfg80211/nl80211: support GTK rekey offload In certain circumstances, like WoWLAN scenarios, devices may implement (partial) GTK rekeying on the device to avoid waking up the host for it. In order to successfully go through GTK rekeying, the KEK, KCK and the replay counter are required. Add API to let the supplicant hand the parameters to the driver which may store it for future GTK rekey operations. Note that, of course, if GTK rekeying is done by the device, the EAP frame must not be passed up to userspace, instead a rekey event needs to be sent to let userspace update its replay counter. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 830af02f24fbc087999b757b8eca51829c67fa6f Author: Johannes Berg Date: Tue Jul 5 16:35:39 2011 +0200 mac80211: allow driver to iterate keys When in suspend/wowlan, devices might implement crypto offload differently (more features), and might require reprogramming keys for the WoWLAN (as it is the case for Intel devices that use another uCode image). Thus allow the driver to iterate all keys in this context. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 68dd49ef907f92127aabb30b3368b80eb0ffb459 Author: Jon Mason Date: Thu Jun 30 10:42:47 2011 -0500 iwlwifi: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 333c0dbfcd7847d02d75a2d2a80d2f5e1cdc51dc Merge: 115f945 95dac04f Author: John W. Linville Date: Wed Jul 6 15:03:16 2011 -0400 Merge branch 'for-linville' of git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx commit 6eae1ace68ab775e9d47f1f8e40c811ac39f733f Author: Grant Likely Date: Wed Jul 6 11:54:19 2011 -0600 gpio: Move mpc5200 gpio driver to drivers/gpio GPIO drivers are getting consolidated into drivers/gpio. While at it, change the driver name to mpc5200-gpio* to avoid collisions. Signed-off-by: Grant Likely commit 8d54297b90831b6e87e62ad910f833b8666094c8 Author: Christian Riesch Date: Tue Jun 28 15:10:51 2011 +0000 davinci: da850: add a .set_rate method to ref_clk This patch allows setting the input clock frequency of the SoC from the board specific code using the davinci_set_refclk_rate function. Suggested-by: Kevin Hilman Signed-off-by: Christian Riesch Signed-off-by: Sekhar Nori commit 07bfc9152365332477083768d0af9ab21bb2019d Author: ashishj3 Date: Wed Jul 6 16:02:13 2011 +0530 GPIO: DA9052 GPIO module v3 DA9052 PMIC has 16 bit GPIO bus for peripheral control. This patch add support for the GPIO pins on the DA9052. Signed-off-by: David Dajun Chen Signed-off-by: Ashish Jangam Acked-by: Arnd Bergmann Acked-by: Mark Brown Signed-off-by: Grant Likely commit 0435f9337f051db77b4eaf02eee83e7a29f3474a Author: Pavel Roskin Date: Wed Jul 6 10:15:44 2011 -0400 staging: comedi: remove COMEDI_DEVICE_CREATE macro, expand all callers This is no longer needed as the code is now in the main kernel tree. Signed-off-by: Pavel Roskin Cc: Frank Mori Hess Cc: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 7104b5df5b2e53ef864e94556c1b3f63f6a56b70 Author: David Chang Date: Wed Jul 6 14:52:19 2011 +0800 staging: usbip: userspace: usbipd.c: fix userspace build error When build userspace code, got the following error message: make[2]: Entering directory `/usr/src/staging-2.6/drivers/staging/usbip/userspace/src' CC usbip.o ... CCLD usbip CC usbipd.o usbipd.c:30:25: fatal error: stub_driver.h: No such file or directory compilation terminated. make[2]: *** [usbipd.o] Error 1 make[2]: Leaving directory `/usr/src/staging-2.6/drivers/staging/usbip/userspace/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/src/staging-2.6/drivers/staging/usbip/userspace' make: *** [all] Error 2 Due to commit 756d6726 and a16941ae, stub_driver had been changed into host_driver, so update header filename and functions name to fix these build errors Signed-off-by: David Chang CC: Joe Perches Cc: matt mooney Signed-off-by: Greg Kroah-Hartman commit e8e30b8ded0f6fcc8ae63e2918e7353b76bdfa4b Author: Stephen Rothwell Date: Wed Jul 6 15:02:49 2011 +1000 staging: use of tasklets requires including interrupt.h The implicit include of linux/interrupt.h is being removed from netdevice.h. Signed-off-by: Stephen Rothwell Signed-off-by: Greg Kroah-Hartman commit 17f5b569e09cfa3488eaa663cbf9feada2e789f5 Author: Joerg Roedel Date: Wed Jul 6 17:14:44 2011 +0200 iommu/amd: Don't use MSI address range for DMA addresses Reserve the MSI address range in the address allocator so that MSI addresses are not handed out as dma handles. Cc: stable@kernel.org Signed-off-by: Joerg Roedel commit aec27311c23a8ce8eaf490762249d3ed74be83b6 Author: David S. Miller Date: Wed Jul 6 07:30:59 2011 -0700 packet: Fix leak in pre-defrag support. When we clone the SKB, we forget about the original one. Avoid this problem by using skb_share_check(). Reported-by: Penttilä Mika Signed-off-by: David S. Miller commit 56e580d7783ba49a50ccc1b1f3130e5ed2dc52e7 Author: Sekhar Nori Date: Tue Jun 14 15:33:20 2011 +0000 davinci: dm6467/T EVM: fix setting up of reference clock rate The DM6467 and DM6467T EVMs use different reference clock frequencies. This difference is currently supported by having the SoC code call a public board routine which sets up the reference clock frequency. This does not scale as more boards are added. Instead, use the clk_set_rate() API to setup the reference clock frequency to a different value from the board file. Suggested-by: Kevin Hilman Signed-off-by: Sekhar Nori Acked-by: Kevin Hilman commit 0c6fce5eb6a9866674dcf6c26913d0908a119ba3 Author: Sekhar Nori Date: Thu May 19 16:52:11 2011 +0530 davinci: psc.h: clean up indentation done using spaces psc.h has indentation using spaces at a number of places. Fix this by indenting using tabs instead. Signed-off-by: Sekhar Nori commit dc7f9f6e8838556f226c2ebd1da7bb305cb25654 Author: Eric Dumazet Date: Tue Jul 5 23:25:42 2011 +0000 net: sched: constify tcf_proto and tc_action Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 95ec3eb417115fbb2c73b59e2825f6dd5d2f6cf6 Author: David S. Miller Date: Wed Jul 6 01:56:38 2011 -0700 packet: Add 'cpu' fanout policy. Unfortunately we have to use a real modulus here as the multiply trick won't work as effectively with cpu numbers as it does with rxhash values. Signed-off-by: David S. Miller commit 69c843b45eb3b8f267019e6a05860c9c48337419 Author: Alan Stern Date: Wed Jul 6 10:52:23 2011 +0200 PM / Runtime: Prevent runtime_resume from racing with probe This patch (as1475) adds device_lock() and device_unlock() calls to the store methods for the power/control and power/autosuspend_delay_ms sysfs attribute files. We don't want badly timed writes to these files to cause runtime_resume callbacks to occur while a driver is being probed for a device. Signed-off-by: Alan Stern Signed-off-by: Rafael J. Wysocki commit 62052ab1d1a456f5f62f8b753e12d10ca1a83604 Author: Rafael J. Wysocki Date: Wed Jul 6 10:52:13 2011 +0200 PM / Runtime: Replace "run-time" with "runtime" in documentation The runtime PM documentation and kerneldoc comments sometimes spell "runtime" with a dash (i.e. "run-time"). Replace all of those instances with "runtime" to make the naming consistent. Signed-off-by: Rafael J. Wysocki commit e358bad75ff13210f5211cac9f93d76170d43f89 Author: Rafael J. Wysocki Date: Wed Jul 6 10:52:06 2011 +0200 PM / Runtime: Improve documentation of enable, disable and barrier The runtime PM documentation in Documentation/power/runtime_pm.txt doesn't say that pm_runtime_enable() and pm_runtime_disable() work by operating on power.disable_depth, which is wrong, because the possibility of nesting disables doesn't follow from the description of these functions. Also, there is no description of pm_runtime_barrier() at all in the document, which is confusing. Improve the documentation by fixing those issues. Signed-off-by: Rafael J. Wysocki commit 1e2ef05bb8cf851a694d38e9170c89e7ff052741 Author: Rafael J. Wysocki Date: Wed Jul 6 10:51:58 2011 +0200 PM: Limit race conditions between runtime PM and system sleep (v2) One of the roles of the PM core is to prevent different PM callbacks executed for the same device object from racing with each other. Unfortunately, after commit e8665002477f0278f84f898145b1f141ba26ee26 (PM: Allow pm_runtime_suspend() to succeed during system suspend) runtime PM callbacks may be executed concurrently with system suspend/resume callbacks for the same device. The main reason for commit e8665002477f0278f84f898145b1f141ba26ee26 was that some subsystems and device drivers wanted to use runtime PM helpers, pm_runtime_suspend() and pm_runtime_put_sync() in particular, for carrying out the suspend of devices in their .suspend() callbacks. However, as it's been determined recently, there are multiple reasons not to do so, inlcuding: * The caller really doesn't control the runtime PM usage counters, because user space can access them through sysfs and effectively block runtime PM. That means using pm_runtime_suspend() or pm_runtime_get_sync() to suspend devices during system suspend may or may not work. * If a driver calls pm_runtime_suspend() from its .suspend() callback, it causes the subsystem's .runtime_suspend() callback to be executed, which leads to the call sequence: subsys->suspend(dev) driver->suspend(dev) pm_runtime_suspend(dev) subsys->runtime_suspend(dev) recursive from the subsystem's point of view. For some subsystems that may actually work (e.g. the platform bus type), but for some it will fail in a rather spectacular fashion (e.g. PCI). In each case it means a layering violation. * Both the subsystem and the driver can provide .suspend_noirq() callbacks for system suspend that can do whatever the .runtime_suspend() callbacks do just fine, so it really isn't necessary to call pm_runtime_suspend() during system suspend. * The runtime PM's handling of wakeup devices is usually different from the system suspend's one, so .runtime_suspend() may simply be inappropriate for system suspend. * System suspend is supposed to work even if CONFIG_PM_RUNTIME is unset. * The runtime PM workqueue is frozen before system suspend, so if whatever the driver is going to do during system suspend depends on it, that simply won't work. Still, there is a good reason to allow pm_runtime_resume() to succeed during system suspend and resume (for instance, some subsystems and device drivers may legitimately use it to ensure that their devices are in full-power states before suspending them). Moreover, there is no reason to prevent runtime PM callbacks from being executed in parallel with the system suspend/resume .prepare() and .complete() callbacks and the code removed by commit e8665002477f0278f84f898145b1f141ba26ee26 went too far in this respect. On the other hand, runtime PM callbacks, including .runtime_resume(), must not be executed during system suspend's "late" stage of suspending devices and during system resume's "early" device resume stage. Taking all of the above into consideration, make the PM core acquire a runtime PM reference to every device and resume it if there's a runtime PM resume request pending right before executing the subsystem-level .suspend() callback for it. Make the PM core drop references to all devices right after executing the subsystem-level .resume() callbacks for them. Additionally, make the PM core disable the runtime PM framework for all devices during system suspend, after executing the subsystem-level .suspend() callbacks for them, and enable the runtime PM framework for all devices during system resume, right before executing the subsystem-level .resume() callbacks for them. Signed-off-by: Rafael J. Wysocki Acked-by: Kevin Hilman commit eea3fc0357eb89d0b2d1af37bdfb83eb4076a542 Author: Rafael J. Wysocki Date: Wed Jul 6 10:51:40 2011 +0200 PCI / PM: Detect early wakeup in pci_pm_prepare() A subsequent patch is going to move the invocation of pm_runtime_barrier() from dpm_prepare() to __device_suspend(). Consequently, early wakeup events resulting from runtime resume requests for wakeup devices queued up right before system suspend will only be detected after all of the subsystem-level .prepare() callbacks have run. However, the PCI bus type calls pm_runtime_get_sync() from its pci_pm_prepare() callback routine, so it would destroy the early wakeup events information regarding PCI devices. To prevent this from happening add an early wakeup detection mechanism, analogous to the one currently in dpm_prepare(), to pci_pm_prepare(). Signed-off-by: Rafael J. Wysocki Acked-by: Jesse Barnes commit 81b16ba2f1cc93a1ee1dda48be2ea2d91a0cb72e Author: Eric Dumazet Date: Wed Jul 6 01:51:04 2011 -0700 veth: Kill unused tx_dropped Followup to commit f82528bc13a (Exclude duplicated checking for iface-up) : We no longer need percpu tx_dropped field. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b68785714b67079385188323631b05a8f9093675 Author: Kailang Yang Date: Wed Jul 6 09:51:29 2011 +0200 ALSA: hda - Add Realtek ALC269VC codec support Add the support of ALC269VC codec. Also delete the unnecessary codec_variant type enum list: now only three variants (ALC269VA ALC269VB ALC269VC) are needed. In addition, added some aliases: - Add ALC269VB alias name ALC277 - Add ALC269VC alias name ALC259 ALC281X - Add ALC269VC for Lenovo device 0x21f3 name ALC3202 Signed-off-by: Kailang Yang Signed-off-by: Takashi Iwai commit 3600cdadb7ab9ee5f4e73ed01242c3e8b8e3282c Author: David S. Miller Date: Tue Jul 5 23:49:03 2011 -0700 veth: Kill unused code label and code block. Signed-off-by: David S. Miller commit 5b7f7626743e0912958981343b47ac0ab2206b1c Author: Shmulik Ravid Date: Tue Jul 5 06:16:25 2011 +0000 dcbnl: Add CEE notification This patch add an unsolicited notification of the DCBX negotiated parameters for the CEE flavor of the DCBX protocol. The notification message is identical to the aggregated CEE get operation and holds all the pertinent local and peer information. The notification routine is exported so it can be invoked by drivers supporting an embedded DCBX stack. Signed-off-by: Shmulik Ravid Signed-off-by: David S. Miller commit 37cf4d1a9b0903b874a638d0f8649873ddde8a12 Author: Shmulik Ravid Date: Tue Jul 5 06:16:22 2011 +0000 dcbnl: Aggregated CEE GET operation The following couple of patches add dcbnl an unsolicited notification of the the DCB configuration for the CEE flavor of the DCBX protocol. This is useful when the user-mode DCB client is not responsible for conducting and resolving the DCBX negotiation (either because the DCBX stack is embedded in the HW or the negotiation is handled by another agent in the host), but still needs to get the negotiated parameters. This functionality already exists for the IEEE flavor of the DCBX protocol and these patches add it to the older CEE flavor. The first patch extends the CEE attribute GET operation to include not only the peer information, but also all the pertinent local configuration (negotiated parameters). The second patch adds and export a CEE specific notification routine. Signed-off-by: Shmulik Ravid Signed-off-by: David S. Miller commit e12fe68ce34d60c04bb1ddb1d3cc5c3022388fe4 Merge: 7329f0d 712ae51 Author: David S. Miller Date: Tue Jul 5 23:23:37 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit 22032c7774a9619770a1ca92f4f895d69efff386 Author: Stephen Warren Date: Tue Jul 5 14:18:02 2011 -0600 spi/tegra: Use engineering names in DT compatible property Engineering names are more stable than marketing names. Hence, use them for Device Tree compatible properties instead. Signed-off-by: Stephen Warren Signed-off-by: Grant Likely commit f7f678a06326ebafe9005203c0b2fa06885fd12c Author: Stephen Warren Date: Tue Jul 5 14:15:18 2011 -0600 gpio/tegra: Use engineering names in DT compatible property Engineering names are more stable than marketing names. Hence, use them for Device Tree compatible properties instead. Signed-off-by: Stephen Warren Signed-off-by: Grant Likely commit 7329f0d58de01878d9ce4f0be7a76e136f223eef Author: Joe Perches Date: Tue Jul 5 07:43:46 2011 +0000 b44: Use pr__once and DRV_DESCRIPTION Convert a printk with a static to pr__once Add and use DRV_DESCRIPTION to reduce string duplication. Remove now unused version. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit f9d7a1187dfefc6b54b53e0ffff4d26c0eff2702 Author: Shan Wei Date: Tue Jul 5 20:44:17 2011 -0700 net: Add GSO to vlan_features initialization Just add GSO to vlan_features initialization, and update comments. When we set offload features, vlan_dev_fix_features() will do more check. In vlan_dev_fix_features(), final features is decided by features of real device and vlan_features of real device. Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit 7736d33f4262d437c51ed7a28114eacbfca236ff Author: David S. Miller Date: Tue Jul 5 01:43:20 2011 -0700 packet: Add pre-defragmentation support for ipv4 fanouts. The skb->rxhash cannot be properly computed if the packet is a fragment. To alleviate this, allow the AF_PACKET client to ask for defragmentation to be done at demux time. Signed-off-by: David S. Miller commit 595fc71baa1e80420fe89a400ff2d9cc099d22fc Author: David S. Miller Date: Tue Jul 5 01:05:48 2011 -0700 ipv4: Add ip_defrag() agent IP_DEFRAG_AF_PACKET. Elide the ICMP on frag queue timeouts unconditionally for this user. Signed-off-by: David S. Miller commit dc99f600698dcac69b8f56dda9a8a00d645c5ffc Author: David S. Miller Date: Tue Jul 5 01:45:05 2011 -0700 packet: Add fanout support. Fanouts allow packet capturing to be demuxed to a set of AF_PACKET sockets. Two fanout policies are implemented: 1) Hashing based upon skb->rxhash 2) Pure round-robin An AF_PACKET socket must be fully bound before it tries to add itself to a fanout. All AF_PACKET sockets trying to join the same fanout must all have the same bind settings. Fanouts are identified (within a network namespace) by a 16-bit ID. The first socket to try to add itself to a fanout with a particular ID, creates that fanout. When the last socket leaves the fanout (which happens only when the socket is closed), that fanout is destroyed. Signed-off-by: David S. Miller commit ce06b03e60fc19c680d1bf873e779bf11c2fc518 Author: David S. Miller Date: Mon Jul 4 01:44:29 2011 -0700 packet: Add helpers to register/unregister ->prot_hook Signed-off-by: David S. Miller commit 30c5007e143135ad252d4cdd8a5d78748845b746 Author: Chris Forbes Date: Fri Jul 1 21:55:38 2011 +1200 drivers: staging: echo: Fix coding style issues. Fixed coding style issues as flagged by checkpatch.pl Signed-off-by: Chris Forbes Signed-off-by: Greg Kroah-Hartman commit 49184c5d33c151c3e774406aaa0fc47a9ed0d6b8 Author: Chris Forbes Date: Sun Jul 3 16:38:20 2011 +1200 drivers: staging: bcm: sort: kill handrolled bubblesort Replaced the handrolled bubblesort with the kernel's sort() function. Makes things considerably smaller & clearer. Signed-off-by: Chris Forbes Signed-off-by: Greg Kroah-Hartman commit 85ee35e50d9d416cbe76e8af2b216e1760241400 Author: Dan Carpenter Date: Thu Jun 30 12:01:31 2011 +0300 Staging: iio: release locks on error paths There are a couple places here where we should have called mutex_unlock() before returning. Signed-off-by: Dan Carpenter Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 7bcf302ff151da6559261bc73e8b9d1ae31cc0bb Author: Jonathan Cameron Date: Fri Jul 1 11:13:36 2011 +0100 staging:iio:gyro:adis16260 fix missing num_channels setup. Signed-off-by: Jonathan Cameron Cc: stable [3.0] Signed-off-by: Greg Kroah-Hartman commit 6d1ad0f8aa9d3caf6e3f26ad39b43c687abd9c82 Author: Bryan Freed Date: Tue Jun 28 16:46:33 2011 -0700 staging: iio: light sensor: Add a calibscale file to the isl29018 light sensor driver. Defaulting to 1, this gives a way to amplify the lux value before being reduced by the programmed adc_bit shift. Only support whole numbers right now. When this driver is converted to the new IIO_CHAN framework, it will be easy to support the framework's pseudo float. Add illuminance0_calibscale documentation to sysfs-bus-iio-light. Signed-off-by: Bryan Freed Acked-by: Rhyland Klein Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 03bda05d9ced3a80b2265d9da611c6670840abc7 Author: Dan Carpenter Date: Wed Jun 29 22:50:48 2011 +0300 Staging: iio: some uninitialized variable bugs There were some uninitialized variable warnings in iio. Two of these came from the recent changes to how the private data was allocated in 83f0422dc6a16 "staging:iio:accel:sca3000: allocate state in iio_dev and use iio_priv to access." drivers/staging/iio/accel/sca3000_core.c: In function 'sca3000_probe': drivers/staging/iio/accel/sca3000_core.c:1137:9: warning: 'st' may be used uninitialized in this function drivers/staging/iio/adc/ad7291.c: In function 'ad7291_probe': drivers/staging/iio/adc/ad7291.c:805:15: warning: 'chip' may be used uninitialized in this function drivers/staging/iio/dac/ad5624r_spi.c: In function 'ad5624r_probe': drivers/staging/iio/dac/ad5624r_spi.c:228:24: warning: 'st' may be used uninitialized in this function Signed-off-by: Dan Carpenter Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 857f727674f45157ec9a5d788c8954d9f082acb7 Author: Linus Walleij Date: Thu Jun 30 08:31:59 2011 +0200 staging: ste_rmi4: remove cross-dependent platform data The ux500 machine was actually defining platform data for the staging driver ste_rmi4, which is not OK. Let us instead define some __weak platform data in the machine so that the staging driver can override it at compile-time and we can thus have the driver self-contained in staging. Reported-by: Axel Lin Signed-off-by: Linus Walleij Signed-off-by: Greg Kroah-Hartman commit 6977a271d45951b8e7ed5eb8caf659fbd69ee365 Author: Kalle Valo Date: Thu Jun 30 11:43:54 2011 +0300 staging: ath6kl: implement testmode rx command Add new testmode command for retrieving rx reports from firmware. Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit 1aee199cadc0807184c34f2063c795821517f588 Author: Arjan Mels Date: Thu Jun 30 22:18:18 2011 +0200 drivers/staging/usbip: bugfix prevent driver unbind regression in linux-next Fix regression problem in linux-next: post_reset and pre_reset are no longer included in linux-next while they are in linux-3.0rc5. Signed-off-by: Arjan Mels Cc: usbip-devel Signed-off-by: Greg Kroah-Hartman commit 8547d4cc2b616e4f1dafebe2c673fc986422b506 Author: Tobias Klauser Date: Fri Jun 24 15:48:47 2011 +0200 Staging: usbip: vhci-hcd: Do not kill already dead RX/TX kthread When unbinding a device on the host which was still attached on the client, I got a NULL pointer dereference on the client. This turned out to be due to kthread_stop() being called on an already dead kthread. Here is how I was able to reproduce the problem: server:# usbip bind -b 1-2 client:# usbip attach -h server -b 1-2 server:# usbip unbind -b 1-2 This patch fixes the problem by checking the kthread before attempting to kill it, as it is done on the opposite side in stub_shutdown_connection(). Signed-off-by: Tobias Klauser Cc: stable Signed-off-by: Greg Kroah-Hartman commit c88f9906c36de61a59a99e109ff04d5b0a4a29d1 Author: matt mooney Date: Sun Jun 19 22:44:52 2011 -0700 staging: usbip: userspace: configure.ac: change package data Change package name to usbip-utils, email address to linux-usb, and bump minor version number. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit fb5ca8131c4c94745a42d618701392bc74fd22a7 Author: matt mooney Date: Sun Jun 19 22:44:49 2011 -0700 staging: usbip: userspace: usbip_network.c: coding style cleanup Change messges to debug, and fix a few coding style issues. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 756d6726f855b07413540031a210286c42d937bd Author: matt mooney Date: Sun Jun 19 22:44:47 2011 -0700 staging: usbip: userspace: usbip_host: update function and variable names Officially change stub_driver to usbip_host_driver. And, reorganize usbip_host_driver.c while also cleaning up coding style. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit a16941aef197e46146f222639be7b08d15739e97 Author: matt mooney Date: Sun Jun 19 22:44:46 2011 -0700 staging: usbip: userspace: rename stub driver files Rename stub_driver.? to usbip_host_driver.? Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit b9d65b1dd30abdb585e6750e4edfc8ce3b3ab28a Author: matt mooney Date: Sun Jun 19 22:44:45 2011 -0700 staging: usbip: userspace: usbip list: move output header Delay the printing of the output header until the list is received from the remote host. This allows notification that the host does not have any exportable devices. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 622dde8105488e4dfee94cc352c3b7d78f7cc495 Author: matt mooney Date: Sun Jun 19 22:44:44 2011 -0700 staging: usbip: userspace: usbip list: edit output messages Edit dbg and normal output messages for consistency and better feedback. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 9cda5704115d1611b408d8bd0e6e9dfd8a3617cb Author: matt mooney Date: Sun Jun 19 22:44:43 2011 -0700 staging: usbip: userspace: usbip_unbind.c: implement using libsysfs Modify unbind to use libsysfs, and include a check to verify that the device is actually using usbip-host before proceeding. The output messages have been changed to be consistent with `usbip bind'. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 06c465f5d2286749b3a90d29f67c2e5e7e1bd0f9 Author: matt mooney Date: Sun Jun 19 22:44:42 2011 -0700 staging: usbip: userspace: usbip_bind.c: major rewrite of the implementation Rewrite functions in terms of libsysfs, which eliminates a lot of helper functions simplifying the file layout. Now, the two processes taking place here, an unbind of the old driver and a bind of usbip-host, are single functions and have been renamed along with the controlling function. A check to see if the device is already bound to usbip-host is now included. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 30f0554659d277e126c1194b8c1edf5dc6e56914 Author: matt mooney Date: Sun Jun 19 22:44:41 2011 -0700 staging: usbip: userspace: utils.c: rewrite modify_match_busid Rewrite the function to use libsysfs. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 42685d577f569a0c06b35cf0739fcb20bfe9acd8 Author: matt mooney Date: Sun Jun 19 22:44:40 2011 -0700 staging: usbip: userspace: utils: remove libsysfs circumvention Removes all of the helper functions that used a lot of hard-coded values intead of libsysfs. Most of these functions were unused anyway. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 4737d7e3321a2f1e8804ceee3f938eff09593c0a Author: matt mooney Date: Sun Jun 19 22:44:39 2011 -0700 staging: usbip: userspace: usbip: modify command failure When a bad option is given, display a message stating such and output usage. When a bad command is given, output command help. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 25567a3979ed5c6056608f9c0d7574f319283c12 Author: matt mooney Date: Sun Jun 19 22:44:38 2011 -0700 staging: usbip: userspace: libsrc: change all output messages to debug The library should not be displaying random messages intermixed with those from the programs that use them. So, instead, change all of the output from the library to debug only, and allow the programs to decide what to tell the user. This also changes the messages to use the same form, which makes understanding them easier. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 099f79fa5a02c909ca1a621768fe454b664a7efa Author: matt mooney Date: Sun Jun 19 22:44:37 2011 -0700 staging: usbip: userspace: libsrc: remove usbip.h Remove the library version of usbip.h because its sole purpose was to include other headers, which is bad practice. Also modify include guards for consistency. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit c93be5b178ca7f3f4599da7a26a5828ab36aafb4 Author: matt mooney Date: Sun Jun 19 22:44:36 2011 -0700 staging: usbip: userspace: usbip.c: add log option Add option for logging with syslog, and default to use stderr for error and info messages. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit f2fb62b371703e70593780ad40333c2e21030df8 Author: matt mooney Date: Sun Jun 19 22:44:35 2011 -0700 staging: usbip: userspace: libsrc: set program name for logging Set the program name to "libusbip" to identify that the message is from the library code. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 4fd83e84d5069a17a00cbc345cfc045c00e4b7dc Author: matt mooney Date: Sun Jun 19 22:44:34 2011 -0700 staging: usbip: userspace: usbip_common.h: fixup header includes Remove unnecessary headers from the file, and add the now missing headers into the files that actually need them. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 93e18e0ece647ace11a7cdfea4ae895077190f17 Author: matt mooney Date: Sun Jun 19 22:44:33 2011 -0700 staging: usbip: userspace: usbip_common.h: move enums Relocate enums to follow logging macros. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 213fd4adcea93964f24376b6b82435d5495632a8 Author: matt mooney Date: Sun Jun 19 22:44:32 2011 -0700 staging: usbip: userspace: usbip_common.h: cleanup log macros Provide better abstraction for easier modification, and align the macros for readability. Remove notice() because it is not used. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 9a20542fd252162673f3db6f62090688cc1baa72 Author: matt mooney Date: Sun Jun 19 22:44:31 2011 -0700 staging: usbip: userspace: update cleanup.sh Modify $FILES to account for the new directory layout. Also, sort the list of files within the variable to make it human-readable. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 20a45d6629743c1836e6f402eeba5befe9f22971 Author: Larry Finger Date: Fri Jun 24 17:03:12 2011 -0500 staging: rtl8192u: Fix big-endian warning When compiling the rtl8192u driver from staging on a big-endian architecture, the following warning results: CC [M] drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.o drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c: In function 'ieee80211_probe_resp': drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c:780: warning: value computed is not used The warning is due to misuse of cpu_to_le16(). Signed-off-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit 4046dabb7992580da6ee6cadb938d15627e7676e Author: Larry Finger Date: Fri Jun 24 17:02:54 2011 -0500 staging: rtl8192e: Fix big-endian warning When compiling the rtl8192e driver from staging on a big-endian architecture, the following warning results: CC [M] drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.o drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c: In function 'ieee80211_probe_resp': drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c:781: warning: value computed is not used The warning is due to misuse of cpu_to_le16(). Signed-off-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit ffac362e71ddc849d555b9a9726831b97b09288b Author: Larry Finger Date: Fri Jun 24 17:02:27 2011 -0500 staging: rtl8187se: Fix big-endian warning When compiling the rtl8187se driver from staging on a big-endian architecture, the following warning results: CC [M] drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.o drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c: In function 'ieee80211_probe_resp': drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c:824: warning: value computed is not used The warning is due to misuse of cpu_to_le16(). Signed-off-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit 89415218adaf4b0dba562b79169c2980717541c6 Author: matt mooney Date: Thu Jun 16 02:24:59 2011 -0700 staging: usbip: userspace: cleanup README Update examples to correspond with the new usbip-utils; edit grammar; and cleanup format for consistency. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit e8323b834d70957def39b4460e57ccd51159ce11 Author: matt mooney Date: Thu Jun 16 02:24:58 2011 -0700 staging: usbip: userspace: add name to AUTHORS Add myself to the AUTHORS file. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 7ddf1a0c48f3bebedfabbb55da4053af77d5670e Author: matt mooney Date: Thu Jun 16 02:24:57 2011 -0700 staging: usbip: userspace: remove usb.ids file Inclusion of the usb.ids file is redundant. USBIDS_DIR is set in configure.ac to a default of /usr/share/hwdata/. This can be overridden using `./configure --with-usbids-dir='. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit d8bfbf6e0d3eb5309e077eac004efe01e6146beb Author: Sebastian Andrzej Siewior Date: Tue Jun 14 12:09:38 2011 +0200 staging/westbridge: convert cyasgadget to new udc core This is not compile tested as I failed at it. I added an #if 0 block because I did not find the struct device of the device. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman commit 6f480bf9c3bf6c1241024c1763d12d025ff02292 Author: Márton Németh Date: Mon Jun 13 23:30:09 2011 +0200 usbip: simplify port status saving Use memcpy() function to save port status instead of a handwritten for loop. Signed-off-by: Márton Németh Signed-off-by: Greg Kroah-Hartman commit 4a3ca2bebe090b7db7c0f663d502f9319a26a1f0 Author: Márton Németh Date: Tue Jun 14 08:28:26 2011 +0200 usbip: dump the port status difference At the beginning of vhci_hub_control() function the port status is saved to show what are the differences between the previous and the new status. Change the dump function to really show the differences in the status bit changes: put a '+' sign before the symbolic name of a bit where a bit was set, a '-' sign where the bit was cleared and a SPACE where the bit was not changed. This is similar to the way "diff -u" shows the changes and easy to understand. Signed-off-by: Márton Németh Cc: Joe Perches Signed-off-by: Greg Kroah-Hartman commit bfb4ce20708156fc1d3aae8771a13acd8434118c Author: Márton Németh Date: Mon Jun 13 23:47:39 2011 +0200 usbip: only dump valid port status The wIndex parameter of vhci_hub_control() is always zero when the request type is GetHubDescriptor, see drivers/usb/core/hub.c::get_hub_descriptor() and Universal Serial Bus Specification revision 2.0 (April 27, 2000) Section 11.24.2.5 "Get Hub Descriptor". This means the variable rhport will not contain any useful index. Only use valid rhport values. Signed-off-by: Márton Németh Signed-off-by: Greg Kroah-Hartman commit b7ac48fa1fb1e496ff22b60712e91badc4f2d26d Author: Mark Einon Date: Mon Jul 4 21:11:45 2011 +0100 staging: et131x: Remove typedefs from et1310_phy.h Fixes the associated checkpatch warnings. Tested with ifconfig/general use of a device (Agere Systems ET-131x PCI-E Ethernet Controller (rev 02)). Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 13425aa1ce6011625bc270194c40fc7eb9c0d624 Author: Mark Einon Date: Sun Jul 3 18:08:23 2011 +0100 staging: et131x: Remove some unecessary packet accounting code The ce_stats ipackets and opackets members are only used to update the net_device_stats->[r,t]x_packets counters, so get rid of them. Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit a7aa8a028dcaeb6ad4e4161399dd26713e95efd2 Author: Mark Einon Date: Sun Jul 3 18:08:22 2011 +0100 staging: et131x: Fix stats->rx_packets accounting The net_device_stats->rx_packets counter is not getting updated. This is due to checking a fMP_ADAPTER_LINK_DETECTION flag prior to updating which is never set. Solved by using netif_carrier_ok() to test for a link, and removing the fMP_ADAPTER_LINK_DETECTION flag, which looks to be a broken mechanism. Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 2b4baab313fefc4eaef7a034f5ff8c8c08a48daf Author: wwang Date: Tue Jul 5 11:07:50 2011 +0800 staging: rts_pstor: Fix a bug that a MMCPlus card can't be accessed 1. Don't switch bus if cmd14 timedout 2. Add a new group of return codes for mmc_test_switch_bus Signed-off-by: wwang Signed-off-by: Greg Kroah-Hartman commit a0138163cfbfdfbdc20e4477c77bd7046bd66bb4 Author: Joe Perches Date: Tue Jul 5 15:21:34 2011 -0700 MAINTAINERS: Add remaining staging entries Add the staging entries from various TODO files to MAINTAINERS. Add a few web links as well. Miscellaneous staging typo section header fix. Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 11aba3040349c24a835a2dd9aaa8da92fd030226 Author: Alan Cox Date: Tue Jul 5 18:45:40 2011 +0100 gma500: oops.. thou shalt stg add... Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0ad91794cc243a73b3fc952a8b0a044a7a5cdff9 Author: Alan Cox Date: Tue Jul 5 18:45:28 2011 +0100 gma500: Update the TODO list This is now horribly out of date Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7b6ad65f8068d74dac90d78aaee2b15041571f47 Author: Arend van Spriel Date: Wed Jul 6 00:02:58 2011 +0200 staging: brcm80211: added newlines to some debug macros in bcmsdh_sdmmc.c Some macros were missing a terminating '\n' character. This commit fixes those. Reported-by: Dan Carpenter Reviewed-by: Pieter-Paul Giesberts Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4b1524cea8b44104e8ae6e67fff6039f1102e75e Author: Roland Vossen Date: Wed Jul 6 00:02:57 2011 +0200 staging: brcm80211: simpler string handling in brcmf_c_pktfilter_offload_set() Replaced two functions with strcpy(). Reported-by: Dan Carpenter Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 564f2e7def06c1aab5c317874f80c43109109b02 Author: Arend van Spriel Date: Wed Jul 6 00:02:56 2011 +0200 staging: brcm80211: remove macro WLBANDINITFN from brcmsmac The macro WLBANDINITFN does nothing meaningful in the brcmsmac driver and has been removed. Reviewed-by: Roland Vossen Reviewed-by: Pieter-Paul Giesberts Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 50df1a3a150e8da3d6c129f5bbb1fbc96e8e41c3 Author: Arend van Spriel Date: Wed Jul 6 00:02:55 2011 +0200 staging: brcm80211: remove external definitions from phy_lcn.c The source file phy_lcn.c had several external definitions flagged by checkpatch.pl script. The patch fixes those. Reviewed-by: Roland Vossen Reviewed-by: Pieter-Paul Giesberts Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 15f91530c90a2c7198d9646463085bafca600204 Author: Arend van Spriel Date: Wed Jul 6 00:02:54 2011 +0200 staging: brcm80211: remove several externs from dhd_linux.c The script checkpatch.pl flagged for some extern variables in dhd_linux.c source. Several have been fixed in this patch. Two remaining are in macro conditional code that needs cleanup so they are not resolved here. Reviewed-by: Roland Vossen Reviewed-by: Pieter-Paul Giesberts Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit ae50ca7210ecb9ffbbe38c2c85308f02386c916e Author: Arend van Spriel Date: Wed Jul 6 00:02:53 2011 +0200 staging: brcm80211: replace occurrences of __attribute__((packed)) One of the checkpatch warning on this driver is about usage of the __attribute__ keyword. This patch changes this to using the __packed keyword. Reviewed-by: Roland Vossen Reviewed-by: Pieter-Paul Giesberts Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit fbf6222d93d2656385f480a3b725684a802e0cd0 Author: Roland Vossen Date: Wed Jul 6 00:02:52 2011 +0200 staging: brcm80211: removed #ifdef SDIOH_API_ACCESS_RETRY_LIMIT SDIOH_API_ACCESS_RETRY_LIMIT is always defined. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 6aeea40f56a0ac95f760aa5ce8558fd535321c08 Author: Roland Vossen Date: Wed Jul 6 00:02:51 2011 +0200 staging: brcm80211: moved fullmac definitions from .h to .c files And deleted unused definitions. Improves code since it makes clear that the definitions are only used by a specific .c file. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 07bc023c16f861dcf512a24e583ec1407a4db3ca Author: Roland Vossen Date: Wed Jul 6 00:02:50 2011 +0200 staging: brcm80211: merged bcmsdbus.h into sdio_host.h Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit ebe58a7bd899ae4e2c91c2d67b71033ca8997df5 Author: Roland Vossen Date: Wed Jul 6 00:02:49 2011 +0200 staging: brcm80211: merged sbsdio.h into sdio_host.h Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 84e5e3bc17a7f8f043c61edd19c2b9915bbcecab Author: Roland Vossen Date: Wed Jul 6 00:02:48 2011 +0200 staging: brcm80211: merged dngl_stats.h into dhd.h Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f824184db154e35258d2d24bc1cd440a275f7907 Author: Roland Vossen Date: Wed Jul 6 00:02:47 2011 +0200 staging: brcm80211: deleted two fullmac source files Having both a 'generic' as a 'linux' specific variant of a file makes no sense in a Linux environment. Merged bcmsdh_sdmmc_linux.c into bcmsdh_sdmmc.c, and bcmsdh_linux.c into bcmsdh.c. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7c783cefbce8e79e26a2f86d189b1e1eb166fa2e Author: Roland Vossen Date: Wed Jul 6 00:02:46 2011 +0200 staging: brcm80211: replaced Broadcom specific acronym WLC WLC (caps) was replaced, wlc (small caps) has not been replaced yet. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit bfaa5765fd24425333eff98d7d226a7d6e981d50 Author: Arend van Spriel Date: Wed Jul 6 00:02:45 2011 +0200 staging: brcm80211: remove checkpatch warnings from phy_n.c The source file phy_n.c had couple of checkpatch warnings that have been fixed in this patch. Reviewed-by: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit d558dea79135d9d75c253a83c26c544166053860 Author: Arend van Spriel Date: Wed Jul 6 00:02:44 2011 +0200 staging: brcm80211: made name lookup arrays more const The checkpatch script gave a hint that some character string arrays probably should have an additional const keyword. This patch changes the static const char * arrays to static const char * const arrays as suggested getting rid of two checkpatch warnings. Reviewed-by: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 79560f5a7a8cbd1dd6fdc0bbc6574815cd629494 Author: Arend van Spriel Date: Wed Jul 6 00:02:43 2011 +0200 staging: brcm80211: remove checkpatch warnings 'suspect code indent' The driver sources contained a couple of checkpatch warnings of the given class. These have been cleaned up. Reviewed-by: Roland Vossen Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 471f1b516336eba1bd4ed6a7f4f060fb0df6684d Author: Roland Vossen Date: Wed Jul 6 00:02:42 2011 +0200 staging: brcm80211: renamed structures in softmac Several structures contained a '_c_' in their name that does not add any information. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 27ef0efb711b01b4d3128408d6d941beff2590a9 Author: Roland Vossen Date: Wed Jul 6 00:02:41 2011 +0200 staging: brcm80211: replaced typedef tx_power_t by struct brcms_tx_power Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b37755a4e807bac2edab23af31caea93a4583de4 Author: Roland Vossen Date: Wed Jul 6 00:02:40 2011 +0200 staging: brcm80211: replaced typedef wlc_phy_t with struct brcms_phy_pub Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 2561542e594ae89b8449dc14e317688bd4cfc204 Author: Roland Vossen Date: Wed Jul 6 00:02:39 2011 +0200 staging: brcm80211: replaced typedef phy_info_t by struct brcms_phy Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit cc87568a0f94e907d357e041fcbff4f8aaccbd8c Author: Roland Vossen Date: Wed Jul 6 00:02:38 2011 +0200 staging: brcm80211: replaced various typedefs in softmac typedefs are undesirable according to documentation/CodingStyle. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 2d4684a57457c8414c240a3b2e94c357021f901e Author: Roland Vossen Date: Wed Jul 6 00:02:37 2011 +0200 staging: brcm80211: removed remains of assert mechanism in fullmac Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8c405d82ad1c6f3e0e601412aeb622332b0b022e Author: Roland Vossen Date: Wed Jul 6 00:02:36 2011 +0200 staging: brcm80211: removed asserts from dhd_sdio.c Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit eb87cb36729defd69160fe794b27b17c079aa664 Author: Roland Vossen Date: Wed Jul 6 00:02:35 2011 +0200 staging: brcm80211: removed asserts from dhd_linux.c Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 518ec3e963cd6d4596fa87c03d530a70cfafd8e3 Author: Roland Vossen Date: Wed Jul 6 00:02:34 2011 +0200 staging: brcm80211: removed asserts from dhd_cdc.c and dhd_common.c Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e16a73bc9e219be68ef9c4ce4ccf8bd9ccf99d2f Author: Roland Vossen Date: Wed Jul 6 00:02:33 2011 +0200 staging: brcm80211: removed asserts from bcmsdh.c Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0173ecbf5acdb4a15d5aba8a0b4577ab95578404 Author: Roland Vossen Date: Wed Jul 6 00:02:32 2011 +0200 staging: brcm80211: removed asserts from two fullmac files ASSERTs are non desirable, replaced by error handling where applicable. Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 96c75e48185f18b7f2f56a37d5702fb0350cbc34 Author: Arend van Spriel Date: Wed Jul 6 00:02:31 2011 +0200 staging: brcm80211: rename macros in dhd_dbg.h The header file dhd_dbg.h contains several macros used throughout the code starting with DHD_. These have been renamed to get rid of this broadcom specific acronym. Reviewed-by: Roland Vossen Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c4eae44c541cd5c9fe8751da8a3b6d6b036c9ea2 Author: Roland Vossen Date: Wed Jul 6 00:02:30 2011 +0200 staging: brcm80211: removed unused #ifdef sections in fullmac CONFIG_MACH_SANDGATE2G, CONFIG_MMC_MSM7X00A, CONFIG_HAS_EARLYSUSPEND and CONFIG_WIFI_CONTROL_FUNC were never defined. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 1f660b9ca9e26f1fd3894b0ea8b2e55edb2b2c70 Author: Roland Vossen Date: Wed Jul 6 00:02:29 2011 +0200 staging: brcm80211: removed occurrences of 'dhd' DHD is a Broadcom internal term and has been replaced by BRCMF. Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8fbc6dda1b01e90a4600ba1d01a8e2d057d25fe0 Author: Arend van Spriel Date: Wed Jul 6 00:02:28 2011 +0200 staging: brcm80211: clean up checkpatch error A checkpatch error was introduced in following commit: 0f22b8a staging: brcm80211: remove MMC_SDIO_ABORT macro definition The patch gets rid of the error. Reviewed-by: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit cdaa898b5efcc598ab1004e8f913061dc7005091 Author: Tomas Winkler Date: Tue Jul 5 21:07:47 2011 +0300 staging/easycap: kill telltale logic This reason for this feature was 'some versions of the videodev module overwrite the data which has been written by the call to usb_set_intfdata() in easycap_usb_probe(), replacing it with a pointer to the embedded v4l2_device structure. to detect this, the string in the easycap.telltale[] buffer is checked.' The upstream version of v4l2_device_register sets driver data only when it wasn't already set, therefore this is not needed Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit f8bae99ee5030625a4e7f0d87784191882292f0e Merge: 994635a 44c4349 Author: David S. Miller Date: Tue Jul 5 19:45:12 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/linux-merge commit cbbd8a580e67009a7109b5070c9b02b08da92caf Author: Arend van Spriel Date: Tue Jul 5 22:06:17 2011 +0200 staging: brcm80211: rename external function in wl_cfg80211.c Renamed external function getting rid of wl_ prefix. Removed unused function from the API header file wl_cfg80211.h as it was not defined. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 764a5e931d4666fa91954c360171037545a33c33 Author: Arend van Spriel Date: Tue Jul 5 22:06:16 2011 +0200 staging: brcm80211: rename pointer conversion macros in wl_cfg80211.h The data structures in fullmac driver references are made easier by using provided macros in wl_cfg80211.h. The abbreviation 'wl' in these macros has been replaced by cfg or the macro has been removed if used only once. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 6f85d4045f180e5e080888b981d948643cc2449d Author: Arend van Spriel Date: Tue Jul 5 22:06:15 2011 +0200 staging: brcm80211: rename structures and variables in wl_cfg80211.c Making an effort getting rid of the wl_ prefix from the fullmac source files. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 80551f5aecf556f0d7d675bea2bb0e1c05d09472 Author: Roland Vossen Date: Tue Jul 5 22:06:14 2011 +0200 staging: brcm80211: removed unused definitions from dhd_sdio.c Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 57f845d288e412d7241eaffb1b47b14256feec57 Author: Roland Vossen Date: Tue Jul 5 22:06:13 2011 +0200 staging: brcm80211: W_REG macro cleanup in fullmac SDIO Code cleanup. W_REG was defined the same for both big and little endian systems. Replaced W_REG on two spots with its expansion. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit bd5213eb188cfb8c11bc168bc68fde44c0831a24 Author: Roland Vossen Date: Tue Jul 5 22:06:12 2011 +0200 staging: brcm80211: removed last amd64 compiler warnings Code cleanup. Warnings were due to pointer declarations being used for an address that does not reside on the CPU bus. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 72ac5a16f88c355554e083efa51b0b4ad529b670 Author: Roland Vossen Date: Tue Jul 5 22:06:11 2011 +0200 staging: brcm80211: got rid of redundant member 'regs' of struct dhd_bus Code cleanup. Decreases amd64 compiler warnings. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 95f58e6e20d8c8e4529a85a5bff636dc895cee54 Author: Roland Vossen Date: Tue Jul 5 22:06:10 2011 +0200 staging: brcm80211: replaced macro W_SDREG by function w_sdreg() Code cleanup. Leads to more readable code and better type checking. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e347d383dad8ae97c749a97e1fc4bda94d376833 Author: Roland Vossen Date: Tue Jul 5 22:06:09 2011 +0200 staging: brcm80211: replaced macro R_SDREG by function r_sdreg() Code cleanup. Leads to more readable code and better type checking. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a24dee08c52116e95d6dbe0747c28f619f301612 Author: Roland Vossen Date: Tue Jul 5 22:06:08 2011 +0200 staging: brcm80211: fullmac register access macro's take u32 instead of pointers Code cleanup. Fullmac contains macro's that access registers on the 32 bits backplane bus. These registers should not be declared as pointers since pointers can be 64 bits. The following patch series gets rid of these pointers and ultimately of all compiler warning when compiling for amd64. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 591e814237852195f4a2dae280c74c1524648d45 Author: Roland Vossen Date: Tue Jul 5 22:06:07 2011 +0200 staging: brcm80211: removed unused code and definitions from fullmac Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 63bec49e45d574badaff1936c58d6f4751a79816 Author: Roland Vossen Date: Tue Jul 5 22:06:06 2011 +0200 staging: brcm80211: removed last typedefs from fullmac Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 46c3db7896fa320ef8eb472ec93cf87f266d7157 Author: Arend van Spriel Date: Tue Jul 5 22:06:05 2011 +0200 staging: brcm80211: rename dhd_bus structure and functions The header file dhd_bus.h contains several function prototypes starting with dhd_bus_ and using parameter with struct dhd_bus. These function and structure have been renamed to brcmf_bus. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 6758a717814aab8579ac32aceb7b03fc50a693b1 Author: Arend van Spriel Date: Tue Jul 5 22:06:04 2011 +0200 staging: brcm80211: rename function variables This commit gets rid of variables whose name is a broadcom specific acronym and not very meaningful. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 621beaff95e85a80e943103816c4896f11d34d79 Author: Roland Vossen Date: Tue Jul 5 22:06:03 2011 +0200 staging: brcm80211: further cleaned fullmac header files Code cleanup. Deleted unused definitions. Moved locally used definitions to .c files. Moved definitions from bcmsdh_sdmmc.h to bcmsdbus.h. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5def3b959edd42412a48b56d3fd715fca62a1e11 Author: Roland Vossen Date: Tue Jul 5 22:06:02 2011 +0200 staging: brcm80211: removed file sdiovar.h Code cleanup. Contents merged into other files. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 69c9070cb1d09c6dc6c9ad0e3e79d2c8435d886e Author: Roland Vossen Date: Tue Jul 5 22:06:01 2011 +0200 staging: brcm80211: removed brcmf_sdioh_start() and brcmf_sdioh_stop() Code cleanup. These functions were empty. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4fbb7b81282004d83283d5b23c191cc3e7734fa2 Author: Roland Vossen Date: Tue Jul 5 22:06:00 2011 +0200 staging: brcm80211: removed brcmf_sdioh_reset() Code cleanup. This function did not perform a reset, hence it was removed. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7d72d3064eccd1a0a0509c1b39c000113c6d0c95 Author: Roland Vossen Date: Tue Jul 5 22:05:59 2011 +0200 staging: brcm80211: removed brcmf_sdioh_interrupt_pending() Code cleanup. This function always returned 0. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 127aa5cfd9affae06915dc83561094d3004b2cf3 Author: Roland Vossen Date: Tue Jul 5 22:05:58 2011 +0200 staging: brcm80211: sdh related code cleanup Gave struct brcmf_sdio the more applicable name 'brcmf_sdio_card'. Enforced stronger type checking by replacing void *sdh by struct brcmf_sdio_card *. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 62dd656d34a9975fcb9ed8dab433232312426f86 Author: Roland Vossen Date: Tue Jul 5 22:05:57 2011 +0200 staging: brcm80211: removed last occurrences of bcmsdh/BCMSDH Code cleanup. This was a Broadcom specific acronym. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 994635a137f637466d36a7c6272dae014a46a11c Merge: 7d09926 df2cbe4 Author: David S. Miller Date: Tue Jul 5 18:22:39 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 115f9450babbf2ed530db04e16a99df28cec85dd Author: Sergei Shtylyov Date: Fri Jul 1 22:34:42 2011 +0400 ssb: use pci_dev->subsystem_{vendor,device} The SSB code reads PCI subsystem IDs from the PCI configuration registers while they are already stored by the PCI subsystem in the 'subsystem_{vendor|device}' fields of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: John W. Linville commit 2fa2319027dd498edde332afe9a27f1b34b34d7f Author: Sergei Shtylyov Date: Fri Jul 1 22:33:08 2011 +0400 ssb: use pci_dev->revision The SSB code reads PCI revision ID from the PCI configuration register while it's already stored by the PCI subsystem in the 'revision' field of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: John W. Linville commit 73e6cdcf479ce3a8d33a726f0477473db35a4b2e Author: Michael Büsch Date: Mon Jul 4 19:51:11 2011 +0200 b43: Add RX side DMA memory barrier This adds a memory barrier to ensure the writes to the ring memory are committed before the DMA ring pointer is updated. We do a similar thing on the TX side already. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 14205aa21c8041d7e940ee9bcde87824dc00a08a Author: Aloisio Almeida Jr Date: Fri Jul 1 19:31:38 2011 -0300 NFC: add Documentation/networking/nfc.txt Signed-off-by: Aloisio Almeida Jr Signed-off-by: Lauro Ramos Venancio Signed-off-by: John W. Linville commit c46ee38620a2aa2b25b16bc9738ace80dbff76a4 Author: Aloisio Almeida Jr Date: Fri Jul 1 19:31:37 2011 -0300 NFC: pn533: add NXP pn533 nfc device driver Signed-off-by: Lauro Ramos Venancio Signed-off-by: Aloisio Almeida Jr Signed-off-by: Samuel Ortiz Signed-off-by: John W. Linville commit 23b7869c0fd08d73c9f83a2db88a13312d6198bb Author: Lauro Ramos Venancio Date: Fri Jul 1 19:31:36 2011 -0300 NFC: add the NFC socket raw protocol This socket protocol is used to perform data exchange with NFC targets. Signed-off-by: Lauro Ramos Venancio Signed-off-by: Aloisio Almeida Jr Signed-off-by: Samuel Ortiz Signed-off-by: John W. Linville commit c7fe3b52c1283b8ba810eb6ecddf1c8a0bcc13ab Author: Aloisio Almeida Jr Date: Fri Jul 1 19:31:35 2011 -0300 NFC: add NFC socket family Signed-off-by: Lauro Ramos Venancio Signed-off-by: Aloisio Almeida Jr Signed-off-by: John W. Linville commit 4d12b8b129f170d0fc3188de1e51a2a1b0f87730 Author: Lauro Ramos Venancio Date: Fri Jul 1 19:31:34 2011 -0300 NFC: add nfc generic netlink interface The NFC generic netlink interface exports the NFC control operations to the user space. Signed-off-by: Lauro Ramos Venancio Signed-off-by: Aloisio Almeida Jr Signed-off-by: Samuel Ortiz Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit 3e256b8f8dfa309a80b5dece388d85d9a9801a29 Author: Lauro Ramos Venancio Date: Fri Jul 1 19:31:33 2011 -0300 NFC: add nfc subsystem core The NFC subsystem core is responsible for providing the device driver interface. It is also responsible for providing an interface to the control operations and data exchange. Signed-off-by: Lauro Ramos Venancio Signed-off-by: Aloisio Almeida Jr Signed-off-by: Samuel Ortiz Signed-off-by: John W. Linville commit 2b4562dfd6ad3579951de21168cb9d266ed3f1bd Author: Johannes Berg Date: Sat Jul 2 00:02:01 2011 +0200 mac80211: allow driver to impose WoWLAN restrictions If the driver can't support WoWLAN in the current state, this patch allows it to return 1 from the suspend callback to do the normal deconfiguration instead of using suspend/resume calls. Note that if it does this, resume won't be called. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 304e21bbeab0d208dc7e6142fb75db8a466d5217 Author: Sergei Shtylyov Date: Fri Jul 1 22:35:28 2011 +0400 ssb: PCI revision ID register is 8-bit wide The SSB code reads PCI revision ID register as 16-bit entity while the register is actually 8-bit only (the next 8 bits are the programming interface register). Fix the read and make the 'rev' field of 'struct ssb_boardinfo' 8-bit as well, to match the register size. Signed-off-by: Sergei Shtylyov Signed-off-by: John W. Linville commit 45a771385ceb644941b195f37ab98f7db39776bd Author: Larry Finger Date: Fri Jul 1 08:56:11 2011 -0500 rtlwifi: rtl8192de: Fix error exit from hw_init In routine rtl92de_hw_init(), there are two places where a failure is not handled correctly. Reported-by: Dan Carpenter Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit eb8b27ada953f8de182e628d71feff797707768a Author: Larry Finger Date: Fri Jul 1 08:50:48 2011 -0500 rtlwifi: rtl8192de: Replace loops calling udelay with single mdelay There are a number of loops to implement delays. These are replaced with single calls to mdelay(). The need for a fix was noted by Andrew Morton . Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c2a7965f528244bc35f41ca64592132c7b3c2515 Author: Christian Lamparter Date: Fri Jul 1 15:28:22 2011 +0200 carl9170: use carl9170 queue enums Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 9928c7d1b1c5e3dcba04a10c7014c9f3319b1fbc Author: Larry Finger Date: Thu Jun 30 16:47:11 2011 -0500 rtlwifi: rtl8192de: Remove comparison of boolean with true Tests of a boolean against "true" are not needed as non-zero is sufficient.. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit f2e795ffae1c4127277ce25727d5ac097f91238c Author: Mike McCormack Date: Thu Jun 30 16:46:14 2011 -0500 rtlwifi: rtl8192{ce,cu,se} Remove irq_enabled This should be unnecessary if synchronize_irq is used. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 80b69593a8dff5266155f33f9c033f670ee55323 Author: Larry Finger Date: Thu Jun 30 16:44:47 2011 -0500 rtlwifi: rtl8192de: Remove irq_enabled boolean Prepare rtl8192de for the removal of irq_enaqbled. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit faeef8acb18f80abb826f314cfac381c6fcf7a34 Author: Andrew Morton Date: Thu Jun 30 16:28:50 2011 -0500 drivers/net/wireless/rtlwifi/rtl8192de/phy.c: fix udelay() usage ERROR: "__bad_udelay" [drivers/net/wireless/rtlwifi/rtl8192de/rtl8192de.ko] undefined! Signed-off-by: Andrew Morton Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 5e34069cc4cf0d38abfc38e19ad4715036de1540 Author: Christian Lamparter Date: Thu Jun 30 21:08:43 2011 +0200 mac80211: fix smatch complains mlme.c l.757 ieee80211_dynamic_ps_enable_work(11) variable dereferenced before check 'sdata' mesh_pathtbl.c l.650 mesh_path_del(20) double lock 'bottom_half' l.663 mesh_path_del(33) double unlock 'bottom_half' Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 1205f5438f5a9a2dad3a29aa1c015e7bbd3b2b2b Author: Christian Lamparter Date: Thu Jun 30 20:34:54 2011 +0200 carl9170: allow PSM if the 5 GHz band is selected Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit f3716fd7494ce5e2af3c6251275d989bfec98906 Author: Christian Lamparter Date: Thu Jun 30 20:31:34 2011 +0200 carl9170: enable IEEE80211_HW_NEED_DTIM_PERIOD Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 85ee5122abbc1b5c5f3622e46942291a2f6f1261 Author: Christian Lamparter Date: Thu Jun 30 20:27:47 2011 +0200 carl9170: import 1.9.4 firmware headers This patch imports all shared header changes from carl9170fw.git. * update copyright boilerplate * add some more strategic __aligned(4). * WoWLAN Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 3b4670ffe7824d1fc4db2f73101015056ecb4415 Author: Jesper Juhl Date: Wed Jun 29 22:49:33 2011 +0200 net, wireless: Don't return uninitialized in __cfg80211_stop_sched_scan() If the 'driver_initiated' function argument to __cfg80211_stop_sched_scan() is not 0 then we'll return an uninitialized 'err' from the function. Signed-off-by: Jesper Juhl Signed-off-by: John W. Linville commit 3bff1865186c6bb97855f0c13e3850543dce9cef Author: Yogesh Ashok Powar Date: Tue Jun 28 18:41:37 2011 +0530 mac80211: Skip tailroom reservation for full HW-crypto devices with race fix Based on inputs from Johannes Berg from http://article.gmane.org/gmane.linux.kernel.wireless.general/68193 and http://article.gmane.org/gmane.linux.kernel.wireless.general/71702 In xmit path, devices that do full hardware crypto (including MMIC and ICV) need no tailroom. For such devices, tailroom reservation can be skipped if all the keys are programmed into the hardware (i.e software crypto is not used for any of the keys) and none of the keys wants software to generate Michael MIC and IV. v2: Added check for IV along with MMIC. Reported-by: Fabio Rossi Tested-by: Fabio Rossi Signed-off-by: Mohammed Shafi Shajakhan Cc: Mohammed Shafi Shajakhan v3: Fixing races to avoid WARNING: at net/mac80211/wpa.c:397 ccmp_encrypt_skb+0xc4/0x1f0 Reported-by: Andreas Hartmann Tested-by: Andreas Hartmann v4: Added links with message ID Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit 774fec338bfc63fe17233feefd9c6b46ce1673e0 Author: Stephen Warren Date: Tue Jul 5 10:55:27 2011 -0600 ASoC: Tegra: Implement SPDIF CPU DAI This is a minimal driver for the Tegra SPDIF controller. In hardware, the SPDIF output signal is always routed to any active HDMI display controllers, and may also be routed to external pins on Tegra using the pinmux. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 097f882153f0ec13617074fa3bdb683b8215e20c Author: Arik Nemtsov Date: Mon Jun 27 22:06:34 2011 +0300 wl12xx: always initialize AP-mode max power level Sometimes we only get the Tx power level via op->config when the FW is off. Record the received power level when this happens and use it to initialize the firmware during boot. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 6cfa5cffde202cabbf0d64c9225ce89f7f7a0d0f Author: Arik Nemtsov Date: Mon Jun 27 22:06:33 2011 +0300 wl12xx: initialize max_power levels for 11a channels Set the maximum FW supported power levels for 11a channels. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 73ecce31fe04a2d6c87192cc752b5bd733a8c94a Author: Eliad Peller Date: Mon Jun 27 13:06:45 2011 +0300 wl12xx: implement cancel_hw_scan() callback After implementing cancel_hw_scan(), there is no more need to flush scan_complete_work on suspend. scan_complete_work enqueues a new scan_work, that might lead to the following warning (if the device was already suspended): WARNING: at drivers/mmc/core/core.c:169 mmc_wait_for_req+0x1ac/0x2c8() Backtrace: [] (dump_backtrace+0x0/0x110) [] (dump_stack+0x0/0x1c) [] (warn_slowpath_common+0x0/0x6c) [] (warn_slowpath_null+0x0/0x2c) [] (mmc_wait_for_req+0x0/0x2c8) [] (mmc_io_rw_extended+0x0/0x1e4) [] (sdio_io_rw_ext_helper+0x0/0x1ac) [] (sdio_memcpy_fromio+0x0/0x2c) [] (wl1271_sdio_raw_read+0x0/0x1bc [wl12xx_sdio]) [] (wl1271_cmd_wait_for_event_or_timeout+0x0/0x19c [wl12xx]) [] (wl1271_cmd_wait_for_event+0x0/0x30 [wl12xx]) [] (wl1271_cmd_disconnect+0x0/0x14c [wl12xx]) [] (wl1271_unjoin+0x0/0x48 [wl12xx]) [] (wl1271_op_config+0x0/0x490 [wl12xx]) [] (ieee80211_hw_config+0x0/0x14c [mac80211]) [] (ieee80211_recalc_idle+0x0/0x4c [mac80211]) [] (__ieee80211_scan_completed+0x0/0x1ac [mac80211]) [] (ieee80211_scan_work+0x0/0x484 [mac80211]) [] (worker_thread+0x0/0x1e8) [] (kthread+0x0/0x90) Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 2aa01597eb29304fe7d863f15300c7b960b587ca Author: Eliad Peller Date: Mon Jun 27 13:06:44 2011 +0300 wl12xx: add stop_scan command define wl1271_scan_stop() to cancel an ongoing hw scan. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit e85d1629c69f99e91598039e5c05f1608ad19c9f Author: Eliad Peller Date: Mon Jun 27 13:06:43 2011 +0300 wl12xx: configure suspend/resume only if associated/started Configure the device (to wowlan) only if the sta/ap is associated/started. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit b5d6e5f66304bddc2b5bc7222e993dfeb629ef0c Author: Ohad Ben-Cohen Date: Sun Jun 26 18:00:11 2011 +0300 wl12xx: one SDIO initialization is enough Skip manual device power on in case runtime PM is enabled for our device. This eliminates a secondary & redundant SDIO init sequence. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Luciano Coelho commit 708bb3cf58a9bc90f3171ba64f30601f690e5aaa Author: Arik Nemtsov Date: Fri Jun 24 13:03:37 2011 +0300 wl12xx: implement Tx watermarks per AC Each AC is stopped when its queue is filled up to the high watermark, and restarted when its queue it lower than the low watermark. This ensures congested ACs are not able to starve other ACs. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 787b2dc44aa1ae2524f022659c6c6b2d3c979e04 Author: Ido Yariv Date: Fri Jun 24 13:03:36 2011 +0300 wl12xx: Increase low & high TX watermarks The current TX watermark settings cause the driver to stop queues too frequently. Among other things, this can have a negative impact on WMM prioritization, since mac80211 sorts pending packets by their ACs. Fix this by increasing the high watermark to 256 packets. Increase the low watermark to 32 to minimize periods with queues being stopped. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit 9e374a37b6fa2310b71d3c5657cd0c1e693120c6 Author: Arik Nemtsov Date: Fri Jun 24 13:03:35 2011 +0300 wl12xx: schedule TX packets according to FW occupancy When selecting packets for transmission, prefer the ACs that are least occupied in the FW. When packets for multiple ACs are present in the FW, it decides which to transmit according to WMM QoS parameters. With these changes, lower priority ACs should not be starved when higher priority traffic is present. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit fae2fd767e9d380ed0d05e4a5d6b1673e2c2d3df Author: Arik Nemtsov Date: Sun Jun 26 10:36:04 2011 +0300 wl12xx: use 802.11 header location after relocation to frame start When operating with TKIP encryption, the function wl1271_tx_fill_hdr() relocates the 802.11 header to the start of the frame, and leaves room for the security header. Some functions in the Tx path rely on the location of the header, namely, for purposes of roaming in STA mode and connecting new stations in AP mode. Call these functions only after the header is relocated. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 3618f30f307841dba19f22d9c602a5c59cab30c7 Author: Arik Nemtsov Date: Sun Jun 26 10:36:03 2011 +0300 wl12xx: AP mode - support FW TX inactivity triggers In AP mode we register for the MAX_TX_RETRY and INACTIVE_STA events. Both are reported to the upper layers as a TX failure in the offending stations. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit b992c68228a3ccdf73ea4f57519e1663839a9cbe Author: Oz Krakowski Date: Sun Jun 26 10:36:02 2011 +0300 wl12xx: fix Tx security sequence number handling Do not reset the security sequence number when issuing a join command or interface is removed. Instead, reset the counter only during the unjoin command. Added the notion of counter wrap-around to the LSB number in wl1271_tx_complete_packet. Added post recovery padding to adjust for potential security number progress during the recovery process by the firmware and avoid potential interop issues in encrypted networks. Signed-off-by: Oz Krakowski Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit a82ce2ae0d91cfa261cbe6f27f4031963ace097c Author: Liam Girdwood Date: Mon Jul 4 22:10:50 2011 +0100 ASoC: core - Add platform IO tracing Trace platform IO just like CODEC IO. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit cb2cf612fbdf457291b6e47064fed24f0dfdd9a5 Author: Liam Girdwood Date: Mon Jul 4 22:10:53 2011 +0100 ASoC: core - Add convenience register for platform kcontrol and DAPM Allow platform probe to register platform kcontrols and DAPM just like the CODEC probe(). Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit b7950641374ddb41e9a03ff61b43f9ab3fcf763d Author: Liam Girdwood Date: Mon Jul 4 22:10:52 2011 +0100 ASoC: core - Add platform widget IO Allow platform driver widgets to perform any IO required for DAPM. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit a491a5c84f34febfebd4cb0b8c9add97977efa97 Author: Liam Girdwood Date: Mon Jul 4 22:10:51 2011 +0100 ASoC: core - Add API call to register platform kcontrols. In preparation for Dynamic PCM (AKA DSP) support. Allow platform drivers to register kcontrols. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 8a27bd9a33187a10c5157434b2274487f6679e49 Author: Mark Brown Date: Mon Jul 4 10:27:51 2011 -0700 ASoC: Manage WM8731 ACTIVE bit as a supply widget Now we have supply widgets there's no need to open code the handling of the ACTIVE bit. Signed-off-by: Mark Brown Tested-by: Nicolas Ferre Acked-by: Liam Girdwood commit fb6440955fcc5d175397fd0e9a00c6967cb26a74 Author: Holger Brunck Date: Mon Jun 20 18:31:57 2011 +0200 spi/fsl_spi: fix CPM spi driver This patch fixes the freescale spi driver for CPM. Without this patch SPI on CPM failed because cpm_muram_alloc_fixed tries to allocate muram in an preserved area. The error reported was: mpc8xxx_spi f0011a80.spi: can't allocate spi parameter ram mpc8xxx_spi: probe of f0011a80.spi failed with error -12 Now the driver uses of_iomap to get access to this area similar to i2c driver driver in the i2c-cpm.c which has a similar device tree node. This is tested on a MPC8247 with CPM2. Signed-off-by: Holger Brunck Signed-off-by: Grant Likely commit 41134db17a7d041f0d5885ee2e8739a25124484c Author: Jesper Juhl Date: Fri Jun 24 00:40:01 2011 +0200 Remove unneeded version.h includes from drivers/staging/rtl*/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/rtl8187se/, drivers/staging/rtl8192e/, drivers/staging/rtl8192u/ & drivers/staging/rtl8712/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit bb69f192ca190fef51f956c9f6af552d236ae9d8 Author: Jesper Juhl Date: Fri Jun 24 00:43:10 2011 +0200 Remove unneeded version.h include from drivers/staging/bcm/headers.h It was pointed out by 'make versioncheck' that a include of linux/version.h is not needed in drivers/staging/bcm/headers.h . This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit fe8bc7e534ea4797bb792612c6a9ff3f7212eca5 Author: Jesper Juhl Date: Fri Jun 24 00:44:07 2011 +0200 Remove unneeded version.h include from drivers/staging/cxd2099/cxd2099.c It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/cxd2099/cxd2099.c . This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 08a3901c52fb79cf626224d059611800035c6205 Author: Jesper Juhl Date: Fri Jun 24 00:47:43 2011 +0200 Remove unneeded version.h include from drivers/staging/cxt1e1/sbecom_inline_linux.h It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/cxt1e1/sbecom_inline_linux.h This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 0de7586a11890b9fbf1cfc119adf2ba59841f41e Author: Jesper Juhl Date: Fri Jun 24 00:51:12 2011 +0200 Remove unneeded version.h includes (and add where needed) for drivers/staging/easycap/ It was pointed out by 'make versioncheck' that linux/version.h was not always being included where needed and sometimes included needlessly in drivers/staging/easycap/. This patch fixes up the includes. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit dc7daeae5d92fac5820c7075416097f8371b1674 Author: Jesper Juhl Date: Fri Jun 24 00:53:29 2011 +0200 Remove unneeded version.h includes from drivers/staging/lirc/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/lirc/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit f36c4284046901d2d210874cefc0fe65dac42f3b Author: Jesper Juhl Date: Fri Jun 24 00:56:26 2011 +0200 Remove unneeded version.h includes from drivers/staging/msm/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/msm/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 169f29e5d027ad0d099d78abfacc7f5edbacb507 Author: Jesper Juhl Date: Fri Jun 24 00:58:44 2011 +0200 Remove unneeded version.h include from drivers/staging/panel/panel.c It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/panel/panel.c This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 933b37497b8e2a4643892002ff3debfde61912e8 Author: Jesper Juhl Date: Fri Jun 24 01:00:24 2011 +0200 Remove unneeded version.h include from drivers/staging/rts_pstor/rtsx.h It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/rts_pstor/rtsx.h This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 37ca936e1d83041ac9981bd31802b2c28f36ce93 Author: Jesper Juhl Date: Fri Jun 24 01:01:50 2011 +0200 Remove unneeded version.h includes from drivers/staging/speakup/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/speakup/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 4756dc59015367f14d4b7840334432e61b99dbb6 Author: Jesper Juhl Date: Fri Jun 24 01:02:55 2011 +0200 Remove unneeded version.h include from drivers/staging/tidspbridge/include/dspbridge/host_os.h It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/tidspbridge/include/dspbridge/host_os.h This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit ed0b6af8334e47007a6bb18afe2c71ea26b44d03 Author: Jesper Juhl Date: Fri Jun 24 01:04:19 2011 +0200 Remove unneeded version.h includes (and add where needed) for drivers/tm6000/ It was pointed out by 'make versioncheck' that linux/version.h was not always being included where needed and sometimes included needlessly in drivers/staging/tm6000/. This patch fixes up the includes. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 61e4e04adae7dea724b6465f3c04ded44b9e9ea9 Author: Jesper Juhl Date: Fri Jun 24 01:05:44 2011 +0200 Remove unneeded version.h includes from drivers/staging/wlags49_h2/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/wlags49_h2/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 3b44d227f689801c9d846f4feb931343c245029f Author: Jesper Juhl Date: Fri Jun 24 01:06:48 2011 +0200 Remove unneeded version.h include from drivers/staging/wlan-ng/prism2sta.c It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/wlan-ng/prism2sta.c . This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 7e978a115f56a3c208e2c169d7e09c99b7af62e5 Author: Jesper Juhl Date: Fri Jun 24 01:08:05 2011 +0200 Remove unneeded version.h includes from drivers/staging/xgifb/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/xgifb/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 7648c996ea9c97b0af391f7594c4728ecf47df84 Author: Ondrej Zary Date: Sat Jun 25 19:14:21 2011 +0200 staging: ft1000: Merge common definitions from USB and PCMCIA drivers Merge common definitions from ft1000-usb and ft1000-pcmcia drivers to a common ft1000.h file. This revealed two odd things in ft1000-usb which might be bugs so add comments about them to ft1000_usb.h. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit e161a440af564f9fd1214ac4d3b1143b0a159e31 Author: Ondrej Zary Date: Fri Jul 1 00:03:57 2011 +0200 staging: ft1000-pcmcia: remove support for v5 firmware Remove support for v5 firmware images as all known firmware images are v6. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit e1328c625c119bc6ae4dfbd70339c570def56181 Author: Ondrej Zary Date: Fri Jul 1 00:03:56 2011 +0200 staging: ft1000-pcmcia: remove PSEUDOSZ, use sizeof(struct pseudo_hdr) instead PSEUDOSZ seems to define struct pseudo_hdr size. Remove it and use sizeof(struct pseudo_hdr) directly. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 45c4cf1c065aad28fd1b8dddc61cff0605e272e6 Author: Ondrej Zary Date: Fri Jul 1 00:03:55 2011 +0200 staging: ft1000-pcmcia: CodingStyle fixes in ft1000.h Major CodingStyle fixes in ft1000.h Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 331eae6c84bcc22ab76c5a5045dbd068373bf9ba Author: Ondrej Zary Date: Fri Jul 1 00:03:54 2011 +0200 staging: ft1000-pcmcia: remove useless ft1000_release() function Remove useless ft1000_release() function. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 503b2d0eac586e3c5567506a20680c670eafbd64 Author: Ondrej Zary Date: Fri Jul 1 00:03:53 2011 +0200 staging: ft1000-pcmcia: remove unused includes from ft1000_cs.c Remove unused includes from ft1000_cs.c Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit a6b072918676225f9415cc4ba4ca84814f83eed2 Author: Ondrej Zary Date: Fri Jul 1 00:03:52 2011 +0200 staging: ft1000-pcmcia: coding style fixes in ft1000_cs.c Minor coding style fixes in ft1000_cs.c Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit ba5e17e6abae1669f9ed1d63798273617dc2992e Author: Ondrej Zary Date: Fri Jul 1 00:03:51 2011 +0200 staging: ft1000-pcmcia: remove unused ft1000_asic_read and ft1000_asic_write functions Functions ft1000_asic_read() and ft1000_asic_write() are unused. Remove them. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 3061fab1521e11dbcc3f5e36cc02c634e377da1d Author: Ondrej Zary Date: Fri Jul 1 00:03:50 2011 +0200 staging: ft1000-pcmcia: remove misleading and template comments from ft1000_cs.c Remove misleading, useless and template comments from ft1000_cs.c Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 5312ba3b1a6519baa7b8a06629f71d6ed129170a Author: Ondrej Zary Date: Fri Jul 1 00:03:49 2011 +0200 staging: ft1000-pcmcia: remove useless debugging from ft1000_cs.c Remove useless debugging from ft1000_cs.c Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 3d5bc3ffb220a0f39b4085f25f651800b64d1808 Author: Ondrej Zary Date: Fri Jul 1 00:03:48 2011 +0200 staging: ft1000-pcmcia: remove useless defines from ft1000_cs.c Remove unused defines from ft1000_cs.c Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit ca145277fc20dffbd43f2332a8350fbabcd85f5c Author: Ondrej Zary Date: Fri Jul 1 00:03:47 2011 +0200 staging: ft1000-pcmcia: remove custom defines for standard types Remove custom defines for standard types (u8, u16, u32...) Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit cefe8adb6fc134b26cd75f92d032f6639a82358e Author: Ondrej Zary Date: Fri Jul 1 00:03:46 2011 +0200 staging: ft1000-pcmcia: remove unused fields from struct ft1000_info Remove 13 unused fields from struct ft1000_info. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 8e0fd2cfd96c68b24916200f70ae29f8497ea8ca Author: Ondrej Zary Date: Fri Jul 1 00:03:45 2011 +0200 staging: ft1000-pcmcia: remove firmware download typedefs Remove firmware download typedefs: DFP_FILE_HDR, DSP_FILE_HDR_5, DSP_IMAGE_INFO, DSP_IMAGE_INFO_V6 Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 4370782ee27510a4a380478a0d5bc66d20ec1dec Author: Ondrej Zary Date: Fri Jul 1 00:03:44 2011 +0200 staging: ft1000-pcmcia: delete local_info_t typedef Delete local_info_t typedef along with the struct as its "link" member was not used. Use link->priv to store net_device directly. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 540c44fefddd2fbf045fdacbc9bb8cf2f1f13621 Author: Ondrej Zary Date: Fri Jul 1 00:03:43 2011 +0200 staging: ft1000-pcmcia: delete unused DPRAM_BLK typedefs Delete unused DPRAM_BLK typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit d3706552e6e799eeb87043c847c6d36eb768a471 Author: Ondrej Zary Date: Fri Jul 1 00:03:42 2011 +0200 staging: ft1000-pcmcia: remove FT1000_INFO typedefs Remove FT1000_INFO typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 3aaf8073d98659ed8a2f417799b12cb7cdf76191 Author: Ondrej Zary Date: Fri Jul 1 00:03:41 2011 +0200 staging: ft1000-pcmcia: remove PROV_RECORD typedefs Remove PROV_RECORD typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit a8f0d231c65f5bd11bc97ef3c863321f63ab70a3 Author: Ondrej Zary Date: Fri Jul 1 00:03:40 2011 +0200 staging: ft1000-pcmcia: delete unused APP_INFO_BLOCK typedefs Delete unused APP_INFO_BLOCK typedefs and associated variables. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit ba50587b758713c6aa71cce23ef818370fe11a81 Author: Ondrej Zary Date: Fri Jul 1 00:03:39 2011 +0200 staging: ft1000-pcmcia: delete unused DSPHIBERNATE typedefs Delete unused DSPHIBERNATE typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 2cbdcdc15b85c211796ecfb92d48ee9522698fd8 Author: Ondrej Zary Date: Fri Jul 1 00:03:38 2011 +0200 staging: ft1000-pcmcia: remove DSPINITMSG typedefs Remove DSPINITMSG typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit ed049d7fd4afe4fc44bc0ac259aa8dcd9c9afcca Author: Ondrej Zary Date: Fri Jul 1 00:03:37 2011 +0200 staging: ft1000-pcmcia: delete unused TIMEMSG typedefs Delete unused TIMEMSG typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 24c5b19ed6d4c6ab5993096db721ff3101620435 Author: Ondrej Zary Date: Fri Jul 1 00:03:36 2011 +0200 staging: ft1000-pcmcia: remove MEDIAMSG typedefs Remove MEDIAMSG typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 8bc0d6fb39846013a344b18d2e40d1012741ecdf Author: Ondrej Zary Date: Fri Jul 1 00:03:35 2011 +0200 staging: ft1000-pcmcia: remove DRVMSG typedefs Remove DRVMSG typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 2c9bf83922236b2994a30fcd0188d4acf0620a6a Author: Ondrej Zary Date: Fri Jul 1 00:03:34 2011 +0200 staging: ft1000-pcmcia: remove PSEUDO_HDR typedefs Remove PSEUDO_HDR typedefs. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 8ac299853b70e62dce0888396c807612f2c23eaa Author: Ondrej Zary Date: Fri Jul 1 00:03:33 2011 +0200 staging: ft1000-pcmcia: get rid of ft1000_dev.h Shorten ft1000_read_reg() to single line and move it to ft1000.h along with ft1000_write_reg() and delete ft1000_dev.h Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit f1fb1904c932df163dfd80a53db40ab775d07e0d Author: Ondrej Zary Date: Fri Jul 1 00:03:32 2011 +0200 staging: ft1000-pcmcia: delete ft1000.conf Remove useless ft1000.conf file. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit e1ef436e60607e775a42309f73f22e10eb27056c Author: Ondrej Zary Date: Fri Jul 1 00:03:31 2011 +0200 staging: ft1000-pcmcia: fix compilation with FT_DEBUG enabled Delete DEBUG statement that prevents compilation with FT_DEBUG enabled. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 01cafa528da6c5ffd5fe6b756ec11ec317b3f9d3 Author: Ondrej Zary Date: Fri Jul 1 00:03:30 2011 +0200 staging: ft1000-pcmcia: don't crash on load Don't crash with NULL pointer dereference on load because of empty .name. Signed-off-by: Ondrej Zary Signed-off-by: Greg Kroah-Hartman commit 378af483331d429bff3318e69f4ff5534f92c750 Author: Kirill Smelkov Date: Mon Jun 13 16:18:32 2011 +0400 staging/easycap: Fix bytesperline calculation As described above fillin_formats() """ /* * THE 16-BIT easycap_format.mask HAS MEANING: * (least significant) BIT 0: 0 => PAL, 25 FPS; 1 => NTSC, 30 FPS * BITS 2-4: RESERVED FOR DIFFERENTIATING STANDARDS * BITS 5-7: NUMBER OF BYTES PER PIXEL * BIT 8: 0 => NATIVE BYTE ORDER; 1 => SWAPPED * BITS 9-10: RESERVED FOR OTHER BYTE PERMUTATIONS * BIT 11: 0 => UNDECIMATED; 1 => DECIMATED * BIT 12: 0 => OFFER FRAMES; 1 => OFFER FIELDS * BIT 13: 0 => FULL FRAMERATE; 1 => REDUCED * (most significant) BITS 14-15: RESERVED FOR OTHER FIELD/FRAME OPTIONS * IT FOLLOWS THAT: * bytesperpixel IS ((0x00E0 & easycap_format.mask) >> 5) * byteswaporder IS true IF (0 != (0x0100 & easycap_format.mask)) * * decimatepixel IS true IF (0 != (0x0800 & easycap_format.mask)) * * offerfields IS true IF (0 != (0x1000 & easycap_format.mask)) */ """ bytes-per-pixel is stored in bits 5-7 of calculated mask. But when calculating bytes-per-line we were extracting wrong value instead of bytes-per-pixel, which was usually 2 times bigger -- e.g. for PAL YUV 422 I was getting ((mask3 & 0x00F0) >> 4) = 4 bytes instead of 2. The error here is that even in comments there is a line saying * bytesperpixel IS ((0x00E0 & easycap_format.mask) >> 5) but we were using ((0x00F0 & easycap_format.mask) >> 4) With 2 times bigger bytesperpixel and automatically bytesperline, the video was shown halfheight'ed, which is understandable if we look at video-memory layout: <------- bytesperline --------> <- real bpl -> x0----------y0 x1-----------y1 x2----------y2 x3-----------y3 xn----------yn xn-----------yn for each line, we should display width pixels, then move to next line with bytesperline, and oops, if bytesperline = 2*real-bytesperlin, we'll skip one line and move to next-next line, and so only half lines will be shown. Initially I've debugged the problem with my video application[1], but I've checked that after this patch both rawv (mine app) and tvtime work correctly. [1] http://repo.or.cz/w/rawv.git P.S. why at all we use those mask/shifts? Why not use bitfields? Cc: Mike Thomas Signed-off-by: Kirill Smelkov Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 59204031dd85d35cada46f00a7ea33f3e51414c4 Author: Kirill Smelkov Date: Mon Jun 13 16:18:31 2011 +0400 staging/easycap: PAGE_SIZE is always defined I'm not 100% sure, only 99.99% that PAGE_SIZE is always defined in Linux. So there is no need to check for it. Cc: Mike Thomas Signed-off-by: Kirill Smelkov Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit bad269262cbe193f6abe701d1f564e1fa492d050 Author: Kirill Smelkov Date: Mon Jun 13 16:18:30 2011 +0400 staging/easycap: There is no need to support V4L1 ioctls Because V4L1 was completly removed from the kernel in 2.6.38. See e.g. 08af245d ([media] V4L: remove V4L1 compatibility mode). Cc: Mike Thomas Signed-off-by: Kirill Smelkov Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit eb4cfaba5470e29d3c035390c538fca98d3322c4 Author: Kirill Smelkov Date: Tue Jun 14 20:46:49 2011 +0400 staging/easycap: Fix thinko in "bars" module option description Both bars=0 and bars=1 were described as meaning to display bars on signal lost. Actually bars=1 means "display bars", but bars=0 means display raw source as is (usually black screen). Instead of changing bars=0 to "_no_ testcard bars ..." as suggested by Dan Carpenter reword the whole bars description for clarity. Cc: Mike Thomas Cc: Dan Carpenter Signed-off-by: Kirill Smelkov Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 3efad93d39f7f26fe8ab1227aed09cb0dfd9edad Author: Kirill Smelkov Date: Mon Jun 13 16:18:28 2011 +0400 staging/easycap: Kill leftover build options in readme The following options were removed from in-tree driver, but were left in README: - EASYCAP_IS_VIDEODEV_CLIENT was removed in cb81fa07 (staging/easycap: kill EASYCAP_IS_VIDEODEV_CLIENT compilation conditional); - EASYCAP_NEEDS_V4L2_DEVICE_H/EASYCAP_NEEDS_V4L2_FOPS were removed in 30516058 (staging/easycap: kill EASYCAP_NEEDS_V4L2_DEVICE_H and EASYCAP_NEEDS_V4L2_FOPS); - EASYCAP_NEEDS_UNLOCKED_IOCTL was removed in f2b3c685 (staging/easycap: kill EASYCAP_NEEDS_UNLOCKED_IOCTL). Remove them. Cc: Mike Thomas Signed-off-by: Kirill Smelkov Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit baaa7901984d7fb0e1c0ae18bf43d7d57fa73a13 Author: Michael Fiedler Date: Mon Jun 20 16:34:29 2011 +0200 staging: rtl8712: Add missing whitespace in struct definition Fixes scripts/checkpatch.pl warning. Signed-off-by: Michael Fiedler Acked-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit d4aa57f0e14c4e615daefd25e6867fd4c8df9482 Author: Michael Fiedler Date: Mon Jun 20 16:34:28 2011 +0200 staging: rtl8712: Use linux/atomic.h instead of asm/atomic.h Fixes warning from scripts/checkpatch.pl. Signed-off-by: Michael Fiedler Acked-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit 40878364f1f461af2030bce0ea7d5f026d5a1dc2 Author: Michael Fiedler Date: Mon Jun 20 16:34:27 2011 +0200 staging: rtl8712: Use __packed instead of __attribute__ ((packed)) According to scripts/checkpatch.pl, the __packed macro from linux/compiler.h should be used. Signed-off-by: Michael Fiedler Acked-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit 36e0b743d247b0aad58dc20753c38dfd05533aa1 Author: Michael Fiedler Date: Mon Jun 20 16:34:26 2011 +0200 staging: rtl8712: Remove duplicate #define for __attribute__ ((packed)) There is already a macro defined in linux/compiler.h. Signed-off-by: Michael Fiedler Acked-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit 38d0cffefd3daaad6bc58a6212d16edeaa8ee1f0 Author: Dan Carpenter Date: Fri Jun 17 13:25:09 2011 +0300 Staging: easycap: use after free in easycap_delete() The JOM() macro dereferences peasycap, so I moved the free down some lines. Signed-off-by: Dan Carpenter Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 981aabb1482c79014b3bc1a61f0c87bdbceae41d Author: Tobias Klauser Date: Fri Jun 17 10:53:54 2011 +0200 Staging: usbip: Fix out-of-tree build for userspace This fixes out-of-tree builds ($builddir != $srcdir). In such cases, libusbip.la cannot be found because it is generated in the build directory and not the source directory. Signed-off-by: Tobias Klauser Acked-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 7d51b77ae10574c90a4dc01993458de3ce5cff16 Author: Zac Storer Date: Sun Jun 19 03:23:20 2011 -0600 Staging: keucr: usb: fixed a brace coding style warning Fixed a brace coding style warning. Signed-off-by: Zac Storer Signed-off-by: Greg Kroah-Hartman commit 1c50bf7e415cf6ce9545dbecc2ac0d89d3916c53 Author: Larry Finger Date: Sat Jun 18 22:34:34 2011 -0500 staging: r8192e_pci: Handle duplicate PCI ID 0x10ec:0x8192 conflict with rtl8192se There are two devices with PCI ID 0x10ec:0x8192, namely RTL8192E and RTL8192SE. The method of distinguishing them is by the revision ID at offset 0x8 of the PCI configuration space. If the value is 0x10, then the device uses rtl8192se for a driver. Signed-off-by: Larry Finger Cc: Stable Signed-off-by: Greg Kroah-Hartman commit ad3a245c356d23f26fe637dd6d6402c2e1b3c03f Author: Wanlong Gao Date: Sun Jun 19 18:11:58 2011 +0800 drivers:rtl8192u:remove the use of obsolete create_workqueue in ieee80211_softmac.c Remove the use of obsolete create_workqueue(name, 0) interface in ieee80211_softmac.c, since it has changed. Signed-off-by: Wanlong Gao Signed-off-by: Greg Kroah-Hartman commit 2e8b6b4785b2e8467a21ae74002757096fde2d92 Author: Wanlong Gao Date: Sun Jun 19 18:11:57 2011 +0800 drivers:rtl8192u:remove the use of obsolete create_workqueue in r8192U_core.c Remove the use of obsolete create_workqueue(name, 0) interface in r8192U_core.c, since it has changed. Signed-off-by: Wanlong Gao Signed-off-by: Greg Kroah-Hartman commit bf8996dc2419083f2d4d5e7d271c7156a92a268e Author: Wanlong Gao Date: Sun Jun 19 18:11:56 2011 +0800 drivers:rtl8187se:remove the use of obsolete create_workqueue in ieee80211_softmac.c Remove the use of obsolete create_workqueue(name, 0) in ieee80211_softmac.c, since the create_workqueue interface has changed. Signed-off-by: Wanlong Gao Signed-off-by: Greg Kroah-Hartman commit d5a76f335105f4dd92082299c6f9fbdc6eb4f4b9 Author: Joe Perches Date: Thu Jun 23 11:40:19 2011 -0700 staging: transciever/transceiver spelling fixes Just tyops. Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit b95d2117e1cdb7b6a4f5b90a64586c769683083f Author: Tobias Klauser Date: Thu Jun 16 10:19:55 2011 +0200 Staging: altera-stapl: Remove superfluous comment from Kconfig Same text as for the config ALTERA_STAPL entry, so remove it. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit c5bde2388e5b77b39db1b615e2deda2c535f6f60 Author: Jerome Marchand Date: Fri Jun 10 15:28:49 2011 +0200 Staging: zram: Replace mutex lock by a R/W semaphore Currently, nothing protects zram table from concurrent access. For instance, ZRAM_UNCOMPRESSED bit can be cleared by zram_free_page() called from a concurrent write between the time ZRAM_UNCOMPRESSED has been set and the time it is tested to unmap KM_USER0 in zram_bvec_write(). This ultimately leads to kernel panic. Also, a read request can occurs when the page has been freed by a running write request and before it has been updated, leading to zero filled block being incorrectly read and "Read before write" error message. This patch replace the current mutex by a rw_semaphore. It extends the protection to zram table (currently, only compression buffers are protected) and read requests (currently, only write requests are protected). Signed-off-by: Jerome Marchand Signed-off-by: Greg Kroah-Hartman commit 924bd88d703e53d30f393fac6117f8f1bc79aab6 Author: Jerome Marchand Date: Fri Jun 10 15:28:48 2011 +0200 Staging: zram: allow partial page operations Commit 7b19b8d45b216ff3186f066b31937bdbde066f08 (zram: Prevent overflow in logical block size) introduced ZRAM_LOGICAL_BLOCK_SIZE constant to prevent overflow of logical block size on 64k page kernel. However, the current implementation of zram only allow operation on block of the same size as a page. That makes theorically legit 4k requests fail on 64k page kernel. This patch makes zram allow operation on partial pages. Basically, it means we still do operations on full pages internally, but only copy the relevent segments from/to the user memory. Signed-off-by: Jerome Marchand Signed-off-by: Greg Kroah-Hartman commit 8c921b2b43d47faa7c11eac1d2673bbe7fbc41dc Author: Jerome Marchand Date: Fri Jun 10 15:28:47 2011 +0200 Staging: zram: Refactor zram_read/write() functions This patch refactor the code of zram_read/write() functions. It does not removes a lot of duplicate code alone, but is mostly a helper for the third patch of this series (Staging: zram: allow partial page operations). Signed-off-by: Jerome Marchand Signed-off-by: Greg Kroah-Hartman commit 6a587e835e3a8ea2fe9e8fd038553f2090666bd5 Author: Jerome Marchand Date: Fri Jun 10 15:28:46 2011 +0200 Staging: zram: Remove useless offset calculation in handle_uncompressed_page() The offset of uncompressed page is always zero: handle_uncompressed_page() doesn't have to care about it. Signed-off-by: Jerome Marchand Signed-off-by: Greg Kroah-Hartman commit 67f72befc7b7c5c9bd9fcdc2642b79180a9b9678 Author: Roland Vossen Date: Wed Jun 29 16:47:56 2011 -0700 staging: brmc80211: cleaned up sdio related error codes Code cleanup. Replaced Broadcom proprietary error codes with Linux native ones. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 0c51cca851720522c4c3b37268aff2f3c384752c Author: Henry Ptasinski Date: Wed Jun 29 16:48:23 2011 -0700 staging: brcm80211: updated TODO file Updated TODO file to reflect current driver state, results of recent cleanup and fixes. Signed-off-by: Henry Ptasinski Signed-off-by: Greg Kroah-Hartman commit 37c962d195005d009e130e65a9e55960996c3cab Author: Roland Vossen Date: Wed Jun 29 16:48:22 2011 -0700 staging: brcm80211: fix for reported log spam problem Every few minutes, this message would appear in syslog: ieee80211 ph0: wl_ops_bss_info_changed: BSS idle: true (implement) The message has been deleted, the driver requires no special action on this particular event (). See: https://bugzilla.kernel.org/show_bug.cgi?id=38162 Reported-by: David Hill Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit a7ec965587af75b1a74ff4ef8f4c3c48b2e45239 Author: Arend van Spriel Date: Wed Jun 29 16:48:09 2011 -0700 staging: brcm80211: rename static functions in wl_cfg80211.c The static functions in wl_cfg80211.c starting with wl_ prefix have been renamed starting with brcmf_ prefix to be consistent. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 257ca7c93566d367d924099590a35586a8608a67 Author: Arend van Spriel Date: Wed Jun 29 16:48:07 2011 -0700 staging: brcm80211: remove unused macros from dhd_dbg.h cleanup of some unused macros. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 0b68818585d58c07ab8eb21355a8f0df027c22be Author: Roland Vossen Date: Wed Jun 29 16:48:05 2011 -0700 staging: brcm80211: removed last global function declaration in .c file Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit b9a74297521c822593f48bd42df46b06fcefcf51 Author: Roland Vossen Date: Wed Jun 29 16:47:57 2011 -0700 staging: brcm80211: removed global function declarations from .c files Code cleanup. Function declarations were moved to .h files. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit fb1d0aa25c1b2f659efb8fadd94dfe199d121044 Author: Arend van Spriel Date: Wed Jun 29 16:47:55 2011 -0700 staging: brcm80211: rename struct dhd_pub to struct brcmf_pub The structure dhd_pub has been renamed to have more consistent naming in the fullmac driver. This also remove the type definition for this structure. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit abfe18046cc847730e1073ec57a6100d40855862 Author: Arend van Spriel Date: Wed Jun 29 16:47:54 2011 -0700 staging: brcm80211: rename structure definitions in dhd_linux.c renamed structures to consitent naming convention and removed the structure type definitions. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit bb26354aae4becc94837fefaa3840cbc7283e2b1 Author: Arend van Spriel Date: Wed Jun 29 16:47:53 2011 -0700 staging: brcm80211: structure renaming in dhd.h structure have been renamed for consistency and the structure typedefs have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit c1b52f624e88357d5d2b057f1cdc6f1c8051cfa3 Author: Arend van Spriel Date: Wed Jun 29 16:47:52 2011 -0700 staging: brcm80211: remove unused macro definitions from dhd.h Several unused macro definitions have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 40695d1a121577a2b2c6ba54066a7c6808ac7351 Author: Arend van Spriel Date: Wed Jun 29 16:47:51 2011 -0700 staging: brcm80211: rename macro definitions in dhd.h The definitions in dhd.h have been renamed with consistent prefix BRCMF_. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit ec66c6fa9c138c4097814e2c3e224a8ddfe26bed Author: Arend van Spriel Date: Wed Jun 29 16:47:50 2011 -0700 staging: brcm80211: rename structure definitions in dhd.h Structure definitions in dhd.h have been prefixed with brcmf_ for consistent naming in fullmac driver and typedef of these structures has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 462dc314805b3f64032fab1e44f24c76fe5199ed Author: Arend van Spriel Date: Wed Jun 29 16:47:49 2011 -0700 staging: brcm80211: remove unused definitions from dhd.h Several defintions from dhd.h are not used in the fullmac driver and have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 56d52fcc6682f170495db6a1b26c3f50083e1160 Author: Arend van Spriel Date: Wed Jun 29 16:47:48 2011 -0700 staging: brcm80211: rename function variables The fullmac driver uses dhd as variable name for the driver instance in a number of functions. This has been changed to a more generic name as the dhd is not meaningful (broadcom internal name). Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit b7859cd9f20535a26effa1cc8a92780f5ca8b2f8 Author: Franky Lin Date: Wed Jun 29 16:47:47 2011 -0700 staging: brcm80211: clean up firmware download code in fullmac In brcmfmac the firmware download related code scatter all around. And some old dead code which is not following the standard firmware routine is still present. This patch limits the firmware download related code only in dhd_sdio.c and removes the rest. Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0f370346bbed6fa17f1e304156a7ce67b7a5ca96 Author: Franky Lin Date: Wed Jun 29 16:47:46 2011 -0700 staging: brcm80211: move sdio resource lock to dhd_sdio.c In fullmac the lock is for race condition for sdio interface. Move the code to dhd_sdio.c Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 08278881d3974ae29a5d40463a95ae27f4fc56df Author: Franky Lin Date: Wed Jun 29 16:47:45 2011 -0700 staging: brcm80211: move dpc code to dhd_sdio.c Dpc thread handles data transaction which should be placed in bus interface layer. Move related code to dhd_sdio.c for clean up. Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 913af5f7d4c99c1325618b660dcbd9b4672d476c Author: Franky Lin Date: Wed Jun 29 16:47:44 2011 -0700 staging: brcm80211: move debug console related code to dhd_sdio.c Debug console functionality is provided by dhd_sdio.c. So the related variables and iovars should go there as well. Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit ac49553441b342abcb9e821f132c1bbe3be58a68 Author: Franky Lin Date: Wed Jun 29 16:47:43 2011 -0700 staging: brcm80211: move fullmac watchdog timer code to dhd_sdio.c The watchdog timer is used in bus interface layer in fullmac. Move related code to dhd_sdio.c for clean up. Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b7adfa7608163a5eea78df36e149d1f118b55362 Author: Franky Lin Date: Wed Jun 29 16:47:42 2011 -0700 staging: brcm80211: move waitqueue code to dhd_sdio.c In fullmac waitqueue for tx control is used by bus interface layer only. So move the related code to dhd_sdio.c Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit ad3a7c4933ff67811d8ce4102d4d20292524bfb6 Author: Franky Lin Date: Wed Jun 29 16:47:41 2011 -0700 staging: brcm80211: move sdio related suspend/resume code to bus interface layer In fullmac some SDIO configurations should be done in suspend/resume routine. It was placed under pm ops in wl_cfg80211.c which is inappropriate. This patchs move them to sdio layer. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit cb645abd454fea5a625fd0921b19356680cb7241 Author: Arend van Spriel Date: Wed Jun 29 16:47:40 2011 -0700 staging: brcm80211: use linux native ethertype iso ETH_P_BRCM The linux native ethertype ETH_P_LINK_CTL is matching ETH_P_BRCM so lets use that definition and get rid of ETH_P_BRCM. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit c8796cbeabba6dd946b78edea71dbee90edabbf0 Author: Arend van Spriel Date: Wed Jun 29 16:47:39 2011 -0700 staging: brcm80211: rename EPI_VERSION_STR macro The fullmac version macro has been renamed and moved to dhd.h to get rid of having it defined in two separate c source files. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 67a646f0d381f8ec3080f379651661e030b29312 Author: Arend van Spriel Date: Wed Jun 29 16:47:38 2011 -0700 staging: brcm80211: remove conditional code fragments from brcmfmac The fullmac sources contained a lot of conditional code sections that are never to be enabled for the fullmac driver. These have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit e327ec2300d4b2ebe1731bd37dcc4a67d8da9975 Author: Arend van Spriel Date: Wed Jun 29 16:47:37 2011 -0700 staging: brcm80211: remove custom gpio support code The custom gpio code is intended for hardware platform for specific customers and require supporting functionality not included in the fullmac driver. The fullmac driver does not need this so it has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit a3e47e074e4dd9e2fe630e74cf1e146fb192a8af Author: Arend van Spriel Date: Wed Jun 29 16:47:36 2011 -0700 staging: brcm80211: remove unnecessary macro defintions The common makefile and the fullmac makefile contained a few macro definitions that are not or no longer used. These are removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 762c2a36d1af2496ccb3edae31f94f17c47e1a13 Author: Arend van Spriel Date: Wed Jun 29 16:47:35 2011 -0700 staging: brcm80211: replace DHD_DEBUG macro with BCMDBG The common Makefile for both brcm80211 drivers defines the macro BCMDBG upon select Kconfig item BRCMDBG. The fullmac source add another macro DHD_DEBUG with the same meaning. This is removed and all conditional code now checks for BCMDBG definition. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit ca9c786dc24c286a55a36d1a99fa9e85e94fee31 Author: Arend van Spriel Date: Wed Jun 29 16:47:34 2011 -0700 staging: brcm80211: define SHOW_EVENTS macro only for debugging The macro SHOW_EVENTS will only be defined when Kconfig setting BRCMDBG is set. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 68d0a2490a6d3a873596339a5f1847411002365d Author: Arend van Spriel Date: Wed Jun 29 16:47:33 2011 -0700 staging: brcm80211: remove TOE macro definition The code conditional by TOE macro is always needed so TOE macro usage has been removed from the fullmac sources. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit e2f3d544d83e2fa4f99752f291953eac3ceeeab7 Author: Arend van Spriel Date: Wed Jun 29 16:47:32 2011 -0700 staging: brcm80211: remove MMC_SDIO_ABORT macro definition The fullmac driver is always needing the code conditionalized with MMC_SDIO_ABORT macro so the macro has been removed and the code is always compiled in. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 248dcbb0ed24023c9e01133fd11b9e7e3c12d40a Author: Arend van Spriel Date: Wed Jun 29 16:47:31 2011 -0700 staging: brcm80211: remove EMBEDDED_PLATFORM macro definition The macro is always intended to be defined so no need for it. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 9922af4bc2b7820c5a7ebd7e1823b4b4dcc720da Author: Arend van Spriel Date: Wed Jun 29 16:47:30 2011 -0700 staging: brcm80211: remove DHD_SCHED macro definition The fullmac driver now always uses scheduler functionality. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit e0d319f5c7d59756d27f29bd40ea539c090a7c98 Author: Arend van Spriel Date: Wed Jun 29 16:47:29 2011 -0700 staging: brcm80211: always enable code for PLATFORM_BUS functionality Some code is conditionally compiled in upon defintion of PLATFORM_BUS macro. This patch will have it compiled in unconditionally. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit f3341e71f079798605e26519c49bacf398f25b72 Author: Arend van Spriel Date: Wed Jun 29 16:47:28 2011 -0700 staging: brcm80211: remove BCMLXSDMMC macro definition The conditional code depending on BCMLXSDMMC macro definition is always compiled into the fullmac driver. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 8af2d2a502167d901a34ecb658ea8c8a9d64734a Author: Arend van Spriel Date: Wed Jun 29 16:47:27 2011 -0700 staging: brcm80211: remove PKT_FILTER_SUPPORT macro definition Packet filtering support is now always compiled into the fullmac driver. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 523a29ed1e50ac66a06456d78f82d4c6a12d2ab3 Author: Arend van Spriel Date: Wed Jun 29 16:47:26 2011 -0700 staging: brcm80211: remove ARP_OFFLOAD_SUPPORT macro definition The conditional code for ARP offloading is now always enabled in the fullmac driver. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 8d825a8e09f923dfc9af1135654516b7cbafed0f Author: Arend van Spriel Date: Wed Jun 29 16:47:25 2011 -0700 staging: brcm80211: further renaming in fullmac sources couple of items needed renaming to more consistent naming convention. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 51851250f9838202acb03308b8011dacddd54ad4 Author: Roland Vossen Date: Wed Jun 29 16:47:24 2011 -0700 staging: brcm80211: replaced more sdio related typedefs by structs Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 3c793822fe4821ef5213f08b1183a1424c5ac614 Author: Roland Vossen Date: Wed Jun 29 16:47:23 2011 -0700 staging: brcm80211: replaced typedef SDIOH_API_RC by int Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 896500474bd6d770e1053d01c2c4a63e2c8cda97 Author: Roland Vossen Date: Wed Jun 29 16:47:22 2011 -0700 staging: brcm80211: replaced typedef by struct for several sdio types Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 677226aa96bf143900e1f45aed11ac4b3ac96fa9 Author: Roland Vossen Date: Wed Jun 29 16:47:21 2011 -0700 staging: brcm80211: replaced typedef bcmsdh_info_t by struct brcmf_sdio Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 294f24392326731b690fc47adf4dcb76fe4201fe Author: Roland Vossen Date: Wed Jun 29 16:47:20 2011 -0700 staging: brcm80211: replaced typedef sdioh_info_t by struct sdioh_info Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 7af9d0caf7c61ed19b7915b5097000b556d3b962 Author: Arend van Spriel Date: Wed Jun 29 16:47:19 2011 -0700 staging: brcm80211: rename more brcmfmac module parameters Renamed remaining brcmfmac module parameters to more consistent naming convention. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit db62efcc10645ab09f7548a3431dc88c8f7fe259 Author: Arend van Spriel Date: Wed Jun 29 16:47:18 2011 -0700 staging: brcm80211: rename static functions in dhd_linux.c functions in dhd_linux.c are renamed according more consistent naming convention. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit fc2860a978f55b2198579a8a1e9a31de4279a500 Author: Arend van Spriel Date: Wed Jun 29 16:47:17 2011 -0700 staging: brcm80211: rename netdevice related functions in fullmac Change functions related to netdevice in fullmac to more consistent naming convention. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 81cc4650ca808ea3105df5e4ee56b1851b1b2859 Author: Arend van Spriel Date: Wed Jun 29 16:47:16 2011 -0700 staging: brcm80211: remove conditional SIMPLE_ISCAN code Code between #ifdef SIMPLE_ISCAN is not enabled and unnecessary. It has been removed from the fullmac driver. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit e35efc81f3752577c25527b9b460fffee83cc6a5 Author: Arend van Spriel Date: Wed Jun 29 16:47:15 2011 -0700 staging: brcm80211: rename dhd_prot and get rid of dhd_prot_t typedef The structure dhd_prot has been renamed to brcmf_proto to align with fullmac naming convention and removed structure typedef dhd_prot_t. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit b8b5418b5b174dcadd4bc230e57c2fc08a7d6c96 Author: Arend van Spriel Date: Wed Jun 29 16:47:14 2011 -0700 staging: brcm80211: get rid of PKT[TO/FROM]NATIVE macros These macros are not needed in a linux-only driver and have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 0aa94b8484d353b56ec58d6d9a846f050cc06e83 Author: Arend van Spriel Date: Wed Jun 29 16:47:13 2011 -0700 staging: brcm80211: rename fullmac protocol related functions The fullmac functions for firmware communication protocol handling have been renamed to make naming more consistent. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit fa04cb9ee70bf2ba308ce7e4765c9b47c7e44551 Author: Roland Vossen Date: Wed Jun 29 16:47:12 2011 -0700 staging: brcm80211: removed BDC defines Code cleanup. BDC (Broadcom Device Class) protocol extension is used on top of the USB related CDC (Communication Device Class) definition. BDC is always used, so the #ifdefs were redundant. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 933a1333ec8386866b609fe3f95541dbbb523a74 Author: Arend van Spriel Date: Wed Jun 29 16:47:11 2011 -0700 staging: brcm80211: remove unused prototypes from dhd.h A couple of prototypes are not defined or not used and have been removed from the driver. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit a84bac460364cad4a3954281808dec7395499178 Author: Arend van Spriel Date: Wed Jun 29 16:47:10 2011 -0700 staging: brcm80211: rename fullmac functions The function provided by dhd_linux.c have been renamed to make the naming throughout the driver more consistent and remove Broadcom specific acronyms which are not meaningful. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 15cf23d5f2fa3f0990aeab540d6ef1d444524b25 Author: Arend van Spriel Date: Wed Jun 29 16:47:09 2011 -0700 staging: brcm80211: remove unnecessary abstraction for scheduler The source dhd_linux_sched.c provided function setScheduler, but it simply calls sched_setscheduler() linux function. The setScheduler() function has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 5e92aa8c6584b9a5d861c971c3dbfc18f5c57b5a Author: Arend van Spriel Date: Wed Jun 29 16:47:08 2011 -0700 staging: brcm80211: rename module parameters Fullmac source is renamed to be consistent throughout the driver. This commit renames the modules parameters for module loading. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 05dc0f4346428077611410745c7726c2a0bdb282 Author: Arend van Spriel Date: Wed Jun 29 16:47:07 2011 -0700 staging: brcm80211: rename event handling definition Renaming fullmac to have more consistent naming throughout the driver. This commit renames identifiers related to firmware event handling. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 96a6062b877a4b1bfd09b9b0d188dc44847fd2b1 Author: Arend van Spriel Date: Wed Jun 29 16:47:06 2011 -0700 staging: brcm80211: replace macro BCM_MSG_IFNAME_MAX with IFNAMSIZ In dhd.h the macro BCM_MSG_IFNAME_MAX was defined and used. As this is used to carry the interface name we might as well use IFNAMSIZ which results in the same size. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 4aae86b437b5b2fd5985e04af04c3a9c632bff3e Author: Arend van Spriel Date: Wed Jun 29 16:47:05 2011 -0700 staging: brcm80211: remove unused definitions from dhd.h The header file dhd.h contained a number of macro definitions that are not used within the driver and have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 366bbb3f07f05f5171ce4fd6a68bcd627b1aba6a Author: Arend van Spriel Date: Wed Jun 29 16:47:04 2011 -0700 staging: brcm80211: rename ioctl command codes in dhd.h The naming convention in the driver is to be aligned. This commit changes the prefix used for the ioctl command codes. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit aba5e0ad64546283a6fc2532afef48501c399990 Author: Arend van Spriel Date: Wed Jun 29 16:47:03 2011 -0700 staging: brcm80211: rename functions and variables in dhd_common.c The naming convention of the drivers is to be made consistent. This commit fixes the function in dhd_common.c and use the new names from the calling code. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit e51b3e52fd657845a1a7319563915c54d2b6a93b Author: Arend van Spriel Date: Wed Jun 29 16:47:02 2011 -0700 staging: brcm80211: remove extern function prototypes from c files It is not recommended to specify function prototypes in c sources using the extern keyword. Several occurrences have been removed or placed in a header file or simply removed as it was already present in a header file. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 6608a2f1a02a9d3e6efe692860abc810bb74afb4 Author: Arend van Spriel Date: Wed Jun 29 16:47:01 2011 -0700 staging: brcm80211: remove unused globals from dhd_common.c Three global variable were defined but never used and have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit c12c445e003d893d0b443098f7c6e9847bf428a8 Author: Arend van Spriel Date: Wed Jun 29 16:47:00 2011 -0700 staging: brcm80211: remove dhd_set_timer function prototype This function prototype is not implemented nor referenced in the brcmfmac driver so it has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 54ca2969134c70d96609161f4093b31aca038ea1 Author: Roland Vossen Date: Wed Jun 29 16:46:59 2011 -0700 staging: brcm80211: replaced prefix of SDIO related functions Code cleanup. Prefixed functions with brcmf_ for unique namespace. In addition to that, prefix has been changed to categorize functions depending on their place in the drivers SDIO stack. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 7faf8c5b724b52b62d7e0d9c98b9f47d8004deb0 Author: Arend van Spriel Date: Wed Jun 29 16:46:58 2011 -0700 staging: brcm80211: remove wireless extensions support from brcmfmac The brcmfmac driver contained functions for wireless extensions support. However, brcmfmac is intended to be a cfg80211 driver so all the entire source file is obsolete. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 94174c21fba133da961eedf4fdb217b5953d8a22 Author: Arend van Spriel Date: Wed Jun 29 16:46:57 2011 -0700 staging: brcm80211: correct bcmsdh_recv_buf() calls The calls in dhd_sdio.c to bcmsdh_recv_buf() function passed a wrong handle. The parameter in the function prototype was typed as void pointer so compiler could not detect. This patch makes the type explicit and fixes the calls to the function. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 4c5c488a3c0fdcbdce0e212c0e99c01cffce2039 Author: Henry Ptasinski Date: Wed Jun 29 16:46:56 2011 -0700 staging: brcm80211: reorg brcms_c_validboardtype for clarity The structure of the function made it difficult to understand, so reorganize it to make it clearer. Reported-by: Greg Dietsche Signed-off-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 521223a27a760658e04e65d8deaf5339070f15f6 Author: Henry Ptasinski Date: Wed Jun 29 16:46:55 2011 -0700 staging: brcm80211: remove unnecessary null check kfree(NULL) is safe, and the rest of the cleanup should be done regardless to make sure the state is consistent. Signed-off-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 202a208bd2888b6b72355bb1849f641606da928f Author: Henry Ptasinski Date: Wed Jun 29 16:46:54 2011 -0700 staging: brcm80211: flatten wlc_phy_shared_detach() wlc_phy_shared_detach() is an unnecessary level of indirection to just call kfree(), so replace the function with kfree(). Signed-off-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit aa51bffb6382ef13d3e61035b3b2c2a1619a21ea Author: Henry Ptasinski Date: Wed Jun 29 16:46:53 2011 -0700 staging: brcm80211: add missing KERN_ facility level to printk() Debug printk() call was missing KERN_DEBUG facility level. Signed-off-by: Henry Ptasinski Signed-off-by: Greg Kroah-Hartman commit e131d3ce3a56e74c1f95380af1957a0c4a936a09 Author: Henry Ptasinski Date: Wed Jun 29 16:46:52 2011 -0700 staging: brcm80211: cleanup whitespace errors Cleanup remaining whitespace errors: - space before tabs - spaces at the start of a line - space between function name and open parenthesis '(' - unnecessary whitespace before a quoted newline Signed-off-by: Henry Ptasinski Signed-off-by: Greg Kroah-Hartman commit 8a76f1eee1cb8933fb22d1211fdb4358513c3239 Author: Henry Ptasinski Date: Wed Jun 29 16:46:51 2011 -0700 staging: brcm80211: run scripts/cleanfile to remove whitespace errors Used scripts/cleanfile to remove assorted whitespace errors. Signed-off-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit afe6867f969009c5a4cad520179801c782ca63aa Author: Henry Ptasinski Date: Wed Jun 29 16:46:50 2011 -0700 staging: brcm80211: delete empty brcmfmac/README file brcm80211/brcmfmac/README contents were move to brcm80211/README previously, but this empty file is still around. Signed-off-by: Henry Ptasinski Signed-off-by: Greg Kroah-Hartman commit 54cbb66b4b94adac7d4e5aa43a5e0c86802cfd1a Author: Henry Ptasinski Date: Wed Jun 29 16:46:49 2011 -0700 staging: brcm80211: removed unneeded 'if' statement The 'if' is unnecessary, since no action is taken as a result of the test. Signed-off-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e52d30f2f18b082e12c3ecce1f14a0ab39616353 Author: Roland Vossen Date: Wed Jun 29 16:46:48 2011 -0700 staging: brcm80211: Changed comments Code cleanup. BCM4321 is not supported by this driver. Removed 'XXX' in comments since they do not signal a critical issue to be patched. Removed FIXME in comment since it signalled a problem in the Minstrel algorithm, not in our driver. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 94daaf708bf9d9e642a142b64852f8e60154a890 Author: Roland Vossen Date: Wed Jun 29 16:46:47 2011 -0700 staging: brcm80211: corrected tx status feedback for non AMPDU packets Code still contained a 'FIXME' label that said tx status feedback (consumed by the rate control algorithm) was not yet taking RTS/CTS into account. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b15c75830d235fce61d0ee8e326e758cd50e7af4 Author: Roland Vossen Date: Wed Jun 29 16:46:46 2011 -0700 staging: brcm80211: taking max AMPDU length advertized by peer into account AP advertizes max AMPDU rx length in beacon/probe response frame. Code now uses this information to limit the length of AMPDU frames it transmits. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e52f408bf689438a9f6aa36c0e4af6ae61b4413c Author: Roland Vossen Date: Wed Jun 29 16:46:45 2011 -0700 staging: brcm80211: parsed ADDBA response ack window parameter IEEE80211_AMPDU_TX_OPERATIONAL provides a BA window size parameter. Code is now using this parameter to restrict the amount of outstanding tx AMPDUs. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 47a6d2cdc703d16b29114a551218e34d43007ae4 Author: Arend van Spriel Date: Wed Jun 29 16:46:44 2011 -0700 staging: brcm80211: move assert function to dhd_linux.c The source file wl_iw.c is primarily intended to provide wireless extensions functionality, which is to be removed from the driver. The assert function is moved to another source file. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit f10c5b0b419116015bd2bfc2b054a81f7a690ca8 Author: Arend van Spriel Date: Wed Jun 29 16:46:43 2011 -0700 staging: brcm80211: get rid on IS_CFG80211_FAVORITE macro cfg80211 module is always favorite for the brcmfmac driver so the macro is not needed to know the answer. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit f70a456a8829411fe9a18ca1ffcefbb1e960e715 Author: Arend van Spriel Date: Wed Jun 29 16:46:42 2011 -0700 staging: brcm80211: remove macro definition DRV_MODULE_NAME The macro definition DRV_MODULE_NAME has exactly the same value as KBUILD_MODNAME so using that instead now. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit edb3f7cf0415ec6ca51dcfd6d8c4337a078a708a Author: Arend van Spriel Date: Wed Jun 29 16:46:40 2011 -0700 staging: brcm80211: remove macro FOREACH_AS_STA The macro definition FOREACH_AS_STA does an assignment inside the if condition, which is considered a checkpatch error. It has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 5b5195a57b8144a59e7c0cf9599aeeaac6afaa8a Author: Arend van Spriel Date: Wed Jun 29 16:46:39 2011 -0700 staging: brcm80211: remove chip simulation specific code The driver contained several code paths specific to running the driver against a simulated chip. This is not needed and removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 116167a37761a3958516467af9fc7becfc544147 Author: Arend van Spriel Date: Wed Jun 29 16:46:38 2011 -0700 staging: brcm80211: remove unused macro definitions from pmu.c The source file pmu.c contained a large number of definitions that are no longer needed and have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit aef6829a9086b16bd73d02c0df2b556eecb4f5d4 Author: Arend van Spriel Date: Wed Jun 29 16:46:37 2011 -0700 staging: brcm80211: remove code from pmu.c related to unsupported chipsets The pmu source file contains several code fragments for chipsets that are not supported by this driver. These have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit db3cbaa469a21078db8c16f5f10a95643df0e8a2 Author: Arend van Spriel Date: Wed Jun 29 16:46:36 2011 -0700 staging: brcm80211: remove otp power control functions For the devices supported by brcmsmac driver the OTP device is always powered. Functions for reading power status and changing it are not needed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit c2c724977f95135f397fe0cb45f3c041d26b91e1 Author: Arend van Spriel Date: Wed Jun 29 16:46:35 2011 -0700 staging: brcm80211: remove unsupported chipset code from brcmsmac phy the phy sources contained some code fragments for chipsets that are not supported by this driver, which have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 763456a66c67af60a46991c4877c9edc4ce07b38 Author: Arend van Spriel Date: Wed Jun 29 16:46:34 2011 -0700 staging: brcm80211: remove code for unsupported chipsets from brcmsmac The brcmsmac driver code contains code fragments for chipsets that are not supported. These have been removed from the brcmsmac source files. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit bd41f6483092d648595e088732c0d7112da9a3db Author: Franky Lin Date: Wed Jun 29 16:46:33 2011 -0700 staging: brcm80211: remove unused files from fullmac aiutils.c and pcicfg.h are no longer needed by fullmac Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0f1a87cc2e079e3df0723239edba36fe4178c7a7 Author: Franky Lin Date: Wed Jun 29 16:46:32 2011 -0700 staging: brcm80211: move sdtxqlock codes to dhd_sdio.c Move sdio specific tx queue lock codes to dhd_sdio.c for fullmac Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7269178cc67197d0c4bf1128302fc7ffe6b28b9c Author: Franky Lin Date: Wed Jun 29 16:46:31 2011 -0700 staging: brcm80211: remove empty sdrxqlock from fullmac Remove empty lock functions for sdio rx queue Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5bf2b52fbe71ee2963ee5f0dbec45bb560364adf Author: Franky Lin Date: Wed Jun 29 16:46:30 2011 -0700 staging: brcm80211: remove unused sdtxlock from fullmac Unused sdtx lock functions are removed from dhd_linux.c Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 66671fc120938c740edf8bb8191262fdf893441b Author: Arend van Spriel Date: Wed Jun 29 16:46:29 2011 -0700 staging: brcm80211: make use of linux error codes in srom.c The source file srom.c used meaningless non-zero numbers to return upon error conditions. These have been replaced by linux error codes. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit fa0ace7fd3b9cfbe3b2d117af7eac4a132558a1b Author: Arend van Spriel Date: Wed Jun 29 16:46:28 2011 -0700 staging: brcm80211: minor cleanup in initvars_srom_pci() The error handling code labelled with errout: did a conditional kfree(). The last error jump to the label is upon failure of the kmalloc() for which the conditional kfree() is done. Therefor, the kfree is moved before the error label and done unconditionally. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit fb10e59111870a51f0eb7bcc046b6b7eb39dfa3e Author: Arend van Spriel Date: Wed Jun 29 16:46:27 2011 -0700 staging: brcm80211: remove flash related code from initvars_srom_pci() The function initvars_srom_pci() has fallback to obtain drivers settings from flash when no srom device is present. However, this driver does not support flash so the fallback code can be removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 579c83f5059b62db0b4eeae3b135f665b13e8a18 Author: Sukesh Srikakula Date: Wed Jun 29 16:46:26 2011 -0700 staging: brcm80211: brcmfmac: CONNECTING status bit is set at appropriate location 'WL_STATUS_CONNECTING' status bit is set at appropriate step in bss/ibss connect requests. Signed-off-by: Sukesh Srikakula Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 35491d32d6066cb7b422034a45b0c77719f6e9ee Author: Arend van Spriel Date: Wed Jun 29 16:46:25 2011 -0700 staging: brcm80211: fix checkpatch errors in types.h The file types.h contains several occurrences of the checkpatch error "(foo*)" should be "(foo *)". This has been fixed in this patch. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit cc193a4d65c4d74c54113939b07209456fbfcb51 Author: Joe Perches Date: Tue Jul 5 09:42:14 2011 -0700 MAINTAINERS: Remove se401 entry Commit b287db119edb ("se401: remove last V4L1 driver") removed the files, remove the entry. cc: Hans Verkuil cc: Mauro Carvalho Chehab Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 709bcb07e423d8f7ede29a28c831fe66ac172aba Author: Joe Perches Date: Tue Jul 5 09:42:13 2011 -0700 MAINTAINERS: Add STAGING - XGI Z7,Z9,Z11 PCI DISPLAY DRIVER Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit c8c8b1051d065add61f6295b3c8d50e3907dc56e Author: Joe Perches Date: Tue Jul 5 09:42:12 2011 -0700 MAINTAINERS: Add STAGING - AGERE HERMES II and II.5 WIRELESS DRIVERS Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 81a9a526242ede7eb62aa9be265bb99db55f8b37 Author: Joe Perches Date: Tue Jul 5 09:42:11 2011 -0700 MAINTAINERS: Add STAGING - WINBOND IS89C35 WLAN USB DRIVER Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit b3e871ce055ddf5023b67bd19d851ac20e43b3e7 Author: Joe Perches Date: Tue Jul 5 09:42:10 2011 -0700 MAINTAINERS: Add STAGING - VIA VT665X DRIVERS Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 9629fa86504a29e368916a41833c3b0434a95801 Author: Joe Perches Date: Tue Jul 5 09:42:09 2011 -0700 MAINTAINERS: Add STAGING - SILICON MOTION SM7XX FRAME BUFFER DRIVER Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 29e7017b81594c4b01717a2b3bbb7ba185a3b812 Author: Joe Perches Date: Tue Jul 5 09:42:08 2011 -0700 MAINTAINERS: Add STAGING - PARALLEL LCD/KEYPAD PANEL DRIVER Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 6c1bb42417a9c0de07136f50829cea75ffebc588 Author: Joe Perches Date: Tue Jul 5 09:42:07 2011 -0700 MAINTAINERS: Add STAGING - INDUSTRIAL IO Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 45f1139e402920b6d3fe0b1107f653f6509febbe Author: Joe Perches Date: Tue Jul 5 09:42:06 2011 -0700 MAINTAINERS: Add STAGING - HYPER-V (MICROSOFT) Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit ec3fab920d614a5d4ef2a2e352150a5599f48aae Author: Joe Perches Date: Tue Jul 5 09:42:05 2011 -0700 MAINTAINERS: Add STAGING - FRONTIER TRANZPORT AND ALPHATRACK Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 0f16ffc41d4ee6e4d2832a7a569b01d62fca898b Author: Joe Perches Date: Tue Jul 5 09:42:04 2011 -0700 MAINTAINERS: Add STAGING - ECHO CANCELLER Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 8ca572c92089c1b8e7ae92ccdcddf3ab5a7b9385 Author: Joe Perches Date: Tue Jul 5 09:42:03 2011 -0700 MAINTAINERS: Add STAGING - CRYSTAL HD VIDEO DECODER Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit ebd3d0108f134f2109051f618028128537f91ab1 Author: Joe Perches Date: Tue Jul 5 09:42:02 2011 -0700 MAINTAINERS: Add STAGING - COMEDI Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit c9555159591a044bffa9674db25f3e6329070fc3 Author: Joe Perches Date: Tue Jul 5 09:42:01 2011 -0700 MAINTAINERS: Add STAGING - ASUS OLED Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit a142785d7c9dd572a5dd963f7142174901465006 Author: Matthew Skolaut Date: Wed Jun 22 03:32:01 2011 -0500 Staging: comedi: das1800: fixed multiple brace coding style issues and pointer declaration style errors Fixed coding style issues Signed-off-by: Matthew Skolaut Signed-off-by: Greg Kroah-Hartman commit ee4d07d8e1c72043299ac4118fbdee0ad883e966 Author: Ravishankar Date: Tue Jul 5 19:22:49 2011 +0530 Staging: comedi: fix prink warning style issue in ni_daq_700.c This is a patch to the ni_daq_700.c file that fixes up a prink warning found by the checkpatch.pl tool Signed-off-by: Ravishankar Signed-off-by: Greg Kroah-Hartman commit 3297d6c7c84a2a3f62b41b703a2963759e822e96 Author: Randy Dunlap Date: Sat Jul 2 11:44:36 2011 -0700 staging: fix comedi NI labpc driver build when ISA_DMA_API is not enabled Fix ni_labpc.c to build when CONFIG_ISA_DMA_API is not enabled. This is a driver that supports both ISA and PCI devices. It now builds when for PCI-only support or for both ISA and PCI device support. (It does not support ISA-only without PCI.) Signed-off-by: Randy Dunlap Cc: Ian Abbott Cc: Frank Mori Hess Signed-off-by: Greg Kroah-Hartman commit 819cbb120eaec7e014e5abd029260db1ca8c5735 Author: Vasiliy Kulikov Date: Sun Jun 26 12:56:22 2011 +0400 staging: comedi: fix infoleak to userspace driver_name and board_name are pointers to strings, not buffers of size COMEDI_NAMELEN. Copying COMEDI_NAMELEN bytes of a string containing less than COMEDI_NAMELEN-1 bytes would leak some unrelated bytes. Signed-off-by: Vasiliy Kulikov Cc: stable Signed-off-by: Greg Kroah-Hartman commit 85678d5d27cb0ea1005316f51b1b062bf4609b66 Author: Dan Carpenter Date: Thu Jun 30 12:02:05 2011 +0300 Staging: comedi: usbdux: release locks on error paths Smatch complains about a couple error paths where the semaphores were not released. Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit 880e96166c2cd1d84df0ccb02d413dcbf422796b Author: Prashant P. Shah Date: Mon Jun 13 12:59:43 2011 +0530 Staging: comedi: add dyna_pci10xx driver to Makefile Add dyna_pci10xx entry to comedi Kconfig and Makefile Signed-off-by: Prashant P. Shah Signed-off-by: Greg Kroah-Hartman commit 16a7373a8e1420cde99001759ec0eaf56f8931a5 Author: Prashant P. Shah Date: Mon Jun 13 12:58:50 2011 +0530 Staging: comedi: add dyna_pci10xx driver For Dynalog PCI DAQ cards: PCI-1050 Signed-off-by: Prashant P. Shah Reviewed-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit e4d59ac5c6bbb671b61108dad0c7cd33c753ce22 Author: Haiyang Zhang Date: Fri Jun 17 07:58:04 2011 -0700 staging: hv: fix some white spaces in netvsc driver Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit e56269a62f8a272634042efbc8401e332d76b782 Author: Jesper Juhl Date: Fri Jun 24 00:52:14 2011 +0200 Remove unneeded version.h include from drivers/staging/hv/hv_timesource.c It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/hv/hv_timesource.c . This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit bd96efe17d945f0bad56d592f8686dc6309905e7 Author: Frederic Weisbecker Date: Tue Jul 5 17:45:34 2011 +0200 xtensa: Use generic config PREEMPT definition So that it can handle the new CONFIG_PREEMPT_COUNT. Signed-off-by: Frederic Weisbecker Cc: Chris Zankel commit e22c8f4616c8e68b7659331409e9c081ce265498 Author: Frederic Weisbecker Date: Tue Jul 5 17:45:34 2011 +0200 h8300: Use generic config PREEMPT definition So that it can handle the new CONFIG_PREEMPT_COUNT. Signed-off-by: Frederic Weisbecker Cc: Yoshinori Sato commit dab16ae1a9fc72a9f419f2dff91854e452d02a5e Author: Frederic Weisbecker Date: Tue Jul 5 16:29:40 2011 +0200 m32r: Use generic PREEMPT config Use the generic preempt config definition in m32r instead of using a custom one. This also makes it handle the new CONFIG_PREEMPT_COUNT that need to be selected by CONFIG_PREEMPT. Without that it breaks kernel/sched.c: In function 'preempt_schedule': kernel/sched.c:4364: error: implicit declaration of function 'add_preempt_count_notrace' kernel/sched.c:4366: error: implicit declaration of function 'sub_preempt_count_notrace' Reported-by: Ingo Molnar Signed-off-by: Frederic Weisbecker Cc: Hirokazu Takata commit 91fd799eb12bd43b3dfda368abb06d2a7d864462 Author: K. Y. Srinivasan Date: Thu Jun 16 13:16:38 2011 -0700 Staging: hv: vmbus: Properly handle the error in hv_acpi_init() Properly handle the error in hv_acpi_init(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9079ce691255792009c446d8c3382507b8d38635 Author: K. Y. Srinivasan Date: Thu Jun 16 13:16:37 2011 -0700 Staging: hv: netvsc: Fix a bug in accounting transmit slots The transmit slots were manipulated without proper locking. Fix this bug by making the variable tracking the transmit slots atomic. This patch should be ported to prior stable kernels 2.6.32 and later. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Cc: stable Signed-off-by: Greg Kroah-Hartman commit 46d2eb6d82ef44be58ae192c35e8cd52485f02eb Author: K. Y. Srinivasan Date: Thu Jun 16 13:16:36 2011 -0700 Staging: hv: storvsc: Increase the timeout value in the storvsc driver On some loaded windows hosts, we have discovered that the host may not respond to guest requests within the specified time (one second) as evidenced by the guest timing out. Fix this problem by increasing the timeout to 5 seconds. It may be useful to apply this patch to the 3.0 kernel as well. the 3.0 kernel as well. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Cc: stable Signed-off-by: Greg Kroah-Hartman commit 5c5781b3f88567211ecaaada13431af15c8c6003 Author: K. Y. Srinivasan Date: Thu Jun 16 13:16:35 2011 -0700 Staging: hv: netvsc: Increase the timeout value in the netvsc driver On some loaded windows hosts, we have discovered that the host may not respond to guest requests within the specified time (one second) as evidenced by the guest timing out. Fix this problem by increasing the timeout to 5 seconds. It may be useful to apply this patch to the 3.0 kernel as well. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Cc: stable Signed-off-by: Greg Kroah-Hartman commit 2dfde9644fe8c4a77f9c73f95b25d6300ca23b5d Author: K. Y. Srinivasan Date: Thu Jun 16 13:16:34 2011 -0700 Staging: hv: vmbus: Increase the timeout value in the vmbus driver On some loaded windows hosts, we have discovered that the host may not respond to guest requests within the specified time (one second) as evidenced by the guest timing out. Fix this problem by increasing the timeout to 5 seconds. It may be useful to apply this patch to the 3.0 kernel as well. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Cc: stable Signed-off-by: Greg Kroah-Hartman commit df50567797be6d883364162176fd5e8a76ee751b Author: Kalle Valo Date: Thu Jun 30 11:41:26 2011 +0300 staging: remove reference to cs5535_gpio makefile The driver was removed but 'make clean' still failed: scripts/Makefile.clean:17: [...]/drivers/staging/cs5535_gpio/Makefile: No such file or directory make[3]: *** No rule to make target `[...]/drivers/staging/cs5535_gpio/Makefile'. Stop. Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit 7d4df4ef4ad1a0489a9c22e32d55a5060a4830a1 Author: Jani Nikula Date: Tue Jul 5 15:39:31 2011 +0100 gma500: fix build without backlight device support gma500: fix build without backlight device support Fix unmatched curly brackets when CONFIG_BACKLIGHT_CLASS_DEVICE is not defined. Signed-off-by: Jani Nikula Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9fdc5ff8b9082150a12d11c3a0ea429429bb8456 Author: Alan Cox Date: Tue Jul 5 15:45:13 2011 +0100 gma500: power can be touched in IRQ state So we need to use a spinlock here Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 398c44248984a18876059724519f87c79b859deb Author: Alan Cox Date: Tue Jul 5 15:45:00 2011 +0100 gma500: Fix missing memory check Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 52b6ba09eeba5d48dd8f20cf07a85e81b7acacf4 Author: Alan Cox Date: Tue Jul 5 15:44:46 2011 +0100 gma500: Workaround for Medfield/Cedarview cursor bug Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 6a8ca6f5ffbca4ef92da34bd28465539c511b97e Author: Alan Cox Date: Tue Jul 5 15:44:34 2011 +0100 gma500: Fix backlight crash We need to check the NULL case earlier. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a11c3ec7e9565bd8aad41a151b1d05c271d859e9 Author: Alan Cox Date: Tue Jul 5 15:44:20 2011 +0100 gma500: Add the HDMI bits This adds the basic HDMI support for Cedarview. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 93b68b67739d40346756fe9b7423f084a1b22bce Author: Alan Cox Date: Tue Jul 5 15:44:06 2011 +0100 gma500: begin adding CDV specific code A lot of the intel_display stuff is duplicated, but we will add it first, clean it up and then investigate the best way to merge stuff. This first block integrates the various basic chunks of the CDV display setup. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 4bc5925315cee9b9f3d2b07dc8b692978be1d418 Author: Alan Cox Date: Tue Jul 5 15:43:53 2011 +0100 gma500: move the power header At this point we now have the file naming making somewhat more sense although the dependancies are not as clean as would be ideal Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0cc729bf215ff038d9b9480253f065af69a1f0a3 Author: Alan Cox Date: Tue Jul 5 15:43:40 2011 +0100 gma500: move the BIOS header We can move this to patch up as well. Shuffle the relevant includes as we go Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0c453db26c7e35020105502fb3675631fba12153 Author: Alan Cox Date: Tue Jul 5 15:43:21 2011 +0100 gma500: tidying up the power stuff a spot In particular don't destroy static mutexes, it upsets things Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 72786d5fb1a6a680126853bfda1e762bd62b329a Author: Alan Cox Date: Tue Jul 5 15:43:07 2011 +0100 gma500: move the i2c code This again is similar to upstream so give it a sensible name ready to look at any merging or synchronization Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 641b41858b29d4ebf1be3921cab7b2cac7b18111 Author: Alan Cox Date: Tue Jul 5 15:42:53 2011 +0100 gma500: the MMU code is also generic Move this over. In actual fact there are some underlying differences as some devices have more MMU contexts, but for our 2D purposes we don't actually care. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3682a08049fdf03c3c83b4ce44146dea19057fd7 Author: Alan Cox Date: Tue Jul 5 15:42:36 2011 +0100 gma500: move opregion files We've now sorted them out so they can go into the generic code. In actual fact only the non MID devices use the functions but they are small and having the name match i915 is going to help any future merging type work. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit b21fb57908c02a9cc0a62edcffc7fba00286e6d2 Author: Alan Cox Date: Tue Jul 5 15:42:23 2011 +0100 gma500: tidy up the opregion and lid code This is leaking an io mapping and also referencing stuff directly that should not be directly accessed. Sort it out Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3835ce2e69ff06c48984290e474b936a0fb56973 Author: Alan Cox Date: Tue Jul 5 15:42:11 2011 +0100 gma500: Rename the psb_intel_bios code This is generic for the PC class devices and also very similar to the i915 intel_bios.c so rename it. That way the commonality will be obvious and we can look at merging them one day, or at least synching them up. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0bbfa259ac9f678e3f3d1a7eb7f51d14840c6851 Author: Alan Cox Date: Tue Jul 5 15:41:56 2011 +0100 gma500: begin the config based split We don't want to carry all the extra gunk around on every device so use the splitting work so far to tidy this up. Poulsbo is still mandatory as it is used in bits by the other drivers and not neatly modularised. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 63e21a5bfc97ba2552d7efbb09462b0946af1176 Author: Alan Cox Date: Tue Jul 5 15:41:43 2011 +0100 gma500: the GEM and GTT code is device independant Rename the gem and gtt files accordingly. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c3f500516442ffbbfdf3473590e42a3dcabeb96e Author: Alan Cox Date: Tue Jul 5 15:41:29 2011 +0100 gma500: The 2D code is now also device independent Rename Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 657839ba30a32e3317772493312812e3d80d7b4a Author: Alan Cox Date: Tue Jul 5 15:41:11 2011 +0100 gma500: move framebuffer file The framebuffer code is now clean of device specific code, and passes checkpatch. Move it to its new name Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 1ff6d5fe7c06937c250ed1644077ac0ad74d8aa4 Author: Alan Cox Date: Tue Jul 5 15:40:56 2011 +0100 gma500: tidy the framebuffer fixme and oddments Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 35efdaeffce2232a603596631d15f1fff028dbf6 Author: Alan Cox Date: Tue Jul 5 15:40:43 2011 +0100 gma500: the 'mrst' BIOS is actually MID generic Shuffle the naming so this reflects better and we can try and build some sort of ordering to the naming scheme. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 37070d18f18d3cdd4e56e01baa64a57ec5179401 Author: Alan Cox Date: Tue Jul 5 15:40:30 2011 +0100 gma500: Add the beginnings of Cedarview support Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a95dfc1e1ce6d50129252d70078813a31ff7cc56 Author: Alan Cox Date: Tue Jul 5 15:40:16 2011 +0100 gma500: move configuration bits into the psb_ops structure We can stuff things like the number of pipes and the SGX offset away in here as well and clean up more conditional code. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 89e5d557171c5ce12c6f149633538582fe10ebb0 Author: Alan Cox Date: Tue Jul 5 15:40:03 2011 +0100 gma500: remove an un-needed check This is a Medfield only path Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 80f51c32c4b52e88c192de8471135dbbd158cc13 Author: Alan Cox Date: Tue Jul 5 15:39:50 2011 +0100 gma500: add more ops Split the 2d properties, name, and various function vectors out so that we can get rid of more conditional gloop in favour of a per device structure. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 71138b7f0735d277f71f0d7ba1918c8922f12cce Author: Alan Cox Date: Tue Jul 5 15:39:19 2011 +0100 gma500: enable Medfield CRTC support Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 060351f17401937d65232100405888e7f16d4f4f Author: Alan Cox Date: Tue Jul 5 15:39:06 2011 +0100 gma500: Read the GCT panel type information for Medfield Missed in the original merge work Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit cc976ced8e78332b88e4f4d63e7025d97809e776 Author: Alan Cox Date: Tue Jul 5 15:38:53 2011 +0100 gma500: Fix early Medfield crash We need to initialise the DBI interface and the code for it got missed in the original merge as it's in a daft place. This will need moving but lets get it added first. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 6a7afe3acc4bfa54b1433b7f6b5b467ec05ee15b Author: Alan Cox Date: Tue Jul 5 15:38:40 2011 +0100 gma500: continue abstracting platform specific code Next obvious target - backlight support Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 92367fe1bca91efa7f689127ba45080d4303d609 Author: Alan Cox Date: Tue Jul 5 15:38:26 2011 +0100 gma500: being abstracting out devices a bit more We really want to move towards a completely abstracted interface rather than having tons of per chip junk in the same files. Begin with the power code which is probably the worst offender. Add a set of methods, initialise a dev_priv->ops pointer and rip the chip specifics out of the power code. While we are it pick up the display init bits. So we know it's now chip specifics clean remove the psb_ naming from it. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit bcc70a64a443ec19f84bb0dc3268d2c95b52e209 Author: Alan Cox Date: Tue Jul 5 15:38:11 2011 +0100 gma500: Only fiddle with clock gating on PSB Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 5338afdfb5eeaefeefd9dcdb06977920eca5d941 Author: Alan Cox Date: Tue Jul 5 15:37:55 2011 +0100 gma500: Update the GEM todo We also pull out the undo side of the mmap offset processing so we can later push it into GEM where it belongs Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 078d6f71677cda935ed182dbb391e946e13766ec Author: Alan Cox Date: Tue Jul 5 15:37:41 2011 +0100 gma500: psb_fb tidy/cleanup pass Eliminate unused stuff and clean up the code ordering. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 2f8a78fbffae3b89eba7a1d6807184a845a5b3b0 Author: Alan Cox Date: Tue Jul 5 15:37:29 2011 +0100 gma500: Extract BIOSisy stuff from psb_drv This is too big already so lets rip out more of the device specific crud. It also means we pull the ugly stuff that needs work out of our main line of cleanup. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit eee9b52e5e9024abd7fc9e5a71230218cbc9db93 Author: Alan Cox Date: Tue Jul 5 15:37:16 2011 +0100 gma500: Move our other GEM helper into the bits want to push into GEM Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a897854c30903bc77d919fc303009d17c1548b08 Author: Alan Cox Date: Tue Jul 5 15:36:47 2011 +0100 gma500: Medfield support This large patch adds all the basics for Medfield support. Lots of clean up needed in this area still. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 6669b1d68689f6d327d8b1a84891725c0e26d508 Author: Alan Cox Date: Tue Jul 5 15:36:32 2011 +0100 gma500: 2D polish Tidy up the 2D bits. For the fill case the CPU seems to be able to outperform the graphics engine for the cases we get, so don't bother fixing it but throw it out. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit e2e88603c85218cdb7de75d94cc6521c3a180838 Author: Alan Cox Date: Tue Jul 5 15:36:19 2011 +0100 gma500: CodingStyle pass Start the style cleanup Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 2cf10d23dff547d6018673a30e86490a768b3280 Author: Alan Cox Date: Tue Jul 5 15:36:07 2011 +0100 gma500: Use the GEM tweaks to provide a GEM frame buffer We can now make our system frame buffer a GEM object. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 635816e1b87923f6715b8eec412c5eb32506805f Author: Alan Cox Date: Tue Jul 5 15:35:55 2011 +0100 gma500: GEM glue Add this temporarily so we can keep making progress and also bundle all the GEM bits we need together in our staging driver while we get them into GEM itself. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f0017b10499f1074d3b3c9a438bc9150940d9dc9 Author: Alan Cox Date: Tue Jul 5 15:35:43 2011 +0100 gma500: Kill spare kref We are using the underlying kref in the GEM object so we don't need our own Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 99d8f0349bdc9e2fe232cbc729b2bd8e32c6d6a5 Author: Alan Cox Date: Tue Jul 5 15:35:30 2011 +0100 gma500: nuke the PSB debug stuff Lose all the PSB debug gunge. We can replace it with dev_dbg() like normal drivers if and when we need debug on stuff. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0496cf5aee663fd33e0a92b9e6ee9a8cbf6f75d5 Author: Alan Cox Date: Tue Jul 5 15:35:18 2011 +0100 gma500: nuke the last bits of TTM code We don't seem to need this for our task. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 4e1d2fae79982bafc11b05dff88f90ab065a2885 Author: Alan Cox Date: Tue Jul 5 15:35:06 2011 +0100 gma500: 2D acceleration tidying We have a FIXME to do the power management for which the framework now exists, and we also need to deal with an erratum. Some operations exactly 8 pixels wide or high fail. The work around is to do two smaller ones (see the Intel released X driver bits) but for console quite frankly if it's 8bits wide and/or high its not worth it so fall back. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit de64ac92c47577a2d8c945d62ebd43c2ca296e01 Author: Alan Cox Date: Tue Jul 5 15:34:53 2011 +0100 gma500: polish for completion of this phase Give the driver its own proper DRM name, clean up copyright headers and so forth Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 5b7aa160079d3df276f697fa9118c3109e101cd7 Author: Alan Cox Date: Tue Jul 5 15:34:41 2011 +0100 gma500: trim some of the debug Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3cc76c1c69d6520837e2c6f21f4653df91c6cb77 Author: Alan Cox Date: Tue Jul 5 15:34:28 2011 +0100 gma500: Do sane FB cleanup If we get a user frame buffer destroyed which is being displayed then clean up the mess nicely. We can now run a slightly modified modetest including setting modes, and handling crashes. Modetest still blows up but this is because libdrm 2.4.25 is busted. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit daab23f1f52bba4701f58b79855f1ad0cf523dca Author: Alan Cox Date: Tue Jul 5 15:34:15 2011 +0100 gma500: revamp frame buffer creation and handling Restructure this to work the same way as the i915 frame buffer does. That cleans up various chunks of code. We can now set a mode in modetest but mode restore is a bit iffy Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9460e84a91451e57ba823037be483ecbfdd9cd44 Author: Alan Cox Date: Tue Jul 5 15:34:03 2011 +0100 gma500: Ensure the frame buffer has a linear virtual mapping We need this for the framebuffer in order to ensure that the kernel framebuffer layer can handle it when using KMS. Except for the base framebuffer this isn't a concern. Add an npage field to the gtt as too many copies of the page calculation are getting spread around the code. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0c9e98af5e94877ad3b1af2c0f39b2376a462ded Merge: af0c25c fe0d422 Author: Greg Kroah-Hartman Date: Tue Jul 5 07:35:09 2011 -0700 Merge Linux 3.0-rc6 into staging-next This handles the merge conflicts with the drivers/staging/brcm80211/Kconfig file due to changes on the two different branches. Signed-off-by: Greg Kroah-Hartman commit ac17317d209a488059003de00f7cb0e5373a7c6e Author: Sebastian Andrzej Siewior Date: Tue Jul 5 16:39:48 2011 +0300 usb: gadget: fix up depencies Both fusb300 and langwell udcs seem to only work with 32-bit address space. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi commit 1425b80e0dc0d4b002aee0705dd78c2efc913fee Author: Sebastian Andrzej Siewior Date: Tue Jul 5 15:59:05 2011 +0300 usb: gadget: fusb300_udc: fix compile warnings - remove pointer u32 abuse in fusb300_fill_idma_prdtbl(). It is assigned the dma_addr to a pointer and then back. Poor families may have to recycle variables but we don't - don't free req.buf in error case. We don't do it in the ok case so it is probably wrong to do it in error case. - return in error case. There is no reason to continue without data and performing ops on an invalid pointer. - The if (d) statement is bogus since an invalid DMA pointer is ~0 on some architecutres. And since we return for the invalid case we don't need it. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi commit c2b65f8422a3f51435c9f60f9752a6ed82d47e13 Author: Sebastian Andrzej Siewior Date: Tue Jul 5 15:57:52 2011 +0300 usb: gadget: ci13xx_udc.c: fix compile warning Fix the following compile warning: | usb/gadget/ci13xxx_udc.c: In function 'show_registers': | usb/gadget/ci13xxx_udc.c:1242:1: warning: the frame size of 2064 bytes is larger than 1024 bytes Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi commit 7b30d19a5736b930c39cd7212ae9409ac0df525d Author: Felipe Balbi Date: Mon Jul 4 11:16:06 2011 +0300 usb: gadget: net2272: fix compile warnings This patch fixes the following compile warnings: drivers/usb/gadget/net2272.c: In function ‘net2272_kick_dma’: drivers/usb/gadget/net2272.c:740:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat] drivers/usb/gadget/net2272.c: In function ‘net2272_queue’: drivers/usb/gadget/net2272.c:859:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 8 has type ‘dma_addr_t’ [-Wformat] Signed-off-by: Felipe Balbi commit b9af9ea45a8dc1c3e7a98319bac90199807cc258 Author: Felipe Balbi Date: Mon Jul 4 11:12:32 2011 +0300 usb: gadget: langwell_udc: fix compile warnings This patch fixes the following compile warnings: drivers/usb/gadget/langwell_udc.c: In function ‘queue_dtd’: drivers/usb/gadget/langwell_udc.c:596:2: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] drivers/usb/gadget/langwell_udc.c: In function ‘langwell_udc_probe’: drivers/usb/gadget/langwell_udc.c:3274:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ [-Wformat] drivers/usb/gadget/langwell_udc.c:3289:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ [-Wformat] drivers/usb/gadget/langwell_udc.c: In function ‘langwell_udc_resume’: drivers/usb/gadget/langwell_udc.c:3473:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ [-Wformat] drivers/usb/gadget/langwell_udc.c:3487:2: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘size_t’ [-Wformat] Signed-off-by: Felipe Balbi commit 4dbafd3dce8593c8ec1a6b78239f59645b4dde8f Author: Felipe Balbi Date: Mon Jul 4 11:09:15 2011 +0300 usb: gadget: fusb300_udc: drop dead code that code has been dead forever. Since the first commit (0fe6f1d1) the use of that code has been commented out. Let's drop the dead code already and fix the following compile warning: | drivers/usb/gadget/fusb300_udc.c: At top level: | drivers/usb/gadget/fusb300_udc.c:771:13: warning: ‘fusb300_wrfifo’ defined but not used [-Wunused-function] | drivers/usb/gadget/fusb300_udc.c:1027:13: warning: ‘fusb300_set_ep_bycnt’ defined but not used [-Wunused-function] Signed-off-by: Felipe Balbi commit 44c4349a2a117b22a5c4087f2ac9faf10c575e17 Author: Sven Eckelmann Date: Tue Jul 5 10:42:51 2011 +0200 batman-adv: Replace version info instead of appending them The version number of modules build outside of the tree can get revision numbers added. This is useful to give hints about the revision of a distribution package and the used patchset. The prepended source number or branch name doesn't add any additional information which would help to identify problems and can therefore be omitted. Signed-off-by: Sven Eckelmann Signed-off-by: Marek Lindner commit b539e4cd3b08dddbaa2ba0f158eed3c7c2244eaf Author: Marek Lindner Date: Sun Jun 26 21:15:13 2011 +0200 batman-adv: aggregation checks should use the primary_if pointer The packet aggregation needs to ensure that only compatible packets are aggregated. Some of the checks are based on the interface number while assuming that the first interface also is the primary interface which is not always the case. This patch addresses the issue by using the primary_if pointer. Reported-by: Antonio Quartulli Signed-off-by: Marek Lindner commit 6a020ab452d38b3878903de931c162429072a7d7 Author: Marek Lindner Date: Sun Jun 26 15:26:18 2011 +0200 batman-adv: broadcast primary OGM on all active hard-interfaces The primary interface OGM has to be broadcasted on all hard-interfaces even if the primary interface is not the first interface (if_num = 0). Therefore the code has to compare the originating interface with the primary interface instead of checking the if_num. Reported-by: Linus Luessing Signed-off-by: Marek Lindner commit ff66c975d5e412817f8122012760e852b4571b5e Author: Antonio Quartulli Date: Thu Jun 30 01:14:00 2011 +0200 batman-adv: pass a unique flag arg instead of a sequence of bool ones now tt_local_event() takes a flags argument instead of a sequence of boolean values which would grow up with the time. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner commit 8698529d209c43f6434592caf38733b84ccab5f3 Author: Antonio Quartulli Date: Sat Jun 25 19:09:12 2011 +0200 batman-adv: add_bcast_packet_to_list() takes the sending delay as parameter In order to make possible to use the broadcast list for delayed sendings the "delay" parameter is now provided instead of using 1 as hardcoded value. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner commit 5fbc1598c28555d2aa44bff0ac56ec3739401aff Author: Antonio Quartulli Date: Fri Jun 17 16:11:27 2011 +0200 batman-adv: unify flags for tt_change/tt_local_entry/tt_global_entry The tt_local_entry structure now has a 'flags' field. This helps to unify the flags format to all the client related structures (tt_global_entry and tt_change). The 'never_purge' field is now encoded in the 'flags' one. To optimise the usage of this field, its length has been increased to 16bit in order to use the eight leading bits (from 0 to 7) to store flags that have to be sent on the wire, while the eight ending ones are used for local computation only. Moreover 'enum tt_change_flags' is now called 'enum tt_client_flags' and the defined values apply to the tt_local_entry, tt_global_entry and the tt_change 'flags' field. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner commit d80603c9d876efafd8b07469c891076de470e323 Author: Jan Beulich Date: Tue Jul 5 12:22:18 2011 +0100 x86, efi: Properly pre-initialize table pointers Consumers of the table pointers in struct efi check for EFI_INVALID_TABLE_ADDR to determine validity, hence these pointers should all be pre-initialized to this value (rather than zero). Noticed by the discrepancy between efivars' systab sysfs entry showing all tables (and their pointers) despite the code intending to only display the valid ones. No other bad effects known, but having the various table parsing routines bogusly access physical address zero is certainly not very desirable (even though they're unlikely to find anything useful there). Signed-off-by: Jan Beulich Link: http://lkml.kernel.org/r/4E13100A020000780004C256@nat28.tlf.novell.com Signed-off-by: Ingo Molnar commit 7d09926d1decb658d4e24f70216b6b0b74168026 Author: Yaniv Rosner Date: Tue Jul 5 01:07:16 2011 +0000 bnx2x: Fix warning message during 57712/8727 initialization Clear warning message "MDC/MDIO access timeout" during first driver load by setting MDIO clock. This warning has no significant meaning, since it occurs prior to the first PHY initialization. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit a89a1d4a738668ccb2270ac218cddd30f0bef2a0 Author: Yaniv Rosner Date: Tue Jul 5 01:07:05 2011 +0000 bnx2x: Add autogrEEEn support Add autogrEEEn support on BCM84833 and 54618se, which allows to reduce power consumption. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 0520e63acb387a265c2a6abbf51c44c67149cf37 Author: Yaniv Rosner Date: Tue Jul 5 01:06:59 2011 +0000 bnx2x: Fix BCM84833 initialization Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 85242eea68f5039458afad0e4030828496bb4034 Author: Yaniv Rosner Date: Tue Jul 5 01:06:53 2011 +0000 bnx2x: Fix false link indication at link partner when DAC is used When driver is unloaded, disable PMD in addition to TX laser, provided that the management firmware will be able to enable it back. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 985848f80ffc61a29d9a72fec46ddce3c9643636 Author: Yaniv Rosner Date: Tue Jul 5 01:06:48 2011 +0000 bnx2x: Reset PHY due to fan failure for 578xx Add hardware PHY reset action for BCM578xx when fan failure occur. The new bnx2x_warpcore_hw_reset warps bnx2x_warpcore_power_module to fit the .hw_reset function template of the phy structure. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit a34bc969a19b3a2364c03c101abb3b4d467089c0 Author: Yaniv Rosner Date: Tue Jul 5 01:06:41 2011 +0000 bnx2x: Add CL37 BAM for Warpcore Add CL37 BAM support according to configuration. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 52c4d6c4b543574930667bfc2a4aed8af0713519 Author: Yaniv Rosner Date: Tue Jul 5 01:06:34 2011 +0000 bnx2x: Change BCM54616S to BCM54618SE Change 1G copper PHY BCM54616S to BCM54618SE since we only have HW with latter one of the two. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit b8d6d0824d064ad447e6aacbce90f3a340d93d65 Author: Yaniv Rosner Date: Tue Jul 5 01:06:27 2011 +0000 bnx2x: PFC fixes Set the source MAC address for PFC packets and update its status during PMF migration. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 8edbb83e5bc3c7d5d76861fc61872105288d2610 Author: Anton Blanchard Date: Tue Jul 5 13:32:40 2011 +1000 lockup detector: Fix reference to the non-existent CONFIG_DETECT_SOFTLOCKUP option Replace CONFIG_DETECT_SOFTLOCKUP with CONFIG_LOCKUP_DETECTOR. Signed-off-by: Anton Blanchard Acked-by: WANG Cong Cc: fweisbec@gmail.com Cc: a.p.zijlstra@chello.nl Link: http://lkml.kernel.org/r/20110705133240.25e81a7a@kryten Signed-off-by: Ingo Molnar commit f67df6c670a8fcd3f63728afa2314e7eca653bd7 Author: Shubhrajyoti Datta Date: Tue Jul 5 03:38:24 2011 -0700 OMAP4: Keyboard: Mux changes in the board file The mux settings for keypad are done for omap4430sdp in board file. Signed-off-by: Shubhrajyoti D [tony@atomide.com: improved formatting a bit] Signed-off-by: Tony Lindgren commit 6de8bae86c0459a881cead6735cd6971334cadd3 Author: Vishal Mahaveer Date: Tue Jul 5 03:38:23 2011 -0700 omap: blaze: add mmc5/wl1283 device support Add MMC5 support on BLAZE, which has the wl1283 device hardwired to. The wl1283 is a 4-wire, 1.8V, embedded SDIO WLAN device with an external IRQ line, and power-controlled by a GPIO-based fixed regulator. Based on the patch for zoom by Ohad Ben-Cohen Signed-off-by: Vishal Mahaveer [tony@atomide.com: improved formatting a bit] Signed-off-by: Tony Lindgren commit 27a69d709e63efc23df18cc411fa341749de750e Author: Silesh C V Date: Tue Jul 5 03:38:23 2011 -0700 omap: 4430SDP: Register the card detect GPIO properly Without this the HSMMC driver takes GPIO 0 to be the card detect gpio and requests/configures it. This will give rise to issues when another driver needs to use GPIO 0. On 4430SDP, the card detection is through TWL 6030. Signed-off-by: Silesh C V Signed-off-by: Tony Lindgren commit c31469747854a1f1dcfd81a8fb1d9865c3ee58b9 Author: Igor Grinberg Date: Tue Jul 5 03:38:23 2011 -0700 arm: omap3: cm-t35: add support for cm-t3730 cm-t3730 is basically the same board as cm-t35, but has AM/DM3730 SoC assembled and therefore some changes are required. Signed-off-by: Igor Grinberg Acked-by: Mike Rapoport [tony@atomide.com: updated for init_irq cleanup as noted by khilman@ti.com] Signed-off-by: Tony Lindgren commit 5fe8b4c19dc24e3bb873daf9e96a2439a83bbd79 Author: Joel A Fernandes Date: Tue Jul 5 03:38:22 2011 -0700 OMAP3: beagle: add support for beagleboard xM revision C OMAP3: beagle: add support for beagleboard xM revision C The USB enable GPIO has been in beagleboard xM revision C. The USER button has been moved since beagleboard xM. Also, board specific initialization has been moved to beagle_config struct and initialized in omap3_beagle_init_rev. Default values in struct are for xMC. Signed-off-by: Joel A Fernandes Signed-off-by: Koen Kooi Acked-by: Jason Kridner Signed-off-by: Tony Lindgren commit 094fc5593174e48366804484e2070f178a5317cb Author: Kalle Jokiniemi Date: Tue Jul 5 03:38:22 2011 -0700 OMAP3: rx-51: Add full regulator definitions The vaux2 (VCSI) regulator is left on by the bootloader in rx-51. Since there the product has shipped and there won't be any bootloader updates to fix this issue, we need to define all the regulators and declare full constraints for the regulator FW. This will allow the regulator FW to disable unused regulators. Also this helps in adding more fine grain regulator support for rx-51 in the future. Thanks for Mark Brown for pointing out the correct solution. Signed-off-by: Kalle Jokiniemi Cc: Mark Brown Signed-off-by: Tony Lindgren commit eeada9e89ff72cfb66e46d682bb3b8acdc0d95bd Author: Ameya Palande Date: Tue Jul 5 03:38:22 2011 -0700 omap: rx51: Platform support for lp5523 led chip Platform support for lp5523 led chip Signed-off-by: Ameya Palande Signed-off-by: Mathias Nyman Signed-off-by: Tony Lindgren commit 931da6137e8e8c622f59251e8b645467aea293f1 Merge: 5d67be9 1fd8df2 Author: Ingo Molnar Date: Tue Jul 5 11:55:43 2011 +0200 Merge branch 'tip/perf/core-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core commit 5d67be97f8903d05ce53597fb5f3bc25a45e8026 Author: Anton Blanchard Date: Mon Jul 4 21:57:50 2011 +1000 perf report/annotate/script: Add option to specify a CPU range Add an option to perf report/annotate/script to specify which CPUs to operate on. This enables us to take a single system wide profile and analyse each CPU (or group of CPUs) in isolation. This was useful when profiling a multiprocess workload where the bottleneck was on one CPU but this was hidden in the overall profile. Per process and per thread breakdowns didn't help because multiple processes were running on each CPU and no single process consumed an entire CPU. The patch converts the list of CPUs returned by cpu_map__new into a bitmap for fast lookup. I wanted to use -C to be consistent with perf top/record/stat, but unfortunately perf report already uses -C . v2: Incorporate suggestions from David Ahern: - Added -c to perf script - Check that SAMPLE_CPU is set when -c is used - Update documentation v3: Create perf_session__cpu_bitmap() Signed-off-by: Anton Blanchard Acked-by: David Ahern Cc: Arnaldo Carvalho de Melo Cc: Peter Zijlstra Cc: Paul Mackerras Link: http://lkml.kernel.org/r/20110704215750.11647eb9@kryten Signed-off-by: Ingo Molnar commit f187700c2d769bd3160b52f99cc4e747d5c5014b Merge: 56aa533 f1442bc Author: Takashi Iwai Date: Tue Jul 5 08:20:19 2011 +0200 Merge branch 'for-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc commit 56aa53391059e3730a304da4dd96b7b123b9fb75 Merge: 1ae4e9b 404b566 Author: Takashi Iwai Date: Tue Jul 5 07:33:23 2011 +0200 Merge branch 'for-3.1' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc commit d4d2d288972233fc054f3b3341c2a15865fba7c6 Author: Tobias Klauser Date: Mon Jul 4 00:00:22 2011 +0000 net/wireless: ipw2x00: Use helpers from linux/etherdevice.h Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit f8d4aa29762fe1ae78ec3164f8f612f7b06d58ea Author: Tobias Klauser Date: Sun Jul 3 23:58:04 2011 +0000 net: vxge: Use is_multicast_ether_addr helper Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit d8ce2fc1adc38fb8c71bbf44b87a982bbee5cda0 Author: Tobias Klauser Date: Sun Jul 3 23:56:22 2011 +0000 net: ewrk3: Use helpers from linux/etherdevice.h Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 2effca33194749cc3d5c2fdae52dcd8a7d6556e5 Author: Tobias Klauser Date: Sun Jul 3 23:55:53 2011 +0000 net: depca: Use helpers from linux/etherdevice.h Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit abfc89c7b5347b869d1c48ddae027caf91a2300d Author: Tobias Klauser Date: Sun Jul 3 23:54:54 2011 +0000 net: rionet: Use is_multicast_ether_addr Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 8bc3e1d8a16e6ef501af1c4d3abd7a90b4db1c0f Author: Tobias Klauser Date: Sun Jul 3 23:52:03 2011 +0000 net: iseries_veth: Use is_unicast_ether_addr helper Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 58d14d4fbaeb0cede14c59e8a2648b4791c0afe2 Author: Tobias Klauser Date: Sun Jul 3 23:50:15 2011 +0000 net: igb: Use is_multicast_ether_addr helper Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 29a40f0676c9388a83396306957f11b359c4be1c Author: Tobias Klauser Date: Sun Jul 3 23:48:13 2011 +0000 net: de4x5: Use helpers from linux/etherdevice.h Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 3e714ad3c2a07ee120044b72222cc20c14959efb Author: Tobias Klauser Date: Sun Jul 3 23:47:04 2011 +0000 net: e1000e: Use is_multicast_ether_addr helper Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 7bed4b2c97d548c652ada6111604568ea6b0c423 Author: Simon Budig Date: Mon Jul 4 19:56:01 2011 -0700 Input: add guarding parentheses to macros Put parentheses around macro argument uses. This avoids pitfalls for the programmer, where the argument expansion does not give the expected result, for example: ioctl (fd, EVIOCGABS (have_mt ? ABS_MT_POSITION_X : ABS_X), &abs); Signed-off-by: Simon Budig Signed-off-by: Dmitry Torokhov commit 77da38387e1c6f473744afccd83795805f506498 Author: Wolfram Sang Date: Mon Jul 4 19:22:01 2011 -0700 Input: wm97xx - mark channels which need pen_down Currently, battery drivers also use poll_sample() provided by the wm97xx-core but this code always checks if the pen is down. Mark the channels which really need this (i.e. for the touchscreen) with the PEN_DOWN bit, and skip the checks otherwise. Now, the battery channels can always be read. Signed-off-by: Wolfram Sang Acked-by: Mark Brown Signed-off-by: Dmitry Torokhov commit c8f205258bc8942e79cd37ebc1c8ec4652a1a501 Author: Wolfram Sang Date: Mon Jul 4 19:22:00 2011 -0700 Input: wm97xx - refactor channel selection in poll_sample() The current implementation of poll_sample() has the problem that one of its arguments, the channel to be selected, differs from wm9713 to other variants. This parameter gets passed to the (currently unused) mach-specific functions pre_sample() and post_sample() which thus have to deal with codec-specific differences. Refactor the routine so that the argument to poll_sample() is generic for all codecs and do necessary conversions only in the codec-specific driver. The outcome even uses less code and removes the non-standard use of the PEN_DOWN bit to mark the AUX-channels. Signed-off-by: Wolfram Sang Acked-by: Mark Brown Signed-off-by: Dmitry Torokhov commit 2456689b3b11ddecc091cd5f00b9adea6a9854cf Author: Wolfram Sang Date: Mon Jul 4 19:22:00 2011 -0700 Input: wm97xx - remove redundant define Signed-off-by: Wolfram Sang Acked-by: Mark Brown Signed-off-by: Dmitry Torokhov commit 5f098ecd4288333d87e2293239fab1c13ec90dae Author: Stefano Stabellini Date: Mon Jul 4 19:22:00 2011 -0700 Input: xen-kbdfront - enable driver for HVM guests Signed-off-by: Stefano Stabellini Acked-by: Konrad Rzeszutek Wilk Signed-off-by: Dmitry Torokhov commit b514d4f7c6506b696d7de6a4426d0886753e43c9 Author: Chris Moeller Date: Mon Jul 4 19:21:59 2011 -0700 Input: xpad - enable rumble support for XBox360 Wireless Controllers This patch implements rumble support for XBox360 Wireless Controllers. Signed-off-by: Chris Moeller Signed-off-by: Dmitry Torokhov commit 6539fefd9bec5faf948b03aec9f9078691d0be6b Author: Max Matveev Date: Tue Jun 21 21:18:13 2011 +0000 Update documented default values for various TCP/UDP tunables tcp_rmem and tcp_wmem use 1 page as default value for the minimum amount of memory to be used, same as udp_wmem_min and udp_rmem_min. Pages are different size on different architectures - use the right units when describing the defaults. Reviewed-by: Shan Wei Acked-by: Neil Horman Signed-off-by: Max Matveev Signed-off-by: David S. Miller commit a6e1204b82d3e8d7ba1baca35bdb595c722105eb Author: Max Matveev Date: Sun Jun 19 22:08:10 2011 +0000 Update description of net.sctp.sctp_rmem and net.sctp.sctp_wmem tunables sctp does not use second and third ("default" and "max") values of sctp_rmem tunable. The format is the same as tcp_rmem but the meaning is different so make the documentation explicit to avoid confusion. sctp_wmem is not used at all. Acked-by: Neil Horman Signed-off-by: Max Matveev Reviewed-by: Shan Wei Signed-off-by: David S. Miller commit 4924f44b97a034dbf44c14b709b0b0907ee23f04 Author: Eric Dumazet Date: Mon Jul 4 17:57:10 2011 -0700 b44: use dev_kfree_skb() in b44_tx() b44_tx() is run from softirq handler, it can use dev_kfree_skb() instead of dev_kfree_skb_irq() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit f1442bc1e9bd5ff4c2470d66075d066e535a2c86 Author: Liam Girdwood Date: Mon Jul 4 11:10:15 2011 +0100 ASoC: core - Add platform read and write. In preparation for ASoC Dynamic PCM (AKA DSP) support. Allow platform driver to perform IO. Intended for platform DAPM. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 404b566569cdcba71e0ee875d08053486309e56e Author: Jarkko Nikula Date: Thu May 26 11:37:02 2011 +0300 ASoC: tlv320aic3x: Add correct hw registers to Line1 cross connect muxes Commit af46800 ("ASoC: Implement mux control sharing") revealed that "Left Line1[L | R] Mux" and "Right Line1[L | R] Mux" widgets were pointing to the same kcontrols and codec registers and thus soc-core falsely detected them as shared controls. This is actually wrong since there are separate registers in hardware that configure Line1L to RADC and Line1R to LADC cross connects so these muxes should not be shared. Signed-off-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 113ced1f52e5ed2dfedc0771a1b11b536cde8168 Author: Gerrit Renker Date: Sun Jul 3 09:55:03 2011 -0600 dccp ccid-2: Perform congestion-window validation CCID-2's cwnd increases like TCP during slow-start, which has implications for * the local Sequence Window value (should be > cwnd), * the Ack Ratio value. Hence an exponential growth, if it does not reflect the actual network conditions, can quickly lead to instability. This patch adds congestion-window validation (RFC2861) to CCID-2: * cwnd is constrained if the sender is application limited; * cwnd is reduced after a long idle period, as suggested in the '90 paper by Van Jacobson, in RFC 2581 (sec. 4.1); * cwnd is never reduced below the RFC 3390 initial window. As marked in the comments, the code is actually almost a direct copy of the TCP congestion-window-validation algorithms. By continuing this work, it may in future be possible to use the TCP code (not possible at the moment). The mechanism can be turned off using a module parameter. Sampling of the currently-used window (moving-maximum) is however done constantly; this is used to determine the expected window, which can be exploited to regulate DCCP's Sequence Window value. This patch also sets slow-start-after-idle (RFC 4341, 5.1), i.e. it behaves like TCP when net.ipv4.tcp_slow_start_after_idle = 1. Signed-off-by: Gerrit Renker commit 58fdea0f3170c13a3b875ef904d5b67cf73814be Author: Gerrit Renker Date: Sun Jul 3 09:53:12 2011 -0600 dccp ccid-2: Use existing function to test for data packets This replaces a switch statement with a test, using the equivalent function dccp_data_packet(skb). It also doubles the range of the field `rx_num_data_pkts' by changing the type from `int' to `u32', avoiding signed/unsigned comparison with the u16 field `dccps_r_ack_ratio'. Signed-off-by: Gerrit Renker commit b4d5f4b2884625d13c7ef5b9fd085ec93bbf545c Author: Gerrit Renker Date: Sun Jul 3 09:04:18 2011 -0600 dccp ccid-2: move rfc 3390 function into header file This moves CCID-2's initial window function into the header file, since several parts throughout the CCID-2 code need to call it (CCID-2 still uses RFC 3390). Signed-off-by: Gerrit Renker Acked-by: Leandro Melo de Sales commit 1fd9d2081a9d8d77e5afccd5aafd28310cab3bfc Author: Gerrit Renker Date: Sun Jul 3 09:51:14 2011 -0600 dccp: cosmetics of info message Change the CCID (de)activation message to start with the protocol name, as 'CCID' is already in there. Signed-off-by: Gerrit Renker commit 8695e80193fed35f27c06f462bd5b76132fd5697 Author: Gerrit Renker Date: Sun Jul 3 09:51:29 2011 -0600 dccp: combine the functionality of enqeueing and cloning Realising the following call pattern, * first dccp_entail() is called to enqueue a new skb and * then skb_clone() is called to transmit a clone of that skb, this patch integrates both into the same function. Signed-off-by: Gerrit Renker commit c0c2015056d7bd69f3554208271407e7e2ee69e5 Author: Gerrit Renker Date: Sun Jul 3 09:49:16 2011 -0600 dccp: Clean up slow-path input processing This patch rearranges the order of statements of the slow-path input processing (i.e. any other state than OPEN), to resolve the following issues. 1. Dependencies: the order of statements now better matches RFC 4340, 8.5, i.e. step 7 is before step 9 (previously 9 was before 7), and parsing options in step 8 (which may consume resources) now comes after step 7. 2. Sequence number checks are omitted if in state LISTEN/REQUEST, due to the note underneath the table in RFC 4340, 7.5.3. As a result, CCID processing is now indeed confined to OPEN/PARTOPEN states, i.e. congestion control is performed only on the flow of data packets. This avoids pathological cases of doing congestion control on those messages which set up and terminate the connection. 3. Packets are now passed on to Ack Vector / CCID processing only after - step 7 (receive unexpected packets), - step 9 (receive Reset), - step 13 (receive CloseReq), - step 14 (receive Close) and only if the state is PARTOPEN. This simplifies CCID processing: - in LISTEN/CLOSED the CCIDs are non-existent; - in RESPOND/REQUEST the CCIDs have not yet been negotiated; - in CLOSEREQ and active-CLOSING the node has already closed this socket; - in passive-CLOSING the client is waiting for its Reset. In the last case, RFC 4340, 8.3 leaves it open to ignore further incoming data, which is the approach taken here. Signed-off-by: Gerrit Renker commit 909c2f32ca0629678e353343d69089f4e94ea974 Author: Jarkko Nikula Date: Thu May 26 11:37:02 2011 +0300 ASoC: tlv320aic3x: Add correct hw registers to Line1 cross connect muxes Commit af46800 ("ASoC: Implement mux control sharing") revealed that "Left Line1[L | R] Mux" and "Right Line1[L | R] Mux" widgets were pointing to the same kcontrols and codec registers and thus soc-core falsely detected them as shared controls. This is actually wrong since there are separate registers in hardware that configure Line1L to RADC and Line1R to LADC cross connects so these muxes should not be shared. Signed-off-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit c25ded1fbc069265e4d26df45a93ace18780974f Author: Peter Korsgaard Date: Tue Jun 28 14:49:17 2011 +0200 mach-s3c2410: remove unused spi-gpio.h file Not used anymore as the spi_s3c24xx_gpio driver is gone (replaced by the generic spi-gpio). Signed-off-by: Peter Korsgaard Acked-by: Ben Dooks Signed-off-by: Grant Likely commit 45fae7def636a2b400595d56c67cfed60051b773 Author: Peter Korsgaard Date: Tue Jun 28 14:49:16 2011 +0200 spi: remove obsolete spi-s3c24xx-gpio driver It was equivalent to spi-gpio, and there's no longer any in-tree users of it, so get rid of it. Signed-off-by: Peter Korsgaard Acked-by: Ben Dooks Signed-off-by: Grant Likely commit 947b35d52dabaf4908ea140e81432c71e457342d Author: Peter Korsgaard Date: Tue Jun 28 14:49:15 2011 +0200 mach-gta2: remove unused spi-gpio.h include Not needed, and the file is going away. Signed-off-by: Peter Korsgaard Acked-by: Ben Dooks Signed-off-by: Grant Likely commit aa353169226ddc1ea4f07d6946b61dd0b0a7313d Author: Peter Korsgaard Date: Tue Jun 28 14:49:14 2011 +0200 mach-qt2410: convert to spi_gpio Rather than the deprecated spi_s3c24xx_gpio driver. Only compile tested. Notice that the board support seems quite broken as the spi_s3c24xx_gpio platform device name was misspelled and there is no struct spi_board_info defined, but this atleast didn't make it any worse. Signed-off-by: Peter Korsgaard Acked-by: Ben Dooks Signed-off-by: Grant Likely commit 932036ce03f6c853a17005bced1e82b23f6378c0 Author: Peter Korsgaard Date: Tue Jun 28 14:49:13 2011 +0200 mach-jive: convert to spi_gpio Rather than the deprecated spi_s3c24xx_gpio driver. Compile tested only. Signed-off-by: Peter Korsgaard Acked-by: Ben Dooks Signed-off-by: Grant Likely commit 1a4cdecec7d639ba2891195dc3f5917fb70653db Author: Misael Lopez Cruz Date: Fri Feb 11 19:50:37 2011 -0600 OMAP4: SDP4430: Add twl6040 codec platform support Configure, and enable the twl6040 codec on SDP4430. Signed-off-by: Misael Lopez Cruz Signed-off-by: Peter Ujfalusi Acked-by: Tony Lindgren commit 1fbe99529d9490fd29982af07731650f112ffdfa Author: Axel Castaneda Gonzalez Date: Wed Feb 23 20:08:28 2011 -0600 ASoC: twl6040: Configure ramp step based on platform Enable ramp down/up step to be configured based on platform. Signed-off-by: Axel Castaneda Gonzalez Signed-off-by: Misael Lopez Cruz Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit f7026c99961da48cc4c09cc4f152db5fb30832e7 Author: Liam Girdwood Date: Mon Mar 7 15:25:23 2011 +0000 ASoC: twl6040: set default constraints. Set default sysclk constraints to high performance mode. Signed-off-by: Liam Girdwood Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit 6bba63b68da7188953bf3cc2e29d1eb4e6a69115 Author: Misael Lopez Cruz Date: Fri Feb 11 17:51:05 2011 -0600 ASoC: twl6040: Remove pll and headset mode dependency Remove dependency between pll (hppll, lppll) and headset power mode (low-power, high-performance), as headset power mode can be used with any pll. A new control is created to allow headset power mode configuration from userspace. Changing headset power mode during earpiece related usecases is not propagated down to the codec as earpiece requires HS DAC in HP mode. Signed-off-by: Misael Lopez Cruz Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit e17e4ab8018bf0f18084577243cb6800dadd303c Author: Liam Girdwood Date: Fri Mar 18 19:00:50 2011 +0000 ASoC: twl6040: Support other sample rates in constraints. Add other supported sample rates to LP and HP modes. Signed-off-by: Liam Girdwood Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit 6510bdc3f4d7ea783d47af5a58741ea0b77c6823 Author: Liam Girdwood Date: Fri Feb 11 17:37:51 2011 +0000 ASoC: twl6040: add all ABE DAIs Add all DAIs to fully support OMAP4 ABE. Signed-off-by: Liam Girdwood Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit 87b25c1bab0489c8a8ff0c59ad3c5d9182d5327e Author: Peter Ujfalusi Date: Wed Jun 1 11:30:38 2011 +0300 OMAP4: SDP4430: Add twl6040 vibrator platform support Add twl4030_vibra platform data, and the needed regulators for twl6040 vibrator. Signed-off-by: Peter Ujfalusi Acked-by: Tony Lindgren commit cc697d38392c92b7504e7719c65ae905f0a0618a Author: Misael Lopez Cruz Date: Sun May 1 03:51:24 2011 -0500 input: Add initial support for TWL6040 vibrator Add twl6040_vibra as a child of MFD device twl6040_codec. This implementation covers the PCM-to-PWM mode of TWL6040 vibrator module. Signed-off-by: Misael Lopez Cruz Signed-off-by: Peter Ujfalusi CC: Tejun Heo Acked-by: Dmitry Torokhov commit 6c44863763254eaf96ec7d4f816fb88605301e76 Author: Peter Ujfalusi Date: Wed Jun 1 13:05:10 2011 +0300 MFD: twl6040: Change platform data for soc codec driver Pass twl4030_codec_data instead of the twl4030_audio_data for the ASoC codec driver. Signed-off-by: Peter Ujfalusi Acked-by: Samuel Ortiz commit fb34d3d5056a1f8439bbfa13d4519345814d4255 Author: Misael Lopez Cruz Date: Sun May 1 21:27:00 2011 -0500 ASoC: twl6040: Convert into TWL6040 MFD child Convert TWL6040 CODEC driver into a TWL6040 MFD child, it implies that MFD-level operations like register accesses, clock setting and power management are done through MFD APIs, not directly by CODEC driver anymore. To avoid conflicts with the other MFD child, vibrator registers are skipped in CODEC driver. Signed-off-by: Misael Lopez Cruz Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown commit f19b2823f82499c60ec15d5fe8783193d77e3043 Author: Misael Lopez Cruz Date: Wed Apr 27 02:14:07 2011 -0500 mfd: twl6040: Add initial support TWL6040 IC provides analog high-end audio codec functions for handset applications. It contains several audio analog inputs and outputs as well as vibrator support. It's connected to the host processor via PDM interface for audio data communication. The audio modules are controlled by internal registers that can be accessed by I2C and PDM interface. TWL6040 MFD will be registered as a child of TWL-CORE, and will have two children of its own: twl6040-codec and twl6040-vibra. This driver is based on TWL4030 and WM8350 MFD drivers. Signed-off-by: Misael Lopez Cruz Signed-off-by: Peter Ujfalusi Acked-by: Samuel Ortiz commit 5de705194e9883a39f993e2ff96028d5aab99b37 Author: Mark Brown Date: Sun Jun 19 13:33:16 2011 +0100 regulator: Add basic per consumer debugfs Report the requested load and voltage for each consumer in debugfs when it is enabled. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 469bb638dc2a6ea87ea56256f25cc964deb3cf2b Merge: b5f9cfe 8e9ddf8 Author: Mark Brown Date: Mon Jul 4 08:54:40 2011 -0700 Merge branch 'for-3.0' into for-3.1 commit b5f9cfed12dc639cce5a8b6e741352980e05a8a9 Author: Stephen Warren Date: Fri Jul 1 13:56:14 2011 -0600 ASoC: Tegra: I2S: s/clk_get_sys/clk_get/ The clock needed by the I2S driver is associated with the I2S device name in the standard fashion. Hence, use clk_get(dev) instead of clk_get_sys(clk_name). Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4ae6df5e1018796ce260be59b2c603bd0f9faa94 Author: Peter Ujfalusi Date: Tue May 31 15:21:13 2011 +0300 MFD: twl4030-audio: Rename platform data Allign the platform data names for twl4030 audio submodule: twl4030_audio_data: for the core MFD driver twl4030_codec_data: for ASoC codec driver twl4030_vibra_data: for the input/ForceFeedback driver To avoid breakage, change all depending drivers, files to use the new types. Signed-off-by: Peter Ujfalusi Acked-by: Samuel Ortiz commit 57fe7251f5bfc4332f24479376de48a1e8ca6211 Author: Peter Ujfalusi Date: Tue May 31 12:02:49 2011 +0300 MFD: twl4030-codec -> twl4030-audio: Rename the driver Rename the driver, and header file from twl4030-codec to twl4030-audio. To avoid breakage change depending drivers at the same time. Signed-off-by: Peter Ujfalusi CC: Misael Lopez Cruz Acked-by: Samuel Ortiz commit 4fe5668b73d7ad041101656c98f3a58d86f68840 Author: Peter Ujfalusi Date: Tue May 3 18:03:43 2011 +0300 MFD: twl4030-codec: Rename internals from codec to audio In preparation of renaming the driver from twl4030-codec to twl4030-audio, first do some clean ups in the driver, which does not cause any problems outside. Signed-off-by: Peter Ujfalusi Acked-by: Samuel Ortiz commit b252b0efb605b92a2f5d118e294d088d89cfd286 Author: Peter Ujfalusi Date: Tue Jun 7 11:38:24 2011 +0300 OMAP3: Move common regulator configuration to twl-common Some regulator config can be moved out from board files, since they are close to identical. Signed-off-by: Peter Ujfalusi Acked-by: Tony Lindgren commit 827ed9aef2f13000d58616384ea6a22497e787b6 Author: Peter Ujfalusi Date: Tue Jun 7 10:28:54 2011 +0300 OMAP3: Move common twl configuration to twl-common Reduce the amount of duplicated code by moving the common configuration for twl4030/5030/tpsxx to the twl-common file. Use the omap3_pmic_get_config function from board files to properly configure the PMIC with the common fields. Signed-off-by: Peter Ujfalusi Acked-by: Tony Lindgren commit b22f954bae35be115a10c6426dc070f7d652b32e Author: Peter Ujfalusi Date: Tue Jun 7 10:26:46 2011 +0300 OMAP4: Move common twl6030 configuration to twl-common Reduce the amount of duplicated code by moving the common configuration for TWL6030 (on OMAP4 platform) to the twl-common file. Use the omap4_pmic_get_config function from board files to properly configure the PMIC with the common fields. Signed-off-by: Peter Ujfalusi Acked-by: Tony Lindgren commit a53b8e3b995f8b7c8a8c4ef5aa367958e46139b3 Author: Peter Ujfalusi Date: Sat Jun 4 08:16:41 2011 +0300 OMAP: New twl-common for common TWL configuration Introduce a new file, which will be used to configure common pmic (TWL) devices, regulators, and TWL audio. Signed-off-by: Peter Ujfalusi Acked-by: Tony Lindgren commit bac4b92cf7a444c0af8dd7b269c8791595c44052 Author: Takashi Iwai Date: Mon Jul 4 17:35:51 2011 +0200 ALSA: hda - Don't add aa-mix for VIA surrounds Since we now route the front DAC via aa-mix widget, adding the aa-mix to surrounds will result in a mix-up of both front and surround PCM signals. For avoiding this, the aa-mix routes have to be disabled for surround paths. Signed-off-by: Takashi Iwai commit fdcc205fb9ba006bcd37f72e1b1b904704257351 Merge: be741de fee17d4 Author: Tony Lindgren Date: Mon Jul 4 07:40:05 2011 -0700 Merge branch 'iommu-for-tony' of git://github.com/ohadbc/omap-iommu into devel-fixes commit cca8edfd2ec2a34d9f50f593bc753bb11e1bc1f5 Author: Dmitry Torokhov Date: Mon Jul 4 06:34:48 2011 -0700 Input: sh_keysc - fix compile warning The "#if" above should really be an "#ifdef" to avoid this warning: CC drivers/input/keyboard/sh_keysc.o drivers/input/keyboard/sh_keysc.c:294:5: warning: "CONFIG_PM_SLEEP" is not defined Reported-by: Magnus Damm Signed-off-by: Dmitry Torokhov commit 18bd2c44b9c7f0ee775e756dd59e12e0939f7ab9 Author: Takashi Iwai Date: Mon Jul 4 15:55:44 2011 +0200 ALSA: hda - Create HP-vol control properly for VIA codecs When the individual DAC is available for the headphone output, the driver should create the DAC for its volume control. Signed-off-by: Takashi Iwai commit de6c74f3e323b132caec898d224e0e3253d92eaf Author: Takashi Iwai Date: Mon Jul 4 14:46:42 2011 +0200 ALSA: hda - Define some constants in patch_via.c Signed-off-by: Takashi Iwai commit b89596a160dc63043be3fda8babbca9a935af0aa Author: Lydia Wang Date: Mon Jul 4 17:01:33 2011 +0800 ALSA: hda - Fix invalid multi-channel amplifiers for VT1718S For VT1718S, the multi-channel path should be like following: DAC 0-->Mixer 9(index 5)-->Mixer 0(index 1)-->Front Pin; DAC 1-->Mixer 1(index 0)-->Surround Pin; DAC 2-->C/LFE Pin; DAC 3-->Mixer 2(index 0)-->Side Pin; But current code built Surround and Side path through index 1 of Mixer 1 and 2. So Adjusting Surround and Side channel amplifier is invalid. This patch fixes the issue. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit c4394f5b807289c180a486df70c1a9b1f192f1cb Author: Lydia Wang Date: Mon Jul 4 16:54:15 2011 +0800 ALSA: hda - Fix issue that front can't output sound for VT1718S For VT1718S, Mixer 9 doesn't expose the connection to DAC 0. So when building up a 'PCM Playback' amplifier control, it will fail since getting DAC 0 index of Mixer 9 returned -1. So I added a dac_mixer_idx to indicated the actual index of DAC 0 to Mixer 9. Following is the patch and next mail is another. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit fee17d4fdf70050e84fab3eb9d8eeb8d1daad242 Author: Ohad Ben-Cohen Date: Wed Jun 15 16:02:50 2011 +0300 OMAP4: iommu: fix clock name 0e43327 "OMAP4: clock: Fix clock names and align with hwmod names" renamed ducati_ick to ipu_fck. Update OMAP4's iommu_device accordingly, so that omap_iommu_probe doesn't break when calling clk_get. Signed-off-by: Ohad Ben-Cohen commit 66cf402bd911d3874f986156d0bee8b943b71e7c Author: Ohad Ben-Cohen Date: Wed Jun 8 09:06:11 2011 +0300 omap: iovmm: s/sg_dma_len(sg)/sg->length/ iovmm is erroneously using sg_dma_len with unmapped (DMA API-wise) SG entries, and will break if CONFIG_NEED_SG_DMA_LENGTH is enabled. Fix that by using sg->length instead. Reported-by: Russell King Tested-by: Laurent Pinchart Signed-off-by: Ohad Ben-Cohen commit 7e20b6f39aef541d890eba1fdf493f33b39d29e4 Author: Suman Anna Date: Wed May 4 17:45:37 2011 -0500 omap: iommu: fix pte programming Fix the pte programming to set the page attributes correctly by replacing the bitwise check with an explicit values check. Otherwise, 16MB entries will be erroneously programmed like 4KB entries, which is not what the hardware expects. Signed-off-by: Suman Anna Acked-by: Hiroshi DOYU Signed-off-by: Ohad Ben-Cohen commit e3b4f515c43553a9950017d8d052541ccb8081fa Author: Jan Glauber Date: Mon Jul 4 20:06:01 2011 +0800 crypto: s390 - support hardware accelerated SHA-224 On recent s390 machines hardware acceleration is available for SHA-256. SHA-224 is based on SHA-256 so it can also be accelerated by hardware. Do this by adding the proper algorithm description and initialization. Signed-off-by: Jan Glauber Signed-off-by: Herbert Xu commit be741de16f1148ecf0fcdd1f438945c939e6ea38 Author: Igor Grinberg Date: Mon Jul 4 04:09:31 2011 -0700 arm: omap3: cm-t35: fix slow path warning Fix warning issued by gpio_set_value() call with TPS gpios. Signed-off-by: Igor Grinberg Signed-off-by: Tony Lindgren commit d12c2e2890e20e65fbaa4b6c5ddbaa66fb843308 Author: Igor Grinberg Date: Mon Jul 4 04:09:18 2011 -0700 arm: omap3: cm-t35: minor comments fixes Update authors and copyright, remove Free S/W Foundation postal address, fix offsets of NAND partitions in comments. Signed-off-by: Igor Grinberg Signed-off-by: Tony Lindgren commit 4e9642528cf5d8b5dee5818d796a4535b1748554 Author: Charulatha V Date: Mon Jul 4 04:08:46 2011 -0700 omap: ZOOM: QUART: Request reset GPIO Reset GPIO (OMAP_GPIO_152) for QUART in zoom2/zoom3 debug-board is not requested at all. This would lead to problems if this GPIO is wrongly requested. Hence request OMAP GPIO 152 for QUART RESET but do not apply a reset pulse as it would reset QUART and disturb the QUART settings. Signed-off-by: Charulatha V Acked-by: Kevin Hilman Cc: Santosh Shilimkar Signed-off-by: Tony Lindgren commit e47c3c0c105a87837019535b3d9502ec40b4db43 Author: Daniel Mack Date: Mon Jul 4 04:08:11 2011 -0700 omap: Overo: remove duplicate call to overo_ads7846_init() overo_ads7846_init() is already called from overo_spi_init(), and calling it twice is not only unnecessary but causes a warning as "reg-fixed-voltage.1" is already added to the device tree. Signed-off-by: Daniel Mack Tested-by: Kevin Hilman Signed-off-by: Tony Lindgren commit 5e4698fc4406b8603913a2eff44b7c44c5924ea4 Author: Silesh C V Date: Mon Jul 4 04:10:00 2011 -0700 omap: HSMMC: Fix GPIO muxing Use generic gpio call to check the validity of the gpio. Note that this includes gpio 0 also which was missing before. Signed-off-by: Silesh C V Signed-off-by: Tony Lindgren commit ba50348434a933bc4494b3dcd1aed5b0397ab49b Author: Ambresh K Date: Wed Jun 15 21:12:35 2011 +0000 OMAP4: DMTIMER: enable autoidle mode Currently autoidle is only enabled for OMAP2/3; by enabling autoidle, the automatic L4 clock gating strategy is applied based on L4 activity, otherwise L4 clock to module will be a free running. Signed-off-by: Ambresh K [tony@atomide.com: updated for timer init changes] Signed-off-by: Tony Lindgren commit f6281f6684d613948e7b9f0bd956488bb33993ab Author: Julia Lawall Date: Mon Jul 4 04:08:10 2011 -0700 arch/arm/mach-omap2/clock.c: add missing clk_put Add missing call to clk_put. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Acked-by: Paul Walmsley Signed-off-by: Tony Lindgren commit 9f8b6a6cf0ee78de87ebe1e87f54bec1c1741ef7 Merge: 729aa21 a406ab6 Author: Ingo Molnar Date: Mon Jul 4 12:27:28 2011 +0200 Merge branch 'core' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/core commit a93d4f2d023ea5e84c0104d4e479243c6ac77d17 Author: Iiro Valkonen Date: Mon Jul 4 03:16:25 2011 -0700 Input: atmel_mxt_ts - handle objects with multiple instances correctly Handle the objects with multiple instances correctly when the configuration data is loaded. Signed-off-by: Iiro Valkonen Signed-off-by: Dmitry Torokhov commit 81c88a711aef5552375c4296bb473fdf9b12273c Author: Iiro Valkonen Date: Mon Jul 4 03:08:25 2011 -0700 Input: atmel_mxt_ts - update object list Update the object list to include new objects, and add unique identifiers so we can distinguish between old & new generation of the same object. Signed-off-by: Iiro Valkonen Signed-off-by: Dmitry Torokhov commit 5c74cd4cc7e7ad9117789e0ca22892a42f87d890 Merge: e54e692 ab63f58 Author: Michal Marek Date: Mon Jul 4 11:24:10 2011 +0200 Merge branch 'kconfig-trivial' of git://github.com/lacombar/linux-2.6 into kbuild/kconfig commit a7fa94a9fe26a4925914083a31b5387bca530eb1 Author: Artem Bityutskiy Date: Fri Jun 3 16:20:03 2011 +0300 UBIFS: improve power cut emulation testing This patch cleans-up and improves the power cut testing: 1. Kill custom 'simple_random()' function and use 'random32()' instead. 2. Make timeout larger 3. When cutting the buffer - fill the end with random data sometimes, not only with 0xFFs. 4. Some times cut in the middle of the buffer, not always at the end. Signed-off-by: Artem Bityutskiy commit d27462a518c31a4b1093ad866229f85b2b765e7e Author: Artem Bityutskiy Date: Fri Jun 3 15:10:33 2011 +0300 UBIFS: rename recovery testing variables Since the recovery testing is effectively about emulating power cuts by UBIFS, use "power cut" as the base term for all the related variables and name them correspondingly. This is just a minor clean-up for the sake of readability. Signed-off-by: Artem Bityutskiy commit f57cb188ccd9c0242111d99b7283eda7827746c4 Author: Artem Bityutskiy Date: Fri Jun 3 14:51:41 2011 +0300 UBIFS: remove custom list of superblocks This is a clean-up of the power-cut emulation code - remove the custom list of superblocks which we maintained to find the superblock by the UBI volume descriptor. We do not need that crud any longer, because now we can get the superblock as a function argument. Signed-off-by: Artem Bityutskiy commit 0a541b14e819f972d14f29d17cb9fd8b4b71222e Author: Artem Bityutskiy Date: Fri Jun 3 14:38:50 2011 +0300 UBIFS: stop re-defining UBI operations Now when we use UBIFS helpers for all the I/O, we can remove the horrible hack of re-defining UBI I/O functions. Signed-off-by: Artem Bityutskiy commit d3b2578f56e0a77b9e261d83e9b5a0a666b82980 Author: Artem Bityutskiy Date: Fri Jun 3 14:22:05 2011 +0300 UBIFS: switch to I/O helpers Switch the rest of direct UBI calls to UBIFS helper functions. Signed-off-by: Artem Bityutskiy commit 987226a5d3a356792650f8e9028132a79815f6ef Author: Artem Bityutskiy Date: Fri Jun 3 14:12:10 2011 +0300 UBIFS: switch to ubifs_leb_write Stop using 'ubi_leb_write()' directly and switch to the 'ubifs_leb_write()' helper. Signed-off-by: Artem Bityutskiy commit d304820a1f6cdacab691bbcb7faa35ec631c6398 Author: Artem Bityutskiy Date: Fri Jun 3 14:03:25 2011 +0300 UBIFS: switch to ubifs_leb_read Instead of using 'ubi_read()' function directly, used the 'ubifs_leb_read()' helper function instead. This allows to get rid of several redundant error messages and make sure that we always have a stack dump on read errors. Signed-off-by: Artem Bityutskiy commit 83cef708c606f46a2b527af025acb3d24555f0c4 Author: Artem Bityutskiy Date: Fri Jun 3 13:45:09 2011 +0300 UBIFS: introduce more I/O helpers Introduce the following I/O helper functions: 'ubifs_leb_read()', 'ubifs_leb_write()', 'ubifs_leb_change()', 'ubifs_leb_unmap()', 'ubifs_leb_map()', 'ubifs_is_mapped(). The idea is to wrap all UBI I/O functions in order to encapsulate various assertions and error path handling (error message, stack dump, switching to R/O mode). And there are some other benefits of this which will be used in the following patches. This patch does not switch whole UBIFS to use these functions yet. Signed-off-by: Artem Bityutskiy commit d033c98b17ecf30d64d83d96938ce7bfb47f7520 Author: Artem Bityutskiy Date: Fri Jun 3 13:16:08 2011 +0300 UBIFS: always print stacktrace when switching to R/O mode When switching to R/O mode due to an I/O error, always dump the stack, not only when debugging is enabled. Signed-off-by: Artem Bityutskiy commit 891a54a153646f9b16bffe5df6cb74cb3f1e9dc6 Author: Artem Bityutskiy Date: Fri Jun 3 11:32:21 2011 +0300 UBIFS: remove unused and unneeded debugging function This patch contains several minor clean-up and preparational cahnges. 1. Remove 'dbg_read()', 'dbg_write()', 'dbg_change()', and 'dbg_leb_erase()' functions as they are not used. 2. Remove 'dbg_leb_read()' and 'dbg_is_mapped()' as they are not really needed, it is fine to let reads go through in failure mode. 3. Rename 'offset' argument to 'offs' to be consistent with the rest of UBIFS code. Signed-off-by: Artem Bityutskiy commit e7717060ddd509e6c305ad7bf5a090a95e91c8cf Author: Artem Bityutskiy Date: Wed Jun 1 17:43:43 2011 +0300 UBIFS: add global debugfs knobs Now we have per-FS (superblock) debugfs knobs, but they have one drawback - you have to first mount the FS and only after this you can switch self-checks on/off. But often we want to have the checks enabled during the mount. Introduce global debugging knobs for this purpose. Signed-off-by: Artem Bityutskiy commit 28488fc28aa39815b78c2cbeaaf25f33fef92ce8 Author: Artem Bityutskiy Date: Fri Jun 3 09:58:23 2011 +0300 UBIFS: introduce debugfs helpers Separate out pieces of code from the debugfs file read/write functions and create separate 'interpret_user_input()'/'provide_user_output()' helpers. These helpers will be needed in one of the following patches, so this is just a preparational change. Signed-off-by: Artem Bityutskiy commit 7dae997de62bbd78f12305bf10019ec8f1103bd4 Author: Artem Bityutskiy Date: Wed Jun 1 15:44:14 2011 +0300 UBIFS: re-arrange debugging code a bit Move 'dbg_debugfs_init()' and 'dbg_debugfs_exit()' functions which initialize debugfs for whole UBIFS subsystem below the code which initializes debugfs for a particular UBIFS instance. And do the same for 'ubifs_debugging_init()' and 'ubifs_debugging_exit()' functions. This layout is a bit better for the next patches, so this is just a preparation. Also, rename 'open_debugfs_file()' into 'dfs_file_open()' for consistency. Signed-off-by: Artem Bityutskiy commit 24a4f8009ee9e259a412d86373e0d2aac3a80333 Author: Artem Bityutskiy Date: Wed Jun 1 15:23:25 2011 +0300 UBIFS: be more informative in failure mode When we are testing UBIFS recovery, it is better to print in which eraseblock we are going to fail. Currently UBIFS prints it only if recovery debugging messages are enabled, but this is not very practical. So change 'dbg_rcvry()' messages to 'ubifs_warn()' messages. Signed-off-by: Artem Bityutskiy commit 81e79d38df5a17bb1c738a14f8e5f3412fb33afa Author: Artem Bityutskiy Date: Tue May 31 18:16:34 2011 +0300 UBIFS: switch self-check knobs to debugfs UBIFS has many built-in self-check functions which can be enabled using the debug_chks module parameter or the corresponding sysfs file (/sys/module/ubifs/parameters/debug_chks). However, this is not flexible enough because it is not per-filesystem. This patch moves this to debugfs interfaces. We already have debugfs support, so this patch just adds more debugfs files. While looking at debugfs support I've noticed that it is racy WRT file-system unmount, and added a TODO entry for that. This problem has been there for long time and it is quite standard debugfs PITA. The plan is to fix this later. This patch is simple, but it is large because it changes many places where we check if a particular type of checks is enabled or disabled. Signed-off-by: Artem Bityutskiy commit 8d7819b4af697eec45339cc24db7c3fe45fea0e7 Author: Artem Bityutskiy Date: Fri Jun 3 08:53:35 2011 +0300 UBIFS: lessen amount of debugging check types We have too many different debugging checks - lessen the amount by merging all index-related checks into one. At the same time, move the "force in-the-gap" test to the "index checks" class, because it is too heavy for the "general" class. This patch merges TNC, Old index, and Index size check and calles this just "index checks". Signed-off-by: Artem Bityutskiy commit 2b1844a8c934723134ee1ff313e51d0d281cdef1 Author: Artem Bityutskiy Date: Fri Jun 3 08:31:29 2011 +0300 UBIFS: introduce helper functions for debugging checks and tests This patch introduces helper functions for all debugging checks, so instead of doing if (!(ubifs_chk_flags & UBIFS_CHK_GEN)) we now do if (!dbg_is_chk_gen(c)) This is a preparation to further changes where the flags will go away, and we'll need to only change the helper functions, but the code which utilizes them won't be touched. At the same time this patch removes 'dbg_force_in_the_gaps()', 'dbg_force_in_the_gaps_enabled()', and dbg_failure_mode helpers for consistency. Signed-off-by: Artem Bityutskiy commit d808efb407e1a2cf83a8d21411157195f26bdef9 Author: Artem Bityutskiy Date: Tue May 31 18:14:38 2011 +0300 UBIFS: amend debugging inode size check function prototype Add 'const struct ubifs_info *c' parameter to 'dbg_check_synced_i_size()' function because we'll need it in the next patch when we switch to debugfs. So this patch is just a preparation. Signed-off-by: Artem Bityutskiy commit bb2615d4d14777fd37e2b91bd99b92c0354813d1 Author: Artem Bityutskiy Date: Tue May 31 17:47:53 2011 +0300 UBIFS: amend debugging name check function prototype Add 'struct ubifs_info *c' parameter to the 'dbg_check_name()' debugging function - it will be needed in one of the following commits where we switch to debugfs. So this is just a preparation. Mark parameters as 'const' while on it. Signed-off-by: Artem Bityutskiy commit 06b282a4cc02f37414c14c94a2f154ca250cf73f Author: Artem Bityutskiy Date: Mon May 30 18:19:34 2011 +0300 UBIFS: add few commentaries about TNC Add a couple of comments - while looking into TNC I could not easily figure out few facts, so it is a good idea to document them in the code. Signed-off-by: Artem Bityutskiy commit 376624476921e43d8b87498161a2ffba6ab8d5aa Author: Artem Bityutskiy Date: Mon May 30 14:51:20 2011 +0300 UBIFS: use correct flags in lprops The UBIFS lpt tree is in many aspects similar to the TNC tree, and we have similar flags for these trees. And by mistake we use the COW_ZNODE flag for LPT in some places, instead of the right flag COW_CNODE. And this works only because these two constants have the same value. This patch makes all the LPT code to use COW_CNODE and also changes COW_CNODE constant value to make sure we do not misuse the flags any more. Signed-off-by: Artem Bityutskiy commit f42eed7cba7f83197b0ffbb023e7d89a0b2fd71d Author: Artem Bityutskiy Date: Mon May 30 14:45:30 2011 +0300 UBIFS: harmonize znode flag helpers We have 3 znode flags: cow, obsolete, dirty. For the last flag we have a 'ubifs_zn_dirty()' helper function, but for the other 2 flags we use 'test_bit()' directly. This patch makes the situation more consistent and introduces helpers for the other 2 flags: 'ubifs_zn_cow()' and 'ubifs_zn_obsolete()'. Signed-off-by: Artem Bityutskiy commit 1f42596ec0a7d3d50a494d95e3f1afbd117250f8 Author: Artem Bityutskiy Date: Mon May 30 14:30:51 2011 +0300 UBIFS: remove dead code Remove dead pieces of code under "if (c->min_io_size == 1)" statement - we never execute it because in UBIFS 'c->min_io_size' is always at least 8. This are leftovers from old pre-mainline prototype. Signed-off-by: Artem Bityutskiy commit 12e776a0882def45e7ee50918016968b392ac7bd Author: Artem Bityutskiy Date: Fri May 27 15:50:39 2011 +0300 UBIFS: remove unnecessary brackets Remove unnecessary brackets in "inode->i_flags |= (S_NOCMTIME)" statement to make the code not look silly. Signed-off-by: Artem Bityutskiy commit a29fa9dfa4d5d1b962825c79f19d9b6f3f15843b Author: Artem Bityutskiy Date: Thu May 26 09:43:34 2011 +0300 UBIFS: minor cleanup: use S_ISREG helper Instead of using long "(inode->i_mode & S_IFMT) != S_IFREG" expression, use shorted "!S_ISREG(inode->i_mode)". Signed-off-by: Artem Bityutskiy commit 1b51e98365e42c27eb2664f8353bc62ab8c55c85 Author: Artem Bityutskiy Date: Wed May 25 17:38:29 2011 +0300 UBIFS: rename dbg_check_dir_size function Since this function is not only about size checking, rename it to 'dbg_check_dir()'. Signed-off-by: Artem Bityutskiy commit 4315fb4072905e45da94d51e2c1e86fa41c5fc5f Author: Artem Bityutskiy Date: Wed May 25 17:32:42 2011 +0300 UBIFS: improve inode dumping function Teach 'dbg_dump_inode()' dump directory entries for directory inodes. This requires few additional changes: 1. The 'c' argument of 'dbg_dump_inode()' cannot be const any more. 2. Users of 'dbg_dump_inode()' should not have 'tnc_mutex' locked. Signed-off-by: Artem Bityutskiy commit bfcf677decd8051c305b1d8fda407d069c2361e3 Author: Artem Bityutskiy Date: Tue May 24 14:10:03 2011 +0300 UBIFS: dump stack when pnode or nnode reading fails When we fail to read a pnode or nnode - print stacktrace if debugging is enabled. Signed-off-by: Artem Bityutskiy commit ae380ce04731579f45f27b3a84d7d8d8ee1f9b1b Author: Artem Bityutskiy Date: Thu May 19 14:13:16 2011 +0300 UBIFS: lessen the size of debugging info data structure This patch lessens the 'struct ubifs_debug_info' size by 90 bytes by allocating less bytes for the debugfs root directory name. It introduces macros for the name patter an length instead of hard-coding 100 bytes. It also makes UBIFS use 'snprintf()' and teaches it to gracefully catch situations when the name array is too short. Additionally, this patch makes 2 unrelated changes - I just thought they do not deserve separate commits: simplifies 'ubifs_assert()' for non-debugging case and makes 'dbg_debugfs_init()' properly verify debugfs return code which may be an error code or NULL, so we should you 'IS_ERR_OR_NULL()' instead of 'IS_ERR()'. Signed-off-by: Artem Bityutskiy commit 549c999a768a7a144c60a0faa58f34c48f39112b Author: Artem Bityutskiy Date: Thu May 26 16:57:14 2011 +0300 UBIFS: return EROFS in case of broken commit If commit failed and it is in broken state, UBIFS switches to R/O mode. Most operations return -EROFS in this case, except of commit which returns -EINVAL. Make it return -EROFS too for consistency. This is also important for our power cut emulation testing. Signed-off-by: Artem Bityutskiy commit 5c8598fca1a359520623ed5409d23bb9e23d7da3 Author: Russell King Date: Mon Jul 4 08:34:33 2011 +0100 ARM: dmabounce: no need to check dev->bus type in needs_bounce function As the needs_bounce function is passed at DMA bounce register time, we already know what the device bus type is, so we don't need to check it each time the needs_bounce function is called. Signed-off-by: Russell King commit 0703ed2a6b260cd743adf49a8281eb064d728832 Author: Russell King Date: Mon Jul 4 08:32:21 2011 +0100 ARM: dmabounce: get rid of dma_needs_bounce global function Pass the device type specific needs_bounce function in at dmabounce register time, avoiding the need for a platform specific global function to do this. Signed-off-by: Russell King commit b84e773119e1401e6ebd8906fb0b2a43bbe64871 Author: Grant Likely Date: Thu Jun 30 12:39:12 2011 -0600 tty/serial: change of_serial to use new of_property_read_u32() api Simplifies the code a bit and drops a few lines. Signed-off-by: Grant Likely Acked-by: Arnd Bergmann commit f09bc831b7693f93ecb95dea7180d55b45b88e76 Author: Shawn Guo Date: Mon Jul 4 09:01:18 2011 +0800 dt: add 'const' for of_property_read_string parameter **out_string The existing dt codes usually call of_get_property to get a string property and save it as a 'const char *'. The patch adds'const' for of_property_read_string parameter **out_string to make the converting of existing code a little easier. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit 31fcb99d9958bdf04e84224e202f69e6cdac893b Author: Yoshihiro Shimoda Date: Thu Jun 30 22:52:13 2011 +0000 net: sh_eth: remove __flush_purge_region It is a function of SuperH architecture. There is no good to use the function on a driver generally. So, the driver uses dma_map_single() instead of __flush_purge_region. Signed-off-by: Yoshihiro Shimoda Signed-off-by: David S. Miller commit ee9c88f2283c80d9926f980848ae02cc3e88ee57 Author: Joe Perches Date: Sun Jul 3 08:28:33 2011 +0000 af_econet: Use current logging styles and neatening Use pr_fmt() without KBUILD_MODNAME to allow AUN and econet prefixes. Convert printks with KERN_DEBUG to pr_debug. Hoist assigns from if. 80 column wrapping. Move open braces to end of line. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 2a49e001cbe3ebf5987024052ed0dff67689c5bb Author: Joe Perches Date: Thu Jun 30 15:08:58 2011 +0000 netpoll: Remove wrapper function netpoll_poll Too trivial to live. cc: WANG Cong Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 234b921dbcf144826e2e2b3663cd8090892ee2b2 Author: Joe Perches Date: Thu Jun 30 15:08:57 2011 +0000 netpoll: Remove unused EXPORT_SYMBOLs of netpoll_poll and netpoll_poll_dev Unused symbols waste space. Commit 0e34e93177fb "(netpoll: add generic support for bridge and bonding devices)" added the symbol more than a year ago with the promise of "future use". Because it is so far unused, remove it for now. It can be easily readded if or when it actually needs to be used. cc: WANG Cong Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit c289b2e0ccff1142908e20398930dc2e14697e74 Author: Russell King Date: Sun Jul 3 23:56:17 2011 +0100 ARM: dmabounce: correct unmap_single dev_dbg DMA addresses should not be casted to void * for printing. Fix that to be consistent with the rest of the file. Signed-off-by: Russell King commit dfa322fceb15227c07670c415e835d2dfa8a4307 Author: Russell King Date: Sun Jul 3 23:54:34 2011 +0100 ARM: dmabounce: check pointer against NULL not 0 Pointers should be checked against NULL rather than 0, otherwise we get sparse warnings. Signed-off-by: Russell King commit e2f521e247576c897e1bf0ada801e87c7e2db89f Author: Russell King Date: Sun Jul 3 23:53:13 2011 +0100 ARM: dmabounce: remove useless pr_err We already check that dev != NULL, so this won't be reached. Signed-off-by: Russell King commit dd3641fc3cf6d10b7cf4e266c2f651517779e727 Author: Russell King Date: Sun Jul 3 22:39:43 2011 +0100 ARM: dmabounce: move decision for bouncing into __dma_map_page() Move the decision whether to bounce into __dma_map_page(), before the check for high pages. This avoids triggering the high page check for devices which aren't using dmabounce. Fix the unmap path to cope too. Signed-off-by: Russell King commit 23bc9873ba60ee661d8e9f3a6b22fc3bcc4b7015 Author: Russell King Date: Sun Jul 3 22:28:32 2011 +0100 ARM: dmabounce: separate out decision to bounce Move the decision to perform DMA bouncing out of map_single() into its own stand-alone function. Signed-off-by: Russell King commit 71695dd8b9eacfcda1b548a5b1780d34213ad654 Author: Russell King Date: Sun Jul 3 19:46:39 2011 +0100 ARM: dmabounce: avoid needless valid_dma_direction() check This check is done at the DMA API level, so there's no point repeating it here. Signed-off-by: Russell King commit 8021a4a048a85906302bd0236f3d125473be65b1 Author: Russell King Date: Sun Jul 3 16:13:58 2011 +0100 ARM: dma-mapping: define dma_(un)?map_single in terms of dma_(un)?map_page Use dma_map_page()/dma_unmap_page() internals to handle dma_map_single() and dma_unmap_single(). Signed-off-by: Russell King commit 729aa21ab85b5d24f3c2b1e581d71c2333f46628 Merge: 29dfc4f a2bbe75 Author: Ingo Molnar Date: Sun Jul 3 20:39:40 2011 +0200 Merge branch 'perf/stacktrace' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core commit 956245e9cd229138ad26521c326650eed8b88333 Author: Liam Girdwood Date: Fri Jul 1 16:54:08 2011 +0100 ASoC: core - Make platform probe more like codec probe. In preparation for ASoC dynamic PCM support (AKA ASoC DSP) Platform will also support DAPM so separate out the probe function to simplify the code (just like the codec probe). Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit a2bbe75089d5eb9a3a46d50dd5c215e213790288 Author: Frederic Weisbecker Date: Sat Jul 2 16:52:45 2011 +0200 x86: Don't use frame pointer to save old stack on irq entry rbp is used in SAVE_ARGS_IRQ to save the old stack pointer in order to restore it later in ret_from_intr. It is convenient because we save its value in the irq regs and it's easily restored using the leave instruction. However this is a kind of abuse of the frame pointer which role is to help unwinding the kernel by chaining frames together, each node following the return address to the previous frame. But although we are breaking the frame by changing the stack pointer, there is no preceding return address before the new frame. Hence using the frame pointer to link the two stacks breaks the stack unwinders that find a random value instead of a return address here. There is no workaround that can work in every case. We are using the fixup_bp_irq_link() function to dereference that abused frame pointer in the case of non nesting interrupt (which means stack changed). But that doesn't fix the case of interrupts that don't change the stack (but we still have the unconditional frame link), which is the case of hardirq interrupting softirq. We have no way to detect this transition so the frame irq link is considered as a real frame pointer and the return address is dereferenced but it is still a spurious one. There are two possible results of this: either the spurious return address, a random stack value, luckily belongs to the kernel text and then the unwinding can continue and we just have a weird entry in the stack trace. Or it doesn't belong to the kernel text and unwinding stops there. This is the reason why stacktraces (including perf callchains) on irqs that interrupted softirqs don't work very well. To solve this, we don't save the old stack pointer on rbp anymore but we save it to a scratch register that we push on the new stack and that we pop back later on irq return. This preserves the whole frame chain without spurious return addresses in the middle and drops the need for the horrid fixup_bp_irq_link() workaround. And finally irqs that interrupt softirq are sanely unwinded. Before: 99.81% perf [kernel.kallsyms] [k] perf_pending_event | --- perf_pending_event irq_work_run smp_irq_work_interrupt irq_work_interrupt | |--41.60%-- __read | | | |--99.90%-- create_worker | | bench_sched_messaging | | cmd_bench | | run_builtin | | main | | __libc_start_main | --0.10%-- [...] After: 1.64% swapper [kernel.kallsyms] [k] perf_pending_event | --- perf_pending_event irq_work_run smp_irq_work_interrupt irq_work_interrupt | |--95.00%-- arch_irq_work_raise | irq_work_queue | __perf_event_overflow | perf_swevent_overflow | perf_swevent_event | perf_tp_event | perf_trace_softirq | __do_softirq | call_softirq | do_softirq | irq_exit | | | |--73.68%-- smp_apic_timer_interrupt | | apic_timer_interrupt | | | | | |--96.43%-- amd_e400_idle | | | cpu_idle | | | start_secondary Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Thomas Gleixner Cc: H. Peter Anvin Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Jan Beulich commit 48ffee7d9e6df51b4957bed64115b7beed671374 Author: Frederic Weisbecker Date: Sat Jul 2 15:03:44 2011 +0200 x86: Remove useless unwinder backlink from irq regs saving The unwinder backlink in interrupt entry is very useless. It's actually not part of the stack frame chain and thus is never used. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Thomas Gleixner Cc: H. Peter Anvin Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Jan Beulich commit 3b99a3ef55b292180473a221f3d6bc24455f0632 Author: Frederic Weisbecker Date: Fri Jul 1 02:25:17 2011 +0200 x86,64: Separate arg1 from rbp handling in SAVE_REGS_IRQ Just for clarity in the code. Have a first block that handles the frame pointer and a separate one that handles pt_regs pointer and its use. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Thomas Gleixner Cc: H. Peter Anvin Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Jan Beulich commit 1871853f7abc3c727c4346539c5062cbeaf016a4 Author: Frederic Weisbecker Date: Fri Jul 1 01:51:22 2011 +0200 x86,64: Simplify save_regs() The save_regs function that saves the regs on low level irq entry is complicated because of the fact it changes its stack in the middle and also because it manipulates data allocated in the caller frame and accesses there are directly calculated from callee rsp value with the return address in the middle of the way. This complicates the static stack offsets calculation and require more dynamic ones. It also needs a save/restore of the function's return address. To simplify and optimize this, turn save_regs() into a macro. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Thomas Gleixner Cc: H. Peter Anvin Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Jan Beulich commit 47ce11a2b6519f9c7843223ea8e561eb71ea5896 Author: Frederic Weisbecker Date: Thu Jun 30 19:04:56 2011 +0200 x86: Fetch stack from regs when possible in dump_trace() When regs are passed to dump_stack(), we fetch the frame pointer from the regs but the stack pointer is taken from the current frame. Thus the frame and stack pointers may not come from the same context. For example this can result in the unwinder to think the context is in irq, due to the current value of the stack, but the frame pointer coming from the regs points to a frame from another place. It then tries to fix up the irq link but ends up dereferencing a random frame pointer that doesn't belong to the irq stack: [ 9131.706906] ------------[ cut here ]------------ [ 9131.707003] WARNING: at arch/x86/kernel/dumpstack_64.c:129 dump_trace+0x2aa/0x330() [ 9131.707003] Hardware name: AMD690VM-FMH [ 9131.707003] Perf: bad frame pointer = 0000000000000005 in callchain [ 9131.707003] Modules linked in: [ 9131.707003] Pid: 1050, comm: perf Not tainted 3.0.0-rc3+ #181 [ 9131.707003] Call Trace: [ 9131.707003] [] warn_slowpath_common+0x7a/0xb0 [ 9131.707003] [] warn_slowpath_fmt+0x41/0x50 [ 9131.707003] [] ? bad_to_user+0x6d/0x10be [ 9131.707003] [] dump_trace+0x2aa/0x330 [ 9131.707003] [] ? native_sched_clock+0x13/0x50 [ 9131.707003] [] perf_callchain_kernel+0x54/0x70 [ 9131.707003] [] perf_prepare_sample+0x19f/0x2a0 [ 9131.707003] [] __perf_event_overflow+0x16c/0x290 [ 9131.707003] [] ? __perf_event_overflow+0x130/0x290 [ 9131.707003] [] ? native_sched_clock+0x13/0x50 [ 9131.707003] [] ? sched_clock+0x9/0x10 [ 9131.707003] [] ? T.375+0x15/0x90 [ 9131.707003] [] ? trace_hardirqs_on_caller+0x64/0x180 [ 9131.707003] [] ? trace_hardirqs_off+0xd/0x10 [ 9131.707003] [] perf_event_overflow+0x14/0x20 [ 9131.707003] [] perf_swevent_hrtimer+0x11c/0x130 [ 9131.707003] [] ? error_exit+0x51/0xb0 [ 9131.707003] [] __run_hrtimer+0x83/0x1e0 [ 9131.707003] [] ? perf_event_overflow+0x20/0x20 [ 9131.707003] [] hrtimer_interrupt+0x106/0x250 [ 9131.707003] [] ? trace_hardirqs_off_thunk+0x3a/0x3c [ 9131.707003] [] smp_apic_timer_interrupt+0x53/0x90 [ 9131.707003] [] apic_timer_interrupt+0x13/0x20 [ 9131.707003] [] ? error_exit+0x51/0xb0 [ 9131.707003] [] ? error_exit+0x4c/0xb0 [ 9131.707003] ---[ end trace b2560d4876709347 ]--- Fix this by simply taking the stack pointer from regs->sp when regs are provided. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Thomas Gleixner Cc: H. Peter Anvin Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo commit 9e46294dadedc0c04adcb8ce760bd2cd74f7332d Author: Frederic Weisbecker Date: Sat Jul 2 15:00:52 2011 +0200 x86: Save stack pointer in perf live regs savings In order to prepare for fetching the stack pointer from the regs when possible in dump_trace() instead of taking the local one, save the current stack pointer in perf live regs saving. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Thomas Gleixner Cc: H. Peter Anvin Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo commit 632e270e01d8a1ee9e8ea56c83028727f17b1d17 Author: Rafael J. Wysocki Date: Fri Jul 1 22:29:15 2011 +0200 PM / Runtime: Return special error code if runtime PM is disabled Some callers of pm_runtime_get_sync() and other runtime PM helper functions, scsi_autopm_get_host() and scsi_autopm_get_device() in particular, need to distinguish error codes returned when runtime PM is disabled (i.e. power.disable_depth is nonzero for the given device) from error codes returned in other situations. For this reason, make the runtime PM helper functions return -EACCES when power.disable_depth is nonzero and ensure that this error code won't be returned by them in any other circumstances. Modify scsi_autopm_get_host() and scsi_autopm_get_device() to check the error code returned by pm_runtime_get_sync() and ignore -EACCES. Signed-off-by: Rafael J. Wysocki commit 455716e9b12ba93e93181ac88bef62e4eb5ac66c Author: Rafael J. Wysocki Date: Fri Jul 1 22:29:05 2011 +0200 PM / Runtime: Update documentation of interactions with system sleep The documents describing the interactions between runtime PM and system sleep generally refer to the model in which the system sleep state is entered through a global firmware or hardware operation. As a result, some recommendations given in there are not entirely suitable for systems in which this is not the case. Update the documentation to take the existence of those systems into account. Signed-off-by: Rafael J. Wysocki Reviewed-by: Kevin Hilman commit c47586b6d36ef2d5d7dc39afc44b75e31bc1a671 Author: Magnus Damm Date: Fri Jul 1 22:15:01 2011 +0200 ARM: mach-shmobile: sh7372 A3SG support Add support for the sh7372 A3SG power domain. This domain contains the SGX hardware block, but there is no open source driver available. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit 082517aa21c60c06bd2a4c287aab5e1b3d8c7c22 Author: Magnus Damm Date: Fri Jul 1 22:14:53 2011 +0200 ARM: mach-shmobile: sh7372 A3RI support Add support for the sh7372 A3RI power domain. This domain contains the ISP hardware block, but there is no driver available. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit 33afebf3da2e8c26faebb1b271c810f937e35788 Author: Magnus Damm Date: Fri Jul 1 22:14:45 2011 +0200 ARM: mach-shmobile: sh7372 A3RV support Add support for the sh7372 A3RV power domain and hook up the VPU device. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit 96f7934e448fd52644b8862ea12761e1524f3bf3 Author: Magnus Damm Date: Fri Jul 1 22:14:34 2011 +0200 ARM: mach-shmobile: sh7372 A4LC support for AP4EVB The AP4EVB board is also using a sh7372 SoC, so tie in A4LC support on that board as well. Signed-off-by: Magnus Damm Signed-off-by: Rafael J. Wysocki commit e3e0109138376bb262b8ecf33bad0586fa131925 Author: Rafael J. Wysocki Date: Fri Jul 1 22:13:56 2011 +0200 ARM / shmobile: Support for I/O power domains for SH7372 (v9) Use the generic power domains support introduced by the previous patch to implement support for power domains on SH7372. Signed-off-by: Rafael J. Wysocki Acked-by: Paul Mundt commit 3d5c30367cbc0c55c93bb158e824e00badc7ddc4 Author: Rafael J. Wysocki Date: Fri Jul 1 22:13:44 2011 +0200 PM: Rename clock management functions The common PM clock management functions may be used for system suspend/resume as well as for runtime PM, so rename them accordingly. Modify kerneldoc comments describing these functions and kernel messages printed by them, so that they refer to power management in general rather that to runtime PM. Signed-off-by: Rafael J. Wysocki Reviewed-by: Kevin Hilman commit b7b95920aa2e89e655afe9913ee0e55855ceda90 Author: Rafael J. Wysocki Date: Fri Jul 1 22:13:37 2011 +0200 PM: Allow the clocks management code to be used during system suspend The common clocks management code in drivers/base/power/clock_ops.c is going to be used during system-wide power transitions as well as for runtime PM, so it shouldn't depend on CONFIG_PM_RUNTIME. However, the suspend/resume functions provided by it for CONFIG_PM_RUNTIME unset, to be used during system-wide power transitions, should not behave in the same way as their counterparts defined for CONFIG_PM_RUNTIME set, because in that case the clocks are managed differently at run time. The names of the functions still contain the word "runtime" after this change, but that is going to be modified by a separate patch later. Signed-off-by: Rafael J. Wysocki Reviewed-by: Kevin Hilman commit d4f2d87a8b46c14c4307c690c92bd08229f66ecf Author: Rafael J. Wysocki Date: Fri Jul 1 22:13:29 2011 +0200 PM / Domains: Wakeup devices support for system sleep transitions There is the problem how to handle devices set up to wake up the system from sleep states during system-wide power transitions. In some cases, those devices can be turned off entirely, because the wakeup signals will be generated on their behalf anyway. In some other cases, they will generate wakeup signals if their clocks are stopped, but only if power is not removed from them. Finally, in some cases, they can only generate wakeup signals if power is not removed from them and their clocks are enabled. To allow platform-specific code to decide whether or not to put wakeup devices (and their PM domains) into low-power state during system-wide transitions, such as system suspend, introduce a new generic PM domain callback, .active_wakeup(), that will be used during the "noirq" phase of system suspend and hibernation (after image creation) to decide what to do with wakeup devices. Specifically, if this callback is present and returns "true", the generic PM domain code will not execute .stop_device() for the given wakeup device and its PM domain won't be powered off. Signed-off-by: Rafael J. Wysocki Acked-by: Kevin Hilman commit 596ba34bcd2978ee9823cc1d84df230576f8ffb9 Author: Rafael J. Wysocki Date: Fri Jul 1 22:13:19 2011 +0200 PM / Domains: System-wide transitions support for generic domains (v5) Make generic PM domains support system-wide power transitions (system suspend and hibernation). Add suspend, resume, freeze, thaw, poweroff and restore callbacks to be associated with struct generic_pm_domain objects and make pm_genpd_init() use them as appropriate. The new callbacks do nothing for devices belonging to power domains that were powered down at run time (before the transition). For the other devices the action carried out depends on the type of the transition. During system suspend the power domain .suspend() callback executes pm_generic_suspend() for the device, while the PM domain .suspend_noirq() callback runs pm_generic_suspend_noirq() for it, stops it and eventually removes power from the PM domain it belongs to (after all devices in the domain have been stopped and its subdomains have been powered off). During system resume the PM domain .resume_noirq() callback restores power to the PM domain (when executed for it first time), starts the device and executes pm_generic_resume_noirq() for it, while the .resume() callback executes pm_generic_resume() for the device. Finally, the .complete() callback executes pm_runtime_idle() for the device which should put it back into the suspended state if its runtime PM usage count is equal to zero at that time. The actions carried out during hibernation and resume from it are analogous to the ones described above. Signed-off-by: Rafael J. Wysocki Reviewed-by: Kevin Hilman commit 5248051b9afb6684cd817b2fbdaefa5063761dab Author: Rafael J. Wysocki Date: Fri Jul 1 22:13:10 2011 +0200 PM / Domains: Move code from under #ifdef CONFIG_PM_RUNTIME (v2) There is some code in drivers/base/power/domain.c that will be useful for both runtime PM and system-wide power transitions, so make it depend on CONFIG_PM instead of CONFIG_PM_RUNTIME. Signed-off-by: Rafael J. Wysocki Reviewed-by: Kevin Hilman commit e5291928839877f8e73c2643ee1d3fe0bcdcaf5c Author: Rafael J. Wysocki Date: Fri Jul 1 22:12:59 2011 +0200 PM: Introduce generic "noirq" callback routines for subsystems (v2) Introduce generic "noirq" power management callback routines for subsystems in addition to the "regular" generic PM callback routines. The new routines will be used, among other things, for implementing system-wide PM transitions support for generic PM domains. Signed-off-by: Rafael J. Wysocki commit f721889ff65afa6243c463832c74dee3bed418d5 Author: Rafael J. Wysocki Date: Fri Jul 1 22:12:45 2011 +0200 PM / Domains: Support for generic I/O PM domains (v8) Introduce common headers, helper functions and callbacks allowing platforms to use simple generic power domains for runtime power management. Introduce struct generic_pm_domain to be used for representing power domains that each contain a number of devices and may be parent domains or subdomains with respect to other power domains. Among other things, this structure includes callbacks to be provided by platforms for performing specific tasks related to power management (i.e. ->stop_device() may disable a device's clocks, while ->start_device() may enable them, ->power_off() is supposed to remove power from the entire power domain and ->power_on() is supposed to restore it). Introduce functions that can be used as power domain runtime PM callbacks, pm_genpd_runtime_suspend() and pm_genpd_runtime_resume(), as well as helper functions for the initialization of a power domain represented by a struct generic_power_domain object, adding a device to or removing a device from it and adding or removing subdomains. Introduce configuration option CONFIG_PM_GENERIC_DOMAINS to be selected by the platforms that want to use the new code. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman Reviewed-by: Kevin Hilman commit dc6e4e56e6ef473a696a1ab24f80b79b9aceb92d Author: Rafael J. Wysocki Date: Thu Jun 23 01:53:04 2011 +0200 PM: subsys_data in struct dev_pm_info need not depend on RM_RUNTIME The subsys_data field of struct dev_pm_info, introduced by commit 1d2b71f61b6a10216274e27b717becf9ae101fc7 (PM / Runtime: Add subsystem data field to struct dev_pm_info), is going to be used even if CONFIG_PM_RUNTIME is not set, so move it from under the #ifdef. Signed-off-by: Rafael J. Wysocki commit 564b905ab10d17fb42f86aa8b7b9b796276d1336 Author: Rafael J. Wysocki Date: Thu Jun 23 01:52:55 2011 +0200 PM / Domains: Rename struct dev_power_domain to struct dev_pm_domain The naming convention used by commit 7538e3db6e015e890825fbd9f86599b (PM: Add support for device power domains), which introduced the struct dev_power_domain type for representing device power domains, evidently confuses some developers who tend to think that objects of this type must correspond to "power domains" as defined by hardware, which is not the case. Namely, at the kernel level, a struct dev_power_domain object can represent arbitrary set of devices that are mutually dependent power management-wise and need not belong to one hardware power domain. To avoid that confusion, rename struct dev_power_domain to struct dev_pm_domain and rename the related pointers in struct device and struct pm_clk_notifier_block from pwr_domain to pm_domain. Signed-off-by: Rafael J. Wysocki Acked-by: Kevin Hilman commit 9da4714a2d44ff48618a8d375dd81873e858803d Author: Christoph Lameter Date: Wed Jun 1 12:26:00 2011 -0500 slub: slabinfo update for cmpxchg handling Update the statistics handling and the slabinfo tool to include the new statistics in the reports it generates. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 4eade540fc35353813097bfdb39465c9b8847a15 Author: Christoph Lameter Date: Wed Jun 1 12:25:59 2011 -0500 slub: Not necessary to check for empty slab on load_freelist load_freelist is now only branched to only if there are objects available. So no need to check the object variable for NULL. Signed-off-by: Pekka Enberg commit 03e404af26dc2ea0d278d7a342de0aab394793ce Author: Christoph Lameter Date: Wed Jun 1 12:25:58 2011 -0500 slub: fast release on full slab Make deactivation occur implicitly while checking out the current freelist. This avoids one cmpxchg operation on a slab that is now fully in use. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit e36a2652d7d1ad97f7636a39bdd8654d296cc36b Author: Christoph Lameter Date: Wed Jun 1 12:25:57 2011 -0500 slub: Add statistics for the case that the current slab does not match the node Slub reloads the per cpu slab if the page does not satisfy the NUMA condition. Track those reloads since doing so has a performance impact. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit fc59c05306fe1dcfa3fb8ba34ed45407fba4689c Author: Christoph Lameter Date: Wed Jun 1 12:25:56 2011 -0500 slub: Get rid of the another_slab label We can avoid deactivate slab in special cases if we do the deactivation of slabs in each code flow that leads to new_slab. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 80f08c191f6c9563641291bea80657a3b9faabf0 Author: Christoph Lameter Date: Wed Jun 1 12:25:55 2011 -0500 slub: Avoid disabling interrupts in free slowpath Disabling interrupts can be avoided now. However, list operation still require disabling interrupts since allocations can occur from interrupt contexts and there is no way to perform atomic list operations. The acquition of the list_lock therefore has to disable interrupts as well. Dropping interrupt handling significantly simplifies the slowpath. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 5c2e4bbbd60623f1024a753c291b666068f8a6e7 Author: Christoph Lameter Date: Wed Jun 1 12:25:54 2011 -0500 slub: Disable interrupts in free_debug processing We will be calling free_debug_processing with interrupts disabled in some case when the later patches are applied. Some of the functions called by free_debug_processing expect interrupts to be off. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 881db7fb03a77af0bcd460fd1de1f4062d5c18fe Author: Christoph Lameter Date: Wed Jun 1 12:25:53 2011 -0500 slub: Invert locking and avoid slab lock Locking slabs is no longer necesary if the arch supports cmpxchg operations and if no debuggin features are used on a slab. If the arch does not support cmpxchg then we fallback to use the slab lock to do a cmpxchg like operation. The patch also changes the lock order. Slab locks are subsumed to the node lock now. With that approach slab_trylocking is no longer necessary. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 2cfb7455d223ab24b23df44be430faf92e12390f Author: Christoph Lameter Date: Wed Jun 1 12:25:52 2011 -0500 slub: Rework allocator fastpaths Rework the allocation paths so that updates of the page freelist, frozen state and number of objects use cmpxchg_double_slab(). Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 61728d1efc927eccfa64c50ede4998a8765805c3 Author: Christoph Lameter Date: Wed Jun 1 12:25:51 2011 -0500 slub: Pass kmem_cache struct to lock and freeze slab We need more information about the slab for the cmpxchg implementation. Signed-off-by: Christoph Lameter Acked-by: David Rientjes Signed-off-by: Pekka Enberg commit 5cc6eee8a8c1aefe9c86fe7345a2aa1c4ca70dc6 Author: Christoph Lameter Date: Wed Jun 1 12:25:50 2011 -0500 slub: explicit list_lock taking The allocator fastpath rework does change the usage of the list_lock. Remove the list_lock processing from the functions that hide them from the critical sections and move them into those critical sections. This in turn simplifies the support functions (no __ variant needed anymore) and simplifies the lock handling on bootstrap. Inline add_partial since it becomes pretty simple. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit b789ef518b2a7231b0668c813f677cee528a9d3f Author: Christoph Lameter Date: Wed Jun 1 12:25:49 2011 -0500 slub: Add cmpxchg_double_slab() Add a function that operates on the second doubleword in the page struct and manipulates the object counters, the freelist and the frozen attribute. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit fc9bb8c768abe7ae10861c3510e01a95f98d5933 Author: Christoph Lameter Date: Wed Jun 1 12:25:48 2011 -0500 mm: Rearrange struct page We need to be able to use cmpxchg_double on the freelist and object count field in struct page. Rearrange the fields in struct page according to doubleword entities so that the freelist pointer comes before the counters. Do the rearranging with a future in mind where we use more doubleword atomics to avoid locking of updates to flags/mapping or lru pointers. Create another union to allow access to counters in struct page as a single unsigned long value. The doublewords must be properly aligned for cmpxchg_double to work. Sadly this increases the size of page struct by one word on some architectures. But as a resultpage structs are now cacheline aligned on x86_64. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 8cb0a5068f4108e8ca60d5e0bcfbe6901adcfaef Author: Christoph Lameter Date: Wed Jun 1 12:25:46 2011 -0500 slub: Move page->frozen handling near where the page->freelist handling occurs This is necessary because the frozen bit has to be handled in the same cmpxchg_double with the freelist and the counters. Signed-off-by: Christoph Lameter Acked-by: David Rientjes Signed-off-by: Pekka Enberg commit 50d5c41cd151b21ac1dfc98f048210456ccacc20 Author: Christoph Lameter Date: Wed Jun 1 12:25:45 2011 -0500 slub: Do not use frozen page flag but a bit in the page counters Do not use a page flag for the frozen bit. It needs to be part of the state that is handled with cmpxchg_double(). So use a bit in the counter struct in the page struct for that purpose. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 7e0528dadc9f8b04e4de0dba48a075100c2afe75 Author: Christoph Lameter Date: Wed Jun 1 12:25:44 2011 -0500 slub: Push irq disable into allocate_slab() Do the irq handling in allocate_slab() instead of __slab_alloc(). __slab_alloc() is already cluttered and allocate_slab() is already fiddling around with gfp flags. v6->v7: Only increment ORDER_FALLBACK if we get a page during fallback Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit e4a46182e1bcc2ddacff5a35f6b52398b51f1b11 Merge: b0af8df 3824abd Author: Pekka Enberg Date: Sat Jul 2 13:26:23 2011 +0300 Merge remote branch 'tip/x86/atomic' into slub/lockless commit 30891c90d81133179cc47eb77c30764a3b5dad5c Author: Russell King Date: Sun Jun 26 12:47:08 2011 +0100 ARM: entry: no need to reload the SPSR value from struct pt_regs The SVC IRQ, prefetch and data abort handlers preserve the SPSR value via r5 across the exception. Rather than re-loading it from pt_regs, use the preserved value instead. Signed-off-by: Russell King commit 40f0b90a2f16f433f9afbfef4b7c312efb54e933 Author: Russell King Date: Mon Jun 27 12:27:47 2011 +0100 ARM: entry: data abort: ensure r5 is preserved by abort functions Signed-off-by: Russell King commit 108f6af0a82cf3b61f3ac6728e2241805a935b64 Author: Russell King Date: Mon Jun 27 12:23:11 2011 +0100 ARM: entry: data abort: always use r6 for offset Signed-off-by: Russell King commit e22c12f9146d50ee6b0cf97db46b3310409f64e6 Author: Russell King Date: Mon Jun 27 09:52:54 2011 +0100 ARM: entry: data abort: use r2 as base of pt_regs rather than stack Now that we pass r2 into these helper functions as the pointer to pt_regs, use r2 as the base of the registers on the stack rather than using the stack pointer directly. Signed-off-by: Russell King commit da7404725781bc7c736e10cae5521e5604e222a5 Author: Russell King Date: Sun Jun 26 16:01:26 2011 +0100 ARM: entry: data abort: tail-call the main data abort handler Tail-call the main C data abort handler code from the per-CPU helper code. Update the comments in the code wrt the new calling and return register state. Signed-off-by: Russell King commit 0d147db0c127c561f8f9ead9f3c1ec38f89f1040 Author: Russell King Date: Sun Jun 26 14:42:02 2011 +0100 ARM: entry: data abort: avoid using r2 in abort helpers This allows us to pass the pt_regs pointer in to these functions ready for tail-calling the abort handler. Signed-off-by: Russell King commit 3e287bec6fde088bff05ee7f998f53e8ac75b922 Author: Russell King Date: Sun Jun 26 14:35:07 2011 +0100 ARM: entry: data abort: arrange for CPU abort helpers to take pc/psr in r4/r5 Re-jig the CPU abort helpers to take the PC/PSR in r4/r5 rather than r2/r3. Signed-off-by: Russell King commit 8dfe7ac96fedd4f5219879f63a8a546a33609daf Author: Russell King Date: Sun Jun 26 12:37:35 2011 +0100 ARM: entry: prefetch abort: tail-call the main prefetch abort handler Tail-call the main C prefetch abort handler code from the per-CPU helper code. Also note that the helper function becomes ABI compliant in terms of the registers preserved. Signed-off-by: Russell King commit d9600c99c549732a501cb727157800623a06175d Author: Russell King Date: Sun Jun 26 10:34:02 2011 +0100 ARM: entry: re-allocate registers in irq entry assembly macros This avoids the irq entry assembly corrupting r5, thereby allowing it to be preserved through to the svc exit code. Signed-off-by: Russell King commit f2741b78b607576f0c256604cb3d9256b3428a32 Author: Russell King Date: Sat Jun 25 17:35:19 2011 +0100 ARM: entry: consolidate trace_hardirqs_off into (svc|usr)_entry macros All handlers now call trace_hardirqs_off, so move this common code into the (svc|usr)_entry assembler macros. Signed-off-by: Russell King commit bc089602d206b2abc2d2e8e5324d90342cc0447b Author: Russell King Date: Sat Jun 25 18:28:19 2011 +0100 ARM: entry: instrument usr exception handlers with irqsoff tracing As we no longer re-enable interrupts in these exception handlers, add the irqsoff tracing calls to them so that the kernel tracks the state more accurately. Note that these calls are conditional on IRQSOFF_TRACER: kernel ----------> user ---------> kernel ^ irqs enabled ^ irqs disabled No kernel code can run on the local CPU until we've re-entered the kernel through one of the exception handlers - and userspace can not take any locks etc. So, the kernel doesn't care about the IRQ mask state while userspace is running unless we're doing IRQ off latency tracing. So, we can (and do) avoid the overhead of updating the IRQ mask state on every kernel->user and user->kernel transition. Signed-off-by: Russell King commit df295df6c391e322a06dea0d2bc3d22debd15fb9 Author: Russell King Date: Sat Jun 25 16:55:58 2011 +0100 ARM: entry: instrument svc undefined exception handler with irqtrace Add irqtrace function calls to the undefined exception handler, so that we get sane lockdep traces from locking problems in undefined exception handlers. Signed-off-by: Russell King commit 02fe2845d6a837ab02f0738f6cf4591a02cc88d4 Author: Russell King Date: Sat Jun 25 11:44:06 2011 +0100 ARM: entry: avoid enabling interrupts in prefetch/data abort handlers Avoid enabling interrupts if the parent context had interrupts enabled in the abort handler assembly code, and move this into the breakpoint/ page/alignment fault handlers instead. This gets rid of some special-casing for the breakpoint fault handlers from the low level abort handler path. Acked-by: Will Deacon Signed-off-by: Russell King commit 50c31e4a2497ea17747b587e8f96b278f07f5483 Author: Sergei Shtylyov Date: Fri Jul 1 22:42:08 2011 +0400 x86, mtrr: Use pci_dev->revision This code uses PCI_CLASS_REVISION instead of PCI_REVISION_ID, so it wasn't converted by commit 44c10138fd4 ("PCI: Change all drivers to use pci_device->revision") before being moved to arch/x86/... Do it now at last -- and save one level of indentation... Signed-off-by: Sergei Shtylyov Cc: Suresh Siddha Link: http://lkml.kernel.org/r/201107012242.08347.sshtylyov@ru.mvista.com Signed-off-by: Ingo Molnar commit 29cb3cd208dd0e4471bb80bec4facc49ceb199fa Author: Russell King Date: Sat Jul 2 09:54:01 2011 +0100 ARM: pm: allow suspend finisher to return error codes There are SoCs where attempting to enter a low power state is ignored, and the CPU continues executing instructions with all state preserved. It is over-complex at that point to disable the MMU just to call the resume path. Instead, allow the suspend finisher to return error codes to abort suspend in this circumstance, where the cpu_suspend internals will then unwind the saved state on the stack. Also omit the tlb flush as no changes to the page tables will have happened. Signed-off-by: Russell King commit ab63f58f253c3eca620347f5180ca3d6a1b6aa38 Author: Arnaud Lacombe Date: Sat Jul 2 00:59:41 2011 -0400 kconfig/conf: mark xfgets() private This function has not much reason to be public. In the mean time, convert declaration from K&R C to ISO C. Signed-off-by: Arnaud Lacombe commit 131c60a95e15e7d32b6f10881368e1ffe7296695 Author: Arnaud Lacombe Date: Sat Jul 2 00:25:49 2011 -0400 kconfig: remove pending prototypes for kconfig_load() Commit 5a6f8d2bd9e3392569ed6f29ea4d7210652f929b removed `kconfig_load()', however, it missed an hidden prototypes in `lkc.h'. Fix this. Signed-off-by: Arnaud Lacombe commit 32543999f31e8e3a25325cc7c25d98db0c111118 Author: Arnaud Lacombe Date: Tue Nov 2 00:26:33 2010 -0400 kconfig/conf: add command line options' description Signed-off-by: Arnaud Lacombe commit 275744cc8da0fd006e8f8fc1090f01dc0296810d Author: Arnaud Lacombe Date: Wed Oct 13 20:43:28 2010 -0400 kconfig/conf: reduce the scope of `defconfig_file' This variable is not used outside of main() so there is not much reason keeping it global. Ensure it is initialized as gcc has no way to know that normal execution path expect only one option switch to be given on the command line (except when we request help). As a result, we always initialize `defconfig_file' before using it. Signed-off-by: Arnaud Lacombe commit 8494453ad50599b0c9d099a230e423a89222ad08 Author: Arnaud Lacombe Date: Sun Sep 19 22:45:00 2010 -0400 kconfig: use calloc() for expr allocation Signed-off-by: Arnaud Lacombe commit 7e794cb7e36ccdb8c44b8ca7738720625b7aa2da Author: Wolfram Sang Date: Wed May 25 12:56:53 2011 +0200 rtc: stmp3xxx: Remove UIE handlers The RTC core handles UIE since 6610e08 (RTC: Rework RTC code to use timerqueue for events), so remove the specific interrupt in this driver. To make it work at all, enable interrupts in set_alarm() if needed. Drop IRQF_DISABLED which is deprecated, while we are here. Finally, add my copyright after all these changes. Signed-off-by: Wolfram Sang Tested-by: Shawn Guo Signed-off-by: John Stultz commit b5167159d4341d408ef6b941975f2fe8973b2a94 Author: Wolfram Sang Date: Wed May 25 12:56:52 2011 +0200 rtc: stmp3xxx: Get rid of mach-specific accessors Replace the accessors with standard readl/writel to remove their platform-dependency. Also, drop __raw_(read|write)l-accessors while we are here. Signed-off-by: Wolfram Sang Tested-by: Shawn Guo Signed-off-by: John Stultz commit a91d2bab355f3a5caa767d7316f80422bfcd2ad6 Author: Wolfram Sang Date: Wed May 25 12:56:51 2011 +0200 rtc: stmp3xxx: Initialize drvdata before registering device Commit f44f7f96a20 ("RTC: Initialize kernel state from RTC") uncovered an issue in a number of RTC drivers, where the drivers call rtc_device_register before initializing the device or platform drvdata. This frequently results in null pointer dereferences when the rtc_device_register immediately makes use of the rtc device, calling rtc_read_alarm. The solution is to ensure the drvdata is initialized prior to registering the rtc device. Signed-off-by: Wolfram Sang Tested-by: Shawn Guo Signed-off-by: John Stultz commit 46b21218145ecef0936eb4338a9e0ffef84f00cf Author: Wolfram Sang Date: Wed May 25 12:56:50 2011 +0200 rtc: stmp3xxx: Port stmp-functions to mxs-equivalents The stmp3xxx driver used to include functions from a stmp-specific include. Because of consolidation, plat-stmp has now been removed and merged with the compatible mach-mxs. Use the apropriate mxs-functions for transition. The accessors will be converted to readl/writel in a later patch. Signed-off-by: Wolfram Sang Tested-by: Shawn Guo Signed-off-by: John Stultz commit 47eac337cd87464b90d0ad2eb2a060036a95b649 Author: Wolfram Sang Date: Wed May 25 12:56:49 2011 +0200 rtc: stmp3xxx: Restore register definitions The stmp3xxx driver used to include register names from a stmp-specific include. Because of consolidation, plat-stmp has now been removed and merged with the compatible mach-mxs. Restore the register names directly in the driver and rename them to be specific to this driver. Signed-off-by: Wolfram Sang Tested-by: Shawn Guo Signed-off-by: John Stultz commit 07187ee13f2b4ba183d4a4832ea153dbb2e030d3 Author: Wolfram Sang Date: Wed Jun 22 23:20:14 2011 +0200 rtc: vt8500: Use define instead of hardcoded value for status bit Fixes the vt8500 driver to use a define value for the isr is-alarm bit. Cc: Alexey Charkov Signed-off-by: Wolfram Sang Signed-off-by: John Stultz commit aea54bce01c44bf3e35ac016fcd584b0de137673 Merge: 3e878b8 0ac9ebe Author: David S. Miller Date: Fri Jul 1 16:16:48 2011 -0700 Merge branch 'for-next' of git://git2.kernel.org/pub/scm/linux/kernel/git/lowpan/lowpan commit 3e878b8d54e0fc12df363ee8e4a638c8147aac98 Author: Greg Dietsche Date: Fri Jul 1 16:16:19 2011 -0700 net: rds: fix const array syntax Correct the syntax so that both array and pointer are const. Signed-off-by: Greg Dietsche Signed-off-by: David S. Miller commit fddc5f3e9164858cd9264a17580f9fc5ad948458 Author: Joe Perches Date: Fri Jul 1 09:43:13 2011 +0000 x25: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows 80 column line reflowing. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 89f0e4feafb64643b0f0aba9d89984362bac9739 Author: Joe Perches Date: Fri Jul 1 09:43:12 2011 +0000 sunrpc: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows 80 column line reflowing. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 7fd71b1e0787d4d32c6225ca59e23e522cd67cc3 Author: Joe Perches Date: Fri Jul 1 09:43:11 2011 +0000 sctp: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows useless break;s removed after returns and a comment added to an unnecessary default: break; because of a dubious gcc warning. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit c485538901e0334a3016241bf73b864216ff2e73 Author: Joe Perches Date: Fri Jul 1 09:43:10 2011 +0000 netrom: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows code on same line as case moved to separate lines and a "/* Fallthrough */" comment added where appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit fcb261f35714fdf3d5c37d714e55b507b8cd55bc Author: Joe Perches Date: Fri Jul 1 09:43:09 2011 +0000 lapb: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows 80 column reflowing. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 207ec0abbed50b43a44cb7c69a07aeee08da5e45 Author: Joe Perches Date: Fri Jul 1 09:43:08 2011 +0000 ipv6: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows 80 column reflowing, removal of a useless break after return, and moving open brace after case instead of separate line. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 4500ebf8d1cc749e1b438136745127e437c54002 Author: Joe Perches Date: Fri Jul 1 09:43:07 2011 +0000 ipv4: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows no difference. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 181b1e9ce1b9e705d4cd27b542ce05bc43abdab0 Author: Joe Perches Date: Fri Jul 1 09:43:06 2011 +0000 netfilter: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows miscellaneous 80 column wrapping, comment reflowing and a comment for a useless gcc warning for an otherwise unused default: case. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 1d67a51682443ffd1209d76dcc2f24a685259530 Author: Joe Perches Date: Fri Jul 1 09:43:05 2011 +0000 ipconfig: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows miscellaneous 80 column wrapping. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 075e1913e1fd7ef6dc8885fc844cfb6c48210104 Author: Joe Perches Date: Fri Jul 1 09:43:04 2011 +0000 econet: Reduce switch/case indent Make the case labels the same indent as the switch. Simplify a default case / return (unreached) Remove unnecessary break after return. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 06f8fe11bb4a84de9d9faa50c7ffbe40b90d395a Author: Joe Perches Date: Fri Jul 1 09:43:03 2011 +0000 decnet: Reduce switch/case indent Make the case labels the same indent as the switch. git diff -w shows differences for line wrapping. (fit multiple lines to 80 columns, join where possible) Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 4a9e4b09326baa6db30ae35e3521bf5259b238f5 Author: Joe Perches Date: Fri Jul 1 09:43:02 2011 +0000 appletalk: Reduce switch/case indent Make the case labels the same indent as the switch. (git diff -w net/appletalk shows no difference) Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 7b292b4bf9a9d6098440d85616d6ca4c608b8304 Author: Andrew McGregor Date: Mon Jun 13 11:31:31 2011 +1200 tty: fix "IRQ45: nobody cared" Unthrottling the TTY during close ends up enabling interrupts on a device not on the active list, which will never have the interrupts cleared. Doctor, it hurts when I do this. >>> On 6/2/2011 at 01:56 AM, in message <20110601145608.3e586e16@bob.linux.org.uk>, Alan Cox wrote: > On Wed, 01 Jun 2011 10:34:07 +1200 > "andrew mcgregor" wrote: > > The LKML message > > http://kerneltrap.org/mailarchive/linux-kernel/2010/2/25/4541847 from > > February doesn't seem to have been resolved since. We struck the > > issue, and the patch below (against 2.6.32) fixes it. Should I > > supply a patch against 3.0.0rc? > > I think that would be sensible. I don't actually see how you hit it as > the IRQ ought to be masked by then but it's certainly wrong for n_tty > to be calling into check_unthrottle at that point. > > So yes please send a patch with a suitable Signed-off-by: line to > linux-serial and cc GregKH as well. > > Alan Signed-off-by: Andrew McGregor Signed-off-by: Greg Kroah-Hartman commit 4e985adaa504c1c1a05c8e013777ea0791a17b4d Author: Thomas Graf Date: Tue Jun 21 03:11:20 2011 +0000 rtnl: provide link dump consistency info This patch adds a change sequence counter to each net namespace which is bumped whenever a netdevice is added or removed from the list. If such a change occurred while a link dump took place, the dump will have the NLM_F_DUMP_INTR flag set in the first message which has been interrupted and in all subsequent messages of the same dump. Note that links may still be modified or renamed while a dump is taking place but we can guarantee for userspace to receive a complete list of links and not miss any. Testing: I have added 500 VLAN netdevices to make sure the dump is split over multiple messages. Then while continuously dumping links in one process I also continuously deleted and re-added a dummy netdevice in another process. Multiple dumps per seconds have had the NLM_F_DUMP_INTR flag set. I guess we can wait for Johannes patch to hit net-next via the wireless tree. I just wanted to give this some testing right away. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 8168e9c2de7383c497aff9cd906dd475f9b42b2c Author: J Freyensee Date: Fri Jun 17 15:09:53 2011 -0700 PTI feature to allow user to name and mark masterchannel request. This feature addition provides a new parameter in pti_request_masterchannel() to allow the user to provide their own name to mark the request when the trace is viewed in a PTI SW trace viewer (like MPTA). If a name is not provided and NULL is provided, the 'current' process name is used. API function header documentation documents this. Signed-off-by: Jeremy Rocher Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit fc360ee7a75da5ef96e7fca145b05024bfce4c72 Author: J Freyensee Date: Fri Jun 17 15:13:33 2011 -0700 0 for o PTI Makefile bug. This patch fixes an issue where 'obj' was actually spelled '0bj' and would skip compiling the pti driver. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit aef7fe5274af3e608e0f3eaf0fea6d3c78ffb92e Author: MyungJoo Ham Date: Wed Jun 29 15:28:24 2011 +0900 tty: serial: samsung.c remove legacy PM code. This patch "modernize" tty/serial/samsung.c to use non-legacy code for suspend/resume. Signed-off-by: MyungJoo Ham Signed-off-by: KyungMin Park Signed-off-by: Greg Kroah-Hartman commit f2eb3cdf14457fccb14ae8c4d7d7cee088cd3957 Author: Ralf Baechle Date: Mon Jun 27 14:26:56 2011 +0100 SERIAL: SC26xx: Fix link error. Kconfig allows enabling console support for the SC26xx driver even when it's configured as a module resulting in a: ERROR: "uart_console_device" [drivers/tty/serial/sc26xx.ko] undefined! modpost error since the driver was merged in eea63e0e8a60d00485b47fb6e75d9aa2566b989b [SC26XX: New serial driver for SC2681 uarts] in 2.6.25. Fixed by only allowing console support to be enabled if the driver is builtin. Signed-off-by: Ralf Baechle Cc: linux-serial@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: stable Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9c00c6e7f9137b669e691219ea871eeb2c67c3d0 Author: Mika Westerberg Date: Thu Jun 23 13:39:00 2011 +0100 serial: mrst_max3110: initialize waitqueue earlier The driver went to initialize its waitqueue at the start of the main processing thread. However, it is possible that this thread is not scheduled on a CPU before the write function is called which leads to a following error: BUG: spinlock bad magic on CPU#1, swapper/1 lock: f5f3ebdc, .magic: 00000000, .owner: /-1, .owner_cpu: 0 Pid: 1, comm: swapper Not tainted 3.0.0-rc2+ #67 Call Trace: [] spin_bug+0xa3/0xf0 [] do_raw_spin_lock+0x7d/0x150 [] ? init_idle+0x8d/0x20c [] _raw_spin_lock_irqsave+0x4e/0x60 [] ? __wake_up+0x1b/0x50 [] __wake_up+0x1b/0x50 [] ? uart_console_write+0x4c/0x60 [] ? serial_m3110_enable_ms+0x10/0x10 [] serial_m3110_con_write+0x55/0x60 [] __call_console_drivers+0x75/0x90 [] _call_console_drivers+0x49/0x80 [] console_unlock+0xca/0x1f0 [] vprintk+0x18f/0x4f0 [] ? trace_hardirqs_on+0xb/0x10 [] printk+0x18/0x1a [] register_console+0x2e0/0x350 [] uart_add_one_port+0x33e/0x3d0 [] ? trace_hardirqs_on+0xb/0x10 [] ? try_to_wake_up+0x18b/0x250 [] serial_m3110_probe+0x1c2/0x1df [] ? serial_m3110_suspend+0x40/0x40 [] spi_drv_probe+0x17/0x20 ... We fix this by initializing the waitqueue before the main thread is created. Signed-off-by: Mika Westerberg Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f2934c3c519b58f84082652447e62ab4a76c53ec Author: William Douglas Date: Thu Jun 23 13:38:36 2011 +0100 mrst_max3110: Change max missing message priority. Change print message to notice instead of error to clean up non critcal messages showing on startup. The MAX3111 not being present is a normal path for end user systems. Signed-off-by: William Douglas [rebased on 3.0, switched to dev_dbg()] Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 40eb0de5ba7e88e30349f336a38cf22016b8c07f Author: Jongpill Lee Date: Wed Jun 22 17:50:25 2011 +0900 tty: s5pv210: Add delay loop on fifo reset function for UART This patch addes delay loop on fifo reset function for UART. On high speed freq, it needs delay function when fifo reset. If not, system will hang by this uart reset problem when resuming from suspend mode. Signed-off-by: Jongpill Lee Signed-off-by: Jaecheol Lee Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit 5568181f188ae9485a0cdbea5ea48f63d186a298 Author: Stephen Warren Date: Fri Jun 17 09:45:07 2011 -0600 tty/serial: Fix XSCALE serial ports, e.g. ce4100 Commit 4539c24fe4f92c09ee668ef959d3e8180df619b9 "tty/serial: Add explicit PORT_TEGRA type" introduced separate flags describing the need for IER bits UUE and RTOIE. Both bits are required for the XSCALE port type. While that patch updated uart_config[] as required, the auto-probing code wasn't updated to set the RTOIE flag when an XSCALE port type was detected. This caused such ports to stop working. This patch rectifies that. Reported-by: Sebastian Andrzej Siewior Tested-by: Sebastian Andrzej Siewior Signed-off-by: Stephen Warren Cc: stable [3.0] Signed-off-by: Greg Kroah-Hartman commit 7c365bac4437887382d53be2f735b34634d68c3b Author: Mike Frysinger Date: Thu Jun 16 18:31:42 2011 -0400 serial: bfin_5xx: fix off-by-one with resource size This doesn't cause any real bugs, but it should still be fixed. Signed-off-by: Mike Frysinger Signed-off-by: Greg Kroah-Hartman commit 5a3c6b251d587715f8b87a50216e4c085c655777 Author: Manuel Zerpies Date: Thu Jun 16 14:07:22 2011 +0200 drivers/tty: use printk_ratelimited() instead of printk_ratelimit() Since the printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited(). Signed-off-by: Manuel Zerpies Signed-off-by: Greg Kroah-Hartman commit 6ab8fba7fcb012a42d686abd33555b2215071415 Author: Russ Gorby Date: Thu Jun 16 14:20:13 2011 -0700 tty: n_gsm: Added refcount usage to gsm_mux and gsm_dlci structs The gsm_mux is created/destroyed when ldisc is opened/closed but clients of the MUX channel devices (gsmttyN) may access this structure as long as the TTYs are open. For the open, the ldisc open is guaranteed to preceed the TTY open, but the close has no such guaranteed ordering. As a result, the gsm_mux can be freed in the ldisc close before being accessed by one of the TTY clients. This can happen if the ldisc is removed while there are open, active MUX channels. A similar situation exists for DLCI-0, it is basically a resource shared by MUX and DLCI , and should not be freed while they can be accessed To avoid this, gsm_mux and dlcis now have a reference counter ldisc open takes a reference on the mux and all the dlcis gsmtty_open takes a reference on the mux, dlci0 and its specific dlci. Dropping the last reference initiates the actual free. Signed-off-by: Russ Gorby Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit bcd5abe28f40cc6a935d3339cde27976f6be3f1a Author: Russ Gorby Date: Thu Jun 16 14:20:12 2011 -0700 tty: n_gsm: Add raw-ip support This patch adds the ability to open a network data connection over a mux virtual tty channel. This is for modems that support data connections with raw IP frames instead of PPP. On high speed data connections this eliminates a significant amount of PPP overhead. To use this interface, the application must first tell the modem to open a network connection on a virtual tty. Once that has been accomplished, the app will issue an IOCTL on that virtual tty to create the network interface. The IOCTL will return the index of the interface created. The two IOCTL commands are: ioctl( fd, GSMIOC_ENABLE_NET ); ioctl( fd, GSMIOC_DISABLE_NET ); Signed-off-by: Russ Gorby Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit d50f6dcaf22a3234a65ae4f6087173e66b7fff56 Author: Russ Gorby Date: Tue Jun 14 13:35:32 2011 -0700 tty: n_gsm: expose gsmtty device nodes at ldisc open time The n_gsm driver being an ldisc, does not provide a convenient method e.g. udev to create the tty device nodes automatically when the ldisc is opened. The TTY device nodes are now created via calls to tty_register_device from the ldisc open. Signed-off-by: Russ Gorby Signed-off-by: Greg Kroah-Hartman commit 20ae6d0b307963416db0e8433602e5d5c95e942b Author: Tomoya MORINAGA Date: Fri Jun 17 10:13:26 2011 +0900 pch_phub: Fix register miss-setting issue Register "interrupt delay value" is for GbE which is connected to Bus-m of PCIe. However currently, the value is set for Bus-n. As a result, the value is not set correctly. This patch moves setting the value processing of Bus-n to Bus-m. Signed-off-by: Tomoya MORINAGA Signed-off-by: Greg Kroah-Hartman commit 1e4de81653bae3f5e6d06e3384853d31d564bbec Author: Axel Lin Date: Wed Jun 29 15:57:53 2011 +0800 firmware: gsmi: remove sysfs entries when unload the module This patch removes sysfs entries in gsmi_exit() and gsmi_init() error path. Also move the driver successfully loaded message to the end of gsmi_init() and return proper error if register_efivars() fails. Signed-off-by: Axel Lin Signed-off-by: Greg Kroah-Hartman commit 48d9854285635dd8b0535af7cb0d508b08db9e98 Author: Harry Wei Date: Sun Jun 12 11:39:04 2011 +0800 Documentation/zh_CN: Fix messy code file email-clients.txt Signed-off-by: Harry Wei Signed-off-by: Greg Kroah-Hartman commit 573c9774396091dc9d55e7de91026608fa2db3ee Author: Márton Németh Date: Sun Jun 19 22:30:16 2011 +0200 driver core: add more help description for "path to uevent helper" The kernel configuration UEVENT_HELPER_PATH is a string to the uevent helper program. Add more description about how to disable this feature and how to enable it again during runtime. Signed-off-by: Márton Németh Signed-off-by: Greg Kroah-Hartman commit 156faf9080e0acf2b301c982e7a77cd6fbb2d0ad Author: matt mooney Date: Sun Jun 12 11:17:31 2011 -0700 driver-core: modify FIRMWARE_IN_KERNEL help message The help message for the configuration variable was inconsistent with the way "make firmware_install" really works. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 113647a281037d8b6f32e07f42a1328c7cd3da3b Author: matt mooney Date: Sun Jun 12 11:17:30 2011 -0700 driver-core: Kconfig grammar corrections in firmware configuration Fix some grammatical errors and reword a few sentences. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit e931830bb877e2aad9a1be83506f9bdb26c91e4e Author: edwin_rong Date: Fri Jun 17 19:35:11 2011 +0800 Realtek cr: Add autosuspend function. The autosuspend function can be disabled by unchecking the Macro CONFIG_REALTEK_AUTOPM in kernel config file, by default, this macro is turned on. Signed-off-by: edwin_rong Signed-off-by: Greg Kroah-Hartman commit b6507df48240202b3f623e73c14623d7b3b09b99 Author: edwin_rong Date: Fri Jun 17 19:35:10 2011 +0800 Realtek cr: Remove unused Macros Remove Macros wait_timeout() and wait_timeout_x(). Signed-off-by: edwin_rong Signed-off-by: Greg Kroah-Hartman commit 151d9fad6e8459b4fc891a3c8543dbea11049387 Author: edwin_rong Date: Fri Jun 17 19:35:09 2011 +0800 Realtek cr: clean up unnecessary whitespaces. Signed-off-by: edwin_rong Signed-off-by: Greg Kroah-Hartman commit 5b8261385c5c3e5cf70a95c36cce71939b844a16 Author: Viliam Mateicka Date: Thu Jun 16 10:04:36 2011 +0200 USB: s3c2410_udc: fix custom UDC command handling There is a bug in Samsung's UDC driver, which is completely disabling the USB device when a custom UDC command is used. Following patch seems to get the right behavior (e.g. enabling pull-up instead of disabling then Vcc is applied). Signed-off-by: Viliam Mateicka Signed-off-by: Greg Kroah-Hartman commit bc8687db894d537283b9e1e37806cca101185e56 Author: Tatyana Brokhman Date: Thu Jun 30 08:44:42 2011 +0300 usb: gadget: Compilation warning fix A compilation warning was added by the patch "usb: gadget: use config_ep_by_speed() instead of ep_choose()". This patch fixed it. Signed-off-by: Tatyana Brokhman Signed-off-by: Greg Kroah-Hartman commit 5bf54506b036412e05e6ea0f000d627d775e7afc Author: Moiz Sonasath Date: Mon Jun 27 10:01:01 2011 -0500 USB: OTG: Use work_queue in set_vbus for TWL6030 transciever With this commit: cccad6d4b103e53fb3d1fc1467f654ecb572d047 usb: otg: notifier: switch to atomic notifier Following dumps are observed on attach/detach for MUSB HOST mode and on a detach for MUSB Device mode. BUG: sleeping function called from invalid context at kernel/mutex.c:85 where, the source is: twl6030_usb_irq ->atomic_notifier_call_chain ->musb_otg_notifications ->twl6030_set_vbus ->twl_i2c_write_u8 ->mutex_lock This patch moves the i2c writes in set_vbus function to a work-queue thereby avoiding I2C writes in atomic context. Tested HOST and Device mode functionality on OMAP4460 Signed-off-by: Moiz Sonasath Signed-off-by: Greg Kroah-Hartman commit 28f75f4db1e5ea1366375b2a6c40d66659e0e7ec Author: Jassi Brar Date: Sat Jun 25 00:17:26 2011 +0530 USB: Gadget: Webcam: Return correct result of bind The config bind was reported success even if usb_add_function failed. Fix the return value. Signed-off-by: Jassi Brar Acked-by: Laurent Pinchart Signed-off-by: Greg Kroah-Hartman commit 5030ec730279eabafccf862f3c8393af90c258a5 Author: Bob Liu Date: Thu Jun 23 17:09:49 2011 -0400 USB: gadget: fix req length in sourcesink_setup() The recent commit 2edb11cbac fixed req->length in the composite_setup() function, but that will cause all g_zero tests to fail like: root#> ./testusb -D /proc/bus/usb/002/021 -t14 -c 15000 -s 256 -v 1 unknown speed /proc/bus/usb/002/021 /proc/bus/usb/002/021 test 14 --> 32 (Broken pipe) We need to fix req->length in sourcesink_setup() as well to avoid this. Signed-off-by: Bob Liu Signed-off-by: Mike Frysinger Signed-off-by: Greg Kroah-Hartman commit 6e7be1a0a87da3c54f0036a1601a58ac0616b2bb Author: Tobias Klauser Date: Wed Jun 22 10:33:02 2011 +0200 USB: Documentation: Use correct character in gadget_hid.txt Use ASCII minus sign instead of unicode EN DASH in gadget_hid.txt. Also remove two unecessary spaces in the same file. Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit 6d721b2946a18373f45837e899fc32bb550eaa56 Author: Kuninori Morimoto Date: Tue Jun 21 15:09:19 2011 +0900 usb: renesas_usbhs: use dma handler Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 4ce68805637b798ae6244487879c6716d24a4cbc Author: Kuninori Morimoto Date: Tue Jun 21 09:33:43 2011 +0900 usb: renesas_usbhs: put obtained dma channel info to debug message Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit bf929b3bee635bea5c91f1c1d7985a9fcdfdb069 Author: Manuel Zerpies Date: Thu Jun 16 14:12:47 2011 +0200 drivers/usb/atm: use printk_ratelimited() instead of printk_ratelimit() Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited() Signed-off-by: Manuel Zerpies Signed-off-by: Greg Kroah-Hartman commit 9708cd2f84fade7f7c771712efa38b5f56d3c115 Author: Manuel Zerpies Date: Thu Jun 16 14:15:16 2011 +0200 wusb: use printk_ratelimited() instead of printk_ratelimit() Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited() Signed-off-by: Manuel Zerpies Signed-off-by: Greg Kroah-Hartman commit 305e7be5d5724ced063fcf21c3df6bd0fed19a04 Author: Manuel Zerpies Date: Thu Jun 16 14:15:54 2011 +0200 usb/class: use printk_ratelimited() instead of printk_ratelimit() Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited() Signed-off-by: Manuel Zerpies Signed-off-by: Greg Kroah-Hartman commit 8220796df85d58a445863424b7b2053d4741e931 Author: Felipe Balbi Date: Mon Jun 27 15:57:12 2011 +0300 usb: musb: no need to access platform_device dev_get_drvdata() is exactly the same as platform_get_drvdata(). Drop that useless access to the platform device. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit ded1ddbf92ee2c8f04af7fe805e1074be5d41f7f Author: Felipe Balbi Date: Mon Jun 27 15:56:32 2011 +0300 usb: musb: omap: always create musb device there's no point in not creating that device always. It's simpler to always create, than to keep changing that stupid ifdef. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 019f976e8f268a63b2fcbb662aa2f77f6b07bac6 Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:28:38 2011 +0200 usb: gadget: udc-core: wire up sysfs files This was somehow forgotten. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit aa0747394337e50533badd46e8fb7106bad3311e Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:26:17 2011 +0200 usb: gadget: dummy_hcd: convert to new-style udc-probe bind() and pull is moved to udc core, call callbacks are verified by the upper layer. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit e71eb392c2014e2b377810ad329e36b0229d041c Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:26:16 2011 +0200 usb: musb: convert musb to new style bind udc-core checks for valid callbacks so there is no need for the driver to do so. Also "can-be-bound-once" is verified by udc-core. The pull-up callback is called by udc-core afterwords. [ balbi@ti.com : keep holding gadget_driver pointer for now remove the stupid check for gadget_driver otherwise we don't handle IRQs ] Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 352c2dc8b07491bbab77ddf86c20c16a97326ee7 Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:26:15 2011 +0200 usb: gadget: udc-core: add "new-style" registration interface udc_start() should only trigger the internal state machine and make minimal house keeping. Before that call udc-core calls the bind() callback and after the callback the pullup(). udc_stop() is simillar, udc-core calls pullup(), unbind() and finally udc_stop(). Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit b5738413c96126e8191bc506b403cd55950b8f9a Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:26:14 2011 +0200 usb: gadget: dummy_hcd: move selection of speed into ->pullup() The configuration is static however we only know the speed after we have connected with the other side. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit f8744d40ca12d54f35c56831040683d52e765bf8 Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:26:13 2011 +0200 usb: gadget: dummy_hcd: init is_otg in init_dummy_udc_hw() This value is now assigned during bind(). The configuration depends on static values assigned by dummy driver itself. So there is no need to defer this assigment until one know the actuall speed since the configuration is static and known early. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 0fb5759952e934dd5ff25fd79f45cb5d69c8d2d1 Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:26:12 2011 +0200 usb: gadget: dummy_hcd: move ep initialisation HW setup This is only required to be done once. There is no counter part to this in ->stop() so there is no need to re-do it next time. While here also init the max_stream size to 0 on SS speed. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 765f5b830e547229bb752e7b232ee83e2b3d49d5 Author: Sebastian Andrzej Siewior Date: Thu Jun 23 14:26:11 2011 +0200 usb: gadget: defer setting maxpacket till ->setup() maxpacket is set by the udc driver for ep0 very early. This value is copied by the function gadget used later for the USB_DT_DEVICE and USB_DT_DEVICE_QUALIFIER query. This seems to work fine so far. For USB3 we need set a different value here. In SS speed it is 2^x with x=9 and in HS we set something <= 64. If the UDC starts in SS and continues in HS after the cable has been plugged it will report a too small value. There setting of this value is defered and taken automaticly from the ep0 pointer where the UDC driver can update it according to the speed it detected _after_ a cable has been plugged. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 193ab2a6070039e7ee2b9b9bebea754a7c52fd1b Author: Felipe Balbi Date: Wed Jun 22 17:28:10 2011 +0300 usb: gadget: allow multiple gadgets to be built now that we have the udc class, we can allow multiple gadget controller drivers to be compiled as modules. This will allow for distro-like kernels for embedded devices. With this patch, I managed to build an x86 kernel with support for many of the controllers enabled: CONFIG_USB_FUSB300=m CONFIG_USB_R8A66597=m CONFIG_USB_M66592=m CONFIG_USB_AMD5536UDC=m CONFIG_USB_CI13XXX_PCI=m CONFIG_USB_NET2272=m CONFIG_USB_NET2280=m CONFIG_USB_GOKU=m CONFIG_USB_LANGWELL=m CONFIG_USB_EG20T=m Also an ARM kernel with support for many controllers: CONFIG_USB_FUSB300=m CONFIG_USB_OMAP=m CONFIG_USB_R8A66597=m CONFIG_USB_GADGET_MUSB_HDRC=m CONFIG_USB_M66592=m CONFIG_USB_NET2272=m CONFIG_USB_DUMMY_HCD=m The next step would be to get rid of the direct access to arch/ and mach/ directories on some gadget controllers so that we can build all of them without depending on their respective ARCH_* symbols. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit ee34e51a7458ba59af65d1b0eb9c7fa9d19a7586 Author: Felipe Balbi Date: Wed Jun 29 12:45:03 2011 +0300 usb: musb: choose correct fifo_mode When we start building glue layers as modules, we need to be careful with the fifo_mode changes otherwise that weird ifdeferry won't evaluate correctly. Add the missing _MODULE variants for all glue layers to prevent everybody from using fifo_mode 2. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 622859634a663c5e55d0e2a2cdbb55ac058d97b3 Author: Felipe Balbi Date: Wed Jun 22 17:28:09 2011 +0300 usb: musb: drop a gigantic amount of ifdeferry the MUSB IP is always OTG, so there's no point in adding so many ifdefs on the code. Drop those and always compile the driver for OTG support. This also allows us to drop the useless "driver mode" choice. For doing that, we need to make musb depend on both Host and Peripheral side. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit e4e5b136eb6f2d3aa10dca108a1b787dc92d67df Author: Felipe Balbi Date: Mon Jun 27 15:57:46 2011 +0300 usb: musb: be careful when using different fifo_modes if we have more endpoints configured than enabled on fifo_mode, then we need to be careful on save/restore context operations, otherwise we will try to access uninitialized __iomem pointer. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit fc0b721f27beb5464d9fb5e521f5cd68127dd14e Author: Sebastian Andrzej Siewior Date: Fri Jun 17 19:43:13 2011 +0200 usb: gadget: dummy_hcd: move common bits of suspend/resume into one function Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 4baa74fe32f330d464d59a00d01980fd16a15ecc Author: Sebastian Andrzej Siewior Date: Thu Jun 16 20:37:00 2011 +0200 usb: gadget: remove net2280_set_fifo_mode() This function has no user in my tree. It looks like it belongs to net2280 but it somehow morphed into the dummy_hcd. So I remove it before it spreads into more drivers. After some digging I figured out that the only user was removed in |commit 9079e91b5b5a84836e65cdc9128d2602e3beaef2 |Author: David Brownell |Date: Wed May 7 16:00:36 2008 -0700 | | USB: serial gadget: cleanup/reorg Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit d8a14a85c72faf1bdcbbc12255361aaa9cb79ff5 Author: Sebastian Andrzej Siewior Date: Fri Jun 17 10:11:41 2011 +0200 usb: gadget: dummy_hcd: use less checks for USB_SPEED_SUPER Taking the correct struct once avoids doing the speed dance. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 719e52cbc7b826fae9501f3b86b8cbc25a4c5268 Author: Sebastian Andrzej Siewior Date: Thu Jun 16 20:36:57 2011 +0200 usb: gadget: dummy_hcd: use gadget_to_dummy_hcd() where possible gadget_to_dummy_hcd() already does the speed check, so it's unnecessary to unroll that all the time. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 99fd14080e7f0a65b87830bf5062b09f6e80dd13 Author: Sebastian Andrzej Siewior Date: Thu Jun 16 20:36:56 2011 +0200 usb: gadget: dummy_hcd: set gadget.is_otg before calling bind() Before commit 53832daea ("usb: gadget: dummy_hcd: use the shared_hcd infrastructure") the is_otg field was set in dummy_udc_probe(). It seems to me that this field is used in gadget's bind function. Therefore I'm moving it before the bind() callback is called. Cc: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 2542787430fc46b4e07e0da4c6ec80ed230032e5 Author: Sebastian Andrzej Siewior Date: Thu Jun 16 20:36:55 2011 +0200 usb: gadget: dummy_hcd: use dummy_pullup() instead of open coding The removed code does the same thing as dummy_pullup(). The only difference is that in dummy_udc_stop() the first dummy_pullup() did not call usb_hcd_poll_rh_status(). Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit e9c23a255a33cf423336b7cba39b2b6dcc83a6bc Author: Sergei Shtylyov Date: Wed Jun 15 21:10:37 2011 +0300 usb: gadget: add missing #include's When #include'd alone, causes a lot of compilation errors and warnings -- all because it relies on the including code to bring in the necessary #include's instead of doing this itself. Signed-off-by: Sergei Shtylyov Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 199e7edbb1b32d237ade354fee24eef5e2cbeb18 Author: Felipe Balbi Date: Mon Jun 13 18:43:59 2011 +0300 usb: gadget: chips: remove ifdef trickery the gadget controller number is only used during bind() to update descriptors and/or check that a particular controller can support a particular gadget driver. Because of that, we can remove the ifdef trickery as it's a rather small optimization anyway. While at that, also sort the entries alphabetically and add a comment stating we want to keep the list ordered alphabetically. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 877c1f5408a94cd8a0fa1de4e4806830c1839e8d Author: Felipe Balbi Date: Wed Jun 29 16:41:57 2011 +0300 usb: gadget: ci13xx_udc: fix usb_ep_enable() call commit 72c973d (usb: gadget: add usb_endpoint_descriptor to struct usb_ep) has introduced a compile error to ci13xxx_udc. Fix it. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 513385a3cf97e9fb7e982afffeb013a12a7ccbd2 Author: Sebastian Andrzej Siewior Date: Wed Jun 29 16:41:56 2011 +0300 usb: gadget: s3c2410_udc: use platform ids instead This also fixes the error path: If the second device fails to register we never remove the first one. This is compile-tested only. I don't see any difference between those two. Maybe we should just use one name instead? Cc: Ben Dooks Cc: Kukjin Kim Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 86081d7be34e0f80dc5c46391ec927fc4f350462 Author: Sebastian Andrzej Siewior Date: Wed Jun 29 16:41:55 2011 +0300 usb: gadget: add platform module alias where it is missing Without it udev won't be able to load the driver once it notices the device unbound. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit e4fe056ed3a350ec569aa25014a0982883bc03c1 Author: Sebastian Andrzej Siewior Date: Wed Jun 29 16:41:54 2011 +0300 usb: gadget: net2272: cleanup pci_register_driver() error path In case pci_register_driver() fails it error will be 0 in case platform_driver_register() was fine. Also without PCI pci_register_driver() evaluates to 1 which is well, special. If platform_driver_register() returns EINVAL or EBUSY we end up with 0. Acked-by: Mike Frysinger Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 7eca4c5a8b73f22ad16ad6e76b901351732355da Author: Tatyana Brokhman Date: Wed Jun 29 16:41:53 2011 +0300 usb: gadget: dummy_hcd: add 'is_high_speed' parameter This patch adds a new module parameter to dummy_hcd called is_high_speed. When set to false the connected device will be forced to operate in full-speed mode. By default, this parameter is set to 'true'. Acked-by: Alan Stern Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 1cd8fd2887e162ad3d067150962cc3d32dcf3150 Author: Tatyana Brokhman Date: Wed Jun 29 16:41:52 2011 +0300 usb: gadget: dummy_hcd: add SuperSpeed support This patch adds SS support to the dummy hcd module. It may be used to test SS device when no (SS) HW is available. USB 3.0 hub includes 2 hubs - one HS and one SS. This patch adds support for a SS root hub in the dummy_hcd module. A new module parameter was added: is_super_speed. When set to true, a SS root hub will also be registered and the connected device will be enumerated over the SS root hub. The default of this parameter is false. Signed-off-by: Tatyana Brokhman [ balbi@ti.com : slight change to commit log fixed one coding style issue ] Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit cdfcbd2c4a9e866c19bf8fe2b4e011a12441c32a Author: Tatyana Brokhman Date: Wed Jun 29 16:41:51 2011 +0300 usb: gadget: dummy_hcd: use the shared_hcd infrastructure This patch is a preparation for adding SuperSpeed support to dummy hcd. It takes the master side fields out of the struct dummy to a separate structure. The init process was also modified to resemble the way it is done by xHCI. Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit bdb64d727216b49a18c2b8337658adc6b2db82ea Author: Tatyana Brokhman Date: Wed Jun 29 16:41:50 2011 +0300 usb: gadget: add SuperSpeed support to the Gadget Framework SuperSpeed USB has defined a new descriptor, called the Binary Device Object Store (BOS) Descriptor. It has also changed a bit the definition of SET_FEATURE and GET_STATUS requests to add USB3-specific details. This patch implements both changes to the Composite Gadget Framework. [ balbi@ti.com : slight changes to commit log fixed a compile error on ARM ] Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 35a0e0bf6f6b2b900d461e9f35c286953b2b1afc Author: Tatyana Brokhman Date: Wed Jun 29 16:41:49 2011 +0300 usb: gadget: add max_speed to usb_composite_driver This field is used by the Gadget drivers to specify the maximum speed they support, meaning: the maximum speed they can provide descriptors for. The driver speed will be set in consideration of this value. [ balbi@ti.com : dropped the ifdeffery ] Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 9ea35331d052a5af1ba4e6244c52485f82587b60 Author: Mike Frysinger Date: Wed Jun 29 16:41:48 2011 +0300 usb: musb: update musb_platform_ops docs to match code The "channel_program" member was renamed to "adjust_channel_params", but the documentation wasn't updated. Reported-by: Sergei Shtylyov Signed-off-by: Mike Frysinger Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit c282af49901679b63c139b8330b0aba027aa3b56 Author: Bryn M. Reeves Date: Fri Jul 1 15:49:23 2011 -0500 dlm: use vmalloc for hash tables Allocate dlm hash tables in the vmalloc area to allow a greater maximum size without restructuring of the hash table code. Signed-off-by: Bryn M. Reeves Signed-off-by: David Teigland commit a7f08958d7ca69e26ec85fe49c0be3568a565493 Merge: bee4d4a 2b1ecb7 Author: Keith Packard Date: Fri Jul 1 13:33:49 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 390192b300570b2bc721d77067ca133f58015ae8 Author: Johannes Stezenbach Date: Fri Jul 1 22:32:26 2011 +0200 compat_ioctl: fix warning caused by qemu On Linux x86_64 host with 32bit userspace, running qemu or even just "qemu-img create -f qcow2 some.img 1G" causes a kernel warning: ioctl32(qemu-img:5296): Unknown cmd fd(3) cmd(00005326){t:'S';sz:0} arg(7fffffff) on some.img ioctl32(qemu-img:5296): Unknown cmd fd(3) cmd(801c0204){t:02;sz:28} arg(fff77350) on some.img ioctl 00005326 is CDROM_DRIVE_STATUS, ioctl 801c0204 is FDGETPRM. The warning appears because the Linux compat-ioctl handler for these ioctls only applies to block devices, while qemu also uses the ioctls on plain files. Signed-off-by: Johannes Stezenbach Acked-by: Arnd Bergmann Signed-off-by: Jens Axboe commit 02f1b641060486df8eecd66b060ae6551f398593 Author: Mat Martineau Date: Wed Jun 29 14:35:19 2011 -0700 Bluetooth: Check earlier for L2CAP ERTM frames to drop Even when the received tx_seq is expected, the frame still needs to be dropped if the TX window is exceeded or the receiver is in the local busy state. Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit f8c1fbdb767f7487983b369a0b07ddc82b29f709 Author: Gustavo F. Padovan Date: Fri Jun 17 15:46:46 2011 -0300 Bluetooth: Clean up unused struct hci_conn items priv and lock are never used Signed-off-by: Gustavo F. Padovan commit 2461daacb3e2ecca5edea2fa637a1b0922e86515 Author: Gustavo F. Padovan Date: Fri Jun 17 12:57:25 2011 -0300 Bluetooth: Fix bad locking balance Signed-off-by: Gustavo F. Padovan commit 2d25f8b462f3b849d8913d02978657ef06e67dd8 Author: Steven.Li Date: Fri Jul 1 14:02:36 2011 +0800 Bluetooth: Add Atheros AR3012 one PID/VID supported The new Ath3k needs to download patch and radio table, and it keeps same PID/VID even after downloading the patch and radio table. This patch is to use the bcdDevice (Device Release Number) to judge whether the chip has been patched or not. The init bcdDevice value of the chip is 0x0001, this value increases after patch and radio table downloading. Signed-off-by: Steven.Li Signed-off-by: Gustavo F. Padovan commit bb188d7e64deb0e9cf13a99f44ae0065de5352d6 Author: Denys Vlasenko Date: Wed Jun 29 04:13:39 2011 +0200 ptrace: make former thread ID available via PTRACE_GETEVENTMSG after PTRACE_EVENT_EXEC stop When multithreaded program execs under ptrace, all traced threads report WIFEXITED status, except for thread group leader and the thread which execs. Unless tracer tracks thread group relationship between tracees, which is a nontrivial task, it will not detect that execed thread no longer exists. This patch allows tracer to figure out which thread performed this exec, by requesting PTRACE_GETEVENTMSG in PTRACE_EVENT_EXEC stop. Another, samller problem which is solved by this patch is that tracer now can figure out which of the several concurrent execs in multithreaded program succeeded. Signed-off-by: Denys Vlasenko Signed-off-by: Oleg Nesterov commit 252e735d64880b011f6cdeb41ebcac2eaeb58fd3 Author: Emmanuel Grumbach Date: Tue Jun 28 13:13:59 2011 -0700 iwlagn: remove the indirection for the rx write pointer Not needed since the driver split. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit e3f10cea039b235c1de12648ea87b752990c11bf Author: Wey-Yi Guy Date: Fri Jul 1 07:59:26 2011 -0700 iwlagn: remove hcmd ops All "agn" devices use the same hcmd functions, no need to call indirectly. remove hcmd_ops Signed-off-by: Wey-Yi Guy commit e55b517c4d853a5168ebb4cdd58933b17c593827 Author: Wey-Yi Guy Date: Tue Jun 28 11:46:28 2011 -0700 iwlagn: call bt_coex directlly Call the 2-wire and advanced bt-coex function directly to avoid mistake Signed-off-by: Wey-Yi Guy commit f86af7ba82e3449e6ee957e0407cb6c683fa37db Author: Wey-Yi Guy Date: Tue Jun 28 08:01:12 2011 -0700 iwlagn: scd memory boundary Assign memory boundary for SCD context, tx status and translation table Signed-off-by: Wey-Yi Guy commit 02aca585f58a331288026cf78fd4f4ca404cbe12 Author: Emmanuel Grumbach Date: Tue Jun 28 08:58:41 2011 -0700 iwlagn: move the tx allocation funcs to the transport layer These functions allocate all the Tx context. Only the simple tx_init is exported as API. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit a0f6b0a211fbdfbae603ffa434f0d9e691e55ab9 Author: Emmanuel Grumbach Date: Tue Jun 21 14:25:45 2011 +0300 iwlagn: add rx_free to transport layer The transport layer ness to release all rx ressources. This function is an API for it. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit c85eb6196958ae54eba3ff0660d2b5af3d58521a Author: Emmanuel Grumbach Date: Tue Jun 14 10:13:24 2011 +0300 iwlagn: introduce transport layer and implement rx_init The transport layer is responsible for all the queues, DMA rings etc... This is the beginning of the separation of all the code that is tighly related to HW design to the aforementioned transport layer. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 300d0834ebd3f3c57b0063c2fd6bc26d8405626c Author: Wey-Yi Guy Date: Sat Jun 25 09:17:41 2011 -0700 iwlagn: add module parameter to disable stuck queue watchdog timer Add the parameter to disable stuck queue watchdog timer, different platforms might have different timing. Provide the option to disable the timer to prevent un-necessary firmware reload. Signed-off-by: Wey-Yi Guy commit 54e9c409a5f9e58465d80d6774afd85a449a4615 Author: Wey-Yi Guy Date: Fri Jul 1 07:47:59 2011 -0700 iwlagn: add correct firmware name for 135 series 135 series are WiFi/BT combo and require different uCode from 105 series. [A Signed-off-by: Wey-Yi Guy commit 4466320f053bb9aa1d68f73d92cb8d6c5bd75b1c Author: Wey-Yi Guy Date: Fri Jun 24 09:02:44 2011 -0700 iwlagn: re-define the testmode cmd and attr enum To make sure not having issues when adding new testmode commands or attributes in the future, re-define the enum. no functional changes Signed-off-by: Wey-Yi Guy commit 98a648e10a3c4eb30f8043281345506e17ace007 Author: Johannes Berg Date: Mon Jun 27 06:06:42 2011 -0700 iwlagn: verify mutex held for sync commands Emmanuel noticed that there's no explicit checking that prevents the driver from attempting to issue multiple synchronous commands at the same time and wrote a patch to check. However, his patch warns only if a collision actually happened, an unlikely thing since the driver mutex should be held for synchronous command submissions. So instead of checking that a collision happened add a check that the mutex is held which ensures that collisions can't happen. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit e54e692ba613c2170c66ce36a3791c009680af08 Author: Arnaud Lacombe Date: Sun May 15 23:42:09 2011 -0400 kconfig: introduce specialized printer Make conf_write_symbol() grammar agnostic to be able to use it from different code path. These path pass a printer callback which will print a symbol's name and its value in different format. conf_write_symbol()'s job become mostly only to prepare a string for the printer. This avoid to have to pass specialized flag to generic functions Signed-off-by: Arnaud Lacombe [mmarek: rebased on top of de12518 (kconfig: autogenerated config_is_xxx macro)] Signed-off-by: Michal Marek commit 29dfc4fd7e792854b30d771d4e299fbdd2adb763 Author: Peter Zijlstra Date: Fri Jul 1 15:24:53 2011 +0200 perf, powerpc: Fix build borkage The patch a8b0ca17b80e ("perf: Remove the nmi parameter from the swevent and overflow interface") missed a spot in the ppc hw_breakpoint code, fix this up so things compile again. Reported-by: Ingo Molnar Cc: Anton Blanchard Cc: Eric B Munson Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-09pfip95g88s70iwkxu6nnbt@git.kernel.org Signed-off-by: Ingo Molnar commit 85ef06d1d252f6a2e73b678591ab71caad4667bb Author: Tejun Heo Date: Fri Jul 1 16:17:47 2011 +0200 block: flush MEDIA_CHANGE from drivers on close(2) Currently, only open(2) is defined as the 'clearing' point. It has two roles - first, it's an acknowledgement from userland indicating that the event has been received and kernel can clear pending states and proceed to generate more events. Secondly, it's passed on to device drivers as a hint indicating that a synchronization point has been reached and it might want to take a deeper look at the device. The latter currently is only used by sr which uses two different mechanisms - GET_EVENT_MEDIA_STATUS_NOTIFICATION and TEST_UNIT_READY to discover events, where the former is lighter weight and safe to be used repeatedly but may not provide full coverage. Among other things, GET_EVENT can't detect media removal while TUR can. This patch makes close(2) - blkdev_put() - indicate clearing hint for MEDIA_CHANGE to drivers. disk_check_events() is renamed to disk_flush_events() and updated to take @mask for events to flush which is or'd to ev->clearing and will be passed to the driver on the next ->check_events() invocation. This change makes sr generate MEDIA_CHANGE when media is ejected from userland - e.g. with eject(1). Note: Given the current usage, it seems @clearing hint is needlessly complex. disk_clear_events() can simply clear all events and the hint can be boolean @flush. Signed-off-by: Tejun Heo Cc: Kay Sievers Signed-off-by: Jens Axboe commit 04bf7869ca0fd12009aee301cac2264a36df4d98 Merge: d2f31a5 7b28afe Author: Jens Axboe Date: Fri Jul 1 16:17:13 2011 +0200 Merge branch 'for-linus' into for-3.1/core Conflicts: block/blk-throttle.c block/cfq-iosched.c Signed-off-by: Jens Axboe commit b756828609ee8cb1320effc371cfafde6a6246fe Author: Greg Dietsche Date: Thu Jun 30 18:42:50 2011 -0500 gitignore: ignore debian build directory Have git ignore the Debian directory created when running: make deb-pkg Signed-off-by: Greg Dietsche Signed-off-by: Michal Marek commit 1ecc818c51b1f6886825dae3885792d5e49ec798 Merge: 1c09ab0 d902db1 Author: Ingo Molnar Date: Fri Jul 1 13:20:51 2011 +0200 Merge branch 'sched/core-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into sched/core commit 3ae9a34d747f9abf2bcc85dc0e77b951513ccdf2 Author: Zhengyu He Date: Thu Jun 23 13:45:42 2011 -0700 perf stat: Add noise output for csv mode Previously, when you want perf-stat to output the statistics in csv mode, no information of the noise will be printed out. For example right now we output this --repeat information: ./perf stat -r3 -x, sleep 1 1.164789,task-clock 8,context-switches 0,CPU-migrations 219,page-faults 3337800,cycles With this patch, the output will be appended with an additional entry for the noise value: ./perf stat -r3 -x, sleep 1 1.164789,task-clock,3.75% 8,context-switches,75.00% 0,CPU-migrations,100.00% 219,page-faults,0.00% 3337800,cycles,3.36% Signed-off-by: Zhengyu He Cc: Paul Mackerras Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Cc: Venkatesh Pallipadi Cc: Peter Zijlstra Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/1308861942-4945-1-git-send-email-zhengyuh@google.com Signed-off-by: Ingo Molnar commit 343a031f3c4a7a663192cf56368bb5a6c56870c0 Merge: 26ca5c1 cb1955b Author: Ingo Molnar Date: Fri Jul 1 11:51:58 2011 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core commit 5ed8cf5b8e053832a3d0552e0a9681a3ff0325ee Author: Tomi Valkeinen Date: Tue Jun 21 09:35:36 2011 +0300 OMAP: DSS2: Fix FIFO threshold and burst size for OMAP4 The DMA FIFO threshold registers and burst size registers have changed for OMAP4. The current code only handles OMAP2/3 case, and so the values are a bit off for OMAP4. A summary of the differences between OMAP2/3 and OMAP4: Burst size: OMAP2/3: 4 x 32 bits / 8 x 32 bits / 16 x 32 bits OMAP4: 2 x 128 bits / 4 x 128 bits / 8 x 128 bits Threshold size: OMAP2/3: in bytes (8 bit units) OMAP4: in 128bit units This patch fixes the issue by creating two new helper functions in dss_features: dss_feat_get_buffer_size_unit() and dss_feat_get_burst_size_unit(). These return (in bytes) the unit size for threshold registers and unit size for burst size register, respectively, and are used to calculate correct values. For the threshold size the usage is straightforward. However, the burst size register has different multipliers for OMAP2/3 and OMAP4. This patch solves the problem by defining the multipliers for the burst size as 2x, 4x and 8x, which fit fine for the OMAP4 burst size definition (i.e. burst size unit for OMAP4 is 128bits), but requires a slight twist on OMAP2/3 by defining the burst size unit as 64bit. As the driver in practice always uses the maximum burst size, and no use case currently exists where we would want to use a smaller burst size, this patch changes the driver to hardcode the burst size when initializing DISPC. This makes the threshold configuration code somewhat simpler. Signed-off-by: Tomi Valkeinen commit 15ffa1dac53820bb712851d329ba465f74b00f76 Author: Tomi Valkeinen Date: Thu Jun 16 14:34:06 2011 +0300 OMAP: DSS2: DSI: sync when disabling a display When the panel driver calls omapdss_dsi_display_disable() it is possible that there are still some unsent packets in the TX fifo. Add dsi_sync_vc() calls in the beginning of omapdss_dsi_display_disable() to make sure the TX fifos are empty. This allows us to remove the msleep(10) hack from panel-taal.c Signed-off-by: Tomi Valkeinen commit 3c07cae2cccc4e40ff66521701a3c8eeda8726e1 Author: Tomi Valkeinen Date: Tue Jun 21 09:34:30 2011 +0300 OMAP: DSS2: Add Color Phase Rotation support Add Color Phase Rotation (CPR) support and sysfs files to enable CPR and to set the CPR coefficient matrix. CPR is enabled via manager?/cpr_enable file, and the coefficient matrix is set via manager?/cpr_coef file. The values in cpr_coef are in the following order: RR RG RB GR GG GB BR BG BB Signed-off-by: Tomi Valkeinen commit 4df9d104d5bbe356b26bcf221d61f92f1948850e Author: Nishant Kamat Date: Mon Jun 20 20:39:28 2011 +0530 OMAP: DSS: Minor cleanup in ovl and mgr cache structs The overlay_cache_data and manager_cache_data structs include the elements of omap_overlay_info and omap_overlay_manager_info structs respectively. Include the structs instead of the individual elements to reduce code. Signed-off-by: Nishant Kamat Signed-off-by: Tomi Valkeinen commit 332e9d70518b55a70068739bc7ea134e1d8a269b Author: Tomi Valkeinen Date: Fri May 27 14:22:16 2011 +0300 OMAP: DSS2: Add new FEAT definitions for features missing from OMAP2 OMAP2 doesn't have CPR, PRELOAD nor FIR_COEF_V registers. Add new feature definitions for those, and check the feature before accessing those registers. Signed-off-by: Tomi Valkeinen commit 525dae613638320c880afcc0d8d6dd27141fc4e4 Author: Tomi Valkeinen Date: Wed May 18 11:59:21 2011 +0300 OMAP: DSS2: Add FEAT_VENC_REQUIRES_TV_DAC_CLK OMAP3430 requires an 96MHz clock to VENC's DAC, but no other OMAP needs it. Add a new feature, FEAT_VENC_REQUIRES_TV_DAC_CLK, which tells if the clock is needed on this platform, and use that feature in venc.c to decide if the clock needs enabling. Signed-off-by: Tomi Valkeinen commit 26ca5c11fb45ae2b2ac7e3574b8db6b3a3c7d350 Author: Avi Kivity Date: Wed Jun 29 18:42:37 2011 +0300 perf: export perf_event_refresh() to modules KVM needs one-shot samples, since a PMC programmed to -X will fire after X events and then again after 2^40 events (i.e. variable period). Signed-off-by: Avi Kivity Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1309362157-6596-4-git-send-email-avi@redhat.com Signed-off-by: Ingo Molnar commit 0af3ac1fdb9d5c297b4b07c9e0172531d42b6716 Author: Avi Kivity Date: Wed Jun 29 18:42:36 2011 +0300 x86, perf: Add constraints for architectural PMU The v1 PMU does not have any fixed counters. Using the v2 constraints, which do have fixed counters, causes an additional choice to be present in the weight calculation, but not when actually scheduling the event, leading to an event being not scheduled at all. Signed-off-by: Avi Kivity Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1309362157-6596-3-git-send-email-avi@redhat.com Signed-off-by: Ingo Molnar commit 4dc0da86967d5463708631d02a70cfed5b104884 Author: Avi Kivity Date: Wed Jun 29 18:42:35 2011 +0300 perf: Add context field to perf_event The perf_event overflow handler does not receive any caller-derived argument, so many callers need to resort to looking up the perf_event in their local data structure. This is ugly and doesn't scale if a single callback services many perf_events. Fix by adding a context parameter to perf_event_create_kernel_counter() (and derived hardware breakpoints APIs) and storing it in the perf_event. The field can be accessed from the callback as event->overflow_handler_context. All callers are updated. Signed-off-by: Avi Kivity Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1309362157-6596-2-git-send-email-avi@redhat.com Signed-off-by: Ingo Molnar commit 89d6c0b5bdbb1927775584dcf532d98b3efe1477 Author: Peter Zijlstra Date: Fri Apr 22 23:37:06 2011 +0200 perf, arch: Add generic NODE cache events Add a NODE level to the generic cache events which is used to measure local vs remote memory accesses. Like all other cache events, an ACCESS is HIT+MISS, if there is no way to distinguish between reads and writes do reads only etc.. The below needs filling out for !x86 (which I filled out with unsupported events). I'm fairly sure ARM can leave it like that since it doesn't strike me as an architecture that even has NUMA support. SH might have something since it does appear to have some NUMA bits. Sparc64, PowerPC and MIPS certainly want a good look there since they clearly are NUMA capable. Signed-off-by: Peter Zijlstra Cc: David Miller Cc: Anton Blanchard Cc: David Daney Cc: Deng-Cheng Zhu Cc: Paul Mundt Cc: Will Deacon Cc: Robert Richter Cc: Stephane Eranian Link: http://lkml.kernel.org/r/1303508226.4865.8.camel@laptop Signed-off-by: Ingo Molnar commit b79e8941fb9af07d810da91b4e29da2bba331b6e Author: Peter Zijlstra Date: Mon May 23 11:08:15 2011 +0200 perf, intel: Try alternative OFFCORE encodings Since the OFFCORE registers are fully symmetric, try the other one when the specified one is already in use. Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1306141897.18455.8.camel@twins Signed-off-by: Ingo Molnar commit ee89cbc2d48150c7c0e9f2aaac00afde99af098c Author: Stephane Eranian Date: Mon Jun 6 16:57:12 2011 +0200 perf_events: Add Intel Sandy Bridge offcore_response low-level support This patch adds Intel Sandy Bridge offcore_response support by providing the low-level constraint table for those events. On Sandy Bridge, there are two offcore_response events. Each uses its own dedictated extra register. But those registers are NOT shared between sibling CPUs when HT is on unlike Nehalem/Westmere. They are always private to each CPU. But they still need to be controlled within an event group. All events within an event group must use the same value for the extra MSR. That's not controlled by the second patch in this series. Furthermore on Sandy Bridge, the offcore_response events have NO counter constraints contrary to what the official documentation indicates, so drop the events from the contraint table. Signed-off-by: Stephane Eranian Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110606145712.GA7304@quad Signed-off-by: Ingo Molnar commit cd8a38d33e2528998998bae70a45ad27e442f114 Author: Stephane Eranian Date: Mon Jun 6 16:57:08 2011 +0200 perf_events: Fix validation of events using an extra reg The validate_group() function needs to validate events with extra shared regs. Within an event group, only events with the same value for the extra reg can co-exist. This was not checked by validate_group() because it was missing the shared_regs logic. This patch changes the allocation of the fake cpuc used for validation to also point to a fake shared_regs structure such that group events be properly testing. It modifies __intel_shared_reg_get_constraints() to use spin_lock_irqsave() to avoid lockdep issues. Signed-off-by: Stephane Eranian Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110606145708.GA7279@quad Signed-off-by: Ingo Molnar commit efc9f05df2dd171280dcb736a4d973ffefd5508e Author: Stephane Eranian Date: Mon Jun 6 16:57:03 2011 +0200 perf_events: Update Intel extra regs shared constraints management This patch improves the code managing the extra shared registers used for offcore_response events on Intel Nehalem/Westmere. The idea is to use static allocation instead of dynamic allocation. This simplifies greatly the get and put constraint routines for those events. The patch also renames per_core to shared_regs because the same data structure gets used whether or not HT is on. When HT is off, those events still need to coordination because they use a extra MSR that has to be shared within an event group. Signed-off-by: Stephane Eranian Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110606145703.GA7258@quad Signed-off-by: Ingo Molnar commit a7ac67ea021b4603095d2aa458bc41641238f22c Author: Peter Zijlstra Date: Mon Jun 27 16:47:16 2011 +0200 perf: Remove the perf_output_begin(.sample) argument Since only samples call perf_output_sample() its much saner (and more correct) to put the sample logic in there than in the perf_output_begin()/perf_output_end() pair. Saves a useless argument, reduces conditionals and shrinks struct perf_output_handle, win! Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-2crpvsx3cqu67q3zqjbnlpsc@git.kernel.org Signed-off-by: Ingo Molnar commit a8b0ca17b80e92faab46ee7179ba9e99ccb61233 Author: Peter Zijlstra Date: Mon Jun 27 14:41:57 2011 +0200 perf: Remove the nmi parameter from the swevent and overflow interface The nmi parameter indicated if we could do wakeups from the current context, if not, we would set some state and self-IPI and let the resulting interrupt do the wakeup. For the various event classes: - hardware: nmi=0; PMI is in fact an NMI or we run irq_work_run from the PMI-tail (ARM etc.) - tracepoint: nmi=0; since tracepoint could be from NMI context. - software: nmi=[0,1]; some, like the schedule thing cannot perform wakeups, and hence need 0. As one can see, there is very little nmi=1 usage, and the down-side of not using it is that on some platforms some software events can have a jiffy delay in wakeup (when arch_irq_work_raise isn't implemented). The up-side however is that we can remove the nmi parameter and save a bunch of conditionals in fast paths. Signed-off-by: Peter Zijlstra Cc: Michael Cree Cc: Will Deacon Cc: Deng-Cheng Zhu Cc: Anton Blanchard Cc: Eric B Munson Cc: Heiko Carstens Cc: Paul Mundt Cc: David S. Miller Cc: Frederic Weisbecker Cc: Jason Wessel Cc: Don Zickus Link: http://lkml.kernel.org/n/tip-agjev8eu666tvknpb3iaj0fg@git.kernel.org Signed-off-by: Ingo Molnar commit 1880c4ae182afb5650c5678949ecfe7ff66a724e Author: Cyrill Gorcunov Date: Thu Jun 23 16:49:18 2011 +0400 perf, x86: Add hw_watchdog_set_attr() in a sake of nmi-watchdog on P4 Due to restriction and specifics of Netburst PMU we need a separated event for NMI watchdog. In particular every Netburst event consumes not just a counter and a config register, but also an additional ESCR register. Since ESCR registers are grouped upon counters (i.e. if ESCR is occupied for some event there is no room for another event to enter until its released) we need to pick up the "least" used ESCR (or the most available one) for nmi-watchdog purposes -- so MSR_P4_CRU_ESCR2/3 was chosen. With this patch nmi-watchdog and perf top should be able to run simultaneously. Signed-off-by: Cyrill Gorcunov CC: Lin Ming CC: Arnaldo Carvalho de Melo CC: Frederic Weisbecker Tested-and-reviewed-by: Don Zickus Tested-and-reviewed-by: Stephane Eranian Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110623124918.GC13050@sun Signed-off-by: Ingo Molnar commit 0d6412085b7ff58612af52e51ffa864f0df4b8fd Author: Eric B Munson Date: Fri Jun 24 12:26:26 2011 -0400 events: Ensure that timers are updated without requiring read() call The event tracing infrastructure exposes two timers which should be updated each time the value of the counter is updated. Currently, these counters are only updated when userspace calls read() on the fd associated with an event. This means that counters which are read via the mmap'd page exclusively never have their timers updated. This patch adds ensures that the timers are updated each time the values in the mmap'd page are updated. Signed-off-by: Eric B Munson Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1308932786-5111-1-git-send-email-emunson@mgebm.net Signed-off-by: Ingo Molnar commit c4794295917ebeda8013b6cb9c8d71ab4f74a1fa Author: Eric B Munson Date: Thu Jun 23 16:34:38 2011 -0400 events: Move lockless timer calculation into helper function Take the timer calculation from perf_output_read and move it to a helper function for any place that needs timer values but cannot take the ctx->lock. Signed-off-by: Eric B Munson Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1308861279-15216-2-git-send-email-emunson@mgebm.net Signed-off-by: Ingo Molnar commit b7526f0ca6dc68f57ca467ce503151b1d476a3e4 Author: Eric B Munson Date: Thu Jun 23 16:34:37 2011 -0400 events: Add note to update_event_times comment about holding ctx->lock Signed-off-by: Eric B Munson Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1308861279-15216-1-git-send-email-emunson@mgebm.net Signed-off-by: Ingo Molnar commit 28009ce4a8130af7260a9271901b4419834ad152 Author: Richard Kennedy Date: Tue Jun 7 16:33:38 2011 +0100 perf: Remove 64-bit alignment padding from perf_event_context Reorder perf_event_context to remove 8 bytes of 64 bit alignment padding shrinking its size to 192 bytes, allowing it to fit into a smaller slab and use one fewer cache lines. Signed-off-by: Richard Kennedy Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1307460819.1950.5.camel@castor.rsk Signed-off-by: Ingo Molnar commit 4ec8363dfc1451f8c8f86825731fe712798ada02 Author: Vince Weaver Date: Wed Jun 1 15:15:36 2011 -0400 perf_events: Fix perf buffer watermark setting Since 2.6.36 (specifically commit d57e34fdd60b ("perf: Simplify the ring-buffer logic: make perf_buffer_alloc() do everything needed"), the perf_buffer_init_code() has been mis-setting the buffer watermark if perf_event_attr.wakeup_events has a non-zero value. This is because perf_event_attr.wakeup_events is a union with perf_event_attr.wakeup_watermark. This commit re-enables the check for perf_event_attr.watermark being set before continuing with setting a non-default watermark. This bug is most noticable when you are trying to use PERF_IOC_REFRESH with a value larger than one and perf_event_attr.wakeup_events is set to one. In this case the buffer watermark will be set to 1 and you will get extraneous POLL_IN overflows rather than POLL_HUP as expected. [ avoid using attr.wakeup_events when attr.watermark is set ] Signed-off-by: Vince Weaver Signed-off-by: Peter Zijlstra Cc: Link: http://lkml.kernel.org/r/alpine.DEB.2.00.1106011506390.5384@cl320.eecs.utk.edu Signed-off-by: Ingo Molnar commit 8ef0e614b3ed2e2daf7e9cefd9a2f12652f824bc Author: Tomi Valkeinen Date: Tue May 31 16:55:47 2011 +0300 OMAP: DSS2: Reset LANEx_ULPS_SIG2 bits after use LANEx_ULPS_SIG2 bits are left on after entering ULPS. This doesn't cause any problems currently, as DSI HW is reset when it is enabled. However, if the reset is not done, operation fails if the bits are still set. So reset the bits after entering ULPS to ensure operation even without HW reset. Signed-off-by: Tomi Valkeinen commit 0f933625e7b6c3d91878ae95e341bf1984db7eaf Author: Peter Zijlstra Date: Tue Jun 28 12:15:51 2011 +0200 irq_work, alpha: Fix up arch hooks Commit e360adbe29 ("irq_work: Add generic hardirq context callbacks") fouled up the Alpha bit, not properly naming the arch specific function that raises the 'self-IPI'. Signed-off-by: Peter Zijlstra Cc: Michael Cree Cc: stable@kernel.org # 37+ Link: http://lkml.kernel.org/n/tip-gukh0txmql2l4thgrekzzbfy@git.kernel.org Signed-off-by: Ingo Molnar commit 4f8b50bbbe63ae4ec6bea28a90a9a603c745ea71 Author: Peter Zijlstra Date: Mon Jun 27 17:22:43 2011 +0200 irq_work, ppc: Fix up arch hooks Commit e360adbe29 ("irq_work: Add generic hardirq context callbacks") fouled up the ppc bit, not properly naming the arch specific function that raises the 'self-IPI'. Cc: Huang Ying Cc: Benjamin Herrenschmidt Cc: Anton Blanchard Cc: Eric B Munson Cc: stable@kernel.org # 37+ Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-eg0aqien8p1aqvzu9dft6dtv@git.kernel.org Signed-off-by: Ingo Molnar commit e89456773c578bd988df70fcb7d07504cf63d1a3 Author: Tomi Valkeinen Date: Tue May 31 16:39:01 2011 +0300 OMAP: DSS2: Taal: Make driver more fault tolerant If ULPS exit fails, and the following reset fails also, Taal driver was left in state where it thinks DSI is enabled while it really isn't, leading to crash. This patch checks the return value of taal_panel_reset, and if that fails, ulps_enabled is left true, causing the driver to retry ulps exit later. Also the return value of taal_wake_up is checked at taal_disable, and if wake up fails, we'll skip the power_off. This could leave the panel into a not-quite-valid state, but there's nothing we can do about it in that situation. Signed-off-by: Tomi Valkeinen commit 8cff88c5da2197aa601409d4a7ce8f83f8de8190 Author: Tomi Valkeinen Date: Sat Apr 30 14:09:53 2011 +0300 OMAP: DSS2: remove update_mode from omapdss Remove the whole update_mode stuff from omapdss driver. If automatic update for manual update displays is needed, it's better implemented in higher layers. Signed-off-by: Tomi Valkeinen commit 27cc213ea7dde929692df46a64c8d8ef74663e48 Author: Tomi Valkeinen Date: Sat Apr 30 16:55:12 2011 +0300 OMAP: DSS2: OMAPFB: Implement auto-update mode Implement auto-update mode for manual-update displays. omapfb driver uses a delayed work to update the display with a constant rate. The update mode can be changed via OMAPFB_SET_UPDATE_MODE ioctl, which previously called omapdss but is now handled inside omapfb, and a new sysfs file, "update_mode". The update interval is by default 20 times per second, but can be changed via "auto_update_freq" module parameter. There is also a new module parameter "auto_update", which will make omapfb start manual update displays in auto-update mode. This auto-update mode can be used for testing if the userspace does not support manual update displays properly. However, it is a very inefficient solution, and should be considered more as a hack for testing than something that could be used as a long term solution. Signed-off-by: Tomi Valkeinen commit 065a40bd461d3709a2c36adf0ec383581cc692a7 Author: Tomi Valkeinen Date: Sat Apr 30 12:13:14 2011 +0300 OMAP: DSS2: OMAPFB: Add struct to store per-display data Create a new struct omapfb_display_data to contain omapfb's private per-display data. Move the bpp override there. This struct will be used to hold auto/manual update state of a display in the following patches. Signed-off-by: Tomi Valkeinen commit 4a9a5e390cb57f12de77b94b07dccf14752157ad Author: Tomi Valkeinen Date: Mon May 23 16:36:09 2011 +0300 OMAP: DSS2: DSI: Change dummy macros to inline functions Using empty macros for performance measurement functions when DSS DEBUG is not enabled causes an unused variable warning. Change the empty macros to empty inline functions to remove the warning. Signed-off-by: Tomi Valkeinen commit 24e6289c029b0cf5b4f75e12c1b66000d441c9ed Author: Tomi Valkeinen Date: Mon May 23 11:51:18 2011 +0300 OMAP: DSS2: remove extra includes from include/video/omapdss.h omapdss.h included platform_device.h and atomic.h, neither of which is needed by omapdss.h. Remove those includes from omapdss.h, and fix the affected .c files which did not include platform_device.h even though they should. Signed-off-by: Tomi Valkeinen commit e77aeb71f04ed236fffe5f347e208c8b0e92d48a Author: Tobias Klauser Date: Thu Jun 30 21:37:52 2011 +0000 net: de4x5: Omit check for multicast bit in netdev_for_each_mc_addr There is no need to check for the address being a multicast address in the netdev_for_each_mc_addr loop, so remove it. Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 1c09ab0d257317f97e8629a3d0c8713d6dd9de4c Author: Yong Zhang Date: Tue Jun 28 10:51:31 2011 +0800 sched: Skip autogroup when looking for all rt sched groups Since commit ec514c48 ("sched: Fix rt_rq runtime leakage bug") 'cat /proc/sched_debug' will print data of root_task_group.rt_rq multiple times. This is because autogroup does not have its own rt group, instead rt group of autogroup is linked to root_task_group. So skip it when we are looking for all rt sched groups, and it will also save some noop operation against root_task_group when __disable_runtime()/__enable_runtime(). -v2: Based on Cheng Xu's idea which uses less code. Signed-off-by: Yong Zhang Cc: Mike Galbraith Cc: Cheng Xu Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/BANLkTi=87P3RoTF_UEtamNfc_XGxQXE__Q@mail.gmail.com Signed-off-by: Ingo Molnar commit 307bf9803f25a8a3f53c1012110fb74e2f893eb0 Author: Thomas Gleixner Date: Fri Jun 10 15:08:55 2011 +0200 sched: Simplify mutex_spin_on_owner() It does not make sense to rcu_read_lock/unlock() in every loop iteration while spinning on the mutex. Move the rcu protection outside the loop. Also simplify the return path to always check for lock->owner == NULL which meets the requirements of both owner changed and need_resched() caused loop exits. Signed-off-by: Thomas Gleixner Signed-off-by: Peter Zijlstra Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/alpine.LFD.2.02.1106101458350.11814@ionos Signed-off-by: Ingo Molnar commit 2a46dae38087e62dd5fb08a6dadf1407717ed13c Author: Nikunj A. Dadhania Date: Tue Jun 7 15:43:22 2011 +0530 sched: Remove rcu_read_lock() from wake_affine() wake_affine() is only called from one path: select_task_rq_fair(), which already has the RCU read lock held. Signed-off-by: Nikunj A. Dadhania Signed-off-by: Peter Zijlstra Cc: Paul E. McKenney Link: http://lkml.kernel.org/r/20110607101251.777.34547.stgit@IBM-009124035060.in.ibm.com Signed-off-by: Ingo Molnar commit 01898e3e29ea8242d81923da11ce88ba71290a48 Author: Thomas Gleixner Date: Thu Jun 9 13:08:30 2011 +0000 i8253: Cleanup outb/inb magic Remove the hysterical outb/inb_pit defines and use outb_p/inb_p in the code. Signed-off-by: Thomas Gleixner Cc: Russell King Cc: Ralf Baechle Cc: John Stultz Link: http://lkml.kernel.org/r/20110609130622.348437125@linutronix.de commit 8560a6cfc9818edde1fd8677961714b264ffa03d Author: Thomas Gleixner Date: Thu Jun 9 13:08:28 2011 +0000 arm: Footbridge: Use common i8253 clockevent Signed-off-by: Thomas Gleixner Cc: Russell King Cc: Ralf Baechle Cc: John Stultz Link: http://lkml.kernel.org/r/20110609130622.241312122@linutronix.de commit 2d02612f61cc15b2025c90e32ed4a43eaa6753cd Author: Thomas Gleixner Date: Thu Jun 9 13:08:27 2011 +0000 mips: Use common i8253 clockevent Signed-off-by: Thomas Gleixner Cc: Russell King Cc: Ralf Baechle Cc: John Stultz Link: http://lkml.kernel.org/r/20110609130622.133068765@linutronix.de commit 0a779c571314b7951ff12edac80aa0cbe7c12b6e Author: Thomas Gleixner Date: Thu Jun 9 13:08:26 2011 +0000 x86: Use common i8253 clockevent Signed-off-by: Thomas Gleixner Cc: Russell King Cc: Ralf Baechle Cc: John Stultz Link: http://lkml.kernel.org/r/20110609130622.026152527@linutronix.de commit e6220bdc9485c5ea972f9e0e6d062a05934bb74b Author: Thomas Gleixner Date: Thu Jun 9 13:08:25 2011 +0000 i8253: Create common clockevent implementation arm, mips and x86 implement i8253 based clockevents. All the same code copied. Create a common implementation in drivers/clocksource/i8253.c. About time to rename drivers/clocksource/ to something else. Signed-off-by: Thomas Gleixner Cc: Russell King Cc: Ralf Baechle Cc: John Stultz Link: http://lkml.kernel.org/r/20110609130621.921710458@linutronix.de commit 36b2e922b5acd291051fab25bc7535274ce49532 Merge: e197f09 b0af8df Author: Ingo Molnar Date: Fri Jul 1 10:34:09 2011 +0200 Merge commit 'v3.0-rc5' into sched/core Merge reason: Move to a (much) newer base. Signed-off-by: Ingo Molnar commit 10e6962765f8213941eaa1cbb9de425ff0689e2e Merge: af07ce3 b0af8df Author: Ingo Molnar Date: Fri Jul 1 10:28:42 2011 +0200 Merge commit 'v3.0-rc5' into perf/core Merge reason: Pick up the latest fixes. Signed-off-by: Ingo Molnar commit e5e14681404ec27a422d635284bf564dabde3f81 Author: Lydia Wang Date: Fri Jul 1 10:55:07 2011 +0800 ALSA: hda - Fix the silent front with independent-HP for VIA codecs Unmute DAC on front speaker path when Independent HP is enabled. When to enable Independent HP, the front speaker won't output any sound for VT1708, VT1708B, VT1708S and VT1702. I find the via_independent_hp_put() routine will mute DAC 0 path in Mixer 0. For these codecs, when using Independent HP, there could have two independent streams, one is from DAC0-->Mixer0-->Front Pin, the other is from DAC3-->GainSW3-->Side Pin. So I added a check for DAC-->Mixer path in activate_output_path(). If current path is DAC-->Mixer, no need to mute DAC index in Mixer. In fact, to change connection of Headphone pin or Mux connected with HP is enough. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit b9ab82c774d8abcca8b6c1d5f30f5912a4448980 Author: Sathya Perla Date: Wed Jun 29 23:33:37 2011 +0000 be2net: clear intr bit in be_probe() It may be set in the card while the driver is probed by kdump kernel after a crash. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 482c9e798738dea847a5e5e0d20692fe80d48a76 Author: Sathya Perla Date: Wed Jun 29 23:33:17 2011 +0000 be2net: create/destroy rx-queues on interface open/close On some skews, the BE card sends pause frames (and not drop pkts) if there are no more posted buffers available for packet reception. This behaviour has a side effect: When an interface is disabled, buffers are no longer posted on the corresponding RX rings. All broadcast and multicast traffic being received on the port will quickly fill up the PMEM and cause pause push back. As the PMEM is shared by both the ports, all traffic being received on the other (enabled) port also gets stalled. The fix is to destroy RX rings when the interface is disabled. If there is no RX ring match in the RXF lookup, the packets are discarded and so don't hog the PMEM. The RXQ creation cmd must now use MCC instead of MBOX as they are are called post MCC queue creation. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 2b3f291bf98e7cbf76afd9b0c96c81df5f5890f9 Author: Sathya Perla Date: Wed Jun 29 23:32:56 2011 +0000 be2net: fix certain cmd failure logging Some (older)versions of cards/fw may not recognize certain cmds and return illegal/unsupported errors. As long as the driver can handle this gracefully there is no need to log an error msg. Also finetuned 2 existing error log messages. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit e1428d26b404133dcbcc8f758f0f4f6575afd7b7 Author: Amit Kumar Salecha Date: Wed Jun 29 20:00:50 2011 +0000 qlcnic: add external loopback support o Add external loopback test in self test: - Send set external loopback mode request to fw. To quiscent other storage functions. - Perform test - Send unset loopback mode request to fw. o Rename ilb to lb. o Update driver version 5.0.20. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 0209bcd4d9ee66569d4ea76f9ab2de3a9c740c71 Author: Amit Kumar Salecha Date: Wed Jun 29 20:00:49 2011 +0000 net: add external loopback test in ethtool self test External loopback test can be performed by application without any driver support on normal Ethernet cards. But on CNA devices, where multiple functions share same physical port. Here internal loopback test and external loopback test can be initiated by multiple functions at same time. To co exist all functions, firmware need to regulate what test can be run by which function. So before performing external loopback test, command need to send to firmware, which will quiescent other functions. User may not want to run external loopback test always. As special cable need to be connected for this test. So adding explicit flag in ethtool self test, which will specify interface to perform external loopback test. ETH_TEST_FL_EXTERNAL_LB: Application set to request external loopback test ETH_TEST_FL_EXTERNAL_LB_DONE: Driver ack if test performed Signed-off-by: Amit Kumar Salecha Reviewed-by: Ben Hutchings Signed-off-by: David S. Miller commit 781b864711d8cff56af9478be1b892b098e10de8 Author: Tobias Klauser Date: Wed Jun 29 02:16:33 2011 +0000 net: ucc_geth: Omit check for multicast bit in netdev_for_each_mc_addr There is no need to check for the address being a multicast address in the netdev_for_each_mc_addr loop, so remove it. Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit eb31c4e0b0d8d7f673f95644cbfd2993f1c36840 Author: Tobias Klauser Date: Wed Jun 29 02:15:35 2011 +0000 net: iseries_veth: Omit check for multicast bit in netdev_for_each_mc_addr There is no need to check for the address being a multicast address in the netdev_for_each_mc_addr loop, so remove it. Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 3170ff54c26004ea627022af695d0c8709d29b04 Author: Tobias Klauser Date: Wed Jun 29 02:15:15 2011 +0000 net: depca: Omit check for multicast bit in netdev_for_each_mc_addr There is no need to check for the address being a multicast address in the netdev_for_each_mc_addr loop, so remove it. Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit bda7ed47937bd9ba8c10631ca884f7fefb162f4d Author: Tobias Klauser Date: Wed Jun 29 02:14:46 2011 +0000 net: am79c961a: Omit check for multicast bit in netdev_for_each_mc_addr There is no need to check for the address being a multicast address in the netdev_for_each_mc_addr loop, so remove it. Signed-off-by: Tobias Klauser Acked-by: Russell King Signed-off-by: David S. Miller commit 0311ee2262440b903a81fa38512d12bc2478e66f Author: Dan Carpenter Date: Tue Jun 28 20:29:51 2011 +0000 wanxl: remove a stray irq enable This is error path calls unlock_irq() where we haven't disabled the IRQs. The comment says that this error path can never happen. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit f82528bc13a157335dc53e78ce801883b26831e2 Author: Alexander Smirnov Date: Tue Jun 28 03:30:44 2011 +0000 Exclude duplicated checking for iface-up. This flags is checked in 'is_skb_forwardable' function, which is subroutine of 'dev_forward_skb'. Signed-off-by: Alexander Smirnov Reviewed-by: WANG Cong Signed-off-by: David S. Miller commit bc057e0366cad58e55038a2cb69572d51c40cdf3 Author: Guo-Fu Tseng Date: Tue Jun 28 01:38:30 2011 +0000 jme: Cleanup PM operations after using new PM API 1. Using enum name instead of numeric value. 2. device_set_wakeup_enable expect bool argument adding !!() to the argument to be passed. 3. Remove non-jme-hardware related operations from jme_clear_pm() 4. Reuse jme_clear_pm() in jme_resume() and jme_powersave_phy() Signed-off-by: Guo-Fu Tseng Signed-off-by: David S. Miller commit aab6fb82b1912a312f7547c92ac8d4ecb072e807 Author: Guo-Fu Tseng Date: Mon Jun 27 19:23:34 2011 +0000 jme: Fix compile warning introduced by new pm macro SIMPLE_DEV_PM_OPS is using SET_SYSTEM_SLEEP_PM_OPS and SET_SYSTEM_SLEEP_PM_OPS is empty when CONFIG_PM_SLEEP is not defined. Switching #ifdef CONFIG_PM to #ifdef CONFIG_PM_SLEEP Signed-off-by: Guo-Fu Tseng Signed-off-by: David S. Miller commit b21f3c7ed98a153865a7094af7d85d84c188667e Author: Kurt Van Dijck Date: Mon Jun 27 05:00:13 2011 +0000 can: remove useless defaults in Kconfig There's no need for "default N' (or 'default n') as it's default. Signed-off-by: Kurt Van Dijck Acked-by: Marc Kleine-Budde Signed-off-by: David S. Miller commit af9719c3062dfe216a0c3de3fa52be6d22b4456c Author: Anton Blanchard Date: Thu Jun 30 13:55:27 2011 +0000 powerpc: Use -mtraceback=no gcc 4.7 will be more strict about parsing the -mtraceback option: gcc: error: unrecognized argument in option '-mtraceback=none' gcc: note: valid arguments to '-mtraceback=' are: full no part gcc used to do a 2 char compare so both "no" and "none" would match. Switch to using -mtraceback=no should work everywhere. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit ac5f89c7d87f6f2fb7073723fc943488d9c3479d Author: Michael Ellerman Date: Wed Jun 29 19:16:59 2011 +0000 powerpc: Add jump label support This patch adds support for the new "jump label" feature. Unlike x86 and sparc we just merrily patch the code with no locks etc, as far as I know this is safe, but I'm not really sure what the x86/sparc code is protecting against so maybe it's not. I also don't see any reason for us to implement the poke_early() routine, even though sparc does. [BenH: Updated the patch to upstream generic changes] Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit ea7ea65a3b37bf207d5c352ac6254506b3dc3901 Author: Vasanthy Kolluri Date: Fri Jun 17 07:56:48 2011 +0000 enic: Add support to configure hardware interrupt coalesce timers in a platform independent way enic driver and the underlying hardware use different units for representing the interrupt coalesce timer. Driver converts the interrupt coalesce timer in usec to hardware cycles while setting the relevant hardware registers. The conversion factor can be different for each of the adapter hardware types. So it is dynamically learnt from the adapter firmware using the devcmd CMD_INTR_COAL_CONVERT. This allows the driver to configure the hardware interrupt coalesce timers in a platform independent way. Signed-off-by: Danny Guo Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: David S. Miller commit 3fa2a1df909482cc234524906e4bd30dee3514df Author: stephen hemminger Date: Wed Jun 15 06:36:29 2011 +0000 virtio-net: per cpu 64 bit stats (v2) Use per-cpu variables to maintain 64 bit statistics. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 87fa35dd881fd61a2a8166892366f2c22c34a1fa Author: Benjamin Herrenschmidt Date: Fri Jul 1 13:10:21 2011 +1000 powerpc/hvsi: Fix conflict with old HVSI driver A mix of think & mismerge on my side caused a problem where both the new hvsi_lib and the old hvsi driver gets compiled and try to define symbols with the same name. This fixes it by renaming the hvsi_lib exported symbols. Signed-off-by: Benjamin Herrenschmidt commit 9def247a7076bcced342a9783da79f2e0b0a3f47 Author: Benjamin Herrenschmidt Date: Fri Jul 1 13:00:21 2011 +1000 powerpc: Fix build problem with default ppc_md.progress commit a9c0f41b3a64955fd6f4e9d66ae1df1cbdee0cd0 breaks the build on some platforms. The extern declaration must be shielded against assembly. Signed-off-by: Benjamin Herrenschmidt commit 3e7cf5b00dd5b577b4ee9b2a66e40fb670ef210b Author: Suresh Siddha Date: Thu Jun 30 17:19:32 2011 -0700 x86-32, fpu: Fix DNA exception during check_fpu() Before check_fpu() is called, we have cr0.TS bit set and hence the floating point code to check the FDIV bug was generating a DNA exception. Use kernel_fpu_begin()/kernel_fpu_end() around the floating point code to avoid this unnecessary device not available exception during boot. Signed-off-by: Suresh Siddha Link: http://lkml.kernel.org/r/1309479572.2665.1372.camel@sbsiddha-MOBL3.sc.intel.com Signed-off-by: H. Peter Anvin commit ea504819122a76a236f8b95d1556f807a0a41397 Author: Tetsuo Handa Date: Thu Jun 30 17:32:30 2011 +0900 TOMOYO: Fix wrong domainname in tomoyo_init_log(). Commit eadd99cc "TOMOYO: Add auditing interface." by error replaced "struct tomoyo_request_info"->domain with tomoyo_domain(). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit e1447d8d8da5ceea60dca027e78274e6ea9b660e Author: Joe Perches Date: Thu Jun 30 19:15:37 2011 -0300 Bluetooth: Add bt_printk Add a local logging function to emit bluetooth specific messages. Using vsprintf extension %pV saves code/text space. Convert the current BT_INFO and BT_ERR macros to use bt_printk. Remove __func__ from BT_ERR macro (and the uses). Prefix "Bluetooth: " to BT_ERR Remove __func__ from BT_DBG as function can be prefixed when using dynamic_debug. With allyesconfig: text data bss dec hex filename 129956 8632 36096 174684 2aa5c drivers/bluetooth/built-in.o.new2 134402 8632 36064 179098 2bb9a drivers/bluetooth/built-in.o.old 14778 1012 3408 19198 4afe net/bluetooth/bnep/built-in.o.new2 15067 1012 3408 19487 4c1f net/bluetooth/bnep/built-in.o.old 346595 19163 86080 451838 6e4fe net/bluetooth/built-in.o.new2 353751 19163 86064 458978 700e2 net/bluetooth/built-in.o.old 18483 1172 4264 23919 5d6f net/bluetooth/cmtp/built-in.o.new2 18927 1172 4264 24363 5f2b net/bluetooth/cmtp/built-in.o.old 19237 1172 5152 25561 63d9 net/bluetooth/hidp/built-in.o.new2 19581 1172 5152 25905 6531 net/bluetooth/hidp/built-in.o.old 59461 3884 14464 77809 12ff1 net/bluetooth/rfcomm/built-in.o.new2 61206 3884 14464 79554 136c2 net/bluetooth/rfcomm/built-in.o.old with x86 defconfig (and just bluetooth): $ size net/bluetooth/built-in.o.defconfig.* text data bss dec hex filename 66358 933 100 67391 1073f net/bluetooth/built-in.o.defconfig.new 66643 933 100 67676 1085c net/bluetooth/built-in.o.defconfig.old Signed-off-by: Joe Perches Signed-off-by: Gustavo F. Padovan commit e175072f377047e28e399c5c661e39e69722f35b Author: Joe Perches Date: Wed Jun 29 18:18:29 2011 -0700 Bluetooth: Rename function bt_err to bt_to_errno Make it easier to use more normal logging styles later. Signed-off-by: Joe Perches Signed-off-by: Gustavo F. Padovan commit 942ecc9c4643db5ce071562e0a23f99464d6b461 Author: Mat Martineau Date: Wed Jun 29 14:35:21 2011 -0700 Bluetooth: ERTM timeouts need to be converted to jiffies ERTM timeouts are defined in milliseconds, but need to be converted to jiffies when passed to mod_timer(). Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit 774e5651460ee7c688914fd76b6caa1675de355c Author: Mat Martineau Date: Wed Jun 29 14:35:20 2011 -0700 Bluetooth: Fix indentation whitespace Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit 67d0c479d9392a89dd9ecf9d7b92148cc2251b00 Author: Mark Brown Date: Wed Jun 29 14:07:24 2011 -0700 ASoC: Improve error reporting in Speyside WM8962 driver Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 55b3286d3dfd74a1daa5c902cb76575ba0187388 Author: Masatake YAMATO Date: Thu Jun 30 21:37:10 2011 +0900 dlm: show addresses in configfs Display all addresses the dlm is using for the local node from the configfs file config/dlm//comms//addr_list Also make the addr file write only. Signed-off-by: Masatake YAMATO Signed-off-by: David Teigland commit 350434ee53f39adb5e73320be4c98010b87d3dbf Author: Takashi Iwai Date: Thu Jun 30 21:29:12 2011 +0200 ALSA: hda - Fix missing initialization in alc662 auto-parser A missing initialization resulted in wrong DAC assignments in ALC662 (and other) auto-parsers. Signed-off-by: Takashi Iwai commit a3b853633d78c3930b513ee219df48637ac82eed Author: Thomas Abraham Date: Thu Jun 30 21:26:10 2011 +0530 dt: add helper functions to read u32 and string property values Add helper functions to retrieve unsigned integer and string property values from properties of a device node. These helper functions can be used to lookup a property in a device node, perform error checking and read the property value. [grant.likely@secretlab.ca: Proposal and initial implementation] Signed-off-by: Thomas Abraham [grant.likely: some word smithing and be more defensive validating the string] Signed-off-by: Grant Likely commit 7423734e19e7e0a90e3379152eacca2647f4377e Author: Jamie Iles Date: Mon Jun 27 13:32:34 2011 +0100 tty: of_serial: support for 32 bit accesses Some platforms e.g. TI Davinci require 32-bit accesses to the UARTs. The of_serial driver currently registers all UARTs as UPIO_MEM. Add a new attribute "reg-io-width" to allow the port to be registered with different IO width requirements. Acked-by: Alan Cox Signed-off-by: Jamie Iles Signed-off-by: Grant Likely commit f984cec64a8dbe559f357fa0ed3e1bef7c247700 Author: Bastian Blank Date: Thu Jun 30 11:19:09 2011 -0700 xen/netback: Add module alias for autoloading Add xen-backend:vif module alias to the xen-netback module. This allows automatic loading of the module. Signed-off-by: Bastian Blank Acked-by: Ian Campbell Acked-by: Konrad Rzeszutek Wilk commit df2cbe40753dc36af294c30209ed909869aca6cf Merge: 1049f64 9a4ba83 Author: John W. Linville Date: Thu Jun 30 13:34:06 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit a7e9357f10744c3392ce3cd735c690ee513c7375 Author: Bastian Blank Date: Wed Jun 29 14:40:50 2011 +0200 xen/blkback: Add module alias for autoloading Add xen-backend:vbd module alias to the xen-blkback module. This allows automatic loading of the module. Signed-off-by: Bastian Blank Acked-by: Ian Campbell Signed-off-by: Konrad Rzeszutek Wilk commit b4726a9df270859898e254b6eee67a28f38b34d3 Author: Daniel Stodden Date: Sat May 28 13:21:10 2011 -0700 xen/blkback: Don't let in-flight requests defer pending ones. Running RING_FINAL_CHECK_FOR_REQUESTS from make_response is a bad idea. It means that in-flight I/O is essentially blocking continued batches. This essentially kills throughput on frontends which unplug (or even just notify) early and rightfully assume addtional requests will be picked up on time, not synchronously. Signed-off-by: Daniel Stodden [v1: Rebased and fixed compile problems] Signed-off-by: Konrad Rzeszutek Wilk commit 149bb2fab547253e6359e76f1b86b95247110e68 Author: Bastian Blank Date: Wed Jun 29 14:40:08 2011 +0200 xen: Add module alias to autoload backend drivers All the Xen backend drivers are assigned to a special bus type xen-backend. This patch exports xen-backend:* names through modalias and uevent to autoload them. Signed-off-by: Bastian Blank Acked-by: Ian Campbell Signed-off-by: Konrad Rzeszutek Wilk commit cc85e93342c030f8ba07f572afa159ec4518231f Author: Bastian Blank Date: Wed Jun 29 14:39:26 2011 +0200 xen: Populate xenbus device attributes The xenbus bus type uses device_create_file to assign all used device attributes. However it does not remove them when the device goes away. This patch uses the dev_attrs field of the bus type to specify default attributes for all devices. Signed-off-by: Bastian Blank Acked-by: Ian Campbell Signed-off-by: Konrad Rzeszutek Wilk commit 08b8bfc1c649cf82edf43f686cbb9a4bac809679 Author: Joe Perches Date: Sun Jun 12 09:21:13 2011 -0700 xen: Add __attribute__((format(printf... where appropriate Use the compiler to verify printf formats and arguments. Fix fallout. Signed-off-by: Joe Perches Signed-off-by: Konrad Rzeszutek Wilk commit 2525050518496dfd6905abfa8d6d34288eed36d7 Author: Takashi Iwai Date: Thu Jun 30 17:24:47 2011 +0200 ALSA: hda - Re-implementation of VIA Independent-HP sharing with side stream This patch adds the re-implementation of Independent-HP mode in the case where the DAC is shared between HP and side-channel streams. Now the driver tries to parse the output-path using the pre-parsed side-channel DAC for the independent HP output, too. When a playback PCM stream is opened with this shared mode, the Independent-HP mixer switch can't be changed for avoiding the conflict, thus it returns -EBUSY error. One remaining unintuitive issue is that the DAC volume is still controlled as "Side" volume although it's shared by both independent-HP and side streams. Signed-off-by: Takashi Iwai commit 13340b2a1ef64891572c10927e5626e2b6a81b64 Author: Arnd Bergmann Date: Thu Jun 30 12:58:01 2011 +0000 omap2+: fix build regression board-generic.c now contains a reference to omap3_timer, but depends only on ARCH_OMAP2, not on ARCH_OMAP3, which controls that symbol. omap2_timer seems to be more appropriate anyway, so use that instead. Signed-off-by: Arnd Bergmann Acked-by: Tony Lindgren commit 0ac9ebedce444ec6f93cf6a995e4a20009191b00 Author: Werner Almesberger Date: Fri Jun 17 18:48:29 2011 +0000 IEEE 802.15.4: do not enable driver debugging by default The IEEE 802.15.4 drivers were compiled by default with debugging, which caused them to be rather chatty and slow. This patch silences them. People debugging drivers can still add a #define DEBUG in the beginning of the respective file or use dynamic debug This patch also removes the now unused option CONFIG_FFD. Signed-off-by: Werner Almesberger Signed-off-by: Dmitry Eremin-Solenikov commit fa1da8835b0764a77a72dea8861bdb1b8c4c59d2 Author: Alexander Smirnov Date: Wed Jun 29 12:51:37 2011 +0000 ieee802154: free skb buffer if dev isn't running Signed-off-by: Alexander Smirnov Signed-off-by: Dmitry Eremin-Solenikov commit 5fd72607a4e9a4a7147d670526431944976035b8 Author: Dmitry Eremin-Solenikov Date: Fri Oct 22 01:25:25 2010 +0400 ieee802154: it's IEEE 802.15.4, not ZigBee Signed-off-by: Dmitry Eremin-Solenikov commit 060e41794e3f09f0b28f79b8d6c7ac1a9641d672 Author: Dmitry Eremin-Solenikov Date: Thu Mar 18 19:26:23 2010 +0300 ieee802154: support specifying hw address for created devices Signed-off-by: Dmitry Eremin-Solenikov commit 6e10c469f0997a5ebaffa955d8716c59ba102a1f Author: Dmitry Eremin-Solenikov Date: Mon Nov 16 17:04:21 2009 +0300 fakehard: stop setting platform_data as it's unused anymore Previously dev.platform_data was used to store a pointer to net device. Now this code was gone. Drop it. Signed-off-by: Dmitry Eremin-Solenikov commit c6d5f5fa658f2569a7baaff5acda261a1316cee9 Author: Christoph Hellwig Date: Wed Feb 16 09:34:26 2011 +0100 hfsplus: lift the 2TB size limit Replace the hardcoded 2TB limit with a dynamic limit based on the block size now that we have fixed the few overflows preventing operation with large volumes. Signed-off-by: Christoph Hellwig commit 4ba2d5fdcfd19de0dedf394ddc48db2f219fa89a Author: Christoph Hellwig Date: Wed Feb 16 09:34:22 2011 +0100 hfsplus: fix overflow in hfsplus_read_wrapper For partitions larger than 2TB or at such an offset the hfs wrapper code in hfsplus might overflow the range representable in a 32-bit data type. Make sure we use a sector_t for the arithmetics leading to it. I'm not sure this code can be readed at all as hfs itself never supported such large volumes. Signed-off-by: Christoph Hellwig commit bf1a1b31fa3ea24e3a90821d69a5c3da066f7d6c Author: Christoph Hellwig Date: Wed Feb 16 09:34:17 2011 +0100 hfsplus: fix overflow in hfsplus_get_block For filesystems larger than 2TB the final sector number passed to map_bh might overflow the range representable in a 32-bit data type. Make sure we use a sector_t for it and the arithmetics calculating it. Signed-off-by: Christoph Hellwig commit 2b4f9ca8a575ce6d7ddb59d668e2be250bf86a8f Author: Anton Salikhmetov Date: Thu Dec 16 18:08:42 2010 +0200 hfsplus: assignments inside `if' condition clean-up Make assignments outside `if' conditions for unicode.c module where the checkpatch.pl script reported this coding style error. Signed-off-by: Anton Salikhmetov Signed-off-by: Christoph Hellwig commit 131ad62d8fc06d9d0a5c61d9526876352c2f2bbd Author: Mr Dash Four Date: Thu Jun 30 13:31:57 2011 +0200 netfilter: add SELinux context support to AUDIT target In this revision the conversion of secid to SELinux context and adding it to the audit log is moved from xt_AUDIT.c to audit.c with the aid of a separate helper function - audit_log_secctx - which does both the conversion and logging of SELinux context, thus also preventing internal secid number being leaked to userspace. If conversion is not successful an error is raised. With the introduction of this helper function the work done in xt_AUDIT.c is much more simplified. It also opens the possibility of this helper function being used by other modules (including auditd itself), if desired. With this addition, typical (raw auditd) output after applying the patch would be: type=NETFILTER_PKT msg=audit(1305852240.082:31012): action=0 hook=1 len=52 inif=? outif=eth0 saddr=10.1.1.7 daddr=10.1.2.1 ipid=16312 proto=6 sport=56150 dport=22 obj=system_u:object_r:ssh_client_packet_t:s0 type=NETFILTER_PKT msg=audit(1306772064.079:56): action=0 hook=3 len=48 inif=eth0 outif=? smac=00:05:5d:7c:27:0b dmac=00:02:b3:0a:7f:81 macproto=0x0800 saddr=10.1.2.1 daddr=10.1.1.7 ipid=462 proto=6 sport=22 dport=3561 obj=system_u:object_r:ssh_server_packet_t:s0 Acked-by: Eric Paris Signed-off-by: Mr Dash Four Signed-off-by: Patrick McHardy commit 8b4186160b7894ca4583f702a562856d5d9e9118 Author: Russell King Date: Sat Jun 25 19:25:02 2011 +0100 ARM: entry: prefetch abort helper: pass aborted pc in r4 rather than r0 This avoids unnecessary instructions for CPUs which implement the IFAR (instruction fault address register). Signed-off-by: Russell King commit b059bdc39321696fe8f344acb7117d57fbd7b475 Author: Russell King Date: Sat Jun 25 15:44:20 2011 +0100 ARM: entry: rejig register allocation in exception entry handlers This allows us to avoid moving registers twice to work around the clobbered registers when we add calls to trace_hardirqs_{on,off}. Ensure that all SVC handlers return with SPSR in r5 for consistency. Signed-off-by: Russell King commit ad599f9cf0187e823bc92bc83f3867a38fa266b9 Author: Mimi Zohar Date: Wed Jun 29 14:53:56 2011 -0400 encrypted-keys: move ecryptfs documentation to proper location Move keys-ecryptfs.txt to Documentation/security. Signed-off-by: Mimi Zohar Signed-off-by: James Morris commit 3ddf17f08cf2f0d7ff06858eb07d1cc3db8994de Author: Tetsuo Handa Date: Wed Jun 29 14:22:37 2011 +0900 TOMOYO: Cleanup header file. Sort by alphabetic order. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 3a6297abf3b179ae19b849e429841a7646711b70 Author: Tetsuo Handa Date: Wed Jun 29 14:17:31 2011 +0900 TOMOYO: Update MAINTAINERS file. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 7986cf28bc5050967a7056d6eadda7f16f84eaab Author: Tetsuo Handa Date: Wed Jun 29 13:07:52 2011 +0900 TOMOYO: Fix build error with CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER=y . I forgot to add #ifndef in commit 0e4ae0e0 "TOMOYO: Make several options configurable.", resulting security/built-in.o: In function `tomoyo_bprm_set_creds': tomoyo.c:(.text+0x4698e): undefined reference to `tomoyo_load_policy' error. Reported-by: Stephen Rothwell Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit da3f1c7b7d34e66cf571a613525ca0d23f92d42f Merge: 5b944a7 25e75df Author: James Morris Date: Thu Jun 30 18:44:55 2011 +1000 Merge branch 'for-security' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/apparmor-dev into next commit 5b944a71a192977c1c018bbcfa0c52dca48e2368 Merge: 0e4ae0e c017d0d Author: James Morris Date: Thu Jun 30 18:43:56 2011 +1000 Merge branch 'linus' into next commit cbe263497def23befb6f475977661bae5d1f82e4 Author: Russell King Date: Thu Jun 30 08:45:49 2011 +0100 ARM: pm: omap3: move saving of the auxiliary control registers to C Move the saving of the auxiliary control registers into C; there's no need for this to be in assembly code. This results in less assembly code to deal with in OMAP. Kevin tested full-chip retention and off on 3430/n900, 3530/Overo and 3630/Zoom3. Tested-by: Kevin Hilman Signed-off-by: Russell King commit a9c0f41b3a64955fd6f4e9d66ae1df1cbdee0cd0 Author: Dave Carroll Date: Sat Jun 18 07:36:40 2011 +0000 powerpc: Add printk companion for ppc_md.progress This patch adds a printk companion to replace the udbg progress function when initmem is freed. Suggested-by: Milton Miller Suggested-by: Benjamin Herrenschmidt Signed-off-by: Dave Carroll Signed-off-by: Benjamin Herrenschmidt commit 2773fcc8c48b947c997ff345f3e453917883cdb5 Author: Dave Carroll Date: Sat Jun 18 07:36:39 2011 +0000 powerpc: Move free_initmem to common code The free_initmem function is basically duplicated in mm/init_32, and init_64, and is moved to the common 32/64-bit mm/mem.c. All other sections except init were removed in v2.6.15 by 6c45ab992e4299c869fb26427944a8f8ea177024 (powerpc: Remove section free() and linker script bits), and therefore the bulk of the executed code is identical. This patch also removes updating ppc_md.progress to NULL in the powermac late_initcall. Suggested-by: Milton Miller Suggested-by: Benjamin Herrenschmidt Signed-off-by: Dave Carroll Signed-off-by: Benjamin Herrenschmidt commit 6da49a292534d31ca391928ea97f8225774dc1e0 Merge: 17bdc6c ca56a95 Author: Benjamin Herrenschmidt Date: Thu Jun 30 15:23:59 2011 +1000 Merge remote branch 'origin/master' into next commit bee4d4acf563f91a7796cca53111d91be2532935 Merge: e489bda f71d4af Author: Keith Packard Date: Wed Jun 29 20:38:41 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 275d3ba6b40d0f098693b9089c6fee9bd4e55d74 Author: Theodore Ts'o Date: Wed Jun 29 21:44:45 2011 -0400 ext4: remove loop around bio_alloc() These days, bio_alloc() is guaranteed to never fail (as long as nvecs is less than BIO_MAX_PAGES), so we don't need the loop around the struct bio allocation. Signed-off-by: "Theodore Ts'o" commit 269230e7c52623cda279010c8032a6f5b59caaaf Author: Herbert Xu Date: Mon Jun 27 15:45:19 2011 +0800 crypto: algif_hash - Handle initial af_alg_make_sg error correctly When the first call to af_alg_make_sg fails, we may return garbage instead of the real error. This patch fixes it by setting the error if "copied" is zero. Based on a patch by Jesper Juhl. Reported-by: Jesper Juhl Signed-off-by: Herbert Xu commit 36ca239b245dbdec3b0c94976e956226bdd4108c Author: Mandeep Singh Baines Date: Mon Jun 27 15:41:56 2011 +0800 crypto: sha1_generic - use SHA1_BLOCK_SIZE Modify sha1_update to use SHA1_BLOCK_SIZE. Signed-off-by: Mandeep Singh Baines Signed-off-by: Herbert Xu commit 52527cf3f95d437b02f54437d5c3d7fda06474d1 Author: Josh Boyer Date: Mon Jun 27 15:34:54 2011 +0800 hwrng: ppc4xx - add support for ppc4xx TRNG Various PowerPC 4xx SoCs contain a TRNG embedded in the Security function. This adds a device driver for that TRNG. Signed-off-by: Josh Boyer Acked-by: Matt Mackall Signed-off-by: Herbert Xu commit c5697462ae94693764e468b701c616bbbd6f951c Author: Josh Boyer Date: Mon Jun 27 15:39:07 2011 +0800 crypto: crypto4xx - Perform read/modify/write on device control register The Security function on the AMCC SoCs has multiple engines within a single MMIO range. The crypto driver currently enables the 3DES functionality by doing a blind write to the device control register. This can unintentionally disable other functions like the PKA or TRNG when the driver is loaded. Perform a read/modify/write to enable the 3DES function instead. Signed-off-by: Josh Boyer Signed-off-by: Herbert Xu commit 23457bc9566be64f33afdc159aadd42712673e0b Author: Kim Phillips Date: Sun Jun 5 16:42:54 2011 -0500 crypto: caam - fix build warning when DEBUG_FS not configured drivers/crypto/caam/ctrl.c: In function 'caam_probe': drivers/crypto/caam/ctrl.c:55:23: warning: unused variable 'perfmon' Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit cfa2b54eca28103d07e5334aa06b78321fbe1d9a Author: Mati Vait Date: Wed Jun 8 21:26:00 2011 +0800 crypto: arc4 - Fixed coding style issues Fixed coding style issues: unnecessary spaces, parentheses on wrong lines. Signed-off-by: Mati Vait Signed-off-by: Herbert Xu commit fae366401bfcfe18b9260b9057f506c38c171b7c Author: Mati Vait Date: Wed Jun 8 21:23:40 2011 +0800 crypto: crc32c - Fixed coding style issue Removed coding style issue: space before tabs. Signed-off-by: Mati Vait Signed-off-by: Herbert Xu commit cd3f1d545c45489c88fbc71a82559664b8bf0bb2 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:13 2011 +0300 crypto: omap-sham - do not schedule tasklet if there is no active requests Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 0efd4d8a6add75d6008a95fb628d376fb7cfcbe2 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:12 2011 +0300 crypto: omap-sham - clear device flags when finishing request Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit ed635cb85efbeebc974c1c477ddc971f5dcc962e Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:11 2011 +0300 crypto: omap-sham - irq handler must not clear error code Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 6c63db821d4663c92cd326f6adb8f3d627971a53 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:10 2011 +0300 crypto: omap-sham - irq and dma handling changes It could be a situation, that tasklet is executed twice because of certain delay between dma callback and irq handler execution. In that case, second tasklet execution could actually corrupt the data of the new started dma transactions. This patch improves tasklet logic and prevents above described cases. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 6cb3ffe100ef4c6d5be0bfe4f8ac6d4227bb91bd Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:09 2011 +0300 crypto: omap-sham - remove dedicated queue handling tasklet Calling omap_sham_handle_queue from "done" tasklet should be done after irq scheduled tasklet completes. Having additional tasklet does not solve that issue because it might be execute before. So queue handling tasklet has been removed and functionality integrated into single tasklet. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 171cb9a2807588630fed401f3e0b8ae22d91595f Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:08 2011 +0300 crypto: omap-sham - remove unnecessary local variable Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit ed3ea9a82b4c63e591ceaa065b2e04a3fe946265 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:07 2011 +0300 crypto: omap-sham - move some flags to device context Couple of context flags have been moved to device flags. IRQ and tasklet handlers does not need to access request context anymore. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit a929cbeef7d8e5c3603a6f43b977c03c922aada3 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:06 2011 +0300 crypto: omap-sham - replace flags operation with atomic bit operations Some flags are changed in interrupt handlers and verified in the tasklet. There might be a race condition when tasklet is interrupted or another cpu/core will run IRQ handler and tasklet in parallel. Atomic bitops functions are now used instead of bitmask operations. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit ea1fd2246f3c3c6b739529db2a547fa080cf09a3 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:05 2011 +0300 crypto: omap-sham - replace flags bit mask with bit number Flags mask cannot be used with atomic bit operations. This patch changes masks to bit numbers. Atomic bit operations will be used by following patches. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit c3304721ed666804395fc340f1aa347b18f1dda0 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:04 2011 +0300 crypto: omap-sham - remove unused code Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 0e87b159b31e551fe5447dcafc5769c05dc5e404 Author: Dmitry Kasatkin Date: Thu Jun 2 21:10:03 2011 +0300 crypto: omap-sham - remove extra reference Request pointer is already available in the function. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 033590fc9d38bb82b904439daada78f930c070db Author: H Hartley Sweeten Date: Wed Jun 8 21:05:51 2011 +0800 hwrng: timeriomem - use resource_size Signed-off-by: H Hartley Sweeten Acked-by: Matt Mackall Signed-off-by: Herbert Xu commit 2725ae17591bf771608fe62c54f7b2badcf7492f Author: Julia Lawall Date: Wed Jun 8 21:00:55 2011 +0800 hwrng: nomadik - add missing clk_put Jump to the end of the function for the clk_disable and clk_put rather than returning directly. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Signed-off-by: Matt Mackall Signed-off-by: Herbert Xu commit 6ba1a31ef146f25a457968c00c8c10bbe1a3ccfe Author: Julia Lawall Date: Wed Jun 8 20:59:38 2011 +0800 hwrng: omap - add missing clk_put Convert a return to a jump to an existing label that calls clk_put. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Signed-off-by: Matt Mackall Signed-off-by: Herbert Xu commit 8af00860c913d5e814f3c10232a0f42e2a964b99 Author: Richard Weinberger Date: Wed Jun 8 20:56:29 2011 +0800 crypto: UML build fixes CRYPTO_GHASH_CLMUL_NI_INTEL and CRYPTO_AES_NI_INTEL cannot be used on UML. Commit 3e02e5cb and 54b6a1b enabled them by accident. Signed-off-by: Richard Weinberger Signed-off-by: Herbert Xu commit 5165e5b112c4fb3a9258d5f6246cbbd44108c181 Author: Jarod Wilson Date: Tue May 31 15:23:57 2011 +1000 crypto: testmgr - add xts-aes-256 self-test FIPS compliance requires a known-answer self-test for all approved cipher and mode combinations, for all valid key sizes. Presently, there are only self-tests for xts-aes-128. This adds a 256-bit one, pulled from the same reference document, which should satisfy the requirement. Signed-off-by: Jarod Wilson Signed-off-by: Herbert Xu commit c3e73e76a90b1e790e0bb7bb36135be9232f58de Author: Gustavo F. Padovan Date: Thu May 26 13:29:33 2011 +1000 crypto: ghash-intel - Fix set but not used in ghash_async_setkey() Signed-off-by: Gustavo F. Padovan Signed-off-by: Herbert Xu commit 2dabc55dfe655390a7bfd346e595c33ee2f2cc82 Author: Krishna Gudipati Date: Fri Jun 24 20:29:27 2011 -0700 [SCSI] bfa: Update the driver version to 3.0.2.1 Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 61e62e21afe469854e04546ea10b7a6f4cfd1142 Author: Krishna Gudipati Date: Fri Jun 24 20:29:07 2011 -0700 [SCSI] bfa: Driver and BSG enhancements. - Added a new module parameter max_xfer_size to set the max_sectors in the scsi_host template. - Added logic to handle request_irq() failure so that msix vector resource is de-allocated immediately when failure happens. - BSG enhancements to collect vHBA releated info and port log. - Removed the workaround of incrementing the module refcnt on bsg request. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 3350d98d6d072fc4ac3622e61dc3dc351ef01dc5 Author: Krishna Gudipati Date: Fri Jun 24 20:28:37 2011 -0700 [SCSI] bfa: Added support to query PHY. - Added PHY sub-module. - Implemented interface to obtain stats and to read/update the fw from the PHY module. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit cb1955b86c86782ff20037da42ef030057501c34 Author: Frederic Weisbecker Date: Wed Jun 29 23:52:52 2011 +0200 perf tools: Only display parent field if explictly sorted We don't need to display the parent field if the parent sorting machinery is only used for parent filtering (as in "-p foo"). However if parent filtering is used in combination with explicit parent sorting ( -s parent), we want to display it. Result with: perf report -p kernel_thread -s parent Before: # Overhead Parent symbol # ........ ............. # 0.07% | --- ioread8 ata_sff_check_status ata_sff_tf_load ata_sff_qc_issue ata_bmdma_qc_issue ata_qc_issue ata_scsi_translate ata_scsi_queuecmd scsi_dispatch_cmd scsi_request_fn __blk_run_queue __make_request generic_make_request submit_bio submit_bh journal_submit_commit_record jbd2_journal_commit_transaction kjournald2 kthread kernel_thread_helpe After: # Overhead Parent symbol # ........ ............. # 0.07% kernel_thread_helper | --- ioread8 ata_sff_check_status ata_sff_tf_load ata_sff_qc_issue ata_bmdma_qc_issue ata_qc_issue ata_scsi_translate ata_scsi_queuecmd scsi_dispatch_cmd scsi_request_fn __blk_run_queue __make_request generic_make_request submit_bio submit_bh journal_submit_commit_record jbd2_journal_commit_transaction kjournald2 kthread kernel_thread_helper Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Cc: David Ahern Cc: Sam Liao commit fd8ea21276adefc7f0133bd42fcf3b2faf0b15f8 Author: Frederic Weisbecker Date: Wed Jun 29 23:08:14 2011 +0200 perf tools: Allow sort dimensions to be registered more than once So that the parent sort dimension can be registered twice: once if we add it as an explicit sort dimension (-s parent) and twice if we request a parent filter (-p foo). We'll have only one parent sort dimension in the end but this allows to override the default parent filter with we gave in "-p" option. The goal of this is to prepare to allow the use of "-s parent" and "-p foo" at the same time, ie: sort by filtered parent. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Cc: David Ahern Cc: Sam Liao commit e84d21227c6865fe1f3d0c79d1539b6877f54c84 Author: Frederic Weisbecker Date: Wed Jun 29 22:23:03 2011 +0200 perf tools: Don't display ignored entries on stdio ui As for newt ui, don't display entries that have been marked as ignored. The practical current effect of this is to make parent filtering really working. Before, entries that were ignored were given a null parent but were still displayed. This resulted in some weird effects: # Overhead Command Shared Object Symbol # ........ ........... ................. ............ # ^A | --- __lock_acquire | |--95.97%-- lock_acquire | | | |--30.75%-- _raw_spin_lock Discard these from the stdio display. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Cc: David Ahern Cc: Sam Liao commit 2fd701bc782fad8792059dd586e1f00b64f6a52e Author: Frederic Weisbecker Date: Wed Jun 29 03:25:14 2011 +0200 perf tools: Remove sort print helpers declarations These are probably some old leftovers. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Cc: David Ahern Cc: Sam Liao commit 3d7fc66dcd8d510aaa46ab9b914b632bc149b05c Author: Krishna Gudipati Date: Fri Jun 24 20:28:17 2011 -0700 [SCSI] bfa: Added HBA diagnostics support. - Added diagnostics sub-module to BFA. - Implemented interface to perform memtest/loopback test and some other diagnostics tests. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 872a878fb1ee53e21c90040de2c01b3fc53b5942 Author: Frederic Weisbecker Date: Wed Jun 29 03:14:52 2011 +0200 perf tools: Make sort operations static These don't need to be globally visible. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Cc: David Ahern Cc: Sam Liao commit d797fdc5c5c245fbb05f553e68cb95d962fbdd01 Author: Sam Liao Date: Tue Jun 7 23:49:46 2011 +0800 perf tools: Add inverted call graph report support. Add "caller/callee" option to support inverted butterfly report, in the inverted report (with caller option), the call graph start from the callee's ancestor. Users can use such view to catch system's performance bottleneck from a sysprof like view. Using this option with specified sort order like pid gives us high level view of call graph statistics. Also add "-G" alias for inverted call graph. Signed-off-by: Sam Liao Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Cc: David Ahern Signed-off-by: Frederic Weisbecker commit 5a54b1d576d1880eb249e906e0c8e2ffe64506d3 Author: Krishna Gudipati Date: Fri Jun 24 20:27:13 2011 -0700 [SCSI] bfa: Added support for flash configuration - Added flash sub-module. - Implemented the interface to read/erase/update flash partition. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 51e569aa1f0c10bd71af05e76e4ba0e42c51e4ab Author: Krishna Gudipati Date: Fri Jun 24 20:26:25 2011 -0700 [SCSI] bfa: Added support to obtain SFP info. - Added SFP sub-module to BFA. - Added interface to collect sfp media info and sfp speed. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 148d61039c625f3f7e2d0a6ad1efe17f83153e65 Author: Krishna Gudipati Date: Fri Jun 24 20:25:36 2011 -0700 [SCSI] bfa: Added support for CEE info and stats query. - Added CEE sub-module. - Added support to collect stats/cee module info using BSG interface. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 601380669baa2ba6427b821a14e5c91afb580dfc Author: Krishna Gudipati Date: Fri Jun 24 20:25:15 2011 -0700 [SCSI] bfa: Extend BSG interface. - Added support to collect driver/fw stats. - Added support to perform adapter/ioc enable, disable operations. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit d7be54cc5c5f6f9cb9ac67462aadda57813698b8 Author: Krishna Gudipati Date: Fri Jun 24 20:24:52 2011 -0700 [SCSI] bfa: FCS bug fixes. - Added logic to initiate a PLOGI to the target, while processing a LOGO from the same target in Direct attach mode. - Added logic to generate a FCCT Reject indicating unsupported command, upon receiving FCCT/FCGS requests. - Added logic to set the fcpim in offline state and avoid any PRLI retries if a PRLI response is a reject with a reason Command Not Supported. - Updated the FDMI Supported/Current speeds. - Added logic to wait for the response from the firmware before sending ACC to PLOGI and transitioning to subsequent states - while processing an Incoming PLOGI in online state. - Added a wait state in the fcs_vport state machine - For case where FDISC is in progress and we get a vport delete request we wait for fdisc response and will transition to the appropriate state based on rsp status, else its causing both driver/fw resources to be not freed. - Remove the fc_credit_recovery module param. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 4507025d01149aea8705e43508d0ef11e7010cfd Author: Krishna Gudipati Date: Fri Jun 24 20:24:29 2011 -0700 [SCSI] bfa: DMA memory allocation enhancement. - Modified the design such that each BFA sub-module will provide the amount of DMA and KVA memory needed by it and queues the same request to the global dma and kva info queues. - During the memory allocation we iterate over this queue to allocate the dma and kva memory requested by sub-modules. - The change is needed to avoid requesting the aggregate amount of memory needed by all the BFA sub-modules as one contiguous chunk. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 3fd459804ff8e002db2671900debd0fc6dc6c443 Author: Krishna Gudipati Date: Fri Jun 24 20:24:08 2011 -0700 [SCSI] bfa: Brocade-1860 Fabric Adapter vHBA support. - Introduced partitioning of the BFA resources. - Added h/w queue ID in CPE messages, firmware uses h/w queue ID from messages to pick a matching RME queue. - Added message header to bfa_reqq_produce(). h/w queue ID is set in the message header and firmware modules use h/w queue ID from message header instead of from cpqe event. - Made changes to allow using all 256 queues of Brocade-1860 asic. Previously only a single queue per queue group was used. - Added function tag to BFI message header. Only used by FC BFI messages. Used to translate host tag to firmware tag. bfa_lpuid() is changed to bfa_fn_lpu() that encodes both PCI function and port ID in BFI message header. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 10a07379247078448c076690657a076076bf89aa Author: Krishna Gudipati Date: Fri Jun 24 20:23:38 2011 -0700 [SCSI] bfa: Brocade-1860 Fabric Adapter PLL init fixes. - If flash controller is halted unconditionally, this results in illegal write access to flash controller register domain. Since flash controller registers are only accessible once s_clk is started - added logic to check for WGN status and halt flash controller only if it is already running. - Added check to wait for flash controller halt to be completed before proceeding with s_clk/l_clk initializations. - Removed unnecessary reset logic for PMM 1T memory and moved memory initialization after flash access enable. - Disable Brocade-1860 asic MBOX interrupt before PLL initialization. - Remove reset enable for S_CLK/L_CLK after both PLL initializations are complete. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit a714134a857d3984250ee52fda7850b61bf8a94e Author: Krishna Gudipati Date: Fri Jun 24 20:23:19 2011 -0700 [SCSI] bfa: Added Fabric Assigned Address(FAA) support - Updated/added data structures and definitions to support FAA protocol. - Modified the IOC state machine to support FAA. - Introduced FAA feature configuration - enable/disable/query. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 5a0adaedffce91100d03fc1036dde024c8589295 Author: Krishna Gudipati Date: Fri Jun 24 20:22:56 2011 -0700 [SCSI] bfa: IOC bug fixes. - Add logic to handle the case where PCI mapping goes away when IOCPF state machine is waiting for semaphore. - Added logic to unlock hw semaphore if the previos FW boot was from flash based and the current FW initialization attempt is from OS. - Added fix to update hbfails and hb_count stats during hwerror event. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 1a4d8e1bd81c018f7b8c7622066d5cfead59b38a Author: Krishna Gudipati Date: Fri Jun 24 20:22:28 2011 -0700 [SCSI] bfa: Enable ASIC block configuration and query. - Added ASIC block configuration APIs: - to create/delete/update the physical functions - to do adapter/port mode configuration - to query the current ASIC block configuration. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit ea9582d721a0d711fb046a25f5e94dcbbc5be410 Author: Eddie Wai Date: Thu Jun 23 15:51:37 2011 -0700 [SCSI] bnx2i: Updated copyright and bump version Bumped version from 2.6.2.3 to 2.7.0.3 Signed-off-by: Eddie Wai Signed-off-by: James Bottomley commit 3601b531987ea9f861300ae1189256f7118f4f09 Author: Eddie Wai Date: Thu Jun 23 15:51:35 2011 -0700 [SCSI] bnx2i: Modified to skip CNIC registration if iSCSI is not supported The init routine will now examine the cnic->max_iscsi_conn variable before registering to CNIC during ulp_init. Signed-off-by: Eddie Wai Acked-by: Michael Chan Signed-off-by: James Bottomley commit b5cf6b63f73abdc051035f0050b367beeb2ef94c Author: Eddie Wai Date: Thu Jun 23 15:51:34 2011 -0700 [SCSI] bnx2i: Added the use of kthreads to handle SCSI cmd completion This patch breaks the SCSI cmd completion into two parts: 1. The bh will allocate and queued work to the cmd specific CPU IO completion kthread. The CPU for the cmd is from the sc->request->cpu. 2. The CPU specific IO completion kthread will call the scsi_cmd_resp routine to do the actual cmd completion. In the normal case, these IO completion kthreads should complete before the blk IO times out at 60s. However, in the case when these kthreads are blocked for whatever reason and exceeded the timeout, the call to conn_destroy will have to iterate and exhaust all related work in the percpu work list for all online CPUs. This will guarantee the protection of the work->session and conn pointers before they get freed. Also modified the event coalescing formula to have at least the event_coal_min outstanding cmds in the pipeline so the SCSI producer would not get underrun. Also changed the following SCSI parameters: - can_queue from 1024 to 2048 - cmds_per_lun from 24 to 128 Signed-off-by: Eddie Wai Acked-by: Benjamin Li Acked-by: Michael Chan Signed-off-by: James Bottomley commit 74dcd0ec735ba9c5bef254b2f6e53068cf3f9ff0 Author: Mike Christie Date: Fri Jun 24 15:11:55 2011 -0500 [SCSI] libiscsi_tcp: fix LLD data allocation Have libiscsi_tcp have upper layers allocate the LLD data along with the iscsi_cls_conn struct, so it is refcounted. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 03adb5f91280b433c3685d0ee86b2e1424af3d88 Author: Mike Christie Date: Fri Jun 24 15:11:54 2011 -0500 [SCSI] iscsi_tcp: fix locking around iscsi sk user data iscsi_sw_tcp_conn_restore_callbacks could have set the sk_user_data field to NULL then iscsi_sw_tcp_data_ready could read that and try to access the NULL pointer. This adds some checks for NULL sk_user_data in the sk callback functions and it uses the sk_callback_lock to set/get that sk_user_data field. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit f457a46f179df41b0f6d80dee33b6e629945f276 Author: Mike Christie Date: Fri Jun 24 15:11:53 2011 -0500 [SCSI] iscsi_ibft, be2iscsi, iscsi_boot: fix boot kobj data lifetime management be2iscsi passes the boot functions its phba object which is allocated in the shost, but iscsi_ibft passes in a object allocated for each item to display. The problem is that iscsi_boot_sysfs was managing the lifetime of the object passed in and doing a kfree on release. This causes a double free for be2iscsi which frees the shost in its pci_remove. This patch fixes the problem by adding a release callback which the drivers can call kfree or a put() type of function (needed for be2iscsi which will do a get/put on the shost). Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 9d04516310aaef3970c642a54531a52123001178 Author: Mike Christie Date: Fri Jun 24 15:11:52 2011 -0500 [SCSI] iscsi_boot_sysfs: have this module check for null on destruction This moves the check for NULL boot_sets to the iscsi_boot_sysfs module instead of having the drivers do it. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit c682d602d0f9751c92e07c196be27d8fac6ec3ed Author: Karen Xie Date: Fri Jun 17 16:10:32 2011 -0700 [SCSI] cxgb3i: fixed programing of the dma page sizes Fixed missing programming of the pages sizes for DMA. Signed-off-by: Karen Xie Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit b2085a4efc1a00375b77d5cbfe73a549c9d7d65b Author: Neerav Parikh Date: Mon Jun 20 16:59:51 2011 -0700 [SCSI] fcoe: Rearrange fcoe port and NPIV port cleanup When NPIV port destroy handler is called it does not do all the cleanup required for the given NPIV port. This was happening as some of the lport cleanup moved to fcoe_interface_cleanup() routine, which is not called as part of the vport delete process. This patch rearranges the sequence in which the fcoe_if_destory() and fcoe_interface_cleanup() functions are being called from various places in the code. It now matches the sequence they are constructed during the create process for both N_Port as well as NPIV port. Tested-by: Ross Brattain Signed-off-by: Neerav Parikh Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 9b7d1613a9060b7c82ac7e8e7cbee8c2392925c2 Author: Vasu Dev Date: Mon Jun 20 16:59:46 2011 -0700 [SCSI] libfc: post reset event on lport reset Post an FCH_EVT_LIPRESET event on lport reset as as lport reset occurs on FIP cleat virtual link, this could be due to change in fcoe vlan and this event will allow user app fcoemon to switch to new fcoe vlan. Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit f2f7b09ccea1717026915a4401f0452f05c97364 Author: Kiran Patil Date: Mon Jun 20 16:59:41 2011 -0700 [SCSI] tcm_fc: Fixing reference counting problem which was causing ft_sess to be deleted. Problem: After fixing the issue in TCM core w.r.t LUN Reset (Task Management request) , ran into issue where during the completing of this LUN Reset command, reference count of "ft_sess" drops to zero which caused "sess" to be deleted. Fix: As part of handling task management request (e.g. LUN Reset), TCM core function "transport_generic_do_tmr" ends up calling ft_free_cmd which in turn calls "ft_sess_put" (which drops session's reference count by 1) and then frees ft_cmd. Then function "transport_generic_do_tmr" calls "transport_cmd_check_stop" which in turn also calls ft_free_cmd (which calls ft_sess_put - which drops reference count of sess by 1, hence reference count of sess becomes zero and session gets deleted). Fix is to just send response in case of tmr from function "ft_queue_resp_code" and not delete "ft_cmd" (means don't call ft_free_cmd). Earlier code was to send the response code and also free ft_cmd. ft_free_cmd will be freed later after sending response code as a result of "transport_cmd_check_stop" (which calls ft_release_cmd -> ft_free_cmd) being called from "transport_generic_do_tmr" after sening TMR response code. Notes/Dependencies: This bug was found after fixing NULL pointer access issue in TCM core (in LUN Reset codepath) Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit e3e65c69c3cfe8e407797c78fd11808aee1a8a81 Author: Kiran Patil Date: Mon Jun 20 16:59:30 2011 -0700 [SCSI] libfc:Fix for exchange/seq loopup failure when FCoE stack is used as target and connected to windows initaitor Problem: Linux based SW target (TCM) connected to windows initiator was unable to satisfy write request of size > 2K. Fix: Existing linux implememtation of FCoE stack is expecting sequence number to match w.r.t incoming framme. When DDP is used on target in response to write request from initiator, SW stack is notified only when last data frame arrives and only the pakcket header of last data frame is posted to NetRx queue of storage. When that last packet was processed in libfc:Exchange layer, implementation was expecting sequence number to match, but in this case sequence number which is embedded in FC Header is assigned by windows initaitor, hence due to sequence number mismatch post-processing which shall result into sending RSP is not done. Enhanced the code to utilize the sequence number of incoming last frame and process the packet so that, it will eventually complete the write request by sending write response (RSP) GOOD. Notes/Dependencies: This patch is validated using windows and linux initiator to make sure, it doesn't break anything. Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 29bdd2bb3e48c742e6b5a0be2ff2fa00e9838fe0 Author: Kiran Patil Date: Mon Jun 20 16:59:25 2011 -0700 [SCSI] fcoe: Amends previous patch, Round-robin based selection of CPU for post processing of incoming request for FCoE target Problem: Selection of RX queue on target is based on RX-ID. FCoE used 8 Net Rx queues. HW post the packets based on rx_id % num_rx_queue. Due to this has based filtering, only one CPU is busy servicing incoming request including post-processing of incoming request. This is gating factor because 1. Only one CPU is utilized 100% while others CPUs are not used at all. 2. CPU which received request assign "sequence' by selecting exchange from per CPU pool (num_ddp_context / num_online_cpus, approxi.). Due to which if if rate of incoming request is higher than rate of servicing request, existing code path end of sending "BUSY" response (SAM_STAT_BUSY because unable to allocate exchange). Fix: Fan-out incoming request to all other CPUs excluding the CPU which is receiving all incoiming request. This path also addresses, selecting same CPU based on rx_id from received frame for completion of the request such as "releasing exchange to the per CPU Pool". This fix is applicable for FCoE target since initiator code path already takes care of selecting CPU to complete post-processing of request once OX_ID is assigned. Notes: N/A Dependencines: N/A Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 064287eee372e8a2effe77fb909a40da9e7a1fd7 Author: Kiran Patil Date: Mon Jun 20 16:59:20 2011 -0700 [SCSI] fcoe: Round-robin based selection of CPU for post-processing of incoming commands Problem: Earlier mechanism of selection of CPU was, to select the same CPU which has received incoming request. Hence in case of rx_id = 0xFFFF, request was always posted to same NetRx queue, hence only 1 CPU is utilized for handling the command. It was also causing problem of "running out of exchanges from per CPU pool of exchanges (in case of DDP offload) Fix: Implemented new algo. to select CPU for post-processing of incoming commands when rx_id is unknown. This is simple Round robin algo. for CPU selection. Notes/Dependencies: N/A Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 1ff9918b625457ce20d450d00f9ed0a12ba191b7 Author: Kiran Patil Date: Mon Jun 20 16:59:15 2011 -0700 [SCSI] fcoe: Unable to select the exchangeID from offload pool for storage targets Problem: When initiator sends write command to target, target tries to assign new sequence. It allocates new exchangeID (RX_ID) always from non-offloaded pool (Non-offload EMA) Fix: Enhanced fcoe_oem_match routine to look at F_CTL flags and if it is exchange responder and command type is WRITEDATA, then function returns TRUE instead of FALSE. This function is used to determine which pool to use (offload pool of exchange is used only if this function returns TRUE). Technical Notes: N/A Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 71f894915aa6680dbce2ff727fb9237c4f7ac373 Author: Yi Zou Date: Mon Jun 20 16:59:10 2011 -0700 [SCSI] fcoe: support ndo_fcoe_ddp_target() for DDP in FCoE targe Add ddp_target() support to the Open-FCoE sw fcoe hba driver (fcoe.ko). Signed-off-by: Yi Zou Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 33dc362b7f155a584688bcab2facdd4d21232001 Author: Yi Zou Date: Mon Jun 20 16:59:05 2011 -0700 [SCSI] libfc, tcm_fc: add ddp_targ() to libfc function template to supprot FCoE DDP in target mode The fcoe driver can implement ddp_targ() similarly to ddp_setup() when fcoe stack works with existing target frame, e.g., tcm, where the ddp_targ() would eventually point to the underlying hardware driver's implementation of ndo_fcoe_ddp_targ() through net_device_ops. This new API sets up DDP context for target appropriately by setting required bits for DDP context. Signed-off-by: Yi Zou Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 480584818a4bb3655d8d0d875ed60b427fc61cc5 Author: Kiran Patil Date: Mon Jun 20 16:58:59 2011 -0700 [SCSI] libfc: Enhancement to RPORT state machine applicable only for VN2VN mode Problem: Existing RPORT state machine continues witg FLOGI/PLOGI process only after it receices beacon from other end. Once claiming stage is over (either clain notify or clain repose), beacon is sent and state machine enters into operational mode where it initiates the rlogin process (FLOGI/PLOGI) to the peer but before this rlogin is initiated, exitsing implementation checks if it received beacon from other end, it beacon is not received yet, rlogin process is not initiated. Other end initiates FLOGI but peer end keeps on rejecting FLOGI, hence after 3 retries other end deletes associated rport, then sends a beacon. Once the beacon is received, peer end now initiates rlogin to the peer end but since associated rport is deleted FLOGI is neither accepted nor the reject response send out because rport is deleted. Hence unable to proceed withg FLOGI/PLOGI process and fails to establish VN2VN connection. Fix: VN2VN spec is not standard yet but based on exitsing collateral on T11, it appears that, both end shall send beacon and enter into 'operational mode' without explictly waiting for beacon from other end. Fix is to allow the RPORT login process as long as respective RPORT is created (as part of claim notification / claim response) even though state of RPORT is INIT. Means don't wait for beacon from peer end, if peer end initiates FLOGI (means peer end exist and responding). Notes: This patch is preparing the FCoE stack for target wrt offload. This is generic patch and harmless even if applied on storage initiator because 'else if' condition of function 'fcoe_oem_found' shall evaluate to TRUE only for targets. Dependencies: None Signed-off-by: Kiran Patil Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 516f43a2a555000e77c1d59b8298cb46aad9ecc1 Author: Andy Grover Date: Thu Jun 16 15:57:09 2011 -0700 [SCSI] iscsi: Use struct scsi_lun in iscsi structs instead of u8[8] struct scsi_lun is also just a struct with an array of 8 octets (64 bits) but using it instead in iscsi structs lets us call scsilun_to_int without a cast, and also lets us copy it using assignment, instead of memcpy(). Signed-off-by: Andy Grover Signed-off-by: James Bottomley commit 2e00d24e7ebae3183aeab0f958ea1142d1af3a02 Author: Kashyap, Desai Date: Tue Jun 14 10:57:51 2011 +0530 [SCSI] mpt2sas: Bump version 09.100.00.00 Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit ab3e5f60d1fc8fe725d02510ff820ff207a8dbef Author: Kashyap, Desai Date: Tue Jun 14 10:57:31 2011 +0530 [SCSI] mpt2sas: Adding support for customer specific branding Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 7821578caa8cb831868989041112ab808029ca65 Author: Kashyap, Desai Date: Tue Jun 14 10:57:08 2011 +0530 [SCSI] mpt2sas: Added DID_NO_CONNECT return when driver remove and avoid shutdown call Driver should not call shutdown call from _scsih_remove otherwise, The scsi midlayer can be deadlocked when devices are removed from the driver pci_driver->shutdown handler. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit f93213de5c28d4aeda51b3c03daf7e27f6dd2b7a Author: Kashyap, Desai Date: Tue Jun 14 10:56:43 2011 +0530 [SCSI] mpt2sas: fix broadcast AEN and task management issue Properly handling of target reset in multi-initiator environment Clean up in broadcast change handling: (1) Need to look at the status of each task management request, and retry the TM when there are failures. (2) Need quiescence IO so the driver doesn't take on more IO request while it's in the middle of sending TM request to firmware (3) Add support to keep track of how many pending broadcast AEN events are received while the broadcast handling is active, then loop back at the end of this routine if there were any events received. Clean up in mpt2sas_scsih_issue_tm routine: (1) Make sure proper status is returned when host reset fails (2) Clean up sanity checks near end of routine, insuring all outstanding IOs were completed. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit a3e1e55e4b5ca4d49618c592b4d10814e21e12a7 Author: Kashyap, Desai Date: Tue Jun 14 10:56:12 2011 +0530 [SCSI] mpt2sas: Set max_sector count from module parameter This feature is to override the default max_sectors setting at load time, taking max_sectors as an command line option when loading the driver. The setting is currently hard-coded in the driver to 8192 sectors (4MB transfers). If max_sectors is specified at load time, minimum specified setting will be 64, and the maximum is 8192. The driver will modify the setting to be on even boundary. If max_sectors is not specified, the driver will default to 8192. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit ce7b1810def1e2f0101931f8f339f9d8a694cd19 Author: Kashyap, Desai Date: Tue Jun 14 10:55:45 2011 +0530 [SCSI] mpt2sas MPI next revision header update mpt2sas driver revision q header update: (1) Modified the descriptions of the LocalAddress bit in the Flags field of the MPI SGE Format description and the MPI Simple Element. (2) Modified Data Location Address Space bits in the Flags field of the IEEE Chain Element. (3) Added more detail to the description of the DataLength field for the SCSI IO Request and Target Assist Request. Removed restriction on using chained SGLs when using multicast or bidirectional support. (4) In Manufacturing Page 7, added ReceptacleID field to ConnectorInfo, and reworked how the Pinout field is used. (5) In IO Unit Page 7, added BoardTemperature and BoardTemperatureUnits fields. (6) In IOC Page 1, changed CoalescingTimeout to units of half-microsecond and updated descriptions. (7) Modified descriptions of SATASlumberTimeout and SASSlumberTimeout fields in SAS IO Unit Page 5 to indicate the timers start after partial mode is entered. (8) Added Extended Manufacturing configuration pages. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit c97951ec46d4b076c2236b77db34eeed6dddb8eb Author: Kashyap, Desai Date: Tue Jun 14 10:54:56 2011 +0530 [SCSI] mpt2sas: Fixed Big Indian Issues on 32 bit PPC This patch addresses many endian issues solved by runing sparse with the option __CHECK_ENDIAN__ turned on. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit d7e01dc669e3f69d396ce3972ba87b7d678a94e4 Author: Abhijeet Joglekar Date: Mon Jun 13 21:21:17 2011 -0700 [SCSI] fnic: Update Maintainers list for fnic. Signed-off-by: Abhijeet Joglekar Signed-off-by: James Bottomley commit 0c79c74272b25bbcfb0149d5a4627ed768795d2d Author: Abhijeet Joglekar Date: Mon Jun 13 21:21:01 2011 -0700 [SCSI] fnic: fix incorrect use of SLAB_CACHE_DMA flag Driver was incorrectly using the SLAB_CACHE_DMA flag when creating a cache for SGLs. fnic device does not have 24-bit DMA restrictions. Remove the flag and allocations from ZONE_DMA. Thanks to Roland Dreier and David Rientjes for pointing out the bug. Signed-off-by: Abhijeet Joglekar Signed-off-by: James Bottomley commit 7bb66fc06eb8ac1b823f8221ff1eb574ec3bacb1 Author: Krishna Gudipati Date: Mon Jun 13 15:55:39 2011 -0700 [SCSI] bfa: Update the driver version to 3.0.2.0 Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit b85daafe46eeb0a9ad32c4b2c3a4e09ffcae9599 Author: Krishna Gudipati Date: Mon Jun 13 15:55:11 2011 -0700 [SCSI] bfa: Add BSG interface to support ELS, CT and vendor commands. - Added BSG interface support to BFA driver - Adds support to send ELS/CT FC passthru commands and few vendor specific BSG requests. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 75332a70a84908810ab5f525b03f230be9e31753 Author: Krishna Gudipati Date: Mon Jun 13 15:54:31 2011 -0700 [SCSI] bfa: Driver initialization and model description fix - Moved FCS initialization, which internally does the im_port creation as well as the scsi_host creation before bfa_init. Once the bfa_init is complete & successful: - Reset the FCS base port cfg params such as pwwn/nwwn and setup fc host params - based on the values learned during the ioc getattr request. - Change needed to support BSG commands even on bfa init failure. - Model description fixes for Brocade adapters. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit e2187d7f38967aeaf4148cdbe3498f76f4f71bca Author: Krishna Gudipati Date: Mon Jun 13 15:53:58 2011 -0700 [SCSI] bfa: Enhancement for fcpim and IO tag handling. - Enhancements to FCPIM module. - Introduced IO tag management to allocate/release IOs to FCPIM module from a free IOtag pool. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit be540a991e2097c313d7304e0daaf89d68011bb9 Author: Krishna Gudipati Date: Mon Jun 13 15:53:04 2011 -0700 [SCSI] bfa: FC credit recovery and misc bug fixes. - Introduce FC credit recovery. - Added module parameter to enable/disable credit recovery. Bug Fixes: - Removed check for ignoring plogi from initiator in switched fabric mode. - The ABTS for PLOGI is going out few millisecs earlier due to FW timer calibration (around 300 miilisecs earlier). So there is a window if an accept comes during this time HBA would have initiated an ABORT. - Added 1 to FC_ELS_TOV for compensating for FW timer. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 8b070b4a022f86dd5098308e36426ce29b6b8960 Author: Krishna Gudipati Date: Mon Jun 13 15:52:40 2011 -0700 [SCSI] bfa: Brocade-1860 Fabric Adapter 16Gbs support and flash controller fixes. - Added support for 16Gbps. - Added logic to flush pending mailbox command queue when IOC is disabled. - Fix to Halt the flash controller during fw initialization - since when asic blck is programmed flash controller's continuous access blocks f/w access to flash. - Added new asic based card types and modified IOC get card model routine. - Added PLL init fix to do LPU reset every time we do a memory initialization, since not doing so will cause LPU to be uninitialized during driver load. - Added fix to Halt flash controller before PLL initialization. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit e489bda422b0a2c2cc33e598a4d400dfe654ad64 Merge: 1c70c0c dc501fb Author: Keith Packard Date: Wed Jun 29 13:47:53 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 1c70c0cebd1295a42fec75045b8a6b4419cedef3 Author: Jesse Barnes Date: Wed Jun 29 13:34:36 2011 -0700 drm/i915: enable ring freq scaling, RC6 and graphics turbo on Ivy Bridge v3 They use the same register interfaces, so we can simply enable the existing code on IVB. v2: - resolve conflict with ring freq scaling, we can enable it too v3: - resolve conflict again, this time on drm-intel-next Signed-off-by: Jesse Barnes Signed-off-by: Keith Packard commit 775c7742adfd7726f05914198bf33eaa3b9f64bb Author: Krishna Gudipati Date: Mon Jun 13 15:52:12 2011 -0700 [SCSI] bfa: IOC and PLL init changes for Brocade-1860 Fabric Adapter. - Introduced IOC poll mechanism which replaces current interrupt based FW READY method. - The timer based poll routine in IOC will query the ioc_fwstate register to see if there is a state change in FW, and sends the READY event. - Bug fixes in the new asic PLL initialization. - Added logic to handle CPE/RME queue interrupts before iocfc config done. 1. Use the queue_process flag to see if iocfc configuration is done in INTX mode. 2. Split the MSIX handler installation in two - one for IOC intr handler and the other for cpe/rme queue handler - and delay assigning queue handlers until iocfc config is done in MSIX mode. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit dd5aaf4536c5111784a18d935b9b5adeac9f914c Author: Krishna Gudipati Date: Mon Jun 13 15:51:24 2011 -0700 [SCSI] bfa: Changes to support vport disable and enable operations. Made changes to FCS lport, vport state machines to support vport enable / disable operations. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 111892082ed7a3214bc7a7ec6b8b20e8f847501a Author: Krishna Gudipati Date: Mon Jun 13 15:50:35 2011 -0700 [SCSI] bfa: Brocade-1860 Fabric Adapter Hardware Enablement - Added support for Brocade-1860 Fabric Adapter. - Made changes to support single firmware image per asic type. - Combined bfi_cbreg.h and bfi_ctreg.h defines into bfi_reg.h with only minimal defines used by host. - Added changes to setup CPE/RME Queue register offsets based on firmware response. - Removed queue register offset initializations and added register offsets to BFI config response message. - Added Brocade-1860 asic specific interrupt status definitions and mailbox interfaces. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 43ffdf4dfb827babcdca5345a76031598a985dc8 Author: Krishna Gudipati Date: Mon Jun 13 15:46:21 2011 -0700 [SCSI] bfa: Add pbc port disable check and fix LPS message name - Add PBC port Disabled condition check. - Rename incorrectly named LPS I2H messages. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit d37779f8d98a1d7c5ba904982958167d988f01dd Author: Krishna Gudipati Date: Mon Jun 13 15:42:10 2011 -0700 [SCSI] bfa: Introduce IOC event notification mechanism. Introduced a generic event notification callback function that receives IOC_ENABLED, IOC_DISABLED, IOC_FAILED events and notifies the modules registered for these events. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 85ce928dbb87585042e7dfebe513f724eadebd5e Author: Krishna Gudipati Date: Mon Jun 13 15:39:36 2011 -0700 [SCSI] bfa: Introduced generic address len pair to represent DMA memory chunk. - Avoid the use of hardware defined structure bfi_sge_s for DMA requests in host. - Defined a generic address len pair to represent a DMA memory chunk (bfi_alen_s). Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 4d08e731bd6e3c5fd0b65bcfba22dc159fec3487 Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:22 2011 +0200 [SCSI] sun3: Remove commented out merge_contiguous_buffers This fixes: drivers/scsi/sun3_NCR5380.c:475: warning: ‘merge_contiguous_buffers’ defined but not used Signed-off-by: Geert Uytterhoeven Cc: Sam Creasey Signed-off-by: James Bottomley commit 2ba51ea28ba54ea8808ba7dfd694f1dd37e8b7c7 Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:21 2011 +0200 [SCSI] sun3: Add various missing NDEBUG* definitions This fixes a.o.: drivers/scsi/sun3_scsi.h:225:5: warning: "NDEBUG" is not defined drivers/scsi/sun3_scsi.h:345:14: warning: "NDEBUG_ABORT" is not defined drivers/scsi/sun3_scsi.h:351:14: warning: "NDEBUG_TAGS" is not defined drivers/scsi/sun3_scsi.h:357:14: warning: "NDEBUG_MERGING" is not defined Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit 0cb8cd76aa6fc759de3b59f4dd5ab5ed6c3a1149 Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:20 2011 +0200 [SCSI] sun3: Check for NCR_TIMEOUT being defined instead of having a value This fixes: drivers/scsi/sun3_NCR5380.c:1448:5: warning: "NCR_TIMEOUT" is not defined Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit 19b6c51cf05656c9dd970164be52b120162391bf Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:19 2011 +0200 [SCSI] sun3: Provide a dummy NCR5380_exit() and call it from sun3scsi_release(), cfr. the other NCR5380 drivers. This fixes: drivers/scsi/NCR5380.h:303: warning: ‘NCR5380_exit’ declared ‘static’ but never defined Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit d559c49e026b4b64dbeb9227c70c98ad11518747 Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:18 2011 +0200 [SCSI] sun3: sun3scsi_detect() and NCR5380_init() should be __init WARNING: vmlinux.o(.text+0x18545c): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options() WARNING: vmlinux.o(.text+0x18556c): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options() WARNING: vmlinux.o(.text+0x187692): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options() WARNING: vmlinux.o(.text+0x187770): Section mismatch in reference from the function sun3scsi_detect() to the function .init.text:NCR5380_print_options() Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit 5db5c5052d9ec39e808386c36fa3c873d5fb0171 Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:17 2011 +0200 [SCSI] mac_scsi: Remove unused variable default_instance This fixes: drivers/scsi/mac_scsi.c:220:5: warning: "NDEBUG_ABORT" is not defined drivers/scsi/mac_scsi.c:271:5: warning: "NDEBUG_ABORT" is not defined Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit 70c26cf3277ce93af74523894700ec20cf7cf6aa Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:16 2011 +0200 [SCSI] mac_scsi: macscsi_detect() should be __init WARNING: vmlinux.o(.text+0x1ecd3e): Section mismatch in reference from the function macscsi_detect() to the function .devinit.text:NCR5380_init() WARNING: vmlinux.o(.text+0x1ecddc): Section mismatch in reference from the function macscsi_detect() to the function .init.text:NCR5380_print_options() WARNING: vmlinux.o(.text+0x1ece60): Section mismatch in reference from the function macscsi_detect() to the function .init.text:NCR5380_print_options() Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit 6323e4fe7f61f77c87c26d2b5dcb3472246c1341 Author: Geert Uytterhoeven Date: Mon Jun 13 20:39:15 2011 +0200 [SCSI] atari_NCR5380: Provide a dummy NCR5380_exit() and call it from atari_scsi_release(), cfr. the other NCR5380 drivers. This fixes: drivers/scsi/NCR5380.h:303: warning: ‘NCR5380_exit’ declared ‘static’ but never defined Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit 50f87f910db0f6dcd3eb569e76c4a48c5315198c Author: Ondrej Zary Date: Thu Jun 9 21:21:23 2011 +0200 [SCSI] aha152x: add missing ISA PNP IDs Add ISA PNP IDs of the following cards to aha152x driver: AVA-1502 AVA-1505 AHA-1510 AVA-1515 AHA-1520 AHA-1522 AHA-1530 AHA-1532 AIC-6360 (list from SCSI.INF file) This makes my AHA-1530P card (has ADP3015 ID) work automatically. Signed-off-by: Ondrej Zary Signed-off-by: James Bottomley commit 82103978189e9731658cd32da5eb85ab7b8542b8 Author: Werner Fink Date: Thu Jun 9 10:54:24 2011 +0530 [SCSI] Blacklist Traxdata CDR4120 and IOMEGA Zip drive to avoid lock ups. This patch resulted from the discussion at https://bugzilla.novell.com/show_bug.cgi?id=679277, https://bugzilla.novell.com/show_bug.cgi?id=681840 . Signed-off-by: Werner Fink Signed-off-by: Ankit Jain Cc: stable@kernel.org Signed-off-by: James Bottomley commit 9a4ba833a2d0016cf836827e136f0c219834bd41 Author: Dan Carpenter Date: Wed Jun 29 09:31:49 2011 +0300 rtlwifi: potential forever loop in rtl92de_hw_init() "i" should be an int here because we are trying to use it to count to 10000. The original code looks like it could hang in a forever loop. Signed-off-by: Dan Carpenter Acked-by: Larry Finger Signed-off-by: John W. Linville commit ab049fbf5ea87fc92441fc5211c315d04a312cca Author: Larry Finger Date: Tue Jun 28 18:55:50 2011 -0500 rtlwifi: rtl8192de: Fix build errors when using allyes configuration After adding rtl8192de to linux-next, making the rtlwifi drivers be built-in results in the following warnings: LD drivers/net/wireless/rtlwifi/built-in.o drivers/net/wireless/rtlwifi/rtl8192de/built-in.o: In function `rtl92ce_sw_led_on': (.text+0x11fb6): multiple definition of `rtl92ce_sw_led_on' drivers/net/wireless/rtlwifi/rtl8192ce/built-in.o:(.text+0xa326): first defined here drivers/net/wireless/rtlwifi/rtl8192de/built-in.o:(.bss+0x0): multiple definition of `dm_digtable' drivers/net/wireless/rtlwifi/rtl8192c/built-in.o:(.bss+0x0): first defined here ld: Warning: size of symbol `dm_digtable' changed from 40 in drivers/net/wireless/rtlwifi/rtl8192c/built-in.o to 48 in drivers/net/wireless/rtlwifi/rtl8192de/built-in.o drivers/net/wireless/rtlwifi/rtl8192de/built-in.o: In function `rtl92ce_sw_led_off': (.text+0x11cfe): multiple definition of `rtl92ce_sw_led_off' drivers/net/wireless/rtlwifi/rtl8192ce/built-in.o:(.text+0xa06e): first defined here Reported-by: Stephen Rothwell Signed-off-by: Larry Finger Acked-by: Stephen Rothwell Signed-off-by: John W. Linville commit a5f377fb9c9758b248773c5b8b1a20d4e7e2c982 Author: Rafał Miłecki Date: Wed Jun 29 00:56:49 2011 +0200 b43: HT-PHY: correct 0x2059 radio init Sometimes additional steps are performed while initializing 2059 radio. We did not find the condition yet, so make it always true for now. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 5cf6fa784a979dce59a5c1b7085e59ee130369e8 Author: Mohammed Shafi Shajakhan Date: Tue Jun 28 20:13:41 2011 +0530 ath9k_htc: Add device ID for Sony UWA-BR100 for more details please take a look at: http://comments.gmane.org/gmane.linux.drivers.ath9k.devel/6541 http://www.wikidevi.com/wiki/Sony_UWA-BR100 Reported-by: Thomas Novin Cc: Rajkumar Manoharan Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit c3d77696b084a644693db0b02419d13375cb5b89 Author: Mohammed Shafi Shajakhan Date: Tue Jun 28 17:30:54 2011 +0530 ath9k: move few descriptor macros to ath9k.h Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 2d02c86b7720c2f0614ed838187b05a7ddb0ea83 Author: Rafał Miłecki Date: Tue Jun 28 09:28:39 2011 +0200 b43: HT-PHY: basic PHY init Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 71d3b0d592601f26be2233a7922d53e762516fee Author: Rafał Miłecki Date: Tue Jun 28 09:28:38 2011 +0200 b43: HT-PHY: add init tables They were written from observing MMIO writes to registers 0x72 0x74 and 0x73 right after phy_write(0x017e) <- 0x3830 which finishes chennel switching. RegExps were used to translate writes to arrays. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 3e644ab47e0cbedc7dd694d3af9996dc514ebf4a Author: Rafał Miłecki Date: Tue Jun 28 00:08:53 2011 +0200 b43: HT-PHY: init radio when enabling it Masks and sets were found in MMIO dumps by using MMIO hacks. Shortly: radio_write(0x0c51) <- 0x0070 radio_write(0x0c5a) <- 0x0003 radio_write(0x0146) <- 0x0003 radio_write(0x0546) <- 0x0003 radio_write(0x0946) <- 0x0003 radio_write(0x002e) <- 0x0078 radio_write(0x00c0) <- 0x0080 radio_write(0x002e) <- 0xff87 radio_write(0x00c0) <- 0xff7f radio_write(0x0011) <- 0xfff7 Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit e8dec1e99aee468c6fb19f07a2660f9205a70f2c Author: Rafał Miłecki Date: Tue Jun 28 00:08:52 2011 +0200 b43: HT-PHY: replace radio routing magic numbers Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit b4d38db121c19fe94862357763b374e44fc23ebb Author: Arik Nemtsov Date: Mon Jun 27 23:58:46 2011 +0300 wl12xx: AP-mode - use mac80211 indication about STA WME support When adding a station, use the information given in the mac80211 populated ieee80211_sta structure to determine if it supports WME. Provide this information to the FW. This patch depends on "mac80211: propagate information about STA WME support down". Signed-off-by: Arik Nemtsov Signed-off-by: John W. Linville commit 39df600aa6ac027b53c4ce3089cba57467a960df Author: Arik Nemtsov Date: Mon Jun 27 23:58:45 2011 +0300 mac80211: propagate information about STA WME support down Add a memeber to the ieee80211_sta structure to indicate whether the STA supports WME. Signed-off-by: Arik Nemtsov Signed-off-by: John W. Linville commit f01dce9474e9f09290707b523a134a9605845b00 Author: Jon Mason Date: Mon Jun 27 13:03:44 2011 -0500 rtlwifi: use PCI_VENDOR_ID_* Use PCI_VENDOR_ID_* from pci_ids.h instead of creating #define locally. Signed-off-by: Jon Mason Signed-off-by: John W. Linville commit 6a4ecc29c90c322e28941e6dec406b08b5e1f0ea Author: Jon Mason Date: Mon Jun 27 12:50:14 2011 -0500 rtlwifi: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Also, remove unnecessary and unused #defines for PCI. Signed-off-by: Jon Mason Signed-off-by: John W. Linville commit f05b691150af4cfccbfba6cc708b9a58b9216903 Author: Jon Mason Date: Mon Jun 27 12:48:54 2011 -0500 iwlegacy: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: John W. Linville commit bfc8dfec45237e4c9e28f96fdb91167e7e8ddb96 Author: Rafał Miłecki Date: Mon Jun 27 15:04:47 2011 +0200 b43: HT-PHY: implement lacking 0x908 PHY reg op Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit feb90636cc6a99733d3b0b18344b04ca2d2f203e Author: Rafał Miłecki Date: Mon Jun 27 14:58:54 2011 +0200 b43: HT-PHY: add channel switching tables for 2 GHz band Tables were taken from observing writes in MMIO dumps. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit e5b61007bc15b34fe78d4100dbe1be209b761d9b Author: Rafał Miłecki Date: Mon Jun 27 14:58:52 2011 +0200 b43: HT-PHY: perform some tables ops on channel switching Starring at MMIO dumps around PHY channel switching has led to finding serie of 3 similar ops this patch implements. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit bdb2dfb237997babac7b32c7a94dcfa18507a055 Author: Rafał Miłecki Date: Mon Jun 27 14:58:51 2011 +0200 b43: HT-PHY: upload PHY values when switching channel After calibrating radio you can find few PHY writes in MMIO dumps: phy_read(0x0009) -> 0x0000 phy_write(0x01ce) <- 0x03dd phy_write(0x01cf) <- 0x03d9 phy_write(0x01d0) <- 0x03d5 phy_write(0x01d1) <- 0x0424 phy_write(0x01d2) <- 0x0429 phy_write(0x01d3) <- 0x042d By comparing to N-PHY code we found out that they are PHY tables for channel switching plus band info read at the beginning. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 1a93139237180404dc01970dfd33f4a5d5b2054c Author: Rafał Miłecki Date: Mon Jun 27 14:58:50 2011 +0200 b43: HT-PHY: prepare place for HT-PHY tables They are big arrays uploaded to the hardware on init, calibration, etc. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 46e130d298a384b677426e19faec311749ff2677 Author: Jean Pihet Date: Wed Jun 29 18:40:23 2011 +0200 ARM: pm: omap3: run the ASM sleep code from DDR Most of the ASM sleep code (in arch/arm/mach-omap2/sleep34xx.S) is copied to internal SRAM at boot and after wake-up from CORE OFF mode. However only a small part of the code really needs to run from internal SRAM. This fix lets most of the ASM idle code run from the DDR in order to minimize the SRAM usage and the overhead in the code copy. The only pieces of code that are mandatory in SRAM are: - the i443 erratum WA, - the i581 erratum WA, - the security extension code. SRAM usage: - original code: . 560 bytes for omap3_sram_configure_core_dpll (used by DVFS), . 852 bytes for omap_sram_idle (used by suspend/resume in RETention), . 124 bytes for es3_sdrc_fix (used by suspend/resume in OFF mode on ES3.x), . 108 bytes for save_secure_ram_context (used on HS parts only). With this fix the usage for suspend/resume in RETention goes down 288 bytes, so the gain in SRAM usage for suspend/resume is 564 bytes. Also fixed the SRAM initialization sequence to avoid an unnecessary copy to SRAM at boot time and for readability. Tested on Beagleboard (ES2.x) in idle with full RET and OFF modes. Kevin Hilman tested retention and off on 3430/n900, 3530/Overo and 3630/Zoom3 Signed-off-by: Jean Pihet Reviewed-by: Kevin Hilman Tested-by: Kevin Hilman Signed-off-by: Russell King commit 8eb2c0ee67f4853c0e433394f65ef8143a748c80 Merge: 3e0dc6b 0d72c6f Author: Keith Packard Date: Wed Jun 29 10:34:54 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 3e0dc6b01f5301d63046f6deddde2c7f5c57d67a Author: Ben Widawsky Date: Wed Jun 29 10:26:42 2011 -0700 drm/i915: hangcheck disable parameter Provide a parameter to disable hanghcheck. This is useful mostly for developers trying to debug known problems, and probably should not be touched by normal users. Reviewed-by: Chris Wilson Signed-off-by: Ben Widawsky Signed-off-by: Keith Packard commit 2a350cab9daf9a46322d83b091bb05cf54ccf6ab Author: Douglas Gilbert Date: Thu Jun 9 00:27:07 2011 -0400 [SCSI] ses: requesting a fault indication Noticed that when the sysfs interface of the SCSI SES driver was used to request a fault indication the LED flashed but the buzzer didn't sound. So it was doing what REQUEST IDENT (locate) should do. Changelog: - fix the setting of REQUEST FAULT for the device slot and array device slot elements in the enclosure control diagnostic page - note the potentially defective code that reads the FAULT SENSED and FAULT REQUESTED bits from the enclosure status diagnostic page The attached patch is against git/scsi-misc-2.6 Signed-off-by: Douglas Gilbert Cc: stable@kernel.org Signed-off-by: James Bottomley commit 545a876e4b4f261218be2c09b46dfff4ee95be31 Author: Geert Uytterhoeven Date: Mon Jun 6 22:00:51 2011 +0200 [SCSI] atari_NCR5380: Remove obsolete variable oldto commit 8ce7955aa52c37db1425ea4bd4edcfa67e253454 ("[SCSI] atari_NCR5380: update_timeout removal") removed all users, but not the avtual variable. Suggested-by: Ben Hutchings Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit a5cb67f7bc79364afbe83886ac92deeeef2ae0f2 Author: Geert Uytterhoeven Date: Mon Jun 6 22:52:56 2011 +0200 [SCSI] sun3_NCR5380: Split NEXT() for lvalues/rvalues Using the current NEXT() macro for both lvalues and rvalues gives: In file included from drivers/scsi/sun3_scsi.c:623: drivers/scsi/sun3_NCR5380.c: In function ‘NCR5380_queue_command_lck’: drivers/scsi/sun3_NCR5380.c:993: warning: assignment discards qualifiers from pointer target type drivers/scsi/sun3_NCR5380.c: In function ‘NCR5380_main’: drivers/scsi/sun3_NCR5380.c:1147: warning: assignment discards qualifiers from pointer target type drivers/scsi/sun3_NCR5380.c: In function ‘NCR5380_information_transfer’: drivers/scsi/sun3_NCR5380.c:2277: warning: assignment discards qualifiers from pointer target type drivers/scsi/sun3_NCR5380.c:2333: warning: assignment discards qualifiers from pointer target type Change NEXT() to operate on rvalues only(), and introduce SET_NEXT() to operate on lvalues, as is done in drivers/scsi/atari_NCR5380.c. Signed-off-by: Geert Uytterhoeven Signed-off-by: James Bottomley commit 9958d6f9a680bfd4b2c66ed3f34757f4ec181d2e Author: Bhanu Prakash Gollapudi Date: Fri May 27 11:48:10 2011 -0700 [SCSI] MAINTAINERS update for bnx2fc Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 57cc2432e172b191db488ec8ad430b283807af0a Merge: 4e8e78e e999dc5 Author: Mark Brown Date: Wed Jun 29 09:49:04 2011 -0700 Merge branch 'for-3.0' into for-3.1 commit 4e8e78e37c615e7904f51e62b5a06cb8fa3b3b53 Author: Mark Brown Date: Fri Jun 24 12:44:45 2011 +0100 ASoC: Change WM9081 speaker output enable to _OUT_DRV More for neatness than any actual performance improvement. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit d5b040c92da5ae4d5d39987850d17304e17d8e79 Author: Mark Brown Date: Tue Jun 7 23:28:45 2011 +0100 ASoC: Correct left/right swap in wm_hubs DC offset correction It was consistently wrong for everything except WM8993 so should be no functional change. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 2382d2364a60dc9d49b0ca12ef01b46dc8169e95 Author: Bhanu Prakash Gollapudi Date: Fri May 27 11:47:28 2011 -0700 [SCSI] bnx2fc: Bumped version to 1.0.2 Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit d36b3279e157641c345b12eddb3db78fb42da80f Author: Bhanu Prakash Gollapudi Date: Fri May 27 11:47:27 2011 -0700 [SCSI] bnx2fc: Fix kernel panic when deleting NPIV ports Deleting NPIV port causes a kernel panic when the NPIV port is in the same zone as the physical port and shares the same LUN. This happens due to the fact that vport destroy and unsolicited ELS are scheduled to run on the same workqueue, and vport destroy destroys the lport and the unsolicited ELS tries to access the invalid lport. This patch fixes this issue by maintaining a list of valid lports and verifying if the lport is valid or not before accessing it. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit b5a95fe7ef464a67fab6ff870aa740739e788f90 Author: Bhanu Prakash Gollapudi Date: Fri May 27 11:47:26 2011 -0700 [SCSI] bnx2fc: scsi_dma_unmap() not invoked on IO completions Do not set io_req->sc_cmd to NULL until bnx2fc_unmap_sg_list() is called to enable it to unmap the DMA mappings. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit a4dc08cecfdb3172be61227324a4d2c5fe2de9e5 Author: Bhanu Prakash Gollapudi Date: Fri May 27 11:47:25 2011 -0700 [SCSI] bnx2fc: host stats show the link speed 'unknown' on NIC partitioned interfaces NIC partitioned interfaces reports the speed of 2500 which was not handled by the driver. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit b11d48e898de3cbe290051a31a4399e5ba40246b Author: Stephen Boyd Date: Thu May 12 16:50:06 2011 -0700 [SCSI] lpfc: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning: In file included from arch/x86/include/asm/uaccess.h:573, from include/linux/uaccess.h:5, from include/linux/highmem.h:7, from include/linux/pagemap.h:10, from include/linux/blkdev.h:12, from drivers/scsi/lpfc/lpfc_debugfs.c:21: In function 'copy_from_user': arch/x86/include/asm/uaccess_64.h:65: warning: call to 'copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct presumably due to buf_size being signed causing GCC to fail to see that buf_size can't become negative. Signed-off-by: Stephen Boyd Acked-by: James Smart Signed-off-by: James Bottomley commit 1049f6413f6e52572a768ca1590fa479ef0a48e8 Author: Jon Mason Date: Mon Jun 27 05:05:08 2011 +0000 myri10ge: Update MAINTAINERS Update MAINTAINERS to refelect new people working on myri10ge Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 3bea123791d36a7b15f0d14ba5af9bdeb0c51cfc Author: Jon Mason Date: Mon Jun 27 05:05:07 2011 +0000 myri10ge: update version Update version and copyright Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit b3b6ae2c2ac39efbd95b012bb5396edf9c87ecc6 Author: Jon Mason Date: Mon Jun 27 10:56:41 2011 +0000 myri10ge: misc style cleanups Miscellaneous white space, style, and other cleanups v2 includes corrections from Joe Perches Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit effd1edab9fd3dc03cb87097a9da2552b940456b Author: Jon Mason Date: Mon Jun 27 05:05:05 2011 +0000 myri10ge: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 5dcd846712046d68020e9dfddd7ca491dc138f0d Author: Jon Mason Date: Mon Jun 27 05:05:04 2011 +0000 myri10ge: add support for set_phys_id Add myri10ge driver support for the ethtool identify operation. NOTE: Rather than blinking (which is the normal case), when identify is used, the yellow LED turns solid. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 4b47638ab25d90faf4e5499aecd8812f247181fd Author: Jon Mason Date: Mon Jun 27 05:05:03 2011 +0000 myri10ge: allow small_bytes = 0 Allow page-based receive to work when small_bytes is set to 0. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit c689b81b4267b1335b11f18fe8a79c56880d9d43 Author: Jon Mason Date: Mon Jun 27 17:57:28 2011 +0000 myri10ge: rework parity error check and cleanup Clean up watchdog reset code: - move code that checks for stuck slice to a common routine - unless there is a confirmed h/w fault, verify that a stuck slice is still stuck in the watchdog worker; if the slice is no longer stuck, abort the reset. - this removes an egregious 2000ms pause in the watchdog worker that was a diagnostic aid (to look for spurious resets) the snuck into production code. v3 includes corrections from Joe Perches Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 7539a613c646f9e870bbedfa753a54cf13b98d22 Author: Jon Mason Date: Mon Jun 27 05:05:01 2011 +0000 myri10ge: Mask PCI Surprise Link Down Events A SRAM parity error can cause a surprise link down. Since We can recover from SRAM parity errors, mask PCI surprise down events. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 3b20b2dc5f713aa7eca20a8ff942292974a1cc94 Author: Jon Mason Date: Mon Jun 27 05:05:00 2011 +0000 myri10ge: ensure tx queues remain stopped Ensure that our tx queues remain stopped when we stop them in myri10ge_close(). Not doing so can potentially lead to traffic being transmitted when the interface is removed, which can lead to NULL pointer dereferences. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 81399ec683632b85863b093f4fffe2b4511e49e6 Author: Barry Grussling Date: Fri Jun 24 19:53:51 2011 +0000 DSA: Enable cascading in multi-chip 6131 configuration This patch enables the 6131 family of chips to forward DSA packets to other switch chips. This is needed if multiple DSA chips are used in a device. Without this patch the chip will drop any DSA packets not destined for it. This patch only enables the forwarding of DSA packets if multiple chips are used in the switch configuration. Signed-off-by: Barry Grussling Signed-off-by: David S. Miller commit 864834f935b5311004ebbf0c485dbfd10aa9a546 Author: Joe Perches Date: Wed Jun 29 05:52:03 2011 -0700 caif: Fix recieve/receive typo Just spelling fixes. Actually, a twofer with vaiables/variables as well. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 8072ba1ba7fe9f48ad9f424829863214484dfc2f Author: Michael Witten Date: Tue Jun 28 06:15:05 2011 +0000 PCIe ASPM: forcedly -> forcibly Merriam-Webster tells us that the word exists. However ... * Google suggests `forcibly' because it doesn't recognize `forcedly'. * Google lists 494 thousand results for `forcedly'. * Google lists 13.7 million results for `forcibly'. * Linus's repo contains 1 occurrence of `forcedly' ( 0 after my change). * Linus's repo contains 60 occurrences of `forcibly' (61 after my change). Signed-off-by: Michael Witten Signed-off-by: Jiri Kosina commit 48cb1258e8b0f8c81cfb699b42326c5b2147b3f8 Merge: 332acd9 ec3cdb5 Author: Tony Lindgren Date: Wed Jun 29 04:45:16 2011 -0700 Merge branch 'for_3.1/pm-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into devel-cleanup Conflicts: arch/arm/mach-omap2/pm-debug.c arch/arm/mach-omap2/pm.h commit 332acd9e534e0bc8713d2cb90dd2d4d5f2485401 Merge: bafe272 0f622e8 Author: Tony Lindgren Date: Wed Jun 29 03:35:18 2011 -0700 Merge branch 'devel-timer' into devel-cleanup commit bafe2721a0fbd1cc1af04384133684f660f3658e Author: Jarkko Nikula Date: Tue Jun 14 11:23:52 2011 +0000 omap: mcbsp: Drop in-driver transfer support We haven't seen either use for in-driver transfer API in McBSP driver over the years so it looks they can be removed too. Signed-off-by: Jarkko Nikula Signed-off-by: Tony Lindgren commit e285bca6d926b17ad6343f20ef174799785e4235 Author: Jarkko Nikula Date: Tue Jun 14 11:23:51 2011 +0000 omap: mcbsp: Drop SPI mode support We haven't seen any use for the SPI API in McBSP driver over the years. More over, Peter Ujfalusi noticed that SPI mode is not even supported since OMAP2430 so it's very unlikely that we'll see any use for it in the future either. Signed-off-by: Jarkko Nikula Acked-by: Peter Ujfalusi Signed-off-by: Tony Lindgren commit 84cac3989a0fa009fff63c315759006560c91c13 Author: Stephen Rothwell Date: Wed Jun 29 02:55:59 2011 -0700 net: include dma-mapping.h in ll_temac_main.c for dma_map_single etc fixes thses build errors: drivers/net/ll_temac_main.c: In function 'temac_dma_bd_release': drivers/net/ll_temac_main.c:209:4: error: implicit declaration of function 'dma_unmap_single' drivers/net/ll_temac_main.c:215:3: error: implicit declaration of function 'dma_free_coherent' drivers/net/ll_temac_main.c: In function 'temac_dma_bd_init': drivers/net/ll_temac_main.c:243:2: error: implicit declaration of function 'dma_alloc_coherent' drivers/net/ll_temac_main.c:243:14: warning: assignment makes pointer from integer without a cast drivers/net/ll_temac_main.c:251:14: warning: assignment makes pointer from integer without a cast drivers/net/ll_temac_main.c:280:3: error: implicit declaration of function 'dma_map_single' drivers/net/ll_temac_main.c: In function 'temac_start_xmit_done': drivers/net/ll_temac_main.c:628:22: warning: cast to pointer from integer of different size Caused by commit commit b7f080cfe223 ("net: remove mm.h inclusion from netdevice.h"). Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit 8d0f7cea7aa1bb63ddd0e94589d2c33bc99f0d9a Author: Stephen Rothwell Date: Wed Jun 29 02:55:28 2011 -0700 net: include io.h in sja1000_of_platform.c for iounmap etc fixes these build errors: drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_read_reg': drivers/net/can/sja1000/sja1000_of_platform.c:61:2: error: implicit declaration of function 'in_8' drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_write_reg': drivers/net/can/sja1000/sja1000_of_platform.c:67:2: error: implicit declaration of function 'out_8' drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_remove': drivers/net/can/sja1000/sja1000_of_platform.c:81:2: error: implicit declaration of function 'iounmap' drivers/net/can/sja1000/sja1000_of_platform.c: In function 'sja1000_ofp_probe': drivers/net/can/sja1000/sja1000_of_platform.c:113:2: error: implicit declaration of function 'ioremap_nocache' drivers/net/can/sja1000/sja1000_of_platform.c:113:7: warning: assignment makes pointer from integer without a cast Caused by commit b7f080cfe223 ("net: remove mm.h inclusion from netdevice.h"). Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit e4b6381009d740bd3a97e6b841d8efe7fc70c1b7 Author: Mark Rutland Date: Wed Jun 22 15:34:56 2011 +0100 ARM: 6977/1: pmu: add platform_device_id table support This patch adds support for platform_device_id tables, allowing new PMU types to be registered with the correct type, without requiring new platform_driver shims to provide the type. An single entry for existing devices is provided. Macros matching functionality of the of_device_id table macros are provided for convenience. Signed-off-by: Mark Rutland Acked-by: Jamie Iles Cc: Rob Herring Cc: Will Deacon Signed-off-by: Russell King commit e73c34c3d522a60d9f7b38a7683076362bad98f5 Author: Mark Rutland Date: Wed Jun 22 15:33:55 2011 +0100 ARM: 6976/1: pmu: add OF probing support This is based on an earlier patch from Rob Herring > Add OF match table to enable OF style driver binding. The dts entry is like > this: > > pmu { > compatible = "arm,cortex-a9-pmu"; > interrupts = <100 101>; > }; > > The use of pdev->id as an index breaks with OF device binding, so set the type > based on the OF compatible string. This modification sets the PMU hardware type based on data embedded in the binding, allowing easy addition of new PMU types in future. Support for new PMU types not provided by devicetree can be added later using platform_device_id tables in a similar fashion. Signed-off-by: Mark Rutland Acked-by: Jamie Iles Acked-by: Rob Herring Cc: Will Deacon Signed-off-by: Russell King commit ae0c3751ab08d3fe039d48935e9ad2c46711b23b Author: Mark Rutland Date: Wed Jun 22 15:32:48 2011 +0100 ARM: 6975/1: pmu: reject duplicate PMU registrations Currently, the PMU reservation framework allows for multiple PMUs of the same type to register themselves. This can lead to a bug with the sequence: register_pmu(pmu1); reserve_pmu(pmu_type); register_pmu(pmu2); release_pmu(pmu1); Here, pmu1 cannot be released, and pmu2 cannot be reserved. This patch modifies register_pmu to reject registrations where a PMU is already present, preventing this problem. PMUs which can have multiple instances should not use the PMU reservation framework. Signed-off-by: Mark Rutland Acked-by: Jamie Iles Acked-by: Will Deacon Signed-off-by: Russell King commit f12482c9393da2c1f5cb3217f29aa79c653dd980 Author: Mark Rutland Date: Wed Jun 22 15:30:51 2011 +0100 ARM: 6974/1: pmu: refactor reservation Currently, PMU platform_device reservation relies on some minor abuse of the platform_device::id field for determining the type of PMU. This is problematic for device tree based probing, where the ID cannot be controlled. This patch removes reliance on the id field, and depends on each PMU's platform driver to figure out which type it is. As all PMUs handled by the current platform_driver name "arm-pmu" are CPU PMUs, this convention is hardcoded. New PMU types can be supported through the use of {of,platform}_device_id tables Signed-off-by: Mark Rutland Acked-by: Jamie Iles Acked-by: Will Deacon Cc: Rob Herring Cc: Mathieu Desnoyers Signed-off-by: Russell King commit fbab1c809467efe001194ab8bb17f0f451a17f97 Author: Russell King Date: Sat Jun 25 16:57:50 2011 +0100 ARM: entry: no need to check parent IRQ mask in IRQ handler return There's no point checking to see whether IRQs were masked in the parent context when returning from IRQ handling - the fact that we're handling an IRQ means that the parent context must have had IRQs unmasked. Signed-off-by: Russell King commit 1613cc1119ecdb1bdb950da53065e615e4c4b8db Author: Russell King Date: Sat Jun 25 10:57:57 2011 +0100 ARM: entry: no need to increase preempt count for IRQ handlers irq_enter() and irq_exit() already take care of the preempt_count handling for interrupts, which increment and decrement the hardirq bits of the preempt count. So we can remove the preempt count handing in our IRQ entry/exit assembly, like x86 did some 9 years ago. Signed-off-by: Russell King commit 198a0a927ab9c52a68297120ee6dd4e36a975b0e Author: Russell King Date: Sun Jun 26 13:51:44 2011 +0100 ARM: entry: abort-macro: simplify do_ldrd_abort We can test bits 27:25 and 20 of the instruction at the same time; there's no need to separate out the check of bit 20. Signed-off-by: Russell King commit be020f8618caa0670a2a5b5a5df79549520f7867 Author: Russell King Date: Sun Jun 26 13:42:01 2011 +0100 ARM: entry: abort-macro: specify registers to be used for macros Require all callers of abort macros to specify the registers to be used. This improves the documentation at the callsites as to which registers are being used by this assembly code. Signed-off-by: Russell King commit 0402becef94c43bb2bb483653a5cee2fb5049764 Author: Russell King Date: Sat Jun 25 15:46:08 2011 +0100 ARM: entry: prefetch/data abort helpers: avoid corrupting r4 Replace r4 with ip for calling abort helpers - ip is allowed to be corrupted by called functions in the ABI, so it makes more sense to use such a register. Signed-off-by: Russell King commit ac8b9c1ce094d43372d0259de08045ffee745a41 Author: Russell King Date: Sun Jun 26 10:22:08 2011 +0100 ARM: entry: prefetch/data abort helpers: convert to macros Signed-off-by: Russell King commit 090ab3ff8ebb842c0f159d34d57d6e51bd94ace1 Author: Simon Horman Date: Tue Apr 26 06:29:53 2011 +0100 ARM: 6886/1: mmc, Add zboot from eSD support for SuperH Mobile ARM This allows a ROM-able zImage to be written to eSD and for SuperH Mobile ARM to boot directly from the SDHI hardware block. This is achieved by the MaskROM loading the first portion of the image into MERAM and then jumping to it. This portion contains loader code which copies the entire image to SDRAM and jumps to it. From there the zImage boot code proceeds as normal, uncompressing the image into its final location and then jumping to it. Cc: Paul Mundt Acked-by: Magnus Damm Acked-by: Paul Mundt Signed-off-by: Simon Horman Signed-off-by: Russell King commit 03ef81bf99672413b9ba9f371654562e599dee06 Merge: 89576a6 9174fc8 6afba9e Author: Paul Mundt Date: Wed Jun 29 17:40:44 2011 +0900 Merge branches 'common/serial-rework' and 'sh/stable-updates' into sh-latest commit c7b4a5d58bffdf3aa7f923319643af0ebf925515 Author: Jiejing Zhang Date: Wed Jun 29 01:28:21 2011 -0700 Input: mpr121 - improve sensibility of touch key The Quick Charge bit in Electrode conf register should be set in init function. This bit was missed in chip's document, which may cause touch controller charge too slow to generate an interrupt. Also, adjust the default vlaue of touch and release threshold to make touch key more sensitive, this fix touch may not sensitive after setup with plastic case. Signed-off-by: Jiejing Zhang Signed-off-by: Dmitry Torokhov commit d19f579aae74d6df9276e244716cedd96895d566 Author: Peter Ujfalusi Date: Tue Jun 28 10:16:55 2011 +0000 omap: board-omap3evm: Fix compilation error Fix compilation error introduced with 786b01a8c1db0c0decca55d660a2a3ebd7cfb26b (cleanup regulator supply definitions in mach-omap2). Signed-off-by: Peter Ujfalusi [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren commit 7a559c7882db55c7a40dab19ea43ad747a51185a Author: Grazvydas Ignotas Date: Fri Jun 3 19:56:33 2011 +0000 omap: cleanup NAND platform data omap_nand_platform_data fields 'options', 'gpio_irq', 'nand_setup' and 'dma_channel' are never referenced by the NAND driver, yet various board files are initializing those fields. This is both incorrect and confusing, so remove them. This allows to get rid of a global variable in gpmc-nand.c. This also corrects an issue where some boards are trying to pass NAND 16bit flag through .options, but the driver is using .devsize instead and ignoring .options. Finally, .dev_ready is treated as a flag by the driver, so make it bool instead of a function pointer. Signed-off-by: Grazvydas Ignotas Signed-off-by: Tony Lindgren commit 17bdc6c0e979ae61879806e4dd93ec3b169d0931 Author: Benjamin Herrenschmidt Date: Fri Apr 29 16:44:24 2011 +1000 powerpc/pseries: Move hvsi support into a library This will allow a different backend to share it Signed-off-by: Benjamin Herrenschmidt commit 4d2bb3f5003617cb42b89faefd0009c505c3abd5 Author: Benjamin Herrenschmidt Date: Thu May 12 13:46:38 2011 +1000 powerpc/pseries: Re-implement HVSI as part of hvc_vio On pseries machines, consoles are provided by the hypervisor using a low level get_chars/put_chars type interface. However, this is really just a transport to the service processor which implements them either as "raw" console (networked consoles, HMC, ...) or as "hvsi" serial ports. The later is a simple packet protocol on top of the raw character interface that is supposed to convey additional "serial port" style semantics. In practice however, all it does is provide a way to read the CD line and set/clear our DTR line, that's it. We currently implement the "raw" protocol as an hvc console backend (/dev/hvcN) and the "hvsi" protocol using a separate tty driver (/dev/hvsi0). However this is quite impractical. The arbitrary difference between the two type of devices has been a major source of user (and distro) confusion. Additionally, there's an additional mini -hvsi implementation in the pseries platform code for our low level debug console and early boot kernel messages, which means code duplication, though that low level variant is impractical as it's incapable of doing the initial protocol negociation to establish the link to the FSP. This essentially replaces the dedicated hvsi driver and the platform udbg code completely by extending the existing hvc_vio backend used in "raw" mode so that: - It now supports HVSI as well - We add support for hvc backend providing tiocm{get,set} - It also provides a udbg interface for early debug and boot console This is overall less code, though this will only be obvious once we remove the old "hvsi" driver, which is still available for now. When the old driver is enabled, the new code still kicks in for the low level udbg console, replacing the old mini implementation in the platform code, it just doesn't provide the higher level "hvc" interface. In addition to producing generally simler code, this has several benefits over our current situation: - The user/distro only has to deal with /dev/hvcN for the hypervisor console, avoiding all sort of confusion that has plagued us in the past - The tty, kernel and low level debug console all use the same code base which supports the full protocol establishment process, thus the console is now available much earlier than it used to be with the old HVSI driver. The kernel console works much earlier and udbg is available much earlier too. Hackers can enable a hard coded very-early debug console as well that works with HVSI (previously that was only supported for the "raw" mode). I've tried to keep the same semantics as hvsi relative to how I react to things like CD changes, with some subtle differences though: - I clear DTR on close if HUPCL is set - Current hvsi triggers a hangup if it detects a up->down transition on CD (you can still open a console with CD down). My new implementation triggers a hangup if the link to the FSP is severed, and severs it upon detecting a up->down transition on CD. Signed-off-by: Benjamin Herrenschmidt commit dd2e356a3dd1fea6d911798044532304c3ef4050 Author: Benjamin Herrenschmidt Date: Thu Jun 16 15:08:37 2011 +0000 powerpc/udbg: Register udbg console generically When CONFIG_PPC_EARLY_DEBUG is set, call register_early_udbg_console() early from generic code. Signed-off-by: Benjamin Herrenschmidt commit 048bee7718bb3532aa96d0ce8572cced2ea951e6 Author: Benjamin Herrenschmidt Date: Thu Jun 16 15:08:24 2011 +0000 powerpc/pseries: Factor HVSI header struct in packet definitions Embed the struct hvsi_header in the various packet definitions rather than open coding it multiple times. Will help provide stronger type checking. Signed-off-by: Benjamin Herrenschmidt commit 725e789f228641fdfafcd65458f0ac78b87acc5a Author: Benjamin Herrenschmidt Date: Thu Jun 16 15:08:12 2011 +0000 powerpc/hvsi: Move HVSI protocol definitions to a header file This moves various HVSI protocol definitions from the hvsi.c driver to a header file that can be used later on by a udbg implementation Signed-off-by: Benjamin Herrenschmidt commit 8a0360a563cffc9a0712426820bedbb96bbc511b Author: Dmitry Eremin-Solenikov Date: Fri Jun 17 02:51:46 2011 +0000 powerpc/maple: Register CPC925 EDAC device on all boards with CPC925 Currently Maple setup code creates cpc925_edac device only on Motorola ATCA-6101 blade. Make setup code check bridge revision and enable EDAC on all U3H bridges. Verified on Momentum MapleD (ppc970fx kit) board. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Benjamin Herrenschmidt commit de2780a3d82372a6bfc7f474905e346c0f26dfa4 Author: Akinobu Mita Date: Tue Jun 21 03:35:56 2011 +0000 powerpc/pseries: Improve error code on reconfiguration notifier failure Reconfiguration notifier call for device node may fail by several reasons, but it always assumes kmalloc failures. This enables reconfiguration notifier call chain to get the actual error code rather than -ENOMEM by converting all reconfiguration notifier calls to return encapsulate error code with notifier_from_errno(). Signed-off-by: Akinobu Mita Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Benjamin Herrenschmidt commit 3aef19f0a10d1c274a15191766b627fe550d456e Author: Akinobu Mita Date: Tue Jun 21 03:35:55 2011 +0000 powerpc/pseries: Introduce pSeries_reconfig_notify() This introduces pSeries_reconfig_notify() as a just wrapper of blocking_notifier_call_chain() for pSeries_reconfig_chain. This is a preparation to improvement of error code on reconfiguration notifier failure. Signed-off-by: Akinobu Mita Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Benjamin Herrenschmidt commit e48f7eb27f0e38e1a461fa4e43025d18100d250b Author: Dmitry Eremin-Solenikov Date: Fri Jun 17 03:10:06 2011 +0000 powerpc/maple: Enable scom access functions on Maple Enable functions used to access SCOM if PPC_MAPLE is defined: they are used by cpufreq driver to control hardware. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Benjamin Herrenschmidt commit 3d41e0f6d91cedcab08dff2f5e148b20c87a7432 Author: Becky Bruce Date: Tue Jun 28 09:54:46 2011 +0000 powerpc: mem_init should call memblock_is_reserved with phys_addr_t This has been broken for a while but hasn't been an issue until now because nobody was reserving regions at high addresses. Signed-off-by: Becky Bruce Signed-off-by: Benjamin Herrenschmidt commit 72632ce5a4ee8c75aa7cc17eb4473fcf625b8941 Author: Becky Bruce Date: Tue Jun 28 09:06:54 2011 +0000 powerpc: Whitespace fix to include/asm/pgtable-ppc64.h Signed-off-by: Becky Bruce Signed-off-by: Benjamin Herrenschmidt commit f67f4ef5fcdfdeeddcb0ed4ab2c85d9bb4185d5f Author: Scott Wood Date: Wed Jun 22 11:25:42 2011 +0000 powerpc/book3e-64: use a separate TLB handler when linear map is bolted On MMUs such as FSL where we can guarantee the entire linear mapping is bolted, we don't need to worry about linear TLB misses. If on top of that we do a full table walk, we get rid of all recursive TLB faults, and can dispense with some state saving. This gains a few percent on TLB-miss-heavy workloads, and around 50% on a benchmark that had a high rate of virtual page table faults under the normal handler. While touching the EX_TLB layout, remove EX_TLB_MMUCR0, EX_TLB_SRR0, and EX_TLB_SRR1 as they're not used. [BenH: Fixed build with 64K pages (wsp config)] Signed-off-by: Scott Wood Signed-off-by: Benjamin Herrenschmidt commit 631b16e81eab82e2894425a94c3fc14bf21adb26 Author: Joseph Lai Date: Mon Jun 27 13:26:53 2011 -0700 Input: add a driver to support InvenSense mpu3050 gyroscope chip This driver is registered as an input device. An IRQ is required in this basic driver configuration. Signed-off-by: Joseph Lai [Cleaned up PM_RUNTIME defines] Signed-off-by: Alan Cox [dtor@mail.ru: consolidated PM methods, some code rearrangement] Signed-off-by: Dmitry Torokhov commit 7c40952295db64867a45938b860a217b622cc3ed Author: Hans-Christian Egtvedt Date: Wed Jun 29 00:13:26 2011 -0700 Input: update author email for gpio_mouse, at32psif, and atmel-wm97xx This patch updates the email address of the gpio_mouse, at32psif, and atmel-wm97xx drivers supported by me to an email account I will use on a more regular basis in the future. Signed-off-by: Hans-Christian Egtvedt Signed-off-by: Dmitry Torokhov commit 1638207910019368253fc4c4a930c49ce2e98432 Author: Axel Lin Date: Tue Jun 28 14:23:30 2011 -0700 Input: gpio_keys - fix a memory leak Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 3d97a619acbb2c8a7a9a7da08c2d3041dfdd241f Author: Scott Wood Date: Wed Jun 22 11:19:49 2011 +0000 powerpc/book3e-64: Reraise doorbell when masked by soft-irq-disable Signed-off-by: Scott Wood Signed-off-by: Benjamin Herrenschmidt commit e322a36d3998f7f53c76e25e32302632326ec224 Author: Lydia Wang Date: Wed Jun 29 13:52:02 2011 +0800 ALSA: hda - Fix jack-detection on non-VT1708 VIA codecs Move codec init verb which is only applicatable for VT1708. I've found the root cause that jack plugged in can't be detected. The verb in vt1708_init_verbs is used to power down jack detect circuit. This verb is only applicable to VT1708. vt1708 didn't implement jack detect function in hardware, so we should shut down this function to avoid noise. But for other codecs, hardware implement jack detect function. If sending this verb during initialization, jack detect will be invalid. So I move this verb from via_parse_auto_config() to patch_vt1708(). Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 94230c11da649866b5b38039d84579d668b6a560 Author: Takashi Iwai Date: Tue Jun 28 17:00:33 2011 +0200 ALSA: hda - Fix unused variable warning sound/pci/hda/patch_cmedia.c: In function ‘cmi9880_fill_multi_init’: sound/pci/hda/patch_cmedia.c:401:15: warning: unused variable ‘len’ Signed-off-by: Takashi Iwai commit c82693db52beced0419cecf09a3c81adfe95a544 Author: Takashi Iwai Date: Tue Jun 28 14:17:17 2011 +0200 ALSA: hda - Enable auto-parser as default for Conexant codecs Let's use auto-parser as default now. Signed-off-by: Takashi Iwai commit c2549312d24d342432f8f55a73c98a44d9ab131d Merge: 8d087c7 9966db22 Author: Takashi Iwai Date: Wed Jun 29 08:02:09 2011 +0200 Merge branch 'fix/hda' into topic/hda commit 8d087c7600499463b7b8e3d4da4da40669cb8bfa Author: Takashi Iwai Date: Tue Jun 28 12:45:47 2011 +0200 ALSA: hda - Create snd_hda_get_conn_index() helper function Create snd_hda_get_conn_index() helper function for obtaining the connection index of the widget. Replaced the similar codes used in several codec-drivers with this common helper. Signed-off-by: Takashi Iwai commit 63f10d2ca78c17cdd612c1daee7daffacca8b7fb Author: Lydia Wang Date: Tue Jun 28 17:29:10 2011 +0800 ALSA: hda - Fix unsol event initializations for VIA codecs Fix a issue to enable unsolicited response to line-out pins. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 3c350a1a554eeb4b4ae7389e9d9b76f137c35071 Merge: 14497d3 5730849 Author: Benjamin Herrenschmidt Date: Wed Jun 29 12:45:43 2011 +1000 Merge remote branch 'jwb/next' into next commit 25e75dff519bcce2cb35023105e7df51d7b9e691 Author: John Johansen Date: Sat Jun 25 16:57:07 2011 +0100 AppArmor: Fix masking of capabilities in complain mode AppArmor is masking the capabilities returned by capget against the capabilities mask in the profile. This is wrong, in complain mode the profile has effectively all capabilities, as the profile restrictions are not being enforced, merely tested against to determine if an access is known by the profile. This can result in the wrong behavior of security conscience applications like sshd which examine their capability set, and change their behavior accordingly. In this case because of the masked capability set being returned sshd fails due to DAC checks, even when the profile is in complain mode. Kernels affected: 2.6.36 - 3.0. Signed-off-by: John Johansen commit 04fdc099f9c80c7775dbac388fc97e156d4d47e7 Author: John Johansen Date: Tue Jun 28 15:06:38 2011 +0100 AppArmor: Fix reference to rcu protected pointer outside of rcu_read_lock The pointer returned from tracehook_tracer_task() is only valid inside the rcu_read_lock. However the tracer pointer obtained is being passed to aa_may_ptrace outside of the rcu_read_lock critical section. Mover the aa_may_ptrace test into the rcu_read_lock critical section, to fix this. Kernels affected: 2.6.36 - 3.0 Reported-by: Oleg Nesterov Cc: stable@kernel.org Signed-off-by: John Johansen commit 0e4ae0e0dec634b2ae53ac57d14141b140467dbe Author: Tetsuo Handa Date: Sun Jun 26 23:22:59 2011 +0900 TOMOYO: Make several options configurable. To be able to start using enforcing mode from the early stage of boot sequence, this patch adds support for activating access control without calling external policy loader program. This will be useful for systems where operations which can lead to the hijacking of the boot sequence are needed before loading the policy. For example, you can activate immediately after loading the fixed part of policy which will allow only operations needed for mounting a partition which contains the variant part of policy and verifying (e.g. running GPG check) and loading the variant part of policy. Since you can start using enforcing mode from the beginning, you can reduce the possibility of hijacking the boot sequence. This patch makes several variables configurable on build time. This patch also adds TOMOYO_loader= and TOMOYO_trigger= kernel command line option to boot the same kernel in two different init systems (BSD-style init and systemd). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit efe836ab2b514ae7b59528af36d452978b42d266 Author: Tetsuo Handa Date: Sun Jun 26 23:22:18 2011 +0900 TOMOYO: Add built-in policy support. To be able to start using enforcing mode from the early stage of boot sequence, this patch adds support for built-in policy configuration (and next patch adds support for activating access control without calling external policy loader program). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit b22b8b9fd90eecfb7133e56b4e113595f09f4492 Author: Tetsuo Handa Date: Sun Jun 26 23:21:50 2011 +0900 TOMOYO: Rename meminfo to stat and show more statistics. Show statistics such as last policy update time and last policy violation time in addition to memory usage. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 2c47ab9353242b0f061959318f83c55360b88fa4 Author: Tetsuo Handa Date: Sun Jun 26 23:21:19 2011 +0900 TOMOYO: Cleanup part 4. Gather string constants to one file in order to make the object size smaller. Use unsigned type where appropriate. read()/write() returns ssize_t. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 2e503bbb435ae418aebbe4aeede1c6f2a33d6f74 Author: Tetsuo Handa Date: Sun Jun 26 23:20:55 2011 +0900 TOMOYO: Fix lockdep warning. Currently TOMOYO holds SRCU lock upon open() and releases it upon close() because list elements stored in the "struct tomoyo_io_buffer" instances are accessed until close() is called. However, such SRCU usage causes lockdep to complain about leaving the kernel with SRCU lock held. This patch solves the warning by holding/releasing SRCU upon each read()/write(). This patch is doing something similar to calling kfree() without calling synchronize_srcu(), by selectively deferring kfree() by keeping track of the "struct tomoyo_io_buffer" instances. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 5625f2e3266319fd29fe4f1c76ccd3f550c79ac4 Author: Tetsuo Handa Date: Sun Jun 26 23:20:23 2011 +0900 TOMOYO: Change pathname for non-rename()able filesystems. TOMOYO wants to use /proc/self/ rather than /proc/$PID/ if $PID matches current thread's process ID in order to prevent current thread from accessing other process's information unless needed. But since procfs can be mounted on various locations (e.g. /proc/ /proc2/ /p/ /tmp/foo/100/p/ ), TOMOYO cannot tell that whether the numeric part in the string returned by __d_path() represents process ID or not. Therefore, to be able to convert from $PID to self no matter where procfs is mounted, this patch changes pathname representations for filesystems which do not support rename() operation (e.g. proc, sysfs, securityfs). Examples: /proc/self/mounts => proc:/self/mounts /sys/kernel/security/ => sys:/kernel/security/ /dev/pts/0 => devpts:/0 Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit bd03a3e4c9a9df0c6b007045fa7fc8889111a478 Author: Tetsuo Handa Date: Sun Jun 26 23:19:52 2011 +0900 TOMOYO: Add policy namespace support. Mauras Olivier reported that it is difficult to use TOMOYO in LXC environments, for TOMOYO cannot distinguish between environments outside the container and environments inside the container since LXC environments are created using pivot_root(). To address this problem, this patch introduces policy namespace. Each policy namespace has its own set of domain policy, exception policy and profiles, which are all independent of other namespaces. This independency allows users to develop policy without worrying interference among namespaces. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 32997144fd9925fc4d506a16990a0c405f766526 Author: Tetsuo Handa Date: Sun Jun 26 23:19:28 2011 +0900 TOMOYO: Add ACL group support. ACL group allows administrator to globally grant not only "file read" permission but also other permissions. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit eadd99cc85347b4f9eb10122ac90032eb4971b02 Author: Tetsuo Handa Date: Sun Jun 26 23:18:58 2011 +0900 TOMOYO: Add auditing interface. Add /sys/kernel/security/tomoyo/audit interface. This interface generates audit logs in the form of domain policy so that /usr/sbin/tomoyo-auditd can reuse audit logs for appending to /sys/kernel/security/tomoyo/domain_policy interface. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit d5ca1725ac9ba876c2dd614bb9826d0c4e13d818 Author: Tetsuo Handa Date: Sun Jun 26 23:18:21 2011 +0900 TOMOYO: Simplify profile structure. Remove global preference from profile structure in order to make code simpler. Due to this structure change, printk() warnings upon policy violation are temporarily disabled. They will be replaced by /sys/kernel/security/tomoyo/audit by next patch. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 0d2171d711cbfca84cc0001121be8a6cc8e4d148 Author: Tetsuo Handa Date: Sun Jun 26 23:17:46 2011 +0900 TOMOYO: Rename directives. Convert "allow_..." style directives to "file ..." style directives. By converting to the latter style, we can pack policy like "file read/write/execute /path/to/file". Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit a238cf5b89ed5285be8de56335665d023972f7d5 Author: Tetsuo Handa Date: Sun Jun 26 23:17:10 2011 +0900 TOMOYO: Use struct for passing ACL line. Use structure for passing ACL line, in preparation for supporting policy namespace and conditional parameters. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 0df7e8b8f1c25c10820bdc679555f2fbfb897ca0 Author: Tetsuo Handa Date: Sun Jun 26 23:16:36 2011 +0900 TOMOYO: Cleanup part 3. Use common structure for ACL with "struct list_head" + "atomic_t". Use array/struct where possible. Remove is_group from "struct tomoyo_name_union"/"struct tomoyo_number_union". Pass "struct file"->private_data rather than "struct file". Update some of comments. Bring tomoyo_same_acl_head() from common.h to domain.c . Bring tomoyo_invalid()/tomoyo_valid() from common.h to util.c . Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit b5bc60b4ce313b6dbb42e7d32915dcf0a07c2a68 Author: Tetsuo Handa Date: Sun Jun 26 23:16:03 2011 +0900 TOMOYO: Cleanup part 2. Update (or temporarily remove) comments. Remove or replace some of #define lines. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 7c75964f432d14062d8eccfc916aa290f56b5aab Author: Tetsuo Handa Date: Sun Jun 26 23:15:31 2011 +0900 TOMOYO: Cleanup part 1. In order to synchronize with TOMOYO 1.8's syntax, (1) Remove special handling for allow_read/write permission. (2) Replace deny_rewrite/allow_rewrite permission with allow_append permission. (3) Remove file_pattern keyword. (4) Remove allow_read permission from exception policy. (5) Allow creating domains in enforcing mode without calling supervisor. (6) Add permission check for opening directory for reading. (7) Add permission check for stat() operation. (8) Make "cat < /sys/kernel/security/tomoyo/self_domain" behave as if "cat /sys/kernel/security/tomoyo/self_domain". Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 0c4986388a814ef4e85ea62d10b247dd7dc7783d Author: Jiri Kosina Date: Wed Jun 29 00:44:39 2011 +0200 gma500: push through device driver tree This is partial revert of e44ba033c ("treewide: remove duplicate includes") and 28f65c11 ("treewide: Convert uses of struct resource to resource_size(ptr)") as these changes will be merged through Alan->Greg together with other gma500 bits. Signed-off-by: Jiri Kosina commit af0c25c4876305dfa1a25ac1cc92d3cddfa476a6 Author: Américo Wang Date: Thu Jun 16 15:48:29 2011 +0800 staging: remove obsoleted CS5535/CS5536 GPIO driver It is scheduled to be removed. Acked-by: Andres Salomon Signed-off-by: WANG Cong Signed-off-by: Greg Kroah-Hartman commit ceeb6fec707e88adc2d8faa65a67df8451d02f63 Author: Joe Perches Date: Thu Jun 23 11:40:18 2011 -0700 staging: Fix recieve/receive typos Just spelling fixes. Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit d9b42c01ae8d17fdf8d910a4255d18ed2ac22f90 Author: Bryan Freed Date: Fri Jun 24 13:40:47 2011 -0700 iio: light sensor: Add SMBUS support to the tsl2563 driver. This is so we can support it on x86 SMBUS adapters. Since i2c adapters which do not provide an smbus_xfer interface fall back to using their I2C master_xfer interface, all the i2c_master_send() calls in this driver are changed to i2c_smbus_*() calls. This will fail on an i2c adapter that implements a proper subset of (SMBUS_BYTE | SMBUS_BYTE_DATA | SMBUS_WORD_DATA), but I do not see that in any of our adapters today. This results in a few wrapper functions that provide little additional functionality, so remove them and call the smbus functions directly from the general driver code. Signed-off-by: Bryan Freed Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 9e4216fd6a547261c54bede60108347646c95a69 Author: Bryan Freed Date: Tue Jun 21 15:54:57 2011 -0700 iio: light sensor: Fix a panic in the tsl2563 driver. Add the required read/write_raw functions to the tsl2563_info_no_irq data structure. This structure is used insted of tsl2563_info when the I2C client has no IRQ. The absence of these functions causes a panic when reading or writing the created sysfs files. Signed-off-by: Bryan Freed Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8f518d71f392b597832653f9438332ae27019da1 Author: Bryan Freed Date: Tue Jun 21 15:54:56 2011 -0700 iio: light sensor: Fix a panic in the tsl2563 driver. Add a wrapper for this driver around the IIO_CHAN() wrapper to make channel parameters more readable. This fixes a panic caused by the info_masks being accidentally passed in as channel2 parameters which easily surpass the size of the iio_modifier_names_light array. Signed-off-by: Bryan Freed Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit beeada734f9c6a11dbc37790848a19f3582440fc Author: Jonathan Cameron Date: Sat Jun 25 12:20:39 2011 +0100 staging:iio: one more fix for IIO_RING_BUFFER not enabled. Same problem as seen and fixed in adis16204 et al. These were fixed by Randy in: staging: fix more iio builds when IIO_RING_BUFFER is not enabled Signed-off-by: Jonathan Cameron Reported-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit f88af7e7d338e067eff0c2b9e317da97488ff74c Author: Dan Carpenter Date: Wed Jun 8 09:42:21 2011 +0300 Staging: iio: dereferencing uninitialized variable In the error handling, it dereferences "st" before it has been initialized. I also just tidied it up a bit to remove some extra conditions. Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit 7959a7c477b5dd284bb424c9cfbf917ae1664272 Author: maximilian attems Date: Sat Jun 25 15:46:38 2011 +0200 staging: iio light Kconfig fixlet No point to start comments with '\'. Signed-off-by: maximilian attems Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c2f37c8dcadc77482585e64ef8819f5fd08f26df Author: Michael Hennerich Date: Fri Jun 10 15:40:49 2011 +0200 iio: dac: New driver for AD5686R, AD5685R, AD5684R Digital to analog converters New driver for AD5686R, AD5685R, AD5684R Quad channel digital to analog converters Changes since V1: drop header file use strtobool() Fix dev attribute macros Reorder probe() function Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit ae19178eacfab141afdd886e002bb80c99dba63a Author: Michael Hennerich Date: Fri Jun 10 15:40:48 2011 +0200 iio: industrialio-core: Add IIO_OUT type Add IIO_OUT type for DAC like devices In case of IIO_OUT make sure the channel device attribute is writable Ideally we add a flag to iio_chan_spec that tells the core that the channel device attribute is writable... Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 88bc30548aae18a39fd5d35cbb160a1ea347b4a7 Author: Michael Hennerich Date: Wed Jun 8 16:12:44 2011 +0200 IIO: ADC: New driver for AD7792/AD7793 3 Channel SPI ADC New driver for AD7792/AD7793 3-Channel, Low Noise, Low Power, 16-/24-Bit Sigma-Delta ADC with On-Chip In-Amp and Reference. The AD7792/AD7793 features a dual use data out ready DOUT/RDY output. In order to avoid contentions on the SPI bus, it's necessary to use spi bus locking. The DOUT/RDY output must also be wired to an interrupt capable GPIO. In INDIO_RING_TRIGGERED mode, this driver may block its SPI bus segment for an extended period of time. Changes since V1: Use bool where applicable. Use data buffer that lives in their own cache line. Restructure ad7793_calibrate_all to use an array. Use msleep. Query REG_ID instead of doing a write/read This is a test. Add support for unipolar mode. Drop range attribute in favor of write scale. Add proper locking. Use new validate_trigger callbacks. Use IIO_IN_DIFF for differential channels. Change attribute naming. Use available_scan_masks. Some other miscellaneous cleanup (none functional changes). Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3fd47d44860aaac5b6f55bb3522e32f32e1be9e6 Author: anish kumar Date: Mon Jun 27 13:08:00 2011 +0100 staging:iio:accel:kxsd9 replace kmallocs in power_up with use of already allocated buffer. Signed-off-by: anish kumar Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d5614701df8a3c7abf439d04143f1b25acc0f7c5 Author: anish Date: Mon Jun 27 13:07:59 2011 +0100 staging: IIO corrected the spelling in iio-trig-gpio Corrected the spelling. Signed-off-by: anish kumar Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d31907f3431c25e0f8ba61ea2ee5ff3ab17becf3 Author: Jonathan Cameron Date: Mon Jun 27 13:07:58 2011 +0100 staging:iio:accel:adis16201 general cleanup, move to iio_priv and buffers in adis16201_state Basically use various new facilities to tidy up. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 927afbec71d62dd766d134b61f71d22b91b20713 Author: Jonathan Cameron Date: Mon Jun 27 13:07:57 2011 +0100 staging:iio:light:isl29018: allocate device state with iio_dev V2: Actually allocate the space for iio_priv Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 88fa4de48e57bf942dd98028660c56588928124a Author: Jonathan Cameron Date: Mon Jun 27 13:07:56 2011 +0100 staging:iio:magnetometer:hmc5843: allocate device state with iio_dev. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit afc2ff0afaf395042854172994825439d9961e2c Author: Jonathan Cameron Date: Mon Jun 27 13:07:55 2011 +0100 staging:iio:meter:ade7759: allocate state with iio_dev Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 338473c8194b45eb28bae737fc7aa8e7f4fe7330 Author: Jonathan Cameron Date: Mon Jun 27 13:07:54 2011 +0100 staging:iio:magnetometer:ak8975: allocate chip state with iio_dev. Here the ordering is a little tricky, so to keep changes minimal, a copy of the gpio number is introduced. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit a6b0919140b49e0871584362ae0cf1d18c476058 Author: John Bonesio Date: Mon Jun 27 16:49:57 2011 -0700 of/gpio: Add new method for getting gpios under different property names This patch adds a new routine, of_get_named_gpio_flags(), which takes the property name as a parameter rather than assuming "gpios". of_get_gpio_flags() is modified to call of_get_named_gpio_flags() with "gpios" as the property parameter. Signed-off-by: John Bonesio [grant.likely: Tidied up whitespace and tweaked kerneldoc comments.] Signed-off-by: Grant Likely commit 58f08b0af857ba8546ae35a20fdfe346ba58d75d Author: Jonathan Cameron Date: Mon Jun 27 13:07:53 2011 +0100 staging:iio:resolver:ad2s90 general cleanup Very simple driver, so not much to do. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 8f2bd8363feb26546972a7c5a53db49b524ab703 Author: Jonathan Cameron Date: Mon Jun 27 13:07:52 2011 +0100 staging:iio:resolver:ad2s120x cleanup. I've currently squashed the vel + pos combined attribute. If people need them precisely paired I doubt they will get them from the sysfs interface anyway. If that is a requirement it should come via a buffer implementation. Note this patch leaves the completely non standard interface alone. That will get fixed later. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit b19e9ad5e2cb9145c81690cec7c826b156d5b3c1 Author: Jonathan Cameron Date: Mon Jun 27 13:07:51 2011 +0100 staging:iio:resolver:ad2s1210 general driver cleanup. Note I haven't made any changes to the userspace interface as yet. This is all about cleaning up what was actually there (handling all errors etc). Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 937a9601211100269fdc8125017809976ec9b37f Author: Jonathan Cameron Date: Mon Jun 27 13:07:50 2011 +0100 staging:iio:meter:ade7854: Allocate buffers in state and state with iio_dev. Requires moving a few things around, but should be no functional changes. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 57157d1c0e73662401e0d32f501e54f2d80f4740 Author: Jonathan Cameron Date: Mon Jun 27 13:07:49 2011 +0100 staging:iio:meter:ade7754: allocate state with iio_dev and buffers in state. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit bfccd4fb9af3708eb7d117ca4fef60a650853fee Author: Jonathan Cameron Date: Mon Jun 27 13:07:48 2011 +0100 staging:iio:meter:ade7753 allocate chip state with iio_dev; allocate buffers within state Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit ba61bb18c23d9076c47d0199c268d244d04ee7dc Author: Jonathan Cameron Date: Mon Jun 27 13:07:47 2011 +0100 staging:iio:gyro:adxrs450: allocate chip state with iio_dev Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit d088ab838859507c34191484cdf993105d2fa2b5 Author: Jonathan Cameron Date: Mon Jun 27 13:07:46 2011 +0100 staging:iio:gyro:adis16260: allocate chip state with iio_dev and use iio_priv to access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 9f8632d73edc0f132212cf7eb826c450283014d9 Author: Jonathan Cameron Date: Mon Jun 27 13:07:45 2011 +0100 staging:iio:gyro:adis16130: allocate chip state with iio_dev and use iio_priv to access it. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 1dd9290a7ef8877d12a9df28c2df677fde145dfe Author: Jonathan Cameron Date: Mon Jun 27 13:07:44 2011 +0100 staging:iio:gyro:adis16080: allocate chip state with iio_dev Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 3a5952f97a473edfeb3fa34c9ec2e7f10c26c943 Author: Jonathan Cameron Date: Mon Jun 27 13:07:43 2011 +0100 staging:iio:gyro:adis16060 allocate chip state with iio_dev. This is still a very odd driver. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 3e772581c282cd5e0685b4179602067404953537 Author: Jonathan Cameron Date: Mon Jun 27 13:07:42 2011 +0100 staging:iio:dds:ad9951: allocate chip state with iio_dev Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit fb565f132bd43924c053abb8b15e8d6e57606c0c Author: Jonathan Cameron Date: Mon Jun 27 13:07:41 2011 +0100 staging:iio:dds:ad9910: allocate chip state with iio_dev Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit a28299114b2035ef4cf356c590ab946b73a9268e Author: Jonathan Cameron Date: Mon Jun 27 13:07:40 2011 +0100 staging:iio:dds:ad9810: allocate chip state with iio_dev and use iio_priv for access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 7be94372cac8dcb23d6ed06960b75a1f63970d39 Author: Jonathan Cameron Date: Mon Jun 27 13:07:39 2011 +0100 staging:iio:dds:ad9850 allocate chip state with iio_dev + fix name of attr group. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 8b7163a5f686ee7b81a6ad2ecf170f09aa9f9d39 Author: Jonathan Cameron Date: Mon Jun 27 13:07:38 2011 +0100 staging:iio:ad9834: allocate chip state with iio_dev and use iio_priv to access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 39f3b32eb3372c5b363464f812b200eeb77c3f91 Author: Jonathan Cameron Date: Mon Jun 27 13:07:37 2011 +0100 staging:iio:dds:ad9832: allocate chip state with iio_dev and use iio_priv to access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 7074e1d44fd37c1076f9464a262fb3966ec43261 Author: Jonathan Cameron Date: Mon Jun 27 13:07:36 2011 +0100 staging:iio:dds:ad5930 Fix attr group location + allocate state with iio_dev The main attribute group was placed under driver name for some reason. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit cada11fa205b008afed1582bc9816ae5941baf6d Author: Jonathan Cameron Date: Mon Jun 27 13:07:35 2011 +0100 staging:iio:dac:max517: allocate chip state with iio_dev and use iio_priv to access it. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f5730d52ba97cf58e4468b46ebbb49d704e23d20 Author: Jonathan Cameron Date: Mon Jun 27 13:07:34 2011 +0100 staging:iio:dac:ad5791: allocate chip state with iio_dev and use iio_priv for access. Slightly fiddly case with two regulators - could reorder, but this is the approach with smallest likely impact. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 86729fc46f7791f5978309bbdac862a9833c5ce9 Author: Jonathan Cameron Date: Mon Jun 27 13:07:33 2011 +0100 staging:iio:dac:ad5446: allocate chip state with iio_dev and use iio_priv for access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit a3684ded4fdd1ee7b5bee84e2aa96586f47fb07f Author: Jonathan Cameron Date: Mon Jun 27 13:07:32 2011 +0100 staging:iio:dac:ad5504: allocate chip state with iio_dev and use iio_priv for access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 3ff242055b7b460b6646238a26f3330be6a22651 Author: Jonathan Cameron Date: Mon Jun 27 13:07:31 2011 +0100 staging:iio:dac:ad5624r: allocate chip state with iio_dev and use iio_priv for access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit d3de2935b6bbf327afd917728446c2d77c99aa9d Author: Jonathan Cameron Date: Mon Jun 27 13:07:30 2011 +0100 staging:iio:adc:adt7410 allocate chip state with iio_dev and use iio_priv to access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 70be42919a876af79187ce5385914597988583f9 Author: Jonathan Cameron Date: Mon Jun 27 13:07:29 2011 +0100 staging:iio:addac:adt7316: allocate chip state with iio_dev and use iio_priv to access. Various minor cleanups needed to deal with removal of iio_dev pointer from chip state. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 7978f9f8f933c8aab23100a26245f47f440c6283 Author: Jonathan Cameron Date: Mon Jun 27 13:07:28 2011 +0100 staging:iio:adc:adt7310: allocate chip state with iio_dev and use iio_priv for access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 84e8d84d0f5766f93706f1e29369fbaec01be180 Author: Jonathan Cameron Date: Mon Jun 27 13:07:27 2011 +0100 staging:iio:adc:adt75: allocate chip state with iio_dev and cleanup some function calls. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit b0011d6dbae18af3e4bc52670e542abc688eb5a2 Author: Jonathan Cameron Date: Mon Jun 27 13:07:26 2011 +0100 staging:iio:adc:ad7816: allocate chip state with iio_dev and use iio_priv to access. Again, get rid of unwanted iio_dev pointer in state. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit febafb94d669bf60b3ccad918d3fddcb66450092 Author: Jonathan Cameron Date: Mon Jun 27 13:07:25 2011 +0100 staging:iio:adc:ad7745 allocate chip state with iio_dev and use iio_priv to access. Also remove the iio_dev pointer from chip state as never needed. V2: Actually allocate the space for iio_priv data. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 744e4a6b857edaa78e167bfd03ba195066155caa Author: Jonathan Cameron Date: Mon Jun 27 13:07:24 2011 +0100 staging:iio:adc:ad7314 allocate chip state with iio_dev and use iio_priv to access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit d4397972812809126f4cf94eed17cc7b1bc3460d Author: Jonathan Cameron Date: Mon Jun 27 13:07:23 2011 +0100 staging:iio:adc:ad7291: allocate chip state with iio_dev and use iio_priv for access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit f4c794a2c16b1681759c39de7357de07296fd3fe Author: Jonathan Cameron Date: Mon Jun 27 13:07:22 2011 +0100 staging:iio:adc:ad7152: allocate chip state with iio_dev and use iio_priv for access. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 46a6af38201693d47c1192c1fe7138e6e268e74e Author: Jonathan Cameron Date: Mon Jun 27 13:07:21 2011 +0100 staging:iio:adc:ad7150: allocate chip state with iio_dev and use iio_priv to access. V2 - actually allocate some space for the iio_priv data. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit d8aea29b6289d4b849a7679b50e5bcd18553e447 Author: Jonathan Cameron Date: Mon Jun 27 13:07:20 2011 +0100 staging:iio:adc:ad799x clear out last few uses of iio_dev->dev_data. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit f490f42bdfee9893e5250d592254534624be891b Author: Jonathan Cameron Date: Mon Jun 27 13:07:19 2011 +0100 staging:iio:adc:ad7887 clear out last few uses of iio_dev->dev_data. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 67688105af837644ffdfb00bc2f60158d37509f6 Author: Jonathan Cameron Date: Mon Jun 27 13:07:18 2011 +0100 staging:iio:adc:ad7476 allocate state with iio_dev and use iio_priv to access. Reg handling is a little fiddly given the ordering of calls. All part of getting rid of iio_dev->dev_data Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit ed0c012b855f6f73431b62c8db70ed5a1b0c8a25 Author: Jonathan Cameron Date: Mon Jun 27 13:17:56 2011 +0100 staging:iio:accel:kxsd9: allocate state with iio_dev and use iio_priv to access. V2: Actually allocate the storage. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 83f0422dc6a16ffa03d284b8dcce1344a91f79df Author: Jonathan Cameron Date: Mon Jun 27 13:07:16 2011 +0100 staging:iio:accel:sca3000: allocate state in iio_dev and use iio_priv to access. Mechanical change. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 01a6721600d18403d0c14d0e25b1481228af245c Author: Jonathan Cameron Date: Mon Jun 27 13:07:15 2011 +0100 staging:iio:accel:adis16220 allocate tx and rx in state plus state via iio_priv Few other misc cleanups. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit a22ff7066c0561c2aa92967f0eed4a1c77f088e7 Author: Jonathan Cameron Date: Mon Jun 27 13:07:14 2011 +0100 staging:iio:accel:adis16240 allocate tx and rx in state plus state via iio_priv Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 35212dfa6b13ab9a53f919d9ef22dd6ed363d485 Author: Jonathan Cameron Date: Mon Jun 27 13:07:13 2011 +0100 staging:iio:accel:adis16209 allocate tx and rx in state plus state via iio_priv Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 4de66bbb3eb1099a76e1bbf87e376c7a31dc30d5 Author: Jonathan Cameron Date: Mon Jun 27 13:07:12 2011 +0100 staging:iio:accel:adis16204 allocate tx and rx in state plus state via iio_priv Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 6a0d8090a6a2722d25bda04aa250752e0ea56381 Author: Jonathan Cameron Date: Mon Jun 27 13:07:11 2011 +0100 staging:iio:accel:adis16203 move buffers into state and use iio_priv to avoid allocating state separately. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 5c04af04835269c194662be63fe168893fad667f Author: Michael Hennerich Date: Mon Jun 27 13:07:10 2011 +0100 iio: industrialio-core: iio_write_channel_info accept IIO_VAL_INT_PLUS_NANO Allow iio_write_channel_info() to accept IIO_VAL_INT_PLUS_NANO Changes since V1: use callback to query expected format/precision Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 43a4360ea8f075540cb7c1efc8d643b4261eb901 Author: Michael Hennerich Date: Mon Jun 27 13:07:09 2011 +0100 iio: trigger: Add filter callback Allow devices to reject triggers and vice versa. Changes since V1: Added kernel-doc Moved callback into iio_info Changed function naming Revised return value passing Add forward declaration to avoid warnings Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 03e1672a70be991a9e84d67b2d2143313938e1a8 Author: Michael Hennerich Date: Mon Jun 27 13:07:08 2011 +0100 iio: trigger: Move declaration of struct iio_poll_func to avoid warnings Move declaration of struct iio_poll_func to avoid warnings Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 71646e2c7ae4edb92dfa89eccb354d81be1cbbbd Author: Michael Hennerich Date: Mon Jun 27 13:07:07 2011 +0100 iio: industrialio-core: introduce IIO_VAL_INT_PLUS_NANO Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit bf859f84a19f8e562af4a990a287b5e3edabc572 Author: Grant Likely Date: Fri Jun 3 11:07:16 2011 -0600 gpio/dt: Refine GPIO device tree binding Allow for multiple named gpio properties Signed-off-by: Grant Likely commit 6263ba551985ad7201d0e7f36672c7a0f57f61f4 Author: Peter Huewe Date: Mon Jun 6 21:32:32 2011 +0200 staging: speakup: Use kstrtoul_from_user This patch replaces the code for getting an unsigned long from a userspace buffer by a simple call to kstroul_from_user. This makes it easier to read and less error prone. Kernel Version: staging of 20110606 Signed-off-by: Peter Huewe Signed-off-by: Greg Kroah-Hartman commit 919ed52f33a9250b5707804b1a84b4b7cbfe2333 Author: Akshay Joshi Date: Tue Jun 7 04:51:55 2011 -0400 Staging: Winbond: Fix assorted spacing issues. Fix the phy_calibration.c file's spacing issues and convert the spaces to tabs. This reduces the number of errors and warnings returned by checkpatch.pl. Signed-off-by: Akshay Joshi Signed-off-by: Greg Kroah-Hartman commit f4b70529beb4242e3906ced6de864110a8de8f50 Author: Mark Einon Date: Mon Jun 6 19:07:04 2011 +0100 staging: et131x: Removing '_t' from ce_stats_t struct Removing '_t' from ce_stats_t struct name and renaming et131x_adapter ce_stats member from 'Stats' to 'stats' Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 57ecdfa72702831afbc040c0a9d55aeee9d571dc Author: Mark Einon Date: Mon Jun 6 19:07:03 2011 +0100 staging: et131x: Fixes multiple 'WARNING: do not add new typedefs'. Removes unions, and uses definitions for bit manipulations. Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 2e861534ca09c12fe5e072511a9d4ee8d5e85092 Author: Mark Einon Date: Mon Jun 6 19:07:02 2011 +0100 staging: et131x: et131x_netdev.c checkpatch fixes Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 76fb419e030f8cf43520eb50c0e86e10929d0370 Author: Mark Einon Date: Mon Jun 6 19:07:01 2011 +0100 staging: et131x: et131x_initpci.c checkpatch fixes Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 47883130a049be2d55c3a8080a71e73d4b939ef8 Author: Mark Einon Date: Mon Jun 6 19:07:00 2011 +0100 staging: et131x: et131x_adapter.h checkpatch fixes Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 29667f30b2aac0e195a5dbc2ca05004caf7c8117 Author: Mark Einon Date: Mon Jun 6 19:06:59 2011 +0100 staging: et131x: et1310_rx.c checkpatch fixes Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 4ce6cc500c4545dbed010ae75274864250f64e84 Author: Mark Einon Date: Mon Jun 6 19:06:58 2011 +0100 staging: et131x: checkpatch fixes for et1310_address_map.h (All 'do not add new typedefs') Signed-off-by: Mark Einon Signed-off-by: Greg Kroah-Hartman commit 45ce3f6fb3d4d21a87f8b3f4668fd34a951274f0 Author: Ken O'Brien Date: Sun Jun 5 18:24:33 2011 +0100 Staging: rtl8192e: Fixed numerous coding style issues Fixed all coding style issues thrown by checkpatch.pl. Signed-off-by: Ken O'Brien Signed-off-by: Greg Kroah-Hartman commit dc6b15f32243a2a5ce1d4dabe0a13cfd1d76c0e0 Author: Ken O'Brien Date: Sun Jun 5 18:24:32 2011 +0100 Staging: rtl8192e: Fixed numerous coding style issues Coding style review: fixed all warnings, and all but three typedef errors. Signed-off-by: Ken O'Brien Signed-off-by: Greg Kroah-Hartman commit 23567c75286f63f77e5ec6bab7f46e0161d75356 Author: Joseph Salisbury Date: Sun Jun 5 17:28:12 2011 +0100 Staging: wlan-ng: fix brace coding style issue in prism2fw.c This is a patch to the prism2fw.c file that fixes up a brace warning found by the checkpatch.pl tool. Signed-off-by: Joseph Salisbury Signed-off-by: Greg Kroah-Hartman commit 7a2eaf9358250706672783eb8511835706b0922b Author: Christian Dietrich Date: Sat Jun 4 17:35:58 2011 +0200 staging: octeon: use printk_ratelimited instead of printk_ratelimit As per printk_ratelimit comment, it should not be used Signed-off-by: Christian Dietrich Signed-off-by: Greg Kroah-Hartman commit 9d17653c721aa7f7c823d6ebc554e2c03ce35fbd Author: Aviv Ben-Yosef Date: Sat Jun 4 05:09:33 2011 -0700 Staging: tty: epca: fixing return code-style issue Fixed a coding-style issue, ``return'' with parens. Signed-off-by: Aviv Ben-Yosef Signed-off-by: Greg Kroah-Hartman commit 562d683cc756ee3d02f86ffeb68f0665547568c0 Author: Joe Perches Date: Fri Jun 3 02:28:50 2011 -0700 staging: msm: Use angle brackets for system includes Use the normal include style. Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit d684aee316ecd34ec7e19c96ad1c2eed85334610 Author: Curtis McEnroe Date: Thu Jun 2 20:33:34 2011 -0400 tm6000: Cleaned up code style in tm6000-alsa.c Fixed all errors but one (possibly a mistake by the checker) reported by the checker. Signed-off-by: Curtis McEnroe Signed-off-by: Greg Kroah-Hartman commit 41eb8d615bddd0982cc42b19144b938df40f6cc0 Author: Curtis McEnroe Date: Thu Jun 2 20:33:33 2011 -0400 tm6000: Clean up code style in tm6000-input.c Removed unnecessary braces. Signed-off-by: Curtis McEnroe Signed-off-by: Greg Kroah-Hartman commit 0f063c68cc871829f75cf2d7d4723a356af58783 Author: Curtis McEnroe Date: Thu Jun 2 20:33:32 2011 -0400 tm6000: Cleaned up code style in tm6000-i2c.c Replaced __FUNCTION__ with __func__ Signed-off-by: Curtis McEnroe Signed-off-by: Greg Kroah-Hartman commit 94b276619b5962e0af72182e214d5fccbb818621 Author: Curtis McEnroe Date: Thu Jun 2 20:33:31 2011 -0400 tm6000: Cleaned up code style in tm6000-dbv.c Replaced usage of __FUNCTION__ with __func__ Signed-off-by: Curtis McEnroe Signed-off-by: Greg Kroah-Hartman commit 3a5deac62389ae1ab9ce020c1e5bd8fe3cdb4156 Author: Andre Bartke Date: Thu Jun 16 17:07:45 2011 +0100 gma500: Fix uninitialized variable and style issues The return variable of psb_gtt_pin() may be used uninitialized. Also fixed some coding style issues. Signed-off-by: Andre Bartke [Reapplied by hand due to other changes] Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit ef41e3f4a5582328aca5ada27a118055b09e3d93 Author: Alan Cox Date: Thu Jun 16 17:07:27 2011 +0100 gma500: Set the correct bits according to the pipe Squash a hardcoded assumption we shouldn't really make Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit fb7ff7f66eeb137ec8d78e386c62638b95659dc6 Author: Alan Cox Date: Thu Jun 16 17:06:31 2011 +0100 gma500: Make GTT pages uncached Clean up the GTT code a bit, make the pages uncached and go via the proper interfaces. This avoids any aliasing problems. On the CPU side we need to access the pages via their true addresses not via the GTT. This is fine for GEM created fb objects for X. For the kernel fb when not in stolen RAM we are going to need to use vm_map_ram() and hope we have enough virtual address space to steal. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7b847f6ded0ae3ee51d92089282d5c8f67b65b9e Author: Alan Cox Date: Thu Jun 16 17:06:09 2011 +0100 gma500: fix warnings Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit dca22184262de0171bafdf613a8d3992a818b70f Author: Vincent Bossier Date: Thu Jun 9 15:49:30 2011 +0200 Staging: VME: Introduce IOCTL to generate VME interrupts. The vme_irq_set is oblviously not needed (a remnant from old tests) and the IOCTL exchange types have been updated following Greg's comments. Allow the IOCTL call to generate VME interrupts when called on the vme/ctl device with the right arguments. Signed-off-by: Vincent Bossier Acked-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit 54b4a779c9565c475a17cc1254a38f293a5ba3ef Author: Vincent Bossier Date: Thu Jun 9 08:59:43 2011 +0100 Staging: VME: Fix ca91cx42 VME interrupt generation. The wait_event_interruptible call requires a condition as second argument that needs to be true sometimes, which is obviously not the case with '0'. The new logic is inspired from the tsi148 driver and takes into account Universe II chip specifics. Signed-off-by: Vincent Bossier Acked-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit 05614fbfc1f3dedc337ac67e83b6ad130ba9fc9f Author: Vincent Bossier Date: Thu Jun 9 09:20:31 2011 +0100 Staging: VME: Make vme/ctl device available for IOCTL operations only. Resurrect the vme/ctl device by allowing to open it even if it has no resources and make related read/write/llseek operations dummy. Signed-off-by: Vincent Bossier Acked-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit 56fc508186dbec9aca46cd034ef12358fc044ac1 Author: Vincent Bossier Date: Thu Jun 2 12:30:02 2011 +0200 Staging: VME: Fix Universe II int ack logic. The driver must acknowledge the interrupts that have been actually serviced, not the ones active. The current code could acknowledge an interrupt that has not been serviced at all. Signed-off-by: Vincent Bossier Acked-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit 584721cab2bdd26f63bfeca60c83f5e6b8eee7d0 Author: Vincent Bossier Date: Fri Jun 3 10:07:39 2011 +0100 Staging VME: Fix remaining checkpatch.pl errors. This patch solves all the existing issues reported by checkpatch.pl in the VME sub-system. Signed-off-by: Vincent Bossier Acked-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit ed7c221c9a06f23c7521a9bfac2518656258bbb6 Author: Curtis McEnroe Date: Wed Jun 1 22:21:56 2011 -0400 staging: tm6000: cleaned up code in tm6000-video.c according to coding style Fixed all errors reported by the checker in tm6000-video.c mostly relating to whitespace. Signed-off-by: Curtis McEnroe Signed-off-by: Greg Kroah-Hartman commit 23b2f8bb92feb83127679c53633def32d3108e70 Author: Jesse Barnes Date: Tue Jun 28 13:04:16 2011 -0700 drm/i915: load a ring frequency scaling table v3 The ring frequency scaling table tells the PCU to treat certain GPU frequencies as if they were a given CPU frequency for purposes of scaling the ring frequency. Normally the PCU will scale the ring frequency based on the CPU P-state, but with the table present, it will also take the GPU frequency into account. The main downside of keeping the ring frequency high while the CPU is at a low frequency (or asleep altogether) is increased power consumption. But then if you're keeping your GPU busy, you probably want the extra performance. v2: - add units to debug table header (from Eric) - use tsc_khz as a fallback if the cpufreq driver doesn't give us a freq (from Chris) v3: - fix comments & debug output - remove unneeded force wake get/put Reviewed-by: Ben Widawsky Tested-by: Eric Anholt Reviewed-by: Eric Anholt Signed-off-by: Jesse Barnes Signed-off-by: Keith Packard commit 3d73710880afa3d61cf57b5d4eb192e812eb7e4f Author: Jesse Barnes Date: Tue Jun 28 10:59:12 2011 -0700 cpufreq: expose a cpufreq_quick_get_max routine This allows drivers and other code to get the max reported CPU frequency. Initial use is for scaling ring frequency with GPU frequency in the i915 driver. Signed-off-by: Jesse Barnes Signed-off-by: Keith Packard commit 2d32f746223bfd89994edc0d16716e90e7836e74 Author: Matt Billenstein Date: Wed Jun 1 09:17:06 2011 +0000 staging: comedi (adv_pci1723): coding style, fix whitespace before quoted newline Small fix in adv_pci1723.c for a "whitespace before quoted newline" warning from checkpatch.pl Signed-off-by: Matt Billenstein Signed-off-by: Greg Kroah-Hartman commit 4b2b6d842ba174a32cc7ad3c4e97aa0cfcaa0be2 Author: Andre Bartke Date: Tue May 31 21:03:56 2011 +0200 staging: intel_sst: Fix memory leak In case of an error stream_bufs is not freed here. Signed-off-by: Andre Bartke Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c0777d228892f6a6f87f3439a030d52406f8d637 Author: Peter Huewe Date: Tue May 31 01:11:17 2011 +0200 staging: altera-stapl: Fix memory leak of altera_init() In case kzalloc() fails the second or third time we should free the previous allocated resources. In order to keep one return point and to keep the cleanup code to one place, some reordering was necessary. Also while at it, removed the *sizeof(char) - to quote Linus: "" Also removed the silly "* sizeof(u8)". If that isn't 1, we have way deeper problems than a simple multiplication can fix. """ Reported-by: Andre Bartke Signed-off-by: Peter Huewe Signed-off-by: Greg Kroah-Hartman commit 8ded351ad1889e5351f29b3b1b1716c4992856ee Author: Marin Mitov Date: Sat May 28 21:45:27 2011 +0300 staging: use videobuf2 framework for drivers/staging/dt3155v4l driver This patch transforms drivers/staging/dt3155v4l driver to use videobuf2 framework. Tested and works with "xawtv -f". Either streaming API or read method should be selected during kernel configuration. If both are selected into the driver (not possible without another patching), either due to my misunderstanding or problems in xawtv (or both), I get kernel panic after some start/stop of xawtv (not strictly reproducible). Signed-off-by: Marin Mitov Signed-off-by: Greg Kroah-Hartman commit 7a1763320b8376caee8526823fc94ff612ca5358 Author: Naveen Kumar Gaddipati Date: Mon May 30 14:16:50 2011 +0200 staging: synaptics: Implement error handling for rmi4 touch regulator Implement the error handling for regulator in synaptics rmi4 touch screen Signed-off-by: Naveen Kumar Gaddipati Signed-off-by: Greg Kroah-Hartman commit 09861bc3e82eeffdb4eef1dd1588dc0ed994be7b Author: Jonathan Neuschäfer Date: Mon May 30 20:41:02 2011 +0200 staging: sep: fix function name in kernel-doc Signed-off-by: Jonathan Neuschäfer Signed-off-by: Greg Kroah-Hartman commit 1fddb42caff955d072e4ea55ae0a55549840e971 Author: Tim Retout Date: Sun May 29 19:38:32 2011 +0100 staging: sep: clean up some checkpatch.pl issues Use consistent spacing in array indexing, and a whitespace fix. Signed-off-by: Tim Retout Signed-off-by: Greg Kroah-Hartman commit fcfd8ac0a599dc99eb67259ed809312dc8c4df51 Author: Joe Perches Date: Sat May 28 10:36:31 2011 -0700 staging: Convert vmalloc/memset to vzalloc Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit f5a22e91e03e3a8d15e9e20a9005fda73eee684e Author: Ralf Thielow Date: Sat May 28 01:38:18 2011 +0200 staging: tty: fixed some whitespace coding style issues Fixed some whitespace coding style issues. Signed-off-by: Ralf Thielow Signed-off-by: Greg Kroah-Hartman commit f80d1d22b6c30771f8d4576d5c741c33b0cfd8ab Author: Ralf Thielow Date: Sat May 28 01:37:03 2011 +0200 staging: comedi: fixed a declaration coding style issue Fixed a declaration coding style issue. Signed-off-by: Ralf Thielow Signed-off-by: Greg Kroah-Hartman commit 2ff0720933f9a5e502a46fb6ea14ceeaad65131f Merge: b0af8df 40fb79c Author: Russell King Date: Tue Jun 28 21:23:00 2011 +0100 Merge branch 'cmpxchg64' of git://git.linaro.org/people/nico/linux into devel-stable commit 2265e2e7fd23ad9cd1408866658aa747c4c1e9f5 Author: Jesper Juhl Date: Fri Jun 24 00:54:52 2011 +0200 Remove unneeded version.h include from drivers/staging/mei/main.c It was pointed out by 'make versioncheck' that include of linux/version.h is not needed in drivers/staging/mei/main.c . This patch removes it. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 479bc59d88e1126f3206923738d990ebe1b41137 Author: Tomas Winkler Date: Thu Jun 16 00:46:03 2011 +0300 staging: mei: fix possible usage of uninitialized variable Fix warning: reported in http://marc.info/?l=linux-kernel&m=130812960402606&w=2 drivers/staging/mei/interrupt.c: warning: 'buffer' may be used uninitialized in this function: => 198 It is a real issue and wrong path in execution is taken when list is empty or (cl && _mei_irq_thread_state_ok(cl, mei_hdr)) evaluates to false Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 0288c7c9754d45531944992e8731d1ee9c59ecc3 Author: Tomas Winkler Date: Mon Jun 6 10:44:34 2011 +0300 staging: mei: io_list functions revamp 1. remove list used for loop. There were only 2 loops used in non time critical places so we can safely unroll them 2. normalize functions names operating on io_list to mei_io_list_ 3. rename mei_fe_same_id to mei_cl_cmp_id used for comparing list elements containing struct mei_cl 4. group together io_list functions in the header file Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit cf9673dad4dd76ecdccd265809921ceed752f19e Author: Tomas Winkler Date: Mon Jun 6 10:44:33 2011 +0300 staging: mei: rename num_mei_me_clients to me_clients_num Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit a93218e14c50e89c1846a8b7849c79b78f58be87 Author: Tomas Winkler Date: Wed May 25 17:28:23 2011 +0300 staging: mei: mei_dev - kill unused members remove write only/unsed variables mei_dev.write_hang and mei_io_lis.tdevice_extension Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit eb9af0acec3858d835276935df5d5eecd62535d0 Author: Tomas Winkler Date: Wed May 25 17:28:22 2011 +0300 staging: mei: mei_dev - use type bool instead of int use type bool for boolean variables in struct mei_dev this should save some space providing boolean is 8 bits Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit c95efb741f1db9c804a582a3ba52413b9cbd8f7f Author: Tomas Winkler Date: Wed May 25 17:28:21 2011 +0300 staging: mei: fix mei driver namespace All global functions must start with mei_ to reduce the risk of name colisions Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 106fb49f72602470bae3c83d1899156768219aa2 Author: Tomas Winkler Date: Wed May 25 17:28:20 2011 +0300 staging: mei: mei_dev.h: don't break lines where not needed. Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 292cb18a802c21434206b578d12b05793950cad9 Author: Jouni Malinen Date: Mon Jun 27 18:33:40 2011 +0300 ath6kl: Add PMKSA cache management commands Implement cfg80211_ops set_pmksa, del_pmksa, and flush_pmksa to enable PMKSA caching support. kvalo: backported from ath6kl-cleanup tree Signed-off-by: Jouni Malinen Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit 63d8916034ef2f577a9662f2a39e2667be75ed37 Author: Kalle Valo Date: Mon Jun 13 12:08:39 2011 +0300 ath6kl: testmode support Add testmode support for running low level hardware tests. The testmode is enabled by setting testmode module parameter to 1. For now only a simple command passing is supported. More advanced support will be implemented later. Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit e59f0aa71f5d2fdc144259ad80d050c02c3dc14c Author: Kalle Valo Date: Mon Jun 13 12:08:28 2011 +0300 ath6kl: export firmware version to user space cfg80211 exports wiphy->fw_version to user space via ethtool interface. The obligatory screenshot: $ sudo ethtool -i wlan0 driver: ath6kl_hifdev version: 2.6.39-rc4+ firmware-version: 3:1:1:149 bus-info: mmc0:0001:1 $ Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit 817bee1068911679b90420d7cb688ef9c73b25bd Author: Jesper Juhl Date: Fri Jun 24 00:42:09 2011 +0200 Remove unneeded version.h includes from drivers/staging/ath6kl/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/staging/ath6kl/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit b42a7b1bc7c0f535dfe35b2c934f239c60bb8d30 Author: Kalle Valo Date: Mon Jun 13 11:54:18 2011 +0300 ath6kl: cache firmware Drivers should not request firmware during resume. Fix ath6kl to cache the firmware instead. Signed-off-by: Kalle Valo Cc: stable [3.0] Signed-off-by: Greg Kroah-Hartman commit 98ab5c7755b5cc9e1a8f2a57ccb22eac5e13ec50 Author: Kalle Valo Date: Mon Jun 13 11:54:06 2011 +0300 ath6kl: fix crash when interface is closed but scan is ongoing When ath6kl module was resumed while a scan was ongoing, for example during suspend, the driver would crash in ar6k_cfg80211_scanComplete_event(): [26581.586440] Call Trace: [26581.586440] [] ? ar6k_cfg80211_scanComplete_event+0xaa/0xaa [ath6kl] [26581.586440] [] wmi_iterate_nodes+0xb/0xd [ath6kl] [26581.586440] [] ar6k_cfg80211_scanComplete_event+0x48/0xaa [ath6kl] [26581.586440] [] ar6000_close+0x77/0x7e [ath6kl] [26581.586440] [] __dev_close_many+0x87/0xab [26581.586440] [] dev_close_many+0x54/0xab [26581.586440] [] rollback_registered_many+0xa5/0x19e [26581.586440] [] rollback_registered+0x23/0x2f [26581.586440] [] unregister_netdevice_queue+0x4c/0x69 [26581.586440] [] unregister_netdev+0x18/0x1f [26581.586440] [] ar6000_destroy+0xf8/0x115 [ath6kl] [26581.586440] [] ar6k_cleanup_module+0x20/0x29 [ath6kl] [26581.586440] [] sys_delete_module+0x181/0x1d9 [26581.586440] [] ? lock_release_holdtime+0x2b/0xcd [26581.586440] [] ? sys_munmap+0x3b/0x42 [26581.586440] [] ? restore_all+0xf/0xf [26581.586440] [] sysenter_do_call+0x12/0x32 [26581.586440] Code: 89 53 6c 75 07 89 d8 e8 c0 ff ff ff 89 f0 e8 2c f2 a9 c7 5b 5e 5d c3 55 89 e5 57 56 53 89 c3 83 ec 08 89 55 f0 8d 78 04 89 4d ec <8b> b0 b8 00 00 00 46 89 b0 b8 00 00 00 89 f8 e8 ae ed a9 c7 8b Fix the function not to iterate nodes when the scan is aborted. The nodes are already freed when the module is being unloaded. Patch "ath6kl: Fix a kernel panic furing suspend/resume" tried to fix this already but it wasn't enough as a pointer was still used even after the null check. This patch removes the null check entirely as the wmi structure is not accessed anymore during module unload. Also fix a bug where the status was checked as a bitfield with '&' operator. But it's not a bitfield, just a regular (enum like) value. Signed-off-by: Kalle Valo Cc: stable [3.0] Signed-off-by: Greg Kroah-Hartman commit c5274ab09747d0ef829f9b8f040756758e5de55c Author: Greg Dietsche Date: Mon Jun 13 13:11:47 2011 -0500 staging: remove unnecessary code Compile tested. remove unnecessary code that matches this coccinelle pattern if (...) return ret; return ret; Signed-off-by: Greg Dietsche Acked-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 9996059d8bab60635ab662c23d85222af5402ced Author: Roland Vossen Date: Thu Jun 9 16:45:01 2011 +0200 staging: brcm80211: change wl_cfg80211_suspend corresponding to cfg80211 Change wl_cfg80211_suspend in fullmac to meet cfg80211 interface update. Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 73d924bfe384af21b67f25698bde925f9b02e795 Author: Arend van Spriel Date: Thu Jun 9 16:45:00 2011 +0200 staging: brcm80211: fix checkpatch errors in brcmsmac driver Several source files in brcmsmac driver have checkpatch errors that have been removed (see below). ERROR: spaces required around that ':' (ctx:VxV) + (u8)NPHY_RSSI_SEL_TSSI_5G:(u8)NPHY_RSSI_SEL_TSSI_2G; -- ERROR: code indent should use tabs where possible + ^Ierr = initvars_table(base, vp, vars, count);$ -- Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 835ef44c60bf36411dfaf37b43f5058214bbc016 Author: Arend van Spriel Date: Thu Jun 9 16:44:59 2011 +0200 staging: brcm80211: fix checkpatch errors from main.c The softmac source file main.c was passed through checkpatch to see what issues against coding style are still present. This patch removes the checkpatch errors listed below. ERROR: trailing whitespace +^Imemcpy(wlc->default_bss->rateset.rates, rs.rates, $ -- ERROR: spaces required around that ':' (ctx:VxV) + pval = arg ? (int *)arg:NULL; -- Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit a7c551bc9f8ac1c73536043c19ea8160c8b3549c Author: Arend van Spriel Date: Thu Jun 9 16:44:58 2011 +0200 staging: brcm80211: remove checkpatch errors found in fullmac A checkpatch run was done over the complete source files to determine how much coding style issues there are in the driver. This patch fixes the checkpatch errors in fullmac driver brcmfmac listed below. ERROR: do not initialise globals to 0 or NULL +uint dhd_poll = false; -- ERROR: do not use assignment in if condition + if (!ifp && !(ifp = kmalloc(sizeof(dhd_if_t), GFP_ATOMIC))) { -- ERROR: do not use assignment in if condition + if (unlikely(!(wl_cfg80211_dev && \ -- ERROR: do not initialise statics to 0 or NULL + static bool iscan_pass_abort = false; -- Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 1c4c54ba205dc4c1b88e64385eb1aa35fefbc12e Author: Roland Vossen Date: Thu Jun 9 16:44:57 2011 +0200 staging: brcm80211: replaced wlc_ by brcms_c_, part 2 Code cleanup. Function renaming. Triggered by feedback comment from John Linville, just like the other function renames that preceded this patch. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f52a0ad0ac1c88a8f02fa0cbf4181d3fe9a11ccb Author: Roland Vossen Date: Thu Jun 9 16:44:56 2011 +0200 staging: brcm80211: further replaced wlc_ by brcmsmac_c_ Code cleanup. Renamed functions. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit bddf5b14c3f1a8a53343b4e8ce4c4288aef65339 Author: Roland Vossen Date: Thu Jun 9 16:44:55 2011 +0200 staging: brcm80211: removed superfluous forward struct declarations Code cleanup. Signed-off-by: Roland Vossen Reported-by: Julian Calaby Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit fe741e5e4d4cf4d5879284885d9e1bfd701b945d Author: Roland Vossen Date: Thu Jun 9 16:44:54 2011 +0200 staging: brcm80211: replaced wlc_ by brcms_c_ Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit c654fce655275b02e457c67c3716961750d207a8 Author: Roland Vossen Date: Thu Jun 9 16:44:53 2011 +0200 staging: brcm80211: replaced bmac acronym by brcms_b_ Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit f212595d5e41f8790560353e35a8143ba1de022e Author: Sukesh Srikakula Date: Thu Jun 9 16:44:51 2011 +0200 staging: brcm80211: Fix for suspend issue in brcmfmac driver Issue with disconnect at the time of suspend is fixed by properly setting connection status bits maintained by brcmfmac driver. Signed-off-by: Sukesh Srikakula Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit c4daa849f3bf2b80cf16042311ca3377f145ca24 Author: Roland Vossen Date: Thu Jun 9 16:44:50 2011 +0200 staging: brcm80211: fixed double #include problem Code cleanup. Removed one redundant include and reshuffled #include order as to include Linux header files first. Reported-by: julie Sullivan Signed-off-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit af34b024e28ebef7d4a5b58de3f07936f50466e9 Author: Arend van Spriel Date: Thu Jun 9 16:44:49 2011 +0200 staging: brcm80211: remove unused fields from struct si_info Two fields were not used in the driver code so they have been removed from struct si_info definition. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 62676463f27e25972c1cec779233ed5544d2c2ba Author: Arend van Spriel Date: Thu Jun 9 16:44:48 2011 +0200 staging: brcm80211: remove device id parameter from ai_attach() The device id is passed to ai_attach() and subsequent functions without actually being used. It can be removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 44c069ec4c2e7c139202487c8ab6949f1d5f30b7 Author: Arend van Spriel Date: Thu Jun 9 16:44:47 2011 +0200 staging: brcm80211: remove d11regs_t parameter from wlc_tbtt function The function wlc_tbtt() has variable regs as parameter, but it is not used. Parameter has been removed from the function. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 206c5a43563e960fb0dd8bde37b6ad4fcb9ba679 Author: Arend van Spriel Date: Thu Jun 9 16:44:46 2011 +0200 staging: brcm80211: remove regs variable from brcms_ioctl function This variable was declared and initialized but never used so it has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 0a76cd592c8c62bce4a76a08a6932c3c49962646 Author: Arend van Spriel Date: Thu Jun 9 16:44:45 2011 +0200 staging: brcm80211: remove 'used' keyword from function ai_ispcie() The function ai_ispcie() is a static function that is currently being called from the c sources in the driver. Side-effect of the keyword is that warning will suppressed when this function is no longer used. As there is no assembly code using this function, the keyword is removed. Signed-off-by: Arend van Spriel Reviewed-by: Franky Lin Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 1baaacd9d698d6a2c7644784e11db4b135609fdb Author: Franky Lin Date: Thu Jun 9 16:44:44 2011 +0200 staging: brcm80211: Remove flags from wl_is_nonetwork Remove this debug only variable in fullmace driver to avoid compile warning when BCMDBG is off Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 3bec7bb9356f7def653c49f0f56b5962a292a126 Author: Roland Vossen Date: Thu Jun 9 16:44:43 2011 +0200 staging: brcm80211: #include reduction Code cleanup. Number of includes has been reduced by only including what is necessary. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit f99f8a7299a049b8df7053c41cdbcfe72e6f1f24 Author: Roland Vossen Date: Thu Jun 9 16:44:42 2011 +0200 staging: brcm80211: cleaned brcmu_utils.h Code cleanup. Moved softmac specific definitions into brcmsmac/types.h Removed unused definitions. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 939e1ef5d92920b2056c5d63618c8f998ae942e9 Author: Roland Vossen Date: Thu Jun 9 16:44:41 2011 +0200 staging: brcm80211: moved typedefs to decrease header file dependencies Code cleanup. Moved the typedefs to brcmsmac/types.h for source files that only require opaque pointer definitions. Next patches will decrease the number of #includes for each file. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Reviewed-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 40fb79c8a88625504857d44de1bc89dc0341e618 Author: Nicolas Pitre Date: Sun Jun 19 23:36:03 2011 -0400 ARM: add a kuser_cmpxchg64 user space helper Some user space applications are designed around the ability to perform atomic operations on 64 bit values. Since this is natively possible only with ARMv6k and above, let's provide a new kuser helper to perform the operation with kernel supervision on pre ARMv6k hardware. Signed-off-by: Nicolas Pitre Tested-by: Dave Martin commit a59d6b91cbca52235e3ed9f7f9e34c4f2f3e1996 Author: Tatyana Brokhman Date: Tue Jun 28 16:33:53 2011 +0300 usb: gadget: add streams support to the gadget framework This patch defines necessary fields to support streaming for USB3.0. It implements a new function, called usb_ep_autoconfig_ss(), to be used instead of the existing usb_ep_autoconfig() when working in SuperSpeed mode and there is a need to search for an endpoint according to the number of required streams. [ balbi@ti.com : slight changes to commit log ] Signed-off-by: Maya Erez Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 7c884fe4d74d17efc83b19f3dc898a75f03859e9 Author: Tatyana Brokhman Date: Tue Jun 28 16:33:52 2011 +0300 usb: gadget: coding style fix fix the coding style of a few switches on the gadget framework. [ balbi@ti.com : add a commit log ] Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit ea2a1df7b2b1de839a72217d85bfb4b7b049010c Author: Tatyana Brokhman Date: Tue Jun 28 16:33:50 2011 +0300 usb: gadget: use config_ep_by_speed() instead of ep_choose() Remove obsolete functions: 1. ep_choose() 2. usb_find_endpoint() Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 48767a4e8263620c347c3fa17812c943dd0fc2fa Author: Tatyana Brokhman Date: Tue Jun 28 16:33:49 2011 +0300 usb: gadget: configure endpoint according to gadget speed Add config_ep_by_speed() to configure the endpoint according to the gadget speed. Using this function will spare the FDs from handling the endpoint chosen descriptor. Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 72c973dd2b01b212a159faa330a2bc641a3ed809 Author: Tatyana Brokhman Date: Tue Jun 28 16:33:48 2011 +0300 usb: gadget: add usb_endpoint_descriptor to struct usb_ep Change usb_ep_enable() prototype to use endpoint descriptor from usb_ep. This optimization spares the FDs from saving the endpoint chosen descriptor. This optimization is not full though. To fully exploit this change, one needs to update all the UDCs as well since in the current implementation each of them saves the endpoint descriptor in it's internal (and extended) endpoint structure. Signed-off-by: Tatyana Brokhman Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 0f91349b89f37dfad7b77f7829a105b6a0f526ec Author: Sebastian Andrzej Siewior Date: Tue Jun 28 16:33:47 2011 +0300 usb: gadget: convert all users to the new udc infrastructure peripheral drivers are using usb_add_gadget()/usb_del_gadget() to register/unregister to the udc-core. The udc-core will take the first available gadget driver and attach function driver which is calling usb_gadget_register_driver(). This is the same behaviour we have right now. Only dummy_hcd was tested, the others were compiled tested. Cc: Alan Stern Cc: Anton Tikhomirov Cc: Ben Dooks Cc: Dan Carpenter Cc: Darius Augulis Cc: Eric Miao Cc: Jingoo Han Cc: Kukjin Kim Cc: Kuninori Morimoto Cc: Li Yang Cc: Michael Hennerich Acked-by: Mike Frysinger Cc: Nicolas Ferre Cc: Pavankumar Kondeti Cc: Roy Huang Cc: Russell King Cc: Toshiharu Okada Cc: Xiaochen Shen Cc: Yoshihiro Shimoda Cc: Yuan-Hsin Chen Cc: cxie4 Cc: linux-geode@lists.infradead.org Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 2ccea03a8f7ec93641791f2760d7cdc6cab6205f Author: Felipe Balbi Date: Tue Jun 28 16:33:46 2011 +0300 usb: gadget: introduce UDC Class this class will be used to abstract away several of the duplicated operations scattered among the USB gadget controller drivers. Later, we can add an atomic notifier to tell interested drivers about what's happening with the controller. Notifications such as suspend, resume, enumerated, etc. will be useful, at a minimum, for implementing usb charger detection. As part of the converting process usb_gadget_probe_driver() is no longer part of each udc but pushed into the ->stap() callback. The same for his couterpart. The core is currently set explicit to 'n'. It will be changed to 'y' once all users are converted since it provides functions which clash with other drivers. Signed-off-by: Felipe Balbi Signed-off-by: Sebastian Andrzej Siewior Acked-by: Michal Nazarewicz Signed-off-by: Greg Kroah-Hartman commit 3be3fdb58ad22f67c5fd12548c88cefe3f726588 Merge: 77b7023 5ee0a58 Author: John W. Linville Date: Tue Jun 28 13:53:32 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-tx.c commit 6ae77e6b6ae20c280df8ca78e9c9d9a8ccfe7a98 Merge: 1e5216e f01c22f Author: Keith Packard Date: Tue Jun 28 10:29:47 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit aef05294df7ac2b55920dd40977bf9835d4bf3f1 Author: Lars-Peter Clausen Date: Mon Jun 27 17:04:02 2011 +0200 ASoC: Blackfin: Add machine driver for EVAL-ADAV80X boards Add a machine driver to support the EVAL-ADAV801 and EVAL-ADAV803 boards connected to a Analog Devices BF5XX evaluation board. Signed-off-by: Lars-Peter Clausen Acked-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit cc52688a08880021d31a109f36ee4a78c10ba214 Author: Lars-Peter Clausen Date: Mon Jun 27 17:04:01 2011 +0200 ASoC: Add ADAV80x codec driver This patch adds support for the Analog Devices ADAV801 and ADAV803 audio codec. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 9331b6261058eb85ae7c57ab8ac279e7fdaa9f04 Author: Yongqiang Yang Date: Tue Jun 28 10:19:05 2011 -0400 ext4: quiet 'unused variables' compile warnings Unused variables was deleted. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit f86186b44b4164600cce03d0d93ad48ec21fa429 Author: Eric Sandeen Date: Tue Jun 28 10:01:31 2011 -0400 ext4: refactor duplicated block placement code I found that ext4_ext_find_goal() and ext4_find_near() share the same code for returning a coloured start block based on i_block_group. We can refactor this into a common function so that they don't diverge in the future. Thanks to adilger for suggesting the new function name. Signed-off-by: Eric Sandeen Signed-off-by: "Theodore Ts'o" commit 573084995966f667d89087b0e6d6f610ed3aae87 Author: Mike Williams Date: Wed Jun 22 06:09:43 2011 +0000 powerpc/4xx: Update Canyonlands and Glacier boards DTS to add HW RNG support This will allow the new HW RNG driver to bind on these boards Signed-off-by: Mike Williams Signed-off-by: Josh Boyer commit 61d1baaea25dbcc22e03604f4d75e151853f574e Author: Josh Boyer Date: Tue Jun 21 08:20:07 2011 -0400 ppc4xx: Add crypto and RNG entries to Sequoia DTS The Sequoia board has a Security function IP block on it that contains a TRNG. Add the crypto and rng portions of that IP block to the DTS. Signed-off-by: Josh Boyer commit 2342aa282b59f028cf0850b483b34587db2c22b0 Author: Russell King Date: Sun Jun 26 10:04:15 2011 +0100 ARM: entry: shark: don't directly reference registers in macros Directly referencing registers in macros makes assembly code harder to change, because the macros have side effects which are non-obvious. Use the provided 'base' register rather than directly referencing r4. Signed-off-by: Russell King commit b6fcd313c9db4f4c4feaf9d5d48b293d5fa27061 Author: Russell King Date: Sun Jun 26 10:32:05 2011 +0100 ARM: entry: remove unused irq_prio_table macro Platforms provide an empty irq_prio_table macro, and as nothing uses this macro, it can simply be removed. Signed-off-by: Russell King commit e1f91f82b8bb031fe1b7731fb3666fa68c97fd38 Author: Vitaliy Ivanov Date: Mon Jun 27 19:07:08 2011 +0300 treewide: fix kernel-doc warnings Fix 'make htmldocs' warnings: Warning(/include/linux/hrtimer.h:153): No description found for parameter 'clockid' Warning(/include/linux/device.h:604): Excess struct/union/enum/typedef member 'of_match' description in 'device' Warning(/include/net/sock.h:349): Excess struct/union/enum/typedef member 'sk_rmem_alloc' description in 'sock' Signed-off-by: Vitaliy Ivanov Acked-by: Grant Likely Acked-by: David S. Miller Acked-by: Randy Dunlap Signed-off-by: Jiri Kosina commit ff2b7e2a3fdb341a235e0b2eccc3c8914d26c1fb Author: Takashi Iwai Date: Tue Jun 28 08:59:30 2011 +0200 ALSA: hda - Fix warnings with CONFIG_SND_POWER_SAVE=n Use static inline for dummy function to fix the warnings like below sound/pci/hda/patch_sigmatel.c: In function ‘stac92xx_init’: sound/pci/hda/patch_sigmatel.c:4387:3: warning: statement with no effect sound/pci/hda/patch_sigmatel.c: In function ‘stac92xx_resume’: sound/pci/hda/patch_sigmatel.c:4927:3: warning: statement with no effect Signed-off-by: Takashi Iwai commit 880a050f4ac4399c9da4aea3ca19a701f9a727e0 Author: Stephen Rothwell Date: Tue Jun 28 16:50:39 2011 +1000 ALSA: hda - remove SND_HDA_POWER_SAVE protection of struct hda_loopback_check to fix build problems when it is disabled. Signed-off-by: Stephen Rothwell Signed-off-by: Takashi Iwai commit 9174fc8f111982e024a00512c521ad8f1056fccb Author: Paul Mundt Date: Tue Jun 28 15:25:36 2011 +0900 serial: sh-sci: Fix up pretty name printing for port IRQs. Presently these were all using the same static string with no regard to dev_name() and the like. This implements a bit of rework to name the IRQ dynamically, as it should have been doing all along anyways. Signed-off-by: Paul Mundt commit 213ade8ca8c854435d99e4d2927655b2ae4191e9 Author: Jesse Gross Date: Fri Jun 24 14:24:35 2011 +0000 vmxnet3: Enable GRO support. When receiving packets from another guest on the same hypervisor, it's generally possible to receive large packets because no segmentation is necessary and these packets are handled by LRO. However, when doing routing or bridging we must disable LRO and lose this benefit. In these cases GRO can still be used and it is very effective because the packets which are segmented in the hypervisor are received very close together and can easily be merged. CC: Shreyas Bhatewara CC: Scott Goldman CC: VMware PV-Drivers Signed-off-by: Jesse Gross Signed-off-by: Scott J. Goldman Signed-off-by: David S. Miller commit 23241d43eac88f63a7f0bf4d5c12bbc496651585 Author: Paul Mundt Date: Tue Jun 28 13:55:31 2011 +0900 serial: sh-sci: Kill off per-port enable/disable callbacks. Ultimately we want everything to be going through the clock framework and runtime pm, so kill off the per-port callbacks that enabled ports to bypass the common infrastructure. Signed-off-by: Paul Mundt commit 7f405f9c3117acfa8a9775c467ab433b23abc5a7 Author: Paul Mundt Date: Tue Jun 28 13:47:40 2011 +0900 serial: sh-sci: Add missing module description/author bits. Signed-off-by: Paul Mundt commit 3127c6b225c6893bdfcd4db64d4316ce317fc10f Author: Paul Mundt Date: Tue Jun 28 13:44:37 2011 +0900 serial: sh-sci: Regtype probing doesn't need to be fatal. This was using a BUG_ON(), but it's not strictly necessary, so relax the constraints a bit. Signed-off-by: Paul Mundt commit 95cab7386bef62f8c7535d4726573ce230778e7b Author: Jon Mason Date: Mon Jun 27 07:48:11 2011 +0000 vxge: remove unnecessary reads of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 1a10ccae9003826cee6f2c625fa4caf51cfc0f40 Author: Jon Mason Date: Mon Jun 27 07:46:56 2011 +0000 sky2: remove unnecessary reads of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Also, pci_is_pcie is a better way of determining if the device is PCIE or not (as it uses the same saved PCIE capability offset). Signed-off-by: Jon Mason Acked-by: Stephen Hemminger Signed-off-by: David S. Miller commit e44daaded19baf8b7cf9ab3dedad8a01b8c49251 Author: Jon Mason Date: Mon Jun 27 07:46:31 2011 +0000 r8169: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. Use the value from pci_dev instead of checking in the driver and saving it off the the driver specific structure. Also, it will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit d3aa0cb44f2cfcdfa6df1bd40b9c182b35528849 Author: Jon Mason Date: Mon Jun 27 07:45:44 2011 +0000 niu: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 77c98e6a7a3ab76340b315d31fe1edded17cba15 Author: Jon Mason Date: Mon Jun 27 07:45:12 2011 +0000 bnx2x: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Also, pci_is_pcie is a better way of determining if the device is PCIE or not (as it uses the same saved PCIE capability offset). Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit e82760e7d6498d24d1a92f22767ba578c8980a6d Author: Jon Mason Date: Mon Jun 27 07:44:43 2011 +0000 bnx2: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Also, pci_is_pcie is a better way of determining if the device is PCIE or not (as it uses the same saved PCIE capability offset). Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit bdaae04c65ef88645f50dabb43992033c754c4a7 Author: Jon Mason Date: Mon Jun 27 07:44:01 2011 +0000 igb: remove unnecessary reads of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 353064de8af3bf46757376db66c29fa87a9fda3a Author: Jon Mason Date: Mon Jun 27 07:43:47 2011 +0000 e1000e: remove unnecessary reads of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 6532e9cb33221a31c8514441a972486af713ad6e Author: Jon Mason Date: Mon Jun 27 07:42:49 2011 +0000 cxgb3: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit a875a4c7404c8e259236b650136b8a603923daf9 Author: Jon Mason Date: Mon Jun 27 07:42:17 2011 +0000 mlx4: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 708ebb3a51489e70bc2b67b2772deea336eba849 Author: Jon Mason Date: Mon Jun 27 12:56:50 2011 +0000 tg3: remove unnecessary read of PCI_CAP_ID_EXP The PCIE capability offset is saved during PCI bus walking. Use the value from pci_dev instead of checking in the driver and saving it off the the driver specific structure. It will remove an unnecessary search in the PCI configuration space if this value is referenced instead of reacquiring it. v2 of the patch re-adds the PCI_EXPRESS flag and adds comments describing why it is necessary. [ pdev->pcie_cap --> pci_pcie_cap(pdev) -DaveM ] Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit ec0d75518cb06261f1823fa2713fe52b9b26455e Author: Kuninori Morimoto Date: Thu Jun 23 16:02:38 2011 +0000 net: sh_eth: tidyup compile warning This patch tidyup below warning ${LINUX}/drivers/net/sh_eth.c:1773: warning: 'mdp' may be used uninitialized in this function Cc: Yoshihiro Shimoda Signed-off-by: Kuninori Morimoto Signed-off-by: David S. Miller commit 72e85c45b9541e1f3d233e775da1dc6f68b85867 Author: Jesse Gross Date: Thu Jun 23 13:04:39 2011 +0000 vmxnet3: Convert to new vlan model. This converts the vmxnet3 driver to use the new vlan model. In doing so it fixes missing tags in tcpdump and failure to do checksum offload when tx vlan offload is disabled. CC: Shreyas Bhatewara CC: VMware PV-Drivers Signed-off-by: Jesse Gross Signed-off-by: Scott J. Goldman Signed-off-by: David S. Miller commit cfbf7586bc07cd6d14cd93ca56d8a3f90e248625 Author: Mike Frysinger Date: Fri Jun 24 04:33:02 2011 +0000 can: bfin_can: auto-calculate accessor sizes Since we have a struct that defines the sizes of the registers, we don't need to explicitly use the 16bit read/write helpers. Let the code figure out which size access to make based on the size of the C type. There should be no functional changes here. Signed-off-by: Mike Frysinger Acked-by: Wolfgang Grandegger Signed-off-by: David S. Miller commit 9118f08a7794e9a4908afbb0f9bc9455325a5631 Author: Mike Frysinger Date: Fri Jun 24 04:33:01 2011 +0000 can: bfin_can: simplify xmit id1 setup If we look closely, the 4 writes to TRANSMIT_CHL.id1 can be collapsed down into much simpler code. So do just that. This also fixes a build failure due to the I/O macros no longer getting pulled in. Their minor (and accidental) usage here gets dropped as part of the unification. Signed-off-by: Mike Frysinger Acked-by: Wolfgang Grandegger Acked-by: Kurt Van Dijck Signed-off-by: David S. Miller commit aca7a3acb19a7a4b1084f6f2411f6eaf52dd79c0 Author: Sergei Shtylyov Date: Thu Jun 23 04:44:30 2011 +0000 mlx4: use pci_dev->revision Commit 725c89997e03d71b09ea3c17c997da0712b9d835 (mlx4_en: Reporting HW revision in ethtool -i) added code to read the revision ID from the PCI configuration register while it's already stored by PCI subsystem in the 'revision' field of 'struct pci_dev'... While at it, move the code being changed a bit in order to not break the initialization sequence. Signed-off-by: Sergei Shtylyov Signed-off-by: David S. Miller commit 1e5216e43846b7758b2a04b3612c475608a4b708 Author: Hugh Dickins Date: Mon Jun 27 16:18:20 2011 -0700 drm/i915: more struct_mutex locking When auditing the locking in i915_gem.c (for a prospective change which I then abandoned), I noticed two places where struct_mutex is not held across GEM object manipulations that would usually require it. Since one is in initial setup and the other in driver unload, I'm guessing the mutex is not required for either; but post a patch in case it is. Signed-off-by: Hugh Dickins Cc: Chris Wilson Cc: Keith Packard Signed-off-by: Andrew Morton Signed-off-by: Keith Packard commit dae1e52cb1267bf8f52e5e47a80fab566d7e8aa4 Author: Amir Goldstein Date: Mon Jun 27 19:40:50 2011 -0400 ext4: move ext4_ind_* functions from inode.c to indirect.c This patch moves functions from inode.c to indirect.c. The moved functions are ext4_ind_* functions and their helpers. Functions called from inode.c are declared extern. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit 9f125d641beb898f5bf2fe69583192c18043517a Author: Theodore Ts'o Date: Mon Jun 27 19:16:04 2011 -0400 ext4: move common truncate functions to header file Move two functions that will be needed by the indirect functions to be moved to indirect.c as well as inode.c to truncate.h as inline functions, so that we can avoid having duplicate copies of the function (which can be a maintenance problem) without having to expose them as globally functions. Signed-off-by: "Theodore Ts'o" commit 1f7d1e77419050831a905353683807fa69a26625 Author: Theodore Ts'o Date: Mon Jun 27 19:16:02 2011 -0400 ext4: move __ext4_check_blockref to block_validity.c In preparation for moving the indirect functions to a separate file, move __ext4_check_blockref() to block_validity.c and rename it to ext4_check_blockref() which is exported as globally visible function. Also, rename the cpp macro ext4_check_inode_blockref() to ext4_ind_check_inode(), to make it clear that it is only valid for use with non-extent mapped inodes. Signed-off-by: "Theodore Ts'o" commit 192d8857427dd23707d5f0b86ca990c3af6f2d74 Author: Suresh Siddha Date: Thu Jun 23 11:19:29 2011 -0700 x86, mtrr: use stop_machine APIs for doing MTRR rendezvous MTRR rendezvous sequence is not implemened using stop_machine() before, as this gets called both from the process context aswell as the cpu online paths (where the cpu has not come online and the interrupts are disabled etc). Now that we have a new stop_machine_from_inactive_cpu() API, use it for rendezvous during mtrr init of a logical processor that is coming online. For the rest (runtime MTRR modification, system boot, resume paths), use stop_machine() to implement the rendezvous sequence. This will consolidate and cleanup the code. Signed-off-by: Suresh Siddha Link: http://lkml.kernel.org/r/20110623182057.076997177@sbsiddha-MOBL3.sc.intel.com Signed-off-by: H. Peter Anvin commit f740e6cd0cb5e7468e46831aeb4d9c30e03d5ebc Author: Tejun Heo Date: Thu Jun 23 11:19:28 2011 -0700 stop_machine: implement stop_machine_from_inactive_cpu() Currently, mtrr wants stop_machine functionality while a CPU is being brought up. As stop_machine() requires the calling CPU to be active, mtrr implements its own stop_machine using stop_one_cpu() on each online CPU. This doesn't only unnecessarily duplicate complex logic but also introduces a possibility of deadlock when it races against the generic stop_machine(). This patch implements stop_machine_from_inactive_cpu() to serve such use cases. Its functionality is basically the same as stop_machine(); however, it should be called from a CPU which isn't active and doesn't depend on working scheduling on the calling CPU. This is achieved by using busy loops for synchronization and open-coding stop_cpus queuing and waiting with direct invocation of fn() for local CPU inbetween. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/20110623182056.982526827@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Suresh Siddha Cc: Ingo Molnar Cc: Andrew Morton Cc: Linus Torvalds Cc: Peter Zijlstra Signed-off-by: H. Peter Anvin commit fd7355ba1e936487f5aae6fc058c6cb300e44a64 Author: Tejun Heo Date: Thu Jun 23 11:19:27 2011 -0700 stop_machine: reorganize stop_cpus() implementation Refactor the queuing part of the stop cpus work from __stop_cpus() into queue_stop_cpus_work(). The reorganization is to help future improvements to stop_machine() and doesn't introduce any behavior difference. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/20110623182056.897818337@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Suresh Siddha Cc: Ingo Molnar Cc: Andrew Morton Cc: Linus Torvalds Cc: Peter Zijlstra Signed-off-by: H. Peter Anvin commit 06c3df49521c1b112b777cc4946e5de057c814ba Author: Jamie Iles Date: Mon Jun 6 12:43:07 2011 +0100 clocksource: apb: Share APB timer code with other platforms The APB timers are an IP block from Synopsys (DesignWare APB timers) and are also found in other systems including ARM SoC's. This patch adds functions for creating clock_event_devices and clocksources from APB timers but does not do the resource allocation. This is handled in a higher layer to allow the timers to be created from multiple methods such as platform_devices. Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Jacob Pan Signed-off-by: Jamie Iles Signed-off-by: John Stultz commit a212d1a71deea10ba4f6de2aaac0221be34ddb29 Author: Tao Ma Date: Tue Jun 7 11:56:50 2011 +0800 jbd: Use WRITE_SYNC in journal checkpoint. In journal checkpoint, we write the buffer and wait for its finish. But in cfq, the async queue has a very low priority, and in our test, if there are too many sync queues and every queue is filled up with requests, and the process will hang waiting for the log space. So this patch tries to use WRITE_SYNC in __flush_batch so that the request will be moved into sync queue and handled by cfq timely. We also use the new plug, sot that all the WRITE_SYNC requests can be given as a whole when we unplug it. Reported-by: Robin Dong Signed-off-by: Tao Ma Signed-off-by: Jan Kara commit 8bb2b247124ba6093455d4aef26743b1bef27bc5 Author: Amir Goldstein Date: Mon Jun 27 17:10:28 2011 -0400 ext4: rename ext4_indirect_* funcs to ext4_ind_* We are going to move all ext4_ind_* functions to indirect.c. Before we do that, let's rename 2 functions called ext4_indirect_* to ext4_ind_*, to keep to the naming convention. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit 6d3321e8e2b3bf6a5892e2ef673c7bf536e3f904 Author: Suresh Siddha Date: Thu Jun 23 11:19:26 2011 -0700 x86, mtrr: lock stop machine during MTRR rendezvous sequence MTRR rendezvous sequence using stop_one_cpu_nowait() can potentially happen in parallel with another system wide rendezvous using stop_machine(). This can lead to deadlock (The order in which works are queued can be different on different cpu's. Some cpu's will be running the first rendezvous handler and others will be running the second rendezvous handler. Each set waiting for the other set to join for the system wide rendezvous, leading to a deadlock). MTRR rendezvous sequence is not implemented using stop_machine() as this gets called both from the process context aswell as the cpu online paths (where the cpu has not come online and the interrupts are disabled etc). stop_machine() works with only online cpus. For now, take the stop_machine mutex in the MTRR rendezvous sequence that gets called from an online cpu (here we are in the process context and can potentially sleep while taking the mutex). And the MTRR rendezvous that gets triggered during cpu online doesn't need to take this stop_machine lock (as the stop_machine() already ensures that there is no cpu hotplug going on in parallel by doing get_online_cpus()) TBD: Pursue a cleaner solution of extending the stop_machine() infrastructure to handle the case where the calling cpu is still not online and use this for MTRR rendezvous sequence. fixes: https://bugzilla.novell.com/show_bug.cgi?id=672008 Reported-by: Vadim Kotelnikov Signed-off-by: Suresh Siddha Link: http://lkml.kernel.org/r/20110623182056.807230326@sbsiddha-MOBL3.sc.intel.com Cc: stable@kernel.org # 2.6.35+, backport a week or two after this gets more testing in mainline Signed-off-by: H. Peter Anvin commit ff9893dc8aa622a4f122293a6861566a284edea5 Author: Amir Goldstein Date: Mon Jun 27 16:36:31 2011 -0400 ext4: split ext4_ind_truncate from ext4_truncate We are about to move all indirect inode functions to a new file. Before we do that, let's split ext4_ind_truncate() out of ext4_truncate() leaving only generic code in the latter, so we will be able to move ext4_ind_truncate() to the new file. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit 58c244009ef6ca450f0d787828a7f2f27651db5b Author: Igor Grinberg Date: Mon Jun 27 13:06:27 2011 -0700 Input: ads7846 - cleanup GPIO initialization Use gpio_request_one() instead of multiple gpiolib calls. This also simplifies error handling a bit. Signed-off-by: Igor Grinberg Signed-off-by: Dmitry Torokhov commit 11d0cf8859451d6336959204b2d4cc173dd1aa4e Author: Ping Cheng Date: Mon Jun 27 12:57:58 2011 -0700 Input: wacom - add 3 new models - 6A, 6B, and 97 Tested-by: Alex Tervoort for 6A Signed-off-by: David Foley Signed-off-by: Ping Cheng Signed-off-by: Dmitry Torokhov commit a001a8f3cedb0e3cb92ff3abdb3170df7da92d47 Author: Ping Cheng Date: Mon Jun 27 12:57:58 2011 -0700 Input: wacom - Wacom Bamboo Pen D4 has 1024 pressure levels D4 has 1024, not 512, pressure levels. Reported-by: David Foley Signed-off-by: Ping Cheng Signed-off-by: Dmitry Torokhov commit b23302052d96a3945e4c72aca77b5fd28884c353 Author: David Jander Date: Thu Jun 23 01:30:09 2011 -0700 Input: gpio_keys - move to late_initcall Initialize gpio_keys driver at late_initcall level, to give it a chance to work with GPIO expanders that might not be ready yet if we initialize the driver at module_init time. This is strictly a band-aid until there is a better way to specify inter-device dependencies. Signed-off-by: David Jander Acked-by: Grant Likely Signed-off-by: Dmitry Torokhov commit 6a592a7f4514cd744e154a146db1ab7af06a7ee7 Author: Axel Lin Date: Mon Jun 27 12:42:12 2011 -0700 Input: tnetv107x-ts - fix MODULE_ALIAS Remove the space between "platform:" prefix and the driver name. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 51a3db41e18254b938279cb4b160310e11a13d4f Author: Axel Lin Date: Mon Jun 27 12:38:43 2011 -0700 Input: tnetv107x-keypad - fix MODULE_ALIAS Remove the space between "platform:" prefix and the driver name. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 5993548725ba3f3deb2b90a681a62dbb7bd17961 Author: Jesper Juhl Date: Mon Jun 27 11:59:43 2011 -0700 Input: remove unneeded version.h includes It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/input/. This patch removes them. Signed-off-by: Jesper Juhl Acked-by: Mike Frysinger Acked-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit ed7a7e16724a4123fce1fc0ff1f5131a0596f189 Author: Robin Dong Date: Mon Jun 27 15:35:53 2011 -0400 ext4: fix incorrect error msg in ext4_ext_insert_index In function ext4_ext_insert_index when eh_entries of curp is bigger than eh_max, error messages will be printed out, but the content is about logical and ei_block, that's incorret. Signed-off-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit 61ab1a90d81b5b8a53fc221a3665715c61614fb7 Author: Jamie Iles Date: Mon Jun 27 13:32:33 2011 +0100 dt: document the of_serial bindings The of_serial bindings can be used to register a number of serial devices. Document this binding with all of the others. v3: remove device-type and clarify used-by-rtas Signed-off-by: Jamie Iles Acked-by: Arnd Bergmann Signed-off-by: Grant Likely commit 0f622e8cae379ee17e1ffe867336b74c5b16f958 Author: Tony Lindgren Date: Tue Mar 29 15:54:50 2011 -0700 omap2+: Rename timer-gp.c into timer.c to combine timer init functions We can keep everything sys_timer and gptimer.c related code in timer.c as the code will be very minimal. Later on we can also remove timer-mpu.c, as it can be called from omap4_timer_init function. This allows us to get rid of confusing existing files. We currently have timer-gp.c, timer-mpu.c, and patches have been posted to add dmtimer.c. There's no need to have these multiple files, we can put everything into timer.c. Signed-off-by: Tony Lindgren commit 0c336dc5ec492886620d4afdc252c63f32adbd0e Author: Tony Lindgren Date: Tue Mar 29 15:54:49 2011 -0700 omap2+: Remove omap2_gp_clockevent_set_gptimer This is no longer needed as we now just set the desired .timer in MACHINE_START. We can now also remove timer-gp.h. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit 3d05a3e80c44cb792fc8194fd9abdb431dea5420 Author: Tony Lindgren Date: Tue Mar 29 15:54:49 2011 -0700 omap2+: Use dmtimer macros for clocksource Use dmtimer macros for clocksource. As with the clockevent, this allows us to initialize the rest of dmtimer code later on. Note that eventually we will be initializing the timesource from init_early so sched_clock will work properly for CONFIG_PRINTK_TIME. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit 11a0186f3ef6aa6a9b8b81f5a501b6063fa47500 Author: Tony Lindgren Date: Tue Mar 29 15:54:49 2011 -0700 omap2+: Reserve clocksource and timesource and initialize dmtimer later There's no need to initialize the dmtimer framework early. Just mark the clocksource and timesource as reserved, and initialize dmtimer with an arch_initcall. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit 77b7023afe93b5e3bdcf2c0faaa5e5caafb6ef44 Author: Arik Nemtsov Date: Sun Jun 26 12:06:54 2011 +0300 mac80211: dynamic PS - don't enter PS when TX frames are pending Use the tx_frames_pending() driver callback to determine if Tx frames are pending for its internal queues. If so postpone the dynamic PS timeout to avoid interrupting Tx traffic. The commit e8306f989483e4b97a8b37dd268de6c8c6f35e75 enabled this behavior for drivers with IEEE80211_HW_PS_NULLFUNC_STACK. We enable this for all drivers supporting dynamic PS. This patch helps improve performance in noisy environments. Signed-off-by: Arik Nemtsov Signed-off-by: John W. Linville commit eef726994fc4ce2f9d0c880016bd104628ef44c9 Author: Geert Uytterhoeven Date: Sun Jun 26 10:19:44 2011 +0200 bcma: main.c needs to include m68k allmodconfig: drivers/bcma/main.c: In function ‘bcma_release_core_dev’: drivers/bcma/main.c:68: error: implicit declaration of function ‘kfree’ Signed-off-by: Geert Uytterhoeven -- http://kisskb.ellerman.id.au/kisskb/buildresult/4243344/ drivers/bcma/main.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) Signed-off-by: John W. Linville commit 6691678dca1057840d8f25ee038541d4e4100b17 Author: Sergei Shtylyov Date: Fri Jun 24 19:39:37 2011 +0400 iwlwifi: use pci_dev->revision, again Commit ff938e43d39e926de74b32a3656c190f979ab642 (net: use pci_dev->revision, again) already converted this driver to using the 'revision' field of 'struct pci_dev' but commit 084dd79172cb3aad11d2b7ee5628d57badca7c6e (iwlagn: move PCI related operations from probe and remove to PCI layer) has again added the code to read the PCI revision ID register... Signed-off-by: Sergei Shtylyov Signed-off-by: John W. Linville commit a5e5aa6cee4cdb967a1f1c33a31165062783ccea Author: Dan Carpenter Date: Fri Jun 24 16:33:35 2011 +0300 mwifiex: restore handling of NULL parameters Prior to a5ffddb70c5cab "mwifiex: remove casts of void pointers" the code assumed that the data_buf parameter could be a NULL pointer. The patch preserved some NULL checks but not consistently, so there was a potential for NULL dereferences and it changed the behavior. This patch restores the original behavior. Signed-off-by: Dan Carpenter Acked-by: Bing Zhao Signed-off-by: John W. Linville commit f6b4e4d476b890e1ddebbed8ec4924f9c2750a31 Author: Rajkumar Manoharan Date: Fri Jun 24 17:38:13 2011 +0530 ath9k: Fix locking issue during tx completion The received tx status of aggregated frame without BlockAck may cause deaf state in AR5416 cards. So the driver does a reset to recover. When this happens, we release the pcu_lock before doing a reset as ath_rest acquires pcu_lock. This is ugly and also not atomic. Fixing this addresses the TX DMA failure also. ath_tx_complete_aggr can be called from different paths which takes different variants of spin_lock. This patch also addresses the following warning. WARNING: at kernel/timer.c:1011 del_timer_sync+0x4e/0x50() Call Trace: [] warn_slowpath_common+0x7a/0xb0 [] warn_slowpath_null+0x15/0x20 [] del_timer_sync+0x4e/0x50 [] ath_reset+0x3e/0x210 [ath9k] [] ? _raw_spin_unlock_bh+0x1f/0x30 [] ath_tx_complete_aggr.isra.26+0x54a/0xa40 [ath9k] Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 428bc8c3960d2b18cb9f0d90cfe197ec9a822a54 Author: Stanislaw Gruszka Date: Fri Jun 24 11:34:34 2011 +0200 iwlagn: fix rmmod crash priv->bus.bus_specific pointer is used after priv structures was freed, in iwl_pci_remove(), what make ugly rmmod crash. This bug was introduced by current pci changes. On the way remove fake check, if prober error code is returned from .probe() function, .remove() will never be called be null drvdata. Signed-off-by: Stanislaw Gruszka Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 1d616b14cf3266684af46db614b7de03c7a8a538 Author: Joe Perches Date: Thu Jun 23 15:35:18 2011 -0700 rt2x00: Fix unspeficied typo Signed-off-by: Joe Perches Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit a806c558e01747b499201d2667818f03d79ef1e3 Author: Paul Stewart Date: Thu Jun 23 09:00:11 2011 -0800 mac80211: Drop DS Channel PARAM in directed probe Do not send DS Channel parameter for directed probe requests in order to maximize the chance that we get a response. Some badly-behaved APs don't respond when this parameter is included. Signed-off-by: Paul Stewart Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit ce2dd3c2d54494195e8820b2432eb47ca61ebdd7 Author: Sergei Shtylyov Date: Thu Jun 23 18:49:52 2011 +0400 ssb: use pci_dev->revision The bus scan code reads PCI revision ID from the PCI configuration register while it's already stored by PCI subsystem in the 'revision' field of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: John W. Linville commit 05b60d4e3796c25ae1c78b10d5676ab27062d9b4 Author: Mohammed Shafi Shajakhan Date: Thu Jun 23 20:14:29 2011 +0530 ath9k_hw: make use of the gain_table_entry macro Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit f68e20f0f8bc57dc91d132eaa66956e9ba5aafcf Author: Mohammed Shafi Shajakhan Date: Thu Jun 23 20:03:38 2011 +0530 ath9k_hw: Add carrier leak correction in desired gain calculation Cc: muddin@qca.qualcomm.com Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit dcfcbd590d91e8385eb554aaed419bdebaf4c72a Author: Rajkumar Manoharan Date: Thu Jun 23 13:39:13 2011 +0530 ath9k_hw: Fix false tx hung detection in AR9003 chips The edma based (AR9003 family) chips update tx status descriptors in a common ring buffer for all transmitted frames. Whenever tx interrupt is raised, the descriptors are processed and tx status index is moved. The complete tx stauts ring are updated with beacons tx status when there are no data frames to be sent for a period of time. In this state, transmitting data frames causes the driver to wait for the tx status on an incorrect tx status index though the status was updated by hw properly. The driver detects this condition as a h/w hang and does unnecessary chip resets. This issue was orginally reported in adhoc mode while sending frames after an idle time. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 15b4d843ab66bc0ac2cd46baa20a3ce9638604e6 Author: Arik Nemtsov Date: Thu Jun 23 01:15:27 2011 +0300 mac80211: reestablish mis-configured existing Rx BA sessions When forming a Rx BA session, sometimes the ADDBA response gets lost. This leads to a situation where the session is configured locally, but doesn't exist on the remote side. Subsequent ADDBA requests are declined by mac80211. Fix this by assuming the session state of the initiator is the correct one. When receiving an unexpected ADDBA request on a TID with an active Rx BA session, delete the existing one and establish a new session. Signed-off-by: Arik Nemtsov Acked-by: Johannes Berg Signed-off-by: John W. Linville commit daf4ce85cd5221a3609e68419d01730170975e94 Author: Randy Dunlap Date: Wed Jun 22 10:08:11 2011 -0700 bluetooth: uses crypto interfaces, select CRYPTO Recent changes to hci_core.c use crypto interfaces, so select CRYPTO to make sure that those interfaces are present. Fixes these build errors when CRYPTO is not enabled: net/built-in.o: In function `hci_register_dev': (.text+0x4cf86): undefined reference to `crypto_alloc_base' net/built-in.o: In function `hci_unregister_dev': (.text+0x4f912): undefined reference to `crypto_destroy_tfm' Signed-off-by: Randy Dunlap Signed-off-by: John W. Linville commit 8ee3108075c9e9e2701493a245a754b8b0db8e57 Author: Johannes Berg Date: Wed Jun 22 16:43:48 2011 +0200 mac80211: restrict advertised HW scan rates Advertise only user-requested bitrates in a HW scan. Note that the hw_scan API doesn't currently have a way of asking for a specific probe request bitrate, so we might end up using a bitrate that we don't advertise as supported. I'll fix that later. Also add a hexdump printk to hwsim to verify this. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 04b7dcf979d71e870683c804802e44287a802760 Author: Johannes Berg Date: Wed Jun 22 10:06:59 2011 +0200 wireless: unify QoS control field definitions Move all that mac80211 has into the generic ieee80211.h header file and use them. At the same time move them from mask+shift to just bits and rename them for consistent names. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e913d468308be1cce7cc8e6e6e997d54a403ce64 Author: Hauke Mehrtens Date: Tue Jun 21 20:53:20 2011 +0200 ssb: fix ssb clock rate according to broadcom source This fix was done according to si_clock_rate function in broadcom siutils.c Signed-off-by: Hauke Mehrtens Signed-off-by: John W. Linville commit f9fc51365d0cf66d1f95f47618566f27177ecbbc Author: Chaoming Li Date: Fri Jun 10 15:12:10 2011 -0500 rtlwifi: rtl8192de: Modify Kconfig and Makefile routines for new driver Set up Kconfig and Makefile for new driver for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit f34317db363636b50750d39e8a75873d4ee64cfa Author: Larry Finger Date: Fri Jun 10 15:11:55 2011 -0500 rtlwifi: Fix build problems introduced by merging rtl8192de These patches allow compilation of rtlwifi, rtl8192c_common, rtl8192ce, rtl8192cu and rtl8192se to compile after rtl8192de was added. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 674f0523ec07a7c716f5ed8a2debe6632be750f8 Author: Chaoming Li Date: Fri Jun 10 15:11:40 2011 -0500 rtlwifi: rtl8192de: Merge TX and RX routines Merge routines trx.c and trx.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit e501016884dc2112b3742045834302c8adfe3944 Author: Chaoming Li Date: Fri Jun 10 15:11:25 2011 -0500 rtlwifi: rtl8192de: Merge table routines Merge routines table.c and table.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit a7dbd3b50d09c0006babb2ba0bbdba4b0ede5c73 Author: Chaoming Li Date: Fri Jun 10 15:11:10 2011 -0500 rtlwifi: rtl8192de: Merge main (sw) routines Merge routines sw.c and sw.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit f219eff1e51aa598107c9deda0fa0f061371eded Author: Chaoming Li Date: Fri Jun 10 15:10:55 2011 -0500 rtlwifi: rtl8192de: Merge rf routines Merge routines rf.c and rf.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 3de1ef7304aeecbf666c02baacb173e08fa5cb43 Author: Chaoming Li Date: Fri Jun 10 15:10:40 2011 -0500 rtlwifi: rtl8192de: Merge register definitions Merge routines reg.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 7274a8c229805d5ab1228a2d7d8ed304fcfa2bc6 Author: Chaoming Li Date: Fri Jun 10 15:10:25 2011 -0500 rtlwifi: rtl8192de: Merge phy routines Merge routines phy.c and phy.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit f53d5a700694bd8eef081468fd936e0b174b4c94 Author: Chaoming Li Date: Fri Jun 10 15:10:10 2011 -0500 rtlwifi: rtl8192de: Merge led routines Merge routines led.c and led.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 3affdf42373e9f2913238c1881610a258b044648 Author: Chaoming Li Date: Fri Jun 10 15:09:55 2011 -0500 rtlwifi: rtl8192de: Merge hardware routines Merge routines hw.c and hw.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 985d4d3f6dced76f37c8c8d2528fcfe7773cc5f0 Author: Chaoming Li Date: Fri Jun 10 15:09:40 2011 -0500 rtlwifi: rtl8192de: Merge firmware routines Merge routines fw.c and fw.h for RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 4f01358e5b8a4b0f67cfc7bf785756193006de96 Author: Chaoming Li Date: Fri Jun 10 15:09:25 2011 -0500 rtlwifi: rtl8192de: Merge dynamic management routines Merge routines dm.c and dm.h for RTL8192DE. Signed-off-by: Larry Finger Signed-off-by: Chaoming_Li Signed-off-by: John W. Linville commit 23a8c61416955718dfa7ecbb88184b8307ef7c90 Author: Chaoming Li Date: Fri Jun 10 15:09:09 2011 -0500 rtlwifi: rtl8192de: Merge def.h Introduce routine def.h for rtl8192de. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit be8943a4457549ce507d170b8da8f8731042caa6 Merge: f70490e f775aa0 Author: John W. Linville Date: Mon Jun 27 15:03:40 2011 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit 479bf98c1c29b40d86e40a4e6e4944c2f03d9493 Author: Oleg Nesterov Date: Fri Jun 24 17:34:39 2011 +0200 ptrace: wait_consider_task: s/same_thread_group/ptrace_reparented/ wait_consider_task() checks same_thread_group(parent, real_parent), this is the open-coded ptrace_reparented(). __ptrace_detach() remains the only function which has to check this by hand, although we could reorganize the code to delay __ptrace_unlink. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit bb3696da89743d580f869142d0a6e6ba9b7fe89a Author: Oleg Nesterov Date: Fri Jun 24 17:34:23 2011 +0200 ptrace: kill real_parent_is_ptracer() in in favor of ptrace_reparented() Kill real_parent_is_ptracer() and update the callers to use ptrace_reparented(), after the previous patch they do the same. Remove the unnecessary ->ptrace != 0 check in get_signal_to_deliver(), if ptrace_reparented() == T then the task must be ptraced. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 0347e17739095c58c0194fed6a61aced3536d258 Author: Oleg Nesterov Date: Fri Jun 24 17:34:06 2011 +0200 ptrace: ptrace_reparented() should check same_thread_group() ptrace_reparented() naively does parent != real_parent, this means it returns true even if the tracer _is_ the real parent. This is per process thing, not per-thread. The only reason ->real_parent can point to the non-leader thread is that we have __WNOTHREAD. Change it to check !same_thread_group(parent, real_parent). It has two callers, and in both cases the current check does not look right. exit_notify: we should respect ->exit_signal if the exiting leader is traced by any thread from the parent thread group. It is the child of the whole group, and we are going to send the signal to the whole group. wait_task_zombie: without __WNOTHREAD do_wait() should do the same for any thread, only sys_ptrace() is "bound" to the single thread. However do_wait(WEXITED) succeeds but does not release a traced natural child unless the caller is the tracer. Test-case: void *tfunc(void *arg) { assert(ptrace(PTRACE_ATTACH, (long)arg, 0,0) == 0); pause(); return NULL; } int main(void) { pthread_t thr; pid_t pid, stat, ret; pid = fork(); if (!pid) { pause(); assert(0); } assert(pthread_create(&thr, NULL, tfunc, (void*)(long)pid) == 0); assert(waitpid(-1, &stat, 0) == pid); assert(WIFSTOPPED(stat)); kill(pid, SIGKILL); assert(waitpid(-1, &stat, 0) == pid); assert(WIFSIGNALED(stat) && WTERMSIG(stat) == SIGKILL); ret = waitpid(pid, &stat, 0); if (ret < 0) return 0; printf("WTF? %d is dead, but: wait=%d stat=%x\n", pid, ret, stat); return 1; } Note that the main thread simply does pid = fork(); kill(pid, SIGKILL); and then without the patch wait4(WEXITED) succeeds twice and reports WTERMSIG(stat) == SIGKILL. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 087806b1281563e4ae7a5bce3155f894af5f4118 Author: Oleg Nesterov Date: Wed Jun 22 23:10:26 2011 +0200 redefine thread_group_leader() as exit_signal >= 0 Change de_thread() to set old_leader->exit_signal = -1. This is good for the consistency, it is no longer the leader and all sub-threads have exit_signal = -1 set by copy_process(CLONE_THREAD). And this allows us to micro-optimize thread_group_leader(), it can simply check exit_signal >= 0. This also makes sense because we should move ->group_leader from task_struct to signal_struct. Signed-off-by: Oleg Nesterov Reviewed-by: Tejun Heo commit d4f7c511c1c2a67eb287987cf1ce9554149030e6 Author: Oleg Nesterov Date: Wed Jun 22 23:10:11 2011 +0200 do not change dead_task->exit_signal __ptrace_detach() and do_notify_parent() set task->exit_signal = -1 to mark the task dead. This is no longer needed, nobody checks exit_signal to detect the EXIT_DEAD task. Signed-off-by: Oleg Nesterov Reviewed-by: Tejun Heo commit e550f14dc6322e794d4e70825f63c9c99177ae8b Author: Oleg Nesterov Date: Wed Jun 22 23:09:54 2011 +0200 kill task_detached() Upadate the last user of task_detached(), wait_task_zombie(), to use thread_group_leader() and kill task_detached(). Signed-off-by: Oleg Nesterov Reviewed-by: Tejun Heo commit 0976a03e5ce8ec346e985f21046d7a75bb7fdffd Author: Oleg Nesterov Date: Wed Jun 22 23:09:39 2011 +0200 reparent_leader: check EXIT_DEAD instead of task_detached() Change reparent_leader() to check ->exit_state instead of ->exit_signal, this matches the similar EXIT_DEAD check in wait_consider_task() and allows us to cleanup the do_notify_parent/task_detached logic. task_detached() was really needed during reparenting before 9cd80bbb "do_wait() optimization: do not place sub-threads on ->children list" to filter out the sub-threads. After this change task_detached(p) can only be true if p is the dead group_leader and its parent ignores SIGCHLD, in this case the caller of do_notify_parent() is going to reap this task and it should set EXIT_DEAD. Signed-off-by: Oleg Nesterov Reviewed-by: Tejun Heo commit 8677347378044ab564470bced2275520efb3670d Author: Oleg Nesterov Date: Wed Jun 22 23:09:09 2011 +0200 make do_notify_parent() __must_check, update the callers Change other callers of do_notify_parent() to check the value it returns, this makes the subsequent task_detached() unnecessary. Mark do_notify_parent() as __must_check. Use thread_group_leader() instead of !task_detached() to check if we need to notify the real parent in wait_task_zombie(). Remove the stale comment in release_task(). "just for sanity" is no longer true, we have to set EXIT_DEAD to avoid the races with do_wait(). Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 9843a1e977977986d0a4c1000f2229b032572534 Author: Oleg Nesterov Date: Wed Jun 22 23:08:53 2011 +0200 __ptrace_detach: avoid task_detached(), check do_notify_parent() __ptrace_detach() relies on the current obscure behaviour of do_notify_parent(tsk) which changes tsk->exit_signal if this child should be silently reaped. That is why we check task_detached(), it is true if the task is sub-thread, or it is the group_leader but its exit_signal was changed by do_notify_parent(). This is confusing, change the code to rely on !thread_group_leader() or the value returned by do_notify_parent(). Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 45cdf5cc0703c537194588c63d53bad1f2539d36 Author: Oleg Nesterov Date: Thu Jun 23 19:06:50 2011 +0200 kill tracehook_notify_death() Kill tracehook_notify_death(), reimplement the logic in its caller, exit_notify(). Also, change the exec_id's check to use thread_group_leader() instead of task_detached(), this is more clear. This logic only applies to the exiting leader, a sub-thread must never change its exit_signal. Note: when the traced group leader exits the exit_signal-or-SIGCHLD logic looks really strange: - we notify the tracer even if !thread_group_empty() but do_wait(WEXITED) can't work until all threads exit - if the tracer is real_parent, it is not clear why can't we use ->exit_signal event if !thread_group_empty() -v2: do not try to fix the 2nd oddity to avoid the subtle behavior change mixed with reorganization, suggested by Tejun. Signed-off-by: Oleg Nesterov Reviewed-by: Tejun Heo commit 53c8f9f199b239668e6b1a907735ee323a0d1ccd Author: Oleg Nesterov Date: Wed Jun 22 23:08:18 2011 +0200 make do_notify_parent() return bool - change do_notify_parent() to return a boolean, true if the task should be reaped because its parent ignores SIGCHLD. - update the only caller which checks the returned value, exit_notify(). This temporary uglifies exit_notify() even more, will be cleanuped by the next change. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit 9a7b1501182477299e678b787e32fca5844c7ea1 Author: Randy Dunlap Date: Wed Jun 22 10:08:11 2011 -0700 Bluetooth: uses crypto interfaces, select CRYPTO Recent changes to hci_core.c use crypto interfaces, so select CRYPTO to make sure that those interfaces are present. Fixes these build errors when CRYPTO is not enabled: net/built-in.o: In function `hci_register_dev': (.text+0x4cf86): undefined reference to `crypto_alloc_base' net/built-in.o: In function `hci_unregister_dev': (.text+0x4f912): undefined reference to `crypto_destroy_tfm' Signed-off-by: Randy Dunlap Signed-off-by: Gustavo F. Padovan commit fc5070b527b8243e9f4369e4e79ab431a5a1cb79 Author: Linus Walleij Date: Mon Jun 27 18:19:30 2011 +0200 mach-ux500: fix USB build error The mach-ux500/usb.c was referencing DMA macros, but not including so it didn't compile. Fixed by a proper #include. Cc: Arnd Bergmann Cc: Mian Yousaf Kaukab Signed-off-by: Linus Walleij Signed-off-by: Arnd Bergmann commit ec3cdb5baedf6bb3852c531426c1e95a13671dff Author: Sanjeev Premi Date: Fri Jun 17 02:01:00 2011 +0530 OMAP2+: PM: fix section mismatch in pm_dbg_init() Fix the section mismatch warning: WARNING: vmlinux.o(.text+0x21118): Section mismatch in reference from the function pm_dbg_init() to the function .init.text:pwrdms_setup() The function pm_dbg_init() references the function __init pwrdms_setup(). This is often because pm_dbg_init lacks a __init annotation or the annotation of pwrdms_setup is wrong. Signed-off-by: Sanjeev Premi Signed-off-by: Kevin Hilman commit 59bec58373bc8324a2ee7d7355fe8499c8f6f602 Author: Kevin Hilman Date: Thu May 26 15:34:39 2011 -0700 OMAP3: PM debug: remove register dumping Remove OMAP3-specific register dumping feature from PM debug layer. This is removed because: - it's ugly - it's OMAP3-specific, and will obviously not scale to OMAP4+ - userspace /dev/mem-based tools (like omapconf) can do this much better Tested-by: Santosh Shilimkar Acked-by: Santosh Shilimkar Acked-by: Jean Pihet Signed-off-by: Kevin Hilman commit d3ad8434aa83ef7c88bc91edcfe012cdcbab9f3e Author: Tao Ma Date: Mon Jun 27 12:36:29 2011 -0400 jbd2: use WRITE_SYNC in journal checkpoint In journal checkpoint, we write the buffer and wait for its finish. But in cfq, the async queue has a very low priority, and in our test, if there are too many sync queues and every queue is filled up with requests, the write request will be delayed for quite a long time and all the tasks which are waiting for journal space will end with errors like: INFO: task attr_set:3816 blocked for more than 120 seconds. "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. attr_set D ffff880028393480 0 3816 1 0x00000000 ffff8802073fbae8 0000000000000086 ffff8802140847c8 ffff8800283934e8 ffff8802073fb9d8 ffffffff8103e456 ffff8802140847b8 ffff8801ed728080 ffff8801db4bc080 ffff8801ed728450 ffff880028393480 0000000000000002 Call Trace: [] ? __dequeue_entity+0x33/0x38 [] ? need_resched+0x23/0x2d [] ? thread_return+0xa2/0xbc [] ? jbd2_journal_dirty_metadata+0x116/0x126 [jbd2] [] ? jbd2_journal_dirty_metadata+0x116/0x126 [jbd2] [] __mutex_lock_common+0x14e/0x1a9 [] ? brelse+0x13/0x15 [ext4] [] __mutex_lock_slowpath+0x19/0x1b [] mutex_lock+0x1b/0x32 [] __jbd2_journal_insert_checkpoint+0xe3/0x20c [jbd2] [] start_this_handle+0x438/0x527 [jbd2] [] ? autoremove_wake_function+0x0/0x3e [] jbd2_journal_start+0xa1/0xcc [jbd2] [] ext4_journal_start_sb+0x57/0x81 [ext4] [] ext4_xattr_set+0x6c/0xe3 [ext4] [] ext4_xattr_user_set+0x42/0x4b [ext4] [] generic_setxattr+0x6b/0x76 [] __vfs_setxattr_noperm+0x47/0xc0 [] vfs_setxattr+0x7f/0x9a [] setxattr+0xb5/0xe8 [] ? do_filp_open+0x571/0xa6e [] sys_fsetxattr+0x6b/0x91 [] system_call_fastpath+0x16/0x1b So this patch tries to use WRITE_SYNC in __flush_batch so that the request will be moved into sync queue and handled by cfq timely. We also use the new plug, sot that all the WRITE_SYNC requests can be given as a whole when we unplug it. Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" Cc: Jan Kara Reported-by: Robin Dong commit d364b601163841c24287540ae3548d19a0d2932e Author: Mike Frysinger Date: Mon May 30 00:07:29 2011 -0400 doc: powerpc: drop +x perms on text file Signed-off-by: Mike Frysinger Signed-off-by: Jiri Kosina commit 0acd33d08988cef238619f99ba056be16aab443e Author: Nikanth Karthikesan Date: Fri Jun 10 14:27:04 2011 +0530 viafbdev: fix compilation warning for unused variable viafbdev: Fix compilation warning for unused variable for #ifdef MODULE Fix compilation warning when #ifdef MODULE drivers/video/via/viafbdev.c: In function ‘viafb_init’: drivers/video/via/viafbdev.c:2019: warning: unused variable ‘r’ Signed-off-by: Nikanth Karthikesan Signed-off-by: Jiri Kosina commit d5b55a8f79f77158334e2eff82ffb0eea74618f2 Author: Deepak Saxena Date: Thu Jun 9 15:03:03 2011 -0700 Update feature-removal-update.txt with 3.x versioning Update all future kernel version entries in feature-removal-schedule.txt with appropriate 3.x kernel numbering. Signed-off-by: Deepak Saxena Reviewed-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 4f574b7b1a1cc8aac617e938459e8f03a641e678 Author: Takashi Iwai Date: Mon Jun 27 16:17:07 2011 +0200 ALSA: hda - More volume-init fixes for ALC267 codec More similar fixes like previous commits: handle the exceptional case like ALC267 where no volume amp is found in ADC widget but in the capsrc widget instead. Also minor checks for avoiding possible erros: no connection-select when the pin has a single selection, and add beep verbs only when the 0x1d is used for beep. Signed-off-by: Takashi Iwai commit 7ec9c6ccc6007b14a916021d4ba7ffbcc7822ae3 Author: Takashi Iwai Date: Mon Jun 27 15:53:38 2011 +0200 ALSA: hda - Fix volume-init for ALC259 with invalid widget caps ALC259 seems to provide an invalid widget capability for the input-src selector widget. The widget shows the input-amp while it's a selector, and this confuses the current ALC882 initialization code that is used for ALC259, too. For fixing this, check the amp capability and handle the connection selection individually. Also, ALC259 has no mute bit in DAC volume, so we need to initialize it as ZERO instead of MUTE. Signed-off-by: Takashi Iwai commit 050ea75317f33e376cc413359c0319ad5cc86e2a Author: Takashi Iwai Date: Mon Jun 27 15:48:17 2011 +0200 ALSA: hda - Fix volume-init of ALC299 & co ALC269 and compatible codecs have the output volume in DACs, thus we can't use the ALC880's code as is. Fixed by checking the amp caps and picking up the right widget for initialization. Signed-off-by: Takashi Iwai commit 14497d31e65cca73c9814a1ff373ae294aae616b Author: Timur Tabi Date: Tue Jun 14 13:04:33 2011 +0000 powerpc/85xx: disable timebase synchronization under the hypervisor The Freescale hypervisor does not allow guests to write to the timebase registers (virtualizing the timebase register was deemed too complicated), so don't try to synchronize the timebase registers when we're running under the hypervisor. This typically happens when kexec support is enabled. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 2d05c392b8403d4a1becc8babd4b44465a758b64 Author: Prabhakar Kushwaha Date: Thu Jun 2 20:28:08 2011 +0000 powerpc/85xx: Add P1010RDB board support P1010RDB Overview ----------------- 1Gbyte DDR3 (on board DDR) 32Mbyte 16bit NOR flash 32Mbyte SLC NAND Flash 256 Kbit M24256 I2C EEPROM 128 Mbit SPI Flash memory I2C Board 128x8 bit memory SD/MMC connector to interface with the SD memory card 2 SATA interface 1 internal SATA connect to 2.5. 160G SATA2 HDD 1 eSATA connector to rear panel USB 2.0 x1 USB 2.0 port: connected via a UTMI PHY to Mini-AB interface. x1 USB 2.0 port: directly connected to Mini-AB interface Ethernet eTSEC1: Connected to RGMII PHY VSC8641XKO eTSEC2: Connected to SGMII PHY VSC8221 eTSEC3: Connected to SGMII PHY VSC8221 eCAN Two DB-9 female connectors for Field bus interface UART DUART interface: supports two UARTs up to 115200 bps for console display Signed-off-by: Poonam Aggrwal Signed-off-by: Prabhakar Kushwaha Signed-off-by: Kumar Gala commit 2e5460f31abdacb84af6c8e97671ade0d3bf291f Author: Timur Tabi Date: Thu Jun 23 11:16:47 2011 -0500 powerpc/86xx: enable the framebuffer console on the MPC8610 HPCD Enable framebuffer console support by default in the defconfig on the Freescale MPC8610 HPCD reference board. This allows the boot messages to be shown on the video display. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit c8bfa77b56fecbc2734f67d5265dbd216413501d Author: Timur Tabi Date: Thu Jun 23 06:16:48 2011 +0000 powerpc/86xx: improve calculation of DIU pixel clock on the MPC8610 HPCD mpc8610hpcd_set_pixel_clock() calculates the correct value of the PXCLK bits in the CLKDVDR register for a given pixel clock rate. The code which performs this calculation is overly complicated and includes an error estimation routine that doesn't work most of the time anyway. Replace the code with the simpler routine that's currently used on the P1022DS. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 3846e332a9981b019849566bdbf78ba859856c67 Author: Timur Tabi Date: Thu Jun 23 14:48:55 2011 -0500 powerpc/85xx: enable the framebuffer console for the defconfigs Enable framebuffer console support by default in the defconfigs for the Freescale 85xx-based reference board. This allows the boot messages to be shown on the video display on the P1022DS. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 7b93eccf2876ba3b1c10dae22ca864a0eb08de4f Author: Timur Tabi Date: Thu Jun 23 14:48:54 2011 -0500 powerpc/85xx: clamp the P1022DS DIU pixel clock to allowed values To ensure that the DIU pixel clock will not be set to an invalid value, clamp the PXCLK divider to the allowed range (2-255). This also acts as a limiter for the pixel clock. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit ebf714ff37561331eb39963945d80bfc2a59e00f Author: Scott Wood Date: Wed Jun 22 18:10:30 2011 -0500 powerpc/e500mc: Add support for the wait instruction in e500_idle e500mc cannot doze or nap due to an erratum (as well as having a different mechanism than previous e500), but it has a "wait" instruction that is similar to doze. On 64-bit, due to the soft-irq-disable mechanism, the existing book3e_idle should be used instead. Signed-off-by: Vakul Garg Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit f340fe69f5e87c9f630b077cf52142ec15964a41 Author: Kumar Gala Date: Wed Jun 22 05:17:45 2011 -0500 powerpc/85xx: Add P4080 SoC device tree include stub Split out common (non-board specific) parts of the SoC related device tree into a stub so multiple board dts files can include it and we can reduce duplication and maintenance effort. Signed-off-by: Kumar Gala commit 4c8f581dda5326ee95246951d594709b2549459f Author: Baruch Siach Date: Mon Jun 20 08:00:22 2011 +0300 MAINTAINERS: add arch/powerpc/platforms/85xx/ to the 85xx entry Cc: Kumar Gala Signed-off-by: Baruch Siach Signed-off-by: Kumar Gala commit 316559588fb8da112ecdfb821b9fb0503aa7763c Author: Timur Tabi Date: Wed Jun 8 15:01:57 2011 -0500 powerpc/p1022ds: add missing iounmap calls to platform file The platform file for the Freecale P1022DS reference board is not freeing the ioremap() mapping of the PIXIS and global utilities nodes it creates. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit c0f589502ed553dbead67880c7bce57dee28a174 Author: Dmitry Eremin-Solenikov Date: Wed Jun 1 19:15:18 2011 +0400 powerpc/85xx: specify interrupt for pq3-localbus devices fsl-lbc driver requires an interrupt to bind to localbus device. Populate 85xx boards' dts trees with lbc interrupt info. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Kumar Gala commit 67e64f4aee53152ce22b35e4f1b61ebe78d24f3b Author: Dmitry Eremin-Solenikov Date: Tue Jun 14 09:22:27 2011 +0400 powerpc/85xx: tqm8540 - add description for onboard flash Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Kumar Gala commit 04243c4d32b96c06430f2d25c936fef38765a91b Author: Lei Xu Date: Mon May 23 18:49:00 2011 +0800 powerpc/85xx: Update device tree to add nand info for p3041ds Signed-off-by: Lei Xu Signed-off-by: Kumar Gala commit 045e1690b515f8b707f9e142d12458045a01b5d1 Author: Lei Xu Date: Mon May 23 18:48:58 2011 +0800 powerpc/85xx: Update device tree to add nand info for p5020ds Signed-off-by: Lei Xu Signed-off-by: Kumar Gala commit 08871c097ea5a11c95146ba8310272571d2bbfc4 Author: Prabhakar Kushwaha Date: Mon May 23 15:53:25 2011 +0530 powerpc/85xx: Add host-pci(e) bridge only for RC FSL PCIe controller can act as agent(EP) or host(RC). Under Agent(EP) mode the controller will be configured by the host system. So its not required to be registered with the PCI(e) sub-system. We only register the controller if its configured in host(RC) mode. Signed-off-by: Vivek Mahajan Signed-off-by: Prabhakar Kushwaha Signed-off-by: Kumar Gala commit 3907ab26866006087c4d1e48e9d1306e281ec955 Author: Timur Tabi Date: Thu May 19 08:54:30 2011 -0500 powerpc/85xx: add board support for the Freescale hypervisor Add support for the ePAPR-compliant Freescale hypervisor (aka "Topaz") on the Freescale P3041DS, P4080DS, and P5020DS reference boards. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit d173ea6b4078f37320b49d06f9656ba76ee1ba6c Author: Timur Tabi Date: Thu May 19 08:54:29 2011 -0500 powerpc: add Freescale hypervisor partition control functions Add functions to restart and halt the current partition when running under the Freescale hypervisor. These functions should be assigned to various function pointers of the ppc_md structure during the .probe() function for the board: ppc_md.restart = fsl_hv_restart; ppc_md.power_off = fsl_hv_halt; ppc_md.halt = fsl_hv_halt; Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 3a93261f70c7b92f84fb211b66f1d4e66c0b3dce Author: Ashish Kalra Date: Thu May 19 08:54:28 2011 -0500 powerpc: introduce the ePAPR embedded hypervisor vmpic driver The Freescale ePAPR reference hypervisor provides interrupt controller services via a hypercall interface, instead of emulating the MPIC controller. This is called the VMPIC. The ePAPR "virtual interrupt controller" provides interrupt controller services for external interrupts. External interrupts received by a partition can come from two sources: - Hardware interrupts - hardware interrupts come from external interrupt lines or on-chip I/O devices. - Virtual interrupts - virtual interrupts are generated by the hypervisor as part of some hypervisor service or hypervisor-created virtual device. Both types of interrupts are processed using the same programming model and same set of hypercalls. Signed-off-by: Ashish Kalra Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit bd497fc9782769d5bce58fbf468eabfce9e98ce0 Author: Timur Tabi Date: Thu May 19 08:54:27 2011 -0500 powerpc: introduce ePAPR embedded hypervisor hcall interface ePAPR hypervisors provide operating system services via a "hypercall" interface. The following steps need to be performed to make an hcall: 1. Load r11 with the hcall number 2. Load specific other registers with parameters 3. Issue instrucion "sc 1" 4. The return code is in r3 5. Other returned parameters are in other registers. To provide this service to the kernel, these steps are wrapped in inline assembly functions. Standard ePAPR hcalls are in epapr_hcalls.h, and Freescale extensions are in fsl_hcalls.h. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 39fa84e94a7df64a6ba27669ef98b51994fb6894 Author: Takashi Iwai Date: Mon Jun 27 15:28:57 2011 +0200 ALSA: hda - Simplify EAPD control in patch_realtek.c Look through the known NIDs that may have EAPD capabilities and turn on/off them appropriately instead of checking the individual vendor ids. This will also avoid the forgotten entries of newly added codec ids in future. Signed-off-by: Takashi Iwai commit 1252cc3b232e582e887623dc5f70979418caaaa2 Author: Roberto Sassu Date: Mon Jun 27 13:45:45 2011 +0200 eCryptfs: added support for the encrypted key type The function ecryptfs_keyring_auth_tok_for_sig() has been modified in order to search keys of both 'user' and 'encrypted' types. Signed-off-by: Roberto Sassu Acked-by: Gianluca Ramunno Acked-by: Tyler Hicks Signed-off-by: Mimi Zohar commit 79a73d188726b473ca3bf483244bc96096831905 Author: Roberto Sassu Date: Mon Jun 27 13:45:44 2011 +0200 encrypted-keys: add ecryptfs format support The 'encrypted' key type defines its own payload format which contains a symmetric key randomly generated that cannot be used directly to mount an eCryptfs filesystem, because it expects an authentication token structure. This patch introduces the new format 'ecryptfs' that allows to store an authentication token structure inside the encrypted key payload containing a randomly generated symmetric key, as the same for the format 'default'. More details about the usage of encrypted keys with the eCryptfs filesystem can be found in the file 'Documentation/keys-ecryptfs.txt'. Signed-off-by: Roberto Sassu Acked-by: Gianluca Ramunno Acked-by: Tyler Hicks Signed-off-by: Mimi Zohar commit f8f8527103a264b5e4ab2ce5c1743b28f3219d90 Author: Roberto Sassu Date: Mon Jun 27 13:45:43 2011 +0200 eCryptfs: export global eCryptfs definitions to include/linux/ecryptfs.h Some eCryptfs specific definitions, such as the current version and the authentication token structure, are moved to the new include file 'include/linux/ecryptfs.h', in order to be available for all kernel subsystems. Signed-off-by: Roberto Sassu Acked-by: Gianluca Ramunno Acked-by: Tyler Hicks Acked-by: David Howells Signed-off-by: Mimi Zohar commit 4e561d388feff18e4b798cef6a1a84a2cc7f20c2 Author: Roberto Sassu Date: Mon Jun 27 13:45:42 2011 +0200 encrypted-keys: add key format support This patch introduces a new parameter, called 'format', that defines the format of data stored by encrypted keys. The 'default' format identifies encrypted keys containing only the symmetric key, while other formats can be defined to support additional information. The 'format' parameter is written in the datablob produced by commands 'keyctl print' or 'keyctl pipe' and is integrity protected by the HMAC. Signed-off-by: Roberto Sassu Acked-by: Gianluca Ramunno Acked-by: David Howells Signed-off-by: Mimi Zohar commit 7103dff0e598cd634767f17a2958302c515700ca Author: Roberto Sassu Date: Mon Jun 27 13:45:41 2011 +0200 encrypted-keys: added additional debug messages Some debug messages have been added in the function datablob_parse() in order to better identify errors returned when dealing with 'encrypted' keys. Changelog from version v4: - made the debug messages more understandable Signed-off-by: Roberto Sassu Acked-by: Gianluca Ramunno Signed-off-by: Mimi Zohar commit 08fa2aa54e72ddde8076cc77126bace8d4780e0f Author: Roberto Sassu Date: Mon Jun 27 13:45:40 2011 +0200 encrypted-keys: fixed valid_master_desc() function description Valid key type prefixes for the parameter 'key-type' are: 'trusted' and 'user'. Signed-off-by: Roberto Sassu Acked-by: Gianluca Ramunno Acked-by: David Howells Signed-off-by: Mimi Zohar commit f91c2c5cfa2950a20265b45bcc13e49ed9e49aac Author: Roberto Sassu Date: Mon Jun 27 13:45:39 2011 +0200 encrypted_keys: avoid dumping the master key if the request fails Do not dump the master key if an error is encountered during the request. Signed-off-by: Roberto Sassu Acked-by: Gianluca Ramunno Signed-off-by: Mimi Zohar commit 6d86b4fb407995081c85106188e2d2404529d71c Author: Takashi Iwai Date: Mon Jun 27 15:00:48 2011 +0200 ALSA: hda - Fix auto-init of output volumes of Realtek codecs Fix the regression introduced by the commit 1f0f4b8036b1fe1347cb4f1f199601b87de9be46 ALSA: hda - Reduce static init verbs for Realtek auto-parsers The input amps of mixer widgets should be unmuted as default (as usually they have no assigned mixer switches). More fixes in this commit are, however, for ALC260: ALC260 codec can have multiple output mixers connnected to a single DAC althouh the driver didn't pick up them properly. Signed-off-by: Takashi Iwai commit 00c6850dde513bac2b901d4e9714d8a580291143 Merge: 3af9ee6 a86a88e Author: Takashi Iwai Date: Mon Jun 27 14:32:50 2011 +0200 Merge branch 'topic/via-cleanup' into topic/hda commit 95dac04f881322b510c45e5ae83f0dbee4f823a2 Author: Ido Yariv Date: Mon Jun 6 14:57:06 2011 +0300 wl12xx: Support routing FW logs to the host A recently added feature to the firmware enables the driver to retrieve firmware logs via the host bus (SDIO or SPI). There are two modes of operation: 1. On-demand: The FW collects its log in an internal ring buffer. This buffer can later be read, for example, upon recovery. 2. Continuous: The FW pushes the FW logs as special packets in the RX path. Reading the internal ring buffer does not involve the FW. Thus, as long as the HW is not in ELP, it should be possible to read the logs, even if the FW crashes. A sysfs binary file named "fwlog" was added to support this feature, letting a monitor process read the FW messages. The log is transferred from the FW only when available, so the reading process might block. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit baacb9aed020b890ddf6a57837a169092a25fc9b Author: Ido Yariv Date: Mon Jun 6 14:57:05 2011 +0300 wl12xx: Avoid recovery while one is already in progress During recovery work commands sent to the FW could fail and schedule additional recovery work. Since the chip is going to be powered off, avoid recursive recoveries. Signed-off-by: Ido Yariv Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 842f1a6c71551ac10fbdff4a4e65821228df9ea7 Author: Ido Yariv Date: Mon Jun 6 14:57:04 2011 +0300 wl12xx: Check for FW quirks as soon as the FW boots The FW initialization might depend on the FW revision, so check for any FW quirks right after booting it. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit 92ef8960aee2f840c6a54c968d40199843f015c0 Author: Eliad Peller Date: Tue Jun 7 12:50:46 2011 +0300 wl12xx: use freezable workqueue for netstack_work When resuming (after wowlan), we want the rx packets (which is usually the wake-up packet itself) to be passed to mac80211 only after the resume notifier was completed, and mac80211 is up and running (otherwise, the packets will be dropped). By enqueueing the netstack_work to a freezable workqueue, we can guarantee the rx processing to occur only after mac80211 was resumed. Signed-off-by: Eliad Peller Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit c27d3accb6f06b0afedfe472dfe0c8e7d87ff0a6 Author: Eliad Peller Date: Tue Jun 7 10:40:39 2011 +0300 wl12xx: use _ni version of ieee80211_tx_status wl1271_flush_deferred_work(), which calls ieee80211_rx() and ieee80211_tx_status(), is called from a process context. hence, use ieee80211_tx_status_ni() instead of ieee80211_tx_status(). Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit ef4b29e976f9e0a622dfd2722b443bb65686f47c Author: Eliad Peller Date: Mon Jun 6 13:03:12 2011 +0300 wl12xx: check the vif's operstate after join When resuming while connected (without wowlan), the interface is already IF_OPER_UP, so we won't get the notifier callback, and hence never complete the association (from wl12xx perspective) This situation, among other potential problems, prevents the station from entering psm. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit d946e65e2ab885c05b8cacf292be65fa292d08f6 Author: Anssi Hannula Date: Mon Jun 27 00:07:31 2011 +0300 HID: add FF support for Holtek On Line Grip based gamepads Add force feedback support for Holtek On Line Grip based HID devices. The protocol is more complex than that of most other rumblepads, but the device still needs to be handled as a memoryless one. Tested by Cleber de Mattos Casali with a 1241:5015 "Clone Joypad Super Power Fire" gamepad, with help from Hendrik Iben . Signed-off-by: Anssi Hannula Tested-by: Cleber de Mattos Casali Signed-off-by: Jiri Kosina commit 6bb043321569ac356c790a8d3bd759742e1f9352 Author: Eliad Peller Date: Mon Jun 6 12:21:55 2011 +0300 wl12xx_sdio: enable wowlan only if enable_irq_wake() succeeded Some platforms don't support the wake_irq, so disable wowlan in this case, and avoid the "Unbalanced IRQ wake disable" warning on disable_irq_wake(). Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 8a7cf3febbb2b7c1ade717ddb3065de67c5983c5 Author: Eliad Peller Date: Mon Jun 6 12:21:54 2011 +0300 wl12xx: enable/disable beacon filtering on ap suspend/resume Beacon filtering needs to be enabled so AP won't wake up by by every received beacon. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 3af9ee6b83c4c3f2577719e31e7d2af1ce996557 Author: Takashi Iwai Date: Mon Jun 27 12:34:01 2011 +0200 ALSA: hda - Check hard-wired DACs at first for ALC662 & co Some Realtek codecs have the output pins hardwired with certain DACs. These DACs have to be assigned at first and assign the rest for multi-DAC pins so that all DACs can be assigned properly. Without such an optimization, speaker outputs may be assigned to the same DAC as the headphone or others. Signed-off-by: Takashi Iwai commit a06a0f8e3e28406828b0087012acfb0b802147b3 Author: Justin P. Mattock Date: Thu Jun 23 23:22:27 2011 -0700 scsi: qla_isr.c: fix comment typo 'hammmer' Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit 19f3199cd6b9e77ab47aeab001009cd39687fe06 Author: Justin P. Mattock Date: Wed Jun 22 23:29:20 2011 -0700 ata: sata_dwc_460ex.c: fix comment typo corrresponding Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit ff91afc90a736c97f24dec31e642411563906cfb Author: Eliad Peller Date: Mon Jun 6 12:21:53 2011 +0300 wl12xx: clear wl->wow_enabled on resume We set wl->wow_enabled on every suspend(), so we need to clear it on every resume(). (we can't rely on setting wl->wow_enabled=false in suspend(), as it being called only when wowlan triggers are configured) Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 4a859df85a7855b15f5e1bf4b0869a16757a3e43 Author: Eliad Peller Date: Mon Jun 6 12:21:52 2011 +0300 wl12xx: don't check wow param on suspend/resume Since mac80211 calls suspend/resume only when wowlan triggers exist, there is no need to check for triggers existance in the callbacks as well. Add a WARN_ON() to verify it. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 83ae417b857072d54c3c111067046283e3ee6b58 Author: Justin P. Mattock Date: Wed Jun 22 23:29:19 2011 -0700 Input: libps2.c: fix comment typo arrrives. Fix a typo in a comment. Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit 0c005048aa3cd3ac7bfdd3c6fcc20ea4f0ab667d Author: Shahar Levi Date: Sun Jun 12 10:34:43 2011 +0300 wl12xx: Add Support for Low Power DRPw (LPD) Mode The Low Power DRPw (LPD) mode contains several optimizations that designed to reduce power consumption. The purpose is to save current consumption in RX and Listen mode. LPD setting apply only for wl127x AP mode (not wl128x) Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit bb189247f35688a3353545902c56290fb7d7754a Author: Jan Kara Date: Fri Jun 24 23:11:59 2011 +0200 jbd: Fix oops in journal_remove_journal_head() journal_remove_journal_head() can oops when trying to access journal_head returned by bh2jh(). This is caused for example by the following race: TASK1 TASK2 journal_commit_transaction() ... processing t_forget list __journal_refile_buffer(jh); if (!jh->b_transaction) { jbd_unlock_bh_state(bh); journal_try_to_free_buffers() journal_grab_journal_head(bh) jbd_lock_bh_state(bh) __journal_try_to_free_buffer() journal_put_journal_head(jh) journal_remove_journal_head(bh); journal_put_journal_head() in TASK2 sees that b_jcount == 0 and buffer is not part of any transaction and thus frees journal_head before TASK1 gets to doing so. Note that even buffer_head can be released by try_to_free_buffers() after journal_put_journal_head() which adds even larger opportunity for oops (but I didn't see this happen in reality). Fix the problem by making transactions hold their own journal_head reference (in b_jcount). That way we don't have to remove journal_head explicitely via journal_remove_journal_head() and instead just remove journal_head when b_jcount drops to zero. The result of this is that [__]journal_refile_buffer(), [__]journal_unfile_buffer(), and __journal_remove_checkpoint() can free journal_head which needs modification of a few callers. Also we have to be careful because once journal_head is removed, buffer_head might be freed as well. So we have to get our own buffer_head reference where it matters. Signed-off-by: Jan Kara commit cb053a8265954518d4c9e865d8a0d682405825d2 Author: Takashi Iwai Date: Mon Jun 27 11:32:07 2011 +0200 ALSA: hda - Call proper DAC-filler function for Realtek auto-parser In alc_auto_add_multi_channel_mode(), when the primary HP workaround is enabled, it re-initializes the DAC list but calls alc662's function in a fixed way. This isn't pretty suitable for other codecs, of course. Now we call it with fill_dac function pointer so that the proper function can be called at that point. Signed-off-by: Takashi Iwai commit 86046da4afe068991b77e0a4c4b79b99ad961bda Author: Ohad Ben-Cohen Date: Sun May 29 16:36:03 2011 +0300 wl12xx: don't bail if mmc isn't MMC_CAP_POWER_OFF_CARD If our SDIO function has its runtime PM disabled, don't try to manipulate its runtime PM status at all. This way we can still power on cards plugged to mmc hosts that are not MMC_CAP_POWER_OFF_CARD. Reported-and-tested-by: Tim Yamin Signed-off-by: Ohad Ben-Cohen Signed-off-by: Luciano Coelho commit d2c2bb9fccdfe3cb70b276ae69e53d4890b11871 Author: Luciano Coelho Date: Tue May 31 16:38:56 2011 +0300 wl12xx: split channel array per band in sched_scan The firmware, in practice, treats the channels in three separate blocks, one for each band (bg, a and j). Instead of using a single array and doing some magic with indices, split the array in 3 to make it more readable. Signed-off-by: Luciano Coelho commit d192d268a1fb632148046b8efe9ab78e69890dd2 Author: Eliad Peller Date: Tue May 24 14:33:08 2011 +0300 wl12xx: fix erroneous commit (cb5ae0) Due to rebase error, the patch for commit cb5ae0 ("wl12xx: configure rates when working in ibss mode") was wrong - a blob was added into the wrong function. fix it. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 1f0f4b8036b1fe1347cb4f1f199601b87de9be46 Author: Takashi Iwai Date: Mon Jun 27 10:52:59 2011 +0200 ALSA: hda - Reduce static init verbs for Realtek auto-parsers Instead of using fixed init verbs, initialize DACs, ADCs and mixers more dynamically for Realtek auto-parsers. Signed-off-by: Takashi Iwai commit d52589b785404c944e734ecc4e1d42326197613c Merge: c706d7b 60f7ab0 Author: Dave Airlie Date: Mon Jun 27 18:10:59 2011 +1000 Merge branch 'drm-nouveau-next' of git://git.freedesktop.org/git/nouveau/linux-2.6 into drm-core-next * 'drm-nouveau-next' of git://git.freedesktop.org/git/nouveau/linux-2.6: drm/nouveau: error paths leak in nvc0_graph_construct_context() drm/nouveau: Calculate reserved VRAM for PRAMIN value before use. drm/nouveau: fix nouveau_vma object leak drm/nouveau: fix nouveau_mem object leak drm/nouveau: fix fetching vbios from above 4GiB vram addresses commit a011130265e999056fe0678a064d828c2fd40174 Author: Eliad Peller Date: Wed May 18 11:24:16 2011 +0300 wl12xx: remove unused crc7 references crc7 is used only in wl12xx_spi. Remove redundant crc7.h includes, and update Kconfig to select CRC7 only if WL12XX_SPI is being selected. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 0e44eb209343663ad7041ebf9f5d4c393bd89ae9 Author: Shahar Levi Date: Mon May 16 15:35:30 2011 +0300 wl12xx: Enable beacon early termination in 2.4GHz band only Beacon early termination doesn't help much in the 5GHz band and masks channel switch IE Beacons. Thus, change the code to use BET only in 2.4GHz. [Reworded the commit log slightly -- Luca.] Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit c84368e01a00f449d97e8a59e1b0c24dcf70a8b3 Author: Eliad Peller Date: Sun May 15 11:10:30 2011 +0300 wl12xx: add rx_streaming debugfs entry Allow control over rx_streaming interval and operation mode (always/only on coex) via debugfs. e.g. echo 100 > /debug/ieee80211/phy0/wl12xx/rx_streaming/interval echo 1 > /debug/ieee80211/phy0/wl12xx/rx_streaming/always Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 77ddaa108f727b5ef3be004b952d2c3d3ffc48e5 Author: Eliad Peller Date: Sun May 15 11:10:29 2011 +0300 wl12xx: add automatic rx streaming triggers When rx_streaming.interval is non-zero, use automatic rx streaming. Enable rx streaming on the each rx/tx packet, and disable it rx_streaming.duration msecs later. When rx_streaming.always=0 (default), rx streaming is enabled only when there is a coex operation. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit f84673d59773ded6efab640c5ee5f44b34116b75 Author: Eliad Peller Date: Sun May 15 11:10:28 2011 +0300 wl12xx: add support for rx streaming wl12xx supports the "rx streaming" feature: When in ps mode, and @timeout msecs have been passed since the last rx/tx, it issues trigger packets (QoS-null/PS-Poll packets, according to the ac type) in const intervals (in order to reduce the rx time). Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit ba2274c68e103271ba0c70fb8ad9afb4ede42d20 Author: Felipe Balbi Date: Sat May 14 00:26:23 2011 +0300 net: wl12xx: remove unnecessary prints Those have little value. Remove those to make the driver less noisy. Signed-off-by: Felipe Balbi Signed-off-by: Luciano Coelho commit 4c4cdfa12f389f0addbbbb6ac984997498a3c3af Author: Felipe Balbi Date: Sat May 14 00:26:22 2011 +0300 net: wl12xx: remove the nops Nops aren't needed. When we actually need those calls, then we add them with meat and barbecue sauce. Signed-off-by: Felipe Balbi Signed-off-by: Luciano Coelho commit 77d7d7a36d270fee4591c1c99c83c2da1f399d44 Author: Felipe Balbi Date: Sat May 14 00:26:21 2011 +0300 net: wl12xx: care for optional operations ->init and ->reset are optional - at least sdio.c doesn't implement them - so allow those pointers to be NULL. Signed-off-by: Felipe Balbi Signed-off-by: Luciano Coelho commit 6bdaf79623e285242cb977840358dc7d14438475 Author: Felipe Balbi Date: Sat May 14 00:26:20 2011 +0300 net: wl12xx: remove some unnecessary prints Those have little value. Remove those to make the driver less noisy. Signed-off-by: Felipe Balbi Signed-off-by: Luciano Coelho commit 33dd74c7844852afba46f5e19911bcf55a1f04a1 Author: Felipe Balbi Date: Sat May 14 00:26:18 2011 +0300 net: wl12xx: sdio: id_tables should be __devinitconst That's only needed during init anyway, let's free some space after we're done probing. Signed-off-by: Felipe Balbi Signed-off-by: Luciano Coelho commit d5b8aa1d246fddfe4042be6f6eb169efa5cfbb94 Author: jamal Date: Sun Jun 26 08:13:54 2011 +0000 net_sched: fix dequeuer fairness Results on dummy device can be seen in my netconf 2011 slides. These results are for a 10Gige IXGBE intel nic - on another i5 machine, very similar specs to the one used in the netconf2011 results. It turns out - this is a hell lot worse than dummy and so this patch is even more beneficial for 10G. Test setup: ---------- System under test sending packets out. Additional box connected directly dropping packets. Installed prio qdisc on the eth device and default netdev default length of 1000 used as is. The 3 prio bands each were set to 100 (didnt factor in the results). 5 packet runs were made and the middle 3 picked. results ------- The "cpu" column indicates the which cpu the sample was taken on, The "Pkt runx" carries the number of packets a cpu dequeued when forced to be in the "dequeuer" role. The "avg" for each run is the number of times each cpu should be a "dequeuer" if the system was fair. 3.0-rc4 (plain) cpu Pkt run1 Pkt run2 Pkt run3 ================================================ cpu0 21853354 21598183 22199900 cpu1 431058 473476 393159 cpu2 481975 477529 458466 cpu3 23261406 23412299 22894315 avg 11506948 11490372 11486460 3.0-rc4 with patch and default weight 64 cpu Pkt run1 Pkt run2 Pkt run3 ================================================ cpu0 13205312 13109359 13132333 cpu1 10189914 10159127 10122270 cpu2 10213871 10124367 10168722 cpu3 13165760 13164767 13096705 avg 11693714 11639405 11630008 As you can see the system is still not perfect but is a lot better than what it was before... At the moment we use the old backlog weight, weight_p which is 64 packets. It seems to be reasonably fine with that value. The system could be made more fair if we reduce the weight_p (as per my presentation), but we are going to affect the shared backlog weight. Unless deemed necessary, I think the default value is fine. If not we could add yet another knob. Signed-off-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 85a43a9edaf5b541381acbf4061bace1121d6ef0 Merge: 23efcb7 42532da Author: David S. Miller Date: Mon Jun 27 00:09:56 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-next-2.6 commit 23efcb738ea51befe0674e0685fc6cfe353aa553 Author: Joe Perches Date: Sun Jun 26 19:01:35 2011 +0000 wan: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit c75bb2c6f0cf455c23e60f14d780e841dd47f801 Author: Joe Perches Date: Sun Jun 26 19:01:34 2011 +0000 ixp4xx_hss: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit e8c122f450d0b83d7a15535ba49e55ad21a9e63f Author: Joe Perches Date: Sun Jun 26 19:01:33 2011 +0000 farsync: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 09a1732bee89fc31e63b1bd999f93acd58843f35 Author: Joe Perches Date: Sun Jun 26 19:01:32 2011 +0000 dscc4: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 86fb0ccf90cc34642daf6cd902ee26516a0ff0a2 Author: Joe Perches Date: Sun Jun 26 19:01:31 2011 +0000 frame relay dlci/frad: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit d6810e1375c9b3b28ed1caccb6fb706945903f49 Author: Joe Perches Date: Sun Jun 26 19:01:30 2011 +0000 cyclom: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 9cbe50d4231773396f529f51a048770d0ee54ac1 Author: Joe Perches Date: Sun Jun 26 19:01:29 2011 +0000 cosa: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 12a3bfefc8c1e43ddb50950cb74f8a11d680567a Author: Joe Perches Date: Sun Jun 26 19:01:28 2011 +0000 generic_hdlc: Update to current logging forms Use pr_fmt, pr_ and netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 2903dd654d8788425a9523959b02933ea6555229 Author: Sathya Perla Date: Sun Jun 26 20:41:53 2011 +0000 be2net: fix initialization of vlan_prio_bmap Initialization of this field to "all priorities" must be done before MCC queue creation. As soon as the MCC queue is created, an event modifying this value may be received. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit c814fd3669b43f32ddd505178705c02352b0ac7c Author: Sathya Perla Date: Sun Jun 26 20:41:25 2011 +0000 be2net: get rid of multi_rxq module param Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 6e53391cb4f9491182e7fbd280966ebe2aca07dc Author: Sathya Perla Date: Sun Jun 26 20:40:48 2011 +0000 be2net: fix netdev_stats_update Problem initially reproted and fixed by Eric Dumazet netdev_stats_update() resets netdev->stats and then accumulates stats from various rings. This is wrong as stats readers can sometimes catch zero values. Use temporary variables instead for accumulating per-ring values. Signed-off-by: Sathya Perla Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 8bc47de33569a111092a48465eb26cd855117e27 Merge: 93dbb29 7c9017e Author: Keith Packard Date: Sun Jun 26 19:12:00 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 60f7ab06651db7d9916c0d9138ed3b12676e920d Author: Dan Carpenter Date: Sat Jun 25 08:54:46 2011 +0300 drm/nouveau: error paths leak in nvc0_graph_construct_context() Two of these error paths returned without freeing "ctx". Signed-off-by: Dan Carpenter Signed-off-by: Ben Skeggs commit 3b40d07d8c4a9dc33ee6e1b4ad1d377309531ffe Author: Younes Manton Date: Fri Jun 24 01:15:58 2011 -0400 drm/nouveau: Calculate reserved VRAM for PRAMIN value before use. 'drm/nouveau: rework vram init/fini ordering a little' changed the order of instmem.init() and nouveau_mem_vram_init() which resulted in using ramin_rsvd_vram before it was calculated and failing to init any accel on pre-NV50 cards. Since it's only used on Signed-off-by: Ben Skeggs commit 8fe198b2c6fd8455db9f07d712ee54e2a1d02783 Author: Marcin Slusarz Date: Thu Jun 23 16:34:30 2011 +0200 drm/nouveau: fix nouveau_vma object leak Signed-off-by: Marcin Slusarz Signed-off-by: Ben Skeggs commit 0de53a546b4f7056d1404e40320e57aad723621c Author: Marcin Slusarz Date: Thu Jun 23 16:35:31 2011 +0200 drm/nouveau: fix nouveau_mem object leak It's a regression from "drm/nouveau: create temp vmas for both src and dst of bo moves". Signed-off-by: Marcin Slusarz Signed-off-by: Ben Skeggs commit 9617757fb3dc6274b42afd2dcaa4fbc3ef6db98b Author: Ben Skeggs Date: Fri Jun 24 08:18:23 2011 +1000 drm/nouveau: fix fetching vbios from above 4GiB vram addresses Signed-off-by: Ben Skeggs commit 766705eef5d0faa9fc1e6a0cac95fc433bf5de70 Author: Sangbeom Kim Date: Mon Jun 20 16:36:19 2011 +0900 ASoC: SAMSUNG: Add idma related register definition This patch add idma related register definitions to support idma. Signed-off-by: Sangbeom Kim Acked-by: Jassi Brar Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 172a453dcfe7de2f50c5e2d00107a734cf1dccc8 Author: Sangbeom Kim Date: Mon Jun 20 16:36:18 2011 +0900 ASoC: SAMSUNG: Move I2S common register definition I2S registers can be used for control idma. Previously, register is defined in i2s.c. For sharing the registers, It is moved to i2s-regs.h Signed-off-by: Sangbeom Kim Acked-by: Jassi Brar Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d2ec3ababa675ffdd4c8e7272d7dbd4cbdbd12ff Author: Sangbeom Kim Date: Mon Jun 20 17:29:29 2011 +0900 ASoC: SAMSUNG: Add WM8994 PCM Machine driver This patch add WM8994 PCM machine driver to support PCM audio on SMDKV310, SMDKC210 boards. Playback and Capture supports 8kHz sampling rates. and It is tested on SMDKV310, SMDKC210. Signed-off-by: Sangbeom Kim Acked-by: Jassi Brar Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 93dbb29b471c80e09df8bfde9c661df074ec82cc Merge: b97c3d9 483f179 Author: Keith Packard Date: Sat Jun 25 17:08:13 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 3824abd1279ef75f791c43a6b1e3162ae0692b42 Author: Christoph Lameter Date: Wed Jun 1 12:25:47 2011 -0500 x86: Add support for cmpxchg_double A simple implementation that only supports the word size and does not have a fallback mode (would require a spinlock). Add 32 and 64 bit support for cmpxchg_double. cmpxchg double uses the cmpxchg8b or cmpxchg16b instruction on x86 processors to compare and swap 2 machine words. This allows lockless algorithms to move more context information through critical sections. Set a flag CONFIG_CMPXCHG_DOUBLE to signal that support for double word cmpxchg detection has been build into the kernel. Note that each subsystem using cmpxchg_double has to implement a fall back mechanism as long as we offer support for processors that do not implement cmpxchg_double. Reviewed-by: H. Peter Anvin Cc: Tejun Heo Cc: Pekka Enberg Signed-off-by: Christoph Lameter Link: http://lkml.kernel.org/r/20110601172614.173427964@linux.com Signed-off-by: H. Peter Anvin commit 2c2ea9451fc2a12ee57c8346f0da26969d07ee7f Author: Lukas Czerner Date: Wed Jun 22 10:51:09 2011 +0200 ext3: Return -EINVAL when start is beyond the end of fs in ext3_trim_fs() We should return -EINVAL when the FITRIM parameters are not sane, but currently we are exiting silently if start is beyond the end of the file system. This commit fixes this so we return -EINVAL as other file systems do. Signed-off-by: Lukas Czerner CC: Jan Kara Signed-off-by: Jan Kara commit 81fe8c62febade6b5d0915269b06a0c50448da27 Author: H Hartley Sweeten Date: Fri Jun 10 14:59:05 2011 -0700 ext3/ioctl.c: silence sparse warnings about different address spaces The 'from' argument for copy_from_user and the 'to' argument for copy_to_user should both be tagged as __user address space. Signed-off-by: H Hartley Sweeten Cc: Andrew Morton Cc: Andreas Dilger Signed-off-by: Jan Kara commit ad434017718a725b1695fb2ebfff312cf3693d3b Author: Lukas Czerner Date: Tue Jun 7 12:27:05 2011 +0200 ext3/ext4 Documentation: remove bh/nobh since it has been deprecated Bh and nobh mount option has been deprecated in ext4 (206f7ab4f49a2021fcb8687f25395be77711ddee) and in ext3 (4c4d3901225518ed1a4c938ba15ba09842a00770) so remove those options from documentation. Signed-off-by: Lukas Czerner Reviewed-by: Eric Sandeen Signed-off-by: Jan Kara commit ee3e77f18010679a889b3831c2dd931238c12d09 Author: Jan Kara Date: Fri Jun 3 21:58:11 2011 +0200 ext3: Improve truncate error handling New truncate calling convention allows us to handle errors from ext3_block_truncate_page(). So reorganize the code so that ext3_block_truncate_page() is called before we change inode size. This also removes unnecessary block zeroing from error recovery after failed buffered writes (zeroing isn't needed because we could have never written non-zero data to disk). We have to be careful and keep zeroing in direct IO write error recovery because there we might have already overwritten end of the last file block. Signed-off-by: Jan Kara commit 9008593017069ad513cc7dc78a6c94e8dfddba31 Author: Akinobu Mita Date: Wed Jun 1 23:34:04 2011 +0900 ext3: use proper little-endian bitops ext3_{set,clear}_bit() is defined as __test_and_{set,clear}_bit_le() for ext3. But all ext3_{set,clear}_bit() calls ignore return values. So these can be replaced with __{set,clear}_bit_le(). This changes ext3_{set,clear}_bit safely, because if someone uses these macros without noticing the change, new ext3_{set,clear}_bit don't have return value and causes compiler errors where the return value is used. This also removes unused ext3_find_first_zero_bit(). Signed-off-by: Akinobu Mita Cc: Jan Kara Cc: Andrew Morton Cc: Andreas Dilger Cc: linux-ext4@vger.kernel.org Signed-off-by: Jan Kara commit fbcc9e624b8dbc7f740fac3906aa261b83398100 Author: Petr Uzel Date: Tue May 31 11:36:06 2011 +0200 ext2: include fs.h into ext2_fs.h AC_CHECK_HEADERS([linux/ext2_fs.h]) fails with configure:34666: checking linux/ext2_fs.h usability configure:34666: gcc -std=gnu99 -c -ggdb3 -O0 -Wunreachable-code conftest.c >&5 In file included from conftest.c:406:0: /usr/include/linux/ext2_fs.h: In function 'ext2_mask_flags': /usr/include/linux/ext2_fs.h:182:21: error: 'FS_DIRSYNC_FL' undeclared (first use in this function) /usr/include/linux/ext2_fs.h:182:21: note: each undeclared identifier is reported only once for each function it appears in /usr/include/linux/ext2_fs.h:182:37: error: 'FS_TOPDIR_FL' undeclared (first use in this function) /usr/include/linux/ext2_fs.h:184:19: error: 'FS_NODUMP_FL' undeclared (first use in this function) /usr/include/linux/ext2_fs.h:184:34: error: 'FS_NOATIME_FL' undeclared (first use in this function) It's reasonable to have headers that include all necessary definitions. So fix this by including fs.h into ext2_fs.h. Signed-off-by: Petr Uzel Signed-off-by: Jan Kara commit ad95c5e9bc8b5885f94dce720137cac8fa8da4c9 Author: Jan Kara Date: Mon May 30 13:29:20 2011 +0200 ext3: Fix oops in ext3_try_to_allocate_with_rsv() Block allocation is called from two places: ext3_get_blocks_handle() and ext3_xattr_block_set(). These two callers are not necessarily synchronized because xattr code holds only xattr_sem and i_mutex, and ext3_get_blocks_handle() may hold only truncate_mutex when called from writepage() path. Block reservation code does not expect two concurrent allocations to happen to the same inode and thus assertions can be triggered or reservation structure corruption can occur. Fix the problem by taking truncate_mutex in xattr code to serialize allocations. CC: Sage Weil CC: stable@kernel.org Reported-by: Fyodor Ustinov Signed-off-by: Jan Kara commit bd5c9e1854e13d0c62a3de29a5fbc15dd6a4d8c6 Author: Ding Dinghua Date: Thu May 26 10:29:01 2011 +0800 jbd: fix a bug of leaking jh->b_jcount journal_get_create_access should drop jh->b_jcount in error handling path Signed-off-by: Ding Dinghua Signed-off-by: Jan Kara commit 05713082ab7690a2b22b044cfc867f346c39cd2d Author: Jan Kara Date: Thu May 26 17:17:18 2011 +0200 jbd: remove dependency on __GFP_NOFAIL The callers of start_this_handle() (or better ext3_journal_start()) are not really prepared to handle allocation failures. Such failures can for example result in silent data loss when it happens in ext3_..._writepage(). OTOH __GFP_NOFAIL is going away so we just retry allocation in start_this_handle(). This loop is potentially dangerous because the oom killer cannot be invoked for GFP_NOFS allocation, so there is a potential for infinitely looping. But still this is better than silent data loss. Signed-off-by: Jan Kara commit 40680f2fa4670ab35ee554822a69dda1a118f966 Author: Jan Kara Date: Tue May 24 22:24:47 2011 +0200 ext3: Convert ext3 to new truncate calling convention Mostly trivial conversion. We fix a bug that IS_IMMUTABLE and IS_APPEND files could not be truncated during failed writes as we change the code. In fact the test is not needed at all because both IS_IMMUTABLE and IS_APPEND is tested in upper layers in do_sys_[f]truncate(), may_write(), etc. Signed-off-by: Jan Kara commit 99cb1a318c37bf462c53d43f4dacb7b4896ce0c9 Author: Lukas Czerner Date: Mon May 23 18:33:02 2011 +0200 jbd: Add fixed tracepoints This commit adds fixed tracepoint for jbd. It has been based on fixed tracepoints for jbd2, however there are missing those for collecting statistics, since I think that it will require more intrusive patch so I should have its own commit, if someone decide that it is needed. Also there are new tracepoints in __journal_drop_transaction() and journal_update_superblock(). The list of jbd tracepoints: jbd_checkpoint jbd_start_commit jbd_commit_locking jbd_commit_flushing jbd_commit_logging jbd_drop_transaction jbd_end_commit jbd_do_submit_data jbd_cleanup_journal_tail jbd_update_superblock_end Signed-off-by: Lukas Czerner Cc: Jan Kara Signed-off-by: Jan Kara commit 785c4bcc0d88ff006a0b2120815a71e86ecf21ce Author: Lukas Czerner Date: Mon May 23 18:33:01 2011 +0200 ext3: Add fixed tracepoints This commit adds fixed tracepoints to the ext3 code. It is based on ext4 tracepoints, however due to the differences of both file systems, there are some tracepoints missing (those for delaloc and for multi-block allocator) and there are some ext3 specific as well (for reservation windows). Here is a list: ext3_free_inode ext3_request_inode ext3_allocate_inode ext3_evict_inode ext3_drop_inode ext3_mark_inode_dirty ext3_write_begin ext3_ordered_write_end ext3_writeback_write_end ext3_journalled_write_end ext3_ordered_writepage ext3_writeback_writepage ext3_journalled_writepage ext3_readpage ext3_releasepage ext3_invalidatepage ext3_discard_blocks ext3_request_blocks ext3_allocate_blocks ext3_free_blocks ext3_sync_file_enter ext3_sync_file_exit ext3_sync_fs ext3_rsv_window_add ext3_discard_reservation ext3_alloc_new_reservation ext3_reserved ext3_forget ext3_read_block_bitmap ext3_direct_IO_enter ext3_direct_IO_exit ext3_unlink_enter ext3_unlink_exit ext3_truncate_enter ext3_truncate_exit ext3_get_blocks_enter ext3_get_blocks_exit ext3_load_inode Signed-off-by: Lukas Czerner Cc: Jan Kara Signed-off-by: Jan Kara commit dce2079b89b6579c417bad8a7c44de1a89012ffa Author: Takashi Iwai Date: Fri Jun 24 14:10:28 2011 +0200 ALSA: hda - Add snd_hda_get_conn_list() helper function Add a new helper function snd_hda_get_conn_list(). Unlike snd_hda_get_connections(), this function doesn't copy the connection-list but gives the raw pointer for the cached list. Signed-off-by: Takashi Iwai commit 42532da64e9c4102decab8f37cf3959af55789a4 Author: John Fastabend Date: Sat Jun 18 07:40:04 2011 +0000 ixgbe: implement DCB ops dcb_ieee_del() Implement DCB ops dcb_ieee_del() and set FCoE to the default priority when no priority exists. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 3b3bf3b92b313db62a07869a649533f7f4f25c24 Author: John Fastabend Date: Sat Jun 18 07:39:58 2011 +0000 ixgbe: remove unused fcoe.tc field and fcoe_setapp() The fcoe.tc field is no longer used so remove it. After the field is removed there is no need to keep fcoe_setapp() around so remove it as well. And finally we can get rid of some DCB #ifdef's in the fcoe code. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 80b52490cdbfec7ea93d1158f13f0e49a1557423 Author: Tim Blechmann Date: Fri Jun 24 17:36:20 2011 +0200 ALSA: lx6464es - include mac address in device name each device has a unique mac address, which can be used to distinguish multiple devices in the same machine. we therefore include the full mac address in the device shortname and the last 6 bytes in the device id. Signed-off-by: Tim Blechmann Signed-off-by: Takashi Iwai commit 9372453e87560f1602815bf08b9e2af0f5136a61 Author: John Fastabend Date: Sat Jun 18 07:39:52 2011 +0000 ixgbe: complete FCoE initialization from setapp() routine Commit, commit c8ca76ebc6e50752c5311b92bb9aef7edb324577 Author: John Fastabend Date: Sat Mar 12 03:50:53 2011 +0000 ixgbe: DCB, further cleanups to app configuration Removed the getapp() routines from ixgbe because they are no longer needed. It also allowed the set hardware routines to use both IEEE 802.1Qaz app types and CEE app types. This added code to do bit shifting in the IEEE case. This patch reverts the checks and handles the IEEE case from the setapp entry point. I prefer this because it keeps the two paths from having to be aware of the DCB mode. This resolves a bug where I missed setting the selector bit in the IEEE spec value and left it in the CEE value. Now that they are separate routines these types of errors should not occur. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 7555e83df399ef35e031b137442eac2b1894b993 Author: Lior Levy Date: Sat Jun 25 00:09:08 2011 -0700 ixgbe: A fix to VF TX rate limit There is a need to configure MMW_SIZE in register RTTBCNRM with a correct value (0x4 for non jumbo frames and 0x14 for jumbo frames support). For 82599 the value is 0x4 and for X540 the value is 0x14. Signed-off-by: Lior Levy Signed-off-by: Jeff Kirsher commit a535c30e9e98d201089503a0ffa0093cba16e796 Author: Alexander Duyck Date: Fri May 27 05:31:52 2011 +0000 ixgbe: Update method used for determining descriptor count for an skb This patch updates the current methods used for determining if we have enough space to transmit a given skb. The current method is quite wasteful as it has us go through and determine how each page is going to be broken up. That only needs to be done if pages are larger than our maximum data per TXD. As such I have wrapped that in a page size check. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit 897ab15606ce896b6a574a263beb51cbfb43f041 Author: Alexander Duyck Date: Fri May 27 05:31:47 2011 +0000 ixgbe: Add one function that handles most of context descriptor setup There is a significant amount of shared functionality between the checksum and TSO offload configuration that is shared in regards to how they setup the context descriptors. Since so much of the functionality is shared it makes sense to move the shared functionality into a single function and just call that function from the two context descriptor specific routines. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit 63544e9c0055316d0397cb671f2ff99d85c77293 Author: Alexander Duyck Date: Fri May 27 05:31:42 2011 +0000 ixgbe: Move all values that deal with count, next_to_use, next_to_clean to u16 This change updates all values dealing with count, next_to_use, and next_to_clean so that they stay u16 values. The advantage of this is that there is no re-casting of type during the propagation through the stack. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit 7d4987de752a94772ad1ae85ad5c702bbcf73305 Author: Alexander Duyck Date: Fri May 27 05:31:37 2011 +0000 ixgbe: Convert IXGBE_DESC_UNUSED from macro to static inline function This change is a minor cleanup that converts the IXGBE_DESC_UNUSED macro into a static inline function just for the case of the code being a bit cleaner. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit a65151ba201fe56ac146767e018674a84bfef1a6 Author: Alexander Duyck Date: Fri May 27 05:31:32 2011 +0000 ixgbe: pass adapter struct instead of netdev for interrupt data This change makes it so that we pass the adapter struct instead of the netdev for most of the basic interrupts that are not associated with q_vectors. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit b97c3d9c1655522be3adc5ae1aa153a18467e924 Author: Keith Packard Date: Fri Jun 24 21:02:59 2011 -0700 drm/i915: i915_gem_object_finish_gtt must always release gtt mmap Even if the object is no longer in the GTT domain, there may still be a user space mapping which needs to be released. Without this fix, render-based text (mostly in firefox) would occasionally get corrupted when the system was under load. Signed-off-by: Keith Packard commit c6af9c406ceb3434281cf230938453931dcbab75 Author: Vitaliy Ivanov Date: Wed Jun 22 08:06:44 2011 +0000 net: wimax: Remove of unused 'rfkill_input' pointer Seems like this was not cleaned during the 'rfkill: rewrite' checkin 19d337dff95cbf76edd3ad95c0cee2732c3e1ec5. Signed-off-by: Vitaliy Ivanov Acked-by: Inaky Perez-Gonzalez Signed-off-by: David S. Miller commit 6f9edc667d84f11d6455f4c2b4675fc82bf08b45 Author: Shan Wei Date: Fri Jun 24 17:43:16 2011 -0700 net: Kill unuseful net/TUNABLE doc in kernel source File net/TUNABLE has never be updated since git age. For some tunable parameters which user can control with proc file-system, They are all in ip-sysctl.txt doc. For tunable parameters that only at compile time, no meaning to note them. Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit 572404ea6bcbfaeb84b9522b46c35f5a5db15392 Author: Joe Perches Date: Wed Jun 22 20:39:00 2011 +0000 zorro8390: Update style, neaten, restructure to eliminate prototypes Convert to current logging styles. Move code blocks to eliminate need for prototypes. Use tabs for code indent and standardize spacing. Comment neatening. Signed-off-by: Joe Perches Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 3c01164e80a11fe2743cc36a0f2915673f1cac74 Author: Joe Perches Date: Wed Jun 22 20:38:59 2011 +0000 lib8390: Remove unnecessary extern Already declared in 8390.h Signed-off-by: Joe Perches Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 5aedcf50e547e37b89d105efc4a2f0f1b0217af4 Author: Joe Perches Date: Wed Jun 22 20:38:58 2011 +0000 lib8390: Convert include Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit be763c940fc3ccdaeda238e3ef5840961b649740 Author: Joe Perches Date: Wed Jun 22 20:38:57 2011 +0000 lib8390: Normalize source code spacing Make more conformant to normal kernel style. Long line lengths > 80 columns ignored. Signed-off-by: Joe Perches Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 7340c4db810f3b129fc4dd648991ed5ca5346592 Author: Joe Perches Date: Wed Jun 22 20:38:56 2011 +0000 lib8390: Indent braces appropriately Move the braces around to conform to kernel standard style. Signed-off-by: Joe Perches Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 840f63933983a1d873c5b2f85d2e169bb94e3c19 Author: Joe Perches Date: Wed Jun 22 20:38:55 2011 +0000 lib8390: Use pr_ and netdev_ Use the current logging styles. Signed-off-by: Joe Perches Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 747e252fa1a061cf63d12ed68ac937cf53a4fe4e Author: Joe Perches Date: Wed Jun 22 20:38:54 2011 +0000 a2065: Use pr_fmt, pr_ and netdev_ Use current logging styles. Other miscellaneous cleanups: Space removal and additions for checkpatch warnings. Signed-off-by: Joe Perches Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 7b5b0abdb6757011ab51eaf1227e3fcf3ab61d97 Author: Joe Perches Date: Wed Jun 22 20:38:53 2011 +0000 ariadne: Update style, neaten, restructure to eliminate prototypes Convert to current logging styles. Move code blocks to eliminate need for prototypes. Use tabs for code indent and sandardize spacing. Comment neatening. Signed-off-by: Joe Perches Acked-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 1897fe55e1385ddfb7733d0e0819588571cca867 Merge: cd5f3e2 e4a0aee Author: David S. Miller Date: Fri Jun 24 16:49:10 2011 -0700 Merge branch 'tipc-Jun24-2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/net-next-2.6 commit 589327905cf0ce4402f7fb1ed29682f7ae68a82e Author: Ben Hutchings Date: Sat Jun 25 00:22:08 2011 +0100 sfc: Fix assertions in efx_filter_rfs() This function is intended to assert (when DEBUG is defined) that the skb header area includes the header fields it's looking at, which RFS should already have pulled. But it uses pskb_may_pull(), which will attempt to pull more data if necesary. It must instead compare skb_headlen() with the required length. Signed-off-by: Ben Hutchings commit a659b2a94d87add999229ecd9f2f56817d5d737b Author: Steve Hodgson Date: Wed Jun 22 12:11:33 2011 +0100 sfc: Fix Siena mac statistics on big endian platforms [bwh: Use __force in the one place it's needed] Signed-off-by: Ben Hutchings commit 0e2a9c7cb941db993f481cdd6a99d70a302053e0 Author: Ben Hutchings Date: Fri Jun 24 20:50:07 2011 +0100 sfc: Fix mapping of reset reasons and flags to methods There are certain hardware bugs that may occur on Falcon during normal operation, that require a reset to recover from. We try to minimise disruption by keeping the PHY running, following a reset sequence labelled as 'invisible'. Siena does not suffer from these hardware bugs, so we have not implemented an 'invisible' reset sequence. However, if a similar error does occur (due to a hardware fault or software bug) then the code shared with Falcon will wrongly assume that the PHY is not being reset. Since the mapping of reset reasons (internal) and flags (ethtool) to methods must differ significantly between NIC types, move it into per-NIC-type functions (replacing the insufficient reset_world_flags field). Signed-off-by: Ben Hutchings commit a7d529ae2158b5300e4aa16c21f1828bc864449b Author: Ben Hutchings Date: Fri Jun 24 20:46:31 2011 +0100 sfc: Allow resets to be upgraded; use atomic ops for safety Currently an attempt to schedule any reset is ignored if a reset is already pending. This ignores the relative scopes - if the requested reset is greater in scope then the scheduled reset should be upgraded accordingly. There are also some race conditions which could lead to a reset request being lost. Deal with them by using atomic operations on a bitmask. This also makes tests on reset_pending easier to get right. Signed-off-by: Ben Hutchings commit 4017dbdc14af1903dc9fcba4d08b89c02325069d Author: Ben Hutchings Date: Fri Jun 24 20:26:44 2011 +0100 sfc: Fix loop condition for efx_filter_search() when !for_insert efx_filter_remove_filter() fails to remove inserted filters in some cases. For example: 1. Two filters A and B have specifications that result in an initial hash collision. 2. A is inserted first, followed by B. 3. An attempt to remove B first succeeds, but if A is removed first a subsequent attempt to remove B fails. When searching for an existing filter (!for_insert), efx_filter_search() must always continue to the maximum search depth for the given type rather than stopping at the first unused entry. Signed-off-by: Ben Hutchings commit cd5f3e2064ea21e1cbe140728a1b04e7d32f68eb Merge: 95cb365 3609936 Author: David S. Miller Date: Fri Jun 24 14:21:00 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit e4a0aee47e1823025972b8f3defde432e485b7b9 Author: Allan Stephens Date: Wed Jun 1 16:21:12 2011 -0400 tipc: Optimize creation of connection protocol messages Simplifies the creation of connection protocol messages by eliminating the passing of information that is no longer required, is constant, or is contained within the port structure that is issuing the message. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit f55b564054e35dcd171e1191a477327528271f95 Author: Allan Stephens Date: Wed Jun 1 15:48:42 2011 -0400 tipc: Don't create payload message using connection protocol routine Modifies the logic that creates a connection termination payload message so that it no longer (mis)uses a routine that creates a connection protocol message. The revised code is now more easily understood, and avoids setting several fields that are either not present in payload messages or were being set more than once. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 1c1a551acb8b65f842824900b283a96462f907ab Author: Allan Stephens Date: Wed Jun 1 15:08:10 2011 -0400 tipc: Reject connection protocol message sent to unconnected port Restructures the logic used in tipc_port_recv_proto_msg() to ensure that incoming connection protocol messages are handled properly. The routine now uses a two-stage process that first ensures the message applies on an existing connection and then processes the request. This corrects a loophole that allowed a connection probe request to be processed if it was sent to an unconnected port that had no names bound to it. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit e244a915ff7676b1567ba68102c9b53011f5b766 Author: Allan Stephens Date: Tue May 31 16:10:08 2011 -0400 tipc: Optimize creation of FIN messages Speeds up the creation of the FIN message that terminates a TIPC connection. The typical peer termination message is now created by duplicating the terminating port's standard payload message header and adjusting the message size, importance, and error code fields, rather than building all fields of the message from scratch. A FIN message that is directed to the port itself is created the same way. but also requires swapping the origin and destination address fields. In addition to reducing the work required to create FIN messages, these changes eliminate several instances of duplicated code, Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 741d9eb7b8f352071f56aacb77f5245b4e2a4fbe Author: Allan Stephens Date: Tue May 31 15:03:18 2011 -0400 tipc: Cleanup of message header size terminology Performs cosmetic cleanup of the symbolic names used to specify TIPC payload message header sizes. The revised names now more accurately reflect the payload messages in which they can appear. In addition, several places where these payload message symbol names were being used to create non-payload messages have been updated to use the proper internal message symbolic name. No functional changes are introduced by this rework. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 15f4e2b30372695573bc46102790094a92b3eb11 Author: Allan Stephens Date: Tue May 31 14:35:18 2011 -0400 tipc: Eliminate useless check when creating internal message Gets rid of code that allows tipc_msg_init() to create a short payload message header. This optimization is possible because there are no longer any callers who require this capability. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit a9948ba24f764694413207812d2b2dae46eb7275 Author: Allan Stephens Date: Mon May 30 15:50:35 2011 -0400 tipc: Remove unnecessary includes in socket code Eliminates a pair of #include statements for files that are brought in automatically by including core.h. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit f01a2b6378f757727b205419b677d45edfcc5a3b Author: Allan Stephens Date: Mon May 30 15:43:02 2011 -0400 tipc: Eliminate unused field in bearer structure Gets rid of counter that records the number of times a bearer has resumed after congestion or blocking, since the value is never referenced anywhere. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 0f305bf4218c75b6fd1283105bd88736157aa5d2 Author: Allan Stephens Date: Mon May 30 15:36:56 2011 -0400 tipc: Correct typo in link statistics output Fixes a minor error in the title of one of the message size profiling values printed as part of TIPC's link statistics. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 8af4638a297b43c4929fdc01456b7f0698de0c0e Author: Allan Stephens Date: Mon May 30 11:27:50 2011 -0400 tipc: Eliminate checks for empty zone list during name translation Gets rid of a pair of checks to see if a name sequence entry in TIPC's name table has an empty zone list. These checks are pointless since the zone list can never be empty (i.e. as soon as the list becomes empty the associated name sequence entry is deleted). Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit f6f0a4d2d05f758f011a506731e84160d140304b Author: Allan Stephens Date: Mon May 30 10:48:48 2011 -0400 tipc: Convert name table publication lists to standard kernel lists Modifies the main circular linked lists of publications used in TIPC's name table to use the standard kernel linked list type. This change simplifies the deletion of an existing publication by eliminating the need to search up to three lists to locate the publication. The use of standard list routines also helps improve the readability of the name table code by make it clearer what each list operation being performed is actually doing. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit b52124a50fa7b870a3d1a18a8ff56273c7d690dd Author: Allan Stephens Date: Mon May 30 09:44:38 2011 -0400 tipc: Partition name table instance array info into two parts Modifies the name table array structure that contains the name sequence instances for a given name type so that the publication lists associated with a given instance are stored in a dynamically allocated structure, rather than being embedded within the array entry itself. This change is being done for several reasons: 1) It reduces the amount of data that needs to be copied whenever a given array is expanded or contracted to accommodate the first publication of a new name sequence or the removal of the last publication of an existing name sequence. 2) It reduces the amount of memory associated with array entries that are currently unused. 3) It facilitates the upcoming conversion of the publication lists from TIPC-specific circular lists to standard kernel lists. (Standard lists cannot be used with the former array structure because the relocation of array entries during array expansion and contraction would corrupt the lists.) Note that, aside from introducing a small amount of code to dynamically allocate and free the structure that now holds publication list info, this change is largely a simple renaming exercise that replaces references to "sseq->LIST" with "sseq->info->LIST" (or "info->LIST"). Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 7eb878ed8e0eae67269439bfd82234f9ba52ffe4 Author: Allan Stephens Date: Wed May 25 13:28:27 2011 -0400 tipc: Eliminate redundant masking in message header routines Gets rid of unnecessary masking in two routines that set TIPC message header fields. (The msg_set_bits() routine already takes care of masking the new value to the correct size.) Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 74d33b32deaa9ec864d6db3255b3a17a459f75fe Author: Allan Stephens Date: Tue May 24 14:44:56 2011 -0400 tipc: Eliminate message header routines for caching destination node Gets rid of a pair of routines that provide support for temporarily caching the destination node for a message in the associated message buffer's application handle, since this capability is no longer used. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 7dd1bf28ccc44ef205c64aab618863faa914daa9 Author: Allan Stephens Date: Mon May 23 16:23:32 2011 -0400 tipc: Optimizations & corrections to message rejection Optimizes the creation of a returned payload message by duplicating the original message and then updating the small number of fields that need to be adjusted, rather than building the new message header from scratch. In addition, certain operations that are not always required are relocated so that they are only done if needed. These optimizations also have the effect of addressing other issues that were present previously: 1) Fixes a bug that caused the socket send routines to return the size of the returned message, rather than the size of the sent message, when a returnable payload message was sent to a non-existent destination port. 2) The message header of the returned message now matches that of the original message more closely. The header is now always the same size as the original header, and some message header fields that weren't being initialized in the returned message header are now populated correctly -- namely the "d" and "s" bits, and the upper bound of a multicast name instance (where present). Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 017dac31dc8a25ad45421715d88c3869e299fd35 Author: Allan Stephens Date: Tue May 24 13:20:09 2011 -0400 tipc: Optimize routing of returned payload messages Reduces the work involved in transmitting a returned payload message by doing only the work necessary to route such a message directly to the specified destination port, rather than invoking the code used to route an arbitrary message to an arbitrary destination. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 76d12527f74ad1b42b068252fdd2056c8ae48a99 Author: Allan Stephens Date: Mon May 23 13:57:25 2011 -0400 tipc: Add sanity check to detect rejection of non-payload messages Introduces an internal sanity check to ensure that the only undeliverable messages TIPC attempts to return to their origin are application payload messages. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit acc631bf6f597b36f3f014e12e69c710da610027 Author: Allan Stephens Date: Mon May 23 13:47:44 2011 -0400 tipc: Standardize exit logic for message rejection handling Modifies the routine that handles the rejection of payload messages so that it has a single exit point that frees up the rejected message, thereby eliminating some duplicated code. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 7ae4738e9e46a2f88e5d1332b7397bb96c527c44 Author: Allan Stephens Date: Mon May 23 13:38:39 2011 -0400 tipc: Remove unused sanity test macro Eliminates a TIPC-specific assert() macro that is no longer used. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 5e726900380cfff50436ca6c5e08b35b3357d82a Author: Allan Stephens Date: Mon May 23 13:14:18 2011 -0400 tipc: Convert fatal broadcast sanity check to non-fatal check Modifies the existing broadcast link sanity check that detects an attempt to send a message off-node when there are no available destinations so that it no longer causes a kernel panic; instead, the check now issues a warning and stack trace and then returns without sending the message anywhere. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 36099365c7cc64e5184b66b6eb094950a13f540c Merge: 22c8c93 f70490e Author: John W. Linville Date: Fri Jun 24 15:25:51 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem Conflicts: drivers/net/wireless/rtlwifi/pci.c include/linux/netlink.h commit f70490e6078abe1182437e629f67a7f0b6f08cd4 Author: Stephen Rothwell Date: Thu Jun 23 12:58:55 2011 +1000 Bluetooth: include scatterlist.h where needed net/bluetooth/smp.c: In function 'smp_e': net/bluetooth/smp.c:49:21: error: storage size of 'sg' isn't known net/bluetooth/smp.c:67:2: error: implicit declaration of function 'sg_init_one' net/bluetooth/smp.c:49:21: warning: unused variable 'sg' Caused by commit d22ef0bc83c5 ("Bluetooth: Add LE SMP Cryptoolbox functions"). Missing include file, presumably. This batch has been in the bluetooth tree since June 14, so it may have been exposed by the removal of linux/mm.h from netdevice.h ... Signed-off-by: Stephen Rothwell Signed-off-by: John W. Linville commit f775aa06d2de583bd291d4bf5814784c9ff7b9cc Author: Johannes Berg Date: Wed Jun 22 06:34:09 2011 -0700 iwlagn: don't use CCK rates for P2P interfaces P2P interfaces must not use CCK rates, only OFDM rates are allowed. To set this up, we need to set up the broadcast station to start with 6M instead of starting with 1M. Since the interface type can change, also reset the broadcast station when RXON changes. This will affect beacons as well. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 0b5b3ff15b301338ccec77ebc051308ac614d05d Author: Johannes Berg Date: Wed Jun 22 06:33:43 2011 -0700 iwlagn: fill beacon TX rate properly Use the rate that mac80211 requested to fill the uCode TX command for the beacon. Unfortunately, the uCode is (currently?) ignoring it, but now at least fill it properly. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 81704d2db99386d718e277cd5ac92663abec8a66 Author: Johannes Berg Date: Wed Jun 22 06:39:43 2011 -0700 iwlagn: extend host command timeout We've infrequently seen timeouts, make the wait time match the windows driver; hopefully our driver is just too impatient. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit f8d651a56ef5c9e26a1cddd4f169f5bf4f8dfa9b Author: Johannes Berg Date: Wed Jun 22 04:25:57 2011 -0700 iwlagn: fix cmd queue unmap When we stop the device while a command is in flight that uses multiple TBs, we can leak the DMA buffers for the second and higher TBs. Fix this by using iwlagn_unmap_tfd() as we do when we normally recover the entry. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 1e5cf9b0be4e8902c06bf9600ea0b256e731c862 Author: Johannes Berg Date: Tue Jun 21 04:30:56 2011 -0700 iwlagn: use PM ops macro Simplify the code and use SIMPLE_DEV_PM_OPS to define iwl_dev_pm_ops instead of doing the same thing manually. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit ec6452a5ec68498221a0ced3443cefd65b08be36 Author: Arnaud Lacombe Date: Wed Jun 8 01:42:11 2011 -0400 kconfig: do not overwrite symbol direct dependency in assignment Considering the following configuration: config F bool "F" choice AB bool "AB" config A bool "A" config B bool "B" endchoice if A config D bool default y if F select E config E bool "E" endif if B config D bool default y if F select E config E bool "E" endif The following configuration: CONFIG_F=y CONFIG_A=y # CONFIG_B is not set CONFIG_D=y CONFIG_E=y emits a spurious warning: (D) selects E which has unmet direct dependencies (B) If a symbol appears in two different branch of the tree, it should inherit the dependency of both parent, not just the last one. Reported-by: Yann E. Morin Tested-by: Yann E. Morin Signed-off-by: Arnaud Lacombe Signed-off-by: Michal Marek commit f210735fe2f17a6225432ee3d1239bcf23a8659c Author: Markus Trippelsdorf Date: Fri Jun 24 15:51:00 2011 +0200 headers_install: fix __packed in exported kernel headers checkpatch.pl warns about using __attribute__((packed)) in kernel headers: "__packed is preferred over __attribute__((packed))". If one follows that advice it could cause problems in the exported header files, because the outside world doesn't know about this shortcut. For example busybox will fail to compile: CC miscutils/ubi_attach_detach.o In file included from miscutils/ubi_attach_detach.c:27:0: /usr/include/mtd/ubi-user.h:330:3: error: conflicting types for ‘__packed’ /usr/include/mtd/ubi-user.h:314:3: note: previous declaration of ‘__packed’ was here ... Fix the problem by substituting __packed with __attribute__((packed)) in the header_install.pl script. Cc: Artem Bityutskiy CC: Joe Perches Signed-off-by: Markus Trippelsdorf Signed-off-by: Michal Marek commit 3bdccc880b39c2d8e2cdd3783107dc6799ba62ca Author: matt mooney Date: Fri May 13 16:41:12 2011 -0700 package: Makefile: fix perf target bug Specify --git-dir when building perf targets to allow out-of-tree builds using O=. The shell command in `git archive' had to be modified to allow proper file name expansion of the files listed in MANIFEST. Signed-off-by: matt mooney Signed-off-by: Michal Marek commit 5f3662278876906f3437a5cecd7cae518013b01b Author: Jiri Kosina Date: Fri Jun 24 13:50:44 2011 +0200 s390: do not touch sie64a.S with duplicate include removal This is a partial revert of e44ba033c565 ("treewide: remove duplicate includes"). The file is gone in s390 tree and will not exist any more. Reported-by: Stephen Rothwell Signed-off-by: Jiri Kosina commit 14705799138005dcb66fa9dfe3e9103e9ae7a897 Author: Markus Bollinger Date: Fri Jun 24 12:54:43 2011 +0200 ALSA: lola - Fix for Lola280 board - add/fix comments and debug messages - fix incomplete matrix init - comment out creation of buggy lola_dest_gain_mixer controls - minor optimisations Signed-off-by: Markus Bollinger Signed-off-by: Takashi Iwai commit a03a202e95fdaa3ff52ccfc2594ec531e5917816 Author: Guennadi Liakhovetski Date: Mon Jun 20 17:02:47 2011 +0200 dmaengine: failure to get a specific DMA channel is not critical There exist systems with multiple DMA controllers with different capabilities. For example, on some sh-mobile / rmobile systems there are DMA controllers, whose channels can be configured to be used with SD- and MMC-host controllers, serial ports etc. Besides there are also DMA controllers, that can only be used for one special function, e.g., for USB. In such cases the DMA client filter function can just choose to specify to the DMA driver, which channel it needs. Then the .device_alloc_chan_resources() method of the DMA driver will check, whether it can provide that dunction. If not, it will fail and the loop in __dma_request_channel() will continue to the next DMA device, until it finds a suitable one. This works fine with just one minor glitch: the kernel logs error messages like dmaengine: failed to get : (-) after each such non-critical failure. This patch lowers priority of this message to the debug level. Reported-by: Kuninori Morimoto Signed-off-by: Guennadi Liakhovetski Tested-by: Kuninori Morimoto Tested-by: Magnus Damm Signed-off-by: Vinod Koul commit 95cb3656c09fcf6577138337216c27744ebc91e2 Author: Jesper Juhl Date: Fri Jun 24 02:40:08 2011 -0700 net: Remove unneeded version.h includes from drivers/net/ It was pointed out by 'make versioncheck' that some includes of linux/version.h are not needed in drivers/net/. This patch removes them. Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit 2e925ddeb90ed13b2908c90c4ec31f17efe84359 Author: Takashi Iwai Date: Fri Jun 24 11:27:22 2011 +0200 ALSA: hda - Use alc_get_pfx_name() for all Realtek codecs Signed-off-by: Takashi Iwai commit 7c9d440e90c09c6c7b5c477217e491484d044353 Author: Joe Perches Date: Thu Jun 23 11:39:20 2011 -0700 treewide: transciever/transceiver spelling fixes Just tyops. Signed-off-by: Joe Perches Signed-off-by: Jiri Kosina commit dbc6221be7a2bf556fefe75ac939143d4e82ecaf Author: Joe Perches Date: Thu Jun 23 11:39:19 2011 -0700 treewide: Fix recieve/receive typos Just spelling fixes. Signed-off-by: Joe Perches Signed-off-by: Jiri Kosina commit 6843ca16f5e381ae80fc563931f8c74bda9fa29a Author: Takashi Iwai Date: Fri Jun 24 11:03:58 2011 +0200 ALSA: hda - Clean up multi-channel mixer name assignment in patch_realtek.c Change alc_get_line_out_pfx() in patch_realtek.c to provide the channel specific name and assign the index so that each caller doesn't have to set the channel name by itself. Also, check the multi-io case with the primary hp-out; for the multi-io channels, assign the channel name instead of "Headphone" with indices. This makes the mixer names more intuitive and reduces confusion. Signed-off-by: Takashi Iwai commit 0853f96f13e0b60f1c319bcd7f6a3a84d0d1e706 Author: Russell King Date: Thu Jun 23 14:24:09 2011 +0100 ARM: pm: ensure our temporary page table entry is removed from the TLB Ensure that our temporary page table entry is flushed from the TLB before we resume normal operations. This ensures that userspace won't trip over the stale TLB entry. Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 2c74a0cefa463a7a483b07ba4d2ea8e4ec7b996c Author: Russell King Date: Wed Jun 22 17:41:48 2011 +0100 ARM: pm: hide 1st and 2nd arguments to cpu_suspend from platform code The first and second arguments shouldn't concern platform code, so hide them from each platforms caller. Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 14c79bbed7e06135bcbccb2b92c19df7115b4502 Author: Kevin Hilman Date: Thu Jun 23 17:16:14 2011 -0700 ARM: pm: omap34xx: remove get_*_restore_pointer functions, directly use entry points Upon return from off-mode, the ROM code jumps to a restore function saved in the scratchpad. Based on SoC revision or errata, this restore entry point is different. Current code uses some helper functions in sleep34xx.S (get_*_restore_pointer) to get the restore function entry point. When returning from off-mode, this code is executed from SDRAM, so there's no reason to use these helper functions when using the SDRAM entry points directly would work just fine. This patch uses ENTRY/ENDPROC to create "real" entry points for these functions, and uses those values directly when writing the scratchpad. Tested all three entry points - restore_es3: 3430/n900 - restore_3630: 3630/Zoom3 - restore: 3530/Overo Suggested-by: Russell King Acked-by: Jean Pihet Acked-by: Santosh Shilimkar Signed-off-by: Kevin Hilman Signed-off-by: Russell King commit 89576a62b38d53c2080fa25472c85f86189c4557 Merge: 7912825 6935d13 Author: Paul Mundt Date: Fri Jun 24 17:53:30 2011 +0900 Merge branch 'sh/stable-updates' into sh-latest commit 1af7c5f0d48dca385f29610cc62435afc13237cf Author: Takashi Iwai Date: Fri Jun 24 10:43:03 2011 +0200 ALSA: hda - Add a workaround for invalid line-out setups Some BIOS set up the pin config wrongly as line-out although it's supposed to be a speaker out. In most cases, though, we can judge the validity by checking the connection type -- when it's FIXED, mostly it's an invalid line-out but a speaker. Signed-off-by: Takashi Iwai commit f9a09e003f3d6d1450e758f6aeb4a1872d9570e9 Merge: 3fccdfd d2a19da Author: Takashi Iwai Date: Fri Jun 24 10:36:25 2011 +0200 Merge branch 'fix/hda' into topic/hda commit 7912825d8b755e6a5b9839eab910f451b0271aba Author: Paul Mundt Date: Fri Jun 24 17:36:23 2011 +0900 sh: Tidy up pre-clkdev clk_get() error handling. clk_get() used to return NULL or an errno value depending on whether a clkdev lookup failed or a clock wasn't found in the primary clock list. As these disjoint paths were unified and everything now is handled via clkdev lookups, the NULL case never makes it out of clk_get(). Update accordingly and always look to the errno value. Signed-off-by: Paul Mundt commit 225ca45c3c64964163ea1fa85e2081af85956eed Author: Paul Mundt Date: Fri Jun 24 17:35:40 2011 +0900 sh: clkfwk: Convert to IS_ERR_OR_NULL. Trivial cleanup. Signed-off-by: Paul Mundt commit 3fccdfd891257acde3351d615ac3cb9c6db71d1f Author: Takashi Iwai Date: Fri Jun 24 10:35:05 2011 +0200 ALSA: hda - Allow multi-io with HP output for ALC662 & co Even if the machine has no line-out but only HP-out, try to detect the multi-io. It'll allow more possibilities for 5.1 outputs on laptops. Signed-off-by: Takashi Iwai commit 22c8c9343258feda9ea9ebb9e5f8cbb727b69454 Author: Sucheta Chakraborty Date: Wed Jun 22 02:52:23 2011 +0000 qlcnic: multi protocol internal loopback support added. Driver will generate loopback traffic pattern and do the test. And returns result of the test to application. Updated driver version to 5.0.19. Signed-off-by: Sucheta Chakraborty Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 9d6a6440fe30132e4d1f1aadd099345ced9178fb Author: Anirban Chakraborty Date: Wed Jun 22 02:52:22 2011 +0000 qlcnic: Add support to enable/disable FW dump capability In certain situations, it may be required to not enable FW dump capability. Add support to turn off/on FW dump capability. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit c55ad8e56b983f03589b38b4504b5d1f41161ff8 Author: Amit Kumar Salecha Date: Wed Jun 22 02:52:21 2011 +0000 qlcnic: fix default operating state of interface Currently interface shows status as RUNNING, even if there is no link. To fix this, netif_carrier_off should be called qlcnic_open(). Signed-off-by: Amit Kumar Salecha Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 5f6ec29abe434676f940357bcd66536bbc69e9f8 Author: Sucheta Chakraborty Date: Wed Jun 22 02:52:20 2011 +0000 qlcnic: fix initial number of msix entries in adapter. Calculation of number of MSI-X vectors was wrong on uniprocessor systems. Signed-off-by: Sucheta Chakraborty Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit c40f4ef77e5123a1d4064d7a34f708483b32b8be Author: Anirban Chakraborty Date: Wed Jun 22 02:52:19 2011 +0000 qlcnic: Add code to tune FW dump To accommodate change in FW dump template, it is required to modify the FW dump routine that captures cache data. Also, the default mask is changed to capture a dump that would cover all the protocols that this FW supports. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 287e38aa1adee01f63bb28e270afd3f738a6ab8c Author: Anirban Chakraborty Date: Wed Jun 22 02:52:18 2011 +0000 qlcnic: Remove holding api lock while taking the dump With the change in logic for taking FW dump across multiple drivers, there is no need to hold onto the api lock anymore in the fw dump path. Instead use rtnl_lock() to synchronize the access to FW dump data structs. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 602ca6f00a0d95a0d0cec84f492324ee71d14e09 Author: Sritej Velaga Date: Wed Jun 22 02:52:17 2011 +0000 qlcnic: Add capability to take FW dump deterministically In presence of multiple functions, current driver implementation does not guarantee that the FW dump is taken by the same function that forces it. Change it by adding a fw reset owner flag that could be changed in the device reset path and only when a function determines that it needs to reset it. Signed-off-by: Sritej Velaga Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 076f2cc449188b7d3d4866730afa3ac7be3e6640 Author: Russell King Date: Wed Jun 22 15:42:54 2011 +0100 ARM: pm: omap34xx: convert to generic suspend/resume support Convert omap34xx to use the generic CPU suspend/resume support, rather than implementing its own version. Tested on 3430 LDP. Reviewed-by: Kevin Hilman Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 2637ce30e145557bf89ebcf35b2d78e729e16e5a Author: Russell King Date: Wed Jun 22 12:54:41 2011 +0100 ARM: pm: omap34xx: remove misleading comment and use of r9 The code alludes to r9 being used to indicate what was lost over the suspend/resume transition. However, although r9 is set, it is never actually used. Also, the comments before the code (which refer to the value of r9) and the comments against the assignment of r9 contradict each other, so just remove them to avoid confusion. Reviewed-by: Kevin Hilman Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 857c1b81f8dd2e2a97d859d7e53dd955e2ab55af Author: Russell King Date: Wed Jun 22 12:44:32 2011 +0100 ARM: pm: omap34xx: no need to save all registers in sleep34xx.S The ABI allows called functions to corrupt r0-r3 and ip (r12). So its pointless saving these registers in the suspend code - the calling function will expect them to be corrupted and so won't rely on their contents after resume. Reviewed-by: Kevin Hilman Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit a9503d2185bbc28e498c435a07f24986c48b5cbe Author: Russell King Date: Tue Jun 21 16:29:30 2011 +0100 ARM: pm: pxa: move cpu_suspend into C code We don't need a veneer for cpu_suspend, it can be called directly from C code now. Move it into the PXA CPU suspend functions, along with the accumulator register saving/restoring. Signed-off-by: Russell King commit 372c0ac8aca7655b6a8920b10bf9563402ac19d8 Author: Russell King Date: Tue Jun 21 19:34:34 2011 +0100 ARM: pm: samsung: no need to call flush_cache_all() The core suspend code calls flush_cache_all() immediately prior to calling the suspend finisher function, so remove these needless calls from the finisher functions. Signed-off-by: Russell King commit e7089da9567fa8da37e35e1f81a5e3579d0d582d Author: Russell King Date: Tue Jun 21 19:29:26 2011 +0100 ARM: pm: samsung: move cpu_suspend into C code Move the call to cpu_suspend into C code, and noticing that all the s3c_cpu_save implementations are now identical, we can move this into the common samsung code. Signed-off-by: Russell King commit 4d01446fea61a32b6755ae1e11314ffca744dcaa Author: Russell King Date: Mon Jun 13 16:33:30 2011 +0100 ARM: pm: mach-s3c64xx: cleanup s3c_cpu_save s3c_cpu_save does not need to save any registers with the new cpu_suspend calling convention. Remove these redundant instructions. Acked-by: Frank Hofmann Signed-off-by: Russell King commit 769783a9300d47236766345cc98ce963122c2e4f Author: Russell King Date: Mon Jun 13 16:12:27 2011 +0100 ARM: pm: mach-exynos4: cleanup s3c_cpu_save s3c_cpu_save does not need to save any registers with the new cpu_suspend calling convention. Remove these redundant instructions. Signed-off-by: Russell King commit 3d32ead3f16f054fa7f4a85a34eb12c36fd76269 Author: Russell King Date: Mon Jun 13 16:10:16 2011 +0100 ARM: pm: mach-s5pv210: cleanup s3c_cpu_save s3c_cpu_save does not need to save any registers with the new cpu_suspend calling convention. Remove these redundant instructions. Signed-off-by: Russell King commit c4ac82c07dd3e4fb5d65a52ffa94e302f80b609d Author: Russell King Date: Mon Jun 13 16:03:19 2011 +0100 ARM: pm: plat-s3c24xx: cleanup s3c_cpu_save s3c_cpu_save does not need to save any registers with the new cpu_suspend calling convention. Remove these redundant instructions. Tested-by: Kukjin Kim Signed-off-by: Russell King commit 34c79de6b2ea5bc5734d970851fb966b49d55a17 Author: Russell King Date: Tue Jun 21 16:26:29 2011 +0100 ARM: pm: sa1100: move cpu_suspend into C code We don't need a veneer for cpu_suspend, it can be called directly from C code now. Move it into sa11x0_pm_enter() along with the re-enabling of clock switching. Signed-off-by: Russell King commit 14cd8fd574bce1cfbe510ccb1f73c7c1024d770f Author: Russell King Date: Tue Jun 21 16:32:58 2011 +0100 ARM: pm: move cpu_init() call into core code As we have core code dealing with CPU suspend/resume, we can re-initialize the CPUs exception banked registers via that code rather than having platforms deal with that level of detail. So, move the call to cpu_init() out of platform code into core code. Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit e8856a8797e76e6883ae81f8f9ecbb231cc535df Author: Russell King Date: Mon Jun 13 15:58:34 2011 +0100 ARM: pm: convert cpu_suspend() to a normal function cpu_suspend() has a weird calling method which makes it only possible to call from assembly code: it returns with a modified stack pointer to finish the suspend, but on resume, it 'returns' via a provided pointer. We can make cpu_suspend() appear to be a normal function merely by swapping the resume pointer argument and the link register. Do so, and update all callers to take account of this more traditional behaviour. Acked-by: Frank Hofmann Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit dbc125168fd7dda4ffb24a29548746c7bd3b3d87 Author: Russell King Date: Mon Jun 13 15:52:47 2011 +0100 ARM: pm: move sa1100 to use proper suspend func arg0 In the previous commit, we introduced an official way to supply an argument to the suspend function. Convert the sa1100 suspend code to use this method. Signed-off-by: Russell King commit 3799bbe57843d279008c9ec3406838966cad5f15 Author: Russell King Date: Mon Jun 13 15:28:40 2011 +0100 ARM: pm: rejig suspend follow-on function calling convention Save the suspend function pointer onto the stack for use when returning. Allocate r2 to pass an argument to the suspend function. Acked-by: Frank Hofmann Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 8111eaa6d424ab3ba8a4d7a3148d4681ae5c6ae3 Author: Russell King Date: Mon Jun 13 15:25:11 2011 +0100 ARM: pm: reallocate registers to avoid r2, r3 Avoid using r2 and r3 in the suspend code, allowing these to be passed further into the function as arguments. Acked-by: Frank Hofmann Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 5fa94c812c0001ac7c3d8868e956ec514734a352 Author: Russell King Date: Mon Jun 13 15:04:14 2011 +0100 ARM: pm: preserve r4 - r11 across a suspend Make cpu_suspend()..return function preserve r4 to r11 across a suspend cycle. This is in preparation of relieving platform support code from this task. Acked-by: Frank Hofmann Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 3fd431bd0cbc75a506b90b42619de3b04fe813a7 Author: Russell King Date: Mon Jun 13 13:53:06 2011 +0100 ARM: pm: extract common code from MULTI_CPU/!MULTI_CPU paths Very little code is different between these two paths now, so extract the common code. Acked-by: Frank Hofmann Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 2fefbcd58590cf33189c6178098e12b31b994b5f Author: Russell King Date: Mon Jun 13 13:45:34 2011 +0100 ARM: pm: move return address (for cpu_resume) to top of stack Move the return address for cpu_resume to the top of stack so that cpu_resume looks more like a normal function. Acked-by: Frank Hofmann Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 6b5f6ab0e1c33beaed828271f13c03ed02ee3c15 Author: Russell King Date: Mon Jun 13 13:39:44 2011 +0100 ARM: pm: make MULTI_CPU and !MULTI_CPU resume paths the same Eliminate the differences between MULTI_CPU and non-MULTI_CPU resume paths, making the saved structure identical irrespective of the way the kernel was configured. Acked-by: Frank Hofmann Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 3125af241cdb5a2421aad9f710b2744228a79084 Author: Russell King Date: Tue Jun 21 18:59:33 2011 +0100 ARM: pm: sa1100: no need to re-enable clock switching This is now taken care of by calling cpu_proc_init() in the resume path, so eliminate this unnecessary call. Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit b69874e4f530b0103e507f695c010d00cb85a4df Author: Russell King Date: Tue Jun 21 18:57:31 2011 +0100 ARM: pm: arrange for cpu_proc_init() to be called on resume cpu_proc_init() does processor specific initialization, which we do at boot time. We have been omitting to do this on resume, which causes some of this initialization to be skipped. We've also been skipping this on SMP initialization too. Ensure that cpu_proc_init() is always called appropriately by moving it into cpu_init(), and move cpu_init() to a more appropriate point in the boot initialization. Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit facbdce9a2a68098eabb06671c3b9d9b992bad60 Merge: f448e9c 794d78f Author: Paul Mundt Date: Fri Jun 24 16:28:31 2011 +0900 Merge branch 'sh/clkfwk' into sh-latest commit 794d78fea51504bad3880d14f354a9847f318f25 Author: Magnus Damm Date: Tue Jun 21 07:55:12 2011 +0000 drivers: sh: late disabling of clocks V2 This V2 patch changes the clock disabling behavior during boot. Two different changes are made: 1) Delay disabling of clocks until late in the boot process. This fixes an existing issue where in-use clocks without software reference are disabled by mistake during boot. One example of this is the handling of the Mackerel serial console output that shares clock with the I2C controller. 2) Write out the "disabled" state to the hardware for clocks that not have been used by the kernel. In other words, make sure so far unused clocks actually get turned off. Signed-off-by: Magnus Damm Acked-by: Simon Horman Signed-off-by: Paul Mundt commit 21e842579a5fd1ce746be4e34ac53ef67d6f0a6b Merge: d18cd55 a38a104 Author: David S. Miller Date: Thu Jun 23 23:39:33 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-next-2.6 commit a38a104d7af27b7697bf7c4272f4be5d1ec6ef4c Author: Don Skidmore Date: Fri May 20 03:05:14 2011 +0000 ixgbe: update driver version string Update the ixgbe driver version string to better match the Source Driver with similar device support. Likewise update to the current LAD Linux versioning scheme. Signed-of-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 1f4d51836f5e49f2e5201f1daf90239c04b3faf2 Author: Alexander Duyck Date: Sat May 14 01:16:02 2011 +0000 ixgbe: fix ring assignment issues for SR-IOV and drop cases This change fixes the fact that we would trigger a null pointer dereference or specify the wrong ring if the rings were restored. This change makes certain that the DROP queue is a static value, and all other rings are based on the ring offsets for the PF. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 2ba279e2f72a9112a2536eabc8fae5413bbbdfb6 Author: Emil Tantilov Date: Fri May 13 02:22:50 2011 +0000 ixgbe: disable RSC when Rx checksum is off Disabling Rx checksumming leads to performance degradation due to RSC causing packets to have incorrect checksums. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit c988ee829074073d3cd80090ef56a6e370b5c9b4 Author: Emil Tantilov Date: Fri May 13 02:22:45 2011 +0000 ixgbe: move reset code into a separate function Move reset code into a separate function to allow for reuse in other parts of the code. Signed-off-by: Emil Tantilov Signed-off-by: Jeff Kirsher commit 3a28926451a22a2b699962e738c8540da642c319 Author: Emil Tantilov Date: Fri May 13 02:22:40 2011 +0000 ixgbe: move setting RSC into a separate function Move setting RSC into a separate function to allow for reuse in other parts of the code. Signed-off-by: Emil Tantilov Signed-off-by: Jeff Kirsher commit e4911d57a45ca30771c64b56e552891fcd105070 Author: Alexander Duyck Date: Wed May 11 07:18:52 2011 +0000 ixgbe: add support for nfc addition and removal of filters This change is meant to allow for nfc to insert and remove filters in order to test the ethtool interface which includes it's own rules manager. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 3e05334f8be83e8529f1cbf4f4dea06a4d51d676 Author: Alexander Duyck Date: Wed May 11 07:18:47 2011 +0000 ixgbe: add support for displaying ntuple filters via the nfc interface This code adds support for displaying the filters that were added via the nfc interface. This is primarily to test the interface for now, but I am also looking into the feasibility of moving all of the ntuple filter code in ixgbe over to the nfc interface since it seems to be better implemented. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 91cd94bfe4f00fccf692e32dfa86a9fad0d61280 Author: Alexander Duyck Date: Wed May 11 07:18:41 2011 +0000 ixgbe: add basic support for setting and getting nfc controls This change adds basic support for the obtaining of RSS ring counts. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit c04f6ca84866ef207e009a08e4c34ca241df7aa2 Author: Alexander Duyck Date: Wed May 11 07:18:36 2011 +0000 ixgbe: update perfect filter framework to support retaining filters This change is meant to update the internal framework of ixgbe so that perfect filters can be stored and tracked via software. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 03ecf91aae757eeb70763a3393227c4597c87b23 Author: Alexander Duyck Date: Fri May 20 07:36:17 2011 +0000 ixgbe: fix flags relating to perfect filters to support coexistence I am removing the requirement that Ntuple filters have the same number of queues and requirements as ATR. As a result this change will make it so that all the Ntuple flag does is disable ATR for now. This change fixes an issue in which we were incorrectly re-enabling ATR when we exited perfect filter mode. This was due to the fact that the logic assumed RSS and DCB were mutually exclusive which is no longer the case. To correct this we just need to add a check to guarantee DCB is disabled before re-enabling ATR. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit b29a21694f7d12e40537e1e587ec47725849769b Author: Alexander Duyck Date: Wed May 11 07:18:26 2011 +0000 ixgbe: remove ntuple filtering Due to numerous issues in ntuple filters it has been decided to move the interface over to the network flow classification interface. As a first step to achieving this I first need to remove the old ntuple interface. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit d18cd551d15b38153ca3641c17ee8590a54b4c7b Author: David S. Miller Date: Thu Jun 23 21:28:52 2011 -0700 net: Fix build failures due to ip_is_fragment() It needs to be available even when CONFIG_INET is not set. Reported-by: Stephen Rothwell Reported-by: Randy Dunlap Signed-off-by: David S. Miller commit 5e05981b5b79afb42adb754c558ee050092d2d85 Merge: 2e48352 edfc86a Author: Michal Marek Date: Thu Jun 23 23:00:16 2011 +0200 Merge branch 'kbuild-implicit-parser-rule' of git://github.com/lacombar/linux-2.6 into kbuild/kbuild commit 1ae4e9b99682adfe9ae170ed593f26fe89eb65b5 Merge: df1553c 53dea36 Author: Mark Brown Date: Thu Jun 23 20:10:28 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit df1553c8debddc10c6fa9ebe39f5acf5b13bb190 Author: Mark Brown Date: Wed Jun 22 20:07:24 2011 +0100 ASoC: Add basic WM8918 support The WM8918 is register compatible with the WM8904 with a subset of the functionality. Add the device ID, a subsequent patch will ensure that only the relevant functionality is exported to userspace. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 780b75b4a0c3d6817cb2ef9493c1d1826cd6fc6b Author: Mark Brown Date: Tue Jun 7 23:32:46 2011 +0100 ASoC: Allow suppression of series updates on wm_hubs devices Some devices do not support manual updates of the DC servo. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit f9acf9fe5be653aa359c75d60fdaff03bf1ef471 Author: Mark Brown Date: Tue Jun 7 23:23:52 2011 +0100 ASoC: Trigger wm_hubs series update startup off a separate flag Allowing the two to be used independently. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 01dc9cc314ad1009f5b7356399b386015fdb0400 Author: David Wagner Date: Mon Jun 20 17:34:19 2011 +0200 UBI: clarify the volume notification types' doc I realized the new descriptions of ADDED and REMOVED could also be misleading: they can also be triggered after using a userland util (ubi{mk,rm}vol). Artem: amend the commentaries Signed-off-by David Wagner Signed-off-by: Artem Bityutskiy commit 4d054f2f1445aceedab3f9642692d55d2caa7ec6 Author: Dan Carpenter Date: Thu Jun 23 03:14:42 2011 -0700 dcb: use nlmsg_free() instead of kfree() These sk_buff structs were allocated with nlmsg_new() so they should be freed with nlmsg_free(). Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit ef7a474cef00594ccef432ce0840464e51ea4ac0 Author: Linus Walleij Date: Wed Jun 1 14:44:16 2011 +0200 mach-ux500: register a clock for the SMP TWD The SMP TWD on the ux500 will change frequency at the same time as the CPU. Loop back the frequency presented from the CPU into a clock that is looked up by the SMP TWD driver with the new cpufreq notifier hook. Signed-off-by: Linus Walleij commit 32d55ff91635c22dc853c532ec85dc16663d251f Author: Linus Walleij Date: Thu Jun 16 09:28:28 2011 +0200 mach-u300: set apropriate FIFO trigger levels The U300 just defined the fill level limits for the FIFOs to 1 item out of habit. It can easily handle four. Signed-off-by: Linus Walleij commit cde21de148a5bf474bbde59ebf046992fab3c77b Author: Linus Walleij Date: Mon May 30 15:51:47 2011 +0200 mach-u300: cleanup clockevent code Use the new clockevents_config_and_register() function to register the U300 clockevent, since that code requires ->cpumask to be set we set this even on this UP system to please the framework. Cc: Thomas Gleixner Signed-off-by: Linus Walleij commit c5314877edd2ea9cccca0ca87c9a439a8d356c14 Author: Robert Marklund Date: Tue Jun 21 14:01:02 2011 +0200 mach-ux500: add configs for snowball board Adds defconfig entries needed to boot a single ux500 kernel on the Snowball board. Signed-off-by: Robert Marklund commit 11ab32a734f5ee5d4f4f27f3488b0099447a2dbf Author: Mathieu J. Poirier Date: Fri Mar 25 09:29:01 2011 -0600 mach-ux500: Kconfig for snowball board This adds the necessary Kconfig entry for a Snowball board. Signed-off-by: Mathieu Poirier Signed-off-by: Robert Marklund commit c41fac8aa9cb9ca31a5b3d9ce1f3b0026b83c16d Author: Robert Marklund Date: Tue Jun 21 09:39:13 2011 +0200 mach-ux500: Add pin configuration for snowball board This sets up a few GPIO pins and some pinmuxing on platform boot for the Snowball board. Based on work from Mathieu J. Poirier . Signed-off-by: Robert Marklund commit 885d0fe40fb97d7f394c24ac9c88721015f852b3 Author: Mathieu J. Poirier Date: Fri Mar 25 09:28:58 2011 -0600 mach-ux500: Add SDI support for snowball board With SDI support for the Snowball we can boot from the SD card. Signed-off-by: Mathieu Poirier Signed-off-by: Linus Walleij Signed-off-by: Robert Marklund commit d769d05498f78efdc1adff2075b3a58af40dbb76 Author: Mathieu J. Poirier Date: Fri Mar 25 09:28:56 2011 -0600 mach-ux500: setting proper uart for snowball The UART setting in uncompress.h changes on the Snowball board. Signed-off-by: Mathieu Poirier Signed-off-by: Linus Walleij Signed-off-by: Robert Marklund commit 350abe0379f8106319f73cbcce37bfa2f0bfa05a Author: Robert Marklund Date: Mon Jun 20 15:55:46 2011 +0200 mach-ux500: add basic support for snowball board Based on work from Mathieu J. Poirier For more information on snowball please visit http://www.igloocommunity.org Signed-off-by: Robert Marklund commit 655f8919d549ad1872e24d826b6ce42530516d2e Author: stephen hemminger Date: Wed Jun 22 09:54:39 2011 +0000 bonding: add min links parameter to 802.3ad This adds support for a configuring the minimum number of links that must be active before asserting carrier. It is similar to the Cisco EtherChannel min-links feature. This allows setting the minimum number of member ports that must be up (link-up state) before marking the bond device as up (carrier on). This is useful for situations where higher level services such as clustering want to ensure a minimum number of low bandwidth links are active before switchover. See: http://bugzilla.vyatta.com/show_bug.cgi?id=7196 Signed-off-by: Stephen Hemminger Signed-off-by: Flavio Leitner Signed-off-by: Andy Gospodarek Signed-off-by: David S. Miller commit c706d7b986fde372d604d8cd81680ed2a96aa6a1 Merge: 033b565 9a11dd6 Author: Dave Airlie Date: Thu Jun 23 17:03:22 2011 +1000 Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-core-next * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: (58 commits) drm/nouveau: fix off-by-one drm/nouveau/temp: Add default calibration values for nv67 drm/nouveau/temp: Fix signed/unsigned int logic drm/nvc0: push prunk140 irq messages to debug loglevel drm/nouveau: un-blacklist nvce accel drm/nouveau: fix null pointer deref on pre-nv50 chipsets drm/nouveau: rework vram init/fini ordering a little drm/nouveau: shut lockdep up if last vm ref needs to destroy pgd drm/nouveau: fix display takedown order to match reverse init order drm/nvc0: enable per-client address spaces drm/nouveau: add some debug output if nouveau_mm busy at destroy time drm/nv50: enable use of per-client gpu address space drm/nouveau: remove implicit mapping of every bo into chan_vm drm/nouveau: remove 'chan' argument from nouveau_bo_new drm/nouveau: fixup gem_info ioctl to return client-specific bo virtual drm/nvc0: explicitly map PDISP semaphore buffer into each channel's vm drm/nv50-nvc0: lookup pushbuf virtual address on dma_push drm/nv84-nvc0: explicitly map semaphore buffer into channel vm drm/nv50-nvc0: explicitly map pushbuf bo into channel vm drm/nv50-nvc0: explicitly map notifier bo into channel vm ... commit 9a11dd65875f9e2401ded5d9a777574eacab814c Author: Ben Skeggs Date: Thu Jun 23 15:47:32 2011 +1000 drm/nouveau: fix off-by-one Signed-off-by: Ben Skeggs commit 6d13e9c18843092f3df418b42183f704f6dac053 Author: Emil Velikov Date: Wed Jun 22 02:54:39 2011 +0100 drm/nouveau/temp: Add default calibration values for nv67 Signed-off-by: Emil Velikov Signed-off-by: Ben Skeggs commit 40ce4279e17e99bb98d02b8746fcf20abff8185b Author: Emil Velikov Date: Wed Jun 22 02:13:23 2011 +0100 drm/nouveau/temp: Fix signed/unsigned int logic Many (all?) of the coefficients related to calculating the correct temperature are signed integers This patch correcly parses and stores those values It also ensures that the default offset is 0 (previously 1) Affected cards - the original nv50 and the nv40 family Signed-off-by: Emil Velikov Signed-off-by: Ben Skeggs commit 0b33c936599d75b8d8ff6868fa0cbd5676d88b89 Author: Ben Skeggs Date: Sun Jun 19 20:50:59 2011 +1000 drm/nvc0: push prunk140 irq messages to debug loglevel We know they happen, we don't know why. They're annoying, so hide them from users for the moment. Signed-off-by: Ben Skeggs commit 63305de75febc2b7f3252a8b9210e2ec84601640 Author: Ben Skeggs Date: Fri Jun 17 19:49:31 2011 +1000 drm/nouveau: un-blacklist nvce accel Reported working on IRC. Signed-off-by: Ben Skeggs commit bf08bcc6b7260db8eb5ef389e060e4b12bf10cae Author: Ben Skeggs Date: Mon Jun 13 12:23:35 2011 +1000 drm/nouveau: fix null pointer deref on pre-nv50 chipsets Signed-off-by: Ben Skeggs commit 24f246ac10ae6a6ae873045387d4501498869f74 Author: Ben Skeggs Date: Fri Jun 10 13:36:08 2011 +1000 drm/nouveau: rework vram init/fini ordering a little Commit "drm/nouveau: add some debug output if nouveau_mm busy at destroy time" revealed an issue where vram mm takedown would actually fail due to there still being nodes present, causing nouveau to leak a small amount of memory on module unload. This splits TTM/nouveau_mm a bit more cleanly and ensures nouveau_mm fini isn't done until all gpuobjs are also destroyed. Signed-off-by: Ben Skeggs commit 15ba79ad44fed84a9dabf6996144789424abae5b Author: Ben Skeggs Date: Wed Jun 8 18:40:34 2011 +1000 drm/nouveau: shut lockdep up if last vm ref needs to destroy pgd Signed-off-by: Ben Skeggs commit 06b75e3552394af66cc1ee4bfb5fe01a94929adb Author: Ben Skeggs Date: Wed Jun 8 18:29:12 2011 +1000 drm/nouveau: fix display takedown order to match reverse init order Signed-off-by: Ben Skeggs commit 5de8037ab466d397df17ff72382c33a908f42f6c Author: Ben Skeggs Date: Wed Jun 8 18:17:41 2011 +1000 drm/nvc0: enable per-client address spaces Signed-off-by: Ben Skeggs commit ad9ac437a500f8c0822bd5fe139af8ee2c132e15 Author: Ben Skeggs Date: Tue Jun 7 16:18:19 2011 +1000 drm/nouveau: add some debug output if nouveau_mm busy at destroy time Signed-off-by: Ben Skeggs commit e41f26e7d18951086611bc78cc35e244bd01d1ca Author: Ben Skeggs Date: Tue Jun 7 15:35:37 2011 +1000 drm/nv50: enable use of per-client gpu address space Signed-off-by: Ben Skeggs commit 2fd3db6f1457050bdebf97e45147ce6827e1742a Author: Ben Skeggs Date: Tue Jun 7 15:25:12 2011 +1000 drm/nouveau: remove implicit mapping of every bo into chan_vm Signed-off-by: Ben Skeggs commit 7375c95b343aa575940704a38482a334ea87ac6c Author: Ben Skeggs Date: Tue Jun 7 14:21:29 2011 +1000 drm/nouveau: remove 'chan' argument from nouveau_bo_new Signed-off-by: Ben Skeggs commit e758a3111914af7ee4351be86f1ac0efe87ed06e Author: Ben Skeggs Date: Tue Jun 7 13:28:11 2011 +1000 drm/nouveau: fixup gem_info ioctl to return client-specific bo virtual Signed-off-by: Ben Skeggs commit 3d483d575bfba52eae04bf2575239642c26c355a Author: Ben Skeggs Date: Tue Jun 7 15:43:31 2011 +1000 drm/nvc0: explicitly map PDISP semaphore buffer into each channel's vm Signed-off-by: Ben Skeggs commit 9f9f51fcb92ba3c1f395e0908407c8c1f5305a31 Author: Ben Skeggs Date: Tue Jun 7 13:23:47 2011 +1000 drm/nv50-nvc0: lookup pushbuf virtual address on dma_push Signed-off-by: Ben Skeggs commit d02836b4f5c24d2a38b3bdc10f05251e1f6e111d Author: Ben Skeggs Date: Tue Jun 7 15:21:23 2011 +1000 drm/nv84-nvc0: explicitly map semaphore buffer into channel vm Signed-off-by: Ben Skeggs commit ce163f6967121d77e3983aa06d416afacf3070c2 Author: Ben Skeggs Date: Tue Jun 7 13:20:43 2011 +1000 drm/nv50-nvc0: explicitly map pushbuf bo into channel vm Signed-off-by: Ben Skeggs commit 0b7187335fc2f38691cc169b202ff436abbefd68 Author: Ben Skeggs Date: Tue Jun 7 13:17:45 2011 +1000 drm/nv50-nvc0: explicitly map notifier bo into channel vm Signed-off-by: Ben Skeggs commit 45143cb53c793b11b875d555eb96ca32bcbea1c7 Author: Ben Skeggs Date: Tue Jun 7 13:12:44 2011 +1000 drm/nv50-nvc0: explicitly map fbcon fb into channel vm Signed-off-by: Ben Skeggs commit fd2871af3d2dad4e07df84941128b0813b5dd34b Author: Ben Skeggs Date: Mon Jun 6 14:07:04 2011 +1000 drm/nouveau: initial changes to support multiple VMAs per buffer object Signed-off-by: Ben Skeggs commit a3fcd0a975c4ae272c3e5db0632479633cef19ef Author: Ben Skeggs Date: Tue Jun 7 11:12:39 2011 +1000 drm/nv50-nvc0: completely disable relocs GPU virtual addresses are constant now so this should never be getting hit anyway and userspace shouldn't break from them being ignored. This is being done in preference to teaching the code how to deal with BOs that exist at different virtual addresses within separate VMs. Signed-off-by: Ben Skeggs commit 180cc30637b47dafa26e3202a41964b5ebdab365 Author: Ben Skeggs Date: Tue Jun 7 11:24:14 2011 +1000 drm/nouveau: convert bo.mem.start usage to bo.offset Signed-off-by: Ben Skeggs commit 07533ea549e725360209f958bb916085f18ff5b9 Author: Ben Skeggs Date: Tue Jun 7 11:02:38 2011 +1000 drm/nouveau: convert some bo.offset use to vma.offset Signed-off-by: Ben Skeggs commit d2f96666c56a501c5b74c645d81918b7805d46ce Author: Ben Skeggs Date: Mon Jun 6 20:54:42 2011 +1000 drm/nouveau: create temp vmas for both src and dst of bo moves Greatly simplifies a number of things, particularly once per-client GPU address spaces are involved. May add this back later once I know what things'll look like. Signed-off-by: Ben Skeggs commit f91bac5bf694e8060b7473fb0aefb8de09aa9595 Author: Ben Skeggs Date: Mon Jun 6 14:15:46 2011 +1000 drm/nouveau: store bo's page size in nouveau_bo Was previously assuming a page size of 4KiB unless a VMA was present to override it. Eventually, a buffer won't necessarily have a VMA at all at some stages of its life, so we need to store this info elsewhere. Signed-off-by: Ben Skeggs commit 111af5c100fa0c0b94301f719dd22dab87f5d0a4 Author: Ben Skeggs Date: Fri Jun 3 14:55:39 2011 +1000 drm/nouveau: skip move_notify() if bo does not have a vma attached Signed-off-by: Ben Skeggs commit 6e32fedc8b50d3571bdec4e9849e45659ac96599 Author: Ben Skeggs Date: Fri Jun 3 14:23:30 2011 +1000 drm/nouveau: will need to specify channel for vm-ful gpuobj allocations Abuses existing gpuobj_new() chan argument for this, which in turn forces all NVOBJ_FLAG_VM allocations to be done from the global heap, not suballocated from the channel's private heap. Not a problem though in practise. Signed-off-by: Ben Skeggs commit dd6a46cc922bec58e9c73782cd59f50a239c4fa7 Author: Ben Skeggs Date: Fri Jun 3 13:59:44 2011 +1000 drm/nouveau: initialise any vm for a channel before pushbuf/ntfy Signed-off-by: Ben Skeggs commit b7cb6c01ee549b6c7c365c92f156983d346295a3 Author: Ben Skeggs Date: Mon Jun 6 11:34:27 2011 +1000 drm/nouveau: modify gpuobj/ntfy takedown ordering gpuobj really needs splitting into channel/gpuobj code instead... Signed-off-by: Ben Skeggs commit 639212d01157266d9ee0b904fbc9f4a556e1c711 Author: Ben Skeggs Date: Fri Jun 3 16:18:26 2011 +1000 drm/nouveau/gem: implement stub hooks for GEM object open/close Signed-off-by: Ben Skeggs commit f6d4e62145b597c6249c1dc9c1c3ecd66ba165f0 Author: Ben Skeggs Date: Tue Jun 7 12:25:36 2011 +1000 drm/nouveau: remove 'chan' argument from nouveau_gem_new Userspace hasn't passed us a channel_hint for a long long time now, and there isn't actually a need to do so anymore anyway. Signed-off-by: Ben Skeggs commit 0320d7910b8905c7a99b3b0be369f91129a59f2f Author: Ben Skeggs Date: Fri Jun 3 10:20:52 2011 +1000 drm/nv50-nvc0/chan: inherit vm from fpriv, rather than chan_vm directly Signed-off-by: Ben Skeggs commit fe32b16e7998bae28209834c0f7c21766d7524ec Author: Ben Skeggs Date: Fri Jun 3 10:07:08 2011 +1000 drm/nv50-nvc0/vm: take client reference on shared channel vm Signed-off-by: Ben Skeggs commit b79181cbad3ab40509ea6c985b940d48d90abc0b Author: Ben Skeggs Date: Fri Jun 3 09:57:27 2011 +1000 drm/nv50-nvc0/vm: don't touch chan_vm Signed-off-by: Ben Skeggs commit d359d51cba731a72fede6c09b1d567de02f081dc Author: Ben Skeggs Date: Fri Jun 3 15:47:39 2011 +1000 drm/nouveau: no need to update bo.offset from vma after validate On chipsets using nouveau_vm, the virtual address stays constant, so the value set at bo creation time is fine. Signed-off-by: Ben Skeggs commit e8a863c10f4ca47e942886dddf70c35e3c2d5dd6 Author: Ben Skeggs Date: Wed Jun 1 19:18:48 2011 +1000 drm/nouveau: store a per-client channel list Removes the need to disable IRQs to lookup channel struct on every pushbuf ioctl, among others. Signed-off-by: Ben Skeggs commit f8656f0baa316d1f08e224248e0b40ade85a4e80 Author: Ben Skeggs Date: Tue May 31 11:12:55 2011 +1000 drm/nouveau: use NULL file_priv for DRM-created channels Signed-off-by: Ben Skeggs commit 3f0a68d8f8ba9d6c0cd9df948fbba90944c3da62 Author: Ben Skeggs Date: Tue May 31 11:11:28 2011 +1000 drm/nouveau: allocate structure to store per-client data Signed-off-by: Ben Skeggs commit 1562ffde94fc232e5b7d6d32f43abb3e25468dac Author: Ben Skeggs Date: Wed Jun 1 14:11:10 2011 +1000 drm/nouveau: silence error for missing dac loadval table There's lots of boards (all recent ones) that don't have this anymore, so punt the message to debug loglevel. Signed-off-by: Ben Skeggs commit e540afc32585664840506a7198966d18318381af Author: Ben Skeggs Date: Mon May 30 12:53:37 2011 +1000 drm/nv50: DCB table quirks for another busted XFX board Signed-off-by: Ben Skeggs commit ad830d23d31a51997ca0780dddbe919eb1bfb879 Author: Ben Skeggs Date: Fri May 27 16:18:10 2011 +1000 drm/nouveau: log if accel is disabled by default on a chipset Signed-off-by: Ben Skeggs commit 752ab0a0927add86c8b6604e01147041509b2af4 Author: Ben Skeggs Date: Fri May 27 15:50:59 2011 +1000 drm/nvc0/gr: fill in some more data for 0xc1/0xc8/0xce Signed-off-by: Ben Skeggs commit 2b6f1c5f17305dd5d9b1c566be31101a66fae4c9 Author: Ben Skeggs Date: Fri May 27 08:36:45 2011 +1000 drm/nvc0/gr: fix typo in class9197 init Reported-by: Christoph Bumiller Signed-off-by: Ben Skeggs commit 066d65db11fe4049bae52199c4b76fd6d9e95d47 Author: Ben Skeggs Date: Thu May 26 12:12:43 2011 +1000 drm/nvc0/gr: calculate magicgpc918 ourselves Not a clue what it is yet, but we get the same numbers as NVIDIA now. My 465 didn't seem to care to greatly *what* I bashed into these registers.. Signed-off-by: Ben Skeggs commit a219997a3b17baea478c9e99ac62b8b6b78b15d4 Author: Ben Skeggs Date: Thu May 26 10:54:05 2011 +1000 drm/nvc0/gr: add some missing magics for 0xc1/0xc8/0xce Signed-off-by: Ben Skeggs commit 0411de854898a2402cf4bd915bed7ec9a6b76f9a Author: Ben Skeggs Date: Wed May 25 18:32:44 2011 +1000 drm/nvc0/gr: import and use our own fuc by default The ability to use NVIDIA's fuc has been retained *temporarily* in order to better debug any issues that may be lingering in our initial attempt at writing this ucode. Once I'm fairly confident we're okay, it'll be removed. There's a number of things not implemented by this fuc currently, but most of it is sets of state that our context setup would not have used anyway. No doubt we'll find out what they're for at some point, and implement it if required. This has been tested on 0xc0/0xc4 thus far, and from what I could tell it worked as well as NVIDIA's. It's also been tested on 0xc1, but even with NVIDIA's fuc that chipset doesn't work correctly with nouveau yet. 0xc3/0xc8/0xce should in theory be supported too, but I don't have the hardware to check that. There's no doubt numerous bugs to squash yet, please report any! Signed-off-by: Ben Skeggs commit f8522fc80f2e0392fc44b069f61721bd25907270 Author: Ben Skeggs Date: Wed May 25 17:22:43 2011 +1000 drm/nvc0: fix suspend/resume of PGRAPH/PCOPYn We need the physical VRAM address in vinst, even for objects mapped into a vm, as the gpuobj suspend/resume code uses PMEM to access the object. Previously, vinst was overloaded to mean "VRAM address" for !VM objects, and "VM address" for VM objects, causing the wrong data to be accessed during suspend/resume. Signed-off-by: Ben Skeggs commit aba99a8400e0b1ca9e6306e3a71013cc7a25bc29 Author: Ben Skeggs Date: Wed May 25 14:48:50 2011 +1000 drm/nouveau: default to noaccel on 0xc1/0xc8/0xce for now Until we know these should work properly, would much rather default to noaccel than risk giving people corruption/hangs out of the box.. Signed-off-by: Ben Skeggs commit d4409cc7e26b5f20b38a791e4c29b6c221e95acf Author: Ben Skeggs Date: Tue May 24 16:06:42 2011 +1000 drm/nvc1/gr: switch on acceleration support There's issues with certain 3D apps still, unknown whether this is a kernel issue or not.. It does appear that it may be in the 3D driver however. Signed-off-by: Ben Skeggs commit b53a2d06496d9de109620e4fe136b654bb0ce249 Author: Ben Skeggs Date: Tue May 24 15:44:37 2011 +1000 drm/nvc0/gr: enable 0xc8/0xce support, no idea if it works or not.. Signed-off-by: Ben Skeggs commit e1b89b1ca59f558d4f7ec18e0b6a8eb34437c8d9 Author: Ben Skeggs Date: Tue May 24 14:57:53 2011 +1000 drm/nvc0/gr: some initial state modifications Signed-off-by: Ben Skeggs commit 6f376460e42220dfd44711cff3ef8d0309e277d4 Author: Ben Skeggs Date: Tue May 24 14:46:06 2011 +1000 drm/nvc0/gr: 0x9197/0x9297 state init Signed-off-by: Ben Skeggs commit 847adea2c701b519b43d8c958c5082a22eeba346 Author: Ben Skeggs Date: Tue May 24 14:37:41 2011 +1000 drm/nvc0/gr: macro to determine fermi class, will use it in a few places Signed-off-by: Ben Skeggs commit 068da16198ad09343b0c3647d26f81683921bc84 Author: Ben Skeggs Date: Tue May 24 11:54:42 2011 +1000 drm/nvc0/fifo: fix typos in unload_context Signed-off-by: Ben Skeggs commit 310ff414b32e66d832307bedd99ba75908e4e36d Author: Ben Skeggs Date: Tue May 24 11:47:09 2011 +1000 drm/nvc0/fb: allocate page for some unknown PFFB object Fixes DMAR faults during accel, more than likely a similar problem to what was solved on nv50 previously. Signed-off-by: Ben Skeggs commit 74cfad188b9e7e063ddb8d74fa20b38cbad10d79 Author: Martin Peres Date: Thu May 12 22:40:47 2011 +0200 drm/nvc0: Read temperature on Fermi like we do on nv84+ Signed-off-by: Martin Peres Signed-off-by: Ben Skeggs commit 6ec36b5848a8336d3a0010727b9365c3254d2d2e Author: Stuart Yoder Date: Thu May 19 08:54:26 2011 -0500 powerpc: make irq_choose_cpu() available to all PIC drivers Move irq_choose_cpu() into arch/powerpc/kernel/irq.c so that it can be used by other PIC drivers. The function is not MPIC-specific. Signed-off-by: Stuart Yoder Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 47fe819e7555b31d24f8a11d9b2568d8f5de8b01 Author: Kumar Gala Date: Fri May 20 00:00:21 2011 -0500 powerpc/qe: Limit QE support to ppc32 Only 32-bit SoCs have a QUICC Engine so limit the config option to PPC32. Signed-off-by: Kumar Gala commit 6d251ddff82d61ebff211f95ce826f8d81283181 Author: Kumar Gala Date: Thu May 19 21:59:23 2011 -0500 powerpc/85xx: Add PCI support in 64-bit mode on P5020DS Signed-off-by: Kumar Gala commit c065488f1acfc0be75584c0fe156fc806820f39d Author: Kumar Gala Date: Thu May 19 22:26:18 2011 -0500 powerpc/pci: Move FSL fixup from 32-bit to common We need the FSL specific header fixup code on both 32-bit and 64-bit platforms so just move the code into pci-common.c. Signed-off-by: Kumar Gala commit 2602a21231645f0923595a6ae2757222f6802e3f Author: Roy Zang Date: Thu May 19 20:20:13 2011 -0500 powerpc/85xx: Add basic P1023RDS board support The P1023 processor is an e500v2 based SoC that utilizes the DPAA networking architecture. This adds basic board support for non-DPAA functionality (device tree, board file, etc). Signed-off-by: Roy Zang Signed-off-by: Haiying Wang Signed-off-by: Kumar Gala commit 1325a684b553d4b5c41ae0482f8991b43f945746 Author: Ashish Kalra Date: Fri Apr 22 16:48:27 2011 -0500 powerpc/85xx: Save scratch registers to thread info instead of using SPRGs. We expect this is actually faster, and we end up needing more space than we can get from the SPRGs in some instances. This is also useful when running as a guest OS - SPRGs4-7 do not have guest versions. 8 slots are allocated in thread_info for this even though we only actually use 4 of them - this allows space for future code to have more scratch space (and we know we'll need it for things like hugetlb). Signed-off-by: Ashish Kalra Signed-off-by: Becky Bruce Signed-off-by: Kumar Gala commit dc2c9c52b604f51b1416ed87ff54a1c77a1a8b5b Author: Scott Wood Date: Thu Aug 26 02:49:07 2010 -0500 powerpc/85xx: Set up doorbells even with no mpic In cases like when the platform is used under hypervisor we will NOT have an MPIC controller but still want doorbells setup. Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit 470788d4a070a07e9ab73d2ccc59d44833ab1a0e Author: Kumar Gala Date: Thu May 19 19:56:50 2011 -0500 powerpc/fsl_pci: Simplify matching logic for PCI_FIXUP_HEADER We fixup every FSL PCIe Root Complex we need to fixup a few things. Rather than adding every device under the sun we move to just matching only on the vendor (PCI_VENDOR_ID_FREESCALE) and than check that we are a PCIe controller in host mode in the fixup. Signed-off-by: Kumar Gala commit b9a4334239b4312bcb527a81e17e2a82b70f8599 Author: Kumar Gala Date: Mon May 9 15:08:57 2011 -0500 powerpc/85xx: Cleanup PCIe support on corenet_ds boards Several changes on PCIe support on P3041DS/P4080DS/P5020DS boards: * Add support for "fsl,qoriq-pcie-v2.2" needed by P3041 & P5020 * Removed support for setting primary_phb_addr as we have no ISA need * Add PCI controller to of_platform_bus_probe (for EDAC) * Cleanup building w/SWIOTLB off on P4080DS (not stricly PCIe related) Signed-off-by: Kai.Jiang Signed-off-by: Laurentiu TUDOR Signed-off-by: Kumar Gala commit 169296b38f06b981ee7163aaa1c03f03953cc37f Author: Kumar Gala Date: Mon May 9 14:13:13 2011 -0500 powerpc/85xx: Updates to P4080DS device tree * Added BSD dual-license * Moved mpic-parent to root so we dont need to duplicate everywhere * Added next level cache from L2 to CPC * Moved to 4-cell MPIC interrupt properties * Added 3 MSI banks * Added numerous missing nodes: soc-sram-error, guts, pins, clockgen, rcpm, sfp, serdes, etc. * Reworked PCIe interrupts to be at virtual bridge level Signed-off-by: Kumar Gala commit e181877d8674b7e157f6efe6567d2ab78c4b4955 Author: Kumar Gala Date: Mon May 9 15:37:31 2011 -0500 powerpc/85xx: Add P3041DS device tree Add basic device tree for P3041DS board. This device tree excludes support for DPAA and RapidIO nodes. Signed-off-by: Kumar Gala commit edf1b8fd93eb283fa9101c33765164133391ded9 Author: Kumar Gala Date: Mon May 9 15:24:57 2011 -0500 powerpc/85xx: Add P5020DS device tree Add basic device tree for P5020DS board. This device tree excludes support for DPAA and RapidIO nodes. Signed-off-by: Kumar Gala commit e6bdc3744ee272e85b61cf92db62a787241980f2 Author: Kumar Gala Date: Thu May 19 13:22:25 2011 -0500 powerpc: Add a defconfig for 'corenet' 32-bit platforms The e500mc and e5500 based cores are only available on corenet based SoCs. We use this name for the P204x, P3040, P4040, P4080, P50x0 SoCs and any future processors in these families. Signed-off-by: Kumar Gala commit 019f5f18eec1ac54215df69cafb8c7b770f75f19 Author: Kumar Gala Date: Thu May 19 13:19:52 2011 -0500 powerpc: Rename e55xx_smp_defconfig to corenet64_smp_defconfig Rather than trying to use the core name we use corenet to distinquish the platform/core combo. corenet64 will be a 64-bit kernel build and we'll add a new defconfig for corenet32 for a 32-bit platforms. Signed-off-by: Kumar Gala commit d902db1eb60387040fe541573083e47469db50ac Author: Frederic Weisbecker Date: Wed Jun 8 19:31:56 2011 +0200 sched: Generalize sleep inside spinlock detection The sleeping inside spinlock detection is actually used for more general sleeping inside atomic sections debugging: preemption disabled, rcu read side critical sections, interrupts, interrupt disabled, etc... Change the name of the config and its help section to reflect its more general role. Signed-off-by: Frederic Weisbecker Acked-by: Paul E. McKenney Acked-by: Randy Dunlap Cc: Peter Zijlstra Cc: Ingo Molnar commit a7de915383a6d5c05663f9badbd10d5a87bc1586 Author: Thomas Gleixner Date: Wed Jun 22 22:53:27 2011 +0200 genirq: Remove unused CHECK_IRQ_PER_CPU() No more users. Kill it. Signed-off-by: Thomas Gleixner commit cd15598707aff52da4302d9b6a3fc878bca27383 Author: Hauke Mehrtens Date: Tue Jun 21 20:57:16 2011 +0200 ssb: add __devinit to some functions Two functions in ssb are using register_pci_controller() which is __devinit. The functions ssb_pcicore_init_hostmode() and ssb_gige_probe() should also be __devinit. This fixes the following warning: WARNING: vmlinux.o(.text+0x2727b8): Section mismatch in reference from the function ssb_pcicore_init_hostmode() to the function .devinit.text:register_pci_controller() The function ssb_pcicore_init_hostmode() references the function __devinit register_pci_controller(). This is often because ssb_pcicore_init_hostmode lacks a __devinit annotation or the annotation of register_pci_controller is wrong. WARNING: vmlinux.o(.text+0x273398): Section mismatch in reference from the function ssb_gige_probe() to the function .devinit.text:register_pci_controller() The function ssb_gige_probe() references the function __devinit register_pci_controller(). This is often because ssb_gige_probe lacks a __devinit annotation or the annotation of register_pci_controller is wrong. Reported-by: Ralf Baechle Signed-off-by: Hauke Mehrtens Signed-off-by: John W. Linville commit 999a7a88f1b062af5617fa55df317446af86a3da Author: Gabor Juhos Date: Tue Jun 21 11:23:52 2011 +0200 ath9k: enable support for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 7d95847c9b3631d31f657d8cede153b518ed9e2e Author: Gabor Juhos Date: Tue Jun 21 11:23:51 2011 +0200 ath9k: add external_reset callback to ath9k_platfom_data for AR9330 The patch adds a callback to ath9k_platform_data. If the callback is provided by the platform code, then it can be used to hard reset the WMAC device. The callback is required for doing a hard reset of the AR9330 chips to get them working again after a hang. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 4187afa29a73fec1f68243c03437e7c1b37f315d Author: Gabor Juhos Date: Tue Jun 21 11:23:50 2011 +0200 ath9k: configure internal regulator for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 7b09e49ec822fe2bee34b45af89c72beed254a23 Author: Gabor Juhos Date: Tue Jun 21 11:23:49 2011 +0200 ath9k: configure diversity based on eeprom contents for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit dfc3a7b66c963dfadcd0103c71b6bdaab9b2f738 Author: Gabor Juhos Date: Tue Jun 21 11:23:48 2011 +0200 ath9k: fix few register offsets for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit c4cf2c589ddf7526fa1a3f28580ce8e4e611dd3d Author: Gabor Juhos Date: Tue Jun 21 11:23:47 2011 +0200 ath9k: set diversity group for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit e7ef5bc079672058dcb791a378dc3beb134bd84e Author: Gabor Juhos Date: Tue Jun 21 11:23:46 2011 +0200 ath9k: add fast_div_bias configuration for diversity group 1 The patch adds the missing configuration code for diversity group 1. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 223c5a87851369de99fa6e6f22c443ed08a0332b Author: Gabor Juhos Date: Tue Jun 21 11:23:45 2011 +0200 ath9k: remove superfluous parentheses Also remove two empty lines. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit cd0ed1b5fc06cea30a97b131ff4570f8dca3cbd2 Author: Gabor Juhos Date: Tue Jun 21 11:23:44 2011 +0200 ath9k: fix antenna diversity configuration for non AR9485 chips The current values must be used only on AR9485 chips. Other chips requires different values. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 66ce235a9d6ea8a7b7089d29000eb715c66a6221 Author: Gabor Juhos Date: Tue Jun 21 11:23:43 2011 +0200 ath9k: add a missing case statement to ath_ant_div_comb_alt_check The 'ar9003_hw_antdiv_comb_conf_get' function sets div_group to 2 however that value is not used in 'ath_ant_div_comb_alt_check'. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 7216198d31450e273fefcb94b4eb3ea07da99131 Author: Gabor Juhos Date: Tue Jun 21 11:23:42 2011 +0200 ath9k: use correct max_streams for AR9330 The AR9330 is a single stream chip. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 431da56a814959753f7ad6962f0bd5fa0430e508 Author: Gabor Juhos Date: Tue Jun 21 11:23:41 2011 +0200 ath9k: enable antenna diversity for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 0c453732a757d8160e99a23e9b551de8dc7e642c Author: Gabor Juhos Date: Tue Jun 21 11:23:40 2011 +0200 ath9k: set NF limits for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit dc9aa5fc283c79e9aa8d9d1c537d203081634bb1 Author: Gabor Juhos Date: Tue Jun 21 11:23:39 2011 +0200 ath9k: configure xpa bias level for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 5b5c033b59e74392442eb4b052f0b874a0a31c7d Author: Gabor Juhos Date: Tue Jun 21 11:23:38 2011 +0200 ath9k: use correct EEPROM base for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 7d790a21e5d4674fb25da62f560453bc3c248a93 Author: Gabor Juhos Date: Tue Jun 21 11:23:37 2011 +0200 ath9k: enable tuning capacitance configuration for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 7dc5966d5c4a1bc48f1eca01403b187960ad72f4 Author: Gabor Juhos Date: Tue Jun 21 11:23:36 2011 +0200 ath9k: skip internal regulator configuration for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 4033bdad63a871da4c406a4a16d01b6de0a7e56e Author: Gabor Juhos Date: Tue Jun 21 11:23:35 2011 +0200 ath9k: enable TX/RX data byte swap for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 5acb4b9366b77d27f79706cb99b4d34e5076b953 Author: Gabor Juhos Date: Tue Jun 21 11:23:34 2011 +0200 ath9k: configure RF channel frequency for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit dbb204e39fec2dc4800f19eae321ad7e1b95f2fa Author: Gabor Juhos Date: Tue Jun 21 11:23:33 2011 +0200 ath9k: fix channel frequency calculation for AR9340 A multiplication is missing from the current formula. Cc: Vasanthakumar Thiagarajan Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit c1acfbe8637069864b515907025efbbfb577a43c Author: Gabor Juhos Date: Tue Jun 21 11:23:32 2011 +0200 ath9k: read spur frequency information from eeprom for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 0e707a9473bf981111d09ced796e79aad4b4fbca Author: Gabor Juhos Date: Tue Jun 21 11:23:31 2011 +0200 ath9k: don't enable LDPC for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 88e641df19a8f9f36e4ca18f8cdff000be8d5ef9 Author: Gabor Juhos Date: Tue Jun 21 11:23:30 2011 +0200 ath9k: use different BB watchdog timeout value for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit a5415d625d35871dd8eaf3784a402f36c028c29d Author: Gabor Juhos Date: Tue Jun 21 11:23:29 2011 +0200 ath9k: add AR9330 specific PLL initialization Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 77a27da38916626aaaa994e716514dfa990290f7 Author: Gabor Juhos Date: Tue Jun 21 11:23:28 2011 +0200 ath9k: initialize rx gain table for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit a208db944142db1700c6676dc724454213986bed Author: Gabor Juhos Date: Tue Jun 21 11:23:27 2011 +0200 ath9k: initialize tx gain table for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 172805ad46b78717a738ca5c7908c68f0326d3a9 Author: Gabor Juhos Date: Tue Jun 21 11:23:26 2011 +0200 ath9k: initialize mode registers for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 70722ea4344410b99abcedc7309c54db971308fd Author: Gabor Juhos Date: Tue Jun 21 11:23:25 2011 +0200 ath9k: add AR9330 initvals Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit e9b7c5914d4f3a066efcab272b1431d1dbb77297 Author: Gabor Juhos Date: Tue Jun 21 11:23:24 2011 +0200 ath9k: add platform device id for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 3762561aa8afb0bd9fb60d3d847961f9945f8143 Author: Gabor Juhos Date: Tue Jun 21 11:23:23 2011 +0200 ath9k: add MAC revision detection for AR9330 The AR9330 1.0 and 1.1 are using the same revision, thus it is not possible to distinguish the two chips. The platform setup code can distinguish the chips based on the SoC revision. Add a callback function to ath9k_platform_data in order to allow getting the revision number from the platform code. Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 03689301da71fa80957a166e211431bb6e2904e3 Author: Gabor Juhos Date: Tue Jun 21 11:23:22 2011 +0200 ath9k: define device id for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 2c8e59379a02c5c2a478e8ce6ebc481793076792 Author: Gabor Juhos Date: Tue Jun 21 11:23:21 2011 +0200 ath9k: define mac version for AR9330 Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 7952ca5b20e1d54a3bfdfd976086c6f9df5873a2 Author: Mohammed Shafi Shajakhan Date: Tue Jun 21 14:51:46 2011 +0530 ath9k_hw: Fix calculation of PAPRD training power at 5Ghz higher the chainmask, lesser the power_delta to be added to the paprd_training_power Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 9720bb3ab0b80659c63ed337eab66104a4156db0 Author: Johannes Berg Date: Tue Jun 21 09:45:33 2011 +0200 nl80211: use netlink consistent dump feature for BSS dumps Use the new consistent dump feature from (generic) netlink to advertise when dumps are incomplete. Readers may note that this does not initialize the rdev->bss_generation counter to a non-zero value. This is still OK since the value is modified only under spinlock when the list is modified. Since the dump code holds the spinlock, the value will either be > 0 already, or the list will still be empty in which case a consistent dump will actually be made (and be empty). Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit a5ffddb70c5cab29fa00e2fdf12217b64b940796 Author: Amitkumar Karwar Date: Mon Jun 20 15:21:48 2011 -0700 mwifiex: remove casts of void pointers In some cases local pointers are used to cast void pointers passed to the function. Those unnecessary local pointers are also removed. This patch was inspired by Joe Perches' patch [PATCH net-next 1/2] wireless: Remove casts of void *; and the comments from Julian Calaby. Signed-off-by: Amitkumar Karwar Cc: Joe Perches Cc: Julian Calaby Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 55f7782e14032c70051aa92d882b4effda407ad5 Author: Jussi Kivilinna Date: Mon Jun 20 14:42:54 2011 +0300 zd1211rw: detect stalled beacon interrupt faster As USB_INT_ID_RETRY_FAILED can override USB_INT_ID_REGS, beacon interrupt (CR_INTERRUPT) might be lost. Problem is that when device trigger CR_INTERRUPT it disables HW interrupt. Now if USB_INT_ID_REGS with CR_INTERRUPT gets lost, beacon interrupt stays disabled until beacon watchdog notices the stall. This happen very often on heavy TX. Improve watchdog to trigger earlier, after three missing beacon interrupts. Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit dde4673b8d73dd873e1a62774728e4b7f972facd Author: Jussi Kivilinna Date: Mon Jun 20 14:42:49 2011 +0300 zd1211rw: don't let zd_mac_config_beacon() run too long from beacon interrupt handler zd_mac_config_beacon() has only limited time to set up beacon when called from beacon interrupt handler/worker. So do not let it retry acquiring beacon fifo semaphore in interrupt handler. Beacon fifo semaphore should not be locked by firmware anyway at this time, it's only locked when device is using/txing beacon. Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit c900eff30a14ecf209ee7a17a7c3c54890694ce6 Author: Jussi Kivilinna Date: Mon Jun 20 14:42:44 2011 +0300 zd1211rw: handle lost read-reg interrupts Device losses read-reg interrupts. By looking at usbmon it appears that USB_INT_ID_RETRY_FAILED can override USB_INT_ID_REGS. This causes read command to timeout, usually under heavy TX. Fix by retrying read registers again if USB_INT_ID_RETRY_FAILED is received while waiting for USB_INT_ID_REGS. However USB_INT_ID_REGS is not always lost but is received after USB_INT_ID_RETRY_FAILED and is usually received by the retried read command. USB_INT_ID_REGS of the retry is then left unhandled and might be received by next read command. Handle this by ignoring previous USB_INT_ID_REGS that doesn't match current read command request. Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit f762d8c3f8b502b93d20bd755fc30ce99d3d0abd Author: Jussi Kivilinna Date: Mon Jun 20 14:42:39 2011 +0300 zd1211rw: only update HW beacon if new beacon differs from currect Update HW beacon only when needed. This appears to make device work in AP-mode (dtim_period=1) somewhat more stable. Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit b405e1b83dc2bb662c4be2612674a8d0ef900e26 Author: Jussi Kivilinna Date: Mon Jun 20 14:42:33 2011 +0300 zd1211rw: make 'handle_rx_packet: invalid, small RX packet' message debug-only This message is should be debug-only as it tells almost nothing useful. It also happens very often and just floods logs. Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit 7a1d6564a15183cb5994656040966df09af8390f Author: Jussi Kivilinna Date: Mon Jun 20 14:42:28 2011 +0300 zd1211rw: fix invalid signal values from device Driver uses IEEE80211_HW_SIGNAL_UNSPEC and so signal values reported to mac80211 should be in range 0..100. Sometimes device return out of range values. These out of range values can then trigger warning in cfg80211_inform_bss_frame. This patch adds checks to enforce range returned from driver to mac80211 be in 0..100 range. Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit 670dc2833d144375eac36ad74111495a825a9288 Author: Johannes Berg Date: Mon Jun 20 13:40:46 2011 +0200 netlink: advertise incomplete dumps Consider the following situation: * a dump that would show 8 entries, four in the first round, and four in the second * between the first and second rounds, 6 entries are removed * now the second round will not show any entry, and even if there is a sequence/generation counter the application will not know To solve this problem, add a new flag NLM_F_DUMP_INTR to the netlink header that indicates the dump wasn't consistent, this flag can also be set on the MSG_DONE message that terminates the dump, and as such above situation can be detected. To achieve this, add a sequence counter to the netlink callback struct. Of course, netlink code still needs to use this new functionality. The correct way to do that is to always set cb->seq when a dumpit callback is invoked and call nl_dump_check_consistent() for each new message. The core code will also call this function for the final MSG_DONE message. To make it usable with generic netlink, a new function genlmsg_nlhdr() is needed to obtain the netlink header from the genetlink user header. Signed-off-by: Johannes Berg Acked-by: David S. Miller Signed-off-by: John W. Linville commit c1c3daee97498f5d74bfd23531cfe23c8e14a619 Author: Rafał Miłecki Date: Mon Jun 20 03:12:19 2011 +0200 b43: HT-PHY: calibrate radio after switching channel After uploading radio values calibration goes in. In MMIO dump it is: radio_read(0x002b) -> 0x0008 radio_write(0x002b) <- 0x0008 radio_read(0x002e) -> 0x0004 radio_write(0x002e) <- 0x0000 radio_read(0x002e) -> 0x0000 radio_write(0x002e) <- 0x0004 radio_read(0x002b) -> 0x0008 radio_write(0x002b) <- 0x0009 To find masks and sets, MMIO hacks were used to fool closed driver. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit bf4c02d5e772903be5bf8952bac730a2956d0619 Author: Stanislaw Gruszka Date: Sun Jun 19 19:47:39 2011 +0200 rt2x00: reset usb devices at probe When module is reloaded, device may fail to work, with messages: [ 342.211926] phy40 -> rt2x00lib_rxdone_read_signal: Warning - Frame received with unrecognized signal, mode=0x0000, signal=0x0059, type=2. [ 342.314254] phy40 -> rt2x00lib_rxdone_read_signal: Warning - Frame received with unrecognized signal, mode=0x0000, signal=0x004a, type=2. [ 342.416458] phy40 -> rt2x00lib_rxdone: Warning - Wrong frame size 3183 max 2432. [ 342.518605] phy40 -> rt2x00lib_rxdone_read_signal: Warning - Frame received with unrecognized signal, mode=0x0000, signal=0x00c9, type=2. [ 342.620836] phy40 -> rt2x00lib_rxdone_read_signal: Warning - Frame received with unrecognized signal, mode=0x0000, signal=0x00ae, type=1. [ 342.723201] phy40 -> rt2x00lib_rxdone: Warning - Wrong frame size 0 max 2432. [ 342.825399] phy40 -> rt2x00lib_rxdone: Warning - Wrong frame size 0 max 2432. [ 342.927624] phy40 -> rt2x00lib_rxdone: Warning - Wrong frame size 0 max 2432. [ 343.029804] phy40 -> rt2x00lib_rxdone: Warning - Wrong frame size 2491 max 2432. [ 343.132008] phy40 -> rt2x00lib_rxdone: Warning - Wrong frame size 2576 max 2432. [ 343.234326] phy40 -> rt2x00lib_rxdone_read_signal: Warning - Frame received with unrecognized signal, mode=0x0000, signal=0x004c, type=1. [ 343.438723] phy40 -> rt2x00lib_rxdone_read_signal: Warning - Frame received with unrecognized signal, mode=0x0000, signal=0x00e6, type=1. Whereas replugging device make it functional. To solve that problem force reset device during probe. With patch messages are gone. Unfortunately device may sometimes still does not operate correctly after module reload (fail to receive data after associate), but such cases are rarer than without the patch. Signed-off-by: Stanislaw Gruszka Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 7f503fc49f144bb509dbd33daf3426df3f176e6b Author: Stanislaw Gruszka Date: Sun Jun 19 19:46:02 2011 +0200 rt2x00: fix possible memory corruption in case of invalid rxdesc.size Sometimes rxdesc descriptor provided by hardware contains invalid (random) data. For example rxdesc.size can be bigger than actual size of the buffer. When this happen rt2x00crypto_rx_insert_iv() corrupt memory doing memmove outside of buffer boundaries. Signed-off-by: Stanislaw Gruszka Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9c803a03bc07553f8148d024c15c784b28c1d9ee Author: Rafał Miłecki Date: Sun Jun 19 13:30:21 2011 +0200 b43: N-PHY: move declarations of chantables functions to correct files Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 2a870831776dd37577c6aec7b86189645183e152 Author: Rafał Miłecki Date: Sun Jun 19 13:30:20 2011 +0200 b43: N-PHY: update switching analog on/off Specs were recently updated. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit a6b7da5d2cf8b67c310aedf09e8e74bfb53423ba Author: Rafał Miłecki Date: Sun Jun 19 12:17:21 2011 +0200 b43: HT-PHY: switch radio to requested channel Switching channel happens after specific SHM write to B43_SHM_SH_CHAN. This is the way we found it in BCM4331 MMIO dumps. By comparing with N-PHY code we noticed there is routing used for SYN and TX/RX. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 39ca554c96d25436b7c9acdd8f3b5fb9702049c6 Author: Rafał Miłecki Date: Sun Jun 19 12:17:20 2011 +0200 b43: HT-PHY: add place for implementing channel switching Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 5192bf56b9bb0d90c9aa08e5593ea4897309fc07 Author: Rafał Miłecki Date: Sun Jun 19 12:17:19 2011 +0200 b43: HT-PHY: define standard structs for channel switching Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 1a3f71ae669a599139165c7ae6d8e7908fe12e64 Author: Rafał Miłecki Date: Sun Jun 19 02:18:12 2011 +0200 b43: HT-PHY: enable radio The trick was to find 0x810 PHY reg ops close to analog enabling code. To find out proper masks and sets, MMIO hacks were used. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit e7c62552ec43c094ca523fc46b98181df364f49f Author: Rafał Miłecki Date: Sun Jun 19 02:18:11 2011 +0200 b43: HT-PHY: implement killing radio Closed drivers kill radio right after reading radio version and MACCTL, so it was easy to find related PHY ops: phy_read(0x0810) -> 0x0000 phy_write(0x0810) <- 0x0000 To find out the mask of above OP, MMIO hack was used to fake read val: phy_read(0x0810) -> 0xffff phy_write(0x0810) <- 0x0000 Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 1c1236e3af9c0a52e63c1c386413f13627e68e67 Merge: e10542c 43f3dc4 Author: John W. Linville Date: Wed Jun 22 16:06:58 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6 commit ec3ea54c6c7163f5d6bbf52dd1ec485de2c378b6 Author: Johannes Stezenbach Date: Wed Jun 22 14:59:25 2011 +0200 ASoC: add WM8782 ADC Codec Driver Signed-off-by: Johannes Stezenbach [zonque@gmail.com: transform to new ASoC structure] Signed-off-by: Daniel Mack Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit c034abf6e5039cbbe691de37903c514c1033bf75 Author: Johannes Stezenbach Date: Wed Jun 22 14:59:24 2011 +0200 ASoC: add STA32X codec driver Signed-off-by: Johannes Stezenbach [zonque@gmail.com: transform to new ASoC structure] Signed-off-by: Daniel Mack Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 06d984737bac0545fe20bb5447ee488b95adb531 Author: Tejun Heo Date: Fri Jun 17 16:50:40 2011 +0200 ptrace: s/tracehook_tracer_task()/ptrace_parent()/ tracehook.h is on the way out. Rename tracehook_tracer_task() to ptrace_parent() and move it from tracehook.h to ptrace.h. Signed-off-by: Tejun Heo Cc: Christoph Hellwig Cc: John Johansen Cc: Stephen Smalley Signed-off-by: Oleg Nesterov commit 4b9d33e6d83cc05a8005a8f9a8b9677fa0f53626 Author: Tejun Heo Date: Fri Jun 17 16:50:38 2011 +0200 ptrace: kill clone/exec tracehooks At this point, tracehooks aren't useful to mainline kernel and mostly just add an extra layer of obfuscation. Although they have comments, without actual in-kernel users, it is difficult to tell what are their assumptions and they're actually trying to achieve. To mainline kernel, they just aren't worth keeping around. This patch kills the following clone and exec related tracehooks. tracehook_prepare_clone() tracehook_finish_clone() tracehook_report_clone() tracehook_report_clone_complete() tracehook_unsafe_exec() The changes are mostly trivial - logic is moved to the caller and comments are merged and adjusted appropriately. The only exception is in check_unsafe_exec() where LSM_UNSAFE_PTRACE* are OR'd to bprm->unsafe instead of setting it, which produces the same result as the field is always zero on entry. It also tests p->ptrace instead of (p->ptrace & PT_PTRACED) for consistency, which also gives the same result. This doesn't introduce any behavior change. Signed-off-by: Tejun Heo Cc: Christoph Hellwig Signed-off-by: Oleg Nesterov commit a288eecce5253cc1565d400a52b9b476a157e040 Author: Tejun Heo Date: Fri Jun 17 16:50:37 2011 +0200 ptrace: kill trivial tracehooks At this point, tracehooks aren't useful to mainline kernel and mostly just add an extra layer of obfuscation. Although they have comments, without actual in-kernel users, it is difficult to tell what are their assumptions and they're actually trying to achieve. To mainline kernel, they just aren't worth keeping around. This patch kills the following trivial tracehooks. * Ones testing whether task is ptraced. Replace with ->ptrace test. tracehook_expect_breakpoints() tracehook_consider_ignored_signal() tracehook_consider_fatal_signal() * ptrace_event() wrappers. Call directly. tracehook_report_exec() tracehook_report_exit() tracehook_report_vfork_done() * ptrace_release_task() wrapper. Call directly. tracehook_finish_release_task() * noop tracehook_prepare_release_task() tracehook_report_death() This doesn't introduce any behavior change. Signed-off-by: Tejun Heo Cc: Christoph Hellwig Cc: Martin Schwidefsky Signed-off-by: Oleg Nesterov commit f3c04b934d429b1ace21866f011b66de328c0dc9 Author: Tejun Heo Date: Fri Jun 17 16:50:36 2011 +0200 ptrace: move SIGTRAP on exec(2) logic to ptrace_event() Move SIGTRAP on exec(2) logic from tracehook_report_exec() to ptrace_event(). This is part of changes to make ptrace_event() smarter and handle ptrace event related details in one place. This doesn't introduce any behavior change. Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit 643ad8388e189dfd14ef76972cf7dc394b3cbebd Author: Tejun Heo Date: Fri Jun 17 16:50:35 2011 +0200 ptrace: introduce ptrace_event_enabled() and simplify ptrace_event() and tracehook_prepare_clone() This patch implements ptrace_event_enabled() which tests whether a given PTRACE_EVENT_* is enabled and use it to simplify ptrace_event() and tracehook_prepare_clone(). PT_EVENT_FLAG() macro is added which calculates PT_TRACE_* flag from PTRACE_EVENT_*. This is used to define PT_TRACE_* flags and by ptrace_event_enabled() to find the matching flag. This is used to make ptrace_event() and tracehook_prepare_clone() simpler. * ptrace_event() callers were responsible for providing mask to test whether the event was enabled. This patch implements ptrace_event_enabled() and make ptrace_event() drop @mask and determine whether the event is enabled from @event. Note that @event is constant and this conversion doesn't add runtime overhead. All conversions except tracehook_report_clone_complete() are trivial. tracehook_report_clone_complete() used to use 0 for @mask (always enabled) but now tests whether the specified event is enabled. This doesn't cause any behavior difference as it's guaranteed that the event specified by @trace is enabled. * tracehook_prepare_clone() now only determines which event is applicable and use ptrace_event_enabled() for enable test. This doesn't introduce any behavior change. Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit d21142ece414ce1088cfcae760689aa60d6fee80 Author: Tejun Heo Date: Fri Jun 17 16:50:34 2011 +0200 ptrace: kill task_ptrace() task_ptrace(task) simply dereferences task->ptrace and isn't even used consistently only adding confusion. Kill it and directly access ->ptrace instead. This doesn't introduce any behavior change. Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit a86a88eaf6db7bcc3900d0b7d4755474cc73201f Author: Takashi Iwai Date: Wed Jun 22 15:23:25 2011 +0200 ALSA: hda - Implement dynamic-ADC switching for VIA codecs Some VIA codecs like VT1702 provide the input-route only to specific ADCs such as digital-mic inputs. These routes aren't covered by the normal primary ADC, and for now, user had to open the capture stream assigned to that special ADC manually for using such inputs. This patch implements a way to switch the current ADC dynamically per the input-source selection in such a case. When this workaround is activated, the driver provides only one capture stream and one input- source control but with the full possible inputs. The driver switches the ADC to be used (or being used) according to the input-source on the fly. Signed-off-by: Takashi Iwai commit 58402b6e397555884d926fd22fb40ccf6fe68b46 Author: Robert Marklund Date: Mon Jun 20 13:30:35 2011 +0200 mach-x500: fix SECTION warnings in uib Fix some simple section warning noise. Signed-off-by: Robert Marklund commit dd4e5d3ac4a76b868daf30e35bd572def96c30ed Author: Peter Zijlstra Date: Tue Jun 21 17:17:27 2011 +0200 lockdep: Fix trace_[soft,hard]irqs_[on,off]() recursion Commit: 1efc5da3cf56: [PATCH] order of lockdep off/on in vprintk() should be changed explains the reason for having raw_local_irq_*() and lockdep_off() in printk(). Instead of working around the broken recursion detection of interrupt state tracking, fix it. Signed-off-by: Peter Zijlstra Cc: efault@gmx.de Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110621153806.185242734@chello.nl Signed-off-by: Ingo Molnar commit 4f2a8d3cf5e0486fd547633fa86c5d130ae98cad Author: Peter Zijlstra Date: Wed Jun 22 11:20:09 2011 +0200 printk: Fix console_sem vs logbuf_lock unlock race Fix up the fallout from commit 0b5e1c5255 ("printk: Release console_sem after logbuf_lock"). The reason for unlocking the console_sem under the logbuf_lock is that a concurrent printk() might fill up the buffer but fail to acquire the console sem, resulting in a missed write to the console until a subsequent console_sem acquire/release cycle. Signed-off-by: Peter Zijlstra Cc: efault@gmx.de Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/1308734409.1022.14.camel@twins Signed-off-by: Ingo Molnar commit 3ead8b5ddbe6ca8e79b24535f4119c9d4ffd91e3 Author: Eric Miao Date: Wed Jun 22 01:02:50 2011 -0700 Input: add support for mma8450 accelerometer Signed-off-by: Sammy He Signed-off-by: Eric Miao Signed-off-by: Dmitry Torokhov commit 1483f5513b2d215216ad56c618b42454c5bc1e4d Author: Aristeu Rozanski Date: Wed Jun 22 01:17:17 2011 -0700 Input: wacom - use only one interface with DTU-2231 The Wacom DTU-2231 tablet has two interfaces on its default configuration and both have HID class, leading to the creation of two input devices instead of one. Only the first one is used, so filter out the second. Signed-off-by: Aristeu Rozanski Signed-off-by: Dmitry Torokhov commit 71c86ce59791bcd67af937bbea719a508079d7c2 Author: Ping Cheng Date: Wed Jun 22 01:02:51 2011 -0700 Input: wacom - Cintiq 21UX2 does not have menu strips So don't set ABS_RX/ABS_RY for them. Signed-off-by: Ping Cheng Signed-off-by: Dmitry Torokhov commit 56f8a75c17abb854b5907f4a815dc4c3f186ba11 Author: Paul Gortmaker Date: Tue Jun 21 20:33:34 2011 -0700 ip: introduce ip_is_fragment helper inline function There are enough instances of this: iph->frag_off & htons(IP_MF | IP_OFFSET) that a helper function is probably warranted. Signed-off-by: Paul Gortmaker Signed-off-by: David S. Miller commit f470e5ae34d68880a38aa79ee5c102ebc2a1aef6 Author: Randy Dunlap Date: Tue Jun 21 20:32:53 2011 -0700 irda: fix smsc-ircc2 section mismatch warning Fix section mismatch warning: WARNING: drivers/net/irda/smsc-ircc2.o(.devinit.text+0x1a7): Section mismatch in reference from the function smsc_ircc_pnp_probe() to the function .init.text:smsc_ircc_open() Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit b7f080cfe223b3b7424872639d153695615a9255 Author: Alexey Dobriyan Date: Thu Jun 16 11:01:34 2011 +0000 net: remove mm.h inclusion from netdevice.h Remove linux/mm.h inclusion from netdevice.h -- it's unused (I've checked manually). To prevent mm.h inclusion via other channels also extract "enum dma_data_direction" definition into separate header. This tiny piece is what gluing netdevice.h with mm.h via "netdevice.h => dmaengine.h => dma-mapping.h => scatterlist.h => mm.h". Removal of mm.h from scatterlist.h was tried and was found not feasible on most archs, so the link was cutoff earlier. Hope people are OK with tiny include file. Note, that mm_types.h is still dragged in, but it is a separate story. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 3dcad5ff08f65ae30832220a0e0ee2eac3502a1a Author: John Stultz Date: Fri May 27 11:33:18 2011 -0700 rtc: Avoid accumulating time drift in suspend/resume Because the RTC interface is only a second granular interface, each time we read from the RTC for suspend/resume, we introduce a half second (on average) of error. In order to avoid this error accumulating as the system is suspended over and over, this patch measures the time delta between the RTC and the system CLOCK_REALTIME. If the delta is less then 2 seconds from the last suspend, we compensate by using the previous time delta (keeping it close). If it is larger then 2 seconds, we assume the clock was set or has been changed, so we do no correction and update the delta. Note: If NTP is running, ths could seem to "fight" with the NTP corrected time, where as if the system time was off by 1 second, and NTP slewed the value in, a suspend/resume cycle could undo this correction, by trying to restore the previous offset from the RTC. However, without this patch, since each read could cause almost a full second worth of error, its possible to get almost 2 seconds of error just from the suspend/resume cycle alone, so this about equal to any offset added by the compensation. Further on systems that suspend/resume frequently, this should keep time closer then NTP could compensate for if the errors were allowed to accumulate. Credits to Arve Hjønnevåg for suggesting this solution. This patch also improves some of the variable names and adds more clear comments. CC: Arve Hjønnevåg CC: Thomas Gleixner Signed-off-by: John Stultz commit cb33217b1b2523895eb328a0b13fb3b1c4000969 Author: John Stultz Date: Tue May 31 22:53:23 2011 -0700 time: Avoid accumulating time drift in suspend/resume Because the read_persistent_clock interface is usually backed by only a second granular interface, each time we read from the persistent clock for suspend/resume, we introduce a half second (on average) of error. In order to avoid this error accumulating as the system is suspended over and over, this patch measures the time delta between the persistent clock and the system CLOCK_REALTIME. If the delta is less then 2 seconds from the last suspend, we compensate by using the previous time delta (keeping it close). If it is larger then 2 seconds, we assume the clock was set or has been changed, so we do no correction and update the delta. Note: If NTP is running, ths could seem to "fight" with the NTP corrected time, where as if the system time was off by 1 second, and NTP slewed the value in, a suspend/resume cycle could undo this correction, by trying to restore the previous offset from the persistent clock. However, without this patch, since each read could cause almost a full second worth of error, its possible to get almost 2 seconds of error just from the suspend/resume cycle alone, so this about equal to any offset added by the compensation. Further on systems that suspend/resume frequently, this should keep time closer then NTP could compensate for if the errors were allowed to accumulate. Credits to Arve Hjønnevåg for suggesting this solution. CC: Arve Hjønnevåg CC: Thomas Gleixner Signed-off-by: John Stultz commit cb5de2f8d0306be38f9b377b8a5c56acca7dbc3d Author: John Stultz Date: Wed Jun 1 18:18:09 2011 -0700 time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime Arve suggested making sure we catch possible negative sleep time intervals that could be passed into timekeeping_inject_sleeptime. CC: Arve Hjønnevåg CC: Thomas Gleixner Signed-off-by: John Stultz commit bab3b59d531bb4dd04d2996dd553ab6e38ec8972 Author: Taylor Hutt Date: Mon Jun 20 11:54:32 2011 -0700 ASoC: codecs: Max98095: Fix logging of hardware revision. The base hardware revision of the Maxim 98095 part is 0x40; the code which outputs the revision of the hardware has been updated to properly use uppercase alphabetic values for the revision numbers. Also, the use of a constant for the length 'max98095_dai' has been replaced with ARRAY_SIZE(). Signed-off-by: Taylor Hutt Acked-by: Peter Hsiang Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4003b65871c101eb5ce8f37a325feac54aa5c681 Author: John Fastabend Date: Tue Jun 21 07:35:04 2011 +0000 dcb: Add missing error check in dcb_ieee_set() Missing error checking before nla_parse_nested(). Reported-by: Mark Rustad Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit ab6baf980b095c70a56c5eb2f58166aef8a0edc8 Author: John Fastabend Date: Tue Jun 21 07:34:58 2011 +0000 dcb: fix return type on dcb_setapp() Incorrect return type on dcb_setapp() this routine returns negative error codes. All call sites of dcb_setapp() assign the return value to an int already so no need to update drivers. Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit a364c8cf80251849bab207be8c9e66253c8ca8f8 Author: John Fastabend Date: Tue Jun 21 07:34:53 2011 +0000 dcb: Add dcb_ieee_getapp_mask() for drivers to query APP settings With multiple APP entries per selector and protocol drivers or stacks may want to pick a specific value or stripe traffic across many priorities. Also if an APP entry in use is deleted the stack/driver may want to choose from the existing APP entries. To facilitate this and avoid having duplicate code to walk the APP ring provide a routine dcb_ieee_getapp_mask() to return a u8 bitmask of all priorities set for the specified selector and protocol. This routine and bitmask is a helper for DCB kernel users. Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit f9ae7e4b515c4d56baf6e0e84ebee2e03ae57a25 Author: John Fastabend Date: Tue Jun 21 07:34:48 2011 +0000 dcb: Add ieee_dcb_delapp() and dcb op to delete app entry Now that we allow multiple IEEE App entries we need a way to remove specific entries. To do this add the ieee_dcb_delapp() routine. Additionaly drivers may need to remove the APP entry from their firmware tables. Add dcb ops routine to handle this. Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit b6db2174c59ef1e72f7bd63e0f105b1a2d7f18d3 Author: John Fastabend Date: Tue Jun 21 07:34:42 2011 +0000 dcb: Add ieee_dcb_setapp() to be used for IEEE 802.1Qaz APP data This adds a setapp routine for IEEE802.1Qaz encoded APP data types. The IEEE 802.1Qaz spec encodes the priority bits differently and allows for multiple APP data entries of the same selector and protocol. Trying to force these to use the same set routines was becoming tedious. Furthermore, userspace could probably enforce the correct semantics, but expecting drivers to do this seems error prone in the firmware case. For these reasons add ieee_dcb_setapp() that understands the IEEE 802.1Qaz encoded form. Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit 314b4778ed579f29b6d46ba90dbf31314c13805f Author: John Fastabend Date: Tue Jun 21 07:34:37 2011 +0000 net: dcbnl, add multicast group for DCB Now that dcbnl is being used in many cases by more than a single agent it is beneficial to be notified when some entity either driver or user space has changed the DCB attributes. Today applications either end up polling the interface or relying on a user space database to maintain the DCB state and post events. Polling is a poor solution for obvious reasons. And relying on a user space database has its own downside. Namely it has created strange boot dependencies requiring the database be populated before any applications dependent on DCB attributes starts or the application goes into a polling loop. Populating the database requires negotiating link setting with the peer and can take anywhere from less than a second up to a few seconds depending on the switch implementation. Perhaps more importantly if another application or an embedded agent sets a DCB link attribute the database has no way of knowing other than polling the kernel. This prevents applications from responding quickly to changes in link events which at least in the FCoE case and probably any other protocols expecting a lossless link may result in IO errors. By adding a multicast group for DCB we have clean way to disseminate kernel DCB link attributes up to user space. Avoiding the need for user space to maintain a coherant database and disperse events that potentially do not reflect the current link state. Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit c7797baf9f3900996ca800ab6298f95957bb4606 Author: John Fastabend Date: Tue Jun 21 07:34:31 2011 +0000 dcb: Add DCBX capabilities bitmask to the get_ieee response Adding the capabilities bitmask to the get_ieee response allows user space to determine the current DCBX mode. Either CEE or IEEE this is useful with devices that support switching between modes where knowing the current state is relevant. Derived from work by Mark Rustad Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit f4b5ad26bcb983c493e131ff34b2fa60100c82e5 Author: Michael Chan Date: Mon Jun 20 15:15:56 2011 +0000 cnic, bnx2i: Add support for new devices - 57800, 57810, and 57840 And change iSCSI RQ doorbell size from 16B to 64B to match new firmware. Signed-off-by: Michael Chan Signed-off-by: Eddie Wai Signed-off-by: David S. Miller commit 3847ce32aea9fdf56022de132000e8cf139042eb Author: Satoru Moriya Date: Fri Jun 17 12:00:03 2011 +0000 core: add tracepoints for queueing skb to rcvbuf This patch adds 2 tracepoints to get a status of a socket receive queue and related parameter. One tracepoint is added to sock_queue_rcv_skb. It records rcvbuf size and its usage. The other tracepoint is added to __sk_mem_schedule and it records limitations of memory for sockets and current usage. By using these tracepoints we're able to know detailed reason why kernel drop the packet. Signed-off-by: Satoru Moriya Acked-by: Neil Horman Signed-off-by: David S. Miller commit 296f7ea75b45913d5e2067baef0812087e0b6eb9 Author: Satoru Moriya Date: Fri Jun 17 11:58:39 2011 +0000 udp: add tracepoints for queueing skb to rcvbuf This patch adds a tracepoint to __udp_queue_rcv_skb to get the return value of ip_queue_rcv_skb. It indicates why kernel drops a packet at this point. ip_queue_rcv_skb returns following values in the packet drop case: rcvbuf is full : -ENOMEM sk_filter returns error : -EINVAL, -EACCESS, -ENOMEM, etc. __sk_mem_schedule returns error: -ENOBUF Signed-off-by: Satoru Moriya Acked-by: Neil Horman Signed-off-by: David S. Miller commit dec17b74516bb780de75b41e7cfa0072df16bb82 Author: Jesper Juhl Date: Mon Jun 20 12:13:10 2011 +0000 Remove redundant linux/version.h includes from net/ It was suggested by "make versioncheck" that the follwing includes of linux/version.h are redundant: /home/jj/src/linux-2.6/net/caif/caif_dev.c: 14 linux/version.h not needed. /home/jj/src/linux-2.6/net/caif/chnl_net.c: 10 linux/version.h not needed. /home/jj/src/linux-2.6/net/ipv4/gre.c: 19 linux/version.h not needed. /home/jj/src/linux-2.6/net/netfilter/ipset/ip_set_core.c: 20 linux/version.h not needed. /home/jj/src/linux-2.6/net/netfilter/xt_set.c: 16 linux/version.h not needed. and it seems that it is right. Beyond manually inspecting the source files I also did a few build tests with various configs to confirm that including the header in those files is indeed not needed. Here's a patch to remove the pointless includes. Signed-off-by: Jesper Juhl Acked-by: Jozsef Kadlecsik Signed-off-by: David S. Miller commit 3b182d7d4287f38711f70d58d68cf2a34e582992 Author: Richard Cochran Date: Tue Jun 21 16:01:11 2011 -0700 mv643xx_eth: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping. Compile tested only. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 73151ce35bd6d56e61a87b2855193f82540bf3d3 Author: Richard Cochran Date: Tue Jun 21 16:00:24 2011 -0700 mv643xx_eth: fix race in trasmit path. Because the socket buffer is freed in the completion interrupt, it is not safe to access it after submitting it to the hardware. Signed-off-by: Richard Cochran Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit e00f85bec0a9924eb517ccd126ddbb9787068f53 Author: stephen hemminger Date: Tue Jun 21 05:35:31 2011 +0000 xen: convert to 64 bit stats interface Convert xen driver to 64 bit statistics interface. Use stats_sync to ensure that 64 bit update is read atomically on 32 bit platform. Put hot statistics into per-cpu table. Signed-off-by: Stephen Hemminger Acked-by: Ian Campbell Signed-off-by: David S. Miller commit 62ea05577ed3ea4f542f9bc17cb716787316e2ea Author: stephen hemminger Date: Mon Jun 20 10:35:07 2011 +0000 vxge: fix 64 bit access on 32 bit platforms Need to add stat_sync wrapper around 64 bit statistic values. Fix wraparound bug in lockup detector where it is unsafely comparing 64 bit value that is not atomic. Since only care about detecting activity just looking at current low order bits will work. Remove unused entries in old vxge_sw_stats structure. Change the error counters to unsigned long since they won't grow so large as to have to be 64 bits. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3b0c9cbb6e5fe25a4162be68ed1459b6f7432da9 Author: stephen hemminger Date: Mon Jun 20 11:42:30 2011 +0000 ifb: convert to 64 bit stats Convert input functional block device to use 64 bit stats. Signed-off-by: Stephen Hemminger Signed-off-by: Eric Dumazet Acked-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 43d620c82985b19008d87a437b4cf83f356264f7 Author: Joe Perches Date: Thu Jun 16 19:08:06 2011 +0000 drivers/net: Remove casts of void * Unnecessary casts of void * clutter the code. These are the remainder casts after several specific patches to remove netdev_priv and dev_priv. Done via coccinelle script (and a little editing): $ cat cast_void_pointer.cocci @@ type T; T *pt; void *pv; @@ - pt = (T *)pv; + pt = pv; Signed-off-by: Joe Perches Acked-by: Sjur Brændeland Acked-By: Chris Snook Acked-by: Jon Mason Acked-by: Geert Uytterhoeven Acked-by: David Dillow Signed-off-by: David S. Miller commit fabadbc754cf461e8d68e5f8ff53f287dcee41b2 Author: Magnus Hörlin Date: Tue Jun 21 14:40:30 2011 -0700 Input: xpad - add support for two more dance pads and a guitar Signed-off-by: Magnus Hörlin Reviewed-by: Christoph Fritz Signed-off-by: Dmitry Torokhov commit 7e2ecdf438bb479e2b4667fc16b1a84d6348da04 Author: David Jander Date: Tue Jun 21 14:26:18 2011 -0700 Input: gpio_keys - switch to using threaded IRQs Use a threaded interrupt handler in order to permit the handler to use a GPIO driver that causes things like I2C transactions being done inside the handler context. Signed-off-by: David Jander Acked-by: Grant Likely Signed-off-by: Dmitry Torokhov commit 2cd1176bd9e92924242e779dcc5c8fc922f96659 Merge: a187111 e92d03b Author: Keith Packard Date: Tue Jun 21 12:02:57 2011 -0700 Merge branch 'drm-intel-fixes' into drm-intel-next commit 43f3dc41571c47a1fbded9aca1cf0a737967b005 Author: Vinicius Costa Gomes Date: Mon Jun 20 18:53:18 2011 -0300 Bluetooth: Fix not setting the chan state When the connection is ready we should set the connection to CONNECTED so userspace can use it. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 0555891184a5c18df0e2349872e7ecf9701fc5b5 Merge: e13e21d 3306054 Author: Gustavo F. Padovan Date: Tue Jun 21 14:52:56 2011 -0300 Merge master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-2.6 Conflicts: net/bluetooth/l2cap_core.c commit 15c3597d6ea47e8f3caf068887c4666165df63ad Author: Grant Likely Date: Tue Jun 21 10:59:35 2011 -0600 dt/platform: allow device name to be overridden Some platform code has specific requirements on the naming of devices. This patch allows callers of of_platform_populate() to provide a device name lookup table. Signed-off-by: Grant Likely commit 5de1540b7bc4c23470f86add1e517be41e7fefe2 Author: Grant Likely Date: Tue Jun 21 10:59:34 2011 -0600 drivers/amba: create devices from device tree Add a function to create amba_devices (i.e. primecell peripherals) from device tree nodes. The device tree scanning is done by the of_platform_populate() function which can call of_amba_device_create based on a match table entry. Nodes with a "arm,primecell-periphid" property can override the h/w peripheral id value. Based on the original work by Jeremy Kerr. Signed-off-by: Jeremy Kerr Acked-by: Linus Walleij Signed-off-by: Rob Herring Reviewed-by: Arnd Bergmann [grant.likely: add Jeremy's original s-o-b line, changes from review comments, and moved all code to drivers/of/platform.c] Signed-off-by: Grant Likely commit 29d4f8a4974aacf46b028fa92f9dd3ffdba3e614 Author: Grant Likely Date: Tue Jun 21 10:59:34 2011 -0600 dt: add of_platform_populate() for creating device from the device tree of_platform_populate() is similar to of_platform_bus_probe() except that it strictly enforces that all device nodes must have a compatible property, and it can be used to register devices (not buses) which are children of the root node. Signed-off-by: Grant Likely commit cbb49c2665eebfd1fa2e491403684d0542662137 Author: Grant Likely Date: Tue Jun 21 10:59:34 2011 -0600 dt: Add default match table for bus ids No need for most platforms to define their own bus table when calling of_platform_populate(). Supply a stock one. Signed-off-by: Grant Likely commit f2b1c9f031d6b7604f861223f9e7024e6597b201 Author: Takashi Iwai Date: Tue Jun 21 16:52:39 2011 +0200 ALSA: hda - Auto-mute smart51 surround pins for VIA codecs When smart51 mode is enabled, auto-mute these surround outputs as well as the primary line-out. Also this patch includes minor clean-ups. Signed-off-by: Takashi Iwai commit ddd304d8be4ffbb3662a92da515b1c74376b2280 Author: Takashi Iwai Date: Tue Jun 21 16:33:55 2011 +0200 ALSA: hda - Remove redundant VT1709 and VT1708B codes Unify the VT1709 10ch and 6ch parsers, as well as VT1708B 8ch and 4ch parsers. They have no difference now. Signed-off-by: Takashi Iwai commit 09a9ad69a5467fbda3fd358d2be155c22aa416e4 Author: Takashi Iwai Date: Tue Jun 21 15:57:44 2011 +0200 ALSA: hda - VT1708 independent HP routing fix The codecs like VT1708 needs more complicated routing using the mixer widget rather than the simple selector widgets. Signed-off-by: Takashi Iwai commit f7fdd84e04c8fdc9196abe3bfd27535bccb52ee5 Merge: 03dc610 c2419b4 Author: Konrad Rzeszutek Wilk Date: Tue Jun 21 09:25:41 2011 -0400 Merge branch 'stable/vga.support' into stable/drivers * stable/vga.support: xen: allow enable use of VGA console on dom0 commit 03dc6107ff485995d356cb8a77766920e2eee21e Merge: 5629937 afec6e0 Author: Konrad Rzeszutek Wilk Date: Tue Jun 21 09:25:36 2011 -0400 Merge branch 'stable/frontswap-tmemonly' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem into stable/drivers * 'stable/frontswap-tmemonly' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem: xen: prepare tmem shim to handle frontswap commit ae90c232be376bd8a283f3b6fb37cb5bd2635d67 Author: cpw@sgi.com Date: Tue Jun 21 07:21:33 2011 -0500 x86, UV: Correct UV2 BAU destination timeout Correct the UV2 broacast assist unit's destination timeout period. And the activation status register in UV2 should be tested for a destination timeout with a 4, not a 2. The values for Active versus Timeout were reversed. This patch is critical for TLB shootdown on an Altix UV2 system (i.e. the follow-on to the current Altix UV). Destination timeout period: The period is set in 4 bits of memory-mapped register MISC_CONTROL. The left bit toggles base period between 10us and 80us. The other 3 bits are the multiplier. Decimal 15, hex f, gives the maximum: 7 * 80us Signed-off-by: Cliff Wickman Link: http://lkml.kernel.org/r/20110621122243.117324443@sgi.com Signed-off-by: Ingo Molnar commit bbd270e6f45a5ca30e1d3b6133c516a9dc9dd6c0 Author: cpw@sgi.com Date: Tue Jun 21 07:21:32 2011 -0500 x86, UV: Correct failed topology memory leak Fix a memory leak in init_per_cpu() when the topology check fails. The leak should never occur on deployed systems. It would only occur in an unexpected topology that would make the BAU unuseable as a result. Signed-off-by: Cliff Wickman Link: http://lkml.kernel.org/r/20110621122242.981533045@sgi.com Signed-off-by: Ingo Molnar commit 442d3924926c62741912d8a930220af253922007 Author: cpw@sgi.com Date: Tue Jun 21 07:21:31 2011 -0500 x86, UV: Remove cpumask_t from the stack Remove the large stack-resident cpumask_t from reset_with_ipi()'s stack by allocating one per uvhub. Due to the limited size of the stack the potentially huge cpumask_t may cause stack overrun. We haven't seen it happen yet, but we need to make it a practice not to push such structures onto the stack. Signed-off-by: Cliff Wickman Reviewed-by: Pekka Enberg Link: http://lkml.kernel.org/r/20110621122242.832589130@sgi.com Signed-off-by: Ingo Molnar commit a456eaab87461e33d94e748565eabd474283a475 Author: cpw@sgi.com Date: Tue Jun 21 07:21:30 2011 -0500 x86, UV: Rename hubmask to pnmask Rename 'bau_targ_hubmask' to 'pnmask' for clarity. The BAU distribution bit mask is indexed by pnode number, not hub or blade number. This important fact is not clear while the mask is called a 'hubmask'. Signed-off-by: Cliff Wickman Link: http://lkml.kernel.org/r/20110621122242.630995969@sgi.com Signed-off-by: Ingo Molnar commit 485f07d349a3e5059413b886a3bc1996c4b3d14d Author: cpw@sgi.com Date: Tue Jun 21 07:21:29 2011 -0500 x86, UV: Correct reset_with_ipi() Fix reset_with_ipi() to look up a cpu for a blade based on the distribution map being indexed by the potentially sparsely numbered pnode. This patch is critical to tlb shootdown on a partitioned UV system, or one with nonconsecutive blade numbers. The distribution map bits represent pnodes relative to the partition base pnode. Previous to this patch it had been assuming bits based on 0-based, consecutive blade ids. Signed-off-by: Cliff Wickman Link: http://lkml.kernel.org/r/20110621122242.497700003@sgi.com Signed-off-by: Ingo Molnar commit 9c9153db22870c3f37add83bea30500fcc268a73 Author: cpw@sgi.com Date: Tue Jun 21 07:21:28 2011 -0500 x86, UV: Allow for non-consecutive sockets Fix for the topology in which there is a socket 1 on a blade with no socket 0. Only call make_per_cpu_thp() for present sockets. We have only seen this fail for internal configurations. Signed-off-by: Cliff Wickman Link: http://lkml.kernel.org/r/20110621122242.363757364@sgi.com Signed-off-by: Ingo Molnar commit b18fb2c04ac46885f5b0226cd945e763eae51567 Author: cpw@sgi.com Date: Tue Jun 21 07:21:27 2011 -0500 x86, UV: Inline header file functions Make all the functions in uv_bau.h inline so that it can be included in the fake prom (used in simulations). If not inlined the unused functions will generate compiler warnings. Signed-off-by: Cliff Wickman Reviewed-by: Pekka Enberg Link: http://lkml.kernel.org/r/20110621122242.230529678@sgi.com Signed-off-by: Ingo Molnar commit 00b30cf04a775b5292ab704f782394e36e25617d Author: cpw@sgi.com Date: Tue Jun 21 07:21:26 2011 -0500 x86, UV: Fix smp_processor_id() use in a preemptable region Fix a call by tunables_write() to smp_processor_id() within a preemptable region. Call get_cpu()/put_cpu() around the region where the returned cpu number is actually used, which makes it non-preemptable. A DEBUG_PREEMPT warning is prevented. UV does not support cpu hotplug yet, but this is a step toward that ability as well. Signed-off-by: Cliff Wickman Link: http://lkml.kernel.org/r/20110621122242.086384966@sgi.com Signed-off-by: Ingo Molnar commit a934d5a983528543850c90b29bedbdfd71f7097b Author: Takashi Iwai Date: Tue Jun 21 14:22:14 2011 +0200 ALSA: hda - Fix surround-volume parsing for VT1708B codecs The surround/CLFE/side DACs on VT1708B and co have no amp but the connected selector widgets have the amp instead. Fix the parser to check these selector widgets for the possible mixer controls as well. Signed-off-by: Takashi Iwai commit eaa499aebf6265f18ffc836ead30059031c6d7a7 Author: Leigh Brown Date: Tue Jun 21 04:25:21 2011 -0700 Input: lm8323 - use oneshot level triggered interrupts According to the data sheet the interrupt should be level rather than edge triggered. This fixes the issue of the Nokia N810 keypad stopping responding if multiple key events occur in quick succession. Signed-off-by: Leigh Brown Signed-off-by: Dmitry Torokhov commit 61cf3813d32411b23d5df8a650bbd2aa89b4618c Author: Felipe Balbi Date: Tue Jun 21 04:20:57 2011 -0700 Input: lm8323 - convert to threaded IRQ There's no need for that workqueue anymore. Get rid of it and move to threaded IRQs instead. Signed-off-by: Felipe Balbi Tested-by: Leigh Brown Signed-off-by: Dmitry Torokhov commit fef95faeae9fa5f605fbad8693e2d6e2171f5ad4 Author: Wolfram Sang Date: Tue Jun 21 04:20:57 2011 -0700 Input: qt1070 - remove obsolete cleanup for clientdata A few new i2c-drivers came into the kernel which clear the clientdata pointer on exit or error. This is not required anymore since the core will do it for us. Signed-off-by: Wolfram Sang Acked-by: Jean Delvare Signed-off-by: Dmitry Torokhov commit 1e11cae143e4c0a4fc77fe532e18c550d63ab02d Author: Takashi Iwai Date: Tue Jun 21 12:57:22 2011 +0200 ALSA: hda - Fix the check of loopback-mixer element index in patch_via.c Fix the check of the multiple loopback-mixer, which gave sometimes a wrong index assigned to an element even for different names, e.g. Mic and Front Mic. Now check the label properly for avoid duplication. Reported-by: David Henningsson Signed-off-by: Takashi Iwai commit 0f98c24b807f024d42cf743897e2c1d95ff1e8be Author: Takashi Iwai Date: Tue Jun 21 12:51:33 2011 +0200 ALSA: hda - Assign smart51 only in the same stack for VIA codecs The input jacks assigned as the smart51 outputs must be in the same stack, either rear, front or other. Also, prefer line-in as the surround to mic-in. Signed-off-by: Takashi Iwai commit 8df2a3129d946dc91f9824958567a990329822b3 Author: Takashi Iwai Date: Tue Jun 21 11:48:29 2011 +0200 ALSA: hda - Fix re-routing of HP-independent mode in patch_via.c Re-route the whole output path when HP-independent mode is changed. Signed-off-by: Takashi Iwai commit 801019d59d4e1d1523e5897949fd3b6843571bd0 Merge: 5629937 71f7758 403f81d Author: Joerg Roedel Date: Tue Jun 21 11:14:10 2011 +0200 Merge branches 'amd/transparent-bridge' and 'core' Conflicts: arch/x86/include/asm/amd_iommu_types.h arch/x86/kernel/amd_iommu.c Signed-off-by: Joerg Roedel commit f448e9c9dad6fb919ec74cd1b2c189efe952886f Merge: 9dd056e 260bf2c Author: Paul Mundt Date: Tue Jun 21 17:59:05 2011 +0900 Merge branch 'common/dma' into sh-latest commit dd367e9d06d672a549526f2d3b69a36a120b1563 Author: Mattias Wallin Date: Thu Jun 9 11:50:35 2011 +0200 mach-ux500: iomap PRCMU TCDM memory The PRCMU TCDM memory needs to be iomapped for the PRCMU to work properly. Signed-off-by: Mattias Wallin Signed-off-by: Linus Walleij commit db24520f905430bd15eb49b5d9810ed445efe73a Author: Linus Walleij Date: Mon Apr 4 10:44:51 2011 +0200 mach-ux500: complete regulator constraints for MOP500 board This board now has complete regulation constraints and can turn off unused regulators. For the moment we need to wire VAUX1 (V-DISPLAY rail) always on since it somehow affects the external MMC. Cc: Liam Girdwood Cc: Mark Brown Signed-off-by: Linus Walleij commit 451a5edf0ed33f8ca9468ed89dc2a068d09e97be Author: Linus Walleij Date: Tue Mar 1 16:09:52 2011 +0100 mach-ux500: activate USB in the U8500 defconfig Activate the new USB stuff so we atleast get some compile coverage for this stuff. Signed-off-by: Linus Walleij commit 02a734373b998efdcb9d28d8c3aa77e549bb38c0 Author: Linus Walleij Date: Wed Mar 30 16:00:39 2011 +0200 mach-ux500: correct MMC/SDI parameters We cannot clock the MMCI blocks more than 50 MHz. A bug prevented us from seeing the effect of actually driving them to 100 MHz, which indeed resulted failure, on the external SD card. Signed-off-by: Linus Walleij commit f727a05a2c90cfe44749004718bc5a4ef3569b34 Author: Linus Walleij Date: Wed Apr 27 12:55:37 2011 +0200 mach-ux500: fix HREFv60 regression This fixes a regression on the HREFv60 ux500 hardware: the wrong level shifter was addressed in the MMCI vdd handler, trying to reconfigure an unclaimed GPIO pin. Signed-off-by: Linus Walleij commit 9372da5073705fe991f0254baf47f82d491c83ff Author: Linus Walleij Date: Thu Mar 31 09:07:20 2011 +0200 mach-ux500: add HREFv60 Kconfig option This is necessary to have any use of the HREFv60 code. Signed-off-by: Linus Walleij commit 260bf2c5f69f419b04b6861ca91565b5fb16ce48 Author: Kuninori Morimoto Date: Fri Jun 17 08:21:05 2011 +0000 dmaengine: shdma: add .needs_tend_set / .no_dmars flags Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit e76c3af873025f5a704d56a28882be761e15657b Author: Kuninori Morimoto Date: Fri Jun 17 08:20:56 2011 +0000 dmaengine: shdma: add dmaor_is_32bit flag Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 67c6269e5c998b53c2c08ce2befbbe20a7b6f57f Author: Kuninori Morimoto Date: Fri Jun 17 08:20:51 2011 +0000 dmaengine: shdma: add chcr_ie_bit IE bit position on CHCR register is not same in all DMAC. This patch adds new "chcr_ie_bit" to decide it. Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 5899a723b336da241b492583d7e55f1055f8f3b3 Author: Kuninori Morimoto Date: Fri Jun 17 08:20:40 2011 +0000 dmaengine: shdma: add chcr_write/read function CHCR register position is not same in all DMAC. This patch adds new "chcr_offset" to decide it. Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 403f81d8ee532c976d50a5e1051f14ec78ae8db3 Author: Joerg Roedel Date: Tue Jun 14 16:44:25 2011 +0200 iommu/amd: Move missing parts to drivers/iommu A few parts of the driver were missing in drivers/iommu. Move them there to have the complete driver in that directory. Signed-off-by: Joerg Roedel commit 68255b628776dfafa7f67ca3afd66bd4ba377307 Author: Joerg Roedel Date: Tue Jun 14 15:51:54 2011 +0200 iommu: Move iommu Kconfig entries to submenu For better navigation this patch moves the drivers/iommu drivers into its own submenu in Kconfig. Signed-off-by: Joerg Roedel commit 166e9278a3f98bab29ebb3d685a81cfb11b98be0 Author: Ohad Ben-Cohen Date: Fri Jun 10 21:42:27 2011 +0300 x86/ia64: intel-iommu: move to drivers/iommu/ This should ease finding similarities with different platforms, with the intention of solving problems once in a generic framework which everyone can use. Note: to move intel-iommu.c, the declaration of pci_find_upstream_pcie_bridge() has to move from drivers/pci/pci.h to include/linux/pci.h. This is handled in this patch, too. As suggested, also drop DMAR's EXPERIMENTAL tag while we're at it. Compile-tested on x86_64. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Joerg Roedel commit 29b68415e335ba9e0eb6057f9405aa4d9c23efe4 Author: Ohad Ben-Cohen Date: Sun Jun 5 18:22:18 2011 +0300 x86: amd_iommu: move to drivers/iommu/ This should ease finding similarities with different platforms, with the intention of solving problems once in a generic framework which everyone can use. Compile-tested on x86_64. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Joerg Roedel commit b10f127e1a4d8cac5414c6e2b152c205b66c9f16 Author: Ohad Ben-Cohen Date: Thu Jun 2 03:20:08 2011 +0300 msm: iommu: move to drivers/iommu/ This should ease finding similarities with different platforms, with the intention of solving problems once in a generic framework which everyone can use. Compile-tested for MSM8X60. Signed-off-by: Ohad Ben-Cohen Acked-by: David Brown Signed-off-by: Joerg Roedel commit 9dd056e9eba106ef622795b566f769a9ab0a49a8 Merge: 08ef2e4 f2b9726 Author: Paul Mundt Date: Tue Jun 21 17:47:44 2011 +0900 Merge branch 'sh/stable-updates' into sh-latest commit a00a5fad9ddbabc7cd03d143520b9a4730edc75d Author: Lydia Wang Date: Tue Jun 21 16:11:11 2011 +0800 ALSA: hda - Fix creations of playback volume controls in patch_via.c Fix a issue to create playback volume control if pin has amplifier capability but not DAC. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit dadbe85ac47f180fa1e3ef93b276ab7938b1a98b Author: Vasu Dev Date: Wed May 11 05:41:46 2011 +0000 ixgbe: setup per CPU PCI pool for FCoE DDP Currently single PCI pool used across all CPUs and that doesn't scales up as number of CPU increases, so this patch adds per CPU PCI pool to setup udl and that aligns well from FCoE stack as that already has per CPU exch locking. Adds per CPU PCI alloc setup and free in ixgbe_fcoe_ddp_pools_alloc and ixgbe_fcoe_ddp_pools_free, use CPU specific pool during DDP setup. Re-arranged ixgbe_fcoe struct to have fewer holes along with adding pools ptr using pahole. Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 9612de92e023bff0d1cd5725ee65293accc70c56 Author: Emil Tantilov Date: Sat May 7 07:40:20 2011 +0000 ixgbe: add support for Dell CEM This patch adds support for Dell CEM (Comprehensive Embedded Management)). This consists of informing the management firmware of the driver version during probe on 82599 and X540 HW. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit fb5475ff7f2e80e920a393d18a43b64124a30270 Author: John Fastabend Date: Tue Apr 26 07:26:36 2011 +0000 ixgbe: DCB, remove unneeded ixgbe_dcb_txq_to_tc() routine The ixgbe_dcb_txq_to_tc() routine was used to map TX rings to a DCB traffic class. Now that a tx_ring has a DCB traffic class associated with it this routine is no longer needed. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit b1bbdb206a52b7eb13c2e57ee794b90618f61002 Author: John Fastabend Date: Tue Apr 26 07:26:30 2011 +0000 ixgbe: DCB and perfect filters can coexist Now flow directors perfect filters features can coexist with DCB. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 6f70f6acc7321f9f6501157b29d2db8c475cf3b2 Author: John Fastabend Date: Tue Apr 26 07:26:25 2011 +0000 ixgbe: fix bit mask for DCB version This bit mask is wrong DCBX_HOST is always set. It was missed up until now because lldpad reprograms the device on a link event. However this is still wrong and it is best not to be mis-configured for some time immediately following ixgbe_up(). Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 86b4db3bcce714d6bdd8c056158821301624bf00 Author: John Fastabend Date: Tue Apr 26 07:26:19 2011 +0000 ixgbe: setup redirection table for multiple packet buffers Setup RSS redirection table to be compatible with multiple packet buffers. Currently, this works on 82599 devices because the RSS redirection index is masked by the number of queues per packet buffer. This sets the cap on the RSS table to maxq. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit aba70d5e6c1c188fe45c1a782060440b6c2ea759 Author: John Fastabend Date: Tue Apr 26 07:26:14 2011 +0000 ixgbe: DCB 82598 devices, tx_idx and rx_idx swapped The tx_idx and rx_idx values are swapped on 82598 devices with DCB enabled. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit e901acd6fa5538436e08e8a862dd2c080297f852 Author: John Fastabend Date: Tue Apr 26 07:26:08 2011 +0000 ixgbe: DCB use existing TX and RX queues The number of TX and RX queues allocated depends on the device type, the current features set, online CPUs, and various compile flags. To enable DCB with multiple queues and allow it to coexist with all the features currently implemented it has to setup a valid queue count. This is done at init time using the FDIR and RSS max queue counts and allowing each TC to allocate a queue per CPU. DCB will now use available queues up to (8 x TCs) this is somewhat arbitrary cap but allows DCB to use up to 64 queues. Its easy to increase this later if that is needed. This is prep work to enable Flow Director with DCB. After this DCB can easily coexist with existing features and no longer needs its own DCB feature ring. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 8b1c0b24d9afd4a59a8aa9c778253bcff949395a Author: John Fastabend Date: Tue May 3 02:26:48 2011 +0000 ixgbe: configure minimal packet buffers to support TC ixgbe devices support different numbers of packet buffers either 8 or 4. Here we only allocate the minimal number of packet buffers required to implement the net_devices number of traffic classes. Fewer traffic classes allows for larger packet buffers in hardware. Also more Tx/Rx queues can be given to each traffic class. This patch is mostly about propagating the number of traffic classes through the init path. Specifically this adds the 4TC cases to the MRQC and MTQC setup routines. Also ixgbe_setup_tc() was sanitized to handle other traffic class value. Finally changing the number of packet buffers in the hardware requires the device to reinit. So this moves the reinit work from DCB into the main ixgbe_setup_tc() routine to consolidate the reset code. Now dcbnl_xxx ops call ixgbe_setup_tc() to configure packet buffers if needed. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 72a32f1f3f68b7d95e7151b5f88831fb9906416e Author: John Fastabend Date: Tue Apr 26 07:25:58 2011 +0000 ixgbe: consolidate MRQC and MTQC handling The MRQC and MTQC registers are configured in the main setup path but are also reconfigured in the DCB setup path. The DCB path fixes the DCB configuration by configuring the SECTXMINIFG gap which is required for DCB pause to operate correctly. This patch reduces the duplicate code and does all setup in ixgbe_setup_mtqc() and ixgbe_setup_mrqc(). Additionally, this removes the IXGBE_QDE. This write never set the WRITE bit in the register so the write was not actually doing anything. Also this was to clear the register but, it is never set and defaults to zero. If this is needed for SRIOV it should be added correctly in a follow up patch. But it's never been working so removing it here should be OK. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 80605c6513207344d00b32e8d1e64bd34fdf1358 Author: John Fastabend Date: Mon May 2 12:34:10 2011 +0000 ixgbe: consolidate packet buffer allocation Consolidate packet buffer allocation currently being done in the DCB path and main path. This allows the feature set and packet buffer requirements to be done once. This is prep work to allow DCB to coexist with other features namely, flow director. CC: Alexander Duyck Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 1fcd86b51179518f7e69164e37353fb59cd6301e Author: John Fastabend Date: Tue Apr 26 10:05:14 2011 +0000 ixgbe: dcbnl reduce duplicated code and indentation Replace duplicated code in if/else branches with single check and ixgbe_init_interrupt_scheme(). Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit c12db7695e1f52b27108c3dfde3cf655a0368c58 Author: Stephen Hemminger Date: Thu Jun 9 02:58:39 2011 +0000 ixgbevf: remove unnecessary ampersands Use standard format for net_device_ops (without &) Signed-off-by: Stephen Hemminger Acked-by: Greg Rose Signed-off-by: Jeff Kirsher commit f416dfc0e07120d2610e836609b7235897796c90 Author: Greg Rose Date: Wed Jun 8 07:32:38 2011 +0000 ixgbevf: Fix bungled declaration of ixgbevf_mbx_ops In two places storage for mbx_ops is misidentified as type ixgbe_mac_operations. Reported-by: Andi Kleen Signed-off-by: Greg Rose Signed-off-by: Jeff Kirsher commit ac52caa31e0a135a8940a66de763751760820f37 Author: Michał Mirosław Date: Wed Jun 8 08:38:01 2011 +0000 igb: convert to ndo_fix_features Private rx_csum flags are now duplicate of netdev->features & NETIF_F_RXCSUM. Removing this needs deeper surgery. Things noticed: - HW VLAN acceleration probably can be toggled, but it's left as is - the resets on RX csum offload change can probably be avoided - there is A LOT of copy-and-pasted code here Signed-off-by: Michał Mirosław Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit e97d3207c5e697e3d86cc67483f9cdcce16cc0bf Author: Michał Mirosław Date: Wed Jun 8 08:36:42 2011 +0000 e1000: convert to ndo_fix_features Private rx_csum flags are now duplicate of netdev->features & NETIF_F_RXCSUM. Removing this needs deeper surgery. Things noticed: - RX csum disabled by default - HW VLAN acceleration probably can be toggled, but it's left as is - the resets on RX csum offload change can probably be avoided - there is A LOT of copy-and-pasted code here Signed-off-by: Michał Mirosław Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 8e3679dca200a326426a92d998b63cab5a17c52d Author: Takashi Iwai Date: Tue Jun 21 09:01:36 2011 +0200 ALSA: hda - Revisit output_path parsing in patch_via.c Change the order of the output-path list in a way from the DAC to the target pin. Also now the list include the target pin, too. Together with this format change, simplify the arguments of parse_output_path() function, and fix the initialization in via_auto_init_output(). Signed-off-by: Takashi Iwai commit 30f7c5d491ec2d515148882fa0b4080ab61d4bb0 Author: Takashi Iwai Date: Tue Jun 21 08:37:41 2011 +0200 ALSA: hda - Use xxx Boost Volume for VIA Drop "Capture" prefix from the mic-boost names. Otherwise some control names can overflow the max name length. Signed-off-by: Takashi Iwai commit efb9f469b6f563a9e54cc67575d38032800a49f2 Author: Takashi Iwai Date: Tue Jun 21 07:44:51 2011 +0200 ALSA: hda - Fix a compile error in patch_ca0132.c for the recent SPDIF change Signed-off-by: Takashi Iwai commit 216c7a0f22a088ff9f7c14f82c5bf93294875df9 Merge: ada509e e905a83 Author: Takashi Iwai Date: Tue Jun 21 07:34:00 2011 +0200 Merge branch 'fix/hda' into topic/via-cleanup Conflicts: sound/pci/hda/patch_via.c commit 95c6e9cb774979c270f0ecb9ec819d02592ec89f Author: Ian Minett Date: Wed Jun 15 15:35:17 2011 -0700 ALSA: hda - Add Creative CA0132 HDA codec support Create patch_ca0132.c, to add support for devices featuring the Creative CA0132 HD-audio codec. This driver implements :- * 1 playback subdevice to headphone and speaker * 2 capture subdevices: i - Mic-in ii- Line-in * mixer device Advanced DSP features are not yet included. Developed and maintained by Creative Labs, Inc. Signed-off-by: Ian Minett Signed-off-by: Takashi Iwai commit 9f6ec8d697c08963d83880ccd35c13c5ace716ea Merge: 4aa3a71 5629937 Author: David S. Miller Date: Mon Jun 20 22:29:08 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-agn-rxon.c drivers/net/wireless/rtlwifi/pci.c net/netfilter/ipvs/ip_vs_core.c commit 033b5650010652c069494df58424c4b98412fe3b Author: Alex Deucher Date: Wed Jun 8 15:26:45 2011 -0400 drm/radeon/kms: add initial CS checker support for compute - Add some new compute regs - Add new dispatch packets for evergreen/cayman Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 0d74f86f37306da8619eb049d88ab7ee523eec9c Author: Konrad Rzeszutek Wilk Date: Wed Jun 8 17:06:15 2011 +0000 ttm: Fix spelling mistakes and remove unused #ifdef . and some comments to make it easier to understand. Ackedby: Randy Dunlap [v2: Added some more updates from Randy Dunlap] Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Dave Airlie commit 20633442eb6ce7b0b55252a24b981afe42b3d361 Author: Alex Deucher Date: Mon Jun 13 21:33:39 2011 +0000 drm/radeon/kms: set dma_copy to NULL for r6xx+ No need to assign the same copy callback for both copy blit and dma. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 304eda32920b5e23f6b9bc12eb40c7dc52a464ba Author: Ben Skeggs Date: Thu Jun 9 00:24:59 2011 +0000 drm/gem: add hooks to notify driver when object handle is created/destroyed Nouveau is going to use these hooks to map/unmap objects from a client's private GPU address space. Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit 20d5d5514981f9a68832bffb27a698545ecba77a Author: Kevin Hilman Date: Thu May 26 14:07:41 2011 -0700 OMAP2: PM debug: remove register dumping Tested-by: Santosh Shilimkar Acked-by: Santosh Shilimkar Signed-off-by: Kevin Hilman commit 3a7b7bdd24286a9cfce9dda5d2b7324dfc2e3b31 Author: Kevin Hilman Date: Thu May 26 14:48:19 2011 -0700 OMAP3: PM debug: remove sleep_while_idle feature Remove the OMAP-specific PM debug 'sleep_while_idle' feature which is currently available as an OMAP-specific debugfs entry. This duplicates existing ARM-generic functionality available as a boot-time option using the boot cmdline option 'hohlt'. If runtime configuration of this is needed, then adding a debugfs entry for the ARM-generic hlt/nohlt interface should be added. Tested-by: Santosh Shilimkar Acked-by: Santosh Shilimkar Acked-by: Jean Pihet Signed-off-by: Kevin Hilman commit 442155adc0989148e800923f4b4b191ce2120c6a Author: Nishanth Menon Date: Mon Feb 14 12:33:13 2011 +0530 OMAP3+: SR: fix cosmetic indentation Error label case seems to have a 2 tab indentation when just 1 is necessary. Signed-off-by: Nishanth Menon Signed-off-by: Kevin Hilman commit ac77a6f7a9352d10c4942c24c8fbf61ee54ea196 Author: Nishanth Menon Date: Mon Feb 14 21:14:17 2011 +0530 OMAP3+: SR: enable/disable SR only on need Since we already know the state of the autocomp enablement, we can see if the requested state is different from the current state and enable/disable SR only on the need basis. Signed-off-by: Nishanth Menon Signed-off-by: Kevin Hilman commit 1279ba5916f6635610c639186be84afaef831fb3 Author: Nishanth Menon Date: Mon Feb 14 12:41:10 2011 +0530 OMAP3+: SR: disable interrupt by default We will enable and disable interrupt on a need basis in the class driver. We need to keep the IRQ disabled by default else the forceupdate or vcbypass events could trigger events that we don't need/expect to handle. This is a preparation for SmartReflex AVS class drivers such as class 2 and class 1.5 which would need to use interrupts. Existing SmartReflex AVS class 3 driver does not require to use interrupts and is not impacted by this change. Signed-off-by: Nishanth Menon Signed-off-by: Kevin Hilman commit 7a89afa8cfb2cb614d0b8912f19ee98124feeb51 Author: Nishanth Menon Date: Mon Feb 14 12:16:36 2011 +0530 OMAP3+: SR: make notify independent of class Interrupt notification mechanism of SmartReflex can be used by the choice of implementation of the class driver. For example, Class 2 and Class 1.5 of SmartReflex can both use the interrupt notification to identify the transition of voltage or other events. Hence, the actual class does not matter for notifier. Let the class driver's handling decide how it should be used. SmartReflex driver should provide just the primitives. Signed-off-by: Nishanth Menon Signed-off-by: Kevin Hilman commit 4aa3a715551c93eda32d79bd52042ce500bd5383 Author: Sebastian Poehn Date: Mon Jun 20 13:57:59 2011 -0700 gianfar v5: implement nfc This patch adds all missing functionalities for nfc except GRXFH. There is so much code because hardware has not a TCAM. Further hardware rule space is very limited. So I had to extensively use optimization features. Both reasons lead to the necessity to hold all online flows in a linked-list. Change-log: # Some suggestions by Joe Perches applied (thanks!) # Shorted some logs # Use memcmp() for comparing Signed-off-by: Sebastian Poehn Signed-off-by: David S. Miller commit d13d6bffb418a660c06a5a12afcf7e7081489548 Author: Richard Cochran Date: Sun Jun 19 21:51:33 2011 +0000 ucc_geth: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping. Compile tested only. Cc: Shlomi Gridish Cc: Li Yang Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 1f6e44a6dc21a5d2abb068063acbbf64f8cee548 Author: Richard Cochran Date: Sun Jun 19 21:51:31 2011 +0000 pxa168_eth: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping Compile tested only. Cc: Sachin Sanap Cc: Zhangfei Gao Cc: Philip Rakity Cc: Mark Brown Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 8c0069ae3a85eeedbbf955e380e822756f7a9d2f Author: Richard Cochran Date: Sun Jun 19 21:51:30 2011 +0000 smsc911x: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping. Compile tested only. Cc: Steve Glendinning Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit e309721159c05c36f10a973bef03388dadb102b0 Author: Richard Cochran Date: Sun Jun 19 21:51:29 2011 +0000 fs_enet: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping. Compile tested only. Cc: Pantelis Antoniou Cc: Vitaly Bordug Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit e072092fc7a89178736530f51a4daaa3155cf44b Author: Richard Cochran Date: Sun Jun 19 21:51:28 2011 +0000 macb: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping Compile tested only. Cc: Nicolas Ferre Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit d6cf07327e691e8f7c0f08af69d0dd3887aa1e4f Author: Richard Cochran Date: Sun Jun 19 21:51:27 2011 +0000 fec_mpc52xx: enable transmit and receive time stamping. This patch enables software (and phy device) time stamping. Software time stamping using the SO_TIMESTAMPING API was tested and found to be working on the LITE5200B board. Cc: Grant Likely Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 93e0ed158c15b3d3d76125de6364f8f95528c25a Author: Richard Cochran Date: Sun Jun 19 21:51:26 2011 +0000 ll_temac: enable transmit and receive time stamping. This patch enables software (and phy device) time stamping. Since this MAC is based on phylib, adding the hooks makes hardware time stamping in the phy possible. Compile tested only. Cc: Grant Likely Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 570773c5801cc6c322534d6b1d1551e23664103e Author: Richard Cochran Date: Sun Jun 19 21:51:25 2011 +0000 emaclite: enable transmit and receive time stamping. This patch enables software (and phy device) time stamping. Since this MAC uses phylib, adding the hooks make hardware time stamping in the phy possible. Compile tested only. Cc: John Linn Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit d76b7e2faaabae4805ae7ebf31ad64a33268f44f Author: Richard Cochran Date: Sun Jun 19 21:51:24 2011 +0000 lib8390: enable transmit and receive time stamping. This patch enables software (and phy device) time stamping. This file is included by drivers/net/ax88796.c, which is based on phylib. So, this patch makes hardware time stamping in the PHY possible. Compile tested only. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 238442f6bc10ba31577fc47e476c88689c80c7fa Author: Richard Cochran Date: Sun Jun 19 21:51:23 2011 +0000 net: export the receive time stamping hook for non-NAPI drivers Ethernet MAC drivers based on phylib (but not using NAPI) can enable hardware time stamping in phy devices by calling netif_rx() conditionally based on a call to skb_defer_rx_timestamp(). This commit exports that function so that drivers calling it may be compiled as modules. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 306ff6eb8e9c18bcafb8ca5be4be3c78dfe45475 Author: Eric Dumazet Date: Sun Jun 19 20:07:46 2011 +0000 myricom: remove stats_lock stats_lock is non useless, lets remove it. Also, ndo_get_stats64() doesnt have to clear the stats, caller takes care of this. Note: folding 32bit fields in 64bit one is problematic when one of 32bit values wraps : SNMP reader will see a ~2^32 back change in a 64bit value. A future patch should fix this. Signed-off-by: Eric Dumazet CC: Stephen Hemminger CC: Andrew Gallatin CC: Brice Goglin Acked-by: Jon Mason Signed-off-by: David S. Miller commit eac56465b88cc9ad3b964a9f0a02be3d3a136ddf Merge: 1b9c413 43676ab Author: David S. Miller Date: Mon Jun 20 12:59:37 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge commit 1b9c4134c126aa8ae00a57672d4a4eaecc436b54 Author: Jon Mason Date: Mon Jun 20 12:51:22 2011 -0700 myri_sbus: remove driver Remove the myri_sbus driver. Why? * There is no possibility of ethernet mode on this adapter, so it's Myrinet only. * It won't inter-op with modern versions of Myrinet, and thus can only work with legacy adapters. * There are no in-kernel Linux drivers for the PCI version of this adapter, so it only can work on ~15 year old Sun hardware. It's long in the tooth, let's take it to the knackers. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit e10542c447abf7c840931ff12f7d0dee976ca2ea Author: Mike McCormack Date: Mon Jun 20 10:47:51 2011 +0900 rtlwifi: rtl8192{c,ce,cu,se}: Remove comparisons of booleans with true These are a potential source of confusion, as most C code treats all non-zero values as true. Signed-off-by: Mike McCormack Acked-by: Larry Finger Signed-off-by: John W. Linville commit 4b9d8d67b44aae18e1c4b71281f5cfc0f2105cf6 Author: Mike McCormack Date: Mon Jun 20 10:46:05 2011 +0900 rtlwifi: rtl8192cu: Remove unused parameter rtl_ps_set_rf_state's protect_or_not parameter is not set to true anywhere, except for commented out code. It enables some legacy locking code, which is no longer used, so delete the parameter and the old locking code. Signed-off-by: Mike McCormack Acked-by: Larry Finger Signed-off-by: John W. Linville commit 9c0504403725ca77153a0bdad2f3bef0a05e32f0 Author: Mike McCormack Date: Mon Jun 20 10:44:58 2011 +0900 rtlwifi: Fix typo in variable name offchan_deley should be offchan_delay Signed-off-by: Mike McCormack Acked-by: Larry Finger Signed-off-by: John W. Linville commit 440ca98fe8407808a9ad8e934f6e28408f546313 Author: Rafał Miłecki Date: Sat Jun 18 01:01:59 2011 +0200 bcma: clean exports of functions Function managing IRQs is needed for external drivers like b43. On the other side we do not expect writing any hosts drivers outside of bcma, so this is safe to do not export functions related to this. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 536e5189ffdf17047f129f4730d947ab11a8526b Author: Pavel Roskin Date: Fri Jun 17 17:59:02 2011 -0400 ath5k: add missing ieee80211_free_hw() on unload in AHB code Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 0e8d1602b223efcd4eaaa799314f5d7ad1742035 Author: John W. Linville Date: Fri Jun 17 16:41:30 2011 -0400 ath5k: free sc->ah in ath5k_deinit_softc Nothing else is freeing it, and this mirrors the error handling path already in ath5k_init_softc. https://bugzilla.kernel.org/show_bug.cgi?id=37592 Signed-off-by: John W. Linville Reported-by: Tsyvarev Andrey commit 898f699e7fd625dd7cdf7739704ae88972c92dc2 Author: Rafał Miłecki Date: Fri Jun 17 13:15:24 2011 +0200 bcma: fix BCM43224 rev 0 workaround Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 91fa4b0a6b92ebef3d5e26b709faf62a3b44beb0 Author: Rafał Miłecki Date: Fri Jun 17 13:15:23 2011 +0200 bcma: enable support for 14e4:4357 (BCM43225) Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 0e44d48cbb010db492a27302b247049d5d43e065 Author: Mohammed Shafi Shajakhan Date: Fri Jun 17 14:08:42 2011 +0530 ath9k_hw: make sure PAPRD training is properly done checking the status of PAPRD_AGC2_POWER(Log(ADC_power) measured after last gain-change in dB) field suggests whether the PAPRD is completely/properly done. This is an additional check apart from polling for PAPRD done bit being set. Susinder suggests that the ideal power range value should be 0xf0 to 0xfe. With AR9382 we do have the values in this range. to have a common check for all platforms we take agc2_power should be atleast greater than 0xe0 Cc: susinder@qca.qualcomm.com Cc: senthilb@qca.qualcomm.com Cc: kmuthusa@qca.qualcomm.com Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 81dc67601a49d1bfcfa85f644b14a013fc59e0ef Author: Mohammed Shafi Shajakhan Date: Fri Jun 17 11:07:32 2011 +0530 ath9k: Fix a corner case failure in sending PAPRD frames in HT40 when the AP is configured with HT40/2.4GHz and when PAPRD is enabled in station we have PAPRD training frames never sent out because of the following failure "PAPRD target power delta out of range". This consistently happens in channel 10,11 in Over The Air testing and rarely in channel 6 under wired setup. the reason behind this issue is all the HT40 rates target power are 0 when we operate in channel 10/11 at 2.4GHz Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 77572fd13d7f468216b85e68a006000726a59e89 Author: Eliad Peller Date: Thu Jun 16 11:49:33 2011 +0300 mac80211: quiesce vif before suspending Cancel all relevant timers/works before suspending (wowlan). This patch handles the following warning: WARNING: at net/mac80211/util.c:565 queueing ieee80211 work while going to suspend Backtrace: [] (ieee80211_can_queue_work+0x0/0x4c [mac80211]) [] (ieee80211_queue_work+0x0/0x30 [mac80211]) [] (ieee80211_sta_timer+0x0/0x3c [mac80211]) [] (run_timer_softirq+0x0/0x220) [] (__do_softirq+0x0/0x130) [] (irq_exit+0x0/0xb4) [] (ipi_timer+0x0/0x4c) [] (do_local_timer+0x0/0x88) [] (cpu_idle+0x0/0xe0) [] (rest_init+0x0/0xe0) [] (start_kernel+0x0/0x314) Signed-off-by: Eliad Peller Signed-off-by: John W. Linville commit e13e21dc5d06bd9ed4a88daf057b8dbe80c220de Author: Vinicius Costa Gomes Date: Fri Jun 17 22:46:27 2011 -0300 Bluetooth: Remove useless access to the socket We already have access to the chan, we don't have to access the socket to get its imtu. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 6312845169e8719f6f0726efc62bc6a8dedea9d3 Author: Vinicius Costa Gomes Date: Fri Jun 17 22:46:26 2011 -0300 Bluetooth: Fix crash when setting a LE socket to ready We should not try to do any other type of configuration for LE links when they become ready. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 6392cb387cb629a5aa488e6a2eab9383b574a7ef Merge: 0521ecf3 8943442 Author: John W. Linville Date: Mon Jun 20 15:28:44 2011 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit 0521ecf335ce36394a3403fdd48aa87a0352c7d6 Author: Kalle Valo Date: Tue Jun 14 01:35:04 2011 +0300 rtlwifi: include mac80211.h from core.h core.h references ieee80211_ops but doesn't include mac80211.h, which issues a warning once mac80211-compat.h is taken into use. Acked-by: Larry Finger Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 9a0669681c2d94fa198a82d108918def55a7cd70 Author: Kalle Valo Date: Tue Jun 14 01:34:57 2011 +0300 zd1211rw: include mac80211.h from zd_chip.h zd_chip.h contains one function with a pointer to ieee80211_hw but doesn't include mac80211.h. As a temporary solution include mac80211.h to avoid a warning. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 47751b0fbff55f5f65d1a4d24ca10acd90259fc1 Author: Kalle Valo Date: Tue Jun 14 01:34:50 2011 +0300 iwlwifi: fix stop/wake queue hacks The hacks break once mac80211-compat.h is taken into use. Fix it by adding an ifdef check. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 2055403ded0b16b8fdb7d6f188dccdc9ca35d7d5 Author: Kalle Valo Date: Tue Jun 14 01:34:38 2011 +0300 iwlegacy: fix stop/wake queue hacks The hacks break once mac80211-compat.h is taken into use. Fix it by adding an ifdef check. Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit b85a3ef4ac65169b65fd2fe9bec7912bbf475ba4 Author: John Linn Date: Mon Jun 20 11:47:27 2011 -0600 ARM: Xilinx: Adding Xilinx board support The 1st board support is minimal to get a system up and running on the Xilinx platform. This platform reuses the clock implementation from plat-versatile, and it depends entirely on CONFIG_OF support. There is only one board support file which obtains all device information from a device tree dtb file which is passed to the kernel at boot time. Signed-off-by: John Linn commit c20974090e9093b8b69b37543cba381336c41ab7 Author: Dan Carpenter Date: Mon Jun 20 10:11:25 2011 +0300 ASoC: adau1701: signedness bug in adau1701_write() "ret" is supposed to be signed here. The current code will only return -EIO on error, instead of a more appropriate error code such as -EAGAIN etc. Signed-off-by: Dan Carpenter Acked-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 37b8304642c7f91df54888955c373ae89b577fcc Author: Nicolas Pitre Date: Sun Jun 19 23:36:03 2011 -0400 ARM: kuser: move interface documentation out of the source code Digging into some assembly file in order to get information about the kuser helpers is not that convivial. Let's move that information to a better formatted file in Documentation/arm/ and improve on it a bit. Thanks to Dave Martin for the initial cleanup and clarifications. Signed-off-by: Nicolas Pitre Acked-by: Dave Martin commit ada509ec00e4ae1bfc4e0fa8a5c14091df920dbc Author: Takashi Iwai Date: Mon Jun 20 15:40:19 2011 +0200 ALSA: hda - Simplify analog-low-current mode check for VIA codecs Use the existing aa-loop list for simplifying the check for analog low-current mode. Also fix the stream count test for playback streams. Signed-off-by: Takashi Iwai commit 47be05ce0a634779e1e86ec318a046f43dd6c602 Author: Takashi Iwai Date: Mon Jun 20 15:10:28 2011 +0200 ALSA: hda - Remove NID_MAPPING hacks in patch_via.c There is no longer virtual kmixer element for NID mapping. Signed-off-by: Takashi Iwai commit c6191607871776e828b8bc47b944d0c425776951 Author: Takashi Iwai Date: Mon Jun 20 14:11:59 2011 +0200 ALSA: hda - Remove unused defines and struct fields in patch_via.c Signed-off-by: Takashi Iwai commit 6aadf41d6b9f8da68db5962929c07f816db15893 Author: Takashi Iwai Date: Mon Jun 20 14:09:02 2011 +0200 ALSA: hda - Name the primary out as Speaker when needed for VIA codecs When the primary output is the speaker output, rather name it as "Speaker". This will be more intuitive. Signed-off-by: Takashi Iwai commit 13af8e77ea3e0dff80db9b2e0007535c21d49094 Author: Takashi Iwai Date: Mon Jun 20 14:05:46 2011 +0200 ALSA: hda - Create loopback-list dynamically in patch_via.c Create loopback list dynamically from the parsed input pins for VIA codecs instead of the fixed arrays. Signed-off-by: Takashi Iwai commit e3d7a1431f1d8851d11b2262dda5bb67158450eb Author: Takashi Iwai Date: Mon Jun 20 13:52:33 2011 +0200 ALSA: hda - Fix smart51 handling again Fix the broken detection of smart51 and its handling. Signed-off-by: Takashi Iwai commit 370bafbdae3d78c9081ebe3028a3ff5f0e91357b Author: Takashi Iwai Date: Mon Jun 20 12:47:45 2011 +0200 ALSA: hda - Create virtual-master control for VIA codecs Now let's add the missing Master control to VIA codecs. Signed-off-by: Takashi Iwai commit 4a918ffeaadd6a2269b9c6575478c102382c7702 Author: Takashi Iwai Date: Mon Jun 20 12:39:26 2011 +0200 ALSA: hda - Initialize unsol events dynamically in patch_via.c Issue the init verbs of unsolicited events dynamically from the parsed results for VIA codecs. Also, consolidate the unsol handlers for HP and line-out mutes. Signed-off-by: Takashi Iwai commit 096a885494f6b89a9962c6faf18e1c6092e7919c Author: Takashi Iwai Date: Mon Jun 20 12:09:02 2011 +0200 ALSA: hda - Initialize input-path dynamically in patch_via.c Similarly like the previous commit, initialize the input-paths dynamically from the parsed results instead of the fixed array for VIA codecs. Signed-off-by: Takashi Iwai commit 5d41762a210851943f59f0a08656ca582f76d9d3 Author: Takashi Iwai Date: Mon Jun 20 11:32:27 2011 +0200 ALSA: hda - Initialize output path dynamically in patch_via.c Instead of fixed array for each codec type, initialize the output path dynamically from the parsed results. Signed-off-by: Takashi Iwai commit 0fe0adf82f95ed5ce5a75512b281f6cbc89cefa1 Author: Takashi Iwai Date: Sun Jun 19 16:27:53 2011 +0200 ALSA: hda - Replace with standard consts in patch_via.c Signed-off-by: Takashi Iwai commit ece8d0431fde78ea2c0a5be2884bcbc4940ae7c5 Author: Takashi Iwai Date: Sun Jun 19 16:24:21 2011 +0200 ALSA: hda - Fix independent-HP handling in patch_via.c Fix races in handling of HP DAC and independent streams for VIA codecs. Also, allow the HP output path without front-DAC, and removed unnecessary activation of HP mixer elements. This also removes the handling of shared side/HP stream; it's anyway implemented in a broken way, so we need to re-implement the feature later... Signed-off-by: Takashi Iwai commit 12daef65fd868cf30be5afe3e6be6689c44c7940 Author: Takashi Iwai Date: Sat Jun 18 17:45:49 2011 +0200 ALSA: hda - Unify auto-parser in patch_via.c Now all codecs use the same parser-path, so we can reduce into a single auto-parser function. Signed-off-by: Takashi Iwai commit 7f0df88ce0ad846b68156b73b3acc9f3901989d3 Author: Takashi Iwai Date: Sat Jun 18 17:33:34 2011 +0200 ALSA: hda - Return error for invalid setup for VIA Instead of ignoring the invalid pin configuration, return the error. This will avoid unexpected crash, anyway. Signed-off-by: Takashi Iwai commit d7a99cce558f84477adacce9324ab22f52c951ba Author: Takashi Iwai Date: Sat Jun 18 17:24:46 2011 +0200 ALSA: hda - Unify capture-mixer creations in patch_via.c Create capture-related mixer elements dynamically from the parsed ADCs and input-pins instead of fixed values for each codec. Signed-off-by: Takashi Iwai commit 7eb56e84e6c4deaa552db96834ea0b233ba92f50 Author: Takashi Iwai Date: Sat Jun 18 16:40:14 2011 +0200 ALSA: hda - Assign HP-independent PCM to individual stream Instead of using the secondary substream, create an individual PCM stream for HP-independent PCM. Otherwise it's difficult to handle different channel numbers with multi-channel stream in the sam PCM stream structure. Signed-off-by: Takashi Iwai commit 9af7421091fd37a2f8c35ca8b3a5f78a6f20fa89 Author: Takashi Iwai Date: Sat Jun 18 16:17:45 2011 +0200 ALSA: hda - Unify PCM assignments in patch_via.c Unify PCM streams for all codecs by assigning the NID dynamically. Signed-off-by: Takashi Iwai commit 57307bf24ac78d135c066520234c01bda36ec39a Author: Takashi Iwai Date: Sat Jun 18 10:58:49 2011 +0200 ALSA: hda - Don't create secondary substream when no independent-hp is used For VIA codecs, we shouldn't create a substream for independent HP mode, when no individual HP DAC is found. Signed-off-by: Takashi Iwai commit f4a7828bc1e85b8de03b628da1cef4e862e0623b Author: Takashi Iwai Date: Fri Jun 17 18:46:48 2011 +0200 ALSA: hda - Re-implement smart51 detection for VIA codecs Signed-off-by: Takashi Iwai commit 4a79616d079f833714c9ef63a9b825caacafe675 Author: Takashi Iwai Date: Fri Jun 17 17:53:38 2011 +0200 ALSA: hda - Unify output-control parsing in patch_via.c Parse the output-paths more dynamically, i.e. traverse the paths from each output pin instead of fixed assignment for each codec. Now all codecs are using the same output parser code. The smart51 setup doesn't work with this change, and will be fixed in the next commits. Signed-off-by: Takashi Iwai commit 620e2b28b7840f54da243ab3c771bcce5324bd80 Author: Takashi Iwai Date: Fri Jun 17 17:19:19 2011 +0200 ALSA: hda - Unify input-volume creations in patch_via.c Now storing the analog-mixer widget in spec, we can simplify the rest parts. Signed-off-by: Takashi Iwai commit 64be285b669e5eed65fb3630f1b2b549447b9f1e Author: Takashi Iwai Date: Fri Jun 17 16:51:39 2011 +0200 ALSA: hda - Auto-mute all LO and speakers in patch_via.c Muting all line-outs and/or speakers is more common in other drivers, so we should follow it, too. Signed-off-by: Takashi Iwai commit 3e0693e278ae2000cff0c9250074591696caedbf Author: Takashi Iwai Date: Fri Jun 17 16:37:45 2011 +0200 ALSA: hda - Change pin-ctl for auto-muting in patch_via.c Mute the outputs via pin-controls instead of amps for the auto-mute handling. This makes our life easier as it avoids conflict of the states between the mixer elements and the auto-mute toggles. With this change, we can use vmaster for the master control easily now. Signed-off-by: Takashi Iwai commit 82673bc8950b869f01f9fd517f1c2286e0e49f44 Author: Takashi Iwai Date: Fri Jun 17 16:24:21 2011 +0200 ALSA: hda - Generate PCM names dynamically in patch_via.c This reduces lots of static strings. Signed-off-by: Takashi Iwai commit 291c9e33bf3f8ac201b24b8f9e481756d43d7df7 Author: Takashi Iwai Date: Fri Jun 17 16:15:26 2011 +0200 ALSA: hda - Refactor ctl array handling in patch_via.c No functional change. Signed-off-by: Takashi Iwai commit e06e5a297474c8027beffe10541981845ca0c98b Author: Takashi Iwai Date: Fri Jun 17 15:46:13 2011 +0200 ALSA: hda - Defer mixer element creation to the right time in patch_via.c The jack-detect control should be created at the time of build_controls callback instead of calling snd_hda_add_ctls() at the tree-parsing time. For that, copy the control to the temporary array like other cases. Also, fixed typos of vt1708_jack_detect in all places. Signed-off-by: Takashi Iwai commit a766d0d763bf9d64ff622db2c9c620d45a4ead96 Author: Takashi Iwai Date: Fri Jun 17 09:01:29 2011 +0200 ALSA: hda - Fill ADCs dynamically for VIA codecs Instead of giving the fixed ADC list, parse the widgets and fill in ADCs dynamically. Also, probe the stereo-mixer input more dynamically, too. Signed-off-by: Takashi Iwai commit 24088a58d694ca5acc31ba67f966f60385789235 Author: Takashi Iwai Date: Fri Jun 17 16:59:21 2011 +0200 ALSA: hda - Add control to suppress the dynamic pin-power for VIA Currently VIA driver controls the power-state of each pin per jack detection. But, it means that the power-state mismatch may occur when the machine doesn't give the proper jack-detection. For avoiding this problem, a new control element "Dynamic Power-Control" is provided so that user can turn on/off the pin-power control. Signed-off-by: Takashi Iwai commit e44ba033c5654dbfda53461c9b1f7dd9bd1d198f Author: Vitaliy Ivanov Date: Mon Jun 20 16:08:07 2011 +0200 treewide: remove duplicate includes Many stupid corrections of duplicated includes based on the output of scripts/checkincludes.pl. Signed-off-by: Vitaliy Ivanov Signed-off-by: Jiri Kosina commit 5f4b36d64d1f1ba1da46bee3ec4f0519dfaf68e6 Author: Takashi Iwai Date: Fri Jun 17 14:55:02 2011 +0200 ALSA: hda - Remove superfluous NID_MAPPING use for smart51 mixer Just a minor clean up; nid-mapping can be set directly to the smart51 mixer element. Signed-off-by: Takashi Iwai commit 1816315b10862277a961a70ec394b6607983041d Author: Jonathan Neuschäfer Date: Sun Jun 19 11:50:22 2011 +0200 stop_machine.h: "disables preeempt" -> "disables preemption" Use the noun instead of a misspelled verb. Signed-off-by: Jonathan Neuschäfer Signed-off-by: Jiri Kosina commit 2b727c6300b49352f80f63704bb50c256949e95e Author: Namhyung Kim Date: Mon Jun 20 13:27:45 2011 +0200 bsg: fix address space warning from sparse copy_from/to_user() and blk_rq_map_user() want __user pointer. This patch fixes following warnings from sparse: CHECK block/bsg.c block/bsg.c:185:38: warning: incorrect type in argument 2 (different address spaces) block/bsg.c:185:38: expected void const [noderef] *from block/bsg.c:185:38: got void * block/bsg.c:295:58: warning: incorrect type in argument 4 (different address spaces) block/bsg.c:295:58: expected void [noderef] * block/bsg.c:295:58: got void *[assigned] dxferp block/bsg.c:311:52: warning: incorrect type in argument 4 (different address spaces) block/bsg.c:311:52: expected void [noderef] * block/bsg.c:311:52: got void *[assigned] dxferp block/bsg.c:448:37: warning: incorrect type in argument 1 (different address spaces) block/bsg.c:448:37: expected void [noderef] *dst block/bsg.c:448:37: got void * Signed-off-by: Namhyung Kim Acked-by: FUJITA Tomonori Signed-off-by: Jens Axboe commit 44194e3e88fcfe77a2a6e2333847d4f27816259a Author: Namhyung Kim Date: Mon Jun 20 13:27:44 2011 +0200 bsg: remove unnecessary conditional expressions Second condition in OR always implies first condition is false thus bytes_read in the second is not needed. The same goes to bytes_written. Signed-off-by: Namhyung Kim Acked-by: FUJITA Tomonori Signed-off-by: Jens Axboe commit 80ceb057135ad77f513277f3bcd04b885501877a Author: Namhyung Kim Date: Mon Jun 20 13:27:44 2011 +0200 bsg: fix bsg_poll() to return POLLOUT properly POLLOUT should be returned only if bd->queued_cmds < bd->max_queue so that bsg_alloc_command() can proceed. Signed-off-by: Namhyung Kim Acked-by: FUJITA Tomonori Signed-off-by: Jens Axboe commit 29376bc7e2bbb745c9ad47e48ca706ac5a24897f Author: Mark Brown Date: Sun Jun 19 13:49:28 2011 +0100 ASoC: Fix DAPM sequence run for per-widget I/O methods Previously we were using the DAPM context rather than a widget as the argument for update_bits() so we didn't need to care that our list walk of widgets left us one beyond the end of the list. Now we're using them for the register update we need to make sure we're pointing at an actual widget not the list_head. Fix originally suggested by Liam on IM. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 43676ab590c3f8686fd047d34c3e33803eef71f0 Author: Antonio Quartulli Date: Tue Apr 26 21:31:45 2011 +0200 batman-adv: improved gateway tq-based selection If a client issues a DHCPREQUEST for renewal, the packet is dropped if the old destination (the old gateway for the client) TQ is smaller than the current best gateway TQ less GW_THRESHOLD Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 19595e054d35820e026caac314414e435287e3ae Author: Antonio Quartulli Date: Sun Jun 12 11:58:58 2011 +0200 batman-adv: throw uevent in userspace on gateway add/change/del event In case of new default gw, changing the default gw or deleting the default gw a uevent is triggered with type=gw, action=add/change/del and data={GW_ORIG_ADDRESS} (if any). Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 2265c141086474bbae55a5bb3afa1ebb78ccaa7c Author: Antonio Quartulli Date: Wed Apr 27 00:22:00 2011 +0200 batman-adv: gateway election code refactoring The gateway election mechanism has been a little revised. Now the gw_election is trigered by an atomic_t flag (gw_reselect) which is set to 1 in case of election needed, avoding to set curr_gw to NULL. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit c6bda689c2c94788e1e567463ce861d1f135857f Author: Antonio Quartulli Date: Tue Apr 26 18:26:01 2011 +0200 batman-adv: add wrapper function to throw uevent in userspace Using throw_uevent() is now possible to trigger uevent signal that can be recognised in userspace. Uevents will be triggered through the /devices/virtual/net/{MESH_IFACE} kobject. A triggered uevent has three properties: - type: the event class. Who generates the event (only 'gw' is currently defined). Corresponds to the BATTYPE uevent variable. - action: the associated action with the event ('add'/'change'/'del' are currently defined). Corresponds to the BATACTION uevent variable. - data: any useful data for the userspace. Corresponds to the BATDATA uevent variable. Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit 7683fdc1e88644ee8108a1f33faba80545f0024d Author: Antonio Quartulli Date: Wed Apr 27 14:28:07 2011 +0200 batman-adv: protect the local and the global trans-tables with rcu The local and the global translation-tables are now lock free and rcu protected. Signed-off-by: Antonio Quartulli Acked-by: Simon Wunderlich Signed-off-by: Sven Eckelmann commit cc47f66e6b9ec7e7d465f74739a6fc9844593894 Author: Antonio Quartulli Date: Wed Apr 27 14:27:57 2011 +0200 batman-adv: improved roaming mechanism With the current client announcement implementation, in case of roaming, an update is triggered on the new AP serving the client. At that point the new information is spread around by means of the OGM broadcasting mechanism. Until this operations is not executed, no node is able to correctly route traffic towards the client. This obviously causes packet drops and introduces a delay in the time needed by the client to recover its connections. A new packet type called ROAMING_ADVERTISEMENT is added to account this issue. This message is sent in case of roaming from the new AP serving the client to the old one and will contain the client MAC address. In this way an out-of-OGM update is immediately committed, so that the old node can update its global translation table. Traffic reaching this node will then be redirected to the correct destination utilising the fresher information. Thus reducing the packet drops and the connection recovery delay. Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit a73105b8d4c765d9ebfb664d0a66802127d8e4c7 Author: Antonio Quartulli Date: Wed Apr 27 14:27:44 2011 +0200 batman-adv: improved client announcement mechanism The client announcement mechanism informs every mesh node in the network of any connected non-mesh client, in order to find the path towards that client from any given point in the mesh. The old implementation was based on the simple idea of appending a data buffer to each OGM containing all the client MAC addresses the node is serving. All other nodes can populate their global translation tables (table which links client MAC addresses to node addresses) using this MAC address buffer and linking it to the node's address contained in the OGM. A node that wants to contact a client has to lookup the node the client is connected to and its address in the global translation table. It is easy to understand that this implementation suffers from several issues: - big overhead (each and every OGM contains the entire list of connected clients) - high latencies for client route updates due to long OGM trip time and OGM losses The new implementation addresses these issues by appending client changes (new client joined or a client left) to the OGM instead of filling it with all the client addresses each time. In this way nodes can modify their global tables by means of "updates", thus reducing the overhead within the OGMs. To keep the entire network in sync each node maintains a translation table version number (ttvn) and a translation table checksum. These values are spread with the OGM to allow all the network participants to determine whether or not they need to update their translation table information. When a translation table lookup is performed in order to send a packet to a client attached to another node, the destination's ttvn is added to the payload packet. Forwarding nodes can compare the packet's ttvn with their destination's ttvn (this node could have a fresher information than the source) and re-route the packet if necessary. This greatly reduces the packet loss of clients roaming from one AP to the next. Signed-off-by: Antonio Quartulli Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 3b27ffb00fbe9d9189715ea13ce8712e2f0cb0c5 Author: Antonio Quartulli Date: Sat May 28 14:51:06 2011 +0200 batman-adv: Unify the first 3 bytes in each packet The amount of duplicated code in the receive and routing code can be reduced when all headers provide the packet type, version and ttl in the same first bytes. Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit b4e1705417c6cc7d46d9020259a2c8f457cf82bd Author: Sven Eckelmann Date: Wed Jun 15 09:41:37 2011 +0200 batman-adv: Reduce usage of char char was used in different places to store information without really using the characteristics of that data type or by ignoring the fact that char has not a well defined signedness. Signed-off-by: Sven Eckelmann commit b2c44a53836559b5e2823aa215c979c33bc9e2db Author: David Howells Date: Wed Jun 15 09:41:36 2011 +0200 batman-adv: count_real_packets() in batman-adv assumes char is signed count_real_packets() in batman-adv assumes char is signed, and returns -1 through it: net/batman-adv/routing.c: In function 'receive_bat_packet': net/batman-adv/routing.c:739: warning: comparison is always false due to limited range of data type Use int instead. Signed-off-by: David Howells [sven@narfation.org: Rebase on top of current version] Signed-off-by: Sven Eckelmann commit db69ecfcb0d4df4d6449172186a8dd20836275ed Author: Sven Eckelmann Date: Wed Jun 15 15:17:21 2011 +0200 batman-adv: Keep interface_tx as local function interface_tx is not used outside of soft-interface.c and thus doesn't need to be declared inside soft-interface.h Signed-off-by: Sven Eckelmann commit b8e2dd135c3d8b06a4bc6d52b69317bdcccf4605 Author: Sven Eckelmann Date: Wed Jun 15 15:08:59 2011 +0200 batman-adv: Move compare_orig to originator.c compare_orig is only used in context of orig_node which is managed inside originator.c. It is not necessary to keep that function inside the header originator.h. Signed-off-by: Sven Eckelmann commit 98e182a26bbbf5575457622337684ef61493e864 Author: Tony Lindgren Date: Tue Mar 29 15:54:49 2011 -0700 omap2+: Remove gptimer_wakeup for now This removes the support for setting the wake-up timer for debugging. Later on we can reserve gptimer1 for PM code only and have similar functionality. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit aa56188998942dfd1d6d85484c87f79268508bba Author: Tony Lindgren Date: Tue Mar 29 15:54:48 2011 -0700 omap2+: Use dmtimer macros for clockevent This patch makes timer-gp.c to use only a subset of dmtimer functions without the need to initialize dmtimer code early. Also note that now with the inline functions, timer_set_next_event becomes more efficient in the lines of assembly code. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit caf64f2fdc48472995d40656eb1a75524c464447 Author: Tony Lindgren Date: Tue Mar 29 15:54:48 2011 -0700 omap: Make a subset of dmtimer functions into inline functions This will allow us to share the code between system timer and dmtimer device driver code without having to initialize all the dmtimers early. This change will also make the timer_set_next_event more efficient as the inline functions will optimize the code better for the timer reprogramming. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit ec97489d199b3dcfc44042ccf89b37a264d14565 Author: Tony Lindgren Date: Tue Mar 29 15:54:48 2011 -0700 omap: Move dmtimer defines to dmtimer.h These will be needed when dmtimer platform init code gets split for omap1 and omap2+. These will also be needed for separate sys_timer init and driver init for the rest of the hardware timers in the following patches. No functional changes. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit e74984e46e899c22137a385869fb4f3ae756e3df Author: Tony Lindgren Date: Tue Mar 29 15:54:48 2011 -0700 omap: Set separate timer init functions to avoid cpu_is_omap tests This is needed for the following patches so we can initialize the rest of the hardware timers later on. As with the init_irq calls, there's no need to do cpu_is_omap calls during the timer init as we only care about the major omap generation. This means that we can initialize the sys_timer with the .timer entries alone. Note that for now we just set stubs for the various sys_timer entries that will get populated in a later patch. The following patches will also remove the omap_dm_timer_init calls and change the init for the rest of the hardware timers to happen with an arch_initcall. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit cf05c700cf6dd6f28bd95586d3040f809fd365f5 Author: Eric Dumazet Date: Sun Jun 19 22:48:34 2011 -0700 veth: fix 64bit stats on 32bit arches Using 64bit stats on 32bit arches must use a synchronization or readers can get transient values. Fixes bug introduced in commit 6311cc44a2 (veth: convert to 64 bit statistics) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 219eb47e6f356b138ea2fe1a32ba5a1b6b9093c0 Author: Stephen Rothwell Date: Sun Jun 19 22:41:59 2011 -0700 net/staging: add needed interrupt.h and hardirq.h includes Made necessary by commit a6b7a407865a ("net: remove interrupt.h inclusion from netdevice.h"). Fixes these build errors: drivers/staging/brcm80211/brcmfmac/dhd_linux.c:1212:3: error: implicit declaration of function 'in_interrupt' drivers/staging/brcm80211/brcmfmac/dhd_linux.c:1390:4: error: implicit declaration of function 'tasklet_schedule' drivers/staging/brcm80211/brcmfmac/dhd_linux.c:1988:3: error: implicit declaration of function 'tasklet_init' drivers/staging/brcm80211/brcmfmac/dhd_linux.c:2288:5: error: implicit declaration of function 'tasklet_kill' drivers/staging/brcm80211/brcmfmac/dhd_linux.c:232:24: error: field 'tasklet' has incomplete type drivers/staging/brcm80211/brcmfmac/wl_iw.c:3670:2: error: implicit declaration of function 'in_interrupt' drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:1349:3: error: implicit declaration of function 'free_irq' drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:1352:2: error: implicit declaration of function 'tasklet_kill' drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:1538:4: error: implicit declaration of function 'tasklet_schedule' drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:765:2: error: implicit declaration of function 'tasklet_init' drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:817:2: error: implicit declaration of function 'request_irq' drivers/staging/brcm80211/brcmsmac/wl_mac80211.c:817:31: error: 'IRQF_SHARED' undeclared (first use in this function) drivers/staging/brcm80211/brcmsmac/wl_mac80211.h:65:24: error: field 'tasklet' has incomplete type drivers/staging/rtl8187se/ieee80211/ieee80211.h:994:24: error: field 'ps_task' has incomplete type drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c:1790:3: error: implicit declaration of function 'tasklet_schedule' drivers/staging/rtl8187se/ieee80211/ieee80211_softmac.c:2590:2: error: implicit declaration of function 'tasklet_init' drivers/staging/rtl8187se/r8180.h:461:24: error: field 'irq_rx_tasklet' has incomplete type drivers/staging/rtl8187se/r8180_core.c:2764:2: error: implicit declaration of function 'tasklet_init' drivers/staging/rtl8187se/r8180_core.c:2954:2: error: implicit declaration of function 'request_irq' drivers/staging/rtl8187se/r8180_core.c:2954:55: error: 'IRQF_SHARED' undeclared (first use in this function) drivers/staging/rtl8187se/r8180_core.c:3641:4: error: implicit declaration of function 'free_irq' drivers/staging/rtl8187se/r8180_core.c:4026:3: error: implicit declaration of function 'tasklet_schedule' drivers/staging/rtl8192e/ieee80211/ieee80211.h:2000:24: error: field 'ps_task' has incomplete type drivers/staging/rtl8192e/r8192E.h:909:24: error: field 'irq_rx_tasklet' has incomplete type drivers/staging/rtl8192e/r8192E.h:910:24: error: field 'irq_tx_tasklet' has incomplete type drivers/staging/rtl8192e/r8192E.h:911:31: error: field 'irq_prepare_beacon_tasklet' has incomplete type drivers/staging/rtl8192e/r8192E_core.c:2008:2: error: implicit declaration of function 'tasklet_init' drivers/staging/rtl8192e/r8192E_core.c:2412:54: error: 'IRQF_SHARED' undeclared (first use in this function) drivers/staging/rtl8192e/r8192E_core.c:2412:9: error: implicit declaration of function 'request_irq' drivers/staging/rtl8192e/r8192E_core.c:4640:4: error: implicit declaration of function 'free_irq' drivers/staging/rtl8192e/r8192E_core.c:620:2: error: implicit declaration of function 'synchronize_irq' drivers/staging/rtl8192e/r8192E_core.c:913:3: error: implicit declaration of function 'tasklet_schedule' drivers/staging/rtl8192u/ieee80211/ieee80211.h:1993:24: error: field 'ps_task' has incomplete type Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit 08ef2e427b59393d68a65b16e97e894b662a5573 Author: Paul Mundt Date: Mon Jun 20 12:24:53 2011 +0900 sh: Fix up build fallout from serial merge. This fixes up build issues for SH7720/SH7722/SH7750 that crept in with the serial rework. Signed-off-by: Paul Mundt commit dc28518f7d7dfd93cd44edb44f9b8e961f5a5c1b Author: Michael Neuling Date: Sun Jun 5 16:48:47 2011 +0000 powerpc: Fix doorbell type shift doorbell type is defined as bits 32:36 so should be shifted by 63-36 = 27 rather than 28. We never noticed this bug as we've only every used type PPC_DBELL = 0. Signed-off-by: Michael Neuling Acked-by: Kumar Gala Signed-off-by: Benjamin Herrenschmidt commit b6935f8cd915cf11c5222cab5ecc6a45adb2270c Author: Christian Kujau Date: Tue May 31 15:22:05 2011 +0000 Document powerpc udbg-immortal Back in 2006 the "udbg-immortal" kernel option has been introduced: > commit 3b5e905ee3bd23e9311951890aba57a0dbc81ca4 > Author: Benjamin Herrenschmidt > Date: Wed Jun 7 12:06:20 2006 +1000 > > [PATCH] powerpc: Add udbg-immortal kernel option ...but I could not find it documented anywhere in the sources. This patch adds it to Documentation/kernel-parameters.txt. Signed-off-by: Christian Kujau Signed-off-by: Benjamin Herrenschmidt commit 77ef4899f80e6335e9f0b2a7487017643de006da Author: Dmitry Eremin-Solenikov Date: Mon May 30 01:56:09 2011 +0000 powerpc/mpic: Support compiling with DEBUG enabled Support compilation of mpic.c with DEBUG defined, as now we have irq_desc and not irq number. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Benjamin Herrenschmidt commit 9ca980dce523760ce04a798470d36fd5aa596b78 Author: Paul Mackerras Date: Wed May 25 23:34:12 2011 +0000 powerpc: Avoid extra indirect function call in sending IPIs On many platforms (including pSeries), smp_ops->message_pass is always smp_muxed_ipi_message_pass. This changes arch/powerpc/kernel/smp.c so that if smp_ops->message_pass is NULL, it calls smp_muxed_ipi_message_pass directly. This means that a platform doesn't need to set both .message_pass and .cause_ipi, only one of them. It is a slight performance improvement in that it gets rid of an indirect function call at the expense of a predictable conditional branch. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 5bf0c1913498e55f1bf4c56fef6dacf2feb049bb Author: Richard Cochran Date: Sun Jun 19 03:31:45 2011 +0000 davinci_emac: fix race in transmit time stamping. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 6241207253b940048ffb6ba483a248813261ce6a Author: Richard Cochran Date: Sun Jun 19 03:31:44 2011 +0000 smsc9420: fix race in transmit time stamping. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 52f64faeb0fdcd49f14586beab83eabc9170b6a1 Author: Richard Cochran Date: Sun Jun 19 03:31:43 2011 +0000 stmmac: fix race in transmit time stamping. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 2aa8f4c9d0f88ae7eacac424d8816de225cfe2aa Author: Richard Cochran Date: Sun Jun 19 03:31:42 2011 +0000 r6040: fix race in transmit time stamping. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit d515b450bfd50d355c5b3230685b997faeee5c49 Author: Richard Cochran Date: Sun Jun 19 03:31:41 2011 +0000 tg3: fix race in transmit time stamping. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit a0087a3619e1b137e7dbc91a1b2b5f15c0382412 Author: Richard Cochran Date: Sun Jun 19 03:31:40 2011 +0000 fec: fix race in transmit time stamping. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 4ff75b7cf3b06efb72a50e26008d09b259b1231b Author: Richard Cochran Date: Sun Jun 19 03:31:39 2011 +0000 net: correct comment on where to place transmit time stamp hook. The comment for the skb_tx_timestamp() function suggests calling it just after a buffer is released to the hardware for transmission. However, for drivers that free the buffer in an ISR, this produces a race between the time stamp code and the ISR. This commit changes the comment to advise placing the call just before handing the buffer over to the hardware. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 36715cef0770b7e2547892b7c3197fc024274630 Author: Wu Fengguang Date: Sat Jun 11 17:53:57 2011 -0600 writeback: skip tmpfs early in balance_dirty_pages_ratelimited_nr() This helps prevent tmpfs dirtiers from skewing the per-cpu bdp_ratelimits. Acked-by: Jan Kara Signed-off-by: Wu Fengguang commit a2274cedc4b33a29be6583cd757bdc0b436851ec Author: Stefan Schmidt Date: Sat Jun 18 20:02:06 2011 +0200 spi/pxa2xx: Remove unavailable ssp_type from documentation Since commit commit 2f1a74e5a2de0459139b85af95e901448726c375 Author: eric miao Date: Wed Nov 21 18:50:53 2007 +0800 [ARM] pxa: make pxa2xx_spi driver use ssp_request()/ssp_free() the ssp_type field in struct pxa2xx_spi_master is no longer available. Signed-off-by: Stefan Schmidt Signed-off-by: Grant Likely commit 89434421d86a69af1868b65c5adbb3abda5af54f Author: Wey-Yi Guy Date: Tue Jun 14 15:23:40 2011 -0700 iwlagn: remove incorrect define Remove unused and incorrect EEPROM define Signed-off-by: Wey-Yi Guy commit 86cb3b4e08a106594ee79c94dec9c7ca289cf999 Author: Wey-Yi Guy Date: Tue Jun 14 15:23:39 2011 -0700 iwlagn: merge duplicate code into single function Same operation needed by multiple devices, move to single function. Signed-off-by: Wey-Yi Guy commit 916b337310969dd5eef35be0988a6bf768c138f9 Author: Wey-Yi Guy Date: Tue Jun 14 13:00:07 2011 -0700 iwlagn: code alignment Code alignment, no functional changes. Signed-off-by: Wey-Yi Guy commit e1910cb3190907334788c1887f8f61913208d0f3 Author: Wey-Yi Guy Date: Mon Jun 13 15:34:25 2011 -0700 iwlagn: add offset define for subsystem id Add offset define for subsystem id in EEPROM Signed-off-by: Wey-Yi Guy commit f7538168915271083070a60ebb10def11fce0cb0 Author: Wey-Yi Guy Date: Sat Jun 11 10:00:06 2011 -0700 iwlagn: Add power_level module parameter Add power_level module parameter to set the default power save level. Power save level has range from 1 - 5, default power save level is 1. Signed-off-by: Wey-Yi Guy commit 0172b02926493863e2e3a35f1d7bf13e935e655c Author: Wey-Yi Guy Date: Sat Jun 11 10:00:05 2011 -0700 iwlagn: add power_save module parameter Add power_save module parameter to enable power management if needed Default power management is disabled. Signed-off-by: Wey-Yi Guy commit 705cd4513a2fc561d8a2d5853cffb102bf183d70 Author: Emmanuel Grumbach Date: Sat Jun 18 08:21:12 2011 -0700 iwlagn: store the irq number to iwl_bus just like dev Since the irq number is just an unsigned int, store it inside iwl_bus instead of calling the get_irq ops every time it is needed. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 4b55b07fc9e5eccfd204cad75509bf062d3c22a3 Author: Emmanuel Grumbach Date: Thu Jun 9 05:48:36 2011 -0700 iwlagn: warn about nested SYNC commands Since there is no protection around SYNC host command mechanism, at least WARN when collision happens between two SYNC host comamnds. I am not sure there is a real issue (beyond the HCMD_ACTIVE flag maintenance) with having two SYNC host commands at the same time, but at least now, we will know about it. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 807caf261c5196b566964ccb9e12d3e25eee9c4a Author: Emmanuel Grumbach Date: Thu Jun 9 02:55:55 2011 -0700 iwlagn: fix misplaced bracket Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit bcd4fe2f9e378eb8d4d07e3be69e3b82d5e6d4fc Author: Emmanuel Grumbach Date: Thu Jun 9 02:55:54 2011 -0700 iwlagn: waterfall the bus level if prepare card failed Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit ea3aa93055508ae3e3a62f90580c24ec381dcbe2 Author: Emmanuel Grumbach Date: Tue May 31 10:07:00 2011 +0300 iwlagn: finally kill the pointer to pci_dev from iwl-dev.h All pci related stuff is in iwl-pci.c. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 08321c062f77e379c4a539f1522220b83ab1e84e Author: Emmanuel Grumbach Date: Fri Jun 10 11:30:30 2011 -0700 iwlagn: add a get_irq method to iwl_bus_ops and use it In order to remove a few more dereference to priv->pdev that will be killed [Asoon, there is now a method to get the IRQ number. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 85aed7c48113dfcdc913008481c46346af0db69e Author: Emmanuel Grumbach Date: Tue May 31 09:58:18 2011 +0300 iwlagn: don't read the PCI_REVISION_ID from iwl-agn.c The PCI_REVISION_ID is read and printed in iwl_pci_probe anyway using pr_info Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 19707bac16129ccebc398dbff9d2b44b17b24fea Author: Emmanuel Grumbach Date: Fri Jun 10 11:28:56 2011 -0700 iwlagn: add a method to get the HW ID description as a string to iwl_bus_ops Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit d57fa99d91bd6e8ca8217c115824b2732f4d3639 Author: Wey-Yi Guy Date: Fri Jun 10 11:23:36 2011 -0700 iwlagn: move PCI power related functions to the PCI layer Continue to popule the PCI layer and the iwl_bus_ops with the power related stuff. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 795414db8607a195541fe1a8f072021011b73386 Author: Emmanuel Grumbach Date: Sat Jun 18 08:12:57 2011 -0700 iwlagn: don't use the PCI wrappers for DMA operation Get a pointer to the struct device during probe and get the rid of all the PCI specific DMA wrappers. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 084dd79172cb3aad11d2b7ee5628d57badca7c6e Author: Emmanuel Grumbach Date: Tue May 31 09:07:00 2011 +0300 iwlagn: move PCI related operations from probe and remove to PCI layer Since we have now a PCI layer, all the init and deinit code that is PCI related should move to there. Also move the IO functions: read8/read32/write32. They need hw_base which is killed from priv. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 3599d39a8525b01540e2c7ec8c5d0df0dd11d6cf Author: Emmanuel Grumbach Date: Tue May 31 08:52:10 2011 +0300 iwlagn: add get_dev to iwl_bus_ops Bus specific layer must know how to return the struct device* of the device. Implement that as a callback of iwl_bus_ops and use that callback instead of using the priv->pdev pointer which is meant to disappear soon. Since the struct device * is needed in hot path, iwl_bus holds a pointer to it instead of calling get_dev all the time. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit a48709c5d076aa3a3f9b6426f462abe6bf432b11 Author: Emmanuel Grumbach Date: Tue May 31 08:22:30 2011 +0300 iwlagn: introduce iwl_bus and iwl_bus_ops iwl_bus will represent a bus, and iwl_bus_ops all the operations that can be done on this bus. For the moment only set_prv_data is implemented. More to come... Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit c6ca8bc46cc320e31e8fcb8b104eeed044febd6f Author: Emmanuel Grumbach Date: Mon May 30 07:36:49 2011 +0300 iwlagn: remove uneeded include to pci.h and dma_mapping.h from a few files Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 48d1a2110ad9cb86e5cb0d790729824fa3cca83b Author: Emmanuel Grumbach Date: Tue May 24 11:39:02 2011 +0300 iwlagn: add a iwl_pci.[ch] files that will contain all PCI specific code Move some PCI functionality to the new iwl_pci.[ch] files: * the PCI_DEVICE_TABLE * the pci_driver struct definition * the PCI probe / remove functions * the PCI suspend / resume functions All these functions are now split: the trigger comes from the PCI layer which calls to the bus generic code located in the other files. This is the beginning only. There are still a lot of PCI related code needs to be gathered. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 7299751df36c02adafb5b897c56de71f0d7e2cb5 Author: Emmanuel Grumbach Date: Tue May 24 10:44:47 2011 +0300 iwlagn: don't disable interrupts after the NIC has been reset It is superfluous to disable the interrupts after we reset the NIC. The only entity that could enable the interrupts after the NIC is reset is the driver. So remove this pointless action. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit ecdbe86eda74005d1b4bc8387e1825ad95fab705 Author: Wey-Yi Guy Date: Wed Jun 8 09:57:26 2011 -0700 iwlagn: Support flush queues for specified interface Flush command can target specified interface or all interfaces Signed-off-by: Wey-Yi Guy commit f88e0ecc896f91d6965ba2935dcdf2280044a30a Author: Wey-Yi Guy Date: Wed Jun 8 09:57:25 2011 -0700 iwlagn: add PAN to tx flush When issue tx flush, also consider PAN Signed-off-by: Wey-Yi Guy commit c68744fb935400964f7af4835017cad5014c8c88 Author: Wey-Yi Guy Date: Sat Jun 18 08:03:18 2011 -0700 iwlagn: Remove un-necessary indirect call After driver split, no need to make indirect call to txfifo flush function Signed-off-by: Wey-Yi Guy commit ee8c7e9744882b2cac8886384f156095b12d046d Author: Mark Brown Date: Sat Jun 18 15:31:38 2011 +0100 ASoC: Remove adau1701 from SND_SOC_ALL_CODECS due to Sigma dependency The Sigma code is in drivers/firmware which is only included on a very small subset of architectures and so ends up breaking the build on others. There's a pending patch to make the directory build as standard but it's not merged yet. Signed-off-by: Mark Brown commit 39c9d199ce6735513e13ec1b2d558e9d34762c50 Author: Mark Brown Date: Fri Jun 17 11:22:27 2011 +0100 ASoC: Add adau* drivers to the Analog Devices file patterns Signed-off-by: Mark Brown Acked-by: Liam Girdwood Acked-by: Mike Frysinger commit fd112f2e15ba85d387de446a81aeb11e46ecc55d Author: Francois Romieu Date: Sat Jun 18 00:10:29 2011 +0200 r8169: check firmware content sooner. Firmware checking is only performed when the firmware is loaded instead of each time the driver inits the phy. Signed-off-by: Francois Romieu commit 960aee6c7d5951ac20c0227ad73bad56392f0afc Author: Hayes Wang Date: Sat Jun 18 11:37:48 2011 +0200 r8169: support new firmware format. The new firmware format adds versioning as firmware for a specific chipset appears to be subject to change. Current "legacy" format is still supported. Signed-off-by: Hayes Wang Signed-off-by: Francois Romieu commit 1c361efb226d609a07403057a71557faf500b17a Author: Francois Romieu Date: Fri Jun 17 17:16:24 2011 +0200 r8169: explicit firmware format check. Signed-off-by: Francois Romieu commit b6ffd97f5bcfd12df88ece6bc6df7a761ac5a049 Author: Francois Romieu Date: Fri Jun 17 17:00:05 2011 +0200 r8169: move the firmware down into the device private data. No functional difference. Signed-off-by: Francois Romieu commit afec6e04922d0c8c7e244be2e544bac5e7e36294 Author: Dan Magenheimer Date: Fri Jun 17 15:06:20 2011 -0600 xen: prepare tmem shim to handle frontswap Provide the shim code for frontswap for Xen tmem even if the frontswap patchset is not present yet. (The egg is before the chicken.) Signed-off-by: Dan Magenheimer Reviewed-by: Konrad Wilk commit a7925bd27d6ef020b8f3a3a64bde61d0add07220 Author: Gustavo F. Padovan Date: Fri Jun 17 16:15:10 2011 -0300 Bluetooth: Fix locking in blacklist code There was no unlock call on the errors path Signed-off-by: Gustavo F. Padovan commit a8e827495a3e4d3a096e91b79e644e0665937927 Author: Rafał Miłecki Date: Thu Jun 16 01:59:20 2011 +0200 b43: HT-PHY: implement switching analog Turning it on is always done between reading PHY version and radio version, so it was easy to find it in MMIO dumps from ndiswrapper. Turning off is done by writing different values to the same registers. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 4cabd4254bc6b52a65da859a2c7591f67199ca81 Author: Rafał Miłecki Date: Thu Jun 16 01:59:19 2011 +0200 b43: HT-PHY: implement radio ops Every PHY has some specific bit used for reading radio regs. Analyze of MMIO dumps from BCM4331 and ndiswrapper has shown it is 0x200 for HT. radio_read(0x037f) -> 0x0073 radio_write(0x017f) <- 0x0072 Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit d816ab26f6637282feb8a93c9def9925883ba0a7 Author: Pavel Roskin Date: Wed Jun 15 18:03:28 2011 -0400 ath5k: annotate reg in ath5k_hw_nic_reset() as __iomem Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit f5cbc8bac939f38c0c55cfaa348c170663a16767 Author: Pavel Roskin Date: Wed Jun 15 18:03:22 2011 -0400 ath5k: minor cleanup Move an extern variable declaration to a header file. Prefix all functions with "ath5k_". Make ath5k_intr() static. Remove unneeded forward declarations. Remove pointless "extern" in a function declaration. Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit e707549a80d5e5b37c4b0b9b60c5836396a11163 Author: Pavel Roskin Date: Wed Jun 15 18:01:11 2011 -0400 ath9k: typo fix in a comment Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit f6351d486dfecd56d57ee194f5d358d9a4fec840 Author: Pavel Roskin Date: Wed Jun 15 18:01:05 2011 -0400 ath9k: use standard max(), remove A_MAX macro Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit d3af4396cff3d86a6a37e1cc5fe8d077f62c263e Author: Mohammed Shafi Shajakhan Date: Wed Jun 15 21:22:16 2011 +0530 ath9k: remove a redundant call to pcipowersave during suspend/resume ath9k_stop will always call ath_radio_disable which will inturn call ath9k_hw_configpcipowersave, so no need to call it explicitly in ath9k_stop Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit a6f0f048875a07b2926c075744eb5edc41bc3c1d Author: Dan Carpenter Date: Wed Jun 15 16:10:10 2011 +0300 iwlegacy: fix up brokenness caused by cleanup Patch 7f1f9742514 "iwlegacy: refactor iwl4965_mac_channel_switch" reversed a test and also it changed a spin_lock_irq() to spin_lock(). I assume the spin_lock change was a mistake because the unlock was left as spin_unlock_irq(). Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit d4bb17c4bed70892ea8b749a843a516424ba5638 Author: Mohammed Shafi Shajakhan Date: Wed Jun 15 18:25:31 2011 +0530 ath9k: Add debug messages to track PAPRD failures Add few debug messages for some of the possible scenarios where we can detect PAPRD failures. this will help us to be sure that we had really enabled PAPRD Cc: susinder@qca.qualcomm.com Cc: senthilb@qca.qualcomm.com Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit aec7ffdf4ff24df1fe85ed5bc9e050c4dd77617b Author: Rafał Miłecki Date: Tue Jun 14 08:18:59 2011 +0200 b43: add Kconfig option for compiling SSB driver It is always "y" for now, b43 will not compile without CONFIG_SSB yet. This is just a first step of dropping SSB dependency. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 545a8aa793e04bee7a7e2aa8caa70bed94fd7a5c Author: Nikanth Karthikesan Date: Tue Jun 14 11:23:46 2011 +0530 if_spi: Fix compilation warning - unused variable if_spi: Fix compilation warning - unused variable 'spi' drivers/net/wireless/libertas/if_spi.c: In function ‘if_spi_init_card’: drivers/net/wireless/libertas/if_spi.c:1035: warning: unused variable ‘spi’ The variable is used only in a macro which uses the args only for DEBUG builds. Remove the 'spi' variable completely. Signed-off-by: Nikanth Karthikesan Acked-by: Dan Williams Signed-off-by: John W. Linville commit d7520b1d2a9ffae94323ffac9dc37d92f656051f Author: Rafał Miłecki Date: Mon Jun 13 16:20:06 2011 +0200 b43: HT-PHY: add place for writing HT PHY support This is totally broken plus we do not have specs for HT PHY yet. Just introduce place for writing driver if we discover anything. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 443c1a24710ce151874acdca7efb47622c098e80 Author: Rafał Miłecki Date: Mon Jun 13 16:20:05 2011 +0200 b43: define new PHYs and radio regs for cores >= 24 Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit b856439b1b54358e580aaee5dbe683af5ada9403 Author: Eliad Peller Date: Mon Jun 13 12:47:30 2011 +0300 mac80211: add cancel_hw_scan() callback When suspending, __ieee80211_suspend() calls ieee80211_scan_cancel(), which will only cancel sw scan. In order to cancel hw scan, the low-level driver has to cancel it in the suspend() callback. however, this is too late, as a new scan_work will be enqueued (while the driver is going into suspend). Add a new cancel_hw_scan() callback, asking the driver to cancel an active hw scan, and call it in ieee80211_scan_cancel(). Signed-off-by: Eliad Peller Reviewed-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit eb40e3e8bb453519ae17d42e7cab6bdd2b4b9fc5 Author: Connor Hansen Date: Sat Jun 11 20:59:30 2011 +0200 drivers/ssb/driver_chipcommon_pmu.c: uninitilized warning warning message drivers/ssb/driver_chipcommon_pmu.c: In function ssb_pmu_resources_init drivers/ssb/driver_chipcommon_pmu.c:420:15: warning: updown_tab_size may be used uninitilized in this function. updown_tab_size and depend_tab_size may not be set in the bus->chip_id switch statement, so set to 0 by default to avoid using uninitialized stack space. Signed-off-by: Connor Hansen Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit a6af1d848179c17deb94621c2e761769f0d99355 Author: Paul Stewart Date: Fri Jun 10 07:00:19 2011 -0800 mac80211: Start monitor work on restart Trigger connection monitor on resume from suspend. Since we have been sleeping, there is reason to suspect that we might not still be associated. The speed of detecting loss of {connection,authentication} is worth the cost of the small additional traffic at resume. Signed-off-by: Paul Stewart Signed-off-by: John W. Linville commit b13e552d374a9cbee20ba24635608289cc8a7c97 Author: David Henningsson Date: Fri Jun 17 16:27:01 2011 +0200 ALSA: HDA: Remove redundant LPIB quirks for ATI chipset Now that we have changed the position_fix default for ATI and AMD to be LPIB (see commit 50e3bbf989), we can remove the quirks that were added for ATI chipsets. Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit c52d4e5f3cd3939bf44e788fdcbce8dcebb6fe61 Author: Mike Frysinger Date: Fri Jun 17 04:16:58 2011 -0400 spi/bfin_spi: uninline fat queue funcs There's no need for these queue funcs to be inlined, so drop the markings. This shaves off a few hundred duplicated bytes. Signed-off-by: Mike Frysinger Signed-off-by: Grant Likely commit ddc0bf13d63715c2bce0fe8818fba12b82823283 Author: Mike Frysinger Date: Fri Jun 17 04:16:57 2011 -0400 spi/bfin_spi: constify pin array This array isn't written anywhere, so constify it. Signed-off-by: Mike Frysinger Signed-off-by: Grant Likely commit 47885ce81c7498c015e6763303821ab6e8a6e2cc Author: Mike Frysinger Date: Fri Jun 17 04:16:56 2011 -0400 spi/bfin_spi: use structs for accessing hardware regs Rather than hardcoding the register sizes/offsets in this file, use the existing struct in the spi header for reading/writing the hardware. Signed-off-by: Mike Frysinger Signed-off-by: Grant Likely commit f8db4cc4f2b11bdded6c94f0d55906847474b982 Merge: 2e2de2e e479c60 Author: Grant Likely Date: Fri Jun 17 08:32:26 2011 -0600 Merge branch 'spi/merge' into spi/next commit 4ca9d7856c101f4b1d2c7d3f2ad2fcce8e9a20ae Author: Andrew Lunn Date: Fri Jun 17 15:14:23 2011 +0200 ARM: remove duplicate include from arch/arm/mach-dove/common.c Jesper Juhl pointed out there is a redundant include of linux/serial_8250.h. However it turns out both are redundant. This patch removes them both. Reported-by: Jesper Juhl Signed-off-by: Andrew Lunn Reviewed-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 3409fcd1f71d02025e3f179127a8ba243c525d78 Merge: f4b1e98 ad24094 Author: Takashi Iwai Date: Fri Jun 17 14:54:47 2011 +0200 Merge branch 'fix/hda' into topic/misc commit 4d1e46b7eff7e876cbbaa34ef238c9ac97973e56 Author: Mike Frysinger Date: Thu Jun 16 22:24:15 2011 -0400 ASoC: Blackfin: allow SPI for SSM2602 parts This board has hardware switches for selecting SPI or I2C, so don't require I2C for this driver. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f4b1e98aa93d548e5d51c8c5272ea08562fc71c1 Author: Clemens Ladisch Date: Fri Jun 17 08:17:56 2011 +0200 ALSA: firewire-speakers, oxygen, ua101: allow > 10 s periods Since commit f2b3614cefb6 (Don't check DMA time-out too shortly), drivers need no longer restrict their PCM period length to be shorter than 10 seconds. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 7ac87abb8166b99584149fcfb2efef5773a078e9 Author: Matt Evans Date: Wed May 25 18:09:12 2011 +0000 powerpc: Fix early boot accounting of CPUs smp_release_cpus() waits for all cpus (including the bootcpu) due to an off-by-one count on boot_cpu_count (which is all CPUs). This patch replaces that with spinning_secondaries (which is all secondary CPUs). Signed-off-by: Matt Evans Signed-off-by: Benjamin Herrenschmidt commit 32d206eb5637d8cf73d9c70f7680de2a7193ce8b Author: Kumar Gala Date: Thu May 19 20:09:28 2011 +0000 powerpc/book3e: Clarify HW table walk enable/disable message Before if we didn't support or enable HW table walk we'd get a messaage like: MMU: Book3E Page Tables Disabled Which is a bit misleading. Now it will say: MMU: Book3E HW tablewalk not supported Signed-off-by: Kumar Gala Signed-off-by: Benjamin Herrenschmidt commit c4dc4d108ace27cc0c594b67bd6bd945deaac8c2 Author: Greg Dietsche Date: Thu Jun 16 07:09:30 2011 +0000 e1000: remove unnecessary code Compile tested. remove unnecessary code that matches this coccinelle pattern if (...) return ret; return ret; Signed-off-by: Greg Dietsche Signed-off-by: David S. Miller commit 0a3f084179731f6755462aa7fec677f8e1f0580a Author: Greg Dietsche Date: Thu Jun 16 07:04:30 2011 +0000 net: icplus: remove unnecessary code Compile tested. remove unnecessary code that matches this coccinelle pattern if (...) return ret; return ret; Signed-off-by: Greg Dietsche Signed-off-by: David S. Miller commit cb0a60564943db21ed3af975ac3d578cdc80b329 Author: Manuel Zerpies Date: Thu Jun 16 02:09:57 2011 +0000 net/rds: use prink_ratelimited() instead of printk_ratelimit() Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited() Signed-off-by: Manuel Zerpies Signed-off-by: David S. Miller commit d751e623969bf758f3f75f59418b19ede570ab50 Author: Manuel Zerpies Date: Thu Jun 16 02:08:01 2011 +0000 net/can: use printk_ratelimited() instead of printk_ratelimit() Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited(). Signed-off-by: Manuel Zerpies Signed-off-by: David S. Miller commit c63d6ea3060d9e10773e869b1112e3a0efbcf820 Author: Dan Carpenter Date: Wed Jun 15 03:11:42 2011 +0000 rtnetlink: unlock on error path in netlink_dump() In c7ac8679bec939 "rtnetlink: Compute and store minimum ifinfo dump size", we moved the allocation under the lock so we need to unlock on error path. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 59deab26c1974b29b7f501e0ace0673d5acadae1 Author: Joe Perches Date: Tue Jun 14 08:57:47 2011 +0000 gianfar: Use pr_, netdev_ and netif_ Use the current logging styles. Add #define DEBUG to get same output for _dbg messages. Convert a few bare printks to pr_err. Fix a likely copy/paste defect where a test was done with RX values: if (num_rx_qs > MAX_RX_QS) { but TX limits were emitted: printk(KERN_ERR "num_rx_qs(=%d) greater than MAX_RX_QS(=%d)\n", num_tx_qs, MAX_TX_QS); Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit ea110733874d5176cb56dcf612a629ffac09dbf0 Author: Joe Perches Date: Mon Jun 13 16:21:26 2011 +0000 net: Remove casts of void * Unnecessary casts of void * clutter the code. These are the remainder casts after several specific patches to remove netdev_priv and dev_priv. Done via coccinelle script: $ cat cast_void_pointer.cocci @@ type T; T *pt; void *pv; @@ - pt = (T *)pv; + pt = pv; Signed-off-by: Joe Perches Acked-by: Paul Moore Signed-off-by: David S. Miller commit 3c8def9776c3d4636291432522ea312f7a44be95 Author: Sathya Perla Date: Sun Jun 12 20:01:58 2011 +0000 be2net: support multiple TX queues This patch provides support for multiple TX queues. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 2e2de2e314672c8b6644f67a35556d6df780493d Author: Tomoya MORINAGA Date: Fri Jun 17 09:34:25 2011 +0900 spi/topcliff-pch: Support new device ML7223 IOH Support new device OKI SEMICONDUCTOR ML7223 IOH(Input/Output Hub). The ML7223 IOH is for MP(Media Phone) use. The ML7223 is companion chip for Intel Atom E6xx series. The ML7223 is completely compatible for Intel EG20T PCH. Signed-off-by: Tomoya MORINAGA Signed-off-by: Grant Likely commit e2ab43536c53ba112a0adfb4c0dba286544c41f6 Author: Gustavo F. Padovan Date: Fri Jun 10 21:28:49 2011 -0300 Bluetooth: Use bit operations on conn_state Instead of setting bits manually we use set_bit, test_bit, etc. Also remove L2CAP_ prefix from macros. Signed-off-by: Gustavo F. Padovan commit c1360a1cf35117d6f3898cb5183ce4349d06714c Author: Gustavo F. Padovan Date: Fri Jun 10 17:02:12 2011 -0300 Bluetooth: use bit operation on conf_state Instead of making the bit operations manually, we now use set_bit, test_bit, etc. Signed-off-by: Gustavo F. Padovan commit 7fbec224cfb44074ab88720c878aa3bdb3158377 Author: Antti Julku Date: Wed Jun 15 12:01:15 2011 +0300 Bluetooth: Add blacklisting support for mgmt interface Management interface commands for blocking and unblocking devices. Signed-off-by: Antti Julku Signed-off-by: Gustavo F. Padovan commit 33300571b1111264fd0c5701733f7576323f3e35 Author: Axel Lin Date: Tue Jun 14 19:12:57 2011 +0800 gpio/ml-ioh: fix off-by-one for displaying variable i in dev_err with the "for (; i != 0; i--)" sytax, i-- will be executed after the iteration. thus dev_err shows wrong i value. Switch to "while(--i >= 0)" which is better in readability. Signed-off-by: Axel Lin Signed-off-by: Grant Likely commit 544b2c91a9f14f9565af1972203438b7f49afd48 Author: Tejun Heo Date: Tue Jun 14 11:20:18 2011 +0200 ptrace: implement PTRACE_LISTEN The previous patch implemented async notification for ptrace but it only worked while trace is running. This patch introduces PTRACE_LISTEN which is suggested by Oleg Nestrov. It's allowed iff tracee is in STOP trap and puts tracee into quasi-running state - tracee never really runs but wait(2) and ptrace(2) consider it to be running. While ptracer is listening, tracee is allowed to re-enter STOP to notify an async event. Listening state is cleared on the first notification. Ptracer can also clear it by issuing INTERRUPT - tracee will re-trap into STOP with listening state cleared. This allows ptracer to monitor group stop state without running tracee - use INTERRUPT to put tracee into STOP trap, issue LISTEN and then wait(2) to wait for the next group stop event. When it happens, PTRACE_GETSIGINFO provides information to determine the current state. Test program follows. #define PTRACE_SEIZE 0x4206 #define PTRACE_INTERRUPT 0x4207 #define PTRACE_LISTEN 0x4208 #define PTRACE_SEIZE_DEVEL 0x80000000 static const struct timespec ts1s = { .tv_sec = 1 }; int main(int argc, char **argv) { pid_t tracee, tracer; int i; tracee = fork(); if (!tracee) while (1) pause(); tracer = fork(); if (!tracer) { siginfo_t si; ptrace(PTRACE_SEIZE, tracee, NULL, (void *)(unsigned long)PTRACE_SEIZE_DEVEL); ptrace(PTRACE_INTERRUPT, tracee, NULL, NULL); repeat: waitid(P_PID, tracee, NULL, WSTOPPED); ptrace(PTRACE_GETSIGINFO, tracee, NULL, &si); if (!si.si_code) { printf("tracer: SIG %d\n", si.si_signo); ptrace(PTRACE_CONT, tracee, NULL, (void *)(unsigned long)si.si_signo); goto repeat; } printf("tracer: stopped=%d signo=%d\n", si.si_signo != SIGTRAP, si.si_signo); if (si.si_signo != SIGTRAP) ptrace(PTRACE_LISTEN, tracee, NULL, NULL); else ptrace(PTRACE_CONT, tracee, NULL, NULL); goto repeat; } for (i = 0; i < 3; i++) { nanosleep(&ts1s, NULL); printf("mother: SIGSTOP\n"); kill(tracee, SIGSTOP); nanosleep(&ts1s, NULL); printf("mother: SIGCONT\n"); kill(tracee, SIGCONT); } nanosleep(&ts1s, NULL); kill(tracer, SIGKILL); kill(tracee, SIGKILL); return 0; } This is identical to the program to test TRAP_NOTIFY except that tracee is PTRACE_LISTEN'd instead of PTRACE_CONT'd when group stopped. This allows ptracer to monitor when group stop ends without running tracee. # ./test-listen tracer: stopped=0 signo=5 mother: SIGSTOP tracer: SIG 19 tracer: stopped=1 signo=19 mother: SIGCONT tracer: stopped=0 signo=5 tracer: SIG 18 mother: SIGSTOP tracer: SIG 19 tracer: stopped=1 signo=19 mother: SIGCONT tracer: stopped=0 signo=5 tracer: SIG 18 mother: SIGSTOP tracer: SIG 19 tracer: stopped=1 signo=19 mother: SIGCONT tracer: stopped=0 signo=5 tracer: SIG 18 -v2: Moved JOBCTL_LISTENING check in wait_task_stopped() into task_stopped_code() as suggested by Oleg. Signed-off-by: Tejun Heo Cc: Oleg Nesterov commit fb1d910c178ba0c5bc32d3e5a9e82e05b7aad3cd Author: Tejun Heo Date: Tue Jun 14 11:20:17 2011 +0200 ptrace: implement TRAP_NOTIFY and use it for group stop events Currently there's no way for ptracer to find out whether group stop finished other than polling with INTERRUPT - GETSIGINFO - CONT sequence. This patch implements group stop notification for ptracer using STOP traps. When group stop state of a seized tracee changes, JOBCTL_TRAP_NOTIFY is set, which schedules a STOP trap which is sticky - it isn't cleared by other traps and at least one STOP trap will happen eventually. STOP trap is synchronization point for event notification and the tracer can determine the current group stop state by looking at the signal number portion of exit code (si_status from waitid(2) or si_code from PTRACE_GETSIGINFO). Notifications are generated both on start and end of group stops but, because group stop participation always happens before STOP trap, this doesn't cause an extra trap while tracee is participating in group stop. The symmetry will be useful later. Note that this notification works iff tracee is not trapped. Currently there is no way to be notified of group stop state changes while tracee is trapped. This will be addressed by a later patch. An example program follows. #define PTRACE_SEIZE 0x4206 #define PTRACE_INTERRUPT 0x4207 #define PTRACE_SEIZE_DEVEL 0x80000000 static const struct timespec ts1s = { .tv_sec = 1 }; int main(int argc, char **argv) { pid_t tracee, tracer; int i; tracee = fork(); if (!tracee) while (1) pause(); tracer = fork(); if (!tracer) { siginfo_t si; ptrace(PTRACE_SEIZE, tracee, NULL, (void *)(unsigned long)PTRACE_SEIZE_DEVEL); ptrace(PTRACE_INTERRUPT, tracee, NULL, NULL); repeat: waitid(P_PID, tracee, NULL, WSTOPPED); ptrace(PTRACE_GETSIGINFO, tracee, NULL, &si); if (!si.si_code) { printf("tracer: SIG %d\n", si.si_signo); ptrace(PTRACE_CONT, tracee, NULL, (void *)(unsigned long)si.si_signo); goto repeat; } printf("tracer: stopped=%d signo=%d\n", si.si_signo != SIGTRAP, si.si_signo); ptrace(PTRACE_CONT, tracee, NULL, NULL); goto repeat; } for (i = 0; i < 3; i++) { nanosleep(&ts1s, NULL); printf("mother: SIGSTOP\n"); kill(tracee, SIGSTOP); nanosleep(&ts1s, NULL); printf("mother: SIGCONT\n"); kill(tracee, SIGCONT); } nanosleep(&ts1s, NULL); kill(tracer, SIGKILL); kill(tracee, SIGKILL); return 0; } In the above program, tracer keeps tracee running and gets notification of each group stop state changes. # ./test-notify tracer: stopped=0 signo=5 mother: SIGSTOP tracer: SIG 19 tracer: stopped=1 signo=19 mother: SIGCONT tracer: stopped=0 signo=5 tracer: SIG 18 mother: SIGSTOP tracer: SIG 19 tracer: stopped=1 signo=19 mother: SIGCONT tracer: stopped=0 signo=5 tracer: SIG 18 mother: SIGSTOP tracer: SIG 19 tracer: stopped=1 signo=19 mother: SIGCONT tracer: stopped=0 signo=5 tracer: SIG 18 Signed-off-by: Tejun Heo Cc: Oleg Nesterov commit fca26f260c528ee51a2e451b5b200aeb528f3e09 Author: Tejun Heo Date: Tue Jun 14 11:20:16 2011 +0200 ptrace: implement PTRACE_INTERRUPT Currently, there's no way to trap a running ptracee short of sending a signal which has various side effects. This patch implements PTRACE_INTERRUPT which traps ptracee without any signal or job control related side effect. The implementation is almost trivial. It uses the group stop trap - SIGTRAP | PTRACE_EVENT_STOP << 8. A new trap flag JOBCTL_TRAP_INTERRUPT is added, which is set on PTRACE_INTERRUPT and cleared when any trap happens. As INTERRUPT should be useable regardless of the current state of tracee, task_is_traced() test in ptrace_check_attach() is skipped for INTERRUPT. PTRACE_INTERRUPT is available iff tracee is attached with PTRACE_SEIZE. Test program follows. #define PTRACE_SEIZE 0x4206 #define PTRACE_INTERRUPT 0x4207 #define PTRACE_SEIZE_DEVEL 0x80000000 static const struct timespec ts100ms = { .tv_nsec = 100000000 }; static const struct timespec ts1s = { .tv_sec = 1 }; static const struct timespec ts3s = { .tv_sec = 3 }; int main(int argc, char **argv) { pid_t tracee; tracee = fork(); if (tracee == 0) { nanosleep(&ts100ms, NULL); while (1) { printf("tracee: alive pid=%d\n", getpid()); nanosleep(&ts1s, NULL); } } if (argc > 1) kill(tracee, SIGSTOP); nanosleep(&ts100ms, NULL); ptrace(PTRACE_SEIZE, tracee, NULL, (void *)(unsigned long)PTRACE_SEIZE_DEVEL); if (argc > 1) { waitid(P_PID, tracee, NULL, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, NULL); } nanosleep(&ts3s, NULL); printf("tracer: INTERRUPT and DETACH\n"); ptrace(PTRACE_INTERRUPT, tracee, NULL, NULL); waitid(P_PID, tracee, NULL, WSTOPPED); ptrace(PTRACE_DETACH, tracee, NULL, NULL); nanosleep(&ts3s, NULL); printf("tracer: exiting\n"); kill(tracee, SIGKILL); return 0; } When called without argument, tracee is seized from running state, interrupted and then detached back to running state. # ./test-interrupt tracee: alive pid=4546 tracee: alive pid=4546 tracee: alive pid=4546 tracer: INTERRUPT and DETACH tracee: alive pid=4546 tracee: alive pid=4546 tracee: alive pid=4546 tracer: exiting When called with argument, tracee is seized from stopped state, continued, interrupted and then detached back to stopped state. # ./test-interrupt 1 tracee: alive pid=4548 tracee: alive pid=4548 tracee: alive pid=4548 tracer: INTERRUPT and DETACH tracer: exiting Before PTRACE_INTERRUPT, once the tracee was running, there was no way to trap tracee and do PTRACE_DETACH without causing side effect. -v2: Updated to use task_set_jobctl_pending() so that it doesn't end up scheduling TRAP_STOP if child is dying which may make the child unkillable. Spotted by Oleg. Signed-off-by: Tejun Heo Cc: Oleg Nesterov commit 3544d72a0e10d0aa1c1bd59ed77a53a59cdc12f7 Author: Tejun Heo Date: Tue Jun 14 11:20:15 2011 +0200 ptrace: implement PTRACE_SEIZE PTRACE_ATTACH implicitly issues SIGSTOP on attach which has side effects on tracee signal and job control states. This patch implements a new ptrace request PTRACE_SEIZE which attaches a tracee without trapping it or affecting its signal and job control states. The usage is the same with PTRACE_ATTACH but it takes PTRACE_SEIZE_* flags in @data. Currently, the only defined flag is PTRACE_SEIZE_DEVEL which is a temporary flag to enable PTRACE_SEIZE. PTRACE_SEIZE will change ptrace behaviors outside of attach itself. The changes will be implemented gradually and the DEVEL flag is to prevent programs which expect full SEIZE behavior from using it before all the behavior modifications are complete while allowing unit testing. The flag will be removed once SEIZE behaviors are completely implemented. * PTRACE_SEIZE, unlike ATTACH, doesn't force tracee to trap. After attaching tracee continues to run unless a trap condition occurs. * PTRACE_SEIZE doesn't affect signal or group stop state. * If PTRACE_SEIZE'd, group stop uses PTRACE_EVENT_STOP trap which uses exit_code of (signr | PTRACE_EVENT_STOP << 8) where signr is one of the stopping signals if group stop is in effect or SIGTRAP otherwise, and returns usual trap siginfo on PTRACE_GETSIGINFO instead of NULL. Seizing sets PT_SEIZED in ->ptrace of the tracee. This flag will be used to determine whether new SEIZE behaviors should be enabled. Test program follows. #define PTRACE_SEIZE 0x4206 #define PTRACE_SEIZE_DEVEL 0x80000000 static const struct timespec ts100ms = { .tv_nsec = 100000000 }; static const struct timespec ts1s = { .tv_sec = 1 }; static const struct timespec ts3s = { .tv_sec = 3 }; int main(int argc, char **argv) { pid_t tracee; tracee = fork(); if (tracee == 0) { nanosleep(&ts100ms, NULL); while (1) { printf("tracee: alive\n"); nanosleep(&ts1s, NULL); } } if (argc > 1) kill(tracee, SIGSTOP); nanosleep(&ts100ms, NULL); ptrace(PTRACE_SEIZE, tracee, NULL, (void *)(unsigned long)PTRACE_SEIZE_DEVEL); if (argc > 1) { waitid(P_PID, tracee, NULL, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, NULL); } nanosleep(&ts3s, NULL); printf("tracer: exiting\n"); return 0; } When the above program is called w/o argument, tracee is seized while running and remains running. When tracer exits, tracee continues to run and print out messages. # ./test-seize-simple tracee: alive tracee: alive tracee: alive tracer: exiting tracee: alive tracee: alive When called with an argument, tracee is seized from stopped state and continued, and returns to stopped state when tracer exits. # ./test-seize tracee: alive tracee: alive tracee: alive tracer: exiting # ps -el|grep test-seize 1 T 0 4720 1 0 80 0 - 941 signal ttyS0 00:00:00 test-seize -v2: SEIZE doesn't schedule TRAP_STOP and leaves tracee running as Jan suggested. -v3: PTRACE_EVENT_STOP traps now report group stop state by signr. If group stop is in effect the stop signal number is returned as part of exit_code; otherwise, SIGTRAP. This was suggested by Denys and Oleg. Signed-off-by: Tejun Heo Cc: Jan Kratochvil Cc: Denys Vlasenko Cc: Oleg Nesterov commit 73ddff2bee159ffb580bd24faf625cd5e628f5ec Author: Tejun Heo Date: Tue Jun 14 11:20:14 2011 +0200 job control: introduce JOBCTL_TRAP_STOP and use it for group stop trap do_signal_stop() implemented both normal group stop and trap for group stop while ptraced. This approach has been enough but scheduled changes require trap mechanism which can be used in more generic manner and using group stop trap for generic trap site simplifies both userland visible interface and implementation. This patch adds a new jobctl flag - JOBCTL_TRAP_STOP. When set, it triggers a trap site, which behaves like group stop trap, in get_signal_to_deliver() after checking for pending signals. While ptraced, do_signal_stop() doesn't stop itself. It initiates group stop if requested and schedules JOBCTL_TRAP_STOP and returns. The caller - get_signal_to_deliver() - is responsible for checking whether TRAP_STOP is pending afterwards and handling it. ptrace_attach() is updated to use JOBCTL_TRAP_STOP instead of JOBCTL_STOP_PENDING and __ptrace_unlink() to clear all pending trap bits and TRAPPING so that TRAP_STOP and future trap bits don't linger after detach. While at it, add proper function comment to do_signal_stop() and make it return bool. -v2: __ptrace_unlink() updated to clear JOBCTL_TRAP_MASK and TRAPPING instead of JOBCTL_PENDING_MASK. This avoids accidentally clearing JOBCTL_STOP_CONSUME. Spotted by Oleg. -v3: do_signal_stop() updated to return %false without dropping siglock while ptraced and TRAP_STOP check moved inside for(;;) loop after group stop participation. This avoids unnecessary relocking and also will help avoiding unnecessary traps by consuming group stop before handling pending traps. -v4: Jobctl trap handling moved into a separate function - do_jobctl_trap(). Signed-off-by: Tejun Heo Cc: Oleg Nesterov commit a57339b4b5daf23b4cec450b37906d5f8b5fa722 Author: David Jander Date: Tue Jun 14 11:00:56 2011 +0200 gpio/pca953x: Deprecate meaningless device-tree bindings The property 'polarity' is handled by the GPIO core, and the 'gpio-base' should be assigned automatically. It is meaningless in the device-tree, since GPIO's are identified by the "chip-name"/offset pair. This way, the whole pca953x_get_alt_pdata() can hopefully soon go away. We still need to check whether we really want GPIO-interrupt functionality by simply looking if the I2C node has an interrupts property defined, since this property is not used for anything else. Signed-off-by: David Jander Signed-off-by: Grant Likely commit c6dcf592437e5919cb03af5dcfe369702e6a4a7c Author: David Jander Date: Tue Jun 14 11:00:55 2011 +0200 gpio/pca953x: Remove dynamic platform data pointer In the case that we obtain device-tree data to fill in platform_data, the new platform data struct was dynamically allocated, but the pointer to it was not used everywhere it should. It seems easier to fix this issue by removing the dynamic allocation altogether since its data is only used during driver probing. Signed-off-by: David Jander Signed-off-by: Grant Likely commit c609c05db10dcb020f6869186e548a0596a78896 Author: David Jander Date: Tue Jun 14 11:00:54 2011 +0200 gpio/pca953x: Fix IRQ support. It seems that in the normal case, IRQ_NOREQUEST needs to be explicitly cleared, otherwise claiming the interrupt fails. In the case of sparse interrupts, the descriptor needs to be allocated first. Signed-off-by: David Jander Signed-off-by: Grant Likely commit 8e46ea3ec8b132bffd989741e8d154accb623645 Merge: 2bc7c85 e5ff444 Author: Grant Likely Date: Thu Jun 16 13:31:42 2011 -0600 Merge branch 'for_3.1/gpio-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into gpio/next commit f0f3ca8d967462dafb815412b14ca3339b9817a6 Author: Jesper Juhl Date: Wed Jun 15 11:53:13 2011 +0200 docproc: cleanup brace placement The placement of the opening brace "{" after 'if' statements in scripts/docproc.c is inconsistent. Most are placed on the same line as the 'if' statement itself as per CodingStyle, but a few are not. This patch cleans up the inconsistency. We save a few source lines and the file then uses the same style throughout, which is nice. Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit b2a66aad8620337e38d6692f03d94a03d5129840 Author: Antti Julku Date: Wed Jun 15 12:01:14 2011 +0300 Bluetooth: Move blacklisting functions to hci_core Move blacklisting functions to hci_core.c, so that they can be used by both management interface and hci socket interface. Signed-off-by: Antti Julku Signed-off-by: Gustavo F. Padovan commit e5ff4440cf5206fbb99d9a354ed9024eb3da047d Author: Kevin Hilman Date: Fri Apr 22 14:37:16 2011 -0700 gpio/omap: cleanup show revision, remove cpu_is checks, display only once Remove cpu_is_* checks from gpio_show_revision() by passing in the revision address offset from platform data. SoCs with no revision register (15xx, 7xx, and all MPUIOs) use -1 (actually, USHRT_MAX) to signify no register. While here, all GPIO banks are assumed to be the same revision, so fix show_revision() to only show the revision for the first bank it finds. This removes duplicate GPIO revision prints during boot. Thanks to Charulatha V for finding/fixing a few -1s that were missed in the original patch. Signed-off-by: Kevin Hilman commit 9942da0e4b037a852b230208410141768d473deb Author: Kevin Hilman Date: Fri Apr 22 12:02:05 2011 -0700 gpio/omap: debounce remove SoC specific registers, use pdata Use register offsets passed in from pdata for accessing debounce registers. Signed-off-by: Kevin Hilman commit f64ad1a0e21a4948894c7a1b6f2f03b5e7151ddf Author: Kevin Hilman Date: Fri Apr 22 09:45:27 2011 -0700 gpio/omap: cleanup _set_gpio_wakeup(), remove ifdefs Make _set_gpio_wakeup() generic by removing ifdefs. Code for the various SoCs/bank-methods was already the same, except for the non-wakeup GPIO checking. But that flag is set on a per-SoC basis, so can be used for all SoCs. While here, use dev_err() and remove GPIO bank calculation assumption based on subtracting bank pointers. Signed-off-by: Kevin Hilman commit 7a6f8416e22a6d9f4708847bb2d88f0719b0f49e Author: Kevin Hilman Date: Fri Apr 22 08:15:46 2011 -0700 gpio/omap: remove useless gpio_valid() & check_gpio() checks These functions are useless. They are only called in a few places, and where they are called, the GPIO has already been converted from an IRQ or masked, so these functions will never fail. Signed-off-by: Kevin Hilman commit f8b46b58348f151e45274c93ebe51467cf10e2f2 Author: Kevin Hilman Date: Thu Apr 21 13:23:34 2011 -0700 gpio/omap: convert MPUIO IRQ over to generic irq_chip MPUIO banks have their own dedicated IRQ chip interface, separate from the "normal" GPIO banks. Convert the MPUIO IRQ chip over to using the new generic IRQ chip interface. Signed-off-by: Kevin Hilman commit 28f3b5a073b6dbafbb78cae65b22ea90547d7a87 Author: Kevin Hilman Date: Thu Apr 21 09:53:06 2011 -0700 gpio/omap: conslidate enable/disable of GPIO IRQs, remove ifdefs Cleanup GPIO IRQ enable/disable handling by removing SoC-specific Also split enable/disable IRQ into separate functions for better readability and also facilitate potentially moving to generic irq_chip in the future. Signed-off-by: Kevin Hilman commit eef4bec7bf2fa9953f6b8f371d5914d014f45d40 Author: Kevin Hilman Date: Thu Apr 21 09:17:35 2011 -0700 gpio/omap: consolidate IRQ status handling, remove #ifdefs Cleanup IRQ status handling by passing IRQ status register offsets via platform data. Cleans up clearing of GPIO IRQ status and GPIO ISR handler. Signed-off-by: Kevin Hilman commit fa87931acb8203a1f40a3c637863ad238f70cd40 Author: Kevin Hilman Date: Wed Apr 20 16:31:23 2011 -0700 gpio/omap: consolidate direction, input, output, remove #ifdefs Add register offset fields to GPIO platform_data for registers. This patch adds registers that control direction, input and output data. Using these register offsets in the common driver allows removal of #ifdefs and greatly improves readability. Also create dedicated data out functions: one for banks with dedicated set/clear registers, and another for banks with a single mask register. Signed-off-by: Kevin Hilman commit a8be8dafd00e3ccf4f85e2f30babf42be5076324 Author: Charulatha V Date: Fri Apr 22 16:38:16 2011 +0530 gpio/omap: remove get_gpio_bank() use chip info to get the pointer to the struct gpio_bank for a given GPIO bank and remove get_gpio_bank(). Signed-off-by: Charulatha V commit 129fd2230733ff0457e76d6aabde136cf8666bc0 Author: Kevin Hilman Date: Fri Apr 22 07:59:07 2011 -0700 gpio/omap: replace get_gpio_index() by using bank width The get_gpio_index() function, littered with cpu_is_* checks can be easily replaced by using bitops based on the GPIO bank width. Do so. Signed-off-by: Kevin Hilman commit c390aad0330f330ce9818ef5269169bbae335da9 Author: Kevin Hilman Date: Thu Apr 21 09:33:36 2011 -0700 gpio/omap: _get_gpio_irqbank_mask: replace hard-coded mask with bank->width Replace hard-coded mask values with bank->width which is already coming from platform_data. Signed-off-by: Kevin Hilman commit d5f46247e77a63bc3bb4b3f979281e5c700c218e Author: Kevin Hilman Date: Thu Apr 21 09:23:00 2011 -0700 gpio/omap: move bank width into struct gpio_bank Rather than having a file-global bank_width variable, move it into struct gpio_bank so it can be bank-specific. Note the bank width is already passed per-bank via platform_data, so current code would be incorrect if any banks had different width. Signed-off-by: Kevin Hilman commit bdba15db4d81940776ab96ea9f558b7388b0f7fe Author: Kevin Hilman Date: Thu Apr 21 08:44:45 2011 -0700 gpio/omap: remove MPUIO handling from _clear_gpio_irqbank() Remove the OMAP1 #ifdef and MPUIO special case for _clear_gpio_irqbank() The MPUIOs do not need a register access to ack/clear the IRQ status, since reading the IRQ status clears it. In addition, the MPUIO irq_chip has an empty ack method, so _clear_gpio_irqbank() is never used for MPUIOs. Signed-off-by: Kevin Hilman commit df3c851716424fda0c7b14c4cae71cea467a9944 Author: Kevin Hilman Date: Thu Apr 21 09:08:15 2011 -0700 gpio/omap: _clear_gpio_irqbank: fix flushing of posted write In commit 78a1a6d3411de1a8b0dc1cb92754b5f12f251912 (ARM: OMAP4: Update the GPIO support) braces were mistakenly added to included the register read-back inside the cpu_is_* checking. Remove the braces, ensuring that a register read-back is done, even when the IRQSTATUS2 register is not written. Note that the register read-back might be IRQSTATUS1 or IRQSTATUS2 depending on the CPU, but a read-back of any register in that region will cause a flush of the posted writes. Signed-off-by: Kevin Hilman commit 15b4d93f0316caec44e07255c1d73bde4fac12e4 Author: Jozsef Kadlecsik Date: Thu Jun 16 19:01:26 2011 +0200 netfilter: ipset: whitespace and coding fixes detected by checkpatch.pl Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit e385357a2f214e4d4e79c6118f1bede2572e0701 Author: Jozsef Kadlecsik Date: Thu Jun 16 19:00:48 2011 +0200 netfilter: ipset: hash:net,iface type introduced The hash:net,iface type makes possible to store network address and interface name pairs in a set. It's mostly suitable for egress and ingress filtering. Examples: # ipset create test hash:net,iface # ipset add test 192.168.0.0/16,eth0 # ipset add test 192.168.0.0/24,eth1 Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 9b03a5ef49c01515387133ac5bd47073fae56318 Author: Jozsef Kadlecsik Date: Thu Jun 16 18:58:20 2011 +0200 netfilter: ipset: use the stored first cidr value instead of '1' Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 9d8832320f832b9360f6bca71cc045d2e4df171b Author: Jozsef Kadlecsik Date: Thu Jun 16 18:57:44 2011 +0200 netfilter: ipset: fix return code for destroy when sets are in use Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit b66554cf03fe866b3fb7b9f40f430b8ba09f41c8 Author: Jozsef Kadlecsik Date: Thu Jun 16 18:56:47 2011 +0200 netfilter: ipset: add xt_action_param to the variant level kadt functions, ipset API change With the change the sets can use any parameter available for the match and target extensions, like input/output interface. It's required for the hash:net,iface set type. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit e6146e8684ed6dd4c0ff85ca21bf4324114fbbfa Author: Jozsef Kadlecsik Date: Thu Jun 16 18:55:58 2011 +0200 netfilter: ipset: use unified from/to address masking and check the usage Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit f3dfd1538f26f1ecf86daaf3d0c321d87e5de041 Author: Jozsef Kadlecsik Date: Thu Jun 16 18:54:43 2011 +0200 netfilter: ipset: take into account cidr value for the from address when creating the set When creating a set from a range expressed as a network like 10.1.1.172/29, the from address was taken as the IP address part and not masked with the netmask from the cidr. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit c64562eaf2ad61d7492788ef95678f52d0d28f2a Author: Jozsef Kadlecsik Date: Thu Jun 16 18:53:51 2011 +0200 netfilter: ipset: adding ranges to hash types with timeout could still fail, fixed The patch "Fix adding ranges to hash types" had got a mistypeing in the timeout variant of the hash types, which actually made the patch ineffective. Fixed! Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit d0d9e0a5a8db05b2179c2ffb25d1c2850cce3c8e Author: Jozsef Kadlecsik Date: Thu Jun 16 18:52:41 2011 +0200 netfilter: ipset: support range for IPv4 at adding/deleting elements for hash:*net* types The range internally is converted to the network(s) equal to the range. Example: # ipset new test hash:net # ipset add test 10.2.0.0-10.2.1.12 # ipset list test Name: test Type: hash:net Header: family inet hashsize 1024 maxelem 65536 Size in memory: 16888 References: 0 Members: 10.2.1.12 10.2.1.0/29 10.2.0.0/24 10.2.1.8/30 Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit f1e00b39797944bf25addaf543839feeb25fbdc5 Author: Jozsef Kadlecsik Date: Thu Jun 16 18:51:41 2011 +0200 netfilter: ipset: set type support with multiple revisions added A set type may have multiple revisions, for example when syntax is extended. Support continuous revision ranges in set types. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 3d14b171f004f75c2d1e82e10545966f94132705 Author: Jozsef Kadlecsik Date: Thu Jun 16 18:49:17 2011 +0200 netfilter: ipset: fix adding ranges to hash types When ranges are added to hash types, the elements may trigger rehashing the set. However, the last successfully added element was not kept track so the adding started again with the first element after the rehashing. Bug reported by Mr Dash Four. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit c1e2e04388b2539960453689b8e721709f71dc9c Author: Jozsef Kadlecsik Date: Thu Jun 16 18:47:07 2011 +0200 netfilter: ipset: support listing setnames and headers too Current listing makes possible to list sets with full content only. The patch adds support partial listings, i.e. listing just the existing setnames or listing set headers, without set members. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit ac8cc925d35fc5a05da2bd097e602f20de2478a4 Author: Jozsef Kadlecsik Date: Thu Jun 16 18:42:40 2011 +0200 netfilter: ipset: options and flags support added to the kernel API The support makes possible to specify the timeout value for the SET target and a flag to reset the timeout for already existing entries. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 483e9ea357d1c0b74a149087bf06f17ae62f750a Author: Jozsef Kadlecsik Date: Thu Jun 16 18:41:53 2011 +0200 netfilter: ipset: whitespace fixes: some space before tab slipped in Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 5416219e5ca4504ea80d662fdda7337e52e86ee5 Author: Jozsef Kadlecsik Date: Thu Jun 16 18:40:55 2011 +0200 netfilter: ipset: timeout can be modified for already added elements When an element to a set with timeout added, one can change the timeout by "readding" the element with the "-exist" flag. That means the timeout value is reset to the specified one (or to the default from the set specification if the "timeout n" option is not used). Example ipset add foo 1.2.3.4 timeout 10 ipset add foo 1.2.3.4 timeout 600 -exist Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 3192b920bf7d0c528ab54e7d3689f44055316a37 Author: Christoph Lameter Date: Tue Jun 14 16:16:36 2011 -0500 slab, slub, slob: Unify alignment definition Every slab has its on alignment definition in include/linux/sl?b_def.h. Extract those and define a common set in include/linux/slab.h. SLOB: As notes sometimes we need double word alignment on 32 bit. This gives all structures allocated by SLOB a unsigned long long alignment like the others do. SLAB: If ARCH_SLAB_MINALIGN is not set SLAB would set ARCH_SLAB_MINALIGN to zero meaning no alignment at all. Give it the default unsigned long long alignment. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 40b7f3dfcc5ab211a0b8d916751bb22ac2290806 Author: Borislav Petkov Date: Wed Jun 15 15:34:57 2011 +0200 x86, microcode, AMD: Fix section header size check The ucode size check has to take the section header size into account too when sanity checking the section length. Shorten and clarify define names, while at it. Caught-by: Ben Hutchings Link: http://lkml.kernel.org/r/1302752223.5282.674.camel@localhost Signed-off-by: Borislav Petkov commit 619c15171f6f58681013cdd439632505fd563ba6 Merge: 1f2d9c9 6c8f794 Author: Patrick McHardy Date: Thu Jun 16 17:05:24 2011 +0200 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs-next-2.6 commit 1f2d9c9dd8276b1c19ef80e6d8059fe47506d4c3 Merge: a7fed76 520b275 Author: Patrick McHardy Date: Thu Jun 16 17:01:10 2011 +0200 Merge branch 'master' of /repos/git/net-next-2.6 commit 78b2b911bf7020359a2adb54adfca522cf776141 Author: Linus Walleij Date: Thu Jun 16 10:14:46 2011 +0200 spi/pl022: strengthen FIFO watermark level checks The platform configuration can select custom FIFO watermarks, but these may conflict the actual FIFO size of the PL022 variant if set too high. So strengthen the sanity checks to deny any conflicting settings. Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit bcda6ff8ddffa593635ed7e6f620a1ef3b827ffc Author: Rabin Vincent Date: Thu Jun 16 10:14:40 2011 +0200 spi/pl022: support runtime PM Insert notifiers for the runtime PM API. With this the runtime PM layer kicks in to action where used. Signed-off-by: Rabin Vincent Reviewed-by: Virupax Sadashivpetimath Reviewed-by: Jonas Aberg Reviewed-by: Srinidhi Kasagar [Rebased to Linux 3.0-rc3, edit description] Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 083be3f05371b8fe0606f3abf029beeeff66d633 Author: Linus Walleij Date: Thu Jun 16 10:14:28 2011 +0200 spi/pl022: initialize burstsize from FIFO trigger level Configure the DMA burstsize from the FIFO trigger level supplied with the controller configuration data. This is based on a patch from Virupax, but I rewrote it differently. Reported-by: Virupax Sadashivpetimath Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 741e3a89dee8a17aa9373975d51f130a65e1683d Author: Tony Lindgren Date: Tue May 17 03:51:26 2011 -0700 omap: Use separate init_irq functions to avoid cpu_is_omap tests early This allows us to remove cpu_is_omap calls from init_irq functions. There should not be any need for cpu_is_omap calls as at this point. During the timer init we only care about SoC generation, and not about subrevisions. The main reason for the patch is that we want to initialize only minimal omap specific code from the init_early call. Signed-off-by: Tony Lindgren Reviewed-by: Kevin Hilman commit af07ce3e77d3b24ab1d71fcc5833d41800f23b2b Merge: b4f9f2b 0ef5bf1 Author: Ingo Molnar Date: Thu Jun 16 13:26:23 2011 +0200 Merge branch 'tip/perf/core-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core Conflicts: Makefile commit b4f9f2b64aa189c5584f266f4f0343af7a705441 Merge: 7636913 2c53b43 Author: Ingo Molnar Date: Thu Jun 16 13:23:15 2011 +0200 Merge commit 'v3.0-rc3' into perf/core Merge reason: add the latest fixes. Signed-off-by: Ingo Molnar commit 5d0e7f61702ea562ee8bdea56b475978c4ff08ac Author: Barry Song Date: Wed Jun 15 15:29:22 2011 -0400 ASoC: AD1836: rename suspend/resume funcs Use less specific names for suspend/resume to match the probe/remove funcs where these are now used. Signed-off-by: Barry Song Signed-off-by: Scott Jiang Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 0679059a41413069d887a03c5db1c98dc273d6a3 Author: Mike Frysinger Date: Wed Jun 15 15:29:21 2011 -0400 ASoC: AD1836: fix codec name The codec name should not have a "-codec" suffix since this is not part of a MFD. This was incorrectly changed during the multi-component updated. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d4d80f5e46872b947357b44cf75d3e9fe97789d8 Author: Mike Frysinger Date: Wed Jun 15 15:29:20 2011 -0400 ASoC: AD1836: fix intermixed tab/space indentation Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 15e870512956a1e573d033b3bb6ffbf3237e9723 Author: Mike Frysinger Date: Wed Jun 15 15:29:19 2011 -0400 ASoC: AD1836: drop unnecessary spi register check The only thing the init func does is register a spi driver, so if that fails, we return the value back up to the caller who will display an error message for us. So drop the redundant checking/message. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 42f32c559131921f3bb014e0ac2107345f14887c Author: Mike Frysinger Date: Wed Jun 15 15:29:23 2011 -0400 ASoC: AD1836: clean up comment headers Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 53a93d58fbcfca5c40ff58f8ced421293bfcbc2a Author: Lars-Peter Clausen Date: Mon Jun 13 15:26:21 2011 +0200 ASoC: Blackfin: Add bf5xx-adau1701 machine driver Add a machine driver to support the ADAU1701 SigmaDSP processors on Analog Devices BF5XX evaluation boards. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 631ed8a2134dae17d9e17f3c35c7290720f85199 Author: Lars-Peter Clausen Date: Mon Jun 13 15:26:20 2011 +0200 ASoC: Add ADAU1701 codec driver This patch adds support for the Analog Devices ADAU1701 SigmaDSP. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b83e60c000d6e6fbc602cfbf6788e65f1e2c0c7e Author: Mark Brown Date: Mon Jun 13 17:50:18 2011 +0100 ASoC: Clean up some coding style nits in the bf5xx-i2s-pcm driver Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit c7cece89f1b00b56276303942f96ec67cf206e1e Author: Hidetoshi Seto Date: Wed Jun 8 11:02:03 2011 +0900 x86, mce: Use mce_sysdev_ prefix to group functions There are many functions named mce_* so use a new prefix for the subset of functions related to sysfs support. And since f3c6ea1b06c71b43f751b36bd99345369fe911af introduces syscore_ops, use the prefix mce_syscore for some functions related to power management which were in sysdev_class before. Before: After: mce_device mce_sysdev mce_sysclass mce_sysdev_class mce_attrs mce_sysdev_attrs mce_dev_initialized mce_sysdev_initialized mce_create_device mce_sysdev_create mce_remove_device mce_sysdev_remove mce_suspend mce_syscore_suspend mce_shutdown mce_syscore_shutdown mce_resume mce_syscore_resume Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED81B.8020506@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 93b62c3cf59d44850cbe9f04d58da08930e3fb0b Author: Hidetoshi Seto Date: Wed Jun 8 11:00:45 2011 +0900 x86, mce: Use mce_chrdev_ prefix to group functions There are many functions named mce_* so use a new prefix for the subset of functions dealing with the character device /dev/mcelog. This change doesn't impact the mce-inject module because the exported symbol mce_chrdev_ops already has the prefix, therefore it is left unchanged. Before: After: mce_wait mce_chrdev_wait mce_state_lock mce_chrdev_state_lock open_count mce_chrdev_open_count open_exclu mce_chrdev_open_exclu mce_open mce_chrdev_open mce_release mce_chrdev_release mce_read_mutex mce_chrdev_read_mutex mce_read mce_chrdev_read mce_poll mce_chrdev_poll mce_ioctl mce_chrdev_ioctl mce_log_device mce_chrdev_device Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED7CD.3040500@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 559faa6be143b8aa7a07b12f618d29fbc1c8eb0d Author: Hidetoshi Seto Date: Wed Jun 8 11:00:08 2011 +0900 x86, mce: Cleanup mce_read() Use a temporary local variable m to simplify the code. No change in logic. Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED7A8.8020307@jp.fujitsu.com Signed-off-by: Borislav Petkov commit f6783c4234e65bd6f85596d97745ccdbf041cb63 Author: Hidetoshi Seto Date: Wed Jun 8 10:59:19 2011 +0900 x86, mce: Cleanup mce_create()/remove_device() Use temporary local variable sysdev to simplify the code. No change in logic. Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED777.7080205@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 3a97fc34130326da87b20de5d0259c35406707ce Author: Hidetoshi Seto Date: Wed Jun 8 10:58:35 2011 +0900 x86, mce: Check the result of ancient_init() Because "ancient CPUs" like p5 and winchip don't have X86_FEATURE_MCA (I suppose so), mcheck_cpu_init() on such CPUs will return at check of mce_available() after __mcheck_cpu_ancient_init(). It is hard to know this implicit behavior without knowing the CPUs well. So make it clear that we leave mcheck_cpu_init() when the CPU is initialized in __mcheck_cpu_ancient_init(). Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED74B.20502@jp.fujitsu.com Signed-off-by: Borislav Petkov commit b8325c5b110d7ff460b79588e7e9afdcc73d5c3c Author: Hidetoshi Seto Date: Wed Jun 8 10:57:46 2011 +0900 x86, mce: Introduce mce_gather_info() This patch introduces mce_gather_info() which is to be called at the beginning of error handling and gathers minimum error information from proper error registers (and saved registers). As the result of mce_get_rip() is integrated, unnecessary zeroing is removed. This also takes care of saving RIP which is required to make some decision about error severity for SRAR errors, instead of retrieving it later in the handler. Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED71A.1060906@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 2b90e77eaee8809073db5cf43ac9795cc2054dc0 Author: Hidetoshi Seto Date: Wed Jun 8 10:56:56 2011 +0900 x86, mce: Replace MCM_ with MCI_MISC_ Follow other MCi register defines. Plus define MCI_MISC_ADDR_LSB() and MCI_MISC_ADDR_MODE(). Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED6E8.9090509@jp.fujitsu.com Signed-off-by: Borislav Petkov commit b77e70bf3535e0bd5472e0681f41cce4ae0598bb Author: Hidetoshi Seto Date: Wed Jun 8 10:56:02 2011 +0900 x86, mce: Replace MCE_SELF_VECTOR by irq_work The MCE handler uses a special vector for self IPI to invoke post-emergency processing in an interrupt context, e.g. call an NMI-unsafe function, wakeup loggers, schedule time-consuming work for recovery, etc. This mechanism is now generalized by the following commit: > e360adbe29241a0194e10e20595360dd7b98a2b3 > Author: Peter Zijlstra > Date: Thu Oct 14 14:01:34 2010 +0800 > > irq_work: Add generic hardirq context callbacks > > Provide a mechanism that allows running code in IRQ context. It is > most useful for NMI code that needs to interact with the rest of the > system -- like wakeup a task to drain buffers. : So change to use provided generic mechanism. Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED6B2.6080005@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 7639bfc753f70321dbea83852e1cc47a45b681d7 Author: Hidetoshi Seto Date: Wed Jun 8 10:55:05 2011 +0900 x86, mce, severity: Clean up trivial coding style problems More specifically: - sort bits in the macros - use BITCLR/BITSET - coordinate message pattern - use m for struct mce - cleanup for severities_debugfs_init() No functional change. Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED679.9090503@jp.fujitsu.com Signed-off-by: Borislav Petkov commit a17957cdec69acb9e26319618b95a810a936e637 Author: Hidetoshi Seto Date: Wed Jun 8 10:53:35 2011 +0900 x86, mce, severity: Cleanup severity table The current format of an item in this table is: condition(param, ..., level, message [, condition2 ...]) So we have to check both an item's head and tail to find the conditions which match the item. Format them in a more straight forward manner: item(level, message, condition [, condition2 ...]) Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED61F.5010502@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 901d7691d3238ad68c80a567b88b1e5d614137fb Author: Hidetoshi Seto Date: Wed Jun 8 10:52:43 2011 +0900 x86, mce, severity: Make formatting a bit more readable The table looks very complicated and hard to read for people other than skilled developers. So let's clean it up a bit. At first, change format to ease reading elements in the table. Signed-off-by: Hidetoshi Seto Acked-by: Tony Luck Link: http://lkml.kernel.org/r/4DEED5EB.6050400@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 880a317abccf60b989951bf1515964cd73245970 Author: Tony Luck Date: Tue Jun 7 21:51:56 2011 -0400 x86, mce, severity: Fix two severities table signatures The "Spurious not enabled" entry is redundant: the "Not enabled" entry earlier in the table will cover this case. The "Action required; unknown MCACOD" entry shouldn't specify MCACOD in the .mask field. Current code will only match for mcacod==0 rather than all AR=1 entries. Signed-off-by: Tony Luck Signed-off-by: Hidetoshi Seto Link: http://lkml.kernel.org/r/4DEED5BC.8030703@jp.fujitsu.com Signed-off-by: Borislav Petkov commit 1c5454eed85af71df9c01ab923e0c1b841b2e99b Author: Ryan Mallon Date: Wed Jun 15 14:45:36 2011 +1000 Change Ryan Mallon's email address across the kernel I no longer work at Bluewater Systems. Update my email address accordingly. I have deleted my email address from C files rather than change it. This was suggested by several people, since the commit from my new email address will cause scripts/get_maintainer.pl to function properly. I have not added the .mailmap entry as suggested by Joe because I think it is no longer necessary if I touch all the files which had my name in them. Signed-off-by: Ryan Mallon Cc: Andre Renaud Cc: H Hartley Sweeten Cc: Russell King Cc: Nicolas Ferre Cc: Andrew Victor Cc: David Woodhouse Cc: Anton Vorontsov Cc: Paul Mundt Cc: Liam Girdwood Cc: Mark Brown Cc: Alan Cox Cc: Joe Perches Cc: Jesper Juhl Cc: Andrew Morton Cc: trivial@kernel.org Cc: linux-kernel@vger.kernel.org Reviewed-by: Jesper Juhl Signed-off-by: Jiri Kosina commit df0a92c20652d70da70e5e4d08736cc485eaf1ff Author: Jonathan Neuschäfer Date: Thu Jun 16 00:17:46 2011 +0200 scripts/gcc-goto.sh: fix a typo ("suport") Signed-off-by: Jonathan Neuschäfer Signed-off-by: Jiri Kosina commit d0459e1afa58a225f074d85226bf0d7b9e54eff3 Merge: 1f83812 090b918 261a9af Author: Paul Mundt Date: Thu Jun 16 15:12:08 2011 +0900 Merge branches 'common/dma' and 'sh/stable-updates' into sh-latest commit 090b91805a97f58a7deff0f2b40aad1cc2f1b7e0 Author: Kuninori Morimoto Date: Thu Jun 16 05:08:28 2011 +0000 dmaengine: shdma: fixup parameter definition on dmae_set_dmars chan_pdata->dmars_bit is unsigned int Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 1d2c0980262e70f5643df34493ffd7e608282c16 Author: Kuninori Morimoto Date: Thu Jun 16 05:08:18 2011 +0000 dmaengine: shdma: tidyup spin_unlock_bh on sh_chan_xfer_ld_queue It is not readable that there is any spin_unlock_bh on same function. Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit c4e0dd7835d12d9765a372b586a5020ac29cc706 Author: Kuninori Morimoto Date: Thu Jun 16 05:08:09 2011 +0000 dmaengine: shdma: add to_sh_dev define This patch adds "to_sh_dev" macro, and clean up codes. Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 030aba53ea361df2b44a292606c974ef48d438de Author: Harry Butterworth Date: Tue Jun 14 23:09:12 2011 +0800 ALSA: ctxfi: Change PLL initialization code This is a reworked patch from Creative to change the PLL code to address unreliable 44100Hz initialization. Signed-off-by: Harry Butterworth Signed-off-by: Takashi Iwai commit e2f5e5a71dfe6bf155590de0fdd6d748ac79bf76 Author: H Hartley Sweeten Date: Fri Jun 10 15:15:05 2011 -0700 dma/ep93xx_dma.c: local symbols should be static The symbol 'ep93xx_dma_prep_dma_memcpy' is only used in this driver and should be marked static. Signed-off-by: H Hartley Sweeten Cc: Mika Westerberg Cc: Dan Williams Cc: Vinod Koul Acked-by: Mika Westerberg Signed-off-by: Vinod Koul commit 664a51a81f6ba39db30cd7b7de61577ca0b2d20d Author: Alan Stern Date: Wed Jun 15 16:31:37 2011 -0400 USB: deprecate g_file_storage This patch (as1471) deprecates the File-backed Storage Driver and schedules its replacement for the 3.8 kernel release (about two years from now). Users are advised to switch to the Mass Storage Gadget instead. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 2bc7c85210d75b7a8a7326284b4f608a16f52ffc Merge: 12610be df22122 Author: Grant Likely Date: Wed Jun 15 14:57:39 2011 -0600 Merge branch 'gpio/next-tegra' into gpio/next Conflicts: drivers/gpio/Kconfig drivers/gpio/Makefile commit df2212270ce94f12e9caed6ca04c7077672d588e Author: Grant Likely Date: Wed Jun 15 14:54:14 2011 -0600 gpio/tegra: add devicetree support Add support for decoding gpios from the device tree Signed-off-by: Grant Likely Acked-by: Olof Johansson commit ea5a9607cb2a3c7e5e9fcb1b3d75b8f88eca5766 Author: Grant Likely Date: Wed Jun 15 14:52:43 2011 -0600 gpio/tegra: Move Tegra gpio driver to drivers/gpio As part of the gpio driver consolidation, this patch moves the Tegra driver into drivers/gpio Signed-off-by: Grant Likely Acked-by: Olof Johansson Acked-by: Colin Cross commit e892bac102805f905e463a2cc7d0f870358cc1d5 Author: Grant Likely Date: Wed Jun 15 13:18:06 2011 -0600 gpio/tegra: Move Tegra gpio driver to drivers/gpio As part of the gpio driver consolidation, this patch moves the Tegra driver into drivers/gpio Signed-off-by: Grant Likely commit 520b2756d9414cb6b0f6fc70714e95ee9248ebf4 Author: Matt Carlson Date: Mon Jun 13 13:39:02 2011 +0000 tg3: Create funcs for power source switching The power source switching code is about to get a little more complex. This patch seeks to simplify future power source switching patches by clarifying the existing code. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 221c56373ee7088dd3015b928782d5e70dc5074e Author: Matt Carlson Date: Mon Jun 13 13:39:01 2011 +0000 tg3: Migrate phy preprocessor defs to system defs This patch changes to code to use some of the preprocessor definitions from mii.h over its homegrown equivalents. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 5bb09778e2196770d218e82904f15b558d9a1e50 Author: Matt Carlson Date: Mon Jun 13 13:39:00 2011 +0000 tg3: Show flowctrl settings through get_settings() This patch adds code to present the flow control advertisements through the ethtool get_settings callback. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit ad0fad9eb2577ffc2d1a4fd522e6a71fd51127fd Author: Matt Carlson Date: Mon Jun 13 13:38:59 2011 +0000 tg3: Fix EEE debounce timer values This patch fixes the EEE debounce timer values. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 727a6d9f39604b5592e474295960fceeb523ae4f Author: Matt Carlson Date: Mon Jun 13 13:38:58 2011 +0000 tg3: Add more selfboot formats to NVRAM selftest This patch adds more selfboot formats to the NVRAM selftest. It also changes the code to return an error on an unsupported NVRAM format. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit eb69d564a3f34df602bd9b0fae94e14fad23de2d Author: Matt Carlson Date: Mon Jun 13 13:38:57 2011 +0000 tg3: Remove 4G_DMA_BNDRY_BUG flag Now that all chips have this bug, the flag checks become useless code. This patch removes the flag. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit daf9a55387df8f429d1219bbdabba1ab33d2a479 Author: Matt Carlson Date: Mon Jun 13 13:38:56 2011 +0000 tg3: Remove 40BIT_DMA_LIMIT_BUG This patch removes the 40BIT_DMA_LIMIT_BUG flag. There already exists a flag for this purpose (TG3_FLAG_40BIT_DMA_BUG) and was already being used in the correct spot. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 0e6cf6a9e3cf911577b1dde0dc724f634e4ca119 Author: Matt Carlson Date: Mon Jun 13 13:38:55 2011 +0000 tg3: Workaround tagged status update bug On rare occasions, writing the tag to the interrupt mailbox does not reenable interrupts. This patch fixes the problem by reissuing the mailbox update. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit b96368e9365a4db7429da87cfd25bb54b24954f8 Author: Vladislav Zolotarov Date: Tue Jun 14 01:34:46 2011 +0000 bnx2x: Update date to 2011/06/13 and version to 1.70.00-0 Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit d1976b2e6478a1b8ff2dc35979e7791e2d668285 Author: Dmitry Kravkov Date: Tue Jun 14 01:34:42 2011 +0000 bnx2x: PFC support for 578xx Add supoprt for 3 COSes for 578xx devices. Fix HW configuration for PFC feature according to new HSI in link layer. Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 60d2fe0312b3301fb5a65e9ed0b44465c8237055 Author: Yaniv Rosner Date: Tue Jun 14 01:34:38 2011 +0000 bnx2x: Rename LASI registers to definitions in mdio.h Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 3deb8167ea66974b0bc8c13c8ee0beafc02a73a1 Author: Yaniv Rosner Date: Tue Jun 14 01:34:33 2011 +0000 bnx2x: Add a periodic task for link PHY events Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 0d40f0d425ec632956547bd8efd8965e5945e1dc Author: Yaniv Rosner Date: Tue Jun 14 01:34:27 2011 +0000 bnx2x: Adjust BCM84833 to BCM578xx Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 6c3218c6f7e5be6d785486797d48203d54cfd893 Author: Yaniv Rosner Date: Tue Jun 14 01:34:23 2011 +0000 bnx2x: Adjust ETS to 578xx Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 6583e33baefbe4dea04999ec91be1a1371cd1528 Author: Yaniv Rosner Date: Tue Jun 14 01:34:17 2011 +0000 bnx2x: Add new PHY 54616s Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 3c9ada227c56c6f41e24b01d183b00b007c7ac93 Author: Yaniv Rosner Date: Tue Jun 14 01:34:12 2011 +0000 bnx2x: Add Warpcore support for 578xx Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 9380bb9e88831bd3d85636b3e4fec30e330d5266 Author: Yaniv Rosner Date: Tue Jun 14 01:34:07 2011 +0000 bnx2x: Add new MAC support for 578xx Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 754a2f5220ac7d597454df3104cfce9c83d68df0 Author: Dmitry Kravkov Date: Tue Jun 14 01:34:02 2011 +0000 bnx2x: Cosmetic changes. Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit ef01854e24035a0b17ebeb98b05cfee2c8b36e02 Author: Dmitry Kravkov Date: Tue Jun 14 01:33:57 2011 +0000 bnx2x: update DCB data during PMF migration Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit c9ee92062424375fe6e73c4af5d52df289ccf9eb Author: Vladislav Zolotarov Date: Tue Jun 14 01:33:51 2011 +0000 bnx2x: 57712 parity handling - Added support for a parity error handling for a 57712 chip. - Changed the parity recovery scheme from per-chip to per-engine. Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 619c5cb6885b936c44ae1422ef805b69c6291485 Author: Vlad Zolotarov Date: Tue Jun 14 14:33:44 2011 +0300 New 7.0 FW: bnx2x, cnic, bnx2i, bnx2fc New FW/HSI (7.0): - Added support to 578xx chips - Improved HSI - much less driver's direct access to the FW internal memory needed. New implementation of the HSI handling layer in the bnx2x (bnx2x_sp.c): - Introduced chip dependent objects that have chip independent interfaces for configuration of MACs, multicast addresses, Rx mode, indirection table, fast path queues and function initialization/cleanup. - Objects functionality is based on the private function pointers, which allows not only a per-chip but also PF/VF differentiation while still preserving the same interface towards the driver. - Objects interface is not influenced by the HSI changes which do not require providing new parameters keeping the code outside the bnx2x_sp.c invariant with regard to such HSI chnages. Changes in a CNIC, bnx2fc and bnx2i modules due to the new HSI. Signed-off-by: Vladislav Zolotarov Signed-off-by: Michael Chan Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 042181f5aa8833a8918e1a91cfaf292146ffc62c Author: Vladislav Zolotarov Date: Tue Jun 14 01:33:39 2011 +0000 bnx2x: Created bnx2x_sp Moved the HSI dependent slow path code to a separate file. Currently it contains the implementation of MACs, Rx mode, multicast addresses, indirection table, fast path queue and function configuration code. Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 9ee3d37b05c2fc5c6c01e09dd3bcc4500babf76a Author: Dmitry Kravkov Date: Tue Jun 14 01:33:34 2011 +0000 bnx2x: removed unused variables Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit a9fccec79e359b9162ab0cebe2c7ce30ee4172c3 Author: Dmitry Kravkov Date: Tue Jun 14 01:33:30 2011 +0000 bnx2x: use bnx2x_reload_if_running Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 7a25cc7315e4d846cebbecd31bc4d79e7d2d6db3 Author: Dmitry Kravkov Date: Tue Jun 14 01:33:25 2011 +0000 bnx2x: dump FW memory when appropriate msglvl is raised Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 361c391e2339eb8d479feec9042ec6e822593350 Author: Yaniv Rosner Date: Tue Jun 14 01:33:19 2011 +0000 bnx2x: do not call link update without HW notification Signed-off-by: Yaniv Rosner Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 30ae438b120bc63caa2328733c7c7119d5d29842 Author: Dmitry Kravkov Date: Tue Jun 14 01:33:13 2011 +0000 bnx2x: disable fairness if ETS is enabled Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit ca92429f5f52a76eb6e161622d813b8224ce0565 Author: Dmitry Kravkov Date: Tue Jun 14 01:33:08 2011 +0000 bnx2x: avoid release of unrequested irqs Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 93ef5c02a436000d6b90ff59c9d25563000eee7f Author: Dmitry Kravkov Date: Tue Jun 14 01:33:02 2011 +0000 bnx2x: put start bd csum in separate function Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 4b7ed8978dc79de45e9fbc202f4328388311f81f Author: Dmitry Kravkov Date: Tue Jun 14 01:32:53 2011 +0000 bnx2x: remove references to intr_sem It's not needed any more since device always operates in interrupt-driven mode Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 8eef2af1824da37b428ad34e7ff3490b327b39c1 Author: Dmitry Kravkov Date: Tue Jun 14 01:32:47 2011 +0000 bnx2x: do not allocate FCoE ring if disabled Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 59e5137357559ec60b2e72bdc3d5a7e22c47212b Author: Michael Chan Date: Tue Jun 14 01:32:38 2011 +0000 cnic: Move indexing function pointers to struct kcq_info The hardware indexing scheme for the FCoE kcq will change in the upcoming firmware. This patch will cope with the change easily. Signed-off-by: Michael Chan Signed-off-by: Vladislav Zolotarov Signed-off-by: David S. Miller commit 86b445676d13f520ef9ab7aebe933aa6684ce84c Author: Borislav Petkov Date: Tue Feb 22 18:41:48 2011 +0100 x86, microcode, AMD: Correct buf references Both the equivalence table and the microcode patch types are u32. Access them properly through the buf-ptr. Signed-off-by: Borislav Petkov commit a406ab6d77ea86ba7c713276f30ed7058ca64e31 Merge: 5f30749 a0e3e70 Author: Robert Richter Date: Wed Jun 15 14:37:35 2011 +0200 Merge branch 'oprofile/urgent' into HEAD commit 5f307491f3a0c8551cedf5d90d660d656e0d56ec Author: Daniel Kalmar Date: Fri May 13 08:38:05 2011 -0400 MIPS: oprofile: Add callgraph support Stack unwinding is done by code examination. For kernelspace, the already existing unwind function is utilized that uses kallsyms to quickly find the beginning of functions. For userspace a new function was added that examines code at and before the pc. Signed-off-by: Daniel Kalmar Signed-off-by: Gergely Kis Signed-off-by: Robert Richter commit 94ea09c6a8e6c5ffb59bb1d5ca10008d37544e1a Author: Daniel Kalmar Date: Fri May 13 08:38:04 2011 -0400 MIPS: Add new unwind_stack variant The unwind_stack_by_address variant supports unwinding based on any kernel code address. This symbol is also exported so it can be called from modules. Signed-off-by: Daniel Kalmar Signed-off-by: Gergely Kis Signed-off-by: Robert Richter commit a0e3e70243f5b270bc3eca718f0a9fa5e6b8262e Author: Robert Richter Date: Fri Jun 3 16:37:47 2011 +0200 oprofile, x86: Fix nmi-unsafe callgraph support Current oprofile's x86 callgraph support may trigger page faults throwing the BUG_ON(in_nmi()) message below. This patch fixes this by using the same nmi-safe copy-from-user code as in perf. ------------[ cut here ]------------ kernel BUG at .../arch/x86/kernel/traps.c:436! invalid opcode: 0000 [#1] SMP last sysfs file: /sys/devices/pci0000:00/0000:00:0a.0/0000:07:00.0/0000:08:04.0/net/eth0/broadcast CPU 5 Modules linked in: Pid: 8611, comm: opcontrol Not tainted 2.6.39-00007-gfe47ae7 #1 Advanced Micro Device Anaheim/Anaheim RIP: 0010:[] [] do_nmi+0x22/0x1ee RSP: 0000:ffff88042fd47f28 EFLAGS: 00010002 RAX: ffff88042c0a7fd8 RBX: 0000000000000001 RCX: 00000000c0000101 RDX: 00000000ffff8804 RSI: ffffffffffffffff RDI: ffff88042fd47f58 RBP: ffff88042fd47f48 R08: 0000000000000004 R09: 0000000000001484 R10: 0000000000000001 R11: 0000000000000000 R12: ffff88042fd47f58 R13: 0000000000000000 R14: ffff88042fd47d98 R15: 0000000000000020 FS: 00007fca25e56700(0000) GS:ffff88042fd40000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000074 CR3: 000000042d28b000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process opcontrol (pid: 8611, threadinfo ffff88042c0a6000, task ffff88042c532310) Stack: 0000000000000000 0000000000000001 ffff88042c0a7fd8 0000000000000000 ffff88042fd47de8 ffffffff813e897a 0000000000000020 ffff88042fd47d98 0000000000000000 ffff88042c0a7fd8 ffff88042fd47de8 0000000000000074 Call Trace: [] nmi+0x1a/0x20 [] ? bad_to_user+0x25/0x771 <> Code: ff 59 5b 41 5c 41 5d c9 c3 55 65 48 8b 04 25 88 b5 00 00 48 89 e5 41 55 41 54 49 89 fc 53 48 83 ec 08 f6 80 47 e0 ff ff 04 74 04 <0f> 0b eb fe 81 80 44 e0 ff ff 00 00 01 04 65 ff 04 25 c4 0f 01 RIP [] do_nmi+0x22/0x1ee RSP ---[ end trace ed6752185092104b ]--- Kernel panic - not syncing: Fatal exception in interrupt Pid: 8611, comm: opcontrol Tainted: G D 2.6.39-00007-gfe47ae7 #1 Call Trace: [] panic+0x8c/0x188 [] oops_end+0x81/0x8e [] die+0x55/0x5e [] do_trap+0x11c/0x12b [] do_invalid_op+0x91/0x9a [] ? do_nmi+0x22/0x1ee [] ? oprofile_add_sample+0x83/0x95 [] ? op_amd_check_ctrs+0x4f/0x2cf [] invalid_op+0x15/0x20 [] ? do_nmi+0x22/0x1ee [] ? do_nmi+0x67/0x1ee [] nmi+0x1a/0x20 [] ? bad_to_user+0x25/0x771 <> Cc: John Lumby Cc: Maynard Johnson Cc: # .37+ Signed-off-by: Robert Richter commit 1f83812d61de8c09ad6ab6be29e0ebd0817d16f1 Merge: 201fbce 4b8c59a Author: Paul Mundt Date: Wed Jun 15 18:03:58 2011 +0900 Merge branch 'common/serial-rework' into sh-latest commit 1fd8df2c3970c9e7e4e262354154ee39e58bdd7c Author: Masami Hiramatsu Date: Wed Jun 8 16:09:34 2011 +0900 tracing/kprobes: Fix kprobe-tracer to support stack trace Fix to support kernel stack trace correctly on kprobe-tracer. Since the execution path of kprobe-based dynamic events is different from other tracepoint-based events, normal ftrace_trace_stack() doesn't work correctly. To fix that, this introduces ftrace_trace_stack_regs() which traces stack via pt_regs instead of current stack register. e.g. # echo p schedule+4 > /sys/kernel/debug/tracing/kprobe_events # echo 1 > /sys/kernel/debug/tracing/options/stacktrace # echo 1 > /sys/kernel/debug/tracing/events/kprobes/enable # head -n 20 /sys/kernel/debug/tracing/trace bash-2968 [000] 10297.050245: p_schedule_4: (schedule+0x4/0x4ca) bash-2968 [000] 10297.050247: => schedule_timeout => n_tty_read => tty_read => vfs_read => sys_read => system_call_fastpath kworker/0:1-2940 [000] 10297.050265: p_schedule_4: (schedule+0x4/0x4ca) kworker/0:1-2940 [000] 10297.050266: => worker_thread => kthread => kernel_thread_helper sshd-1132 [000] 10297.050365: p_schedule_4: (schedule+0x4/0x4ca) sshd-1132 [000] 10297.050365: => sysret_careful Note: Even with this fix, the first entry will be skipped if the probe is put on the function entry area before the frame pointer is set up (usually, that is 4 bytes (push %bp; mov %sp %bp) on x86), because stack unwinder depends on the frame pointer. Signed-off-by: Masami Hiramatsu Cc: Frederic Weisbecker Cc: yrl.pp-manager.tt@hitachi.com Cc: Peter Zijlstra Cc: Namhyung Kim Link: http://lkml.kernel.org/r/20110608070934.17777.17116.stgit@fedora15 Signed-off-by: Steven Rostedt commit c624d33f61cd05241e85b906311f0b712fdb0f32 Author: Masami Hiramatsu Date: Wed Jun 8 16:09:27 2011 +0900 stack_trace: Add weak save_stack_trace_regs() Add weak symbol of save_stack_trace_regs() as same as save_stack_trace_tsk() since that is not implemented except x86 yet. Signed-off-by: Masami Hiramatsu Cc: Frederic Weisbecker Cc: yrl.pp-manager.tt@hitachi.com Cc: Peter Zijlstra Cc: Namhyung Kim Link: http://lkml.kernel.org/r/20110608070927.17777.37895.stgit@fedora15 Signed-off-by: Steven Rostedt commit 395810627b6a43c8d0ec948884043946fa162308 Author: Masami Hiramatsu Date: Wed Jun 8 16:09:21 2011 +0900 x86: Swap save_stack_trace_regs parameters Swap the 1st and 2nd parameters of save_stack_trace_regs() as same as the parameters of save_stack_trace_tsk(). Signed-off-by: Masami Hiramatsu Cc: yrl.pp-manager.tt@hitachi.com Cc: Frederic Weisbecker Cc: Peter Zijlstra Cc: Namhyung Kim Link: http://lkml.kernel.org/r/20110608070921.17777.31103.stgit@fedora15 Signed-off-by: Steven Rostedt commit d7ec4bfed6c97405c6417970ba06c439e08ab8e3 Author: Vaibhav Nagarnaik Date: Tue Jun 7 17:01:42 2011 -0700 ring-buffer: Set __GFP_NORETRY flag for ring buffer allocating process The tracing ring buffer is allocated from kernel memory. While allocating a large chunk of memory, OOM might happen which destabilizes the system. Thus random processes might get killed during the allocation. This patch adds __GFP_NORETRY flag to the ring buffer allocation calls to make it fail more gracefully if the system will not be able to complete the allocation request. Acked-by: David Rientjes Signed-off-by: Vaibhav Nagarnaik Cc: Ingo Molnar Cc: Frederic Weisbecker Cc: Michael Rubin Cc: David Sharp Link: http://lkml.kernel.org/r/1307491302-9236-1-git-send-email-vnagarnaik@google.com Signed-off-by: Steven Rostedt commit 22fe9b54d859e53bfbbbdc1a0a77a82bc453927c Author: Peter Huewe Date: Tue Jun 7 21:58:27 2011 +0200 tracing: Convert to kstrtoul_from_user This patch replaces the code for getting an unsigned long from a userspace buffer by a simple call to kstroul_from_user. This makes it easier to read and less error prone. Signed-off-by: Peter Huewe Link: http://lkml.kernel.org/r/1307476707-14762-1-git-send-email-peterhuewe@gmx.de Signed-off-by: Steven Rostedt commit 749230b06a753a22f6ed96e5dd60815d6ab12865 Author: Jiri Olsa Date: Fri Jun 3 16:58:51 2011 +0200 tracing, function_graph: Add context-info support for function_graph tracer The function_graph tracer does not follow global context-info option. Adding TRACE_ITER_CONTEXT_INFO trace_flags check to enable it. With following commands: # echo function_graph > ./current_tracer # echo 0 > options/context-info # cat trace This is what it looked like before: # tracer: function_graph # # TIME CPU DURATION FUNCTION CALLS # | | | | | | | | 1) 0.079 us | } /* __vma_link_rb */ 1) 0.056 us | copy_page_range(); 1) | security_vm_enough_memory() { ... This is what it looks like now: # tracer: function_graph # } /* update_ts_time_stats */ timekeeping_max_deferment(); ... Signed-off-by: Jiri Olsa Link: http://lkml.kernel.org/r/1307113131-10045-6-git-send-email-jolsa@redhat.com Signed-off-by: Steven Rostedt commit 199abfab40389963b397c2982222e68ea782b2cf Author: Jiri Olsa Date: Fri Jun 3 16:58:50 2011 +0200 tracing, function_graph: Remove lock-depth from latency trace The lock_depth was removed in commit e6e1e25 tracing: Remove lock_depth from event entry Removing the lock_depth info from function_graph latency header. With following commands: # echo function_graph > ./current_tracer # echo 1 > options/latency-format # cat trace This is what it looked like before: # tracer: function_graph # # function_graph latency trace v1.1.5 on 3.0.0-rc1-tip+ # -------------------------------------------------------------------- # latency: 0 us, #59756/311298, CPU#0 | (M:preempt VP:0, KP:0, SP:0 HP:0 #P:2) # ----------------- # | task: -0 (uid:0 nice:0 policy:0 rt_prio:0) # ----------------- # # _-----=> irqs-off # / _----=> need-resched # | / _---=> hardirq/softirq # || / _--=> preempt-depth # ||| / _-=> lock-depth # |||| / # CPU||||| DURATION FUNCTION CALLS # | ||||| | | | | | | 0) .... 0.068 us | } /* __rcu_read_unlock */ ... This is what it looks like now: # tracer: function_graph # # function_graph latency trace v1.1.5 on 3.0.0-rc1-tip+ # -------------------------------------------------------------------- # latency: 0 us, #59747/1744610, CPU#0 | (M:preempt VP:0, KP:0, SP:0 HP:0 #P:2) # ----------------- # | task: -0 (uid:0 nice:0 policy:0 rt_prio:0) # ----------------- # # _-----=> irqs-off # / _----=> need-resched # | / _---=> hardirq/softirq # || / _--=> preempt-depth # ||| / # CPU|||| DURATION FUNCTION CALLS # | |||| | | | | | | 0) ..s. 1.641 us | } /* __rcu_process_callbacks */ ... Signed-off-by: Jiri Olsa Link: http://lkml.kernel.org/r/1307113131-10045-5-git-send-email-jolsa@redhat.com Signed-off-by: Steven Rostedt commit f56e7f8efb4ec200364f690a9902713410e24d47 Author: Jiri Olsa Date: Fri Jun 3 16:58:49 2011 +0200 tracing, function: Fix trace header to follow context-info option The header display of function tracer does not follow the context-info option, so field names are displayed even if this option is off. Added check for TRACE_ITER_CONTEXT_INFO trace_flags. With following commands: # echo function > ./current_tracer # echo 0 > options/context-info # cat trace This is what it looked like before: # tracer: function # # TASK-PID CPU# TIMESTAMP FUNCTION # | | | | | add_preempt_count <-schedule rcu_note_context_switch <-schedule ... This is what it looks like now: # tracer: function # _raw_spin_unlock_irqrestore <-hrtimer_try_to_cancel ... Signed-off-by: Jiri Olsa Link: http://lkml.kernel.org/r/1307113131-10045-4-git-send-email-jolsa@redhat.com Signed-off-by: Steven Rostedt commit ffeb80fc30acbf6bd51cb47a1815f621a9d017dc Author: Jiri Olsa Date: Fri Jun 3 16:58:48 2011 +0200 tracing, function_graph: Merge overhead and duration display functions Functions print_graph_overhead() and print_graph_duration() displays data for one field - DURATION. I merged them into single function print_graph_duration(), and added a way to display the empty parts of the field. This way the print_graph_irq() function can use this column to display the IRQ signs if needed and the DURATION field details stays inside the print_graph_duration() function. Signed-off-by: Jiri Olsa Link: http://lkml.kernel.org/r/1307113131-10045-3-git-send-email-jolsa@redhat.com Signed-off-by: Steven Rostedt commit 321e68b095addc473ca52ced9acfa59be88f76e6 Author: Jiri Olsa Date: Fri Jun 3 16:58:47 2011 +0200 tracing, function_graph: Remove dependency of abstime and duration fields on latency The display of absolute time and duration fields is based on the latency field. This was added during the irqsoff/wakeup tracers graph support changes. It's causing confusion in what fields will be displayed for the function_graph tracer itself. So I'm removing this depency, and adding absolute time and duration fields to the preemptirqsoff preemptoff irqsoff wakeup tracers. With following commands: # echo function_graph > ./current_tracer # cat trace This is what it looked like before: # tracer: function_graph # # TIME CPU DURATION FUNCTION CALLS # | | | | | | | | 0) 0.068 us | } /* page_add_file_rmap */ 0) | _raw_spin_unlock() { ... This is what it looks like now: # tracer: function_graph # # CPU DURATION FUNCTION CALLS # | | | | | | | 0) 0.068 us | } /* add_preempt_count */ 0) 0.993 us | } /* vfsmount_lock_local_lock */ ... For preemptirqsoff preemptoff irqsoff wakeup tracers, this is what it looked like before: SNIP # _-----=> irqs-off # / _----=> need-resched # | / _---=> hardirq/softirq # || / _--=> preempt-depth # ||| / _-=> lock-depth # |||| / # CPU TASK/PID ||||| DURATION FUNCTION CALLS # | | | ||||| | | | | | | 1) -0 | d..1 0.000 us | acpi_idle_enter_simple(); ... This is what it looks like now: SNIP # # _-----=> irqs-off # / _----=> need-resched # | / _---=> hardirq/softirq # || / _--=> preempt-depth # ||| / # TIME CPU TASK/PID |||| DURATION FUNCTION CALLS # | | | | |||| | | | | | | 19.847735 | 1) -0 | d..1 0.000 us | acpi_idle_enter_simple(); ... Signed-off-by: Jiri Olsa Link: http://lkml.kernel.org/r/1307113131-10045-2-git-send-email-jolsa@redhat.com Signed-off-by: Steven Rostedt commit 84c15027a7f2fbd7f1180d7cbb60e41abbbaedd2 Author: Paul McQuade Date: Tue May 31 20:51:55 2011 +0100 async: Fixed an include coding style issue Added , and Removed . Added KERN_DEBUG to printk() functions. Acked-by: Arjan van de Ven Signed-off-by: Paul McQuade Link: http://lkml.kernel.org/r/4DE596B4.7030904@gmail.com Signed-off-by: Steven Rostedt commit bd38c0e6f98326132a691d73b2056b426423c638 Author: Paul McQuade Date: Tue May 31 20:51:55 2011 +0100 ftrace: Fixed an include coding style issue Removed because was already declared. Braces of struct's coding style fixed. Cc: Frederic Weisbecker Signed-off-by: Paul McQuade Link: http://lkml.kernel.org/r/4DE59711.3090900@gmail.com Signed-off-by: Steven Rostedt commit cf30cf67d6c7592c670ec946d89fc15ee0deb0eb Author: Steven Rostedt Date: Tue Jun 14 22:44:07 2011 -0400 tracing: Add disable_on_free option Add a trace option to disable tracing on free. When this option is set, a write into the free_buffer file will not only shrink the ring buffer down to zero, but it will also disable tracing. Cc: Vaibhav Nagarnaik Signed-off-by: Steven Rostedt commit 4f271a2a60c748599b30bb4dafff30d770439b96 Author: Vaibhav Nagarnaik Date: Mon Jun 13 17:51:57 2011 -0700 tracing: Add a proc file to stop tracing and free buffer The proc file entry buffer_size_kb is used to set the size of tracing buffer. The memory to expand the buffer size is kernel memory. Consider a use case where tracing is handled by a user space utility, which acts as a gate keeper for tracing requests. In an OOM condition, tracing is considered a low priority task and if the utility gets killed the ring buffer memory cannot be released back to the kernel. This patch adds a proc file called "free_buffer" whose purpose is to stop tracing and free up the ring buffer when it is closed. The user space process can then set the desired size in buffer_size_kb file and open the fd to the "free_buffer" file. Under OOM condition, if the process gets killed, the kernel closes the file descriptor. The release handler stops the tracing and releases the kernel memory automatically. Cc: Ingo Molnar Cc: Frederic Weisbecker Cc: Michael Rubin Cc: David Sharp Signed-off-by: Vaibhav Nagarnaik Link: http://lkml.kernel.org/r/1308012717-11148-1-git-send-email-vnagarnaik@google.com Signed-off-by: Steven Rostedt commit 7ea5906405a1f3fc1c0033dfd7e02f2cfd1de5e5 Author: Vaibhav Nagarnaik Date: Tue May 3 17:56:42 2011 -0700 tracing: Use NUMA allocation for per-cpu ring buffer pages The tracing ring buffer is a group of per-cpu ring buffers where allocation and logging is done on a per-cpu basis. The events that are generated on a particular CPU are logged in the corresponding buffer. This is to provide wait-free writes between CPUs and good NUMA node locality while accessing the ring buffer. However, the allocation routines consider NUMA locality only for buffer page metadata and not for the actual buffer page. This causes the pages to be allocated on the NUMA node local to the CPU where the allocation routine is running at the time. This patch fixes the problem by using a NUMA node specific allocation routine so that the pages are allocated from a NUMA node local to the logging CPU. I tested with the getuid_microbench from autotest. It is a simple binary that calls getuid() in a loop and measures the average time for the syscall to complete. The following command was used to test: $ getuid_microbench 1000000 Compared the numbers found on kernel with and without this patch and found that logging latency decreases by 30-50 ns/call. tracing with non-NUMA allocation - 569 ns/call tracing with NUMA allocation - 512 ns/call Signed-off-by: Vaibhav Nagarnaik Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Michael Rubin Cc: David Sharp Link: http://lkml.kernel.org/r/1304470602-20366-1-git-send-email-vnagarnaik@google.com Signed-off-by: Steven Rostedt commit e7e2ee89a9dbf48d70a922d5625cd7320a27cbff Author: Vaibhav Nagarnaik Date: Tue May 10 13:27:21 2011 -0700 tracing: Schedule a delayed work to call wakeup() In using syscall tracing by concurrent processes, the wakeup() that is called in the event commit function causes contention on the spin lock of the waitqueue. I enabled sys_enter_getuid and sys_exit_getuid tracepoints, and by running getuid_microbench from autotest in parallel I found that the contention causes exponential latency increase in the tracing path. The autotest binary getuid_microbench calls getuid() in a tight loop for the given number of iterations and measures the average time required to complete a single invocation of syscall. The patch schedules a delayed work after 2 ms once an event commit calls to wake up the trace wait_queue. This removes the delay caused by contention on spin lock in wakeup() and amortizes the wakeup() calls scheduled over the 2 ms period. In the following example, the script enables the sys_enter_getuid and sys_exit_getuid tracepoints and runs the getuid_microbench in parallel with the given number of processes. The output clearly shows the latency increase caused by contentions. $ ~/getuid.sh 1 1000000 calls in 0.720974253 s (720.974253 ns/call) $ ~/getuid.sh 2 1000000 calls in 1.166457554 s (1166.457554 ns/call) 1000000 calls in 1.168933765 s (1168.933765 ns/call) $ ~/getuid.sh 3 1000000 calls in 1.783827516 s (1783.827516 ns/call) 1000000 calls in 1.795553270 s (1795.553270 ns/call) 1000000 calls in 1.796493376 s (1796.493376 ns/call) $ ~/getuid.sh 4 1000000 calls in 4.483041796 s (4483.041796 ns/call) 1000000 calls in 4.484165388 s (4484.165388 ns/call) 1000000 calls in 4.484850762 s (4484.850762 ns/call) 1000000 calls in 4.485643576 s (4485.643576 ns/call) $ ~/getuid.sh 5 1000000 calls in 6.497521653 s (6497.521653 ns/call) 1000000 calls in 6.502000236 s (6502.000236 ns/call) 1000000 calls in 6.501709115 s (6501.709115 ns/call) 1000000 calls in 6.502124100 s (6502.124100 ns/call) 1000000 calls in 6.502936358 s (6502.936358 ns/call) After the patch, the latencies scale better. 1000000 calls in 0.728720455 s (728.720455 ns/call) 1000000 calls in 0.842782857 s (842.782857 ns/call) 1000000 calls in 0.883803135 s (883.803135 ns/call) 1000000 calls in 0.902077764 s (902.077764 ns/call) 1000000 calls in 0.902838202 s (902.838202 ns/call) 1000000 calls in 0.908896885 s (908.896885 ns/call) 1000000 calls in 0.932523515 s (932.523515 ns/call) 1000000 calls in 0.958009672 s (958.009672 ns/call) 1000000 calls in 0.986188020 s (986.188020 ns/call) 1000000 calls in 0.989771102 s (989.771102 ns/call) 1000000 calls in 0.933518391 s (933.518391 ns/call) 1000000 calls in 0.958897947 s (958.897947 ns/call) 1000000 calls in 1.031038897 s (1031.038897 ns/call) 1000000 calls in 1.089516025 s (1089.516025 ns/call) 1000000 calls in 1.141998347 s (1141.998347 ns/call) Signed-off-by: Vaibhav Nagarnaik Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Michael Rubin Cc: David Sharp Cc: Linus Torvalds Link: http://lkml.kernel.org/r/1305059241-7629-1-git-send-email-vnagarnaik@google.com Signed-off-by: Steven Rostedt commit 0df213ca31f43faf0b1d6c7108e190ff198b42d3 Author: Steven Rostedt Date: Tue Jun 14 20:51:37 2011 -0400 ktest: Require one TEST_START in config file There has been too many times that I put in one too many SKIP TEST_STARTs and start the test with the default randconfig by accident that I added this to have ktest ask the user for which test they want to run if no TEST_START is specified. Now if I accidently start the test with all TEST_STARTs skipped, ktest asks what test do I want to run, and I now have a chance to kill it before it does a make mrproper on my build directory. Signed-off-by: Steven Rostedt commit ddf607e5f853ae172e81e6051e1e12e24ea8a3c6 Author: Steven Rostedt Date: Tue Jun 14 20:49:13 2011 -0400 ktest: Add helper function to avoid duplicate code Several places had the following code: get_grub_index; get_version; install; start_monitor; return monitor; Creating a function "start_monitor_and_boot()" replaces these mulitple uses with a single call. Signed-off-by: Steven Rostedt commit 1990207d538885e678f374e3e79f454c2e6c7383 Author: Steven Rostedt Date: Tue Jun 14 20:46:25 2011 -0400 ktest: Add IGNORE_WARNINGS to ignore warnings in some patches Doing a patchcheck test, there may be warnings that gcc produces which may be OK, and the test should not fail on that commit. By adding a IGNORE_WARNINGS option to list a space delimited SHA1s that are ignored lets the user avoid having the test fail on certain commits. Signed-off-by: Steven Rostedt commit e7b13441895fd0f95c34a004eed364524cca71cb Author: Steven Rostedt Date: Tue Jun 14 20:44:36 2011 -0400 ktest: Fix tar extracting of modules to target The tar command to create the module directory is cjf, but the extraction only had xf. This works on most versions of tar, but some versions of tar require xjf for extraction as well. Signed-off-by: Steven Rostedt commit 4892063043282229c1296d86a2f86989ef30a97c Author: Steven Rostedt Date: Tue Jun 14 20:42:19 2011 -0400 ktest: Have the testing tmp dir include machine name As multiple tests may be executed by the same server, have the test machine name add uniqueness to the value of the temp directory. Otherwise the temp directories may overwrite each other's tests. Signed-off-by: Steven Rostedt commit 0bd6c1a38f57127eeb9444ed74cf5b65f36f563c Author: Steven Rostedt Date: Tue Jun 14 20:39:31 2011 -0400 ktest: Add POST/PRE_BUILD options There are some cases that a patch may be needed to apply to the kernel in patchcheck or bisect tests. Adding a PRE_BUILD option to apply the patch and POST_BUILD to remove it, allows for this to be done easily. Signed-off-by: Steven Rostedt commit 08e6c611123ab499757e4133df7ddc0875c0dccf Author: Kuninori Morimoto Date: Thu Jun 9 16:48:25 2011 +0900 usb: renesas_usbhs: fixup connection fail Sometimes the connection fail happen on renesas_usbhs. This patch fix it up. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 3158c50c33c1acddcfa3c57fab812435aa459750 Author: Vinicius Costa Gomes Date: Tue Jun 14 13:37:42 2011 -0300 Bluetooth: Add key size checks for SMP This patch implements a check in smp cmd pairing request and pairing response to verify if encryption key maximum size is compatible in both slave and master when SMP Pairing is requested. Keys are also masked to the correct negotiated size. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit 5d3de7df18077a0f508ae2c3e3f1866da65fdffd Author: Vinicius Costa Gomes Date: Tue Jun 14 13:37:41 2011 -0300 Bluetooth: Add support for SMP timeout This patch adds support for disconnecting the link when SMP procedure takes more than 30 seconds. SMP begins when either the Pairing Request command is sent or the Pairing Response is received, and it ends when the link is encrypted (or terminated). Vol 3, Part H Section 3.4. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit dcc854579059ff9633db4dc41c681371d22f794e Merge: e73a989 2c53b43 Author: Greg Kroah-Hartman Date: Tue Jun 14 06:51:10 2011 -0700 Merge 3.0-rc2 into usb-linus as it's needed by some USB patches Signed-off-by: Greg Kroah-Hartman commit 0445bdf4ae2a1a3f4ac71ba6c298f3517b9ed238 Author: Liam Girdwood Date: Mon Jun 13 19:37:36 2011 +0100 ASoC: dapm - Refactor widget IO functions in preparation for platform widgets. This time with soc_widget_update_bits reflecting recent soc_update_bits changes. Currently widget IO is tightly coupled to the CODEC drivers. Future platform DSP devices have mixer components that can alter power usage and hence require full DAPM support. This provides a generic widget IO operation wrapper in preparation for future patches that implement platform driver DAPM. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit ab493a0f0f55d28636ac860ea682d57b84257f10 Author: Ohad Ben-Cohen Date: Thu Jun 2 02:48:05 2011 +0300 drivers: iommu: move to a dedicated folder Create a dedicated folder for iommu drivers, and move the base iommu implementation over there. Grouping the various iommu drivers in a single location will help finding similar problems shared by different platforms, so they could be solved once, in the iommu framework, instead of solved differently (or duplicated) in each driver. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Joerg Roedel commit b3c705aa9e9147a30009bdf6ba853aa7fe138e58 Author: Takashi Iwai Date: Tue Jun 14 14:37:06 2011 +0200 ALSA: rawmidi - Use workq for event handling Kill tasklet usage in rawmidi core code. Use workq for the event callback instead of tasklet (which is used only in core/seq/seq_midi.c). Signed-off-by: Takashi Iwai commit 30bdee0259093e114c711943902c834e5c3326c5 Author: Takashi Iwai Date: Tue Jun 14 13:57:02 2011 +0200 ALSA: es1968,maestro3 - Use work for hw-volume control Instead of tasklet, use workq for handling the hw-volume control. This reduces lots of spinlocks. Signed-off-by: Takashi Iwai commit fd4a0286cecd3b1e15771e02bc36bd8494a4a1d8 Author: Oleg Drokin Date: Mon Jun 6 18:57:08 2011 +0000 Remove old-style supply.dev assignments common in hsmmc init CC: Mark Brown CC: Mike Rapoport CC: Nishant Kamat CC: Steve Sakoman CC: Felipe Balbi Signed-off-by: Oleg Drokin Acked-by: Felipe Balbi Signed-off-by: Tony Lindgren commit 786b01a8c1db0c0decca55d660a2a3ebd7cfb26b Author: Oleg Drokin Date: Mon Jun 6 18:57:07 2011 +0000 cleanup regulator supply definitions in mach-omap2 to use REGULATOR_SUPPLY arrays. CC: Mark Brown CC: Mike Rapoport CC: Nishant Kamat CC: Steve Sakoman CC: Felipe Balbi CC: Santosh Shilimkar CC: peter.barada@logicpd.com Signed-off-by: Oleg Drokin Acked-by: Felipe Balbi Signed-off-by: Tony Lindgren commit 71f77580906b60eb43daff0efb99792e76a3d06d Author: Joerg Roedel Date: Thu Jun 9 19:03:15 2011 +0200 x86/amd-iommu: Store device alias as dev_data pointer This finally allows PCI-Device-IDs to be handled by the IOMMU driver that have no corresponding struct device present in the system. Signed-off-by: Joerg Roedel commit 3b03bb745eb9fcafc6ef80fcbd04f0f0512acdc9 Author: Joerg Roedel Date: Thu Jun 9 18:53:25 2011 +0200 x86/amd-iommu: Search for existind dev_data before allocting a new one Search for existing dev_data first will allow to switch dev_data->alias to just store dev_data instead of struct device. Signed-off-by: Joerg Roedel commit 2b02b091ab3d1685926bfc76486bf7a22d92979a Author: Joerg Roedel Date: Thu Jun 9 17:48:39 2011 +0200 x86/amd-iommu: Allow dev_data->alias to be NULL Let dev_data->alias be just NULL if the device has no alias. Signed-off-by: Joerg Roedel commit ec9e79ef062272a119994c4fdd5e434f3e1bf352 Author: Joerg Roedel Date: Thu Jun 9 17:25:50 2011 +0200 x86/amd-iommu: Use only dev_data in low-level domain attach/detach functions With this patch the low-level attach/detach functions only work on dev_data structures. This allows to remove the dev_data->dev pointer. Signed-off-by: Joerg Roedel commit 6c542047937ad66db1d31e290fd2a3b290424ffa Author: Joerg Roedel Date: Thu Jun 9 17:07:31 2011 +0200 x86/amd-iommu: Use only dev_data for dte and iotlb flushing routines This patch make the functions flushing the DTE and IOTLBs only take the dev_data structure instead of the struct device directly. Signed-off-by: Joerg Roedel commit ea61cddb9dcb9da9bcabd40f1620c24abaf645c9 Author: Joerg Roedel Date: Thu Jun 9 12:56:30 2011 +0200 x86/amd-iommu: Store ATS state in dev_data This allows the low-level functions to operate on dev_data exclusivly later. Signed-off-by: Joerg Roedel commit f62dda66b5601396c28b563cc18b481af04a91b3 Author: Joerg Roedel Date: Thu Jun 9 12:55:35 2011 +0200 x86/amd-iommu: Store devid in dev_data This allows to use dev_data independent of struct device later. Signed-off-by: Joerg Roedel commit 8fa5f802abf3cd374b5f07418cea72c5d9d204cc Author: Joerg Roedel Date: Thu Jun 9 12:24:45 2011 +0200 x86/amd-iommu: Introduce global dev_data_list This list keeps all allocated iommu_dev_data structs in a list together. This is needed for instances that have no associated device. Signed-off-by: Joerg Roedel commit 39c555460cbc6d35656878c89d4664fbd6c81551 Author: Joerg Roedel Date: Thu Jun 9 11:52:27 2011 +0200 x86/amd-iommu: Remove redundant device_flush_dte() calls Remove these function calls from places where the function has already been called by another function. Signed-off-by: Joerg Roedel commit 74315cccd2104a953f493acca2c6b0519d6f5c6f Author: Laura Abbott Date: Wed Jun 8 17:29:11 2011 -0400 iommu-api: Add missing header file If CONFIG_IOMMU_API is not defined some functions will just return -ENODEV. Add errno.h for the definition of ENODEV. Signed-off-by: Laura Abbott Signed-off-by: Joerg Roedel commit 4b8c59a3d83e9cf2b65b16999a0c704fc72de056 Author: Paul Mundt Date: Tue Jun 14 17:53:34 2011 +0900 serial: sh-sci: Support generic SCLSR overrun detection. For all ports with a valid SCLSR register we can use the generic FIFO overrun detection logic. Test the validity of the SCLSR register rather than depending explicitly on port type, which can be ambiguous for the SCIFA/B types. Signed-off-by: Paul Mundt commit 169d5a83f687c37104d51cbaa639bdffca8a1cd3 Author: Mark Brown Date: Tue Jun 14 09:51:50 2011 +0100 ASoC: Fix mismerge with release branch Signed-off-by: Mark Brown commit f3b83d71a1b1a1569dba774c3a4f6e2a3b9fef99 Author: Jiri Kosina Date: Mon Jun 13 23:08:18 2011 +0300 HID: add support for MS Digital Media 3000 The Digital Media 3000 keyboard (USB id: 0x0730) features the same 1-5 Application Launch keys that the Natural Ergonomic 4000 has. Add its usb id to the list of quirks. Reported-by: Khelben Blackstaff Signed-off-by: Jiri Kosina commit 323c9dd26b6176fd7f16bcf3202df708c419b20c Author: Jiri Kosina Date: Tue Jun 14 10:40:40 2011 +0200 trivial: don't touch fsi_ssl.c with ioremap fixes This is a partial revert of 28f65c11f2ff ("treewide: Convert uses of struct resource to resource_size(ptr)") as the code is rewritten in the sound tree and thus the change is obsolete. Reported-by: Stephen Rothwell Signed-off-by: Jiri Kosina commit 72b294cf76dcd6d37891387049ddbe3c25043cb8 Author: Paul Mundt Date: Tue Jun 14 17:38:19 2011 +0900 serial: sh-sci: FIFO sizing helper consolidation. This consolidates all of the TX/RX fill/room nonsense in to a single set of fairly heavyweight definitions. The implementation goes in descending order of complexity, testing the register map for capabilities until we run out of options and do it the legacy SCI way. Masks are derived directly from the per-port FIFO size, meaning that platforms with FIFO sizes not matching the standard port types will still need to manually fix them up. This also fixes up a number of issues such as tx_empty being completely bogus for SCI and IrDA ports, some ports using masks smaller or greater than their FIFO size, and so forth. Signed-off-by: Paul Mundt commit 85e4d95da091e35209338962eca232e70819a485 Merge: b028b81 ce1fd36 Author: Takashi Iwai Date: Tue Jun 14 08:56:42 2011 +0200 Merge branch 'test/pci-rename' into topic/misc commit ce1fd36932f230ac1757914b1e99b555c95bae8f Author: Takashi Iwai Date: Tue Jun 14 08:54:14 2011 +0200 ALSA: Update document for using KBUILD_MODNAME Signed-off-by: Takashi Iwai commit b028b81835d7503d68b230446cd5e39d14ff5b9f Author: Harry Butterworth Date: Sat Jun 11 17:41:13 2011 +0800 ALSA: ctxfi: Implement a combined capabilities query method to replace multiple have_x query methods. Signed-off-by: Harry Butterworth Signed-off-by: Takashi Iwai commit 55309216baeb9d7f951520cf8e8bf2337cd17bad Author: Harry Butterworth Date: Sat Jun 11 16:02:06 2011 +0800 ALSA: ctxfi: Add support for Creative Titanium HD Initialise model-specific DAC and ADC parts. Add controls for output and mic source selection. Rename some mixer controls according to ControlNames.txt. Remove Playback switches for Line-in and IEC958-in - these were controlling the input mute/unmute which affected capture too. Use the capture switches to control the input mute/unmute instead - it's less confusing. Initialise the WM8775 to invert the left-right clock to swap the left and right channels of the mic and aux input. Signed-off-by: Harry Butterworth Signed-off-by: Takashi Iwai commit 4d67431f80b1b822f0286afc9123ee453eac7334 Author: David Howells Date: Mon Jun 13 22:33:52 2011 +0100 KEYS: Don't return EAGAIN to keyctl_assume_authority() Don't return EAGAIN to keyctl_assume_authority() to indicate that a key could not be found (ENOKEY is only returned if a negative key is found). Instead return ENOKEY in both cases. Signed-off-by: David Howells Signed-off-by: James Morris commit 61a6976bf19a6cf5dfcf37c3536665b316f22d49 Author: Paul Mundt Date: Tue Jun 14 12:40:19 2011 +0900 serial: sh-sci: Abstract register maps. This takes a bit of a sledgehammer to the horribly CPU subtype ifdef-ridden header and abstracts all of the different register layouts in to distinct types which in turn can be overriden on a per-port basis, or permitted to default to the map matching the port type at probe time. In the process this ultimately fixes up inumerable bugs with mismatches on various CPU types (particularly the legacy ones that were obviously broken years ago and no one noticed) and provides a more tightly coupled and consolidated platform for extending and implementing generic features. Signed-off-by: Paul Mundt commit 6c8f7949931854be360fcc7f008f2672dc17996f Author: Hans Schillstrom Date: Mon Jun 13 12:19:27 2011 +0200 IPVS: remove unused init and cleanup functions. After restructuring, there is some unused or empty functions left to be removed. Signed-off-by: Hans Schillstrom Signed-off-by: Simon Horman commit 552ad65aa58125769c16cf6a105229b259686d25 Author: Hans Schillstrom Date: Mon Jun 13 12:19:26 2011 +0200 IPVS: labels at pos 0 Put goto labels at the beginig of row acording to coding style example. Signed-off-by: Hans Schillstrom Signed-off-by: Simon Horman commit b7c7deeb4c77538577f0b6a724f10ce8693eb648 Author: Neil Horman Date: Mon Jun 13 05:48:30 2011 +0000 vmxnet3: remove unused variable While doing some backporting I noticed that vmxnet3 had a variable that was set but never used. Get rid of it, and stop the compiler from griping Signed-off-by: Neil Horman CC: "VMware, Inc." CC: "David S. Miller" Signed-off-by: Bhavesh Davda Signed-off-by: David S. Miller commit bf0239a98a7378c6a1a6b01701ec5e27591f52ce Author: Peter Pan(潘卫平) Date: Mon Jun 13 04:30:10 2011 +0000 bonding:delete a dereference before check Dan Carpenter found that there was a dereference before a check, added in 56d00c677de0(bonding:delete lacp_fast from ad_bond_info). Signed-off-by: Weiping Pan Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 081b1b1bb27f1f4a3b682f4cf75103108f2066d7 Author: Eric Dumazet Date: Sat Jun 11 22:27:09 2011 +0000 l2tp: fix l2tp_ip_sendmsg() route handling l2tp_ip_sendmsg() in non connected mode incorrectly calls sk_setup_caps(). Subsequent send() calls send data to wrong destination. We can also avoid changing dst refcount in connected mode, using appropriate rcu locking. Once output route lookups can also be done under rcu, sendto() calls wont change dst refcounts too. Signed-off-by: Eric Dumazet CC: James Chapman Signed-off-by: David S. Miller commit ec1d7c9a5e9c136e08a9b1df3109ad5d38d8179c Author: Richard Cochran Date: Sun Jun 12 02:19:07 2011 +0000 smsc9420: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping for the smsc9420. Compile tested only. Cc: Steve Glendinning Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 3e82ce120c6f5036c3c739903e67218fd47cbc4c Author: Richard Cochran Date: Sun Jun 12 02:19:06 2011 +0000 stmmac: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping for the STMicroelectronics Ethernet driver. Compile tested only. Cc: Giuseppe Cavallaro Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 7c4bb9fcaed7148eb25c0cf0997f01971fba21e9 Author: Richard Cochran Date: Sun Jun 12 02:19:05 2011 +0000 r6040: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping for the RDC R6040 Fast Ethernet MAC. Compile tested only. Cc: Florian Fainelli Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 68f51394073b30ef8648f8516d5a7d40c68b1f8a Author: Richard Cochran Date: Sun Jun 12 02:19:04 2011 +0000 ethoc: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping for the OpenCores 10/100 MAC driver. Compile tested only. Cc: Thierry Reding Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit ff9b3078b918480a471b065c36133a144a531038 Author: Richard Cochran Date: Sun Jun 12 02:19:03 2011 +0000 dnet: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping in the "Dave ethernet interface." Compile tested only. Cc: Ilya Yanok Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 2669069aacc914821b45fe14a49e7fe0ba5d10bd Author: Richard Cochran Date: Sun Jun 12 02:19:02 2011 +0000 tg3: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping for the TIGON3 driver. Compile tested only. Cc: Matt Carlson Cc: Michael Chan Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 1ca9495f851d6d41a118ae064002d51afdfd415b Author: Richard Cochran Date: Sun Jun 12 02:19:01 2011 +0000 davinci_emac: enable transmit time stamping. This patch enables software (and phy device) transmit time stamping for the DaVinci EMAC driver. Tested together with the dp83640 PHY. Cc: Anant Gole Cc: Kevin Hilman Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit fb290cdd43463e6be339bfb021aa9a00cdb50ea2 Author: Richard Cochran Date: Sun Jun 12 02:19:00 2011 +0000 davinci_emac: pass ioctls through to phy device. The DaVinci EMAC driver does not implement any ioctls, but still it can pass them through to the phy device. This makes it possible for a phy to offer PHC capabilities. Cc: Anant Gole Cc: Kevin Hilman Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 18a03b9772da749efb8d92bd9893bfe3bd442425 Author: Richard Cochran Date: Sun Jun 12 02:18:59 2011 +0000 fec: enable transmit and receive time stamping. This patch has been tested on the Freescale M5234BCC, which includes the National Semiconductor DP83640 with IEEE 1588 support. Cc: Greg Ungerer Cc: "Uwe Kleine-König" Cc: Shawn Guo Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 1c17216ee5b1902d82b121da2388bd57f49c4b62 Author: Richard Cochran Date: Sun Jun 12 02:18:58 2011 +0000 net: export time stamp utility function for Ethernet MAC drivers The network stack provides the function, skb_clone_tx_timestamp(). Ethernet MAC drivers can call this via the transmit time stamping hook, skb_tx_timestamp(). This commit exports the clone function so that drivers using it can be compiled as modules. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 94ac02726cb87dd569bac4536f33e4b696b692eb Author: Anderson Lizardo Date: Mon Jun 13 15:42:03 2011 -0400 Bluetooth: fix missing parameter for HCI_OP_DISCONNECT The "dc" variable is initialized but not passed to hci_send_cmd(). Signed-off-by: Anderson Lizardo Signed-off-by: Bruna Moreira Signed-off-by: Gustavo F. Padovan commit da85e5e5afeb72bb6e6b5192a2d252861fafc3e7 Author: Vinicius Costa Gomes Date: Thu Jun 9 18:50:53 2011 -0300 Bluetooth: Add support for Pairing features exchange This patch implements a simple version of the SMP Pairing Features exchange procedure (Vol. 3 Part H, Section 2.3.5.1). For now, everything that would cause a Pairing Method different of Just Works to be chosen is rejected. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit b8e66eacab21870d4f800822111c494f9ef291e3 Author: Vinicius Costa Gomes Date: Thu Jun 9 18:50:52 2011 -0300 Bluetooth: Add support for building pairing commands Before we are able to do a proper exchange of pairing parameters, we need a unified way of building pairing requests and responses. For IO Capability we use the value that was set by userspace, using the management interface. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 88167aed0d2e84364c8f0d9e48429c21fc7894c3 Author: Vinicius Costa Gomes Date: Thu Jun 9 18:50:51 2011 -0300 Bluetooth: Update the security level when link is encrypted If the pending security level is greater than the current security level and the link is now encrypted, we should update the link security level. This is only useful for LE links, when the only event generated when SMP is sucessful in the Encrypt Change event. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 7b5c0d5242295a3b52e7161bf129e2f0e8c624cb Author: Vinicius Costa Gomes Date: Thu Jun 9 18:50:50 2011 -0300 Bluetooth: Fix initial security level of LE links As the default security level (BT_SECURITY_SDP) doesn't make sense for LE links, initialize LE links with something that makes sense. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit f1cb9af557dd8fb5d98fbcc4b5d3eb9d6d235af7 Author: Vinicius Costa Gomes Date: Wed Jan 26 21:42:57 2011 -0300 Bluetooth: Add support for resuming socket when SMP is finished This adds support for resuming the user space traffic when SMP negotiation is complete. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 9b3d67405b17d61ba8be9d824222fb410f487b8a Author: Vinicius Costa Gomes Date: Thu Jun 9 18:50:48 2011 -0300 Bluetooth: Remove debug statements Now that these commands are sent to the controller we can use hcidump to verify that the correct values are produced. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit a7a595f675f1b33dc73167147321dba5c4395acc Author: Vinicius Costa Gomes Date: Thu Jun 9 18:50:47 2011 -0300 Bluetooth: Add support for LE Start Encryption This adds support for starting SMP Phase 2 Encryption, when the initial SMP negotiation is successful. This adds the LE Start Encryption and LE Long Term Key Request commands and related events. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 7d24ddcc1140d2f796436e476c8d69469610588b Author: Anderson Briglia Date: Thu Jun 9 18:50:46 2011 -0300 Bluetooth: Add SMP confirmation checks methods This patch includes support for generating and sending the random value used to produce the confirmation value. Signed-off-by: Anderson Briglia Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit f01ead315785768cdb6e928646f90a47640bcdd9 Author: Anderson Briglia Date: Thu Jun 9 18:50:45 2011 -0300 Bluetooth: Add SMP confirmation structs This patch adds initial support for verifying the confirmation value that the remote side has sent. Signed-off-by: Anderson Briglia Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit d22ef0bc83c5a4e7ca9f2791e658dc8949d31ff4 Author: Anderson Briglia Date: Thu Jun 9 18:50:44 2011 -0300 Bluetooth: Add LE SMP Cryptoolbox functions This patch implements SMP crypto functions called ah, c1, s1 and e. It also implements auxiliary functions. All These functions are needed for SMP keys generation. Signed-off-by: Anderson Briglia Signed-off-by: Anderson Lizardo Signed-off-by: Bruna Moreira Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 3a0259bb80cec7595a2d085a150412d23ba28c81 Author: Vinicius Costa Gomes Date: Thu Jun 9 18:50:43 2011 -0300 Bluetooth: Add support for using the crypto subsystem This will allow using the crypto subsystem for encrypting data. As SMP (Security Manager Protocol) is implemented almost entirely on the host side and the crypto module already implements the needed methods (AES-128), it makes sense to use it. There's now a new module option to enable/disable SMP support. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit 88ba43b662b6b944c6278ad81a114fa559807776 Author: Anderson Briglia Date: Thu Jun 9 18:50:42 2011 -0300 Bluetooth: Add simple SMP pairing negotiation This implementation only exchanges SMP messages between the Host and the Remote. No keys are being generated. TK and STK generation will be provided in further patches. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit b501d6a1dc21eb61cbbc54e40780084f5d517164 Author: Anderson Briglia Date: Tue Jun 7 18:46:31 2011 -0300 Bluetooth: Start SMP procedure Start SMP procedure for LE connections. This modification intercepts l2cap received frames and call proper SMP functions to start the SMP procedure. By now, no keys are being used. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit 65fdd5c05a02b15bbfa5b0f4f050fdb25b9227f1 Merge: 2231571 e9c0390 Author: Mark Brown Date: Mon Jun 13 19:21:09 2011 +0100 Merge branch 'for-3.0' into for-3.1 Trival fixup for move of I/O code into separate file. Conflicts: sound/soc/soc-cache.c commit d2f31a5fd60d168b00fc4f7617b68a1287b21e90 Author: Joe Perches Date: Mon Jun 13 20:19:27 2011 +0200 blk-throttle: Make total_nr_queued unsigned The total of two unsigned values should also be unsigned. Update throtl_log output to unsigned. Update total_nr_queued test to non-zero to be the same as the other total_nr_queued tests. Signed-off-by: Joe Perches Acked-by: Vivek Goyal Signed-off-by: Jens Axboe commit fd16d263194aa6b50b215eb593a567b59d744d6e Author: Joe Perches Date: Mon Jun 13 10:42:49 2011 +0200 block: Add __attribute__((format(printf...) and fix fallout Use the compiler to verify format strings and arguments. Fix fallout. Signed-off-by: Joe Perches Signed-off-by: Jens Axboe commit 223157121404a7ca4deaf2aa31a57cad8d133d07 Author: Mark Brown Date: Mon Jun 13 18:44:52 2011 +0100 ASoC: Don't use codec->control_data in bulk write In order to facilitate merging with the register map I/O replace the use of control_data for the bulk writes with direct lookup of the client data from the device. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit eb492e0169974ac6d168f11d1fc1e2753fe1f3b4 Author: Anderson Briglia Date: Thu Jun 9 18:50:40 2011 -0300 Bluetooth: Implement the first SMP commands These simple commands will allow the SMP procedure to be started and terminated with a not supported error. This is the first step toward something useful. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit b569450682e944653f307b47c549ca12150d4596 Author: Gustavo F. Padovan Date: Wed Jun 8 19:09:13 2011 -0300 Bluetooth: Don't forget to check for LE_LINK Otherwise the wrong error can be returned. Signed-off-by: Gustavo F. Padovan commit bf3a9e137cf1a1c664f44acfa36a487f0437f6aa Author: Mark Brown Date: Mon Jun 13 16:42:29 2011 +0100 ASoC: Add weak routes for sidetone style paths Normally DAPM will power up any connected audio path. This is not ideal for sidetone paths as with sidetone paths the audio path is not wanted in itself, it is only desired if the two paths it provides a sidetone between are both active. If the sidetone path causes a power up then it can be hard to minimise pops as we first power up either the sidetone or the main output path and then power the other, with the second power up potentially introducing a DC offset. Address this by introducing the concept of a weak path. If a path is marked as weak then DAPM will ignore that path when walking the graph, though all the relevant controls are still available to the application layer to allow these paths to be configured. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 5bef44f9b4849d1c3af4ed2ea93061ff56e68cd7 Author: Mark Brown Date: Mon Jun 13 17:49:55 2011 +0100 ASoC: Move register I/O code into a separate file For clarity and to help ongoing refactoring in this area create a new file to contain the physical I/O functions, separating them out from the cache operations. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 1a09bcb97ca1b4eb9a6ea381fbc3beb7a9d2895d Author: Gustavo F. Padovan Date: Tue May 17 15:13:19 2011 -0300 Bluetooth: keep reference if any ERTM timer is enabled ERTM use the generic L2CAP timer functions to keep a reference to the channel. This is useful for avoiding crashes. Signed-off-by: Gustavo F. Padovan commit c9b66675373e6edb2dc291562ce1fa05f7980102 Author: Gustavo F. Padovan Date: Tue May 17 14:59:01 2011 -0300 Bluetooth: Make timer functions generic We now plan to use l2cap_set_timer and l2cap_clear_timer in ERTM timers. Signed-off-by: Gustavo F. Padovan commit 71ba0e569bb43ab99a07ccbb514f8b0f732140c3 Author: Gustavo F. Padovan Date: Tue May 17 14:34:52 2011 -0300 Bluetooth: Add refcnt to struct l2cap_chan struct l2cap_chan has now its own refcnt that is compatible with the socket refcnt, i.e., we won't see sk_refcnt = 0 and chan->refcnt > 0. Signed-off-by: Gustavo F. Padovan commit 89bc500e41fc5b48e0573e6b0d927fc97b8951dc Author: Gustavo F. Padovan Date: Fri Jun 3 00:19:47 2011 -0300 Bluetooth: Add state tracking to struct l2cap_chan Now socket state is tracked by struct sock and channel state is tracked by chan->state. At this point both says the same, but this is going to change when we add AMP Support for example. Signed-off-by: Gustavo F. Padovan commit ba3bd0ee3946d9300512e685e8d5573dfa10c060 Author: Gustavo F. Padovan Date: Mon May 16 18:23:24 2011 -0300 Bluetooth: add close() callback to l2cap_chan_ops close() calls l2cap_sock_kill() on l2cap_sock.c Signed-off-by: Gustavo F. Padovan commit 230704942283cb3990584ddd6955ac8decfa6a2c Author: Gustavo F. Padovan Date: Mon May 16 17:57:22 2011 -0300 Bluetooth: add recv() callback to l2cap_chan_ops This abstracts the call to sock_queue_recv_skb() into l2cap_chan_ops->recv(). Signed-off-by: Gustavo F. Padovan commit 80808e431e1ef25856457de82ce141bed6a6313a Author: Gustavo F. Padovan Date: Mon May 16 17:24:37 2011 -0300 Bluetooth: Add l2cap_chan_ops abstraction Add an abstraction layer between L2CAP core and its users (only l2cap_sock.c now). The first function implemented is new_connection() that replaces calls to l2cap_sock_alloc() in l2cap_core.c Signed-off-by: Gustavo F. Padovan commit dc50a06dac61d7ca7ddb3d9bb8921ca5d68f51b6 Author: Gustavo F. Padovan Date: Mon May 16 16:42:01 2011 -0300 Bluetooth: Merge l2cap_chan_create() in the l2cap_sock_alloc() As a first step to remove l2cap_sock_alloc() and l2cap_sock_init() from l2cap_core.c Signed-off-by: Gustavo F. Padovan commit 9857edfd4db0dc879f786e042f24900fd683b0ac Author: Greg Thelen Date: Mon Jun 13 07:45:45 2011 -0700 ALSA: hda: check make_exec_verb() return value If given a -1 cmd parameter then make_exec_verb() returns -1 without setting the res output value. Prior to this change snd_hda_codec_read() assumed that make_exec_verb() unconditionally set res regardless of the cmd value. This change explicitly checks the make_exec_verb() return value before consuming the potentially unset res value. Signed-off-by: Greg Thelen Signed-off-by: Takashi Iwai commit db05cfefce6e6120267974345599760b1d653439 Author: Steven Rostedt Date: Mon Jun 13 11:09:22 2011 -0400 ktest: Allow initrd processing without modules defined When a config is set with CONFIG_MODULES=n, it does not mean that the kernel does not need an initrd to boot. For systems that depend on LVM and such, an initrd must run first. If POST_INSTALL is defined, then run the post install regardless if modules are needed or not. Signed-off-by: Steven Rostedt commit 12610be33df5563d3f8cb141f231d4dc5b2a317f Author: Linus Walleij Date: Mon Jun 13 10:47:15 2011 +0200 gpio/74x164: fix clash with gpiolib namespace The 74x164 GPIO driver has a static inline helper called gpio_to_chip which clashes with the gpiolib namespace if we try to expose the function with the same name from gpiolib, and it's still confusing even if we don't do that. So rename it to gpio_to_74x164_chip(). Reported-by: H Hartley Sweeten Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 23715c3c9a31dd34c8c2f27086a9562e35da423b Author: Steven Rostedt Date: Mon Jun 13 11:03:34 2011 -0400 ktest: Have LOG_FILE evaluate options as well The LOG_FILE variable needs to evaluate the $ options as well. Signed-off-by: Steven Rostedt commit ecaf8e521324d5a7f85976bb8689e248b8d3a2f6 Author: Steven Rostedt Date: Mon Jun 13 10:48:10 2011 -0400 ktest: Have wait on stdio honor bug timeout After a bug is found, the STOP_AFTER_FAILURE timeout is used to determine how much output should be printed before breaking out of the monitor loop. This is to get things like call traces and enough infromation about the bug to help determine what caused it. The STOP_AFTER_FAILURE is usually much shorter than the TIMEOUT that is used to determine when to quit after no more stdio is given. But since the stdio read uses a wait on I/O, the STOP_AFTER_FAILURE is only checked after we get something from I/O. But if the I/O does not return any more data, we wait the TIMEOUT period instead, even though we already triggered a bug report. The wait on I/O should honor the STOP_AFTER_FAILURE time if a bug has been found. Signed-off-by: Steven Rostedt commit fcb3f16a4f4bf4e667ae4c68b1d5401824058efb Author: Steven Rostedt Date: Mon Jun 13 10:40:58 2011 -0400 ktest: Implement our own force min config Using the build KCONFIG_ALLCONFIG environment variable to force the min config may not always work properly. Since ktest is written in perl, it is trivial to read and replace the current config with the configs specified by the min config. Now the min config (and add configs) are read by perl and before a make is done, these configs in the .config file are replaced by the version in the min config. Signed-off-by: Steven Rostedt commit 9064af5206c26ce0d47621fef216b0c43d65d693 Author: Steven Rostedt Date: Mon Jun 13 10:38:48 2011 -0400 ktest: Add TEST_NAME option Searching through several tests, it gets confusing which test result is for which test. By adding the TEST_NAME option, the user can tell which test result belongs to which test. Signed-off-by: Steven Rostedt commit 30f75da5ff475f1f455c0b009f3c06767963c54f Author: Steven Rostedt Date: Mon Jun 13 10:35:35 2011 -0400 ktest: Add CONFIG_BISECT_GOOD option Currently the config_bisect compares the min config with the CONFIG_BISECT config. There may be another config that we know is good that we want to ignore configs on. By passing in this config it will ignore the options that are set in the good config. Note: This only ignores the config, it does not (yet) handle options that are different between the two configs. If the good config has "SLAB" set and the bad config has "SLUB" it will not find the bug if the bug had to do with changing these two options. This is something that I intend to implement in the future. Signed-off-by: Steven Rostedt commit f1a5b96219e3483ab519bed9bb04cc8fadf74816 Author: Steven Rostedt Date: Mon Jun 13 10:30:00 2011 -0400 ktest: Add detection of triple faults When a triple fault happens in a test, no call trace nor panic is displayed. Instead, the system reboots to the good kernel. Since the good kernel may display a boot prompt that matches the success string, ktest may think that the test succeeded, when it did not. Detecting triple faults is tricky because it is hard to generalize what a reboot looks like. The best that we can come up with for now is to examine the Linux banner. If we detect that the Linux banner matches the test we want to test, then look to see if we hit another Linux banner with a different kernel is booted. This can be assumed to be a triple fault. We can't just check for two Linux banners because things like early printk may cause the Linux banner to be displayed twice. Checking for different kernel versions should be the safe bet. If this for some reason detects a false triple boot. A new ktest config option is also created: DETECT_TRIPLE_FAULT This can be set to 0 to disable this checking. Signed-off-by: Steven Rostedt commit cd4f1d536c2b2221d5a80399698d39717bf40077 Author: Steven Rostedt Date: Mon Jun 13 10:26:27 2011 -0400 ktest: Notify reason to break out of monitoring boot Different timeouts can cause the ktest monitor to break out of the loop. It becomes annoying that one does not know the reason why it exited the monitor loop. Display the cause of the reason why the loop was exited. Signed-off-by: Steven Rostedt commit f0c4205b54113463ccb93c9ab064fc630c5c50bd Author: Mark Brown Date: Fri Jun 10 19:42:56 2011 +0100 ASoC: Factor out redundant read() functions We've got a whole bunch of functions which just call straight through to do_hw_read(). Simplify this situation by removing them and using hw_read() directly. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 25eb650a690b95cb0e2cf0c3b03f4900a59e0135 Author: Wanlong Gao Date: Mon Jun 13 17:53:53 2011 +0800 doc: fix wrong arch/i386 references Change all "arch/i386" to "arch/x86" in Documentaion/, since the directory has changed. Also update the files which have changed their filename in the meantime accordingly. Signed-off-by: Wanlong Gao [jkosina@suse.cz: reword changelog] Signed-off-by: Jiri Kosina commit c9e4d87758e95ef9d78a7767e2405ebaf54adcd8 Author: Simon Wood Date: Fri Jun 10 12:00:27 2011 +0200 HID: hid-sony: fix endiannes of Sixaxis accel/gyro values The accelerometers/gyro on the Sixaxis are reported in the wrong endianness (ie. not compatible with HID), so this patch intercepts the report and swaps the appropriate bytes over. Accelerometers are scaled with a nominal value of +/-4000 = 1G, maximum value would be around +/-32768 = 8G. Gyro on my device always reports -32768, might need some calibration set within the controller. Fix extracted from previous patch submission: https://patchwork.kernel.org/patch/95212/ Signed-off-by: Marcin Tolysz Signed-off-by: Simon Wood Signed-off-by: Antonio Ospite Signed-off-by: Jiri Kosina commit 61ab44bebdefab296487e7cd723a634849278827 Author: Simon Wood Date: Fri Jun 10 12:00:26 2011 +0200 HID: hid-sony: amend Sixaxis descriptor to enable accelerometers Modify the HID descriptor of the Sixaxis controller to allow the reporting of the accelerometers and gyro via a joystick axis. Rewrite section from offset 83: -- 0x75, 0x08, /* Report Size (8), */ /* all the other data lumped together */ 0x95, 0x27, /* Report Count (39), */ 0x09, 0x01, /* Usage (Pointer), */ 0x81, 0x02, /* Input (Variable), */ 0x75, 0x08, /* Report Size (8), */ 0x95, 0x30, /* Report Count (48), */ 0x09, 0x01, /* Usage (Pointer), */ /* Note Output */ 0x91, 0x02, /* Output (Variable), */ 0x75, 0x08, /* Report Size (8), */ 0x95, 0x30, /* Report Count (48), */ 0x09, 0x01, /* Usage (Pointer), */ /* Note Feature */ 0xB1, 0x02, /* Feature (Variable), */ -- with -- /* last 2 not used... */ 0x95, 0x13, /* Report Count (19), */ 0x09, 0x01, /* Usage (Pointer), */ 0x81, 0x02, /* Input (Variable), */ /* Padding */ 0x95, 0x0C, /* Report Count (12), */ 0x81, 0x01, /* Input (Constant), */ 0x75, 0x10, /* Report Size (16), */ 0x95, 0x04, /* Report Count (4), */ 0x26, 0xFF, 0x03, /* Logical Maximum (1023), */ 0x46, 0xFF, 0x03, /* Physical Maximum (1023), */ 0x09, 0x01, /* Usage (Pointer), */ 0x81, 0x02, /* Input (Variable), */ -- Signed-off-by: Simon Wood Signed-off-by: Antonio Ospite Signed-off-by: Jiri Kosina commit 901e64dbdb5998b9248c372a401c921bbdf662f6 Author: Stefan Achatz Date: Sun Jun 12 10:02:44 2011 +0200 HID: roccat: fix NULL pointer dereference, add range checks On rare occassions raw events can be triggered before drvdata gets set up which leads to NULL pointer dereferences. This was only observed with pyra on 2.6.39, but is fixed for all devices now to play it save. kovaplus returned wrong actual values when profile change was initiated from host. Added range checks for setting actual profile on all devices. Signed-off-by: Stefan Achatz Signed-off-by: Jiri Kosina commit 1edd5b42a6631b1b1f147e9018e309bde8d96a05 Author: Stefan Achatz Date: Wed Jun 1 15:54:17 2011 +0200 HID: roccat: correction and cleanup of HID feature reports Removed analog feature report enums and modified code in roccat_common to reflect this. Non standard conform Kone got its own copy of the old code. That helps extracting more generalizations for newer devices. Signed-off-by: Stefan Achatz Signed-off-by: Jiri Kosina commit 303f272c1f9f174146fc6c8fe9df614fa3e5825e Author: Stefan Achatz Date: Wed Jun 1 15:54:10 2011 +0200 HID: roccat: chang Kconfig menu to submenu for roccat devices As module roccat is needed by all devices, it's the toplevel menu entry with all devices dependent. Signed-off-by: Stefan Achatz Signed-off-by: Jiri Kosina commit 6d1dec85afa7306e66fff633689ff06195ad079a Author: Stefan Achatz Date: Sun May 29 19:32:57 2011 +0200 HID: roccat: Add "Roccat Talk" support for koneplus Added binary sysfs attribute to support new functionality the manufacturer added to koneplus. Signed-off-by: Stefan Achatz Signed-off-by: Jiri Kosina commit dd7740933842202fccaa9ebcba6bce0507b3f6d6 Author: H Hartley Sweeten Date: Mon Jun 13 11:47:24 2011 +0200 fs/partitions/check.c: make local symbols static The symbols part_ro_show, part_alignment_offset_show, and part_discard_alignment_show are not used outside this file and should be marked static. Signed-off-by: H Hartley Sweeten Cc: Yasuaki Ishimatsu Cc: Alexey Dobriyan Acked-by: Tejun Heo Signed-off-by: Jens Axboe commit 9f5e486550456587348e2048eecda5bee778250a Author: Wanlong Gao Date: Mon Jun 13 10:45:43 2011 +0200 block:remove some spare spaces in genhd.c Remove the end-of-line spaces in genhd.c. Signed-off-by: Wanlong Gao Signed-off-by: Jens Axboe commit 4d0d98b60eba726e0a4f3e6617628b070c444707 Author: Wanlong Gao Date: Mon Jun 13 10:45:38 2011 +0200 block:fix the comment error in blkdev.h There is not a function rq_init but blk_rq_init in block/blk-core.c. Signed-off-by: Wanlong Gao Signed-off-by: Jens Axboe commit 503cf15a5ecc0f3f7a05ffe04c89fb7496100ee7 Author: Hans Schillstrom Date: Sun May 1 18:50:16 2011 +0200 IPVS: rename of netns init and cleanup functions. Make it more clear what the functions does, on request by Julian. Signed-off-by: Hans Schillstrom Signed-off-by: Hans Schillstrom Signed-off-by: Simon Horman commit ed78bec4d6873e8971f56557f8ca3bcda38044ea Author: Hans Schillstrom Date: Fri Jun 10 10:19:09 2011 +0200 IPVS remove unused var from migration to netns Remove variable ctl_key from struct netns_ipvs, it's a leftover from early netns work. Signed-off-by: Hans Schillstrom Signed-off-by: Simon Horman commit 5ab775c7078533de0032fba3619d24e5cb9a6a34 Merge: 8b0bd22 2308f4a Author: Takashi Iwai Date: Mon Jun 13 08:37:53 2011 +0200 Merge branch 'fix/hda' into topic/hda commit c3aa1bd3768e278512f7583ce5f5fe84f466345d Author: Julian Anastasov Date: Mon May 30 00:02:23 2011 +0300 ipvs: support more FTP PASV responses Change the parsing of FTP commands and responses to support skip character. It allows to detect variations in the 227 PASV response. Signed-off-by: Julian Anastasov Signed-off-by: Simon Horman commit c443453c6dc88576db540acc6ef40e1d2869e394 Author: Andrew Murray Date: Thu Jun 9 22:40:10 2011 +0100 bootgraph.pl: relax timing information requirements This patch removes the assumption of the bootgraph.pl script that the timing information reported by PRINTK_TIME will contain at least one entry with a time of less than 100 seconds. Not all boards correctly reset the system timer and in many cases the inital times reported by PRINTK_TIME is high. When this occurs the bootchart.pl script fails to give any useful output. This patch sets the $firsttime variable to the largest value expected by PRINTK_TIME Signed-off-by: Andrew Murray Acked-by: Arjan van de Ven Signed-off-by: Jiri Kosina commit 5523f86beab2b87d42cd58aca9bd5cee5466c6e3 Author: Shawn Guo Date: Sun Jun 12 01:33:29 2011 +0800 gpio/mxc: fix a bug with gpio_get_value calling When calling gpio_get_value, the gpio number other than bit offset should be passed as the argument. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit 8f0ea0fe3a036a47767f9c80e81b13e379a1f43b Author: Eric Dumazet Date: Fri Jun 10 19:45:51 2011 +0000 snmp: reduce percpu needs by 50% SNMP mibs use two percpu arrays, one used in BH context, another in USER context. With increasing number of cpus in machines, and fact that ipv6 uses per network device ipstats_mib, this is consuming a lot of memory if many network devices are registered. commit be281e554e2a (ipv6: reduce per device ICMP mib sizes) shrinked percpu needs for ipv6, but we can reduce memory use a bit more. With recent percpu infrastructure (irqsafe_cpu_inc() ...), we no longer need this BH/USER separation since we can update counters in a single x86 instruction, regardless of the BH/USER context. Other arches than x86 might need to disable irq in their irqsafe_cpu_inc() implementation : If this happens to be a problem, we can make SNMP_ARRAY_SZ arch dependent, but a previous poll ( https://lkml.org/lkml/2011/3/17/174 ) to arch maintainers did not raise strong opposition. Only on 32bit arches, we need to disable BH for 64bit counters updates done from USER context (currently used for IP MIB) This also reduces vmlinux size : 1) x86_64 build $ size vmlinux.before vmlinux.after text data bss dec hex filename 7853650 1293772 1896448 11043870 a8841e vmlinux.before 7850578 1293772 1896448 11040798 a8781e vmlinux.after 2) i386 build $ size vmlinux.before vmlinux.afterpatch text data bss dec hex filename 6039335 635076 3670016 10344427 9dd7eb vmlinux.before 6037342 635076 3670016 10342434 9dd022 vmlinux.afterpatch Signed-off-by: Eric Dumazet CC: Andi Kleen CC: Ingo Molnar CC: Tejun Heo CC: Christoph Lameter CC: Benjamin Herrenschmidt commit 830a9c75514b477994fd3847f72654d3dbdfa5ca Author: Jiri Bohac Date: Fri Jun 10 10:27:20 2011 +0000 bonding: clean up bond_del_vlan() 1) the setting of NETIF_F_VLAN_CHALLENGED in bond_del_vlan() is useless since commit b2a103e6 because bond_fix_features() now sets NETIF_F_VLAN_CHALLENGED whenever the last slave is being removed. 2) the code never triggers anyway as vlan_list is never empty since ad1afb00. Signed-off-by: Jiri Bohac Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 539d3ee6376eba05ebd947c81d097e31a3ee42a8 Author: Alexey Dobriyan Date: Fri Jun 10 03:36:43 2011 +0000 net: fix MIPS fallout from "net: remove interrupt.h inclusion from netdevice.h" Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit eb8a50d9a6118a310c0b01d47091a2a5d994b549 Author: Padmanabh Ratnakar Date: Sat Jun 11 15:58:46 2011 -0700 be2net: Enable NETIF_F_TSO6 for VLAN traffic for BE NETIF_F_TSO6 for VLAN packets was not enabled for BE adapters. Enabling it. Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 10a8d94a95742bb15b4e617ee9884bb4381362be Author: Jason Wang Date: Fri Jun 10 00:56:17 2011 +0000 virtio_net: introduce VIRTIO_NET_HDR_F_DATA_VALID There's no need for the guest to validate the checksum if it have been validated by host nics. So this patch introduces a new flag - VIRTIO_NET_HDR_F_DATA_VALID which is used to bypass the checksum examing in guest. The backend (tap/macvtap) may set this flag when met skbs with CHECKSUM_UNNECESSARY to save cpu utilization. No feature negotiation is needed as old driver just ignore this flag. Iperf shows 12%-30% performance improvement for UDP traffic. For TCP, when gro is on no difference as it produces skb with partial checksum. But when gro is disabled, 20% or even higher improvement could be measured by netperf. Signed-off-by: Jason Wang Acked-by: Michael S. Tsirkin Signed-off-by: David S. Miller commit 40d15cd06e87722b1cc27d56c8274617580f2c56 Author: Ben Dooks Date: Fri Jun 10 00:50:32 2011 +0000 net: DM9000: Add support for byte EEPROM access Given many versions of ethtool's reluctance to do anything other than byte accesses to the EEPROM interface, it is easier to update the driver to support byte accesses so that all the ethtool versions that have been observed in Debian can write the EEPROM. Signed-off-by: Ben Dooks Signed-off-by: Mark Brown Reviewed-by: Ben Hutchings Signed-off-by: David S. Miller commit 6d65e5eee6fc8fa9abef9e78e7e789c2cb06f95c Author: Michio Honda Date: Fri Jun 10 16:42:14 2011 +0900 sctp: kzalloc() error handling on deleting last address Signed-off-by: Michio Honda Acked-by: Wei Yongjun Signed-off-by: David S. Miller commit 69785b79ca9b1acb62098ff059f897bfe59d443f Author: Po-Yu Chuang Date: Wed Jun 8 23:32:48 2011 +0000 net: add Faraday FTGMAC100 Gigabit Ethernet driver FTGMAC100 Ethernet Media Access Controller supports 10/100/1000 Mbps and MII/GMII. This driver has been working on some ARM/NDS32 SoC's including Faraday A369 and Andes AG102. Signed-off-by: Po-Yu Chuang Signed-off-by: David S. Miller commit ac752277961c0aba08ba7b33e7c93a56f711cef9 Author: Geert Uytterhoeven Date: Sat Jun 11 14:58:17 2011 -0700 net/m68k: Include where needed arch/m68k/emu/nfeth.c: In function ‘nfeth_init’: arch/m68k/emu/nfeth.c:243: error: implicit declaration of function ‘request_irq’ arch/m68k/emu/nfeth.c:243: error: ‘IRQF_SHARED’ undeclared (first use in this function) arch/m68k/emu/nfeth.c:243: error: (Each undeclared identifier is reported only once arch/m68k/emu/nfeth.c:243: error: for each function it appears in.) arch/m68k/emu/nfeth.c: In function ‘nfeth_cleanup’: arch/m68k/emu/nfeth.c:266: error: implicit declaration of function ‘free_irq’ drivers/net/apne.c: In function ‘apne_probe’: drivers/net/apne.c:189: error: implicit declaration of function ‘free_irq’ drivers/net/apne.c: In function ‘apne_probe1’: drivers/net/apne.c:317: error: implicit declaration of function ‘request_irq’ drivers/net/apne.c:317: error: ‘IRQF_SHARED’ undeclared (first use in this function) drivers/net/apne.c:317: error: (Each undeclared identifier is reported only once drivers/net/apne.c:317: error: for each function it appears in.) Introduced by commit a6b7a407865a ("net: remove interrupt.h inclusion from netdevice.h"). Include in the individual drivers to fix the build. Signed-off-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit b2ea345eab568062b321bcd3b8d72f14c93dbb63 Author: Wey-Yi Guy Date: Tue Jun 7 08:53:14 2011 -0700 iwlagn: Sanity check for valid context Check EEPROM for multiple contexts support Signed-off-by: Wey-Yi Guy commit 4f0642a6665d1f4dbf8ef472dd5620e7585357b9 Author: Wey-Yi Guy Date: Mon Jun 6 16:28:54 2011 -0700 iwlagn: Sanity check for 11n capability Make sure when we say 11n enable, we really support it. Signed-off-by: Wey-Yi Guy commit 1f8bf0396ae7e63648b210fd197b1a5ab0db51bf Author: Wey-Yi Guy Date: Mon Jun 6 14:26:43 2011 -0700 iwlagn: merge duplicated code into single place Multiple places have similar code to construct calib header. Merge into single inline function. Signed-off-by: Wey-Yi Guy commit 109a0ac5d8ed35914f5ce5c6d36244c08963c6cb Author: Wey-Yi Guy Date: Mon Jun 6 14:26:42 2011 -0700 iwlagn: group similar defines together No functional changes, just group similar defines together Signed-off-by: Wey-Yi Guy commit 8d8854d983ab7217d322269c9bd17c1f8c481ae8 Author: Wey-Yi Guy Date: Mon Jun 6 14:26:41 2011 -0700 iwlagn: generic temperature location in EEPROM Temperature location in EEPROM is generic to all devices Signed-off-by: Wey-Yi Guy commit bf300252baa383065851e2ed6af41e5f9735fe9c Author: Wey-Yi Guy Date: Mon Jun 6 14:26:40 2011 -0700 iwlagn: remove unused debug flag Remove both IWL_DEBUG_TXPOWER and IWL_DEBUG_NOTIF, not used. Signed-off-by: Wey-Yi Guy commit 06bb83589c4feac9bbb8d0d27d72f9d346f770c0 Author: Wey-Yi Guy Date: Mon Jun 6 14:26:38 2011 -0700 iwlagn: use IWL_DEBUG_FW for firmware related debug msg Instead use generic IWL_DEBUG_INFO, use IWL_DEBUG_FW for uCode related stuffs. Signed-off-by: Wey-Yi Guy commit f38f884b3b291c895d1033f02e351532d1d3f1dc Author: Wey-Yi Guy Date: Mon Jun 6 14:26:39 2011 -0700 iwlagn: use IWL_DEBUG_TEMP for temperature related debug Instead of IWL_DEBUG_POWER, IWL_DEBUG_TEMP should be used for temperature related debug messages Signed-off-by: Wey-Yi Guy commit fa7f1413ed93a662839460e90dd6a5d045df2c03 Author: Wey-Yi Guy Date: Mon Jun 6 12:49:25 2011 -0700 iwlagn: add debug message for coex related activities Adding dedicated debug message for coex related activities Signed-off-by: Wey-Yi Guy commit ebbb491e8efac3c0a6f880f676374fc1605469f5 Author: Wey-Yi Guy Date: Mon Jun 6 12:49:24 2011 -0700 iwlagn: add coex debug flag Replace IWL_DEBUG_AP with IWL_DEBUG_COEX for debug COEX related stuffs Signed-off-by: Wey-Yi Guy commit 8895075886bbcfdab6ad7923ae8ab3b3314549c4 Author: Wey-Yi Guy Date: Mon Jun 6 12:05:46 2011 -0700 iwlagn: use sku capabilities information from EEPROM Instead of having the separated define, use the sku capabilities in EEPROM Signed-off-by: Wey-Yi Guy commit 052692976e40bc124a8615ec880dd83046d71c24 Author: Wey-Yi Guy Date: Mon Jun 6 12:05:45 2011 -0700 iwlagn: Band capabilities in EEPROM Add define for band capabilities in EEPROM Signed-off-by: Wey-Yi Guy commit 872907bb17fe2d8d01d0e9723f72f91cb4ea103f Author: Johannes Berg Date: Mon Jun 6 09:41:15 2011 -0700 iwlagn: don't check ucode subtype The ucode subtypes keep changing, and there's no particular reason to be checking them (other than a paranoid sanity check). Since the numbers are also in conflict between different ucode images now, simply don't check them any more and rely on the images being built correctly. Also, to indicate that, rename the constants and the enum, moving it to a different file. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 3f1e5f4a2b0993b6e81b5665b28568624f581b0f Author: Wey-Yi Guy Date: Fri Jun 3 13:52:40 2011 -0700 iwlagn: move no_sleep_autoadjust as part of iwlagn_mod_params Move no_sleep_autoadjust module parameter into iwlagn_mod_params structure along with all the other iwlagn module parameters Signed-off-by: Wey-Yi Guy commit 6b0184c4c62beb15443fd6dd5080f0e18941b67b Author: Wey-Yi Guy Date: Fri Jun 3 13:52:39 2011 -0700 iwlagn: move led_mode as part of iwlagn_mod_params Move led_mode module parameter into iwlagn_mod_params structure along with all the other iwlagn module parameters Signed-off-by: Wey-Yi Guy commit b60eec9bf07307ad40e9304d39eb9107acb2fb0c Author: Wey-Yi Guy Date: Fri Jun 3 13:52:38 2011 -0700 iwlagn: move bt_coex_active as part of iwlagn_mod_params Move bt_coex_active module parameter into iwlagn_mod_params structure along with all the other iwlagn module parameters Signed-off-by: Wey-Yi Guy commit eb64dca0c9d73e191026ed37d1075f22e48b3f1c Author: Wey-Yi Guy Date: Tue May 31 08:03:02 2011 -0700 iwlagn: add dumpit support for testmode trace function For testmode trace function, huge amout of data need to pass to userspace. Use the build-in nl80211 dumpt it function Require nl80211 testmode dumpit support patch. Signed-off-by: Wey-Yi Guy commit 49b72100165e3b2046be15a8e4f766f5169e708d Author: Wey-Yi Guy Date: Mon May 30 10:29:37 2011 -0700 iwlagn: usersapce application decide the size of trace buffer For testmode trace function, allow userspace application to request the size of trace buffer. Signed-off-by: Wey-Yi Guy commit 8e2943c04c74e537c762c09bcea89e923510a9ac Author: Joe Perches Date: Fri Jun 10 18:11:25 2011 -0700 spi: Convert uses of struct resource * to resource_size(ptr) Done via coccinelle scripts like: @@ struct resource *ptr; @@ - ptr->end - ptr->start + 1 + resource_size(ptr) and some grep and typing. Mostly uncompiled, no cross-compilers. Signed-off-by: Joe Perches Signed-off-by: Grant Likely commit 27810c5e7f8f2ddf036c16b5e40fd22abdc041f9 Author: Joe Perches Date: Fri Jun 10 18:16:15 2011 -0700 gpio/vr41xx: Convert use of struct resource to resource_size(ptr) Remove miscellaneous use of direct calculation by using resource_size(). Signed-off-by: Joe Perches Signed-off-by: Grant Likely commit b57e3c2692b04ac0b2f14bb94c63291fad1d7309 Author: H Hartley Sweeten Date: Fri Jun 10 09:08:17 2011 -0700 gpio/ep93xx: Add missing EP93XX_GPIO_PHYS_BASE define The patch to convert of the ep93xx gpio driver to a platform_driver is missing the define for the memory resource that is passed to the driver. This is needed to prevent a build error. Signed-off-by: H Hartley Sweeten Signed-off-by: Grant Likely commit 7101f4043cdaa5dc2bf8974313744246f3955de7 Author: Larry Finger Date: Fri Jun 10 11:05:23 2011 -0500 rtlwifi: Fix warnings on parisc arch In "Build regressions/improvements in v3.0-rc2", Geert Uytterhoeven reports a number of warnings that occur for parisc builds of rtlwifi and dependents. Reported-by: Geert Uytterhoeven Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit e3ae0cac00042d7fb76914c30c5f991f918e65b4 Author: Arend van Spriel Date: Thu Jun 9 20:07:20 2011 +0200 drivers: bcma: export bcma_core_disable() function In the brcm80211 driver we disable the 80211 core when the driver is 'down'. The bcma_core_disable() function exactly does the same as our implementation so exporting this function makes sense. Cc: linux-wireless@vger.kernel.org Cc: Rafal Milecki Signed-off-by: Arend van Spriel Signed-off-by: John W. Linville commit 5b49b35a671e59c16c33611ea2d5650438388663 Author: Dan Carpenter Date: Thu Jun 9 10:09:34 2011 +0300 b43: check for allocation failures Add some error handling if the allocation fails. Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit 287546df342daaa146c840ce26b3ed012a055de5 Author: Amitkumar Karwar Date: Wed Jun 8 20:39:20 2011 +0530 mwifiex: get rid of global adapter pointer 1) Avoid global adapter pointer usage a) in sdio.c by moving some code from mwifiex_cleanup_module() to mwifiex_sdio_remove(). b) in main.c by passing an extra parameter to few functions. 2) Add new variable "user_rmmod" to identify if mwifiex_sdio_remove() callback function is called in card removal or rmmod context. These code changes are adapted from Libertas driver. 3) Remove unnecessary NULL pointer check for "func" pointer in mwifiex_sdio_remove(). Signed-off-by: Amitkumar Karwar Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 7f1f974251493d3929ebd422796e6f9f2bcd6956 Author: Stanislaw Gruszka Date: Wed Jun 8 15:28:29 2011 +0200 iwlegacy: refactor iwl4965_mac_channel_switch Use less indentions and remove uneeded irq-save flags. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 0d01550f3dec4efc8e88bdefb27b9fa7522603f7 Author: Stanislaw Gruszka Date: Wed Jun 8 15:28:28 2011 +0200 iwlegacy: remove unused agg_tids_count Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 1ba2f121f9e1d98dd838644f76fa23837dd28913 Author: Stanislaw Gruszka Date: Wed Jun 8 15:28:27 2011 +0200 iwlegacy: remove firmware event log Messages like that iwl4965 0000:03:00.0: Start IWL Event Log Dump: display last 20 entries iwl4965 0000:03:00.0: EVT_LOGT:1821445332:0x00000000:1352 iwl4965 0000:03:00.0: EVT_LOGT:1821445332:0x00000001:1353 iwl4965 0000:03:00.0: EVT_LOGT:1821445336:0x0000000c:0357 iwl4965 0000:03:00.0: EVT_LOGT:1821445533:0x00000107:0106 iwl4965 0000:03:00.0: EVT_LOGT:1821445534:0x00000000:0302 iwl4965 0000:03:00.0: EVT_LOGT:1821445574:0x000000d4:0321 iwl4965 0000:03:00.0: EVT_LOGT:1821445575:0x00000000:1350 iwl4965 0000:03:00.0: EVT_LOGT:1821445576:0x00000000:1351 iwl4965 0000:03:00.0: EVT_LOGT:1821445576:0x00000000:1352 iwl4965 0000:03:00.0: EVT_LOGT:1821445577:0x00000001:1353 iwl4965 0000:03:00.0: EVT_LOGT:1821445581:0x0000000d:0357 iwl4965 0000:03:00.0: EVT_LOGT:1821446327:0x00000107:0106 iwl4965 0000:03:00.0: EVT_LOGT:1821446328:0x00000000:0302 iwl4965 0000:03:00.0: EVT_LOGT:1821446368:0x000000d4:0321 iwl4965 0000:03:00.0: EVT_LOGT:1821446369:0x00000000:1350 iwl4965 0000:03:00.0: EVT_LOGT:1821446370:0x00000000:1351 iwl4965 0000:03:00.0: EVT_LOGT:1821446370:0x00000000:1352 iwl4965 0000:03:00.0: EVT_LOGT:1821446371:0x00000001:1353 iwl4965 0000:03:00.0: EVT_LOGT:1821446375:0x0000000e:0357 iwl4965 0000:03:00.0: EVT_LOGT:1821446383:0x00000000:0125 are completely useless for me. Remove bunch of code that generate them. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit dd6d2a8aef69cfef8acf1ff7ebb22a763c9ba56f Author: Stanislaw Gruszka Date: Wed Jun 8 15:28:26 2011 +0200 iwlegacy: remove reset rf infrastructure We do not reset radio anymore, hence don't need that code too. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit ecaee0ff07d429a8571ea015c00a211c17a86494 Author: Stanislaw Gruszka Date: Wed Jun 8 15:28:25 2011 +0200 iwlegacy: remove recover from statistics Recover from statistics code was added during 6xxx devices development, I don't think is needed on old devices. Also it is suspicious to cause random, unreproducible microcode errors and hangs. So remove it. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 3c09b174da3de867e61c4dcca765417a98ba961e Author: Stanislaw Gruszka Date: Wed Jun 8 15:28:24 2011 +0200 iwlegacy: remove unused power commands defines Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 9a821f5d0fc36425e95f0f4ade4bbca8f0ebff4d Author: Daniel Drake Date: Tue Jun 7 18:15:57 2011 +0100 libertas: add sd8686 reset_card support At http://dev.laptop.org/ticket/10748 we are seeing a case of the libertas firmware randomly stopping responding to commands after resume. Careful monitoring of communications indicates a firmware or hardware bug, which has been reported to Marvell. Work around this issue by adding a reset_card method; this is automatically called when command timeouts are detected and provides an instant recovery to this situation. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 43a1c2721acd792aea370ee68ef054e18c944373 Author: Vincent Zweije Date: Tue Jun 7 16:37:09 2011 +0200 networking: fix warning about unused label wake_up Function ieee80211_reconfig in net/mac80211/util.c contains label wake_up which is defined unconditionally, but only used with CONFIG_PM. Gcc warns about this when CONFIG_PM is not defined. This patch makes the label's definition dependent on CONFIG_PM too, eliminating the warning. The issue was apparently introduced in git commit eecc48000afe2ca6da22122d553b7cad294e42fc. Signed-off-by: Vincent Zweije Signed-off-by: John W. Linville commit 323222b5ff930a43eab45cec6e58345740fa2a29 Author: Paul Stewart Date: Wed Jun 8 05:52:52 2011 -0700 cfg80211: Ignore downstream DEAUTH for authtry_bsses Downsteram DEAUTH messages do not refer to a current authentication attempt -- AUTH responses do. Therefore we should not allow DEAUTH from an AP to void state for an AUTH attempt in progress. Signed-off-by: Paul Stewart Signed-off-by: John W. Linville commit fd854772c11d6ad0377f0b613142e397bec58a3a Author: Mike McCormack Date: Mon Jun 6 23:13:06 2011 +0900 rtlwifi: Factor out code to receive one packet Signed-off-by: Mike McCormack Signed-off-by: John W. Linville commit 14058adddd4fd40e45c434c801e8ed8baf09251e Author: Mike McCormack Date: Mon Jun 6 23:12:53 2011 +0900 rtlwifi: Free skb in one place Signed-off-by: Mike McCormack Signed-off-by: John W. Linville commit 8db8ddf13dda0fc96937bcb6e10563e7b9a20387 Author: Mike McCormack Date: Mon Jun 6 23:12:42 2011 +0900 rtlwifi: Resubmit skbs with bad CRC early Once we realize a bad packet was received, don't waste time unmapping it, freeing it, then allocation a new skb and mapping it, just resubmit the existing skb. Signed-off-by: Mike McCormack Signed-off-by: John W. Linville commit 2c333366a4ec1f4cdbaec285ba448d5943df8ffd Author: Mike McCormack Date: Mon Jun 6 23:12:08 2011 +0900 rtlwifi: Remove unnecessary indent Signed-off-by: Mike McCormack Signed-off-by: John W. Linville commit 1d34d108e07680e2c07847d5e69a334cb4f96ab3 Author: Eliad Peller Date: Mon Jun 6 12:59:29 2011 +0300 mac80211: add ieee80211_get_operstate() function Add ieee80211_get_operstate() function to get the operstate of the netdevice. This is needed for drivers that need to know when the interface is IF_OPER_UP (e.g. wl12xx), and block notifiers can't be used (e.g. because the interface is already IF_OPER_UP, like after resuming from suspend) Signed-off-by: Eliad Peller Signed-off-by: John W. Linville commit c48b1f729a75880d0895f0b23efaf551ee800a35 Merge: 448f262 51e6525 Author: John W. Linville Date: Fri Jun 10 14:26:12 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-agn-rxon.c drivers/net/wireless/rtlwifi/pci.c commit 21f07f4f5718449c85c29827ff6fb0cf35a6c96e Author: Thomas Gleixner Date: Thu Jun 9 23:08:47 2011 +0200 i8253: Export i8253_lock unconditionally We don't want to add endless selects and module ifdefs. Reported-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 934c2b6d0cb50f9014ba0f10241e062a3bfc462d Author: Takashi Iwai Date: Fri Jun 10 16:36:37 2011 +0200 ALSA: use KBUILD_MODNAME for request_irq argument in sound/pci/* The name argument of request_irq() appears in /proc/interrupts, and it's quite ugly when the name entry contains a space or special letters. In general, it's simpler and more readable when the module name appears there, so let's replace all entries with KBUILD_MODNAME. Signed-off-by: Takashi Iwai commit 3733e424c4fcd8edff2090f0628f4fd245daddb5 Author: Takashi Iwai Date: Fri Jun 10 16:20:20 2011 +0200 ALSA: Use KBUILD_MODNAME for pci_driver.name entries The convention for pci_driver.name entry in kernel drivers seem to be the module name or equivalent ones. But, so far, almost all PCI sound drivers use more verbose name like "ABC Xyz (12)", and these are fairly confusing when appearing as a file name. This patch converts the all pci_driver.name entries in sound/pci/* to use KBUILD_MODNAME for more unified appearance. Signed-off-by: Takashi Iwai commit e8f7c70f44f75c827c04239b0ae5f0068b65b76e Author: Frederic Weisbecker Date: Wed Jun 8 01:51:02 2011 +0200 sched: Make sleeping inside spinlock detection working in !CONFIG_PREEMPT Select CONFIG_PREEMPT_COUNT when we enable the sleeping inside spinlock detection, so that the preempt offset gets correctly incremented/decremented from preempt_disable()/preempt_enable(). This makes the preempt count eventually working in !CONFIG_PREEMPT when that debug option is set and thus fixes the detection of explicit preemption disabled sections under such config. Code that sleeps in explicitly preempt disabled section can be finally spotted in non-preemptible kernels. Signed-off-by: Frederic Weisbecker Acked-by: Paul E. McKenney Cc: Ingo Molnar Cc: Peter Zijlstra commit bdd4e85dc36cdbcfc1608a5b2a17c80a9db8986a Author: Frederic Weisbecker Date: Wed Jun 8 01:13:27 2011 +0200 sched: Isolate preempt counting in its own config option Create a new CONFIG_PREEMPT_COUNT that handles the inc/dec of preempt count offset independently. So that the offset can be updated by preempt_disable() and preempt_enable() even without the need for CONFIG_PREEMPT beeing set. This prepares to make CONFIG_DEBUG_SPINLOCK_SLEEP working with !CONFIG_PREEMPT where it currently doesn't detect code that sleeps inside explicit preemption disabled sections. Signed-off-by: Frederic Weisbecker Acked-by: Paul E. McKenney Cc: Ingo Molnar Cc: Peter Zijlstra commit 8b0bd2266f9f8f7e7f192f2a5be164d7f637ce45 Author: Takashi Iwai Date: Fri Jun 10 14:56:26 2011 +0200 ALSA: hda - Fix SSYNC register value for non-Intel controllers SSYNC register was once defined as 0x34-37 in the old Intel datasheet, but corrected later to 0x38-3b. For fixing the register usage, a new bit-flag is introduced for indicating the old ICH SSYNC register, and ICH* PCI entries are added explicitly to enable this quirk. Signed-off-by: Takashi Iwai commit 28f65c11f2ffb3957259dece647a24f8ad2e241b Author: Joe Perches Date: Thu Jun 9 09:13:32 2011 -0700 treewide: Convert uses of struct resource to resource_size(ptr) Several fixes as well where the +1 was missing. Done via coccinelle scripts like: @@ struct resource *ptr; @@ - ptr->end - ptr->start + 1 + resource_size(ptr) and some grep and typing. Mostly uncompiled, no cross-compilers. Signed-off-by: Joe Perches Signed-off-by: Jiri Kosina commit 140a1ef2f91a00e1d25f0878c193abdc25bf6ebe Author: Michael Witten Date: Fri Jun 10 03:57:26 2011 +0000 mm Kconfig typo: cleancacne -> cleancache Signed-off-by: Michael Witten Signed-off-by: Jiri Kosina commit 5be5758c114b18260c6fd4c8373bf89e39b0fe82 Merge: 71f66a6 7f45e5c Author: Jiri Kosina Date: Fri Jun 10 14:46:48 2011 +0200 Merge branch 'master' into for-next Sync with Linus' tree to be able to apply patches against new code I have in queue. commit 695cd4a34e4e02486e35d3c8e0ee85581a619357 Author: Takashi Iwai Date: Fri Jun 10 14:37:04 2011 +0200 ALSA: hda - Disable SPDIF only when no pin config set for HP with AD1981 Some HP laptops with AD1981 have SPDIF connections, but currently the driver disables it statically. Better to check the pin default config to judge whether to enable or disable the SPDIF. Signed-off-by: Takashi Iwai commit f192c0ab2420aa59d6fae26564b14adf97456063 Author: Naveen Krishna Chatradhi Date: Fri Jun 10 12:04:27 2011 +0530 ASoC: SMDKV310: Enable SPDIF device Signed-off-by: Naveen Krishna Chatradhi Acked-by: Jassi Brar Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 0f28f8e567e2fea12fa273e2e904bf3405570553 Merge: 2f2b3cf 3319550 Author: Mark Brown Date: Fri Jun 10 11:03:54 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit 2f2b3cf1dddf959be127bff39d0e75a52091f93d Author: Uwe Kleine-König Date: Fri Jun 10 00:41:48 2011 +0200 sound/atmel_ssc_dai: add a missing space to an error message Signed-off-by: Uwe Kleine-König Acked-by: Nicolas Ferre Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a18711120764dd96ed2ee6a4d436c448542bad77 Author: Eric Anholt Date: Tue Mar 29 16:59:55 2011 -0700 drm/i915: Use the LLC mode on gen6 for everything but display. Improves full-screen openarena on my laptop 20.3% +/- 4.0% (n=3) Improves 800x600 nexuiz on my laptop 12.3% +/- 0.1% (n=3) We have more room to improve with doing LLC caching for display using GFDT, and in doing LLC+MLC caching, but this was an easy performance win and incremental improvement toward those two. Signed-off-by: Eric Anholt Signed-off-by: Chris Wilson Reviewed-by: Daniel Vetter commit a7ef0640d984e265393a76aa08a09febd3e7ce34 Author: Eric Anholt Date: Tue Mar 29 16:59:54 2011 -0700 drm/i915: Use the uncached domain for the display planes The simplest and common method for ensuring scanout coherency on all chipsets is to mark the scanout buffers as uncached (and for userspace to remember to flush the render cache every so often). We can improve upon this for later generations by marking scanout objects as GFDT and only flush those cachelines when required. However, we start simple. [v2: Move the set to uncached above the clflush. Otherwise, we'd skip the clflush and try to scan out data that was still sitting in the cache.] Signed-off-by: Eric Anholt Signed-off-by: Chris Wilson Reviewed-by: Daniel Vetter commit 2da3b9b940e2a18147422c54ed8b29d01e1ade88 Author: Chris Wilson Date: Thu Apr 14 09:41:17 2011 +0100 drm/i915: Combine pinning with setting to the display plane We need to perform a few operations in order to move the object into the display plane (where it can be accessed coherently by the display engine) that are important for future safety to forbid whilst pinned. As a result, we want to need to perform some of the operations before pinning, but some are required once we have been bound into the GTT. So combine the pinning performed by all the callers with set_to_display_plane(), so this complication is contained within the single function. Signed-off-by: Chris Wilson Reviewed-by: Daniel Vetter commit c411964209508e32cf36f6512ed339996751f55f Author: Chris Wilson Date: Tue Mar 29 16:59:51 2011 -0700 drm/i915: Mark the cursor and the overlay as being part of the display planes Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt Reviewed-by: Daniel Vetter commit e4ffd173a1c2f96b43127c2537dd99d89e759bba Author: Chris Wilson Date: Mon Apr 4 09:44:39 2011 +0100 drm/i915: Add an interface to dynamically change the cache level [anholt v2: Don't forget that when going from cached to uncached, we haven't been tracking the write domain from the CPU perspective, since we haven't needed it for GPU coherency.] [ickle v3: We also need to make sure we relinquish any fences on older chipsets and clear the GTT for sane domain tracking.] Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt Reviewed-by: Daniel Vetter commit d5bd144959e639443f387c34989cec7c9efff091 Author: Chris Wilson Date: Thu Apr 14 06:48:26 2011 +0100 drm/i915/gtt: Split out i915_gem_gtt_rebind_object() ... in preparation for changing the cache level (and thus the flags upon the PTEs) dynamically. Signed-off-by: Chris Wilson Reviewed-by: Daniel Vetter commit b5ffc9bc38a4766d586c3aca6830ed2bd6952e5b Author: Chris Wilson Date: Wed Apr 13 22:06:03 2011 +0100 drm/i915: Introduce i915_gem_object_finish_gtt() Like its siblings finish_gpu(), this function clears the object from the GTT domain forcing it to be trigger a domain invalidation should we ever need to use via the GTT again. Note that the most important side-effect of finishing the GTT domain (aside from clearing the tracking read/write domains) is that it imposes an memory barrier so that all accesses are complete before it returns, which is important if you intend to be modifying translation tables shortly afterwards. The second most important side-effect is that it tears down the GTT mappings forcing a page-fault and invalidation on next user access to the object. Signed-off-by: Chris Wilson Reviewed-by: Daniel Vetter commit 1057c42747ebf4d1cbaa2ab6125b92914b8ec622 Author: Greg Rose Date: Thu May 19 02:11:45 2011 +0000 ixgbevf: Update the driver string Signed-off-by: Greg Rose Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit c7ac8679bec9397afe8918f788cbcef88c38da54 Author: Greg Rose Date: Fri Jun 10 01:27:09 2011 +0000 rtnetlink: Compute and store minimum ifinfo dump size The message size allocated for rtnl ifinfo dumps was limited to a single page. This is not enough for additional interface info available with devices that support SR-IOV and caused a bug in which VF info would not be displayed if more than approximately 40 VFs were created per interface. Implement a new function pointer for the rtnl_register service that will calculate the amount of data required for the ifinfo dump and allocate enough data to satisfy the request. Signed-off-by: Greg Rose Signed-off-by: Jeff Kirsher commit 929dd047720785f099e12113780b3d7914ce6d9f Author: Carolyn Wyborny Date: Thu May 26 03:02:26 2011 +0000 igb: Change version to remove number after -k in kernel versions. This patch changes the way versioning is done for igb in the kernel by removing the number after the "k." It has been determined that just the "k" is sufficient to identify a kernel version and the following number was used in an inconsistent manner. Signed-off-by: Carolyn Wyborny Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher commit cabe0700c56c1e28fc55674e8c1fc9e4495dded9 Author: Williams, Mitch A Date: Thu May 19 05:37:59 2011 +0000 igbvf: update version number Update the version number to match version conventions. Bump the major version to indicate that new hardware support (i350) has been added. Signed-off-by: Mitch Williams Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit b3ccf26704f80cd9959c4d2a83c2278bcc93425c Author: Bruce Allan Date: Thu May 19 01:53:41 2011 +0000 e1000e: update driver version Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 7ff1c8bb7c4fd81b627eedec4f30973c269fd8d8 Author: Bruce Allan Date: Thu May 26 05:24:38 2011 +0000 e1000e: remove redundant reverse dependency on CRC32 Commit 5d03078a6804bf4c7f943c5b68bef80468c0717f added a redundant 'select CRC32'; remove it. Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 3ebfc7c9a6177794e0a1635483bd64268bed5d3c Author: Bruce Allan Date: Fri May 13 07:20:14 2011 +0000 e1000e: Clear host wakeup bit on 82577/8 without touching PHY page 800 The Host Wakeup Active bit in the PHY Port General Configuration register (page 769 register 17) must be cleared after every PHY reset to prevent an unexpected wake signal from the PHY. Originally, this was accomplished by simply reading the PHY Wakeup Control register on page 800 which clears the Host Wakeup Active bit as a side-effect. Unfortunately, a hardware bug on the 82577 and 82578 PHY can cause unexpected behavior when registers on page 800 are accessed while in gigabit mode. This patch changes the remaining instances when the Host Wakeup Active bit needs to be cleared while possibly in gigabit mode by accessing the Port General Configuration register directly instead of accessing any register on page 800. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher commit 2b6b168d52aa044363647cfff8bda5cef8068ca3 Author: Bruce Allan Date: Fri May 13 07:20:09 2011 +0000 e1000e: access multiple PHY registers on same page at the same time Doing a PHY page select can take a long time, relatively speaking. This can cause a significant delay when updating a number of PHY registers on the same page by unnecessarily setting the page for each PHY access. For example when going to Sx, all the PHY wakeup registers (WUC, RAR[], MTA[], SHRAR[], IP4AT[], IP6AT[], etc.) on 82577/8/9 need to be updated which takes a long time which can cause issues when suspending. This patch introduces new PHY ops function pointers to allow callers to set the page directly and do any number of PHY accesses on that page. This feature is currently only implemented for 82577, 82578 and 82579 PHYs for both the normally addressed registers as well as the special- case addressing of the PHY wakeup registers on page 800. For the latter registers, the existing function for accessing the wakeup registers has been divided up into three- 1) enable access to the wakeup register page, 2) perform the register access and 3) disable access to the wakeup register page. The two functions that enable/disable access to the wakeup register page are necessarily available to the caller so that the caller can restore the value of the Port Control (a.k.a. Wakeup Enable) register after the wakeup register accesses are done. All instances of writing to multiple PHY registers on the same page are updated to use this new method and to acquire any PHY locking mechanism before setting the page and performing the register accesses, and release the locking mechanism afterward. Some affiliated magic number cleanup is done as well. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher commit 400484fa65ead1bbc3e86ea79e7505182a31bce1 Author: Bruce Allan Date: Fri May 13 07:20:03 2011 +0000 e1000e: do not schedule the Tx queue until ready Start the Tx queue when the interface is brought up in e1000e_up() but do not schedule the queue until link is up as detected in the watchdog task which sets netif_carrier_on. Also flush the descriptors and clean the Tx and Rx rings before resetting the hardware when bringing the interface down otherwise there is a small window where the watchdog task can be triggered with netif_carrier_off and the Tx ring not yet empty which causes an additional and unnecessary reset. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher commit c5caf4825b22957e4ad70fd94316e91ce8cfb51c Author: Bruce Allan Date: Fri May 13 07:19:53 2011 +0000 e1000e: log when swflag is cleared unexpectedly on ICH/PCH devices Since EXTCNF_CTRL.SWFLAG (used in the ownership arbitration of shared resources, e.g. the PHY shared between the s/w, f/w, and h/w clients) can be cleared by any of those clients, log a debug message when software attempts to clear it and it is already cleared unexpectedly. And since the swflag is cleared by a hardware reset, the driver does not need to do that, but the mutex acquired when the bit is set must still be cleared. Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 99730e4c13c8344b02dd96108945b48d28c14c25 Author: Bruce Allan Date: Fri May 13 07:19:48 2011 +0000 e1000e: 82579 intermittently disabled during S0->Sx When repeatedly cycling Sx->S0 states with the network cable unplugged, the 82579 PHY may not initialize as expected and may require a full power cycle to recover functionality to the device. Workaround this by testing access of the PHY registers after resuming; if that returns unexpected results toggle the LANPHYPC signal to power cycle the PHY. This is implemented in the new function e1000_resume_workarounds_pchlan() which calls another new function, e1000_toggle_lanphypc_value_ich8lan(), which has been created to reduce code duplication (same functionality required by a previous workaround). Also, e1000e_disable_gig_wol_ich8lan is now e1000_suspend_workarounds_ich8lan to better reflect what it does. Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit d9b24135b972ccdd5f5174fba06c730e895e6daf Author: Bruce Allan Date: Fri May 13 07:19:42 2011 +0000 e1000e: disable far-end loopback mode on ESB2 The ESB2 LAN includes a debug feature that enables far-end loopback (FELB) of the SerDes/Kumeran interface. This feature is activated when receiving a sequence of symbols that includes a reserved codeword. On a perfect link, FELB would never be activated. In the presence of bit errors, there is a very small, but non-zero, probability of FELB being activated. If the FELB is activated, the SerDes link becomes non-functional and must be reset. It could also corrupt the switching tables in the switch since the ESB2 is transmitting packets with a different source MAC address. This patch disables the FELB feature. Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit e357964ee66723d0ced63ac1dbd1db4a6a1d417e Author: Peter Pan(潘卫平) Date: Wed Jun 8 21:19:05 2011 +0000 bonding: delete unused arp_mon_pt Now all received packets are handled by bond_handle_frame, and arp_mon_pt isn't used any more. Reviewed-by: WANG Cong Signed-off-by: Weiping Pan Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 0cc42eb608954c1d68be7ac51af7434e5fc45659 Author: Peter Pan(潘卫平) Date: Wed Jun 8 21:19:04 2011 +0000 bonding: delete unused ad_timer Now we use agg_select_timer and ad_work. Reviewed-by: WANG Cong Signed-off-by: Weiping Pan Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 1a14fbcbc96bd098540eb54b66976c20a73b8473 Author: Peter Pan(潘卫平) Date: Wed Jun 8 21:19:03 2011 +0000 bonding:delete agg_select_mode from ad_bond_info bond_params->ad_select and ad_bond_info->agg_select_mode have the same meaning, they are duplicate and need extra synchronization. __get_agg_selection_mode() get ad_select from bond_params directly. Signed-off-by: Weiping Pan Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 56d00c677de0a6285587af4f6c6f10aef3209f9f Author: Peter Pan(潘卫平) Date: Wed Jun 8 21:19:02 2011 +0000 bonding:delete lacp_fast from ad_bond_info These is also a bug, that if you modify lacp_rate via sysfs, and add new slaves in bonding, new slaves won't use the latest lacp_rate, since ad_bond_info->lacp_fast is initialized only once, in bond_3ad_initialize(). Since both struct bond_params and ad_bond_info have lacp_fast, they are duplicate and need extra synchronization. bond_3ad_bind_slave() can use bond_params->lacp_fast to initialize port. So we can just remove lacp_fast from struct ad_bond_info. Signed-off-by: Weiping Pan Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit ba824a8b2d77942d51ce45ed721f65764c00ab50 Author: Peter Pan(潘卫平) Date: Wed Jun 8 21:19:01 2011 +0000 bonding: make 802.3ad use latest lacp_rate There is bug that when you modify lacp_rate via sysfs, 802.3ad won't use the new value of lacp_rate to transmit packets. This is because port->actor_oper_port_state isn't changed. Signed-off-by: Weiping Pan Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit b880a954b9e2585ce325aedd76e4741880cab180 Author: Vasanthy Kolluri Date: Thu Jun 9 10:37:07 2011 +0000 enic: Bug Fix: Fix hardware transmit queue indexing in enic_poll_controller Signed-off-by: Christian Benvenuti Signed-off-by: Danny Guo Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: David S. Miller commit 7d260ec26ee56495bcb32491d44ed4590cc838a0 Author: Vasanthy Kolluri Date: Thu Jun 9 10:37:02 2011 +0000 enic: Get/Set interrupt resource index for transmit and receive queues Instead of deriving the index of a transmit/receive interrupt resource from the transmit/receive queue index, always save and retrieve it using an additional variable. Signed-off-by: Christian Benvenuti Signed-off-by: Danny Guo Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: David S. Miller commit e1fb77bfd062b8d38fb0e428ae0edcd2dc4ec07b Author: Vasanthy Kolluri Date: Thu Jun 9 10:36:57 2011 +0000 enic: Log device configuration in detail during driver load Signed-off-by: Christian Benvenuti Signed-off-by: Danny Guo Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: David S. Miller commit 8757446d8df4446fc7f5d24ad6d53e9f265cc021 Author: Vasanthy Kolluri Date: Thu Jun 9 10:36:52 2011 +0000 enic: Pass 802.1p bits for packets tagged with vlan zero enic driver currently passes 802.1p bits to the upper layers for packets tagged with non-zero vlan ids only. This patch extends such behaviour to zero vlan tagged packets also. The patch is dependant on the following kernel patches: 1) vlan_dev: VLAN 0 should be treated as "no vlan tag" (802.1p packet) - net-next-2.6 git commit: ad1afb00393915a51c21b1ae8704562bf036855f - Available 2.6.36 and later 2) vlan: Centralize handling of hardware acceleration. - net-next-2.6 git commit: 3701e51382a026cba10c60b03efabe534fba4ca4 - Available 2.6.37 and later Signed-off-by: Christian Benvenuti Signed-off-by: Danny Guo Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: David S. Miller commit 6018e1183ba52735d47e8c183497d8598da75351 Merge: 075cd29 ecbd532 Author: David S. Miller Date: Thu Jun 9 14:56:13 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge commit dc5a18941b4226846f0c5994e4f45bc685f7bcfe Merge: 461df4d c773298 Author: Greg Kroah-Hartman Date: Thu Jun 9 13:49:02 2011 -0700 Merge Linus's tree into staging-next This was done to resolve the conflicts that were in a number of files due to changes done upstream with others done in the staging-next branch. Signed-off-by: Greg Kroah-Hartman commit c773298788598a26e325bc2639877c76818943e3 Author: Greg Kroah-Hartman Date: Thu Jun 9 13:16:13 2011 -0700 Staging: brcm80211: disable drivers for PPC platforms Right now, bad things happen if you try to build these drivers for the PPC platform as it seems that the code only has been tested and built on the MIPS big endian platform. So disable it on the PPC32 and PPC64 platforms for now, hopefully this will be resolved in the future as I'm sure someone will want to use these chips with that platform someday. Reported-by: Stephen Rothwell Cc: Henry Ptasinski Cc: Brett Rudley Cc: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 448f2627c169092d2091a1be22feb6a7775f6201 Merge: 5a9d0a3 6de6c18 Author: Gustavo F. Padovan Date: Thu Jun 9 16:33:54 2011 -0300 Merge master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-2.6 Conflicts: net/bluetooth/rfcomm/sock.c commit 5a9d0a3ffbc40ea1f5a0636501e7599cbb327bcc Author: Waldemar Rymarkiewicz Date: Tue Jun 7 11:18:06 2011 +0200 Bluetooth: Clean up some code style issues Fix lines longer than 80 chars in length. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit d29d04ce0f49b9fbcaefc83ec4e9bdb7badd45fa Author: David Miller Date: Thu May 19 17:50:05 2011 -0400 Bluetooth: Kill set but unused variable 'cmd' in cmtp_recv_capimsg() Signed-off-by: David S. Miller Signed-off-by: Gustavo F. Padovan commit 845d131e2b363717d8ac8db2c6b4417de8cf10b5 Author: Greg Kroah-Hartman Date: Thu Jun 9 12:20:28 2011 -0700 Staging: comedi: add #include to a bunch of drivers On some arches the function virt_to_bus() wasn't being pulled in due to include chains being different. So, as we are explicitly calling this function, explicitly include the proper header file so all will build properly. Reported-by: Stephen Rothwell Signed-off-by: Greg Kroah-Hartman commit 408093d2a1724ea4c8518bd2bfee166132a6cbfa Author: Greg Kroah-Hartman Date: Thu Jun 9 12:13:08 2011 -0700 Staging: comedi: drivers.c: fix PAGE_KERNEL_NOCACHE issue Not all arches have PAGE_KERNEL_NOCACHE, so use the "normal" PAGE_KERNEL on those that do not have it. Reported-by: Stephen Rothwell Signed-off-by: Greg Kroah-Hartman commit a8198eea156df47e0e843ac5c7d4c8774e121c42 Author: Chris Wilson Date: Wed Apr 13 22:04:09 2011 +0100 drm/i915: Introduce i915_gem_object_finish_gpu() ... reincarnated from i915_gem_object_flush_gpu(). The semantic difference is that after calling finish_gpu() the object no longer resides in any GPU domain, and so will cause the GPU caches to be invalidated if it is ever used again. Signed-off-by: Chris Wilson Reviewed-by: Daniel Vetter commit e4c8308c852e6b3fa49215052a5b9e99597dee99 Merge: c37f3c2 626a96d Author: Grant Likely Date: Thu Jun 9 12:42:57 2011 -0600 Merge branch 'ep93xx-dma' into spi/next commit ecbd532108cb21d9d3770f73e168bad65d14d9eb Author: Marek Lindner Date: Thu Jun 9 17:13:09 2011 +0200 batman-adv: use NO_FLAGS define instead of hard-coding 0 The definition NO_FLAGS was introduced to make the code more readable and shall be used to initialize flag fields. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit e8958dbf0da377e11f385a9888da3f72e827ab26 Author: Sven Eckelmann Date: Sat Jun 4 11:26:00 2011 +0200 batman-adv: Use enums for related constants CodingStyle "Chapter 12: Macros, Enums and RTL" recommends to use enums for several related constants. Internal states can be used without defining the actual value, but all values which are visible to the outside must be defined as before. Normal values are assigned as usual and flags are defined by shifts of a bit. Signed-off-by: Sven Eckelmann commit 3d222bbaa7329e8ef45129e1bd6801000d7e05e4 Author: Sven Eckelmann Date: Sun Jun 5 10:20:19 2011 +0200 batman-adv: Rewrite debugfs kobj_to_* helpers as functions CodingStyle "Chapter 12: Macros, Enums and RTL" highly recommends to use functions instead of macros were possible. This ensures type safety and prevents shadowing of other variables. Signed-off-by: Sven Eckelmann commit e72948eb21d1da0275be1c6e0c7a9a22aa67a5e3 Author: Sven Eckelmann Date: Sat Jun 4 14:00:49 2011 +0200 batman-adv: Fix signedness problem in parse_gw_bandwidth strict_strtoul as used in parse_gw_bandwidth is defined for unsigned long and strict_strtol should be used instead for long. Signed-off-by: Sven Eckelmann commit 6b9aadfa97efa5a73c005c5c4c667359a0c85bec Author: Sven Eckelmann Date: Sat Jun 4 12:40:37 2011 +0200 batman-adv: Don't return value in void function gw_node_delete is defined with "void" as return type, but still tries to return a value. The called function gw_node_delete is also return as void and thus doesn't provide a value for us. Signed-off-by: Sven Eckelmann commit d1829fa0c380ccf48a7b96795a6d4a01698d02a6 Author: Daniele Furlan Date: Tue Jun 7 00:45:55 2011 +0200 batman-adv: accept delayed rebroadcasts to avoid bogus routing under heavy load When a link is saturated (re)broadcasts of OGMs are delayed. Under heavy load this delay may exceed the orig interval which leads to OGMs being dropped (the code would only accept an OGM rebroadcast if it arrived before the next OGM was broadcasted). With this patch batman-adv will also accept delayed OGMs in order to avoid a bogus influence on the routing metric. Signed-off-by: Daniele Furlan Signed-off-by: Sven Eckelmann commit ab1c847af5271495c9c00c931284d7cd46840bd0 Author: Grant Likely Date: Thu Jun 9 12:40:21 2011 -0600 gpio/ep93xx: Remove superfluous debug pr_info statement Reported-by: H Hartley Sweeten Signed-off-by: Grant Likely commit 6de6c18d8d3b2a82cc1c657f005e61b1c1f2f886 Author: Ville Tervo Date: Fri May 27 11:16:21 2011 +0300 Bluetooth: Do not send SET_EVENT_MASK for 1.1 and earlier devices Some old hci controllers do not accept any mask so leave the default mask on for these devices. < HCI Command: Set Event Mask (0x03|0x0001) plen 8 Mask: 0xfffffbff00000000 > HCI Event: Command Complete (0x0e) plen 4 Set Event Mask (0x03|0x0001) ncmd 1 status 0x12 Error: Invalid HCI Command Parameters Signed-off-by: Ville Tervo Tested-by: Corey Boyle Tested-by: Ed Tomlinson Signed-off-by: Gustavo F. Padovan commit 0b28d7373562938a9e6f38c259f66082e99cb9a9 Author: David Miller Date: Thu May 19 17:37:45 2011 -0400 Bluetooth: Do not ignore errors returned from strict_strtol() Signed-off-by: David S. Miller Signed-off-by: Gustavo F. Padovan commit 4a77708b055a71bf769a917283a9eba3dcedb017 Author: Luiz Augusto von Dentz Date: Thu May 12 11:13:15 2011 +0300 Bluetooth: fix shutdown on SCO sockets shutdown should wait for SCO link to be properly disconnected before detroying the socket, otherwise an application using the socket may assume link is properly disconnected before it really happens which can be a problem when e.g synchronizing profile switch. Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Gustavo F. Padovan commit d0fad89da9801b3945d2ee7243ecbc75b3da6f09 Author: Stephen Boyd Date: Thu May 12 16:50:09 2011 -0700 Bluetooth: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning: In function 'copy_from_user', inlined from 'rfcomm_sock_setsockopt' at net/bluetooth/rfcomm/sock.c:705: arch/x86/include/asm/uaccess_64.h:65: warning: call to 'copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct presumably due to buf_size being signed causing GCC to fail to see that buf_size can't become negative. Cc: Marcel Holtmann Cc: Gustavo F. Padovan Signed-off-by: Stephen Boyd Signed-off-by: Gustavo F. Padovan commit 91d5e6b4f5900cb46f92cd98d561a1a54bbca6b6 Author: Liam Girdwood Date: Thu Jun 9 17:04:59 2011 +0100 ASoC: pcm - rename snd_codec_close() to snd_pcm_close(). Make sure we follow naming convention for all PCM ops. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit b8c0dab9bf3373010e857a8d3f1b594c60a348dd Author: Liam Girdwood Date: Thu Jun 9 17:04:39 2011 +0100 ASoC: core - PCM mutex per rtd In preparation for the new ASoC Dynamic PCM support (AKA DSP support). The new ASoC Dynamic PCM core allows DAIs to be dynamically re-routed at runtime between the PCM device end (or Frontend - FE) and the physical DAI (Backend - BE) using regular kcontrols (just like a hardware CODEC routes audio in the analog domain). The Dynamic PCM core therefore must be able to call PCM operations for both the Frontend and Backend(s) DAIs at the same time. Currently we have a global pcm_mutex that is used to serialise the ASoC PCM operations. This patch removes the global mutex and adds a mutex per RTD allowing the PCM operations to be reentrant and allow control of more than one DAI at at time. e.g. a frontend PCM hw_params() could configure multiple backend DAI hw_params() with similar or different hw parameters at the same time. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 7d51a0dbe51282f3ed13cadf6e7f13a974374be2 Author: Mark Brown Date: Thu Jun 9 16:06:37 2011 +0100 regulator: Add rdev_crit() macro No actual users but provide the macro so there's less surprise when it's not there. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 3801b86aa482d26a8ae460f67fca29e016491a86 Author: Mark Brown Date: Thu Jun 9 16:22:22 2011 +0100 regulator: Refactor supply implementation to work as regular consumers Currently the regulator supply implementation is somewhat complex and fragile as it doesn't look like standard consumers but is instead a parallel implementation. This causes issues with locking and reference counting. Move the implementation over to using standard consumers to address this. Rather than only notifying the supply on the first enable/disable we do so every time the regulator is enabled or disabled, simplifying locking as we don't need to hold a lock on the consumer we are about to enable. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit e0eaedefda8e14ed3f445f382c568c5d69e4223f Author: Mark Brown Date: Thu Jun 9 16:22:21 2011 +0100 regulator: Include the device name in the microamps_requested_ file We may have multiple devices requesting a supply with the same name so include the device name in the generated filename for microamps_requested to avoid duplicate files. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit f5726ae33c382366ea1b23240d5620dcf675d81d Author: Mark Brown Date: Thu Jun 9 16:22:20 2011 +0100 regulator: Increase the limit on sysfs file names With verbose filenames we can easily hit 32 characters. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit edfc86aadad371b76d95b11d0bc8eb36c2376d1e Author: Arnaud Lacombe Date: Mon May 23 03:01:31 2011 -0400 dtc: regen parser Cc: David Gibson Signed-off-by: Arnaud Lacombe commit 95abef888a3173539c0f12d0c1055e6eb6ffbc89 Author: Arnaud Lacombe Date: Mon May 23 03:17:20 2011 -0400 dtc: migrate parser to implicit rules Cc: David Gibson Signed-off-by: Arnaud Lacombe commit 2f76b358f9fba35821fa97f0873ec55be88187dc Author: Arnaud Lacombe Date: Mon May 23 01:08:19 2011 -0400 kconfig: regen parser Signed-off-by: Arnaud Lacombe commit 378dbb2cf5cb51e41e51b115af8b3ecef086e6ff Author: Arnaud Lacombe Date: Mon May 23 02:08:52 2011 -0400 kconfig: migrate parser to implicit rules Signed-off-by: Arnaud Lacombe commit 674eed8a6ac9d10b4ee08f497dbe20d75bfa863d Author: Arnaud Lacombe Date: Tue Jun 7 13:34:05 2011 -0400 kconfig/zconf.l: do not ask to generate backup This avoids the creation of a top-level `lex.backup' when the lexer gets re-generated. Signed-off-by: Arnaud Lacombe commit b96a0d0c78c878db6e6b5c02587ba69973e22d41 Author: Arnaud Lacombe Date: Mon May 23 02:08:18 2011 -0400 kconfig: kill no longer needed reference to YYDEBUG Signed-off-by: Arnaud Lacombe commit 61f956f576031bea270ea54b10411ebb1e172b1b Author: Arnaud Lacombe Date: Wed May 4 21:14:44 2011 -0400 kconfig: constify `kconf_id_lookup' Signed-off-by: Arnaud Lacombe commit 58ef81c5cf147f35dfa248cffdfc60a415783690 Author: Arnaud Lacombe Date: Mon May 23 01:52:59 2011 -0400 genksym: regen parser Signed-off-by: Arnaud Lacombe commit 880f4499bb4f6883095965bdd3b9237d927e24d8 Author: Arnaud Lacombe Date: Mon May 23 00:05:28 2011 -0400 genksyms: migrate parser to implicit rules Signed-off-by: Arnaud Lacombe commit 6b19e7e49e6d4ce123c16a6b069916045cab9fa0 Author: Arnaud Lacombe Date: Tue Jun 7 18:09:02 2011 -0400 genksyms: drop -Wno-uninitialized from HOSTCFLAGS_parse.tab.o Signed-off-by: Arnaud Lacombe commit 45c47d966850e2727f913c92e4b6d1c2d586d6bd Author: Arnaud Lacombe Date: Wed May 4 21:18:27 2011 -0400 genksyms: pass hash and lookup functions name and target language though the input file Renaming hash and lookup functions on the command line would reduces its genericity. Use the .gperf file to pass this information. Do the same for the target language. Signed-off-by: Arnaud Lacombe commit 991d76c950f6c5323c37c33dcebf6b8aec009ff0 Author: Arnaud Lacombe Date: Tue Jun 7 13:09:28 2011 -0400 kbuild: simplify the %_shipped rule This is needed to have make(1) correctly link the implicit rules which generate the _shipped file from the lexer/parser to the final file. Signed-off-by: Arnaud Lacombe commit 7373f4f83c71d50f0aece6d94309ab7fde42180f Author: Arnaud Lacombe Date: Mon May 23 00:04:43 2011 -0400 kbuild: add implicit rules for parser generation Cc: David Gibson Cc: Michal Marek Signed-off-by: Arnaud Lacombe commit e0318d85be66ff1ff55c4cbc832cb3ee9e669da8 Author: Arnaud Lacombe Date: Wed Jun 1 17:50:25 2011 -0400 kbuild: add `baseprereq' On the same model as `basetarget', it represents the filename of first prerequisite with directory and extension stripped. Signed-off-by: Arnaud Lacombe commit 4b28d81a7ed82b906f1fdec0133d597b9cf57f85 Merge: 114df7d 626a96d Author: Vinod Koul Date: Thu Jun 9 22:07:05 2011 +0530 Merge remote branch 'gpio/ep93xx-dma' into next commit 2c36c2ce00987a416bf75681742617a0f85335eb Merge: ddee627 4b80b8c Author: Mark Brown Date: Thu Jun 9 15:07:42 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit ddee627cf6bb601aa980104fc17d4f84201380be Author: Liam Girdwood Date: Thu Jun 9 14:45:53 2011 +0100 ASoC: core - Separate out PCM operations into new file. In preparation for Dynamic PCM support (AKA DSP support). There will be future patches that add support to allow PCMs to be dynamically routed to multiple DAIs at startup and also during stream runtime. This patch moves the ASoC core PCM operaitions into a new file called soc-pcm.c. This will in simplify the ASoC core features into distinct files. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 8a118c3872945d54e0cacdea06c93527cdfb8782 Author: Ralf Baechle Date: Wed Jun 1 19:05:10 2011 +0100 pcpskr: MIPS: Make config dependencies finer grained Only the Siemens-Nixdorf RM series workstations and the Jazz family workstations have PC speakers built in; Malta can connect one via the infamous AMR connector with an AMR sound card or a little creativity. So we don't want to offer the PC speaker driver on all MIPS systems. Signed-off-by: Ralf Baechle Cc: linux-mips@linux-mips.org Link: http://lkml.kernel.org/r/20110601180611.061710714@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 8761f1ab717cac0616f8cf7ec589ae021c739113 Author: Ralf Baechle Date: Wed Jun 1 19:05:09 2011 +0100 pcspkr: Cleanup Kconfig dependencies Lenghty lists of the kind "depends on ARCH1 || ARCH2 ... || ARCH123" are usually either wrong or too coarse grained. Or plain an ugly sin. [ tglx: Fixed up amigaone ] Signed-off-by: Ralf Baechle Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Acked-by: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: linux-alpha@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linuxppc-dev@lists.ozlabs.org Cc: Gerhard Pircher Link: http://lkml.kernel.org/r/20110601180610.984881988@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 850492760cfd38d14d64a5fc6d636091464f755e Author: Ralf Baechle Date: Wed Jun 1 19:05:08 2011 +0100 i8253: Move remaining content and delete asm/i8253.h Move setup_pit_timer() declaration to the common header file and remove the arch specific ones. [ tglx: Move it to linux/i8253.h instead of asm/mips and asm/x86 ] Signed-off-by: Ralf Baechle Cc: linux-arm-kernel@lists.infradead.org Cc: Russell King Cc: linux-mips@linux-mips.org Cc: Sergei Shtylyov commit 49cf3f29a1ef2e59f1be823e376c1fbac586eb8d Author: Ralf Baechle Date: Wed Jun 1 19:05:07 2011 +0100 i8253: Consolidate definitions of PIT_LATCH x86 defines PIT_LATCH as LATCH which in is defined as ((CLOCK_TICK_RATE + HZ/2) / HZ) and again defines CLOCK_TICK_RATE as PIT_TICK_RATE. MIPS defines PIT_LATCH as LATCH which in is defined as ((CLOCK_TICK_RATE + HZ/2) / HZ) and again defines CLOCK_TICK_RATE as 1193182. ARM defines PITCH_LATCH as ((PIT_TICK_RATE + HZ / 2) / HZ) - and that's the sanest thing and equivalent to above definitions so use that as the new definition in . Signed-off-by: Ralf Baechle Cc: Russell King Cc: linux-arm-kernel@lists.infradead.org Cc: linux-mips@linux-mips.org Link: http://lkml.kernel.org/r/20110601180610.832810002@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 16f871bc30f86560017b9d34520593a28e08f373 Author: Ralf Baechle Date: Wed Jun 1 19:05:06 2011 +0100 x86: i8253: Consolidate definitions of global_clock_event There are multiple declarations of global_clock_event in header files specific to particular clock event implementations. Consolidate them in and make sure all users include that header. Signed-off-by: Ralf Baechle Cc: Venkatesh Pallipadi (Venki) Link: http://lkml.kernel.org/r/20110601180610.762763451@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 75bba0143454d0fef1b42d5b35cb5bd2f9388901 Author: Ralf Baechle Date: Wed Jun 1 19:05:05 2011 +0100 i8253: Alpha, PowerPC: Remove unused asm/8253pit.h Signed-off-by: Ralf Baechle Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Acked-by: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: linuxppc-dev@lists.ozlabs.org Link: http://lkml.kernel.org/r/20110601180610.684557757@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 36af1b461293e838d6f47edd6f59f0beac222600 Author: Ralf Baechle Date: Wed Jun 1 19:05:04 2011 +0100 alpha: i8253: Cleanup remaining users of i8253pit.h The Alpha header is empty so this inclusion can just be removed. Signed-off-by: Ralf Baechle Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Link: http://lkml.kernel.org/r/20110601180610.608083130@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 609d414437ba2501bb9ca47a051da8871268cfa2 Author: Thomas Gleixner Date: Fri Jun 3 17:44:16 2011 +0200 i8253: Remove I8253_LOCK config Now that all extra ifdeffed implementations are gone, depend the lock export on PCSPKR_PLATFORM Signed-off-by: Thomas Gleixner Cc: Ralf Baechle Cc: Russell King commit 8e1b5adfbee97a187d3e7188a0b248619b76682e Author: Ralf Baechle Date: Wed Jun 1 19:05:03 2011 +0100 i8253: Make pcsp sound driver use the shared i8253_lock Signed-off-by: Ralf Baechle Cc: Jaroslav Kysela Acked-by: Takashi Iwai Cc: alsa-devel@alsa-project.org Link: http://lkml.kernel.org/r/20110601180610.532642190@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 16ba9b061223c8a58b9b2e0dd01435111c4e902a Author: Ralf Baechle Date: Wed Jun 1 19:05:02 2011 +0100 i8253: Make pcspkr input driver use the shared i8253_lock Signed-off-by: Ralf Baechle Cc: Dmitry Torokhov Cc: linux-input@vger.kernel.org Link: http://lkml.kernel.org/r/20110601180610.453577265@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 15f304b664c0d0a3e76ed3a9ce3615a86908babe Author: Ralf Baechle Date: Wed Jun 1 19:04:59 2011 +0100 i8253: Consolidate all kernel definitions of i8253_lock Move them to drivers/clocksource/i8253.c and remove the implementations in arch/ [ tglx: Avoid the extra file in lib - folded arch patches in. The export will become conditional in a later step ] Signed-off-by: Ralf Baechle Link: http://lkml.kernel.org/r/20110601180610.221426078@duck.linux-mips.net Cc: Russell King Signed-off-by: Thomas Gleixner commit cb2455aa274b780802c593fecf115240a655d809 Author: Ralf Baechle Date: Wed Jun 1 19:04:58 2011 +0100 i8253: Unify all kernel declarations of i8253_lock Signed-off-by: Ralf Baechle Cc: Russell King Cc: linux-arm-kernel@lists.infradead.org Cc: linux-mips@linux-mips.org Link: http://lkml.kernel.org/r/20110601180610.134151920@duck.linux-mips.net Signed-off-by: Thomas Gleixner commit 334955ef964bee9d3b1e20966847eee28cfd05f6 Author: Ralf Baechle Date: Wed Jun 1 19:04:57 2011 +0100 i8253: Create linux/i8253.h and use it in all 8253 related files Signed-off-by: Ralf Baechle Cc: linux-mips@linux-mips.org Link: http://lkml.kernel.org/r/20110601180610.054254048@duck.linux-mips.net Signed-off-by: Thomas Gleixner arch/arm/mach-footbridge/isa-timer.c | 2 +- arch/mips/cobalt/time.c | 2 +- arch/mips/jazz/irq.c | 2 +- arch/mips/kernel/i8253.c | 2 +- arch/mips/mti-malta/malta-time.c | 2 +- arch/mips/sgi-ip22/ip22-time.c | 2 +- arch/mips/sni/time.c | 2 +- arch/x86/kernel/apic/apic.c | 2 +- arch/x86/kernel/apm_32.c | 2 +- arch/x86/kernel/hpet.c | 2 +- arch/x86/kernel/i8253.c | 2 +- arch/x86/kernel/time.c | 2 +- drivers/block/hd.c | 2 +- drivers/clocksource/i8253.c | 2 +- drivers/input/gameport/gameport.c | 2 +- drivers/input/joystick/analog.c | 2 +- drivers/input/misc/pcspkr.c | 2 +- include/linux/i8253.h | 11 +++++++++++ sound/drivers/pcsp/pcsp.h | 2 +- 19 files changed, 29 insertions(+), 18 deletions(-) commit bf564ea99797f6e66796d0d0a24a8fe872d5f26e Merge: 147dfe9 0cd114f Author: Mark Brown Date: Thu Jun 9 12:02:26 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit 147dfe90f7302f2472d83c25b983420a727aec5a Author: Timur Tabi Date: Wed Jun 8 15:02:55 2011 -0500 ASoC: p1022ds: fix incorrect referencing of device tree properties Device tree integer properties are encoded in big-endian format, but some of the Freescale ASoC drivers were assuming that the host is in big-endian format as well. Although this is true, it's better to use endian-safe accessors. Also add a check for a failed ioremap() call in the SSI driver. Signed-off-by: Timur Tabi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 76369139ceb955deefc509e6e12ce9d6ce50ccab Author: Frederic Weisbecker Date: Thu May 19 19:55:04 2011 +0200 perf: Split up buffer handling from core code And create the internal perf events header. v2: Keep an internal inlined perf_output_copy() Signed-off-by: Frederic Weisbecker Acked-by: Peter Zijlstra Cc: Borislav Petkov Cc: Stephane Eranian Cc: Arnaldo Carvalho de Melo Cc: Steven Rostedt Link: http://lkml.kernel.org/r/1305827704-5607-1-git-send-email-fweisbec@gmail.com [ v3: use clearer 'ring_buffer' and 'rb' naming ] Signed-off-by: Ingo Molnar commit 075cd29e307720dfde5b67d1715a102473bf4623 Author: Michal Simek Date: Thu Jun 9 01:29:13 2011 -0700 net: emaclite: Add missing linux/interrupt.h header Log: drivers/net/xilinx_emaclite.c: In function 'xemaclite_open': drivers/net/xilinx_emaclite.c:961: error: implicit declaration of function 'request_irq' drivers/net/xilinx_emaclite.c: In function 'xemaclite_close': drivers/net/xilinx_emaclite.c:995: error: implicit declaration of function 'free_irq' make[2]: *** [drivers/net/xilinx_emaclite.o] Error 1 make[1]: *** [drivers/net] Error 2 make: *** [drivers] Error 2 Signed-off-by: Michal Simek Signed-off-by: David S. Miller commit 61a5ff15ebdab87887861a6b128b108404e4706d Author: Amos Kong Date: Thu Jun 9 00:27:10 2011 -0700 tun: do not put self in waitq if doing a nonblock read Perf shows a relatively high rate (about 8%) race in spin_lock_irqsave() when doing netperf between external host and guest. It's mainly becuase the lock contention between the tun_do_read() and tun_xmit_skb(), so this patch do not put self into waitqueue to reduce this kind of race. After this patch, it drops to 4%. Signed-off-by: Jason Wang Signed-off-by: Amos Kong Signed-off-by: David S. Miller commit 6f7c156c08d5eaa9fff2bd062f0a2b9d09a1e7a9 Author: stephen hemminger Date: Wed Jun 8 14:33:08 2011 +0000 tun: dont force inline of functions Current standard practice is to not mark most functions as inline and let compiler decide instead. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit a504b86e718a425ea4a34e2f95b5cf0545ddfd8d Author: stephen hemminger Date: Wed Jun 8 14:33:07 2011 +0000 tun: reserves space for network in skb The tun driver allocates skb's to hold data from user and then passes the data into the network stack as received data. Most network devices allocate the receive skb with routines like dev_alloc_skb() that reserves additional space for use by network protocol stack but tun does not. Because of the lack of padding, when the packet is passed through bridge netfilter a new skb has to be allocated. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 7625eb2f2fff7bfae41d3119b472c20b48874895 Author: Michael Chan Date: Wed Jun 8 19:29:36 2011 +0000 cnic, bnx2: Check iSCSI support early in bnx2_init_one() Based on earlier patch from Neil Horman If iSCSI is not supported on a bnx2 device, bnx2_cnic_probe() will return NULL and the cnic device will not be visible to bnx2i. This will prevent bnx2i from registering and then unregistering during cnic_start() and cause the warning message: bnx2 0003:01:00.1: eth1: Failed waiting for ULP up call to complete Signed-off-by: Michael Chan Cc: Neil Horman Signed-off-by: David S. Miller commit db1d350fcb156b58f66a67680617077bcacfe6fc Author: Michael Chan Date: Wed Jun 8 19:29:35 2011 +0000 cnic: Improve NETDEV_UP event handling During NETDEV_UP, we use symbol_get() to get the net driver's cnic probe function. This sometimes doesn't work if NETDEV_UP happens right after NETDEV_REGISTER and the net driver is still running module init code. As a result, the cnic device may not be discovered. We fix this by probing on all NETDEV events if the device's netif_running state is up. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 11f23aa8ccd56786f0a6f04211cf59b3fab2ce08 Author: Eddie Wai Date: Wed Jun 8 19:29:34 2011 +0000 cnic: Randomize initial TCP port for iSCSI connections This reduces the likelihood of port re-use when re-loading the driver. Signed-off-by: Eddie Wai Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 101c40c8cb0d10c30f423805f9f5b7a75956832d Author: Michael Chan Date: Wed Jun 8 19:29:33 2011 +0000 cnic: Fix race conditions with firmware During iSCSI connection terminations, if the target is also terminating at about the same time, the firmware may not complete the driver's request to close or reset the connection. This is fixed by handling other events (instead of the expected completion event) as an indication that the driver's request has been rejected. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 93736656138e6d2f39f19c1d68f9ef81cfc9dd66 Author: Michael Chan Date: Wed Jun 8 19:29:32 2011 +0000 cnic: Fix interrupt logic We need to keep looping until cnic_get_kcqes() returns 0. cnic_get_kcqes() returns a maximum of 64 entries. If there are more entries in the queue and we don't loop back, the remaining entries may not be serviced for a long time. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 2b77bdde97ae8241dcc23110a4e837acfbc83438 Author: Eric Dumazet Date: Wed Jun 8 23:31:27 2011 -0700 inetpeer: lower false sharing effect Profiles show false sharing in addr_compare() because refcnt/dtime changes dirty the first inet_peer cache line, where are lying the keys used at lookup time. If many cpus are calling inet_getpeer() and inet_putpeer(), or need frag ids, addr_compare() is in 2nd position in "perf top". Before patch, my udpflood bench (16 threads) on my 2x4x2 machine : 5784.00 9.7% csum_partial_copy_generic [kernel] 3356.00 5.6% addr_compare [kernel] 2638.00 4.4% fib_table_lookup [kernel] 2625.00 4.4% ip_fragment [kernel] 1934.00 3.2% neigh_lookup [kernel] 1617.00 2.7% udp_sendmsg [kernel] 1608.00 2.7% __ip_route_output_key [kernel] 1480.00 2.5% __ip_append_data [kernel] 1396.00 2.3% kfree [kernel] 1195.00 2.0% kmem_cache_free [kernel] 1157.00 1.9% inet_getpeer [kernel] 1121.00 1.9% neigh_resolve_output [kernel] 1012.00 1.7% dev_queue_xmit [kernel] # time ./udpflood.sh real 0m44.511s user 0m20.020s sys 11m22.780s # time ./udpflood.sh real 0m44.099s user 0m20.140s sys 11m15.870s After patch, no more addr_compare() in profiles : 4171.00 10.7% csum_partial_copy_generic [kernel] 1787.00 4.6% fib_table_lookup [kernel] 1756.00 4.5% ip_fragment [kernel] 1234.00 3.2% udp_sendmsg [kernel] 1191.00 3.0% neigh_lookup [kernel] 1118.00 2.9% __ip_append_data [kernel] 1022.00 2.6% kfree [kernel] 993.00 2.5% __ip_route_output_key [kernel] 841.00 2.2% neigh_resolve_output [kernel] 816.00 2.1% kmem_cache_free [kernel] 658.00 1.7% ia32_sysenter_target [kernel] 632.00 1.6% kmem_cache_alloc_node [kernel] # time ./udpflood.sh real 0m41.587s user 0m19.190s sys 10m36.370s # time ./udpflood.sh real 0m41.486s user 0m19.290s sys 10m33.650s Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 1a7a10325d370e2cbed0c5bb7313904545f6dac8 Author: stephen hemminger Date: Wed Jun 8 14:54:04 2011 +0000 niu: support 64 bit stats interface Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit c5f7ef72fcca7602ff8c75682b2a8568ba4e5064 Author: stephen hemminger Date: Wed Jun 8 14:54:03 2011 +0000 myricom: update to 64 bit stats Driver was already keeping 64 bit counters, just not using the new interface. Ps: IMHO drivers should not be duplicating network device stats into ethtool stats. It is useless duplication. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit f20530bc982d67ebde84b3e0a043549d7ccd85a1 Author: stephen hemminger Date: Wed Jun 8 14:54:02 2011 +0000 enic: update to support 64 bit stats The device driver already uses 64 bit statistics, it just doesn't use the 64 bit interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 47fd428cd051072cf3666aaef5065f7d5746ab2c Author: stephen hemminger Date: Wed Jun 8 14:54:01 2011 +0000 netxen: convert to 64 bit statistics Change to 64 bit statistics interface, driver was already maintaining 64 bit value. Signed-off-by: Stephen Hemminger Acked-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 6311cc44a23bb42636f5076fef0a67859d0a0102 Author: stephen hemminger Date: Wed Jun 8 14:53:59 2011 +0000 veth: convert to 64 bit statistics Not much change, device was already keeping per cpu statistics. Use recent 64 statistics interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 95305f6c3b4e8c0bdd5044604c418a8ad2defc4e Author: stephen hemminger Date: Wed Jun 8 14:53:57 2011 +0000 vmxnet3: convert to 64 bit stats interface Convert vmxnet3 driver to 64 bit statistics interface. This driver was already counting packet per queue in a 64 bit value so not a huge change. Eliminate unused old net_device_stats structure. Signed-off-by: Stephen Hemminger Signed-off-by: Scott J. Goldman Signed-off-by: David S. Miller commit 284d952968d60cca156ef0c5efa62592b72264cb Author: Keith Packard Date: Mon Jun 6 17:12:49 2011 -0700 drm/i915: Call intel_enable_plane from i9xx_crtc_mode_set (again) This change got placed in the ironlake path instead of the 9xx path during a recent code shuffle. Signed-off-by: Keith Packard commit 2ce9738bac1b386f46e8478fd2c263460e7c2b09 Author: eparis@redhat Date: Thu Jun 2 21:20:51 2011 +1000 cgroupfs: use init_cred when populating new cgroupfs mount We recently found that in some configurations SELinux was blocking the ability for cgroupfs to be mounted. The reason for this is because cgroupfs creates files and directories during the get_sb() call and also uses lookup_one_len() during that same get_sb() call. This is a problem since the security subsystem cannot initialize the superblock and the inodes in that filesystem until after the get_sb() call returns. Thus we leave the inodes in an unitialized state during get_sb(). For the vast majority of filesystems this is not an issue, but since cgroupfs uses lookup_on_len() it does search permission checks on the directories in the path it walks. Since the inode security state is not set up SELinux does these checks as if the inodes were 'unlabeled.' Many 'normal' userspace process do not have permission to interact with unlabeled inodes. The solution presented here is to do the permission checks of path walk and inode creation as the kernel rather than as the task that called mount. Since the kernel has permission to read/write/create unlabeled inodes the get_sb() call will complete successfully and the SELinux code will be able to initialize the superblock and those inodes created during the get_sb() call. This appears to be the same solution used by other filesystems such as devtmpfs to solve the same issue and should thus have no negative impact on other LSMs which currently work. Signed-off-by: Eric Paris Acked-by: Paul Menage Signed-off-by: James Morris commit f55cf3c76a3b2e4bdcfea4f95c9d527663b41ece Author: James Morris Date: Thu Jun 9 10:24:49 2011 +1000 Merge branch 'linus'; commit 'v3.0-rc2' into next commit 4b9d9be839fdb7dcd7ce7619a623fd9015a50cda Author: Eric Dumazet Date: Wed Jun 8 13:35:34 2011 +0000 inetpeer: remove unused list Andi Kleen and Tim Chen reported huge contention on inetpeer unused_peers.lock, on memcached workload on a 40 core machine, with disabled route cache. It appears we constantly flip peers refcnt between 0 and 1 values, and we must insert/remove peers from unused_peers.list, holding a contended spinlock. Remove this list completely and perform a garbage collection on-the-fly, at lookup time, using the expired nodes we met during the tree traversal. This removes a lot of code, makes locking more standard, and obsoletes two sysctls (inet_peer_gc_mintime and inet_peer_gc_maxtime). This also removes two pointers in inet_peer structure. There is still a false sharing effect because refcnt is in first cache line of object [were the links and keys used by lookups are located], we might move it at the end of inet_peer structure to let this first cache line mostly read by cpus. Signed-off-by: Eric Dumazet CC: Andi Kleen CC: Tim Chen Signed-off-by: David S. Miller commit 9ad7c049f0f79c418e293b1b68cf10d68f54fcdb Author: Jerry Chu Date: Wed Jun 8 11:08:38 2011 +0000 tcp: RFC2988bis + taking RTT sample from 3WHS for the passive open side This patch lowers the default initRTO from 3secs to 1sec per RFC2988bis. It falls back to 3secs if the SYN or SYN-ACK packet has been retransmitted, AND the TCP timestamp option is not on. It also adds support to take RTT sample during 3WHS on the passive open side, just like its active open counterpart, and uses it, if valid, to seed the initRTO for the data transmission phase. The patch also resets ssthresh to its initial default at the beginning of the data transmission phase, and reduces cwnd to 1 if there has been MORE THAN ONE retransmission during 3WHS per RFC5681. Signed-off-by: H.K. Jerry Chu Signed-off-by: David S. Miller commit aee80b54b235d34d87b25dfbe32f0f0ffee1b544 Author: stephen hemminger Date: Wed Jun 8 10:44:30 2011 +0000 ipv6: generate link local address for GRE tunnel Use same logic as SIT tunnel to handle link local address for GRE tunnel. OSPFv3 requires link-local address to function. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8ef207d63f8ecc0eae41cded066dd0e0ee170edf Author: stephen hemminger Date: Wed Jun 8 08:09:13 2011 +0000 iph: use default get_stats This driver keeps stats in net_device stats therefore it does not need to define it's own get_stats hook. Also, use standard format for net_device_ops (without &). Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit bff55273f98dea0ceb78e28eb69462fe5f72ef3d Author: Alexander Duyck Date: Wed Jun 8 12:35:08 2011 +0000 v2 ethtool: remove support for ETHTOOL_GRXNTUPLE This change is meant to remove all support for displaying an ntuple as strings via ETHTOOL_GRXNTUPLE. The reason for this change is due to the fact that multiple issues have been found including: - Multiple buffer overruns for strings being displayed. - Incorrect filters displayed, cleared filters with ring of -2 are displayed - Setting get_rx_ntuple displays no rules if defined. - Endianess wrong on displayed values. - Hard limit of 1024 filters makes display functionality extremely limited The only driver that had supported this interface was ixgbe. Since it no longer uses the interface and due to the issues mentioned above I am submitting this patch to remove it. v2: Updated based on comments from Ben Hutchings - Left ETH_SS_NTUPLE_FILTERS in code but commented on it being deprecated - Removed ethtool_rx_ntuple_list and ethtool_rx_ntuple_flow_spec_container - Left ETHTOOL_GRXNTUPLE but commented it as deprecated Also cleaned up set_rx_ntuple since there is no flow spec container to maintain we can drop all the code for the alloc and free of it and just return ops->set_rx_ntuple(). Signed-off-by: Alexander Duyck Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit c37f3c2749b53225d36faa5c583203c5f12ae15b Author: Tomoya MORINAGA Date: Tue Jun 7 14:50:11 2011 +0900 spi/topcliff_pch: DMA support This patch enables this SPI driver works with DMA mode. Signed-off-by: Tomoya MORINAGA Signed-off-by: Grant Likely commit f016aeb655350ef935ddf336e22cb00452a1c41e Author: Tomoya MORINAGA Date: Tue Jun 7 14:50:10 2011 +0900 spi/topcliff_pch: support new device ML7213 IOH Support ML7213 device of OKI SEMICONDUCTOR. ML7213 is companion chip of Intel Atom E6xx series for IVI(In-Vehicle Infotainment). ML7213 is compatible for Intel EG20T PCH. v4: - Delete unrelated whitespace - Prevent device driver from accessing platform data - Add __devinit and __devexit - Save pdev->dev to pd_dev->dev.parent - Have own suspend/resume processing in platform_driver. - Care returned value in pch_spi_init - Change unregister order Signed-off-by: Tomoya MORINAGA Signed-off-by: Grant Likely commit 1e4c88420e0da3c855c17770a807cabd5b16dd7a Author: H Hartley Sweeten Date: Wed Jun 8 14:35:33 2011 -0700 gpio/ep93xx: convert to platform_driver and use basic_mmio_gpio library This converts the gpio-ep93xx driver into a platform_driver and uses the basic_mmio_gpio library. Signed-off-by: H Hartley Sweeten Signed-off-by: Grant Likely commit 626a96db11698119a67eeda130488e869aa6f14e Author: Mika Westerberg Date: Sun May 29 13:10:06 2011 +0300 spi/ep93xx: add DMA support This patch adds DMA support for the EP93xx SPI driver. By default the DMA is not enabled but it can be enabled by setting ep93xx_spi_info.use_dma to true in board configuration file. Note that the SPI driver still uses PIO for small transfers (<= 8 bytes) for performance reasons. Signed-off-by: Mika Westerberg Acked-by: H Hartley Sweeten Acked-by: Vinod Koul Signed-off-by: Grant Likely commit 71cebd700257a4f644066631bf02187d8f67817e Author: Mika Westerberg Date: Sun May 29 13:10:05 2011 +0300 ep93xx: remove the old M2P DMA code Since we have converted all existing users of the old DMA API to use the DMA engine API the old code can be dropped. Signed-off-by: Mika Westerberg Acked-by: Ryan Mallon Acked-by: H Hartley Sweeten Acked-by: Vinod Koul Signed-off-by: Grant Likely commit 51e2cc0c51298a89fc2f583d7c0a2660f7a16f37 Author: Mika Westerberg Date: Sun May 29 13:10:04 2011 +0300 ASoC: ep93xx: convert to use the DMA engine API Now that we have the EP93xx DMA engine driver in place, we convert the ASoC drivers (I2S, AC97 and PCM) to take advantage of this new API. There are no functional changes. Signed-off-by: Mika Westerberg Acked-by: H Hartley Sweeten Acked-by: Liam Girdwood Acked-by: Mark Brown Acked-by: Vinod Koul Signed-off-by: Grant Likely commit e791e3455f1b7e92f0b66f460ade9c7a2299ac7e Author: Mika Westerberg Date: Sun May 29 13:10:03 2011 +0300 ep93xx: add dmaengine platform code Add platform support code for the new EP93xx dmaengine driver. Signed-off-by: Mika Westerberg Signed-off-by: Ryan Mallon Acked-by: H Hartley Sweeten Acked-by: Vinod Koul Signed-off-by: Grant Likely commit 760ee1c4aafac8fcaf3be5ff2b19c5485c5886e1 Author: Mika Westerberg Date: Sun May 29 13:10:02 2011 +0300 dmaengine: add ep93xx DMA support The ep93xx DMA controller has 10 independent memory to peripheral (M2P) channels, and 2 dedicated memory to memory (M2M) channels. M2M channels can also be used by SPI and IDE to perform DMA transfers to/from their memory mapped FIFOs. This driver supports both M2P and M2M channels with DMA_SLAVE, DMA_CYCLIC and DMA_MEMCPY (M2M only) capabilities. Signed-off-by: Mika Westerberg Signed-off-by: Ryan Mallon Acked-by: H Hartley Sweeten Acked-by: Vinod Koul Signed-off-by: Grant Likely commit b6336ca2982ccac98d9d017426c53ff1e13c017f Merge: a80fd9d 59c5f46 Author: Grant Likely Date: Wed Jun 8 14:37:22 2011 -0600 Merge remote-tracking branch 'origin' into spi/merge commit e694928067b52f569a7df39b7f02efd7b34ab8f4 Author: Mat Martineau Date: Fri Jun 3 16:21:10 2011 -0700 Bluetooth: Fix check for the ERTM local busy state Local busy is encoded in a bitfield, but was not masked out correctly. Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit d8d69c54fb8fbb7483180b609f99f2e3e539962b Author: Mat Martineau Date: Fri Jun 3 16:21:07 2011 -0700 Bluetooth: Restore accidentally-deleted line When code was moved from l2cap_core.c to l2cap_sock.c in commit 6de0702b5b93da0ef097aa092b4597fbc024ebba, one line was dropped from the old __l2cap_sock_close() implementation. This sk_state change should still be in l2cap_chan_close(). Signed-off-by: Mat Martineau Signed-off-by: Gustavo F. Padovan commit ef4177e2bf92543e422fae154888062376e2283d Author: Waldemar Rymarkiewicz Date: Thu Jun 2 14:24:52 2011 +0200 Bluetooth: Simplify hci_conn_accept_secure check If the link key is secure (authenticated or combination 16 digit) the sec_level will be always BT_SECURITY_HIGH. Therefore, instead of checking the link key type simply check the sec_level on the link. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 14b12d0b98f87162b7e9e93dde66d1af97886567 Author: Jaikumar Ganesh Date: Mon May 23 18:06:04 2011 -0700 Bluetooth: Add BT_POWER L2CAP socket option. Add BT_POWER socket option used to control the power characteristics of the underlying ACL link. When the remote end has put the link in sniff mode and the host stack wants to send data we need need to explicitly exit sniff mode to work well with certain devices (For example, A2DP on Plantronics Voyager 855). However, this causes problems with HID devices. Hence, moving into active mode when sending data, irrespective of who set the sniff mode has been made as a socket option. By default, we will move into active mode. HID devices can set the L2CAP socket option to prevent this from happening. Currently, this has been implemented for L2CAP sockets. This has been tested with incoming and outgoing L2CAP sockets for HID and A2DP. Based on discussions on linux-bluetooth and patches submitted by Andrei Emeltchenko. Signed-off-by: Jaikumar Ganesh Signed-off-by: Gustavo F. Padovan commit 96d97a673d42408c0f960cc54d44be7629343bce Author: Waldemar Rymarkiewicz Date: Wed Jun 1 17:28:48 2011 +0200 Bluetooth: Verify a pin code in pin_code_reply As we cannot relay on a userspace mgmt api implementation we should verify if pin_code_reply in fact contains the secure pin code. If userspace replied with unsecure pincode when secure was required we will send pin_code_neg_reply to the controller. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 24718ca5eeb6d36a4a78deb34a2d50e4017bbd4a Author: Waldemar Rymarkiewicz Date: Wed Jun 1 17:28:47 2011 +0200 Bluetooth: Remove a magic number Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit b5ad8b7f8c3f3711129d67aeda85ceec690c3cd0 Author: Johannes Berg Date: Wed Jun 1 08:54:45 2011 +0200 Bluetooth: fix sparse & gcc warnings sparse complains about a few things that should be static. Signed-off-by: Johannes Berg Signed-off-by: Gustavo F. Padovan commit 6d3ce0e7902314ddb330deaf8827205881d7e59f Author: Andre Guedes Date: Tue May 31 14:20:57 2011 -0300 Bluetooth: Set 'peer_addr_type' in hci_le_connect() Set the 'peer_addr_type' field of the LE Create Connection command sent in hci_le_connect(). Signed-off-by: Andre Guedes Acked-by: Ville Tervo Signed-off-by: Gustavo F. Padovan commit eda42b503a3c866d51146549fe46da1f5f64e2c7 Author: Andre Guedes Date: Tue May 31 14:20:56 2011 -0300 Bluetooth: Check advertising cache in hci_connect() When connecting to a LE device, we need to check the advertising cache in order to know the address type of that device. If its advertising entry is not found, the connection is not established and hci_connect() returns error. Signed-off-by: Andre Guedes Acked-by: Ville Tervo Signed-off-by: Gustavo F. Padovan commit 893d67514aebcfd3ebf17bd212ceea1e2741a443 Author: Andre Guedes Date: Tue May 31 14:20:55 2011 -0300 Bluetooth: Remove useless check in hci_connect() There is no need to check the connection's state since hci_conn_add() has just created a new connection and its state has been set properly. Signed-off-by: Andre Guedes Acked-by: Ville Tervo Signed-off-by: Gustavo F. Padovan commit 29b7988a23daf79c15d587ef9e98e64715aa1ea8 Author: Andre Guedes Date: Tue May 31 14:20:54 2011 -0300 Bluetooth: Add 'dst_type' field to struct hci_conn This patch adds a new field (dst_type) to the struct hci_conn which holds the type of the destination address (bdaddr_t dst). This approach is needed in order to use the struct hci_conn as an abstraction of LE connections in HCI Layer. For non-LE this field is ignored. This patch also set properly the 'dst_type' field after initializing LE hci_conn structures. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit d7556e20ade582a223ca1792e1f8a7bfd7d5d008 Author: Waldemar Rymarkiewicz Date: Tue May 31 15:49:26 2011 +0200 Bluetooth: Refactor hci_auth_complete_evt function Replace if(conn) with if(!conn) checking to avoid too many nested statements Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 19f8def031bfa50c579149b200bfeeb919727b27 Author: Waldemar Rymarkiewicz Date: Tue May 31 15:49:25 2011 +0200 Bluetooth: Fix auth_complete_evt for legacy units Legacy devices don't re-authenticate the link properly if a link key already exists. Thus, don't update sec_level for this case even if hci_auth_complete_evt indicates success. Otherwise the sec_level will not reflect a real security on the link. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 3581508571b513ed2e66d71f9708d6be907460fd Author: Andre Guedes Date: Thu May 26 16:23:53 2011 -0300 Bluetooth: Advertising entries lifetime This patch adds a timer to clear 'adv_entries' after three minutes. After some amount of time, the advertising entries cached during the last LE scan should be considered expired and they should be removed from the advertising cache. It was chosen a three minutes timeout as an initial attempt. This value might change in future. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit eb9d91f5ae9c14583c49223e49f7e88f77b84749 Author: Andre Guedes Date: Thu May 26 16:23:52 2011 -0300 Bluetooth: Clear advertising cache before scanning The LE advertising cache should be cleared before performing a LE scanning. This will force the cache to contain only fresh advertising entries. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit 9aa04c9108164e62cf94d6913183817a0d3dbf03 Author: Andre Guedes Date: Thu May 26 16:23:51 2011 -0300 Bluetooth: Add Advertising Report Meta Event handler This patch adds a function to handle LE Advertising Report Meta Events. Signed-off-by: Andre Guedes Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit 76c8686f8871f1bcb2dc8b4c5311cd0e2f73d4cd Author: Andre Guedes Date: Thu May 26 16:23:50 2011 -0300 Bluetooth: LE advertising cache This patch implements the LE advertising cache. It stores sensitive information (bdaddr and bdaddr_type so far) gathered from LE advertising report events. Only advertising entries from connectables devices are added to the cache. Signed-off-by: Andre Guedes Signed-off-by: Gustavo F. Padovan commit 57a56fd41b1264d639175726414ae7e510ec683b Author: Anderson Briglia Date: Thu May 26 16:23:49 2011 -0300 Bluetooth: Add advertising report meta event structs This patch adds definitions and a new struct for Advertising Report Event from LE and Dual Mode controllers. Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit 0f8527249646bbe75d036fe8b9b84d662ece90a9 Author: Gustavo F. Padovan Date: Wed May 4 19:42:50 2011 -0300 Bluetooth: Rename __l2cap_chan_close() to l2cap_chan_close() To make it consistent with the rest of the API. Signed-off-by: Gustavo F. Padovan commit 500698d3fd987f6c405d6d5f68fdf535a539e71e Author: Gustavo F. Padovan Date: Wed May 4 19:35:27 2011 -0300 Bluetooth: Remove export of l2cap_chan_clear_timer() The call to l2cap_chan_clear_timer() is not really needed in l2cap_sock.c. This patch also adds a call to l2cap_chan_clear_timer() to the only place in __l2cap_sock_close() that wasn't calling it. It's safe call it there because l2cap_chan_clear_timer() check first for timer_peding(). Signed-off-by: Gustavo F. Padovan commit ab07801d28985090ac38047b5a4d8952a7e1689f Author: Gustavo F. Padovan Date: Mon May 2 18:25:01 2011 -0300 Bluetooth: create channel timer to replace sk_timer The new timer does not belong to struct sock, tought it still touch some sock things, but this will be sorted out soon. Signed-off-by: Gustavo F. Padovan commit 715ec005cd10c5d53109ffe513e4d403644e3e48 Author: Gustavo F. Padovan Date: Mon May 2 17:13:55 2011 -0300 Bluetooth: Add chan->chan_type struct member chan_type says if our chan is raw(direclty access to HCI), connection less or connection oriented. Signed-off-by: Gustavo F. Padovan commit 9a91a04a95d30a18909e2aec9d7b17b4c86088a7 Author: Gustavo F. Padovan Date: Thu Apr 28 18:50:17 2011 -0300 Bluetooth: Create l2cap_chan_send() This move all the sending logic to l2cap_core.c, but we still have a socket dependence there, struct msghdr. It will be removed in some of the further commits. Signed-off-by: Gustavo F. Padovan commit 4519de9a0478d8de438f8b80ab2e94668ef63ab4 Author: Gustavo F. Padovan Date: Thu Apr 28 17:55:53 2011 -0300 Bluetooth: Create __l2cap_chan_close() This is actually __l2cap_sock_close() renamed to __l2cap_chan_close(). At a first look it may not make sense, but with the further cleanups that will come it will. Signed-off-by: Gustavo F. Padovan commit 37e1c55de7b1edd3fb8fc3411ad0c32a213723d0 Author: Johan Hedberg Date: Fri May 20 11:50:41 2011 -0700 Bluetooth: Remove unnecessary use of hci_dev_list_lock The get_connections function has no need to use hci_dev_list_lock. The code was there probably because of a copy-paste mistake. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 75fde9ee1bca0c0c004aadaebdedf17370f93f18 Author: David Miller Date: Thu May 19 18:09:00 2011 -0400 Bluetooth: Kill set but not used variable 'l2cap_sk' in rfcomm_sock_getsockopt_old() Signed-off-by: David S. Miller Signed-off-by: Gustavo F. Padovan commit 78676a06260a4162b6837a8a2fb954445004ebc2 Author: Gustavo F. Padovan Date: Wed May 18 18:14:45 2011 -0300 Bluetooth: fix set but not used warning Signed-off-by: Gustavo F. Padovan commit 224f8af0db1cd50e9d954ca9d5a7d7716f63d2b0 Author: Ruiyi Zhang Date: Fri May 13 13:07:52 2011 +0800 Bluetooth: Allow unsegmented SDU retries on sock_queue_rcv_skb failure In L2CAP_SDU_UNSEGMENTED case, if sock_queue_rcv_skb returns error, l2cap_ertm_reassembly_sdu should not return 0 so as to insert the skb into BUSY_QUEUE for later retries. Signed-off-by: Ruiyi Zhang Signed-off-by: Gustavo F. Padovan commit c08957a2cf3c4a14e68d72c845d3c52cf3d826e1 Author: Mark Brown Date: Tue Jun 7 23:36:18 2011 +0100 regulator: Properly register dummy regulator driver Recent changes in the driver core appear to mean that the data structures for the driver core are not fully initialised unless the driver is bound. Make sure the driver core knows the dummy driver is in use by binding it to a driver. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 2763f45d40028721e8994d7cefa5df73727469c0 Author: Ricardo Neri Date: Sun May 1 15:35:55 2011 +0100 ASoC: twl6040 - According to TWL6040 specification, gain start at 6dB and not -6dB. Signed-off-by: Ricardo Neri Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit c0c33addcba2ce753b4e2746db99feaae2f82a85 Merge: ffbc03b 931749b Author: John W. Linville Date: Wed Jun 8 13:44:21 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit 6dd599f8af0166805951f4421a78ba716d78321a Author: David Jander Date: Wed Jun 8 11:37:45 2011 -0600 gpio/pca953x: Fix warning of enabled interrupts in handler When using nested threaded irqs, use handle_nested_irq(). This function does not call the chip handler, so no handler is set. Signed-off-by: David Jander Signed-off-by: Grant Likely commit 17e8b42c17c3e9735ea03c4e6b67cedf5de170f4 Author: David Jander Date: Wed Jun 8 11:34:41 2011 -0600 gpio/pca953x: Interrupt pin is active-low The interrupt pin of the PCA953x is active low, and on the rising edge no interrupt should be produced. Signed-off-by: David Jander Signed-off-by: Grant Likely commit 910c8fb6b4b8c9e0be576b6a78f4cccf228a4bfd Author: David Jander Date: Wed Jun 8 11:34:37 2011 -0600 gpio/pca953x: Fix IRQ support. It seems that in the normal case, IRQ_NOREQUEST needs to be explicitly cleared, otherwise claiming the interrupt fails. In the case of sparse interrupts, the descriptor needs to be allocated first. Signed-off-by: David Jander Signed-off-by: Grant Likely commit 995e54f5fe4606043e695cd3327b18fcfc88bc62 Author: Mark Brown Date: Wed Jun 8 16:11:18 2011 +0100 ASoC: Fix mismerge of Speyside set_bias_level_post() Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 36fee53510f91d8ac5eb5dcba0e431a21ebdd5cd Merge: a61944c 1ea3ad4 Author: Michal Marek Date: Wed Jun 8 17:40:20 2011 +0200 Merge branch 'kconfig-trivial' of git://github.com/lacombar/linux-2.6 into kbuild/kconfig commit 47cb55a99bf8c72c85be3700ed8fe4e1dd495fa4 Merge: 22cb839 0f82bdf Author: Mark Brown Date: Wed Jun 8 15:25:07 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit 22cb839bc8545b3a68ae00107cae3636752bb94d Author: Mark Brown Date: Mon Apr 25 18:30:45 2011 +0100 ASoC: Support Speyside build variants with WM8962 fitted Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 417ceff939bc61d4c71d24f071fad3f20ba4a1bd Author: Mark Brown Date: Wed Jun 8 14:44:06 2011 +0100 ASoC: Defer all WM8962 clocking configuration until power up Don't require an audio rate SYSCLK in hw_params() in order to better support microphone detection use cases. Signed-off-by: Mark Brown commit 8f63aaa887d723f52d44b41074486defcd42ad95 Author: Mark Brown Date: Tue Jun 7 23:14:37 2011 +0100 ASoC: Implement base 5 band EQ control for WM8962 ReTune Mobile modes are not currently supported. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 649a1a0ef28e5db99e838060f415a111566c63ea Author: Mark Brown Date: Tue Jun 7 23:16:29 2011 +0100 ASoC: Report errors when we have a WM8962 IRQ and don't get FLL lock We really should be getting the interrupt - if we don't get one it's very likely that the configuration is incorrect and audio will fail. Also increase the timeout substantially in this case for safety. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit c7356da9e2ede4a89d000bde8a8a4408890943b9 Author: Mark Brown Date: Tue Jun 7 23:13:53 2011 +0100 ASoC: Factor out I2C usage in WM8962 driver The chip can actually support SPI so we shouldn't assume we've got an I2C device even though that's the most common configuration. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit ffdaa48aed8dae94037b26a2f9050128facfaa2e Author: Mark Brown Date: Fri Jun 3 16:36:30 2011 +0100 ASoC: Suppress restore of default register values for rbtree cache sync Currently the rbtree code will write out the entire register map when doing a cache sync which is wasteful and will slow things down. Check to see if the value we're about to write is the default and don't bother restoring it if it is, either the value will have been retained or the device will have been reset and holds the value already. We should really store the defaults in the nodes but this resolves the immediate issue. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit a61944c251c3e68c4bbf6eb96ff61c7b286351c5 Merge: ac9a126 55922c9 Author: Michal Marek Date: Wed Jun 8 16:01:34 2011 +0200 Merge commit 'v3.0-rc1' into kbuild/kconfig commit e13198894bf6308c097e5678ee315e12b2e1b7a8 Author: Paul Mundt Date: Wed Jun 8 19:13:06 2011 +0900 serial: sh-sci: More unused define purging. Signed-off-by: Paul Mundt commit 514820eb982eb85677ed2ecef9710e90e24fbdab Author: Paul Mundt Date: Wed Jun 8 18:51:32 2011 +0900 serial: sh-sci: Consolidate RXD pin handling. Non-SCI parts do not have the special port reg necessary for cases where the RX and SCI pins are muxed and need to be manually polled, so these like always fall back on the normal FIFO processing paths. SH7760 is in a class in and of itself with regards to mapping its SIM card interface via the SCI port class despite not having any of the RXD lines wired up and so implicitly behaving more like a SCIF in this regard. Out of the other CPUs, some support the port check via the same block while others do it through an external SuperI/O, so it's not even possible to perform the check relative to the ioremapped cookie offset, so the separate read semantics are preserved here, too. Signed-off-by: Paul Mundt commit debf9507166eede1e676d27d3298cdfb27399cb4 Author: Paul Mundt Date: Wed Jun 8 18:19:37 2011 +0900 serial: sh-sci: Generalize overrun handling. This consolidates all of the broken out overrun handling and ensures that we have sensible defaults per-port type, in addition to making sure that overruns are flagged appropriately in the error mask for parts that haven't explicitly disabled support for it. Signed-off-by: Paul Mundt commit b03034016184b7e9fd19f2a24ffb131953fdcc41 Author: Paul Mundt Date: Wed Jun 8 17:13:20 2011 +0900 serial: sh-sci: Kill off some more unused definitions. Signed-off-by: Paul Mundt commit a01cdc10689f5d252530d14474528ea785ecfde4 Author: Paul Mundt Date: Wed Jun 8 17:06:25 2011 +0900 serial: sh-sci: Tidy up ioread/write wrappers, kill off unused SCI helper. Signed-off-by: Paul Mundt commit 74bc6953135ae1478acc18046321bfca05b0e823 Author: Stefan Kriwanek Date: Fri May 27 18:40:29 2011 +0200 HID: Add driver to fix Speedlink VAD Cezanne support Speedlink VAD Cezanne have a hardware bug that makes the cursor "jump" from one place to another every now and then. The issue are relative motion events erroneously reported by the device, each having a distance value of +256. This 256 can in fact never occur due to real motion, therefore those events can safely be ignored. The driver also drops useless EV_REL events with a value of 0, that the device sends every time it sends an "real" EV_REL or EV_KEY event. Signed-off-by: Stefan Kriwanek Signed-off-by: Jiri Kosina commit ffbc03bc75b39c7bd412e7cc6d2185c11b0ffedd Author: Stephen Rothwell Date: Wed Jun 8 15:49:33 2011 +1000 net: add needed interrupt.h Fixes these errors after the removal of interrupt.h from netdevice.h: drivers/net/ll_temac_main.c: In function 'temac_open': drivers/net/ll_temac_main.c:859:2: error: implicit declaration of function 'request_irq' drivers/net/ll_temac_main.c:870:2: error: implicit declaration of function 'free_irq' drivers/net/ll_temac_main.c: In function 'temac_poll_controller': drivers/net/ll_temac_main.c:903:2: error: implicit declaration of function 'disable_irq' drivers/net/ll_temac_main.c:909:2: error: implicit declaration of function 'enable_irq' Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit e84d0a4f8e39a73003a6ec9a11b07702745f4c1f Author: Wu Fengguang Date: Sat Apr 23 12:27:27 2011 -0600 writeback: trace event writeback_queue_io Note that it adds a little overheads to account the moved/enqueued inodes from b_dirty to b_io. The "moved" accounting may be later used to limit the number of inodes that can be moved in one shot, in order to keep spinlock hold time under control. Signed-off-by: Wu Fengguang commit 251d6a471c831e22880b3c146bb4556ddfb1dc82 Author: Wu Fengguang Date: Wed Dec 1 17:33:37 2010 -0600 writeback: trace event writeback_single_inode It is valuable to know how the dirty inodes are iterated and their IO size. "writeback_single_inode: bdi 8:0: ino=134246746 state=I_DIRTY_SYNC|I_SYNC age=414 index=0 to_write=1024 wrote=0" - "state" reflects inode->i_state at the end of writeback_single_inode() - "index" reflects mapping->writeback_index after the ->writepages() call - "to_write" is the wbc->nr_to_write at entrance of writeback_single_inode() - "wrote" is the number of pages actually written v2: add trace event writeback_single_inode_requeue as proposed by Dave. CC: Dave Chinner Signed-off-by: Wu Fengguang commit 846d5a091b0506b75489577cde27f39b37a192a4 Author: Wu Fengguang Date: Thu May 5 21:10:38 2011 -0600 writeback: remove .nonblocking and .encountered_congestion Remove two unused struct writeback_control fields: .encountered_congestion (completely unused) .nonblocking (never set, checked/showed in XFS,NFS/btrfs) The .for_background check in nfs_write_inode() is also removed btw, as .for_background implies WB_SYNC_NONE. Reviewed-by: Jan Kara Proposed-by: Christoph Hellwig Signed-off-by: Wu Fengguang commit b7a2441f9966fe3e1be960a876ab52e6029ea005 Author: Wu Fengguang Date: Wed Jul 21 22:19:51 2010 -0600 writeback: remove writeback_control.more_io When wbc.more_io was first introduced, it indicates whether there are at least one superblock whose s_more_io contains more IO work. Now with the per-bdi writeback, it can be replaced with a simple b_more_io test. Acked-by: Jan Kara Acked-by: Mel Gorman Reviewed-by: Minchan Kim Signed-off-by: Wu Fengguang commit 3efaf0faba6793cd91298c76315e15de59c13ae0 Author: Wu Fengguang Date: Thu Dec 16 22:22:00 2010 -0600 writeback: skip balance_dirty_pages() for in-memory fs This avoids unnecessary checks and dirty throttling on tmpfs/ramfs. Notes about the tmpfs/ramfs behavior changes: As for 2.6.36 and older kernels, the tmpfs writes will sleep inside balance_dirty_pages() as long as we are over the (dirty+background)/2 global throttle threshold. This is because both the dirty pages and threshold will be 0 for tmpfs/ramfs. Hence this test will always evaluate to TRUE: dirty_exceeded = (bdi_nr_reclaimable + bdi_nr_writeback >= bdi_thresh) || (nr_reclaimable + nr_writeback >= dirty_thresh); For 2.6.37, someone complained that the current logic does not allow the users to set vm.dirty_ratio=0. So commit 4cbec4c8b9 changed the test to dirty_exceeded = (bdi_nr_reclaimable + bdi_nr_writeback > bdi_thresh) || (nr_reclaimable + nr_writeback > dirty_thresh); So 2.6.37 will behave differently for tmpfs/ramfs: it will never get throttled unless the global dirty threshold is exceeded (which is very unlikely to happen; once happen, will block many tasks). I'd say that the 2.6.36 behavior is very bad for tmpfs/ramfs. It means for a busy writing server, tmpfs write()s may get livelocked! The "inadvertent" throttling can hardly bring help to any workload because of its "either no throttling, or get throttled to death" property. So based on 2.6.37, this patch won't bring more noticeable changes. CC: Hugh Dickins Acked-by: Rik van Riel Acked-by: Peter Zijlstra Reviewed-by: Minchan Kim Signed-off-by: Wu Fengguang commit 6f7186562771ec9b629914df328048449ccddf4a Author: Wu Fengguang Date: Wed Mar 2 17:14:34 2011 -0600 writeback: add bdi_dirty_limit() kernel-doc Clarify the bdi_dirty_limit() comment. Acked-by: Peter Zijlstra Acked-by: Jan Kara Signed-off-by: Wu Fengguang commit e185dda89d69cde142b48059413a03561f41f78a Author: Wu Fengguang Date: Sat Apr 23 11:26:07 2011 -0600 writeback: avoid extra sync work at enqueue time This removes writeback_control.wb_start and does more straightforward sync livelock prevention by setting .older_than_this to prevent extra inodes from being enqueued in the first place. Acked-by: Jan Kara Signed-off-by: Wu Fengguang commit e8dfc30582995ae12454cda517b17d6294175b07 Author: Wu Fengguang Date: Thu Apr 21 12:06:32 2011 -0600 writeback: elevate queue_io() into wb_writeback() Code refactor for more logical code layout. No behavior change. - remove the mis-named __writeback_inodes_sb() - wb_writeback()/writeback_inodes_wb() will decide when to queue_io() before calling __writeback_inodes_wb() Acked-by: Jan Kara Signed-off-by: Wu Fengguang commit f758eeabeb96f878c860e8f110f94ec8820822a9 Author: Christoph Hellwig Date: Thu Apr 21 18:19:44 2011 -0600 writeback: split inode_wb_list_lock into bdi_writeback.list_lock Split the global inode_wb_list_lock into a per-bdi_writeback list_lock, as it's currently the most contended lock in the system for metadata heavy workloads. It won't help for single-filesystem workloads for which we'll need the I/O-less balance_dirty_pages, but at least we can dedicate a cpu to spinning on each bdi now for larger systems. Based on earlier patches from Nick Piggin and Dave Chinner. It reduces lock contentions to 1/4 in this test case: 10 HDD JBOD, 100 dd on each disk, XFS, 6GB ram lock_stat version 0.3 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- class name con-bounces contentions waittime-min waittime-max waittime-total acq-bounces acquisitions holdtime-min holdtime-max holdtime-total ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- vanilla 2.6.39-rc3: inode_wb_list_lock: 42590 44433 0.12 147.74 144127.35 252274 886792 0.08 121.34 917211.23 ------------------ inode_wb_list_lock 2 [] bdev_inode_switch_bdi+0x29/0x85 inode_wb_list_lock 34 [] inode_wb_list_del+0x22/0x49 inode_wb_list_lock 12893 [] __mark_inode_dirty+0x170/0x1d0 inode_wb_list_lock 10702 [] writeback_single_inode+0x16d/0x20a ------------------ inode_wb_list_lock 2 [] bdev_inode_switch_bdi+0x29/0x85 inode_wb_list_lock 19 [] inode_wb_list_del+0x22/0x49 inode_wb_list_lock 5550 [] __mark_inode_dirty+0x170/0x1d0 inode_wb_list_lock 8511 [] writeback_sb_inodes+0x10f/0x157 2.6.39-rc3 + patch: &(&wb->list_lock)->rlock: 11383 11657 0.14 151.69 40429.51 90825 527918 0.11 145.90 556843.37 ------------------------ &(&wb->list_lock)->rlock 10 [] inode_wb_list_del+0x5f/0x86 &(&wb->list_lock)->rlock 1493 [] writeback_inodes_wb+0x3d/0x150 &(&wb->list_lock)->rlock 3652 [] writeback_sb_inodes+0x123/0x16f &(&wb->list_lock)->rlock 1412 [] writeback_single_inode+0x17f/0x223 ------------------------ &(&wb->list_lock)->rlock 3 [] bdi_lock_two+0x46/0x4b &(&wb->list_lock)->rlock 6 [] inode_wb_list_del+0x5f/0x86 &(&wb->list_lock)->rlock 2061 [] __mark_inode_dirty+0x173/0x1cf &(&wb->list_lock)->rlock 2629 [] writeback_sb_inodes+0x123/0x16f hughd@google.com: fix recursive lock when bdi_lock_two() is called with new the same as old akpm@linux-foundation.org: cleanup bdev_inode_switch_bdi() comment Signed-off-by: Christoph Hellwig Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Wu Fengguang commit 424b351fe1901fc909fd0ca4f21dab58f24c1aac Author: Wu Fengguang Date: Wed Jul 21 20:11:53 2010 -0600 writeback: refill b_io iff empty There is no point to carry different refill policies between for_kupdate and other type of works. Use a consistent "refill b_io iff empty" policy which can guarantee fairness in an easy to understand way. A b_io refill will setup a _fixed_ work set with all currently eligible inodes and start a new round of walk through b_io. The "fixed" work set means no new inodes will be added to the work set during the walk. Only when a complete walk over b_io is done, new inodes that are eligible at the time will be enqueued and the walk be started over. This procedure provides fairness among the inodes because it guarantees each inode to be synced once and only once at each round. So all inodes will be free from starvations. This change relies on wb_writeback() to keep retrying as long as we made some progress on cleaning some pages and/or inodes. Without that ability, the old logic on background works relies on aggressively queuing all eligible inodes into b_io at every time. But that's not a guarantee. The below test script completes a slightly faster now: 2.6.39-rc3 2.6.39-rc3-dyn-expire+ ------------------------------------------------ all elapsed 256.043 252.367 stddev 24.381 12.530 tar elapsed 30.097 28.808 dd elapsed 13.214 11.782 #!/bin/zsh cp /c/linux-2.6.38.3.tar.bz2 /dev/shm/ umount /dev/sda7 mkfs.xfs -f /dev/sda7 mount /dev/sda7 /fs echo 3 > /proc/sys/vm/drop_caches tic=$(cat /proc/uptime|cut -d' ' -f2) cd /fs time tar jxf /dev/shm/linux-2.6.38.3.tar.bz2 & time dd if=/dev/zero of=/fs/zero bs=1M count=1000 & wait sync tac=$(cat /proc/uptime|cut -d' ' -f2) echo elapsed: $((tac - tic)) It maintains roughly the same small vs. large file writeout shares, and offers large files better chances to be written in nice 4M chunks. Analyzes from Dave Chinner in great details: Let's say we have lots of inodes with 100 dirty pages being created, and one large writeback going on. We expire 8 new inodes for every 1024 pages we write back. With the old code, we do: b_more_io (large inode) -> b_io (1l) 8 newly expired inodes -> b_io (1l, 8s) writeback large inode 1024 pages -> b_more_io b_more_io (large inode) -> b_io (8s, 1l) 8 newly expired inodes -> b_io (8s, 1l, 8s) writeback 8 small inodes 800 pages 1 large inode 224 pages -> b_more_io b_more_io (large inode) -> b_io (8s, 1l) 8 newly expired inodes -> b_io (8s, 1l, 8s) ..... Your new code: b_more_io (large inode) -> b_io (1l) 8 newly expired inodes -> b_io (1l, 8s) writeback large inode 1024 pages -> b_more_io (b_io == 8s) writeback 8 small inodes 800 pages b_io empty: (1800 pages written) b_more_io (large inode) -> b_io (1l) 14 newly expired inodes -> b_io (1l, 14s) writeback large inode 1024 pages -> b_more_io (b_io == 14s) writeback 10 small inodes 1000 pages 1 small inode 24 pages -> b_more_io (1l, 1s(24)) writeback 5 small inodes 500 pages b_io empty: (2548 pages written) b_more_io (large inode) -> b_io (1l, 1s(24)) 20 newly expired inodes -> b_io (1l, 1s(24), 20s) ...... Rough progression of pages written at b_io refill: Old code: total large file % of writeback 1024 224 21.9% (fixed) New code: total large file % of writeback 1800 1024 ~55% 2550 1024 ~40% 3050 1024 ~33% 3500 1024 ~29% 3950 1024 ~26% 4250 1024 ~24% 4500 1024 ~22.7% 4700 1024 ~21.7% 4800 1024 ~21.3% 4800 1024 ~21.3% (pretty much steady state from here) Ok, so the steady state is reached with a similar percentage of writeback to the large file as the existing code. Ok, that's good, but providing some evidence that is doesn't change the shared of writeback to the large should be in the commit message ;) The other advantage to this is that we always write 1024 page chunks to the large file, rather than smaller "whatever remains" chunks. CC: Jan Kara Acked-by: Mel Gorman Signed-off-by: Wu Fengguang commit ba9aa8399fda48510d80c2fed1afb8fedbe1bb41 Author: Wu Fengguang Date: Wed Jul 21 20:32:30 2010 -0600 writeback: the kupdate expire timestamp should be a moving target Dynamically compute the dirty expire timestamp at queue_io() time. writeback_control.older_than_this used to be determined at entrance to the kupdate writeback work. This _static_ timestamp may go stale if the kupdate work runs on and on. The flusher may then stuck with some old busy inodes, never considering newly expired inodes thereafter. This has two possible problems: - It is unfair for a large dirty inode to delay (for a long time) the writeback of small dirty inodes. - As time goes by, the large and busy dirty inode may contain only _freshly_ dirtied pages. Ignoring newly expired dirty inodes risks delaying the expired dirty pages to the end of LRU lists, triggering the evil pageout(). Nevertheless this patch merely addresses part of the problem. v2: keep policy changes inside wb_writeback() and keep the wbc.older_than_this visibility as suggested by Dave. CC: Dave Chinner Acked-by: Jan Kara Acked-by: Mel Gorman Signed-off-by: Itaru Kitayama Signed-off-by: Wu Fengguang commit e6fb6da2e10682d477f2fdb749451d9fe5d168e8 Author: Wu Fengguang Date: Thu Jul 22 10:23:44 2010 -0600 writeback: try more writeback as long as something was written writeback_inodes_wb()/__writeback_inodes_sb() are not aggressive in that they only populate possibly a subset of eligible inodes into b_io at entrance time. When the queued set of inodes are all synced, they just return, possibly with all queued inode pages written but still wbc.nr_to_write > 0. For kupdate and background writeback, there may be more eligible inodes sitting in b_dirty when the current set of b_io inodes are completed. So it is necessary to try another round of writeback as long as we made some progress in this round. When there are no more eligible inodes, no more inodes will be enqueued in queue_io(), hence nothing could/will be synced and we may safely bail. For example, imagine 100 inodes i0, i1, i2, ..., i90, i91, i99 At queue_io() time, i90-i99 happen to be expired and moved to s_io for IO. When finished successfully, if their total size is less than MAX_WRITEBACK_PAGES, nr_to_write will be > 0. Then wb_writeback() will quit the background work (w/o this patch) while it's still over background threshold. This will be a fairly normal/frequent case I guess. Now that we do tagged sync and update inode->dirtied_when after the sync, this change won't livelock sync(1). I actually tried to write 1 page per 1ms with this command write-and-fsync -n10000 -S 1000 -c 4096 /fs/test and do sync(1) at the same time. The sync completes quickly on ext4, xfs, btrfs. Acked-by: Jan Kara Signed-off-by: Wu Fengguang commit cb9bd1159c5fe8995e151fa7df10fa19f8c119cc Author: Wu Fengguang Date: Wed Jul 21 22:50:57 2010 -0600 writeback: introduce writeback_control.inodes_written The flusher works on dirty inodes in batches, and may quit prematurely if the batch of inodes happen to be metadata-only dirtied: in this case wbc->nr_to_write won't be decreased at all, which stands for "no pages written" but also mis-interpreted as "no progress". So introduce writeback_control.inodes_written to count the inodes get cleaned from VFS POV. A non-zero value means there are some progress on writeback, in which case more writeback can be tried. Acked-by: Jan Kara Acked-by: Mel Gorman Signed-off-by: Wu Fengguang commit 94c3dcbb0b0cdfd82cedd21705424d8044edc42c Author: Wu Fengguang Date: Wed Apr 27 19:05:21 2011 -0600 writeback: update dirtied_when for synced inode to prevent livelock Explicitly update .dirtied_when on synced inodes, so that they are no longer considered for writeback in the next round. It can prevent both of the following livelock schemes: - while true; do echo data >> f; done - while true; do touch f; done (in theory) The exact livelock condition is, during sync(1): (1) no new inodes are dirtied (2) an inode being actively dirtied On (2), the inode will be tagged and synced with .nr_to_write=LONG_MAX. When finished, it will be redirty_tail()ed because it's still dirty and (.nr_to_write > 0). redirty_tail() won't update its ->dirtied_when on condition (1). The sync work will then revisit it on the next queue_io() and find it eligible again because its old ->dirtied_when predates the sync work start time. We'll do more aggressive "keep writeback as long as we wrote something" logic in wb_writeback(). The "use LONG_MAX .nr_to_write" trick in commit b9543dac5bbc ("writeback: avoid livelocking WB_SYNC_ALL writeback") will no longer be enough to stop sync livelock. Reviewed-by: Jan Kara Signed-off-by: Wu Fengguang commit 6e6938b6d3130305a5960c86b1a9b21e58cf6144 Author: Wu Fengguang Date: Sun Jun 6 10:38:15 2010 -0600 writeback: introduce .tagged_writepages for the WB_SYNC_NONE sync stage sync(2) is performed in two stages: the WB_SYNC_NONE sync and the WB_SYNC_ALL sync. Identify the first stage with .tagged_writepages and do livelock prevention for it, too. Jan's commit f446daaea9 ("mm: implement writeback livelock avoidance using page tagging") is a partial fix in that it only fixed the WB_SYNC_ALL phase livelock. Although ext4 is tested to no longer livelock with commit f446daaea9, it may due to some "redirty_tail() after pages_skipped" effect which is by no means a guarantee for _all_ the file systems. Note that writeback_inodes_sb() is called by not only sync(), they are treated the same because the other callers also need livelock prevention. Impact: It changes the order in which pages/inodes are synced to disk. Now in the WB_SYNC_NONE stage, it won't proceed to write the next inode until finished with the current inode. Acked-by: Jan Kara CC: Dave Chinner Signed-off-by: Wu Fengguang commit 47732cb4fdee72e6ea4d2ae40d72da4d2cedf97e Author: H Hartley Sweeten Date: Tue Jun 7 13:52:01 2011 -0700 gpio/ep93xx: fix pr_fmt output With this driver now being moved from arch/arm/mach-ep93xx/gpio.c to drivers/gpio/gpio-ep93xx.c the prefix "ep93xx" is now redundant in the pr_* output. Using KBUILD_MODNAME is sufficient. Signed-off-by: H Hartley Sweeten Signed-off-by: Grant Likely commit ef3b4f8cc20e80c767e47b848fb7512770ab80d7 Author: Benjamin Herrenschmidt Date: Mon Apr 11 11:34:33 2011 +1000 pci/of: Consolidate pci_bus_to_OF_node() The generic code always get the device-node in the right place now so a single implementation will work for all archs Signed-off-by: Benjamin Herrenschmidt Acked-by: Grant Likely Acked-by: Michal Simek Acked-by: Jesse Barnes commit 64099d981c9916ec4a485b3ffbb89fa877fc595f Author: Benjamin Herrenschmidt Date: Thu Apr 7 13:09:47 2011 +1000 pci/of: Consolidate pci_device_to_OF_node() All archs do more or less the same thing now, move it into a single generic place. I chose pci.h rather than of_pci.h to avoid having to change all call-sites to include the later. Signed-off-by: Benjamin Herrenschmidt Acked-by: Michal Simek Acked-by: Grant Likely Acked-by: Jesse Barnes commit 3d5fe5a65af9c0b609d6e26b8d63fe5923c4e512 Author: Benjamin Herrenschmidt Date: Mon Apr 11 11:19:09 2011 +1000 x86/devicetree: Use generic PCI <-> OF matching Instead of walking the whole PCI tree to update the of_node's for PCI busses and devices after the fact, enable the new generic core code for doing so by providing the proper device nodes for the PCI host bridges Signed-off-by: Benjamin Herrenschmidt Acked-by: Grant Likely Tested-by: Sebastian Andrzej Siewior commit bf13a6fa09b8db7f1fd59b5e2ed3674a89a6a25c Author: Benjamin Herrenschmidt Date: Mon Apr 11 11:17:26 2011 +1000 microblaze/pci: Move the remains of pci_32.c to pci-common.c There's no point in keeping this separate. Even if microblaze grows a 64-bit variant, it will probably be able to re-use that code as-is Signed-off-by: Benjamin Herrenschmidt Acked-by: Michal Simek Acked-by: Grant Likely commit 72bdee79f89ffc9ce425611cdaf88d28a96b8b66 Author: Benjamin Herrenschmidt Date: Mon Apr 11 11:20:25 2011 +1000 microblaze/pci: Remove powermac originated cruft The whole business with re-assigning all bus numbers, creating an OF bus "map" etc... is ancient powermac stuff that you really don't care about on microblaze. Similarly pci_device_from_OF_node() is unused and by getting rid of it we can get rid of a whole lot of code otherwise unused on this architecture Signed-off-by: Benjamin Herrenschmidt Acked-by: Grant Likely Acked-by: Michal Simek commit 98d9f30c820d509145757e6ecbc36013aa02f7bc Author: Benjamin Herrenschmidt Date: Mon Apr 11 11:37:07 2011 +1000 pci/of: Match PCI devices to OF nodes dynamically powerpc has two different ways of matching PCI devices to their corresponding OF node (if any) for historical reasons. The ppc64 one does a scan looking for matching bus/dev/fn, while the ppc32 one does a scan looking only for matching dev/fn on each level in order to be agnostic to busses being renumbered (which Linux does on some platforms). This removes both and instead moves the matching code to the PCI core itself. It's the most logical place to do it: when a pci_dev is created, we know the parent and thus can do a single level scan for the matching device_node (if any). The benefit is that all archs now get the matching for free. There's one hook the arch might want to provide to match a PHB bus to its device node. A default weak implementation is provided that looks for the parent device device node, but it's not entirely reliable on powerpc for various reasons so powerpc provides its own. Signed-off-by: Benjamin Herrenschmidt Acked-by: Michal Simek Acked-by: Jesse Barnes commit 5ad7b85b90e30eb5af4fbf6ce21907a2bd8934df Author: Akshay Joshi Date: Mon Jun 6 09:07:31 2011 -0400 USBIP: Remove unnecessary whitespace before newline characters. In this file, in certain places, newline characters in pr_debug() calls had whitespace before them. This patch removes this extraneous whitespace. Signed-off-by: Akshay Joshi Signed-off-by: Greg Kroah-Hartman commit cf77acfca3ec3170a665c58b2712d275b8ab3860 Author: Márton Németh Date: Mon May 30 21:50:26 2011 +0200 usbip: change dev_attr_group to constant The dev_attr_group variable is never changed and it is only passed to the second parameter of sysfs_create_group() and sysfs_remove_group() functions. These functions are defined in linux/sysfs.h: the second parameter is a pointer to const in both cases. Signed-off-by: Márton Németh Signed-off-by: Greg Kroah-Hartman commit 0a186be35963bd9bc4c148554188e927578115b0 Author: matt mooney Date: Fri May 27 01:49:24 2011 -0700 staging: usbip: stub_main.c: simplify busid_table initialization Set the whole structure to zero instead of individually setting each member, which simplifies the for loop. This was suggested by walter harms . Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 1109566469f7df817753939227e989c6395a7595 Author: matt mooney Date: Fri May 27 01:44:15 2011 -0700 staging: usbip: userspace: usbip_list.c: cleanup exported device functions Rename functions and cleanup coding style. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 35dd0c2da61a584678a4a8425c174c7dbdd36e2b Author: matt mooney Date: Fri May 27 01:44:14 2011 -0700 staging: usbip: userspace: rename usbip device and interface Add prefix of usbip_ to internal usb device and interface to avoid confusion with the kernel types. This also identifies the types as being part of the usbip library. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 74ce259c670a6d468802c725570a16b0483a2ae8 Author: matt mooney Date: Fri May 27 01:44:13 2011 -0700 staging: usbip: userspace: usbip_list.c: refactor local USB device listing Combines the different list display types for local devices into one function. Removes dependence on utils.h, which only exists as a way to circumvent libsysfs and will be removed. The devices are now sorted as an added benefit of this refactor. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 3e4fda9f956d3e8f14e8cabc6dd4f1caa95981e4 Author: matt mooney Date: Fri May 27 01:44:12 2011 -0700 staging: usbip: change the busid size Change busid size to correspond with SYSFS_BUS_ID_SIZE, which was already being used in most cases. This eliminates the need to define BUS_ID_SIZE in the userspace code. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 4cbab52d18fc35e3c66f68e0382cd0815d31bb5f Author: matt mooney Date: Fri May 27 01:44:11 2011 -0700 staging: usbip: userspace: move header includes out utils.h The includes have been moved out of utils.h to their respective source files where they are suppose to be. An include guard is also added to utils.h Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 950a4cd8fcc61ffc7bb8cd5890e80e7459e22597 Author: matt mooney Date: Fri May 27 01:44:10 2011 -0700 staging: usbip: userspace: use memset instead of bzero bzero is and has been deprecated since POSIX.1-2001. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit a6d81814a5fe83c43539c0df8ed2d701911496c2 Author: Márton Németh Date: Fri May 27 06:18:48 2011 +0200 usbip: remove extra whitespace Only one whitespace is enough after "return". Signed-off-by: Márton Németh Signed-off-by: Greg Kroah-Hartman commit acf51ab8ce3ed9e409c6c04eae1968affa8ae311 Author: Greg Kroah-Hartman Date: Fri May 27 11:26:00 2011 +0800 Staging: usbip: vhci.h: remove FSF address Remove the FSF address from the comment header. Signed-off-by: Greg Kroah-Hartman commit 69c685c7f5c50d5bc8c6b3e996d68495c7d3e09a Author: Greg Kroah-Hartman Date: Fri May 27 11:25:59 2011 +0800 staging: usbip: README: we need to document the protocol Document the protocol. Signed-off-by: Greg Kroah-Hartman commit 1e35d87d63c1cb954d3169b893898a12b746dadd Author: matt mooney Date: Thu May 26 06:17:13 2011 -0700 staging: usbip: userspace: usbip_network: rename and cleanup function Rename tcp_connection to usbip_net_tcp_connection, which alludes to a usbip network library that will eventually follow. The implementation of this function has also been cleaned up. Headers had to be adjusted due to the elimination of the old usbip.h. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit d2c15e2580ac4ed73f0a25a69843d51211e9c620 Author: matt mooney Date: Thu May 26 06:17:12 2011 -0700 staging: usbip: userspace: usbipd.c: add header into source file The old usbip.h header that was only used to masked what each source file needed has been changed. So some headers this file needed had to be added. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit e9837bbb3e694eef4c55c934ebf1f8a0399b142c Author: matt mooney Date: Thu May 26 06:17:11 2011 -0700 staging: usbip: userspace tools v1.0.0 The new and improved (well somewhat, with a ways to go) userspace utility. mfm:pts/8[~/tmp/userspace] May26 05:18:31 % ./src/usbip help usage: usbip [--debug] [version] [help] attach Attach a remote USB device detach Detach a remote USB device list List exported or local USB devices bind Bind device to usbip-host.ko unbind Unbind device from usbip-host.ko This first commit of the userspace `usbip' utility uses to same implementation as the old tools, `usbip' and `usbip_bind_driver'. Nothing significant has changed so compatibility with windows has _not_ been broken. However, the tools remain broken in many ways due to the old implementation. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 58058422f84523d8ab73b98753670dc9377e071a Author: matt mooney Date: Thu May 26 06:17:10 2011 -0700 staging: usbip: userspace: vhci_driver: parameterize path names Define a macro for the bus type and use libsysfs for class path. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 7e485ee7f530bb8f5c02c2ae68d73ce7ee3dfad5 Author: matt mooney Date: Thu May 26 06:17:09 2011 -0700 staging: usbip: userspace: change struct class_device to usbip_class_device Rename class_device struct to avoid confusion and change member names. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 5a285cf5233b261a11b69f0ecd1c912df8a41163 Author: matt mooney Date: Thu May 26 06:17:08 2011 -0700 staging: usbip: userspace: set kernel module names in one place Move kernel module name setting to usbip_common.h so that macros can be used instead of hard coding the names in multiple places. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 988e7520818c4e9ac6d4b195376a46bb24a0dd99 Author: Márton Németh Date: Thu May 26 09:24:45 2011 +0200 usbip: remove check for negative values for an unsigned value The parameter rhport is unsigned so there is no need checking for negative values. This will remove the following warning message when compiling with "make W=1 ...": drivers/staging/usbip/vhci_sysfs.c: In function ‘valid_args’: drivers/staging/usbip/vhci_sysfs.c:138: warning: comparison of unsigned expression < 0 is always false Signed-off-by: Márton Németh Signed-off-by: Greg Kroah-Hartman commit 2da8c8bc44b572cbf623629ff736608dc7968436 Author: Frederic Weisbecker Date: Tue Jun 7 22:53:39 2011 +0200 sched: Remove pointless in_atomic() definition check It's really supposed to be defined here. If it's not then we actually want the build to crash so that we know it, and not keep it silent. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra commit 9ba422b346c9654ec78ee0a5b7c5db6e5d4c48dd Author: Márton Németh Date: Tue May 24 23:19:18 2011 +0200 usbip: simplify lock handling in valid_request() The function calls spin_lock() and spin_unlock() should be in pair. This patch makes this pairing more clear for the reader of the code. Signed-off-by: Márton Németh Signed-off-by: Greg Kroah-Hartman commit 0392bbb6f6af31888570a24641158d9b51b07eb6 Author: matt mooney Date: Thu May 19 21:37:06 2011 -0700 staging: usbip: vhci_hcd.c: rename init and exit functions Change the prefix of the __init and __exit functions to vhci_hcd_ to correspond with the modules name. And change the suffix of the __exit function to exit instead of cleanup. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 3028d0ae6c69318c11f67affb29411d30c0cb955 Author: matt mooney Date: Thu May 19 21:37:05 2011 -0700 staging: usbip: usbip_common.c: rename init and exit functions Change the prefix of the __init and __exit functions to usbip_core_ to correspond with the modules name. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 4b93bb37bb53ca6d44600a94a1bd9af781a12f0d Author: matt mooney Date: Thu May 19 21:37:04 2011 -0700 staging: usbip: userspace: bind_driver.c: update kernel module name Change kernel module name to usbip-host. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit d012c2a5aca12abe1c7edc361447733861da9e95 Author: matt mooney Date: Thu May 19 21:37:03 2011 -0700 staging: usbip: stub_dev.c: move stub_driver definition and update driver name Move the stub_driver definition to the end of file and, therefore, remove foward declarations. Update driver name to usbip-host. A few comments were slightly edited too. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit b7d27eadf8eff42efc6bdd5c41275c3708abb789 Author: matt mooney Date: Thu May 19 21:37:02 2011 -0700 staging: usbip: usbip_common.h: reorganize and document request headers Document the request header structures; move #defines out of the structures; organize function declarations by source file; and move inline functions to the end of file. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 2282e1fb6b696b0fa3c08b6a9b3a94be84ef458b Author: matt mooney Date: Thu May 19 21:37:01 2011 -0700 staging: usbip: usbip_common.c: fix misspelled function name Change pakcet to packet in usbip_iso_packet_correct_endian(). Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 7d4de89f1965ec21a8c0b8de0cfbdd57094a2686 Author: matt mooney Date: Thu May 19 21:37:00 2011 -0700 staging: usbip: stub_main.c: use KMEM_CACHE macro Change kmem_cache_create() to the KMEM_CACHE() macro. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 27ed5da0b626680ddc1670e7b6cc106472ac14c4 Author: matt mooney Date: Thu May 19 21:36:59 2011 -0700 staging: usbip: stub_main.c: rename init and exit functions Change the prefix of the __init and __exit functions to usbip_host_ to correspond with the modules name. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 41e02f011648b9b338d3dc1121eb3da9cfbf312c Author: matt mooney Date: Thu May 19 21:36:58 2011 -0700 staging: usbip: stub_main.c: code cleanup Remove match_find() and replace with get_busid_idx(); change get_busid_priv(), add_match_busid(), and del_match_busid() to use get_busid_idx(); and cleanup code in the other functions. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit efad25e9a34d25c1c2469aa81ae1418ca1f26942 Author: matt mooney Date: Thu May 19 21:36:57 2011 -0700 staging: usbip: stub_main.c: reorder functions Reorder functions so sysfs_ops, show() and store(), are adjacent, and init_busid_table() is at the beginning of the file. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 87352760173082c2a774f83dc6fe826fdbf219c0 Author: matt mooney Date: Thu May 19 21:36:56 2011 -0700 staging: usbip: remove unnecessary lines and extra return statements Also, fix a few alignment issues that were originally missed. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 00d760b057e0fb1e5fb515071af2cc87d15439f8 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:12 2011 -0700 Staging: hv: vmbus: Change Cleanup to cleanup in channel.c Change the jump label Cleanup to cleanup. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 926ae5262171b2b23c94bc5cbd8dbb9d32152419 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:11 2011 -0700 Staging: hv: vmbus: Cleanup some error values in channel.c Cleanup some error values in channel.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 3a7546d934ca210ebeb51b1bb5180a3774cee443 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:10 2011 -0700 Staging: hv: vmbus: Cleanup error codes in connection.c Cleanup error codes in connection.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 39594abcd47da2f587804dff2fedbd7ada4670d0 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:09 2011 -0700 Staging: hv: vmbus: Cleanup error codes in hv.c Cleanup error codes in hv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit d6c1c5de4e77d75e251bf30d68c99b7feae82ea2 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:08 2011 -0700 Staging: hv: vmbus: Cleanup error handling in vmbus_bus_init() Cleanup error handling in vmbus_bus_init(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 6de925b18936c1f756981ba70a7d9915888a355d Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:07 2011 -0700 Staging: hv: vmbus: Cleanup some error codes in vmbus_drv.c Cleanup some error codes in vmbus_drv.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit f38cf9ccd61d2acd5bc9121fabf2f6e77d74b885 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:06 2011 -0700 Staging: hv: vmbus: Properly handle memory allocation failure in channel.c Properly handle memory allocation failure in channel.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 40961de3350b99cfa93cd80437cb39ec287f839a Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:05 2011 -0700 Staging: hv: vmbus: Increase the timeout for some critical calls Increase the timeout for some critical calls. In testing we discovered that the current timeout of 1 second was insufficient under some conditions. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit e8e27047746d1977bf547f93e701765f5ce6ec5f Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:04 2011 -0700 Staging: hv: vmbus: Rename local variables in vmbus_drv.c Rename local variables in vmbus_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit e826f1d505d3a6bfc304addc7f83c7afcc31c830 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:03 2011 -0700 Staging: hv: vmbus: Fix a memory barrier call in vmbus_drv.c Use the correct memory barrier call in vmbus_drv.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 3740652d98b25477f6959a17922435385776d7d2 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:02 2011 -0700 Staging: hv: vmbus: Get rid of a dated comment in channel_mgmt.c Staging: hv: vmbus: Get rid of a dated comment in channel_mgmt.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit c0e2490fd42b0676e1ecb2d4ba7a6d0ec21d557b Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:01 2011 -0700 Staging: hv: vmbus: Get rid of an unused function in connection.c Get rid of an unused function in connection.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit db545da77b197f580fe73a0a21a0982dd2def8e3 Author: K. Y. Srinivasan Date: Mon Jun 6 15:50:00 2011 -0700 Staging: hv: vmbus: Get rid of a dated comment in vmbus_drv.c Get rid of a dated comment in vmbus_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit e9a27a9f9ef18826030f6d50efde0dc68b7d1be2 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:59 2011 -0700 Staging: hv: vmbus: Use the newly introduced state in closing the channel Now, use the newly introduced state in closing the channel and eliminate a potential failure condition (that currently was not being handled correctly). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit f9f1db832b6d04303f443a7f941367355844678a Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:58 2011 -0700 Staging: hv: vmbus: Embed the state needed to close the channel Now, embed the state needed to close the channel - so we would not have to allocate memory in the channel close path. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 7d7c75cd47e3850ad256c048f6e35e4a5cf8e1fd Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:57 2011 -0700 Staging: hv: vmbus: Move the definition of struct vmbus_channel In preparation for embedding the state needed to close the channel, move the definition of struct vmbus_channel. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit f27df643d045c146f3233b67ad7d161d1aa1e730 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:56 2011 -0700 Staging: hv: vmbus: Correct some dated comments in channel.c Correct some dated comments in channel.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit bed9ba76546e8d0fbd7f7593e93d3423b03ea74c Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:55 2011 -0700 Staging: hv: vmbus: Get rid of some dated comments in channel.c Get rid of some dated comments in channel.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 30fbee49b0715ff1eb1f91644983f2c35b9421d5 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:54 2011 -0700 Staging: hv: vmbus: Get rid of the unused function vmbus_ontimer() Now, get rid of the unused function vmbus_ontimer(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit e690b5a9be26965543b7252492ed22052af960b6 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:53 2011 -0700 Staging: hv: vmbus: Change the memory barrier in hv_ringbuffer_write() Use the correct memory barrier interface in Change the memory barrier in hv_ringbuffer_write(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit df2a4a711478f5fc28b3ac85f07e191591e31eb0 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:52 2011 -0700 Staging: hv: vmbus: Introduce read dependency in hv_get_ringbuffer_availbytes() Introduce read dependency in hv_get_ringbuffer_availbytes(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit ef0d5b23022e207e9f367de52f4172daab3ac690 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:51 2011 -0700 Staging: hv: vmbus: Fix the memory barrier in hv_ringbuffer_read() Use the correct barrier interface. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit ac4accb2bd619380c2404f9064e91f48674c6eb8 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:50 2011 -0700 Staging: hv: vmbus: Get rid of the poll timer in the channel state Since tis is not used anymore, get rid of the poll timer in the channel state. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 0a62040eac5ec13e5ffca82e4d9a7dca888fa236 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:49 2011 -0700 Staging: hv: vmbus: Get rid of unneeded calls to dump_vmbus_channel Get rid of unneeded calls to dump_vmbus_channel and get rid of the unused static function that dumps the channel. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit d66434782cae2fa5ac905d1e2f6f6480126d30c0 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:48 2011 -0700 Staging: hv: vmbus: Get rid of the unused wrapper - vmbus_onchannel_event() Now, get rid of the unused wrapper - vmbus_onchannel_event(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit df452fa120cfe0ac6aa4255425b303a9863e3cc1 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:47 2011 -0700 Staging: hv: vmbus: Directly invoke the channel callback Now, directly invoke the channel callback. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 7259d82321814393bd59f667623130e44b6ed26b Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:46 2011 -0700 Staging: hv: vmbus: Get rid of the call to dump channel state in channel event handler Get rid of the call to dump channel state in channel event handler. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 6a8ddc71b77b9f88a41a336dea383582f8eddbd6 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:45 2011 -0700 Staging: hv: vmbus: Get rid of the timer based handling of channel events Get rid of the timer based handling of channel events. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 30c1edc63953acbb15ee2f08fedc07811de12f0b Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:44 2011 -0700 Staging: hv: blkvsc: We don't support removable media; get rid of unnecessary state We don't support removable media; get rid of unnecessary state. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 3a4505897ccaf387f4befa8c0d308d994bcdbc37 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:43 2011 -0700 Staging: hv: blkvsc: Fix bugs in the module unload path Fix bugs in the module unload path for the blkvsc driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 9d7b18d1844fa0bd0f9c5da3c12c1315a3a465fd Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:42 2011 -0700 Staging: hv: vmbus: Add the DSDT _HID name as well Add the DSDT _HID name as well, in addition to the _DDN name. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 2da9e1d6d4ae4cde1ad6d9e365417aabf466c665 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:41 2011 -0700 Staging: hv: vmbus: Get rid of vmbus_acpi_exit() by inlining the code Get rid of vmbus_acpi_exit() by inlining the code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 0246604ce0367b0c414cc77a05362308ef4ede54 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:40 2011 -0700 Staging: hv: vmbus: Get rid of vmbus_acpi_init() by inlining the code Staging: hv: vmbus: Get rid of vmbus_acpi_init() by inlining the code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 607c1a11d0ca017d12134444c3cca4da1f6594f8 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:39 2011 -0700 Staging: hv: vmbus: Make vmbus an acpi bus driver Now, make the vmbus driver an ACPI bus driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 3d2de26762433dc7569b62ced95bde9b3189467f Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:38 2011 -0700 Staging: hv: vmbus: Use the DSDT specified irq for vmbus DSDT specifies the irq value for the vmbus driver; use it unconditionally. This is an exclusive interrupt line dedicated for the vmbus driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 9aaa995e6af6ede7b06e3379d09ae70065c04d82 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:37 2011 -0700 Staging: hv: vmbus: Change the signature of vmbus_bus_init() In preparation for making the vmbus driver an ACPI bus driver, change the signature of vmbus_bus_init() to accept the irq value. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 3e1edf6a6c0c4140bb6c22fe880d924f4d10b164 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:36 2011 -0700 Staging: hv: storvsc: Add a DMI signature to support auto-loading To support auto-loading the storvsc driver, add a DMI signature. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 604a1eb0eb67c38e29f9efd8d20668904f93b50c Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:35 2011 -0700 Staging: hv: vmbus: Don't free the channel when the channel is closed When the driver unloads, the device must persist. A channel represents the device and so we should not free the channel when the channel is closed as part of the driver unloading. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 2aa05dcbfbc017ac99c15de8da9d6c840a3acd5b Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:34 2011 -0700 Staging: hv: mouse: Get rid of the unused initialization of the name field The name field of hv_driver is unused in hv_mouse.c; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit efb83a7f46386a2c07866e9b48275ec3bfe22895 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:33 2011 -0700 Staging: hv: blk: Get rid of the unused initialization of the name field The name field of hv_driver is unused in blkvsc_drv.c; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit a838f9dcb9e5e6d61d91148fc269d7f378575834 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:32 2011 -0700 Staging: hv: stor: Get rid of the unused initialization of the name field The name field of hv_driver is unused in storvsc_drv.c; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 990f05e6cbad5c7af01b160b6d4158db9d20ca27 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:31 2011 -0700 Staging: hv: stor: Rename the vriable gStorVscDeviceType in storvsc_drv.c Rename the vriable gStorVscDeviceType in storvsc_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 940861210faca66644035f30ed26cdbda557b9de Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:30 2011 -0700 Staging: hv: stor: Get rid of unnecessary DPRINTs in stor vsc_drv.c Get rid of unnecessary DPRINTs in stor vsc_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit d36b0a03420d0b0b96683bebbc5e7af16320b4bc Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:29 2011 -0700 Staging: hv: storvsc: Cleanup some dated/unnecessary comments Cleanup some dated/unnecessary comments. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 2935a407e2173886457816e34c29b130f11198e5 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:28 2011 -0700 Staging: hv: storvsc: Fix a bug in the storvsc_remove() function When the storvs driver unloads, we need to accomodate disk cache flushes. Re-order the code to permit this. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit d9bbae8316989106c126849f0dfc71853ddc5d0d Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:27 2011 -0700 Staging: hv: storvsc: Cleanup the module init function in storvsc_drv.c Get rid of unnecessary layering in the module init path. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit c63ba9e1e34c76b325e9eb1227994b310f9feeaa Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:26 2011 -0700 Staging: hv: storvsc: Cleanup the exit function in storvsc_drv.c Get rid of unnecessary layering in the module exit path. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit a1997c205e16536a3da93b3bb8fa1862c6cff1e7 Author: K. Y. Srinivasan Date: Mon Jun 6 15:49:25 2011 -0700 Staging: hv: vmbus: In vmbus_child_driver_unregister() don't set the bus field to NULL As part of conforming to the Linux Driver Model, do not set the bus field to NULL when the driver un-registers. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Greg Kroah-Hartman commit 122a5f6410f49c28e901e4a911a110b675b8bd55 Author: Haiyang Zhang Date: Fri May 27 06:21:55 2011 -0700 staging: hv: use delayed_work for netvsc_send_garp() Instead of sleeping in a scheduled work, we now use delayed_work for netvsc_send_garp(). Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: K. Y. Srinivasan Cc: Stephen Hemminger Signed-off-by: Greg Kroah-Hartman commit 729a28495debadb0264c2c4906074c0692e0f29e Author: Haiyang Zhang Date: Fri May 27 06:21:54 2011 -0700 staging: hv: convert DPRINT_DBG() to netdev_dbg() in dump_rndis_message() Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: K. Y. Srinivasan Cc: Stephen Hemminger Signed-off-by: Greg Kroah-Hartman commit a5923f5689e037ba0e8e10f3d5ea66463601f39b Author: Haiyang Zhang Date: Wed May 25 15:02:24 2011 -0700 staging: hv: remove netvsc send buffer and related functions netvsc send buffer is not used, so remove it. Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit e931a2b8893ec1150b30380d68c453b33cce3137 Author: Haiyang Zhang Date: Mon May 23 09:03:50 2011 -0700 staging: hv: removed commented out code from rndis_filter_receive() Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bdbad576d572f0584a0b2f1596406c533034022c Author: Haiyang Zhang Date: Mon May 23 09:03:49 2011 -0700 staging: hv: fix typo in name rndis_filte_device_add() rename rndis_filte_device_add to rndis_filter_device_add Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8d895aea8a87665d79d7acf9ddf38697073fb497 Author: Haiyang Zhang Date: Mon May 23 09:03:48 2011 -0700 staging: hv: remove commented out code in netvsc_remove() Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit df06bcff819555bf9aca38b2f8263920836fe851 Author: Haiyang Zhang Date: Mon May 23 09:03:47 2011 -0700 staging: hv: change rndis_filter_device_remove() to void return type rndis_filter_device_remove() always return 0, so change it to void return type. Also cleaned up the error checking in the caller. Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit ca06a22a4181cae9cc291ccdccc5e7188c51b67d Author: Haiyang Zhang Date: Mon May 23 09:03:46 2011 -0700 staging: hv: remove commented out code from netvsc_drv.c Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b1956a81af0c23d65a4cafee9e39c52e4c6cadcc Author: Haiyang Zhang Date: Mon May 23 09:03:45 2011 -0700 staging: hv: remove unnecessary code in netvsc_probe(). netif_carrier_off() was called earlier in this function, and there is no other thread access this device yet. The status checking code is not necessary here. Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6741d8ec3c564d26871bec5a8b6f02bdecc41345 Author: Roland Vossen Date: Wed Jun 1 13:46:08 2011 +0200 staging: brcm80211: updated TODO with current state of affairs Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 225fa52c2397605892477a53f388aa49ef7d8c5a Author: Roland Vossen Date: Wed Jun 1 13:46:07 2011 +0200 staging: brcm80211: renamed file Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a9cfc9b0b5ce1e52a1486553a9dad82df0ef3755 Author: Roland Vossen Date: Wed Jun 1 13:46:06 2011 +0200 staging: brcm80211: removed keys.h Code cleanup. Moved used definitions into main.h Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b745b6bb468ee308ac3b9884fd80e71f2bd8315a Author: Roland Vossen Date: Wed Jun 1 13:46:05 2011 +0200 staging: brcm80211: deleted brcmsmac/cfg.h and brcmsmac/bsscfg.h Code cleanup. Moved used sections to other source files. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 383aab51ddddcb05600a9fed9913325243d478f8 Author: Roland Vossen Date: Wed Jun 1 13:46:04 2011 +0200 staging: brcm80211: moved /include/srom.h into /brcmsmac dir Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 32b45065766b7421db2264a3ab7564c046a46d4d Author: Roland Vossen Date: Wed Jun 1 13:46:03 2011 +0200 staging: brcm80211: removed unused definitions from include/soc.h Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c55a12234663125bf8c4183e27f1ca71bd19ca1e Author: Roland Vossen Date: Wed Jun 1 13:46:02 2011 +0200 staging: brcm80211: moved /include/sdio_host.h to /brcmfmac dir Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c54f52f60a8e92d98b9df0579c93f73a8d382ca9 Author: Roland Vossen Date: Wed Jun 1 13:46:01 2011 +0200 staging: brcm80211: cleaned include/brcm_hw_ids.h Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8955cafb4589dff70fe068bc1eff8c9395cf8cb2 Author: Roland Vossen Date: Wed Jun 1 13:46:00 2011 +0200 staging: brcm80211: deleted header file include/aidmp.h Code cleanup. Merged used contents into brcmsmac/aiutils.c. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit cc3cea5ae091532bf8ed0976499129fe53a589ac Author: Roland Vossen Date: Wed Jun 1 13:45:59 2011 +0200 staging: brcm80211: renamed files in brcmsmac and include directories Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f855796549c0a0531c9c7521baec97793d7a6fc4 Author: Roland Vossen Date: Wed Jun 1 13:45:58 2011 +0200 staging: brcm80211: prepared header files for file rename Code cleanup. Removing 'bcm' and 'wlc_' file name prefixes. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 25036341c3f471c0329fba4e5bba51d261c95931 Author: Roland Vossen Date: Wed Jun 1 13:45:57 2011 +0200 staging: brcm80211: cleanup after R_REG/W_REG patches Code cleanup. Removed unused sections. Added () to make macro safe. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b61a4be59b7df9c2cee72156fa2958b6ab0fe666 Author: Roland Vossen Date: Wed Jun 1 13:45:56 2011 +0200 staging: brcm80211: further simplified register access macro's The SELECT_BUS_READ and SELECT_BUS_WRITE macro's always select a (sdio) bus operation for fullmac, and a memory operation for softmac. Thus they can be removed by expanding them in place. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4489518533a1342fc685b58ada2c9a8a422d5686 Author: Roland Vossen Date: Wed Jun 1 13:45:55 2011 +0200 staging: brcm80211: moved register read/write macro's Code cleanup. R_REG()/W_REG() macro's are overly complex. Copied the macro's to both fullmac and softmac. Next patches will simplify both copies of the macro's. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 62dfdb38ef294533fd1c0859fae28163f1bd27cc Author: Roland Vossen Date: Wed Jun 1 13:45:54 2011 +0200 staging: brcm80211: removed OSL_WRITE_REG and OSL_READ_REG macros Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit d794fec0a9546f705980750f96df4bead15a15a0 Author: Arend van Spriel Date: Wed Jun 1 13:45:53 2011 +0200 staging: brcm80211: remove nvram related source files nvram.c is intended for devices with configuration stored in flash. This is not required for the softmac driver nor the fullmac driver so it has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit f97e956afc30cf69c73e75035dc69aafa9a04215 Author: Roland Vossen Date: Wed Jun 1 13:45:52 2011 +0200 staging: brcm80211: renamed utility module related files Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 67ad48bcf22f4a54d5921769d4403d94cb152f51 Author: Roland Vossen Date: Wed Jun 1 13:45:51 2011 +0200 staging: brcm80211: cleaned up prefix for utility functions Code cleanup. 'bcm' replaced by 'brcmu_', which is shorthand for 'Broadcom Utilities' (the 'brcmutil.ko' library module). Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 3918ec2bed87444d924482bd3b185393a4622183 Author: Roland Vossen Date: Wed Jun 1 13:45:50 2011 +0200 staging: brcm80211: removed lmac remnants Code cleanup. LMAC (a Broadcom specific acronym) was not used. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 6cd8d7bffbfb9a78df322b1963a13389c737bc0f Author: Roland Vossen Date: Wed Jun 1 13:45:49 2011 +0200 staging: brcm80211: removed Broadcom specific acronym 'hnd'. Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit aefacecc108435bde491b6ba512e38805cfd888b Author: Roland Vossen Date: Wed Jun 1 13:45:48 2011 +0200 staging: brcm80211: removed unused code from bcmotp.c Code cleanup. The supported chips all contain an 'IPX' controller, the older 'hnd' OTP controller is not used. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 72a27fb8429dd5fb534f138c7663626254ac6fcc Author: Roland Vossen Date: Wed Jun 1 13:45:47 2011 +0200 staging: brcm80211: removed wl_export.h Code cleanup, reducing number of header files. Merged into brcmsmac_80211.h. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit da4ef2aea547323c6f3fd0e49681d1cbce9544e6 Author: Roland Vossen Date: Wed Jun 1 13:45:46 2011 +0200 staging: brcm80211: removed wl_dbg.h Code cleanup. Reducing number of header files. Merged into wlc_types.h. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5706e3de2773d267d3608ada1e4ea6cfdc2a38e4 Author: Roland Vossen Date: Wed Jun 1 13:45:45 2011 +0200 staging: brcm80211: renamed files to get rid of wl_ file name prefix Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8817f75429a18e8ceb4aa24bb7ae6c6019f36d70 Author: Roland Vossen Date: Wed Jun 1 13:45:44 2011 +0200 staging: brcm80211: removed wl_ (vendor specific acronym) Replaced by brcms_, which is short hand for 'Broadcom softmac'. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b64f7a667569f8773278b72e285272c93b504c15 Author: Franky Lin Date: Wed Jun 1 13:45:43 2011 +0200 staging: brcm80211: clean up wl_iw.h in fullmac Remove #include lines in wl_iw.h Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 583c3827f1b3d67d1443d8198d50c38d7bbb485c Author: Franky Lin Date: Wed Jun 1 13:45:42 2011 +0200 staging: brcm80211: clean up wl_cfg80211.h in fullmac Remove #include lines in wl_cfg80211.h Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 96a0ec20d7b1beabec70c11220471118a5ec1acd Author: Franky Lin Date: Wed Jun 1 13:45:41 2011 +0200 staging: brcm80211: remove sdioh.h from fullmac Remove unused head file Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0df4604ed09873c46ddb3232a3efc5a2798854cb Author: Franky Lin Date: Wed Jun 1 13:45:40 2011 +0200 staging: brmc80211: remove sdio.h from fullmac Use standard sdio.h from mmc core instead of private one Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 597600ad927dd2dce89b7dfa2118bfe212183a15 Author: Franky Lin Date: Wed Jun 1 13:45:39 2011 +0200 staging: brcm80211: combine sbsdpcmdev.h and sbsdio.h Combine two head files both for sdio sb configuration in fullmac Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 86c01843876d81caba252f09c2f3977417b91ced Author: Franky Lin Date: Wed Jun 1 13:45:38 2011 +0200 staging: brcm80211: absorb msgtrace.h in fullmac Absorb msgtrace.h into dhd_common.c Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b49b14d2e37deb99064bef7f010d02566cf8adec Author: Franky Lin Date: Wed Jun 1 13:45:37 2011 +0200 staging: brcm80211: absorb bcmsdpcm.h in fullmac Absorb bcmsdpcm.h into dhd_sdio.c Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7c6100ee08c1583e771a7ce19408273eafb31583 Author: Franky Lin Date: Wed Jun 1 13:45:36 2011 +0200 staging: brcm80211: clean up dhd.h in fullmac Remove #include lines in dhd.h Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4bccf92c5a815137cbd7ec2ca7d02833f153d640 Author: Franky Lin Date: Wed Jun 1 13:45:35 2011 +0200 staging: brcm80211: absorb bcmcdc.h into dhd_cdc.c Merge bcmcdc.h into dhd_cdc.c in fullmac as it's only used by dhd_cdc.c Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a4181fb7ef6f735b43044616c4efdc98ab779951 Author: Franky Lin Date: Wed Jun 1 13:45:34 2011 +0200 staging: brcm80211: remove BCMEMBEDIMAGE related codes from fullmac Remove BCMEMBEDIMAGE related codes in fullmac driver as we don't need this in firmware download routine. Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit ac9e1c0e695fc3273b3381debcdc35792eb379f0 Author: Arend van Spriel Date: Wed Jun 1 13:45:33 2011 +0200 staging: brcm80211: remove phy_version.h Removed the file phy_version.h from the driver sources. It was not used. For keeping track of the phy version, which is a separately developed component, one definition has been kept and placed in wlc_phy_int.h. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 1f7a0c7c00936db0740f368034815e52248e1864 Author: Roland Vossen Date: Wed Jun 1 13:45:32 2011 +0200 staging: brcm80211: macro cleanup Code cleanup. Replaced bcopy() by memcpy(). Removed redundant PAD macro definitions. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit d33fcc301da63433593ca55228ad327ac0114b79 Author: Roland Vossen Date: Wed Jun 1 13:45:31 2011 +0200 staging: brcm80211: moved sbdma.h into brcmsmac/bcmdma.h Code cleanup. Removed fullmac dependencies on this file. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 745c9e6ebc001b540ecbf5401d70797236caa1df Author: Roland Vossen Date: Wed Jun 1 13:45:30 2011 +0200 staging: brcm80211: deleted sbconfig.h, renamed sbcc.h Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit d5f27a8f894ed069a5e7336139a9a13391c6b13e Author: Roland Vossen Date: Wed Jun 1 13:45:29 2011 +0200 staging: brcm80211: replaced typedef si_t with struct si_pub Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit fd24b0fdaed2545f18af57b1553d078b43b16ed1 Author: Arend van Spriel Date: Wed Jun 1 13:45:28 2011 +0200 staging: brcm80211: remove pci core defintion files The source file nicpci.c is the only file left which needs the pci core register definitions. These definitions have been added to the source file so the include files can be removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 8543df3a1f5d3dafd69882787627b075e62bb3eb Author: Arend van Spriel Date: Wed Jun 1 13:45:27 2011 +0200 staging: brcm80211: remove dependency on pci core difinitions from aiutils.c The file aiutils.c included the register definition includes for the PCI and PCIe core. This was for two functions which have been partly moved to nicpci.c. This means that nicpci.h is the only include file to provide interface to aiutils.c for PCI core related functions. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit a607d3c2bc9839fbc3ee8a8c99beeb7b3a3844c2 Author: Arend van Spriel Date: Wed Jun 1 13:45:26 2011 +0200 staging: brcm80211: add braces to SI_INFO macro definition The additional braces allow the casted parameter to be indirected immediately. Here is an example to clarify: x = SI_INFO(y); => z = SI_INFO(y)->field_a; z = x->field_a; Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 63182f61193deb1b3b23f7d65c3e0477eb4a0770 Author: Arend van Spriel Date: Wed Jun 1 13:45:25 2011 +0200 staging: brcm80211: remove unused functions from nicpci.c Several functions are defined but not used. These have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit e4eb68645202fed4966f080cd68a9fc61b117f0c Author: Arend van Spriel Date: Wed Jun 1 13:45:24 2011 +0200 staging: brcm80211: remove functions from nicpci.h Couple of functions in the header file are actually only used by nicpci.c itself and as such made static and removed from the header file. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 60204bef36d17504aeef37a8a209aa53562969e7 Author: Arend van Spriel Date: Wed Jun 1 13:45:23 2011 +0200 staging: brcm80211: move PCI related header files to appropriate driver folder The include file pcicfg.h is now only required by brcmfmac driver. Similarly, nicpci.h is only required by brcmsmac driver. These header files have been moved to the appropriate driver specific folder. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 4b1681163cbe5a07d322332b1ec238ffdf43a084 Author: Arend van Spriel Date: Wed Jun 1 13:45:22 2011 +0200 staging: brcm80211: remove usage of pcicfg.h from brcmsmac driver All PCI related definitions needed by the brcmsmac driver are going to be consolidated in single header file nicpci.h. This commit removes need to include pcicfg.h in brcmsmac driver sources. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit e40514c2001334da200ba1e019cfecb0650335d8 Author: Roland Vossen Date: Wed Jun 1 13:45:21 2011 +0200 staging: brcm80211: cleaned bcmdefs.h Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 31c9f6d970f3b7bc5d58267c6f6aba94cce23872 Author: Roland Vossen Date: Wed Jun 1 13:45:20 2011 +0200 staging: brcm80211: moved header files to more specific directory Code cleanup. Header files only used by the softmac were moved to the brcmsmac dir, same approach for fullmac header files. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b6fe70c3aa866db38b72d1cf84b41c4cae80c87b Author: Roland Vossen Date: Wed Jun 1 13:45:19 2011 +0200 staging: brcm80211: cleaned sb* header files Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 23d77de3a199ca70889cfd422a1244bbd7511f9d Author: Arend van Spriel Date: Wed Jun 1 13:45:18 2011 +0200 staging: brcm80211: remove inclusion of bcmsrom_fmt.h The header file bcmsrom_fmt.h contains a lot of macro definitions used by bcmsrom.c and one type definition used by wlc_phy_int.h. The defintions have been moved appropriately and the include file bcmsrom_fmt.h is removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit d70462f5d6395f4419bcdca6c5ae6f5080884995 Author: Arend van Spriel Date: Wed Jun 1 13:45:17 2011 +0200 staging: brcm80211: remove extern variable definitions in bcmsrom.c The file bcmsrom.c defined two global externals. As these were also not used these have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit a4f031d35ea3e08ec8384fa3df544b86824523fd Author: Arend van Spriel Date: Wed Jun 1 13:45:16 2011 +0200 staging: brcm80211: remove usage of bcmsrom_tbl.h The include file bcmsrom_tbl.h was only included by bcmsrom.c. The required definitions have been move to bcmsrom.c and bcmsrom_tbl.h has subsequenly been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 7885471758027255436073b69400ad67d1ee37b0 Author: Arend van Spriel Date: Wed Jun 1 13:45:15 2011 +0200 staging: brcm80211: remove SDIO related definitions from nicpci.h The header file nicpci.h is now only used by brcmsmac driver, which does not support SDIO. The conditional defintions have been removed from the header file. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit d0a0941b0a578dad4b70774bd88a155997c01844 Author: Roland Vossen Date: Wed Jun 1 13:45:14 2011 +0200 staging: brcm80211: removed include/proto dir Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a019382eec8e61584d97e11747e284aa2c2cb567 Author: Roland Vossen Date: Wed Jun 1 13:45:13 2011 +0200 staging: brcm80211: cleaned bcmeth.h and bcmevent.h Code cleanup. Deleted unused definitions and moved others into less generic files. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5ca06e06321b7e3a521a334cdc41291a8f417c75 Author: Roland Vossen Date: Wed Jun 1 13:45:12 2011 +0200 staging: brcm80211: removed 802.11.h Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 9152bf26bc37b0865c2a0769276b9c07fc4e1f7f Author: Roland Vossen Date: Wed Jun 1 13:45:11 2011 +0200 staging: brcm80211: emptied include/802.11.h Code cleanup. Removed unused definitions. Moved other definitions to less generic locations. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 78539a2147c2cfbb6a0bb091c13c88c1ac4f8ef8 Author: Roland Vossen Date: Wed Jun 1 13:45:10 2011 +0200 staging: brcm80211: removed unused stuff from proto/802.11.h Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f1c7a08a5f2aafb36e136fd2d2e4782cedb3c7a6 Author: Roland Vossen Date: Wed Jun 1 13:45:09 2011 +0200 staging: brcm80211: merged two header files into dhd_sdio.c Code cleanup. Decreasing number of header files. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 70963f98ee7854f8acd541349089c72b5b70c77c Author: Roland Vossen Date: Wed Jun 1 13:45:08 2011 +0200 staging: brcm80211: removed 'hnd' from everything but function names Code cleanup. 'hnd' is a company specific acronym. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 189aed097b1dc458d2290034fb3136147e64a1de Author: Roland Vossen Date: Wed Jun 1 13:45:07 2011 +0200 staging: brcm80211: removed 'hnd' from filenames Cleanup. 'hnd' is a company specific acronym. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5d6e3aec346a0ce5e028609aa6acfdd1f2828bcf Author: Roland Vossen Date: Wed Jun 1 13:45:06 2011 +0200 staging: brcm80211: added support for more bcm43224 based boards Patch created by Gottfried Haider. Add support for BCM943224HMB devices as found in recent Lenovo ThinkPads. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f13c6f2fa21a60db34ec2187e0aa6e90195e08b9 Author: Franky Lin Date: Wed Jun 1 13:45:05 2011 +0200 staging: brcm80211: remove iovars IOV_HISPEED Remove unused sdio related iovars IOV_HISPEED for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 602a8ab7172b34985fe531009da90c45fead3b96 Author: Franky Lin Date: Wed Jun 1 13:45:04 2011 +0200 staging: brcm80211: remove iovars IOV_SDMODE Remove unused sdio related iovars IOV_SDMODE for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 49e6a4ddf498129b361151640df09aa40fd37e88 Author: Franky Lin Date: Wed Jun 1 13:45:03 2011 +0200 staging: brcm80211: remove iovars IOV_CLOCK Remove unused sdio related iovars IOV_CLOCK for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 23e5a7cd3e410bde0553844c36c72cb0909553d7 Author: Franky Lin Date: Wed Jun 1 13:45:02 2011 +0200 staging: brcm80211: remove iovars IOV_POWER Remove unused sdio related iovars IOV_POWER for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7e241f1349ff31772a1e8dd5fe8d806ac6ac55fb Author: Franky Lin Date: Wed Jun 1 13:45:01 2011 +0200 staging: brcm80211: remove iovars IOV_DIVISOR Remove unused sdio related iovars IOV_DIVISOR for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4c0951c7481b036dbd8dafdb6aa41b6d226669e6 Author: Franky Lin Date: Wed Jun 1 13:45:00 2011 +0200 staging: brcm80211: remove iovars IOV_HOSTREG Remove unused sdio related iovars IOV_HOSTREG for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a1730b8ce1e9cfb3657fa4bd8d7e273ae9e25496 Author: Franky Lin Date: Wed Jun 1 13:44:59 2011 +0200 staging: brcm80211: remove iovars IOV_NUMLOCALINTS Remove unused sdio related iovars IOV_NUMLOCALINTS for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c3299379d5c3464fd34038760ddaa2cfc531320e Author: Franky Lin Date: Wed Jun 1 13:44:58 2011 +0200 staging: brcm80211: remove iovars IOV_DMA Remove unused sdio related iovars IOV_DMA for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 404b32869fadf46770c5cdffa06cc31f3f1e53ab Author: Franky Lin Date: Wed Jun 1 13:44:57 2011 +0200 staging: brcm80211: remove iovars IOV_BLOCKMODE Remove unused sdio related iovars IOV_BLCOKMODE for fullmac driver Signed-off-by: Franky Lin Reviewed-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 85d63686d89273f2879002310836b2bf41bc211c Author: Roland Vossen Date: Wed Jun 1 13:44:56 2011 +0200 staging: brcm80211: updated MAINTAINERS, README and TODO files README now only contains a link to the brcm80211 driver page. Two maintainers have been added, one deleted. TODO file has also been updated. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5688aac73d2fdcce9ff7cd1e959bd29a6794ef62 Author: Roland Vossen Date: Wed Jun 1 13:44:55 2011 +0200 staging: brcm80211: removed wlioctl.h and dhdioctl.h Code cleanup. These header files were emptied by the previous patch. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 434c14ef61516c6ab3adbf3a77aea817417113aa Author: Roland Vossen Date: Wed Jun 1 13:44:54 2011 +0200 staging: brcm80211: emptied wlioctl.h Code cleanup. Broadcom specific ioctl functionality is not necessary in the Linux world. Deleted unused defines and structs from wlioctl.h. Moved softmac specific items from wlioctl.h to softmac header files, same for fullmac items. Moved shared fullmac/softmac definitions to other header files. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 6a9a25eec0b55ea45e22710a9bcaf9690cb42fe6 Author: Roland Vossen Date: Wed Jun 1 13:44:53 2011 +0200 staging: brcm80211: replaced #ifdef __mips__ sections by W_REG_FLUSH Code cleanup. A read-after-write construct is present in the code to ensure write order for certain Broadcom chips. Those chips are: bcm4706, bcm4716, bcm4717, bcm4718. All these chips contain a MIPS processor. This patch gets rid of several #ifdef __mips__ sections by defining a new macro in a header file. This patch does not introduce behavioral changes and is purely meant for code cleanup. The __mips__ define will be made more specific in a future patch. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0a0ad7d255d6e84fb265f61ac090ff1c1e546444 Author: Arend van Spriel Date: Wed Jun 1 13:44:52 2011 +0200 staging: brcm80211: fix compiler warning introduced Patch "[0f06b6a] remove WLC_WATCHDOG_TBTT macro" resulted in compiler warning because static function wlc_watchdog_backup_bi() is no longer used. This has been fixed in this patch. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 5dc168747b4eed2795ac3b1555e4fd2d09f2a970 Author: Arend van Spriel Date: Wed Jun 1 13:44:51 2011 +0200 staging: brcm80211: cleanup struct wlc_info definition The structure definition for wlc_info contained a lot of fields that are only initialized or not used at all. These have been removed to cleanup the driver code. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit e63ee4da21befa768e21c0581670d8a044a79569 Author: Arend van Spriel Date: Wed Jun 1 13:44:50 2011 +0200 staging: brcm80211: remove WLC_WATCHDOG_TBTT macro The expanded macro expression will always be false so it has been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 63d7c94c4bfbc28a9d860712cbdd33aa31db52b7 Author: Arend van Spriel Date: Wed Jun 1 13:44:49 2011 +0200 staging: brcm80211: removed unused timeout fields in wlc_protection The structure definition wlc_protection contained a numbers of timeout fields that were not used in the driver. These have been removed. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 9fa341e5f57b8dda0d20e531b8767e767531ccea Author: Arend van Spriel Date: Wed Jun 1 13:44:48 2011 +0200 staging: brcm80211: cleanup struct wl_info removed unused field piomode from struct wl_info definition. Signed-off-by: Arend van Spriel Reviewed-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit c5e7c035952e0a7e7bbbab2f73ee3f158a0f2a91 Author: Roland Vossen Date: Wed Jun 1 13:44:47 2011 +0200 staging: brcm80211: removed iovar layer from softmac Code cleanup. Softmac contained a redundant level of indirection, named 'iovar functionality'. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7306e4e311954c98f0d44d63693839b0fb602707 Author: Roland Vossen Date: Wed Jun 1 13:44:46 2011 +0200 staging: brcm80211: removed unused Broadcom specific ioctls codes Code cleanup. Removal of code that is not invoked. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 931749bf78b969c54de9bbc67cf29b13a40bb73b Author: Mohammed Shafi Shajakhan Date: Mon Jun 6 23:02:33 2011 +0530 ath9k: make use of a helper to get paprd scale factor Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 36cb7cce230a06378915d405cd33adf58dd5fe2a Author: Yogesh Ashok Powar Date: Mon Jun 6 14:54:17 2011 +0530 mwifiex: disable transmission buffer aggregation for AMSDU packets Padding per MSDU will affect the length of next packet and hence the exact length of next packet is uncertain here. Also, aggregation of transmission buffer, while downloading the data to the card, wont gain much on the AMSDU packets as the AMSDU packets utilizes the transmission buffer space to the maximum (adapter->tx_buf_size). Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit fb3c19bc9687d972b83faf366b38ac807eca8f25 Author: Yogesh Ashok Powar Date: Mon Jun 6 14:53:02 2011 +0530 mwifiex: adding check for enough space before padding All MSDUs, except the last one in an AMSDU, should end up at 4 bytes boundary. There is need to check if enough skb_tailroom space exists before padding the skb. Also re-arranging code for better readablity. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit a8fe32937e4e55c9ed73c79800198d137a1b968a Author: Yogesh Ashok Powar Date: Mon Jun 6 14:50:58 2011 +0530 mwifiex: Remove redundant skb_queue_empty checks The check of skb list empty before calling skb_peek and skb_dequeue is redundant. These functions returns NULL if the list is empty. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit fcf2176c87af77e5ee947edaf8e390bc67b729d8 Author: Yogesh Ashok Powar Date: Mon Jun 6 14:49:32 2011 +0530 mwifiex: remove list traversal in mwifiex_num_pkts_in_txq Instead of counting the number of packets in txq for particular RA list before AMSDU creation, maintain a counter which will keep track of the same. This will reduce some MIPS while generating AMSDU traffic as we only have to check the counter instead of traversing through skb list. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit 485868266150022a139b74ba4daf0da9ad86c1c0 Author: Greg Dietsche Date: Sun Jun 5 19:30:11 2011 -0500 iwlwifi: remove unecessary if statement the code always returns ret regardless, so if(ret) check is unecessary. Signed-off-by: Greg Dietsche Signed-off-by: John W. Linville commit f973f87ec13e82256d45e11b204a8e3fb3808635 Author: Stanislaw Gruszka Date: Thu Jun 2 16:46:20 2011 +0200 iwlagn: refactor iwlagn_mac_channel_switch Use less indentions and remove uneeded irq-save flags. Signed-off-by: Stanislaw Gruszka Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 70559a06657c55aeefe2f06619d3592a08cc68ac Author: Shahar Levi Date: Sun May 22 16:10:22 2011 +0300 wl12xx: Stop BA session event from device Adding new event that close RX BA session in case of periodic BT activity limiting WLAN activity. Signed-off-by: Shahar Levi Signed-off-by: John W. Linville commit f41ccd71d800c6fac18d2b4ae1830a222c6713da Author: Shahar Levi Date: Sun May 22 16:10:21 2011 +0300 mac80211: Stop BA session event from device Some devices support BT/WLAN co-existence algorigthms. In order not to harm the system performance and user experience, the device requests not to allow any RX BA session and tear down existing RX BA sessions based on system constraints such as periodic BT activity that needs to limit WLAN activity (eg.SCO or A2DP). In such cases, the intention is to limit the duration of the RX PPDU and therefore prevent the peer device to use A-MPDU aggregation. Adding ieee80211_stop_rx_ba_session() callback that can be used by the driver to stop existing BA sessions. Signed-off-by: Shahar Levi Signed-off-by: John W. Linville commit bd50cfa89153a67429935a15e577a5eb5f10dd1b Author: Steven Rostedt Date: Tue Jun 7 07:18:45 2011 -0400 slob/lockdep: Fix gfp flags passed to lockdep Doing a ktest.pl randconfig, I stumbled across the following bug on boot up: ------------[ cut here ]------------ WARNING: at /home/rostedt/work/autotest/nobackup/linux-test.git/kernel/lockdep.c:2649 lockdep_trace_alloc+0xed/0x100() Hardware name: Modules linked in: Pid: 0, comm: swapper Not tainted 3.0.0-rc1-test-00054-g1d68b67 #1 Call Trace: [] warn_slowpath_common+0xad/0xf0 [] warn_slowpath_null+0x1a/0x20 [] lockdep_trace_alloc+0xed/0x100 [] __kmalloc_node+0x30/0x2f0 [] pcpu_mem_alloc+0x13a/0x180 [] percpu_init_late+0x48/0xc2 [] ? mem_init+0xd8/0xe3 [] start_kernel+0x1c2/0x449 [] x86_64_start_reservations+0x163/0x167 [] x86_64_start_kernel+0x133/0x142^M ---[ end trace a7919e7f17c0a725 ]--- Then I ran a ktest.pl config_bisect and it came up with this config as the problem: CONFIG_SLOB Looking at what is different between SLOB and SLAB and SLUB, I found that the gfp flags are masked against gfp_allowed_mask in SLAB and SLUB, but not SLOB. On boot up, interrupts are disabled and lockdep will warn if some flags are set in gfp and interrupts are disabled. But these flags are masked off with the gfp_allowed_mask during boot. Because SLOB does not mask the flags against gfp_allowed_mask it triggers the warn on. Adding this mask fixes the bug. I also found that kmem_cache_alloc_node() was missing both the mask and the lockdep check, and that was added too. Acked-by: Matt Mackall Cc: Paul Mundt Cc: Nick Piggin Signed-off-by: Steven Rostedt Signed-off-by: Pekka Enberg commit 41bfce8edebbe9dc6ddc238a71f07fbe9ab46016 Merge: 805a3b8 51892db Author: John W. Linville Date: Tue Jun 7 14:07:11 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 0168bf0d130de83cd3532b834237c6228a6158dd Author: Liam Girdwood Date: Tue Jun 7 16:08:05 2011 +0100 ASoC: core - Allow components to probe/remove in sequence. Some ASoC components depend on other ASoC components to provide clocks and power resources in order to probe() and vice versa for remove(). Allow components to be ordered so that components can be probed() and removed() in sequences that conform to their dependencies. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 552d1ef6b5a98d7b95959d5b139071e3c90cebf1 Author: Liam Girdwood Date: Tue Jun 7 16:08:33 2011 +0100 ASoC: core - Optimise and refactor pcm_new() to pass only rtd Currently pcm_new() passes in 3 arguments :- card, pcm and DAI. Refactor this to only pass in 1 argument (i.e. the rtd) since struct rtd contains card, pcm and DAI along with other members too that are useful too. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit b6badddcccf9d48a01e9a9b33c47922976291ab6 Author: Robert P. J. Day Date: Sat May 28 19:11:39 2011 -0400 DOCUMENTATION: Replace create_device() with device_create(). Fix a rather obvious typo. Signed-off-by: Robert P. J. Day Signed-off-by: Greg Kroah-Hartman commit 5464e9c72194d4db9665346b3973c1fb27ba87be Author: Robert P. J. Day Date: Sat May 28 09:31:39 2011 -0400 DOCUMENTATION: Update overview.txt in Doc/driver-model. A few grammatical fixes, clarifications and corrections in just the overview file for the driver model documentation. Signed-off-by: Robert P. J. Day Signed-off-by: Greg Kroah-Hartman commit e556b8131a787dd44aa614100fd8cc81794efe45 Author: J Freyensee Date: Wed May 25 14:50:26 2011 -0700 pti: pti_tty_install documentation mispelling. This patch tidies up the documentation for pti_tty_install() function. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit e7328ae1848966181a7ac47e8ae6cddbd2cf55f3 Author: Jiri Slaby Date: Sun Jun 5 22:51:49 2011 +0200 serial: 8250, increase PASS_LIMIT With virtual machines like qemu, it's pretty common to see "too much work for irq4" messages nowadays. This happens when a bunch of output is printed on the emulated serial console. This is caused by too low PASS_LIMIT. When ISR loops more than the limit, it spits the message. I've been using a kernel with doubled the limit and I couldn't see no problems. Maybe it's time to get rid of the message now? Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 2807190b69f60ce4a04a9c7c523c9bce8cb62b2e Author: Michael Reed Date: Tue May 31 12:06:28 2011 -0500 8250_pci Add EEH support to the 8250 driver for IBM/Digi PCIe 2-port Adapter The purpose of the patch is to add EEH support to the 8250_PCI driver for the IBM/Digi PCIE 2port Async EIA-232 Adapter that uses a PLX chipset on the PPC platforrm. Basic support for this adapter was recently added https://lkml.org/lkml/2011/5/11/341 This patch was created against the linux-next kernel Cc: Greg Kroah-Hartman Cc: Breno Leitao Cc: Scott Kilau Signed-off-by: Michael Reed Signed-off-by: Greg Kroah-Hartman commit ae92c1f5e7b6708371365d262625ac19e67c1e79 Author: Florian Fainelli Date: Tue May 24 10:43:03 2011 +0200 TTY: export NR_LDISC and N_* line discipline numbers to user-space Since commit (4564f9e5: consolidate line discipline number definitions) the patch moved all line discipline number from a per-architecture termios.h to a shared one: tty.h. However, prior to this consolidation work, the line discipline numbers were outside of an ifdef __KERNEL__/endif block so these numbers used to be exported to user-space. Since such numbers are kernel ABI anyway, and tty.h is already included for user- space header processing, just move these relevant defines outside of the ifdef __KERNEL__/endif block in include/linux/tty.h. CC: Maxime Bizon Signed-off-by: Florian Fainelli Acked-by: Tilman Schmidt Signed-off-by: Greg Kroah-Hartman commit 0e2adc06843a9b5a28af4ca5f796240297907897 Author: Uwe Kleine-König Date: Thu May 26 10:41:17 2011 +0200 serial/pch: use global div helper instead of creating a private one Signed-off-by: Uwe Kleine-König Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit b9b24558f7d36c550b5cf0b550a8926f8c03cdbd Author: Frédéric Brière Date: Sun May 29 15:08:04 2011 -0400 parport/serial: add support for Timedia/SUNIX cards to parport_serial Timedia/SUNIX PCI cards with both serial and parallel ports are currently supported by 8250_pci and parport_pc individually. Moving that support into parport_serial allows using both types of ports at the same time. This was successfully tested with a SUNIX 4079T. Signed-off-by: Frédéric Brière Acked-by: Alan Cox Cc: linux-serial@vger.kernel.org Cc: linux-parport@lists.infradead.org Signed-off-by: Greg Kroah-Hartman commit 5bf8f501e05930364b345ed8710c5b1a13207134 Author: Frédéric Brière Date: Sun May 29 15:08:03 2011 -0400 serial: 8250_pci: add .probe member to struct pci_serial_quirk This function, if present, is called early on by the 8250_pci probe; it can be used to reject devices meant for parport_serial. (The .init function cannot be used for this purpose, as it is also called by parport_serial.) Signed-off-by: Frédéric Brière Acked-by: Alan Cox Cc: linux-serial@vger.kernel.org Cc: linux-parport@lists.infradead.org Signed-off-by: Greg Kroah-Hartman commit 7808edcd306f22aeb23775d34e70b7fa2f58b852 Author: Nicos Gollan Date: Thu May 5 21:00:37 2011 +0200 Basic support for Moschip 9900 family I/O chips Add I/O based support for serial and parallel ports of the following chips: Vendor: Moschip (0x9710) Parts (device IDs) * 9900 (0x9900) * 9904 (0x9904 * 9901 (0x9912, also sold as 9912) * 9922 (0x9922) On all chips but the 9900, a single port is provided per PCI subdevice (subvendor-ID 0xA000, subdevice-IDs 0x1000 for serial, 0x2000 for parallel with proper class codes). In cascading configurations, the 9900 provides two devices per subdevice, with subvendor-ID 0xA000 and subdevice-IDs 0x30ps where p is the number of parallel ports and s the number of serial ports. Basic testing was only done on the serial part of a 9912 to the point where it can be used for a serial kernel console, and advanced features are completely untested. It is possible to reduce functionality of the chips by adding a configuration EEPROM, and the datasheet [1] is inconsistent w.r.t subdevices in the 4s+2s1p and 2s1p+4s configurations. The subdevice-ID 0x3012 should likely read 0x3011 with a serial port in function 3, which would be consistent with the BAR layouts. For now, the drivers ignore subdevices with ID 0x1000 and no class code. The parallel ports are integrated in parport_serial even for purely parallel parts to reduce the footprint of the patch. [1] http://www.moschip.com/data/products/MCS9900/MCS9900_Datasheet.pdf Signed-off-by: Nicos Gollan Signed-off-by: Greg Kroah-Hartman commit e73a9891b3a1c9fc0970e0c9dbe2cc47933ad752 Author: Kuninori Morimoto Date: Mon Jun 6 14:19:03 2011 +0900 usb: renesas_usbhs: add DMAEngine support USB DMA was installed on "normal DMAC" when SH7724 or older SuperH, but the "USB-DMAC" was prepared on recent SuperH. These 2 DMAC have a little bit different behavior. This patch add DMAEngine code for "normal DMAC", but it is still using PIO fifo. The DMA fifo will be formally supported in the future. You can enable DMA fifo by local fixup usbhs_fifo_pio_push_handler -> usbhs_fifo_dma_push_handler usbhs_fifo_pio_pop_handler -> usbhs_fifo_dma_pop_handler on usbhsg_ep_enable. This DMAEngine was tested by g_file_storage on SH7724 Ecovec board Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 0cb7e61d16ac68a2c5dd73a00e211287848d16e7 Author: Kuninori Morimoto Date: Mon Jun 6 14:18:58 2011 +0900 usb: renesas_usbhs: tidyup pio handler name This patch tidyup PIO packet handler name. This is a preparation for DMAEngine support Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 0432eed008024e0e90f16207ab406ac6ec877cac Author: Kuninori Morimoto Date: Mon Jun 6 14:18:54 2011 +0900 usb: renesas_usbhs: tifyup packet start timing packet transfer timing are controlled in mod_gadget on current renesas_usbhs, and this style will be imitated on mod_host. But it need not be managed with host/gadget if it is general transfer. By this patch, the packet transfer timing is managed in fifo.c Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit d77e3f4e1743834c7b4acb54004ffd7f57c82582 Author: Kuninori Morimoto Date: Mon Jun 6 14:18:50 2011 +0900 usb: renesas_usbhs: add pipe/fifo link renesas_usbhs has CFIFO which is for PIO transfer, and D0FIFO/D1FIFO which are for DMA transfer. The pipe selects one of these fifo when it send/recv data. But fifo must not be selected to different pipe in same time. This patch add pipe/fifo link for each other, and fifo is not selected by another pipe until it is unselected. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit d3af90a5e4e8fb7a93d408799682e566c9270808 Author: Kuninori Morimoto Date: Mon Jun 6 14:18:44 2011 +0900 usb: renesas_usbhs: add usbhsf_fifo renesas_usbhs has CFIFO/D0FIFO/D1FIFO. But current renesas_usbhs is using CFIFO (for PIO) only for now. The fifo selection method is needed for DMAEngine support. This is a preparation for DMAEngine support Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 97664a207bc2601a03a300f00e6922038cd5b99c Author: Kuninori Morimoto Date: Mon Jun 6 14:18:38 2011 +0900 usb: renesas_usbhs: shrink spin lock area spin lock was very effective while doing 1 packet send/recv on current renesas_usbhs driver. But this lock is enough only - modify packet/pipe link - modify interrpt mask - modify fifo access This patch shrink spin lock area Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 8a2c225ddb2d23a9b3f70af2ec70d28e4abd0b8e Author: Kuninori Morimoto Date: Mon Jun 6 14:18:33 2011 +0900 usb: renesas_usbhs: remove usbhsg_queue_get usbhsg_queue_get is no longer needed. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit dad67397f2090b29cd1f169e6a4ac6f3532c6858 Author: Kuninori Morimoto Date: Mon Jun 6 14:18:28 2011 +0900 usb: renesas_usbhs: modify data transfer interrupt On current driver, overall data transfer method was implemented in fifo.c, but its interrupt which is member of packet queue control was still in mod_gadget.c. This patch move it into fifo.c. By this patch, the packet/fifo control is independent from mod_gadget. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 659d495404d20ff8f96644fca82c772455f1226c Author: Kuninori Morimoto Date: Mon Jun 6 14:18:23 2011 +0900 usb: renesas_usbhs: modify data transfer method On current driver, main data transfer function was implemented in fifo.c, but the overall controlling was implementing in mod_gadget.c. This style is not useful to support host and DMAEngine in the future. But the interrupt for data transfer cannot separate easily for now, because it is deeply related to mod_gadget. This patch move the overall data transfer method into fifo.c except interrupt. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 6acb95d4e0709a582023e87f9b3537fb4d837fd0 Author: Kuninori Morimoto Date: Mon Jun 6 14:18:16 2011 +0900 usb: renesas_usbhs: modify packet queue control method Current renesas_usbhs driver is controlling packet queue on mod_gadget.c. But it has relationship with pipe/fifo, not host/gadget. So, controlling USB packet queue in pipe.c/fifo.c is more convenient than in mod_gadget.c. This patch modify it. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 4bd0481152d0d5e8326d7e24329b0069713ed718 Author: Kuninori Morimoto Date: Mon Jun 6 14:18:07 2011 +0900 usb: renesas_usbhs: divide data transfer functions DMAEngine will be supported to this driver in the future. Then, both PIO and DMA data transfer method should be supported. But, the transfer function can returns the result immediately in PIO version, but it can't in DMA version. This patch divides data transfer functions into top/bottom half in preparation for DMAEngine support. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit e8d548d549688d335236f7f6f8bcee141a207ff8 Author: Kuninori Morimoto Date: Mon Jun 6 14:18:03 2011 +0900 usb: renesas_usbhs: fifo became independent from pipe. Current renesas_usbhs has PIO data transfer mode which controls CFIFO. And it was implemented in pipe.c. But, fifo control method needs more flexible implementation to support DMAEngine. This patch create fifo.c, and it became independent from pipe.c. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit ad6f2a8bc53b7cc104f481a648ce357528cc08eb Author: Kuninori Morimoto Date: Mon Jun 6 14:17:56 2011 +0900 usb: renesas_usbhs: modify pipe direction flags Current driver had pipe direction flag which came from usb_endpoint_dir_in(). It means "input direction" for HOST, and "out direction" for Gadget. But driver needs "input direction for pipe". This patch adds IS_DIR_HOST flags and care both "input direction for HOST" and "input direction for pipe" Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit cc55687124426e3a6a5301780c4e6bb36bb531fd Author: Niels de Vos Date: Tue May 31 23:00:10 2011 +0100 ehci-hcd: remove EOL from MODULE_PARM_DESC for 'hird' option There is no need to have a "\n" on a MODULE_PARM_DESC, remove it Signed-off-by: Niels de Vos Signed-off-by: Greg Kroah-Hartman commit e90ed12cc4388d2919823fb31368781baa6dfbe5 Author: Dan Carpenter Date: Sat Jun 4 09:10:21 2011 +0300 USB: wusbcore: return negative error codes cbaf_cdid_get() is only used in cbaf_wusb_chid_store(). In the original code cbaf_cdid_get() returns either a negative error code or a small positive value on error. I have changed it to return -ENOENT if there is not enough data available. In the original code the caller changed the negative error codes to positive return values. I've changed it to just return the error value directly. Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit 325fd182cafe5c5ead51c27afb6b8be83c9081d4 Author: Mark Brown Date: Tue Jun 7 15:39:18 2011 +0100 USB: gadget.h depends on ch9.h so include ch9.h directly The struct definitions are used. Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman commit 498c17cf6a935335c8652165cae5dc196340b3e9 Author: Shawn Guo Date: Tue Jun 7 22:00:54 2011 +0800 gpio/mxs: convert gpio-mxs to use generic irq chip The patch converts gpio-mxs driver to use generic irq chip. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit 6161715e3f1adecae9e7c160930add4040fa10e9 Author: Shawn Guo Date: Tue Jun 7 22:00:53 2011 +0800 gpio/mxs: remove irq_high related implementation The irq_high stuff was mistakenly copied from mxc gpio driver. The mxs gpio controller has only one irq line for each 32-pin gpio port. The patch remove irq_high related codes. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit 06f88a8ae9085e555baf81edbf967764d87dc12f Author: Shawn Guo Date: Mon Jun 6 22:31:29 2011 +0800 gpio/mxs: convert gpio-mxs to use basic_mmio_gpio library The gpio-mxs controller complies with basic_mmio_gpio library. This patch converts the driver to use the library. Signed-off-by: Shawn Guo Signed-off-by: Grant Likely commit e4ea933363d39b5858f55682550314b4ea1285cc Author: Shawn Guo Date: Tue Jun 7 16:25:37 2011 +0800 gpio/mxc: convert gpio-mxc to use generic irq chip The patch converts gpio-mxc driver to use generic irq chip. Signed-off-by: Shawn Guo Acked-by: Sascha Hauer Signed-off-by: Grant Likely commit 71f66a6580c4e42df377bebbcca5c72661a40700 Author: Justin P. Mattock Date: Mon Jun 6 09:08:10 2011 -0700 doc: i2o: fix typo 'Settting' The below patch fixes a typo "Settting" to "Setting". Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit dc0a4f0ce2b1a9ef5947cdb6d62f60008a7e42bf Author: Michael Bauer Date: Thu Jun 2 15:40:14 2011 -0700 HID: Fix Logitech Driving Force Pro wheel - Add the quirk "NOGET" to make the wheel work at all in native mode. - Replace the somehow broken report descriptor with a custom one to have separate throttle and brake axes. As there are significant differences in the descriptor (original descriptor "hides" the separate axes in a 24 bit FF00 usagepage, new descripter replaces that with two individual 8 bit desktop.y and desktop.rz usages) I provided a complete replacement descriptor instead trying to patch the original one. Patching the descriptor seems not feasible as the new one is much larger. Note: To actually test this you have to use the tool "ltwheelconf" to put the DFP into it's native mode - See below for more info. Background: Most Logitech wheels are initially reporting themselves with a "fallback" deviceID (USB_DEVICE_ID_LOGITECH_WHEEL - 0xc294), in order to make sure they are working even without having the proper driver installed. If the Logitech driver is installed it sends a special command to the wheel which sets the wheel to "native mode", enabling enhance features like: - Clutch pedal - extended wheel rotation range (up to 900 degrees) - H-gate shifter - separate axis for throttle / brake - all buttons When the wheel is set to native mode it basically disconnects and reconnects with a different deviceID (USB_DEVICE_ID_LOGITECH_DFP_WHEEL - 0xc298 in this case). I am working on a userspace tool [1] which does the switching from fallback to native mode. During development I found out that the Driving Force Pro wheel is not supported in native mode - quierk NOGET is missing and the throttle and brake axes are reported in a combined way only. Signed-off-by: Michael Bauer Signed-off-by: Simon Wood [1] https://github.com/TripleSpeeder/LTWheelConf Signed-off-by: Jiri Kosina commit 2e483528cebad089d0bb3f9aebb0ada22d968ffa Merge: 163d3fe 55922c9 Author: Michal Marek Date: Tue Jun 7 15:37:51 2011 +0200 Merge commit 'v3.0-rc1' into kbuild/kbuild commit 6dc1418e13144162e8bc4858789010d8f0e1e65c Author: Tomoki Sekiyama Date: Mon May 23 15:45:44 2011 -0700 HID: yurex: recognize GeneralKeys wireless presenter as generic HID Unfortunately, the device seems to have the same Vendor ID and Product ID as YUREX leg-shakes sensors, and the commit 6bc235a2e2 ("USB: add driver for Meywa-Denki & Kayac YUREX") added the ID to hid_ignore_list. I believe that we can distinguish YUREX and the Wireless Presenter by device type. The patch below makes the driver ignore only YUREX (bInterfaceProtocol==0), and recognize Wireless Presenter (bInterfaceProtocol is keyboard or mouse) as generic HID. (I don't have the Wireless Presenter, so not yet ested.) ** YUREX lsusb information: Bus 002 Device 007: ID 0c45:1010 Microdia Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x0c45 Microdia idProduct 0x1010 bcdDevice 0.03 iManufacturer 1 JESS iProduct 2 YUREX iSerial 3 10000269 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 34 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 1 Boot Interface Subclass bInterfaceProtocol 0 None iInterface 0 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.10 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 31 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 10 Device Status: 0x0002 (Bus Powered) Remote Wakeup Enabled Addresses https://bugzilla.kernel.org/show_bug.cgi?id=26922 Signed-off-by: Tomoki Sekiyama Cc: Greg KH Cc: "Rafael J. Wysocki" Cc: Maciej Rutecki Reported-by: Thomas B?chler Tested-by: Thomas B?chler Signed-off-by: Andrew Morton Signed-off-by: Jiri Kosina commit b58f6b0dd3d677338b9065388cc2cc942b86338e Author: Peter Zijlstra Date: Tue Jun 7 00:23:28 2011 +0200 perf, core: Fix initial task_ctx/event installation A lost Quilt refresh of 2c29ef0fef8 (perf: Simplify and fix __perf_install_in_context()) is causing grief and lockups, reported by Jiri Olsa. When installing an event in a task context, there's a number of issues: - there might not be an existing task context, in which case we should install the now current context; - there might already be a context, not the current one, in which case we should de-schedule the old and install the new; these cases were dealt with in the lost refresh, however there is one further case that was found in testing: - there might already be a context, the current one, in which case we should still de-schedule, and should take care to re-install it (note that task_ctx_sched_out() clears cpuctx->task_ctx). Reported-by: Jiri Olsa Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1307399008.2497.971.camel@laptop Signed-off-by: Ingo Molnar commit 0b5e1c5255e7ee8670e077e8224e5c2281229a5b Author: Peter Zijlstra Date: Tue Jun 7 11:15:33 2011 +0200 printk: Release console_sem after logbuf_lock Release console_sem after unlocking the logbuf_lock so that we don't generate wakeups while holding logbuf_lock. This avoids some lock inversion troubles once we remove the lockdep_off bits between logbuf_lock and rq->lock (prints while holding rq->lock vs doing wakeups while holding logbuf_lock). There's of course still an actual deadlock where the printk()s under rq->lock will issue a wakeup from the up() call, but lockdep won't warn about that since semaphores are not tracked. Signed-off-by: Peter Zijlstra Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/n/tip-j8swthl12u73h4znbvitljzd@git.kernel.org Signed-off-by: Ingo Molnar commit b4a655e81d4d1d12abc92d29dfb7550e66a08799 Author: Takashi Iwai Date: Tue Jun 7 12:26:56 2011 +0200 ALSA: hda - Judge playback stream from stream id in azx_via_get_position() Instead of checking the azx_dev index with a fixed number (4), check the stream direction of the assigned substream. Signed-off-by: Takashi Iwai commit a810364a0424c297242c6c66071a42f7675a5568 Author: Takashi Iwai Date: Tue Jun 7 12:23:23 2011 +0200 ALSA: hda - Handle -1 as invalid position, too When reading from the position-buffer results in -1, handle as it's invalid and falls back to LPIB mode as well as 0. Signed-off-by: Takashi Iwai commit cf3383fbb03a0aae622b0dbcd10c6975332da68a Merge: 0c8e291 064d58e Author: Mark Brown Date: Tue Jun 7 09:49:47 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit 0c8e2917f2f56e9836692e1d5a12f04af00b1a5a Author: Lars-Peter Clausen Date: Tue Jun 7 07:02:59 2011 +0200 ASoC: AD1836: Fix build error Commit f97d0c6d5f94 ("ASoC: AD1836: Add input gain control for ADC2") contained a typo in the register name, causing a build error. This patch fixes it. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit bca6b39979dfe0b2d14a3ca35e2930f5d9c8e3f5 Author: Greg Dietsche Date: Mon Jun 6 15:53:01 2011 -0500 ASoC: wm8940: remove unnecessary if statements removing unnecessary if(ret) checks This updated patch corrects a minor spelling problem in the commit message and resolves two other (similar) issues found in wm8940.c by Jonathan Cameron. Signed-off-by: Greg Dietsche Acked-by: Jonathan Cameron Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit cb2bad862e66eafbc97c26011ab7ab6cedc82810 Merge: a6b7a40 b9e379b Author: David S. Miller Date: Tue Jun 7 01:03:56 2011 -0700 Merge branch 'can/at91-sam9x5' of git://git.pengutronix.de/git/mkl/linux-2.6 commit 5cec93c216db77c45f7ce970d46283bcb1933884 Author: Andy Lutomirski Date: Sun Jun 5 13:50:24 2011 -0400 x86-64: Emulate legacy vsyscalls There's a fair amount of code in the vsyscall page. It contains a syscall instruction (in the gettimeofday fallback) and who knows what will happen if an exploit jumps into the middle of some other code. Reduce the risk by replacing the vsyscalls with short magic incantations that cause the kernel to emulate the real vsyscalls. These incantations are useless if entered in the middle. This causes vsyscalls to be a little more expensive than real syscalls. Fortunately sensible programs don't use them. The only exception is time() which is still called by glibc through the vsyscall - but calling time() millions of times per second is not sensible. glibc has this fixed in the development tree. This patch is not perfect: the vread_tsc and vread_hpet functions are still at a fixed address. Fixing that might involve making alternative patching work in the vDSO. Signed-off-by: Andy Lutomirski Acked-by: Linus Torvalds Cc: Jesper Juhl Cc: Borislav Petkov Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/e64e1b3c64858820d12c48fa739efbd1485e79d5.1307292171.git.luto@mit.edu [ Removed the CONFIG option - it's simpler to just do it unconditionally. Tidied up the code as well. ] Signed-off-by: Ingo Molnar commit 4788b60a5faf9f9c9aec10fb7f6b36d9e0f9fa4c Author: Artem Bityutskiy Date: Fri Jun 3 19:41:00 2011 +0300 UBI: remove dead code Thanks to new gcc 4.6 for issuing the following warning: drivers/mtd/ubi/vtbl.c: In function ‘create_vtbl’: drivers/mtd/ubi/vtbl.c:311:33: warning: variable ‘old_seb’ set but not used [-Wunused-but-set-variable] This patch removes some dead code and fixes the warning. Signed-off-by: Artem Bityutskiy commit a6b7a407865aab9f849dd99a71072b7cd1175116 Author: Alexey Dobriyan Date: Mon Jun 6 10:43:46 2011 +0000 net: remove interrupt.h inclusion from netdevice.h * remove interrupt.g inclusion from netdevice.h -- not needed * fixup fallout, add interrupt.h and hardirq.h back where needed. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit aedfebbaa7a4883dc568d8d32b7b32a0f9833f41 Author: Selvin Xavier Date: Mon Jun 6 02:27:13 2011 +0000 be2net: Fix Rx pause counter for lancer Fixed Rx pause counter for Lancer. Swapping hi and lo words. Signed-off-by: Selvin Xavier Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 324dd96d2b022595b9fc8f24305b3ab770cc63b9 Author: Greg Dietsche Date: Sun Jun 5 14:44:13 2011 +0000 qlge: remove unecessary if statement the code always returns 'status' regardless, so if(status) check is unecessary. Signed-off-by: Greg Dietsche Signed-off-by: David S. Miller commit c97c894dc7bcae28d0308dbcd010185079de4a28 Author: Roopa Prabhu Date: Fri Jun 3 14:35:17 2011 +0000 enic: Add support for MTU change via port profile on a dynamic vnic enic driver gets MTU change notifications for MTU changes in the port profile associated to a dynamic vnic. This patch adds support in enic driver to set new MTU on the dynamic vnic and dynamically adjust its buffers with new MTU size in response to such notifications. Signed-off-by: Roopa Prabhu Signed-off-by: Vasanthy Kolluri Signed-off-by: David Wang Signed-off-by: Christian Benvenuti Signed-off-by: David S. Miller commit ceb80363b2ec1091dffd78064771e3d4679f69c7 Author: Seth Levy Date: Mon Jun 6 19:42:44 2011 -0400 USB: net2272: driver for PLX NET2272 USB device controller This is based on the last release from PLX: http://www.plxtech.com/files/products/net2000/software/selectiontool/RE061204-net2272-linux2.6.18.tgz I've managed to contact them and they've confirmed that this driver was wholly written by PLX (Seth Levy). While they have no problem with it being merged (and they've already licensed it as GPL), they don't have any interest in doing so themselves as this is an old part for them. ADI has long had an add-on card which has this part on it, so we've been keeping it up-to-date out of tree. But now that PLX has confirmed the source of the driver, we can can take the next step of cleaning it up and getting it merged. So here we are! I've done quite a large clean up of the driver and attempted to address all the common issues. Hopefully in the process, I haven't broken anything. While it seems to still work with the board that I have access to, it is not a PCI variant. So I have not tested any of the PCI logic myself (beyond clean compile). Perhaps someone who actually has a card and cares can do so. I'll try to address further feedback, but don't expect miracles. I'm not really familiar with the part itself, just the platform glue. Signed-off-by: Seth Levy Signed-off-by: Ash Aziz Signed-off-by: Roy Huang Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger Signed-off-by: Greg Kroah-Hartman commit 8d13e670d3fb83f4668c9e37196c3bbf5b9f094c Author: John Fastabend Date: Mon Jun 6 04:27:16 2011 +0000 macvlan: add VLAN filters to lowerdev Stacking VLANs on top of the macvlan device does not work if the lowerdev device is using vlan filters set by NETIF_F_HW_VLAN_FILTER. Add ndo ops to pass vlan calls to lowerdev. Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit c4fc2342cb611f945fa468e742759e25984005ad Author: Carl-Daniel Hailfinger Date: Tue May 31 21:31:08 2011 +0200 USB: Add "authorized_default" parameter to the usbcore module The "authorized_default" module parameter of usbcore controls the default for the authorized_default variable of each USB host controller. -1 is authorized for all devices except wireless (default, old behaviour) 0 is unauthorized for all devices 1 is authorized for all devices Signed-off-by: Carl-Daniel Hailfinger Signed-off-by: Greg Kroah-Hartman commit 680681747ff933fdedfbf11bd03c369e5b14085c Author: Guenter Roeck Date: Thu May 26 00:02:56 2011 -0700 usb/gadget: (fusb300_udc) Remove unused function fusb300_ep0_complete fusb300_ep0_complete() is an empty function, not called from anywhere, and causes the following build warning. fusb300_udc.c:983: warning: fusb300_ep0_complete defined but not used Remove it. Signed-off-by: Guenter Roeck Signed-off-by: Greg Kroah-Hartman commit 1acb30ef28c4cb08bc6f7bc7f68ee7eebd4b9c84 Author: Jingoo Han Date: Fri May 20 20:48:33 2011 +0900 USB: ehci-s5p: add PM support This patch adds power management support such as suspend and resume functions. Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit db383d69c620b0af61504a257da3c928417d47af Merge: 59c5f46 f5960b6 Author: Greg Kroah-Hartman Date: Mon Jun 6 16:30:31 2011 -0700 Merge branch 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-next * 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci: xhci: Remove some unnecessary casts and tidy some endian swap code commit f505c553dbe24b18a8590eb0eb5890a839acd0c3 Author: Josh Triplett Date: Sun Jun 5 18:23:58 2011 -0700 debug: Make CONFIG_EXPERT select CONFIG_DEBUG_KERNEL to unhide debug options Several debugging options currently default to y, such as CONFIG_DEBUG_BUGVERBOSE and CONFIG_DEBUG_RODATA. Embedded users might want to turn those options off to save space; however, turning them off requires turning on CONFIG_DEBUG_KERNEL to unhide them. Since CONFIG_DEBUG_KERNEL exists specifically to unhide debugging options, and CONFIG_EXPERT exists specifically to unhide options potentially needed by experts and/or embedded users, make CONFIG_EXPERT automatically imply CONFIG_DEBUG_KERNEL. Signed-off-by: Josh Triplett Acked-by: Frederic Weisbecker Cc: Sam Ravnborg Cc: Linus Torvalds Link: http://lkml.kernel.org/r/20110606012358.GA1909@leaf Signed-off-by: Ingo Molnar commit 46758dee727348d3648c83445d10ded321376543 Merge: f97d0c6 8ca695f Author: Mark Brown Date: Mon Jun 6 21:57:54 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit f97d0c6d5f947a96a6d3957eff3da6d9ca246e54 Author: Lars-Peter Clausen Date: Mon Jun 6 13:38:40 2011 +0200 ASoC: AD1836: Add input gain control for ADC2 The AD1836 has a PGA for its second ADC. This patch adds a control for adjusting the the gain of the PGA. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 583eadab21779c4301f01a11bf3d0d49b643aa80 Author: Lars-Peter Clausen Date: Mon Jun 6 13:38:39 2011 +0200 ASoC: AD1836: Remove unused fields from private struct The control_type field is never used, so it can be removed. The control_data field is used to initialize the codec's control_data field, but since this is also done by the snd-soc-cache core, the redundant assignment can be removed and the field can be dropped. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 874ce77bc3027ce08e3ee35c3edad3b254e496d1 Author: Lars-Peter Clausen Date: Mon Jun 6 13:38:38 2011 +0200 ASoC: AD1836: Add AD1835/AD1837/AD1838/AD1839 support The AD183X codec devices are mostly register compatible and can easily be supported by the same driver. The main difference between those devices is the number of DACs and ADCs. This patch adjusts the driver to allocate the controls, DAPM widgets and routes for the DACs and ADCs dynamically based on the chip type. The AD1836 is a bit special in that it supports different modes for its second ADC, so it needs some special handling. Right now the driver hardcodes the mode to the differential PGA mode. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2cf034282205a2115777b7a899f6f12d06943b62 Author: Lars-Peter Clausen Date: Mon Jun 6 13:38:37 2011 +0200 ASoC: AD1836: Use snd_soc_update_bits for read-modify-write Use snd_soc_update_bits for read-modify-write register access instead of open-coding it using snd_soc_read and snd_soc_write. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 90bc11d1d0310e5e6bfbdea6ed21047b3865df05 Author: Lars-Peter Clausen Date: Mon Jun 6 13:38:36 2011 +0200 ASoC: AD1836: Add ADC/DAC controls helper macros The different ADC and DAC controls follow the same scheme, so add some helper macros for declaring them. This should make the code a bit more readable and also decreases the code size a bit. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 85e9e766380fe40e1937b8316e8aa867544f09f1 Author: Mark Brown Date: Mon Jun 6 19:12:44 2011 +0100 ASoC: Manage Speyside system clocking only in bias management Now that the CODEC driver supports it defer configuration of the system clock until bias management which is a much more idiomatic place to do system power control and makes things a lot more happy when we're using both interfaces. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit cc4c670a416a36464443f465f0ddbdc9940d16dd Author: Mark Brown Date: Mon Jun 6 19:03:34 2011 +0100 ASoC: Only provide a default bias level update for CODEC contexts This allows the card driver to use the bias level variable more easily in multi component systems. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit d4c6005f8e90da10067c35e1182f533582d01a69 Author: Mark Brown Date: Mon Jun 6 19:13:23 2011 +0100 ASoC: Add context parameter to card DAPM callbacks The card callback will get called for each DAPM context in the card so it can be useful for it to know which device is currently undergoing a transition. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 171ec6b0897422099438a9c66546380d0fa2ff44 Author: Mark Brown Date: Mon Jun 6 18:15:19 2011 +0100 ASoC: Simplify logic in snd_soc_dapm_set_bias_level() No functional changes but much less indentation. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 4113e443161f4fd3b33e8015a1edc190e2296790 Author: Mark Brown Date: Mon Jun 6 16:15:53 2011 +0100 ASoC: Remove trace for DAPM bias level logging It's redundant now thanks to the use of the generic trace infrastructure. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 88d960864e371d0caf1db69e6d1d740ad7a247ba Author: Mark Brown Date: Mon Jun 6 16:16:34 2011 +0100 ASoC: Indentation fix for null loop operation More with the legibility. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit dfcc9047c97ca99b151e30133c9bccf5ab258ca6 Author: Mark Brown Date: Sat Jun 4 11:34:43 2011 +0100 ASoC: Don't bring the CODEC up to full power for supplies and biases If the only widgets active within a CODEC are supplies and micbiases we are not passing audio, we are probably just doing microphone detection. This will not generally require either fully accurate reference voltages or much power so If this turns out to be unsuitable for some systems we can provide a facility to override this decision. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 56fba41f8f6444f9e2db3bfe2c4cc5c5bac43d1d Author: Mark Brown Date: Sat Jun 4 11:25:10 2011 +0100 ASoC: Specify target bias state directly as a bias state Rather than a simple flag to say if we want the DAPM context to be at full power specify the target bias state. This should have no current effect but is a bit more direct and so makes it easier to change our decisions about the which bias state to go into in future. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 6dffdea70029f2e74c029eba3c24d07641fa4a77 Author: Mark Brown Date: Mon Jun 6 16:05:13 2011 +0100 ASoC: Allow WM8915 BCLK calculation outside hw_params() Allow more dynamic management of the device clocking by allowing BCLK to be calculated when we set SYSCLK. This means that if the system is idle when hw_params() runs then we don't try to use the SYSCLK used in that case to set up the BCLK dividers, we can instead wait until a later point such as bias level configuration. This makes it easier to manage low power modes. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 3b3702377c576f6624348c7c6fd113bfd934fbd7 Author: Matthew Garrett Date: Mon Jun 6 15:36:25 2011 -0400 x86, efi: Add infrastructure for UEFI 2.0 runtime services We're currently missing support for any of the runtime service calls introduced with the UEFI 2.0 spec in 2006. Add the infrastructure for supporting them. Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1307388985-7852-2-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin commit f7a2d73fe75c71941fb0a6b4d8fe7da8144f2c7b Author: Matthew Garrett Date: Mon Jun 6 15:36:24 2011 -0400 x86, efi: Fix argument types for SetVariable() The spec says this takes uint32 for attributes, not uintn. Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1307388985-7852-1-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin commit 5d0c90cf4d417ccafcd1af4ec32945c3f80e98e2 Author: David S. Miller Date: Mon Jun 6 13:05:55 2011 -0700 sctp: Guard IPV6 specific code properly. Outside of net/sctp/ipv6.c, IPV6 specific code needs to be ifdef guarded. This fixes build failures with IPV6 disabled. Reported-by: Randy Dunlap Signed-off-by: David S. Miller commit 1ea3ad4e93222faf1d138ceb10291376d2da7cc6 Author: Arnaud Lacombe Date: Sun Jun 5 23:36:05 2011 -0400 kconfig/gconf: silent missing prototype warnings As the `gconf' frontend is un-maintained, go the easy way by silencing the "warning: no previous prototype for ''" warnings. Signed-off-by: Arnaud Lacombe commit f8aea775c1d852c09adee1d0d62a9cab8764e6ea Author: Arnaud Lacombe Date: Sun Jun 5 23:32:07 2011 -0400 kconfig/gconf: kill deadcode The only call site of renderer_toggled() has been commented out since Apr. 2003, as per Linus' Linux history repository: commit e7f67eb3c0570aa50c1cc0707b478a6d93bdc255 Author: Roman Zippel Date: Fri Apr 4 04:18:05 2003 -0800 [PATCH] gconf update A gconf update by Romain Livin - fixed bug when double-clicking for changing value. - expand row when enabling a row with a submenu. - various bug fixes As this result in a warning: scripts/kconfig/gconf.c:891:13: warning: 'renderer_toggled' defined but not used just nuke that code. Signed-off-by: Arnaud Lacombe commit 5a6f8d2bd9e3392569ed6f29ea4d7210652f929b Author: Arnaud Lacombe Date: Wed Jun 1 16:14:47 2011 -0400 kconfig: nuke LKC_DIRECT_LINK cruft This interface is not (and has never been ?) used by any frontend, just get rid of it. Signed-off-by: Arnaud Lacombe commit 84250386efa581fdf5578b68b9dd6b79998ac48d Author: Arnaud Lacombe Date: Wed Jun 1 16:15:52 2011 -0400 kconfig: nuke reference to SWIG SWIG is not used (yet?) to create kconfig binding, so there is no point referencing it. Signed-off-by: Arnaud Lacombe commit 02d95c96c3d29df0a1d3bb515692ad4894030729 Author: Arnaud Lacombe Date: Wed Jun 1 16:08:14 2011 -0400 kconfig: add missing inclusion This header is needed when using {m,re}alloc(3) and free(3) function family. Signed-off-by: Arnaud Lacombe commit dd003306a4fae241e1f9cac5bef2c8f2afeb0446 Author: Arnaud Lacombe Date: Wed Jun 1 16:06:22 2011 -0400 kconfig: add missing inclusion This header is needed when using isspace(3) function family. Signed-off-by: Arnaud Lacombe commit 10a4b2772e7643247ddb5316c644f1fe7c4dccca Author: Arnaud Lacombe Date: Wed Jun 1 16:00:46 2011 -0400 kconfig: add missing inclusion This header is needed when using va_{start,end,copy}(3) functions family. Signed-off-by: Arnaud Lacombe commit 75f1468beaeca690e139b4e1bcd19aa20973fca9 Author: Arnaud Lacombe Date: Tue May 31 12:31:57 2011 -0400 kconfig: fix return code for invalid boolean symbol in conf_set_sym_val() Cc: Sam Ravnborg Signed-off-by: Arnaud Lacombe commit d8fc320079b46cf462897148f48d4a63f37f56ce Author: Arnaud Lacombe Date: Tue May 31 12:30:26 2011 -0400 kconfig: annotate non-trivial fall-trough Signed-off-by: Arnaud Lacombe commit bd4f2acb8dfbff473f1abe805bca902720f653b4 Merge: 78bf3c9 fd137e2 Author: Mark Brown Date: Mon Jun 6 19:34:58 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit c103de240439dfee24ac50eb99c8be3a30d13323 Author: Grant Likely Date: Sat Jun 4 18:38:28 2011 -0600 gpio: reorganize drivers Sort the gpio makefile and enforce the naming convention gpio-*.c for gpio drivers. v2: cleaned up filenames in Kconfig and comment blocks v3: fixup use of BASIC_MMIO to GENERIC_GPIO for mxc Signed-off-by: Grant Likely commit 8c31b1635b91e48f867e010cd7bcd06393e5858a Merge: 121a2dd 2ce420d Author: Grant Likely Date: Mon Jun 6 10:10:07 2011 -0600 Merge branch 'gpio/next-mx' into gpio/next commit 121a2dd860f8348fb014b660f133a0cb9a16273e Author: David Jander Date: Wed Jun 1 10:57:27 2011 +0200 gpio/pca953x.c: Interrupt pin is active-low The interrupt pin of the PCA953x is active low, and on the rising edge no interrupt should be produced. Signed-off-by: David Jander Signed-off-by: Grant Likely commit c6b52c13de4415ed5774be8c076685715de56096 Author: H Hartley Sweeten Date: Wed Jun 1 10:09:19 2011 -0700 gpio/ep93xx: move driver to drivers/gpio The GPIO driver should reside in drivers/gpio. v3: Change Kconfig option to def_bool y v2: Make the Kconfig symbol a silent option, dependent on ARCH_EP93XX Signed-off-by: H Hartley Sweeten Signed-off-by: Grant Likely commit 2ce420da39078a6135d1c004a0e4436fdc1458b4 Author: Shawn Guo Date: Mon Jun 6 13:22:41 2011 +0800 gpio/mxc: convert gpio-mxc to use basic_mmio_gpio library The gpio-mxc controller complies with basic_mmio_gpio library. The patch convert the driver to use the library. Signed-off-by: Shawn Guo Acked-by: Sascha Hauer Signed-off-by: Grant Likely commit b78d8e59a6f611e229fab8ec3014c58eba975000 Author: Shawn Guo Date: Mon Jun 6 00:07:55 2011 +0800 gpio/mxc: Change gpio-mxc into an upstanding gpio driver The patch makes necessary changes on gpio-mxc as below to turn it into an upstanding gpio driver. * Add a list to save all mx2 ports references, so that mx2_gpio_irq_handler can walk through all interrupt status registers * Use readl/writel to replace mach-specific accessors __raw_readl/__raw_writel * Change mxc_gpio_init into mxc_gpio_probe function * Move "struct mxc_gpio_port" into gpio-mxc.c, as it needs not to be public at all, and also make some other cleanup on plat-mxc/include/mach/gpio.h at the same time And the patch then migrates mach-imx and mach-mx5 to the updated driver by adding corresponding platform devices. Signed-off-by: Shawn Guo Acked-by: Olof Johansson Acked-by: Sascha Hauer Signed-off-by: Grant Likely commit d37a65bb4663bde7cf3dbc51aec7f264fa4d0ebf Author: Shawn Guo Date: Mon Jun 6 00:07:54 2011 +0800 gpio/mxc: Move Freescale MXC gpio driver to drivers/gpio GPIO drivers are getting moved to drivers/gpio for cleanup and consolidation. This patch moves the plat-mxc driver. Follow up patches will clean it up and make it a fine upstanding gpio driver. Signed-off-by: Shawn Guo Acked-by: Sascha Hauer Signed-off-by: Grant Likely commit 8d7cf8370d5fb75a3265408dceb1d6173eebfafd Author: Shawn Guo Date: Mon Jun 6 09:37:58 2011 -0600 gpio/mxs: Change gpio-mxs into an upstanding gpio driver The patch makes necessary changes on gpio-mxs as below to turn it into an upstanding gpio driver. * Clean up the gpio port definition stuff * Use readl/writel to replace mach-specific accessors __raw_readl/__raw_writel * Change mxs_gpio_init into mxs_gpio_probe function And it then migrates mach-mxs to the updated driver by adding corresponding platform devices. Signed-off-by: Shawn Guo Acked-by: Arnd Bergmann Acked-by: Sascha Hauer Signed-off-by: Grant Likely commit c2419b4a4727f67af2fc2cd68b0d878b75e781bb Author: Jeremy Fitzhardinge Date: Tue May 31 10:50:10 2011 -0400 xen: allow enable use of VGA console on dom0 Get the information about the VGA console hardware from Xen, and put it into the form the bootloader normally generates, so that the rest of the kernel can deal with VGA as usual. [ Impact: make VGA console work in dom0 ] Signed-off-by: Jeremy Fitzhardinge [v1: Rebased on 2.6.39] [v2: Removed incorrect comments and fixed compile warnings] Signed-off-by: Konrad Rzeszutek Wilk commit 7b2fa5702059a03c11f934224724b2f712a749ce Author: Grant Likely Date: Mon Jun 6 09:37:58 2011 -0600 gpio/mxs: Move Freescale mxs gpio driver to drivers/gpio GPIO drivers are getting moved to drivers/gpio for cleanup and consolidation. This patch moves the mxs driver. Follow up patches will clean it up and make it a fine upstanding example of a gpio driver. v2: Removed header file entirely and put struct definition directly into driver. The struct isn't used anywhere else in the kernel. Signed-off-by: Grant Likely Tested-by: Shawn Guo Acked-by: Sascha Hauer commit b9e379bccda6913f7baece42cd249824c0758b97 Author: Uwe Kleine-König Date: Tue Apr 26 15:05:59 2011 +0200 net/can: allow CAN_AT91 on AT91SAM9X5 Signed-off-by: Uwe Kleine-König Signed-off-by: Marc Kleine-Budde commit 6388b39614208d63661607f45157e3326548eb62 Author: Marc Kleine-Budde Date: Sun Apr 17 00:08:45 2011 +0200 can: at91_can: add support for the AT91SAM9X5 SOCs The AT91SAM9X5 SOCs have a similar CAN core, but they only have 8 compared to 16 mailboxes on the AT91SAM9263 SOC. Another difference is that the bits defining the state of the CAN core are cleared on read, thus the driver has to derive the state by looking at the error counters. Signed-off-by: Marc Kleine-Budde commit 07a648e668aa7f7c94d41d8d2e4ad53b609e391d Author: Marc Kleine-Budde Date: Wed Jun 1 00:20:17 2011 +0200 can: at91_can: register mb0 sysfs entry only on at91sam9263 This patch prepares the driver for the at91sam9X5 processors, which don't have the mb0 bug. (See commit 3a5655a5b545e9647c3437473ee3d815fe1b9050 for more details.) Signed-off-by: Marc Kleine-Budde commit d3d47264a364aa3adcbb485471dbf9f693fb4216 Author: Marc Kleine-Budde Date: Tue May 3 17:41:09 2011 +0200 can: at91_can: add id_table and convert prime mailbox constats to functions This is the second of two patches converting the at91_can driver from a compile time mailbox setup to a dynamic one. This patch first adds a id_table to the platform driver. Depending on the driver_data the constants for the mailbox setup is selected. Then all remaining prime mailbox constants are converted to functions, using the run time selected mailbox constants. Signed-off-by: Marc Kleine-Budde commit 78bf3c9ab69a957dfa58e521ce7fca056c86b980 Author: Mark Brown Date: Fri Jun 3 17:09:14 2011 +0100 ASoC: Enforce the mask in snd_soc_update_bits() Avoids issues if someone does a read followed by restore and doesn't mask out only the bits being updated. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 51b3b5cabb1d7d6ca12416652e2df2e01eb61fb9 Author: Mark Brown Date: Fri Jun 3 17:49:46 2011 +0100 ASoC: Error out when FLL lock interrupt is not delivered on WM8915 When the FLL locks on the WM8915 an interrupt is generated. For safety error out if we don't get that interrupt when the IRQ output of the WM8915 is hooked up. Since we *really* expect an interrupt but the threaded IRQ handler may take a bit longer than expected to get scheduled also dramatically increase the delay in this case. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit ea7b4378364093678ff1724fa91c43913f97774b Author: Mark Brown Date: Fri Jun 3 17:09:49 2011 +0100 ASoC: Suppress noop SYSCLK updates in WM8915 Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 84abd1b395cf41269ffb5605a6ece3d6d7f8a3e1 Merge: aa72f68 6ac3406 Author: Mark Brown Date: Mon Jun 6 12:47:06 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit aa72f6899b9fb3dc824c458234ae3507a60e462d Merge: e6a9be0 05d3962 Author: Mark Brown Date: Mon Jun 6 12:26:02 2011 +0100 Merge branch 'for-3.0' into for-3.1 commit 384a48d71520ca569a63f1e61e51a538bedb16df Author: Stephen Warren Date: Wed Jun 1 11:14:21 2011 -0600 ALSA: hda: HDMI: Support codecs with fewer cvts than pins The general concept of this change is to create a PCM device for each pin widget instead of each converter widget. Whenever a PCM is opened, a converter is dynamically selected to drive that pin based on those available for muxing into the pin. The one thing this model doesn't support is a single PCM/converter sending audio to multiple pin widgets at once. Note that this means that a struct hda_pcm_stream's nid variable is set to 0 except between a stream's open and cleanup calls. The dynamic de-assignment of converters to PCMs occurs within cleanup, not close, in order for it to co-incide with when controller stream IDs are cleaned up from converters. While the PCM for a pin is not open, the pin is disabled (its widget control's PIN_OUT bit is cleared) so that if the currently routed converter is used to drive a different PCM/pin, that audio does not leak out over a disabled pin. We use the recently added SPDIF virtualization feature in order to create SPDIF controls for each pin widget instead of each converter widget, so that state is specific to a PCM. In order to support this, a number of more mechanical changes are made: * s/nid/pin_nid/ or s/nid/cvt_nid/ in many places in order to make it clear exactly what the code is dealing with. * We now have per_pin and per_cvt arrays in hdmi_spec to store relevant data. In particular, we store a converter's capabilities in the per_cvt entry, rather than relying on a combination of codec_pcm_pars and the struct hda_pcm_stream. * ELD-related workarounds were removed from hdmi_channel_allocation into hdmi_instrinsic in order to simplifiy infoframe calculations and remove HW dependencies. * Various functions only apply to a single pin, since there is now only 1 pin per PCM. For example, hdmi_setup_infoframe, hdmi_setup_stream. * hdmi_add_pin and hdmi_add_cvt are more oriented at pure codec parsing and data retrieval, rather than determining which pins/converters are to be used for creating PCMs. This is quite a large change; it may be appropriate to simply read the result of the patch rather than the diffs. Some small parts of the change might be separable into different patches, but I think the bulk of the change will probably always be one large patch. Hopefully the change isn't too opaque! This has been tested on: * NVIDIA GeForce 400 series discrete graphics card. This model has the classical 1:1:1 codec:converter:pcm widget model. Tested stereo PCM audio to a PC monitor that supports audio. * NVIDIA GeForce 520 discrete graphics card. This model is the new 1 codec n converters m pins m>n model. Tested stereo PCM audio to a PC monitor that supports audio. * NVIDIA GeForce 400 series laptop graphics chip. This model has the classical 1:1:1 codec:converter:pcm widget model. Tested stereo PCM, multi-channel PCM, and AC3 pass-through to an AV receiver. * Intel Ibex Peak laptop. This model is the new 1 codec n converters m pins m>n model. Tested stereo PCM, multi-channel PCM, and AC3 pass- through to an AV receiver. Note that I'm not familiar at all with AC3 pass-through. Hence, I may not have covered all possible mechanisms that are applicable here. I do know that my receiver definitely received AC3, not decoded PCM. I tested with mplayer's "-afm hwac3" and/or "-af lavcac3enc" options, and alsa a WAV file that I believe has AC3 content rather than PCM. I also tested: * Play a stream * Mute while playing * Stop stream * Play some other streams to re-assign the converter to a different pin, PCM, set of SPDIF controls, ... hence hopefully triggering cleanup for the original PCM. * Unmute original stream while not playing * Play a stream on the original pin/PCM. This was to test SPDIF control virtualization. Signed-off-by: Stephen Warren Signed-off-by: Takashi Iwai commit 2def8172c6611f2577260287ebf5dd3b63f7ef55 Author: Stephen Warren Date: Wed Jun 1 11:14:20 2011 -0600 ALSA: hda: hdmi_eld_update_pcm_info: update a stream in place A future change won't store an entire hda_pcm_stream just to represent the capabilities of a codec; a custom data-structure will be used. To ease that transition, modify hdmi_eld_update_pcm_info to expect the hda_pcm_stream to be pre-initialized with the codec's capabilities, and to update those capabilities in-place based on the ELD. Signed-off-by: Stephen Warren Signed-off-by: Takashi Iwai commit 3aaf898025b1f75f30457e00e890c9f7c43567ab Author: Stephen Warren Date: Wed Jun 1 11:14:19 2011 -0600 ALSA: hda: Separate generic and non-generic implementations A future change will significantly rework the generic implementation in order to support codecs with a different number of pins and converters. Isolate the more custom codec variants from this change by duplicating the small portions of generic code they share. This simplifies the later rework of that previously shared code, since we don't have to consider the more custom codecs, and also prevents support for those codecs from regressing. Signed-off-by: Stephen Warren Signed-off-by: Takashi Iwai commit 74b654c957e901e7596ebc7b9f5a1bea62b20509 Author: Stephen Warren Date: Wed Jun 1 11:14:18 2011 -0600 ALSA: hda: Virtualize SPDIF out controls The SPDIF output controls apply to converter widgets. A future change will create a PCM device per pin widget, and hence a set of SPDIF output controls per pin widget, for certain HDMI codecs. To support this, we need the ability to virtualize the SPDIF output controls. Specifically: * Controls can be "unassigned" from real hardware when a converter is not used for the PCM the control was created for. * Control puts only write to hardware when they are assigned. * Controls can be "assigned" to real hardware when a converter is picked to support output for a particular PCM. * When a converter is assigned, the hardware is updated to the cached configuration. Signed-off-by: Stephen Warren Signed-off-by: Takashi Iwai commit 7c9359762797ba7a70bbaa6364aaecc16786ac83 Author: Stephen Warren Date: Wed Jun 1 11:14:17 2011 -0600 ALSA: hda: Allow multple SPDIF controls per codec Currently, the data that backs the kcontrols created by snd_hda_create_spdif_out_ctls is stored directly in struct hda_codec. When multiple sets of these controls are stored, they will all manipulate the same data, causing confusion. Instead, store an array of this data, one copy per converter, to isolate the controls. This patch would cause a behavioural change in the case where snd_hda_create_spdif_out_ctls was called multiple times for a single codec. As best I can tell, this is never the case for any codec. This will be relevant at least for some HDMI audio codecs, such as the NVIDIA GeForce 520 and Intel Ibex Peak. A future change will modify the driver's handling of those codecs to create multiple PCMs per codec. Note that this issue isn't affected by whether one creates a PCM-per-converter or PCM-per-pin; there are multiple of both within a single codec in both of those codecs. Note that those codecs don't currently create multiple PCMs for the codec due to the default HW mux state of all pins being to point at the same converter, hence there is only a single converter routed to any pin, and hence only a single PCM. Signed-off-by: Stephen Warren Signed-off-by: Takashi Iwai commit c3d52105753dafdf2d993e540cc3192f23447dac Author: Stephen Warren Date: Wed Jun 1 11:14:16 2011 -0600 ALSA: hda: Gate ELD usage only by whether ELD is valid It's perfectly valid for an ELD to contain no SADs. This simply means that only basic audio is supoprted. In this case, we still want to limit a PCM's capabilities based on the ELD. History: * Originally, ELD application was limited solely by sad_count>0, which was used to check that an ELD had been read. * Later, eld_valid was added to the conditions to satisfy. This change removes the original sad_count>0 check, which when squashed with the above two changes ends up replacing if (sad_count) with if (eld_valid). Signed-off-by: Stephen Warren Signed-off-by: Takashi Iwai commit 79008997e232ad1d871bb6fedfb7fbd77ea95af8 Author: Marc Kleine-Budde Date: Tue May 3 17:31:40 2011 +0200 can: at91_can: convert derived mailbox constants into functions This is the first of two patches converting the at91_can driver from a compile time mailbox setup to a dynamic one. This patch converts all derived mailbox constants to functions. Signed-off-by: Marc Kleine-Budde commit b049994d0f3a19c1706627117a7269ce5bd335ab Author: Marc Kleine-Budde Date: Tue May 3 16:37:16 2011 +0200 can: at91_can: rename AT91_MB_RX_MASK to AT91_IRQ_MB_RX ... and use it for AT91_NEXT_MB_MASK, AT91_IRQ_MB_RX and AT91_IRQ_MB_RX, too. Signed-off-by: Marc Kleine-Budde commit 267cbe047cb4f6a3a6337029fc60862be1cf437d Author: Marc Kleine-Budde Date: Sat Apr 30 20:46:12 2011 +0200 can: at91_can: directly define AT91_MB_RX_LAST ...instead of deriving it from AT91_MB_RX_FIRST and AT91_MB_RX_NUM. This removes a level of computation, when switching the driver from compile time constants to runtime values. Signed-off-by: Marc Kleine-Budde commit 9c2e0a6d2f7b7c76e0cbc42a8da99fd732f0fdfa Author: Marc Kleine-Budde Date: Tue May 3 17:47:55 2011 +0200 can: at91_can: let get_tx_* functions return unsigned int Signed-off-by: Marc Kleine-Budde commit e14ee40bece891b5edccdd514112999ec423a448 Author: Marc Kleine-Budde Date: Thu Oct 21 18:39:26 2010 +0200 can: at91_can: don't copy data to rx'ed RTR frames Signed-off-by: Marc Kleine-Budde Acked-by: Wolfgang Grandegger commit 5613fff2dc315e5f44623031cb62a29942548427 Author: Marc Kleine-Budde Date: Sat Apr 16 13:25:15 2011 +0200 can: at91_can: fix comment about priv->tx_next Signed-off-by: Marc Kleine-Budde commit 44d856665789288859b7aa47ca25933c1c6ab57d Author: Marc Kleine-Budde Date: Sun Jan 30 22:14:49 2011 +0100 can: at91_can: don't align struct definitions Signed-off-by: Marc Kleine-Budde commit 114df7d66efd5c23561782f38e97c48fb30d4f5d Author: H Hartley Sweeten Date: Wed Jun 1 15:16:09 2011 -0700 dma: at_hdmac.c: use resource_size Signed-off-by: H Hartley Sweeten Cc: Dan Williams Cc: Vinod Koul Signed-off-by: Vinod Koul commit 7dab35c0c01c5d960d7b551a607270adccfadb42 Author: H Hartley Sweeten Date: Wed Jun 1 15:10:30 2011 -0700 dma: ipu_idmac.c: use resource_size in ioremap Signed-off-by: H Hartley Sweeten Cc: Dan Williams Cc: Vinod Koul Cc: Guennadi Liakhovetski Cc: Anatolij Gustschin Signed-off-by: Vinod Koul commit 5dfcea629a08b4684a019cd0cb59d0c9129a6c02 Author: Andy Lutomirski Date: Sun Jun 5 13:50:23 2011 -0400 x86-64: Fill unused parts of the vsyscall page with 0xcc Jumping to 0x00 might do something depending on the following bytes. Jumping to 0xcc is a trap. So fill the unused parts of the vsyscall page with 0xcc to make it useless for exploits to jump there. Signed-off-by: Andy Lutomirski Cc: Jesper Juhl Cc: Borislav Petkov Cc: Linus Torvalds Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/ed54bfcfbe50a9070d20ec1edbe0d149e22a4568.1307292171.git.luto@mit.edu Signed-off-by: Ingo Molnar commit bb5fe2f78eadf5a52d8dcbf9a57728fd107af97b Author: Andy Lutomirski Date: Sun Jun 5 13:50:22 2011 -0400 x86-64: Remove vsyscall number 3 (venosys) It just segfaults since April 2008 (a4928cff), so I'm pretty sure that nothing uses it. And having an empty section makes the linker script a bit fragile. Signed-off-by: Andy Lutomirski Cc: Jesper Juhl Cc: Borislav Petkov Cc: Linus Torvalds Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/4a4abcf47ecadc269f2391a313576fe6d06acef7.1307292171.git.luto@mit.edu Signed-off-by: Ingo Molnar commit ca632f556697d45d67ed5cada7cedf3ddfe0db4b Author: Grant Likely Date: Mon Jun 6 01:16:30 2011 -0600 spi: reorganize drivers Sort the SPI makefile and enforce the naming convention spi_*.c for spi drivers. This change also rolls the contents of atmel_spi.h into the .c file since there is only one user of that particular include file. v2: - Use 'spi-' prefix instead of 'spi_' to match what seems to be be the predominant pattern for subsystem prefixes. - Clean up filenames in Kconfig and header comment blocks Signed-off-by: Grant Likely Acked-by: Wolfram Sang Acked-by: Linus Walleij commit d41071575b0b20b780bb0e8e7e70c62c1b07a883 Author: Mika Westerberg Date: Sun May 29 13:10:06 2011 +0300 spi/ep93xx: add DMA support This patch adds DMA support for the EP93xx SPI driver. By default the DMA is not enabled but it can be enabled by setting ep93xx_spi_info.use_dma to true in board configuration file. Note that the SPI driver still uses PIO for small transfers (<= 8 bytes) for performance reasons. Signed-off-by: Mika Westerberg Acked-by: H Hartley Sweeten Cc: Grant Likely Acked-by: Grant Likely Signed-off-by: Vinod Koul commit 8e4a93008db7780e45838fe65840b289f389ef4a Author: Mika Westerberg Date: Sun May 29 13:10:05 2011 +0300 ep93xx: remove the old M2P DMA code Since we have converted all existing users of the old DMA API to use the DMA engine API the old code can be dropped. Signed-off-by: Mika Westerberg Acked-by: Ryan Mallon Acked-by: H Hartley Sweeten Signed-off-by: Vinod Koul commit a103fc67c612bfc0f6388885fea7244967afaad4 Author: Mika Westerberg Date: Sun May 29 13:10:04 2011 +0300 ASoC: ep93xx: convert to use the DMA engine API Now that we have the EP93xx DMA engine driver in place, we convert the ASoC drivers (I2S, AC97 and PCM) to take advantage of this new API. There are no functional changes. Signed-off-by: Mika Westerberg Acked-by: H Hartley Sweeten Acked-by: Liam Girdwood Acked-by: Mark Brown Signed-off-by: Vinod Koul commit f911d026e84a137e35701a4f23732f47ce40a6b8 Author: Mika Westerberg Date: Sun May 29 13:10:03 2011 +0300 ep93xx: add dmaengine platform code Add platform support code for the new EP93xx dmaengine driver. Signed-off-by: Mika Westerberg Signed-off-by: Ryan Mallon Acked-by: H Hartley Sweeten Signed-off-by: Vinod Koul commit 5fa29a17fabfe204fa9f20edd5fc81ab2364eb4b Author: Mika Westerberg Date: Sun May 29 13:10:02 2011 +0300 dmaengine: add ep93xx DMA support The ep93xx DMA controller has 10 independent memory to peripheral (M2P) channels, and 2 dedicated memory to memory (M2M) channels. M2M channels can also be used by SPI and IDE to perform DMA transfers to/from their memory mapped FIFOs. This driver supports both M2P and M2M channels with DMA_SLAVE, DMA_CYCLIC and DMA_MEMCPY (M2M only) capabilities. Signed-off-by: Mika Westerberg Signed-off-by: Ryan Mallon Acked-by: H Hartley Sweeten Acked-by: Vinod Koul Cc: Dan Williams Signed-off-by: Vinod Koul commit df4156569d4ace581bd1581e7aa4a9dd7d2f0775 Author: Paul Bolle Date: Mon Jun 6 05:11:34 2011 +0200 block: rename the return of two functions If we rename the return of alloc_io_context() and get_io_context() from "ret" to "ioc" the code get's (a bit) more readable and (a lot) more grepable. Signed-off-by: Paul Bolle Signed-off-by: Jens Axboe commit 8aea45451b252e4be09ee9974c5658bb47c81625 Author: Paul Bolle Date: Mon Jun 6 05:07:54 2011 +0200 CFQ: make two functions static Correctly suggested by sparse. Signed-off-by: Paul Bolle Signed-off-by: Jens Axboe commit 9b50902db5eb8a220160fb89e95aa11967998d12 Author: Jens Axboe Date: Sun Jun 5 06:01:13 2011 +0200 cfq-iosched: fix locking around ioc->ioc_data assignment Since we are modifying this RCU pointer, we need to hold the lock protecting it around it. This fixes a potential reuse and double free of a cfq io_context structure. The bug has been in CFQ for a long time, it hit very few people but those it did hit seemed to see it a lot. Tracked in RH bugzilla here: https://bugzilla.redhat.com/show_bug.cgi?id=577968 Credit goes to Paul Bolle for figuring out that the issue was around the one-hit ioc->ioc_data cache. Thanks to his hard work the issue is now fixed. Cc: stable@kernel.org Signed-off-by: Jens Axboe commit ab7cfb5548d22604fafeaaa95950be2f97869f1e Author: Paul Mundt Date: Wed Jun 1 14:47:42 2011 +0900 serial: sh-sci: Kill off bitrotted H8/300 support. h8300 has never been updated upstream to support the conversion to the driver model (which happened mid-2.5), and it doesn't seem likely that it ever will. Kill off the remaining bitrotted support to reduce the maintenance burden going forward. Signed-off-by: Paul Mundt commit e3cc055c18ab575291acf0af7622a2e97c4728fa Author: Joe Perches Date: Fri Jun 3 11:51:21 2011 +0000 include/net: Remove unnecessary semicolons Semicolons are not necessary after switch/while/for/if braces so remove them. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 6403eab143205a45a5493166ff8bf7e3646f4a77 Author: Joe Perches Date: Fri Jun 3 11:51:20 2011 +0000 drivers/net: Remove unnecessary semicolons Semicolons are not necessary after switch/while/for/if braces so remove them. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit f81c62242045fb7be0a124d8c2540af96d842fad Author: Joe Perches Date: Fri Jun 3 11:51:19 2011 +0000 net: Remove unnecessary semicolons Semicolons are not necessary after switch/while/for/if braces so remove them. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 827d978037d7d0bf0860481948c6d26ead10042f Author: Ben Greear Date: Wed Jun 1 07:18:53 2011 +0000 af-packet: Use existing netdev reference for bound sockets. This saves a network device lookup on each packet transmitted, for sockets that are bound to a network device. Signed-off-by: Ben Greear Signed-off-by: David S. Miller commit 160ff18a07f3a505d452dcced8e45ecdd0a85506 Author: Ben Greear Date: Wed Jun 1 07:18:52 2011 +0000 af-packet: Hold reference to bound network devices. Old code was probably safe, but with this change we can actually use the netdev object, not just compare the pointer values. Signed-off-by: Ben Greear Signed-off-by: David S. Miller commit d319bb79afa4039bda6f85661d6bf0c13299ce93 Author: Andy Lutomirski Date: Sun Jun 5 13:50:21 2011 -0400 x86-64: Map the HPET NX Currently the HPET mapping is a user-accessible syscall instruction at a fixed address some of the time. A sufficiently determined hacker might be able to guess when. Signed-off-by: Andy Lutomirski Cc: Jesper Juhl Cc: Borislav Petkov Cc: Linus Torvalds Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/ab41b525a4ca346b1ca1145d16fb8d181861a8aa.1307292171.git.luto@mit.edu Signed-off-by: Ingo Molnar commit 0d7b8547fb67d5c2a7d954c56b3715b0e708be4a Author: Andy Lutomirski Date: Sun Jun 5 13:50:20 2011 -0400 x86-64: Remove kernel.vsyscall64 sysctl It's unnecessary overhead in code that's supposed to be highly optimized. Removing it allows us to remove one of the two syscall instructions in the vsyscall page. The only sensible use for it is for UML users, and it doesn't fully address inconsistent vsyscall results on UML. The real fix for UML is to stop using vsyscalls entirely. Signed-off-by: Andy Lutomirski Cc: Jesper Juhl Cc: Borislav Petkov Cc: Linus Torvalds Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/973ae803fe76f712da4b2740e66dccf452d3b1e4.1307292171.git.luto@mit.edu Signed-off-by: Ingo Molnar commit 9fd67b4ed0714ab718f1f9bd14c344af336a6df7 Author: Andy Lutomirski Date: Sun Jun 5 13:50:19 2011 -0400 x86-64: Give vvars their own page Move vvars out of the vsyscall page into their own page and mark it NX. Without this patch, an attacker who can force a daemon to call some fixed address could wait until the time contains, say, 0xCD80, and then execute the current time. Signed-off-by: Andy Lutomirski Cc: Jesper Juhl Cc: Borislav Petkov Cc: Linus Torvalds Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/b1460f81dc4463d66ea3f2b5ce240f58d48effec.1307292171.git.luto@mit.edu Signed-off-by: Ingo Molnar commit 8b4777a4b50cb0c84c1152eac85d24415fb6ff7d Author: Andy Lutomirski Date: Sun Jun 5 13:50:18 2011 -0400 x86-64: Document some of entry_64.S Signed-off-by: Andy Lutomirski Cc: Jesper Juhl Cc: Borislav Petkov Cc: Linus Torvalds Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/fc134867cc550977cc996866129e11a16ba0f9ea.1307292171.git.luto@mit.edu Signed-off-by: Ingo Molnar commit 6879eb2deed7171a81b2f904c9ad14b9648689a7 Author: Andy Lutomirski Date: Sun Jun 5 13:50:17 2011 -0400 x86-64: Fix alignment of jiffies variable It's declared __attribute__((aligned(16)) but it's explicitly not aligned. This is probably harmless but it's a bit embarrassing. Signed-off-by: Andy Lutomirski Cc: Jesper Juhl Cc: Borislav Petkov Cc: Linus Torvalds Cc: Arjan van de Ven Cc: Jan Beulich Cc: richard -rw- weinberger Cc: Mikael Pettersson Cc: Andi Kleen Cc: Brian Gerst Cc: Louis Rilling Cc: Valdis.Kletnieks@vt.edu Cc: pageexec@freemail.hu Link: http://lkml.kernel.org/r/5f3bc5542e9aaa9382d53f153f54373165cdef89.1307292171.git.luto@mit.edu Signed-off-by: Ingo Molnar commit e990b37b906b6137d353ef2a918e15e5763d70ec Merge: 34624d6 23c79d3 Author: David S. Miller Date: Sat Jun 4 13:38:31 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit dd1d6772692316fe35094085c5e4d9a370ad3462 Author: Tejun Heo Date: Thu Jun 2 11:14:00 2011 +0200 signal: remove three noop tracehooks Remove the following three noop tracehooks in signals.c. * tracehook_force_sigpending() * tracehook_get_signal() * tracehook_finish_jctl() The code area is about to be updated and these hooks don't do anything other than obfuscating the logic. Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit 62c124ff3bcdb414af635c2bf822c9e4f2a5abfa Author: Tejun Heo Date: Thu Jun 2 11:14:00 2011 +0200 ptrace: use bit_waitqueue for TRAPPING instead of wait_chldexit ptracer->signal->wait_chldexit was used to wait for TRAPPING; however, ->wait_chldexit was already complicated with waker-side filtering without adding TRAPPING wait on top of it. Also, it unnecessarily made TRAPPING clearing depend on the current ptrace relationship - if the ptracee is detached, wakeup is lost. There is no reason to use signal->wait_chldexit here. We're just waiting for JOBCTL_TRAPPING bit to clear and given the relatively infrequent use of ptrace, bit_waitqueue can serve it perfectly. This patch makes JOBCTL_TRAPPING wait use bit_waitqueue instead of signal->wait_chldexit. -v2: Use JOBCTL_*_BIT macros instead of ilog2() as suggested by Linus. Signed-off-by: Tejun Heo Cc: Linus Torvalds Signed-off-by: Oleg Nesterov commit 7dd3db54e77d21eb95e145f19ba53f68250d0e73 Author: Tejun Heo Date: Thu Jun 2 11:14:00 2011 +0200 job control: introduce task_set_jobctl_pending() task->jobctl currently hosts JOBCTL_STOP_PENDING and will host TRAP pending bits too. Setting pending conditions on a dying task may make the task unkillable. Currently, each setting site is responsible for checking for the condition but with to-be-added job control traps this becomes too fragile. This patch adds task_set_jobctl_pending() which should be used when setting task->jobctl bits to schedule a stop or trap. The function performs the followings to ease setting pending bits. * Sanity checks. * If fatal signal is pending or PF_EXITING is set, no bit is set. * STOP_SIGMASK is automatically cleared if new value is being set. do_signal_stop() and ptrace_attach() are updated to use task_set_jobctl_pending() instead of setting STOP_PENDING explicitly. The surrounding structures around setting are changed to fit task_set_jobctl_pending() better but there should be no userland visible behavior difference. Signed-off-by: Tejun Heo Cc: Oleg Nesterov Signed-off-by: Oleg Nesterov commit 6dfca32984237a8a011b5bf367e53341a265b2a4 Author: Tejun Heo Date: Thu Jun 2 11:14:00 2011 +0200 job control: make task_clear_jobctl_pending() clear TRAPPING automatically JOBCTL_TRAPPING indicates that ptracer is waiting for tracee to (re)transit into TRACED. task_clear_jobctl_pending() must be called when either tracee enters TRACED or the transition is cancelled for some reason. The former is achieved by explicitly calling task_clear_jobctl_pending() in ptrace_stop() and the latter by calling it at the end of do_signal_stop(). Calling task_clear_jobctl_trapping() at the end of do_signal_stop() limits the scope TRAPPING can be used and is fragile in that seemingly unrelated changes to tracee's control flow can lead to stuck TRAPPING. We already have task_clear_jobctl_pending() calls on those cancelling events to clear JOBCTL_STOP_PENDING. Cancellations can be handled by making those call sites use JOBCTL_PENDING_MASK instead and updating task_clear_jobctl_pending() such that task_clear_jobctl_trapping() is called automatically if no stop/trap is pending. This patch makes the above changes and removes the fallback task_clear_jobctl_trapping() call from do_signal_stop(). Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit 3759a0d94c18764247b66511d1038f2b93aa95de Author: Tejun Heo Date: Thu Jun 2 11:14:00 2011 +0200 job control: introduce JOBCTL_PENDING_MASK and task_clear_jobctl_pending() This patch introduces JOBCTL_PENDING_MASK and replaces task_clear_jobctl_stop_pending() with task_clear_jobctl_pending() which takes an extra @mask argument. JOBCTL_PENDING_MASK is currently equal to JOBCTL_STOP_PENDING but future patches will add more bits. recalc_sigpending_tsk() is updated to use JOBCTL_PENDING_MASK instead. task_clear_jobctl_pending() takes @mask which in subset of JOBCTL_PENDING_MASK and clears the relevant jobctl bits. If JOBCTL_STOP_PENDING is set, other STOP bits are cleared together. All task_clear_jobctl_stop_pending() users are updated to call task_clear_jobctl_pending() with JOBCTL_STOP_PENDING which is functionally identical to task_clear_jobctl_stop_pending(). This patch doesn't cause any functional change. Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit 81be24b8cdeb69e62f9d1b6b425fd9ffdd37f581 Author: Tejun Heo Date: Thu Jun 2 11:13:59 2011 +0200 ptrace: relocate set_current_state(TASK_TRACED) in ptrace_stop() In ptrace_stop(), after arch hook is done, the task state and jobctl bits are updated while holding siglock. The ordering requirement there is that TASK_TRACED is set before JOBCTL_TRAPPING is cleared to prevent ptracer waiting on TRAPPING doesn't end up waking up TRACED is actually set and sees TASK_RUNNING in wait(2). Move set_current_state(TASK_TRACED) to the top of the block and reorganize comments. This makes the ordering more obvious (TASK_TRACED before other updates) and helps future updates to group stop participation. This patch doesn't cause any functional change. Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit 755e276b3326f300585435d2f3876e66e248c476 Author: Tejun Heo Date: Thu Jun 2 11:13:59 2011 +0200 ptrace: ptrace_check_attach(): rename @kill to @ignore_state and add comments PTRACE_INTERRUPT is going to be added which should also skip task_is_traced() check in ptrace_check_attach(). Rename @kill to @ignore_state and make it bool. Add function comment while at it. This patch doesn't introduce any behavior difference. Signed-off-by: Tejun Heo Signed-off-by: Oleg Nesterov commit a8f072c1d624a627b67f2ace2f0c25d856ef4e54 Author: Tejun Heo Date: Thu Jun 2 11:13:59 2011 +0200 job control: rename signal->group_stop and flags to jobctl and update them signal->group_stop currently hosts mostly group stop related flags; however, it's gonna be used for wider purposes and the GROUP_STOP_ flag prefix becomes confusing. Rename signal->group_stop to signal->jobctl and rename all GROUP_STOP_* flags to JOBCTL_*. Bit position macros JOBCTL_*_BIT are defined and JOBCTL_* flags are defined in terms of them to allow using bitops later. While at it, reassign JOBCTL_TRAPPING to bit 22 to better accomodate future additions. This doesn't cause any functional change. -v2: JOBCTL_*_BIT macros added as suggested by Linus. Signed-off-by: Tejun Heo Cc: Linus Torvalds Signed-off-by: Oleg Nesterov commit 0b1007c3578569469a6fab6ae5cca918ccdc3ee1 Author: Tejun Heo Date: Thu Jun 2 11:13:59 2011 +0200 ptrace: remove silly wait_trap variable from ptrace_attach() Remove local variable wait_trap which determines whether to wait for !TRAPPING or not and simply wait for it if attach was successful. -v2: Oleg pointed out wait should happen iff attach was successful. Signed-off-by: Tejun Heo Cc: Oleg Nesterov Signed-off-by: Oleg Nesterov commit 3ce2a0bc9dfb6423491afe0afc9f099e24b8cba4 Merge: aef29bf aa4a221 Author: Ingo Molnar Date: Sat Jun 4 12:28:05 2011 +0200 Merge branch 'perf/urgent' into perf/core Conflicts: tools/perf/util/python.c Merge reason: resolve the conflict with perf/urgent. Signed-off-by: Ingo Molnar commit dd2897bf0f4d523238e87dabb23e9634ea9ba73d Author: Borislav Petkov Date: Fri Jun 3 22:07:22 2011 +0200 x86, asm: Fix binutils 2.16 issue with __USER32_CS While testing the patchset at http://lkml.kernel.org/r/1306873314-32523-1-git-send-email-bp@alien8.de with binutils 2.16.1 from hell, kernel build fails with the following error: arch/x86/ia32/ia32entry.S: Assembler messages: arch/x86/ia32/ia32entry.S:139: Error: too many positional arguments make[2]: *** [arch/x86/ia32/ia32entry.o] Error 1 make[1]: *** [arch/x86/ia32] Error 2 make[1]: *** Waiting for unfinished jobs.... make: *** [arch/x86] Error 2 make: *** Waiting for unfinished jobs.... due to spaces between the operators of the __USER32_CS define. Fix it so that gas 2.16 can swallow it too. Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/1307131642-32595-1-git-send-email-bp@alien8.de Signed-off-by: H. Peter Anvin commit 38e6b75d3b6f4b9445eb6486e28fc716acda44ae Author: Borislav Petkov Date: Tue May 31 22:21:54 2011 +0200 x86, asm: Cleanup thunk_64.S Drop thunk_ra macro in favor of an additional argument to the thunk macro since their bodies are almost identical. Do a whitespace scrubbing and use CFI-aware macros for full annotation. Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/1306873314-32523-5-git-send-email-bp@alien8.de Signed-off-by: H. Peter Anvin commit 838feb47549a9b73534c6c1d7da4a9639a0750f4 Author: Borislav Petkov Date: Tue May 31 22:21:53 2011 +0200 x86, asm: Flip RESTORE_ARGS arguments logic ... thus getting rid of the "else" part of the conditional statement in the macro. No functionality change. Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/1306873314-32523-4-git-send-email-bp@alien8.de Signed-off-by: H. Peter Anvin commit cac0e0a78f722abd85b7f8d614ee0820f7672f58 Author: Borislav Petkov Date: Tue May 31 22:21:52 2011 +0200 x86, asm: Flip SAVE_ARGS arguments logic This saves us the else part of the conditional statement in the macro. No functionality change. Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/1306873314-32523-3-git-send-email-bp@alien8.de Signed-off-by: H. Peter Anvin commit a268fcfaa6ab2ef740fda5ecf947aca45ccd535d Author: Borislav Petkov Date: Tue May 31 22:21:51 2011 +0200 x86, asm: Thin down SAVE/RESTORE_* asm macros Use dwarf2 cfi annotation macros, making SAVE/RESTORE_* marginally more readable. No functionality change. Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/1306873314-32523-2-git-send-email-bp@alien8.de Signed-off-by: H. Peter Anvin commit 8c99268431a117207a89be5167ecd69429fd4bda Author: Anatolij Gustschin Date: Wed Jun 1 18:36:49 2011 +0200 spi/bitbang: initialize bits_per_word as specified by spi message SPI protocol drivers can submit messages specifying needed bits_per_word parameter for a message transfer. The bitbang driver currently ignores bits_per_word given by a singe message and always uses master's bits_per_word parameter. Only use master's bits_per_word when a message didn't specify needed bits_per_word for ongoing transfer. Signed-off-by: Anatolij Gustschin Signed-off-by: Grant Likely commit 805a3b810708db3261cc8c1183ffb2703a5ce243 Author: Wey-Yi Guy Date: Fri Jun 3 07:54:16 2011 -0700 iwlagn: call commit_rxon function directly No need to go though multiple levels of indirect call to send RXON command. Call it directly Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit e80d70e98b993a7ece93e29a408da4a7d57a4da2 Author: Wey-Yi Guy Date: Fri Jun 3 07:54:15 2011 -0700 iwlagn: direct call to post_scan function After driver split, no need to use function "ops" for post_scan. Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit c2b821d7a59e5d6b53c906d0a8fecc68e2aee540 Author: Wey-Yi Guy Date: Fri Jun 3 07:54:14 2011 -0700 iwlagn: move all post scan functions in one place Both tx power and power save are being done after scan complete, move into post_scan function Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 15b3f3b006b42a678523cad989bfd60b76bf4403 Author: Wey-Yi Guy Date: Fri Jun 3 07:54:13 2011 -0700 iwlagn: set smps mode after assoc for 1000 device For some timing reason, 1000 device having problem to kick-in to aggregation without sending rxon assoc command. This is a W/A until find the real reason Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 88e9ba76bf906d8106d5f64856eba6e6d6777003 Author: Wey-Yi Guy Date: Fri Jun 3 07:54:12 2011 -0700 iwlagn: save the latest smps mode When change smps mode due to bt coex, save it Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 0c34861e7c66435ab0986509ec20055c402f29d8 Author: Greg Dietsche Date: Thu Jun 2 22:24:06 2011 -0500 iwlegacy: add missing null check lq_sta has other null checks in this function. assuming they are correct, this additional null check should be added too. Incorporating suggestion from Gustavo Padovan. Signed-off-by: Greg Dietsche Signed-off-by: John W. Linville commit 5c30c76ee616fffb47cbd9810bfd0a99ce4ddb38 Author: Greg Dietsche Date: Thu Jun 2 21:06:09 2011 -0500 iwlegacy: propagate error return value propogate the return value from iwl4965_get_tx_atten_grp instead of implicitly returning -EINVAL in the error case. Signed-off-by: Greg Dietsche Signed-off-by: John W. Linville commit 8e638188b2b84ef9bb9ccbb87b92dda9d0a77bcb Author: Greg Dietsche Date: Thu Jun 2 21:06:08 2011 -0500 iwlegacy: return -EINVAL instead of -1 Cleanup the code to return -EINVAL instead of -1 Signed-off-by: Greg Dietsche Signed-off-by: John W. Linville commit 04975f3fc390974059ad06ac4162db7a6668a18d Author: Greg Dietsche Date: Thu Jun 2 21:06:07 2011 -0500 iwlegacy: remove unecessary if statement the code always returns ret regardless, so if(ret) check is unecessary. Signed-off-by: Greg Dietsche Signed-off-by: John W. Linville commit e5a042ea30c1772df9ed3dbe1538520e091ad25f Author: Greg Dietsche Date: Thu Jun 2 21:06:06 2011 -0500 iwlegacy: remove unreachable code return; at the end of the function is unecessary. Signed-off-by: Greg Dietsche Signed-off-by: John W. Linville commit aa4e0141c1c1ca53c643eacc6a68f29ade5f77ba Author: Rafał Miłecki Date: Thu Jun 2 13:43:24 2011 +0200 b43: add BCMA 80211 core specific defines Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 3c65ab62c5869a9d6ce5d9c28f7042b0e7e57891 Author: Rafał Miłecki Date: Thu Jun 2 09:56:04 2011 +0200 b43: add an option to register BROKEN bcma driver It does nothing useful yet, so it is matched as BROKEN. For now this is just an option for b43, in future we may want to make b43 support SSB or BCMA (note: or, not xor). Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 27f18dc2dafe66a93c7101fc94201b8c83903597 Author: Rafał Miłecki Date: Thu Jun 2 02:08:51 2011 +0200 bcma: read SPROM and extract MAC from it In case of BCMA cards SPROM is located in the ChipCommon core, it is not mapped as separated host window. So far we have met only SPROMs rev 8. SPROM layout seems to be the same as for SSB buses, so we decided to share SPROM struct and some defines. For now we extract MAC address only, this can be improved of course. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 4da909e7b572b561d8150f9d41b04bcfff386222 Author: Rafał Miłecki Date: Thu Jun 2 01:07:12 2011 +0200 b43: do not use SSB specific flags when calling core reset function Luckily the only flag we use when calling core reset is GMODE one. Thanks to that we can just switch to single bool and make function calls bus generic. Tested on my BCM4312 (LP-PHY) and early tested with BCM43224. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 5a6f78afdabeb8b8e0811547fb98813323abf888 Author: Felix Fietkau Date: Tue May 31 21:21:41 2011 +0200 ath9k: show excessive-retry MPDUs in debugfs Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 10f8113ecb76eea72f96c7cfb72d7fed7c282565 Author: Arend van Spriel Date: Tue May 31 11:22:16 2011 +0200 lib: cordic: add library module providing cordic angle calculation The brcm80211 driver in the staging tree has a cordic function to determine cosine and sine for a given angle. Feedback received from John Linville suggested that these kind of functions should be made available to others as a library function in the kernel tree. The b43 driver also has a cordic angle calculation implemented. Cc: linux-kernel@vger.kernel.org Cc: linux-wireless@vger.kernel.org Cc: "John W. Linville" Cc: Greg Kroah-Hartman Cc: Dan Carpenter Cc: Randy Dunlap Cc: Larry Finger Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Franky (Zhenhui) Lin Signed-off-by: Arend van Spriel Signed-off-by: John W. Linville commit 7150962d637cf38617924f7f72ea00612283eb89 Author: Arend van Spriel Date: Tue May 31 11:22:15 2011 +0200 lib: crc8: add new library module providing crc8 algorithm The brcm80211 driver in staging tree uses a crc8 function. Based on feedback from John Linville to move this to lib directory, the linux source has been searched. Although there is currently only one other kernel driver using this algorithm (ie. drivers/ssb) we are providing this as a library function for others to use. Cc: linux-kernel@vger.kernel.org Cc: linux-wireless@vger.kernel.org Cc: Dan Carpenter Cc: George Spelvin Cc: Randy Dunlap Reviewed-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: "Franky (Zhenhui) Lin" Signed-off-by: Arend van Spriel Signed-off-by: John W. Linville commit dabd3001f941e35c4afa2458ceb17e5170062189 Author: Mike McCormack Date: Tue May 31 08:50:24 2011 +0900 rtlwifi: Fix logic in rx_interrupt Should pass along packet if there's no CRC and no hardware error. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 71352b2318675cf6a3f54c02a33d91ac17af1626 Author: Mike McCormack Date: Tue May 31 08:50:07 2011 +0900 rtlwifi: Use write barrier when assigning ownership Make sure all updates to a descriptor are flushed to memory before assigning ownship to hardware. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit febc9fe5387ed37cb329563ae29d21b41c71a9dd Author: Mike McCormack Date: Tue May 31 08:49:51 2011 +0900 rtlwifi: Assign rx buffer ownership to hardware last Ownership of an rx buffer should only be given to the hardware after all other changes are written, otherwise there's a potential race. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 312d5479dcfaca2b8aa451201b5388fdb8c8684a Author: Mike McCormack Date: Tue May 31 08:49:36 2011 +0900 rtlwifi: Don't block interrupts in spinlocks Now power state transitions are not called from an interrupt context, there's no need to block interrupts. This code appears to block interrupts for too long, causing my trackpad to lose sync occasionally. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 67fc6052a49b781efbcfc138f3b68fe79ddd0c2f Author: Mike McCormack Date: Tue May 31 08:49:23 2011 +0900 rtlwifi: Run IPS leave work in a tasklet This removes the need to use IRQ safe spinlocks in many places. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 34ddb2077e5ced1a09a1dd2cbb82f807bfc5f88b Author: Mike McCormack Date: Tue May 31 08:49:07 2011 +0900 rtlwifi: Store loop index in local variable _rtl_pci_rx_interrupt uses rtlpci->rx_ring[rx_queue_idx].idx a few times, so store it in a separate variable. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit f2ea312cf4338ae187212e41b3dce97a666e3912 Author: Mike McCormack Date: Tue May 31 08:48:50 2011 +0900 rtlwifi: Remove set_rfpowerstate_inprogress set_rfpowerstate_inprogress is only set and never read so remove it. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 2e69167c32780b2228f294505d5bf742494c960f Author: Mike McCormack Date: Tue May 31 08:48:23 2011 +0900 rtlwifi: Synchronize IRQ after disabling it This make sure any IRQ handlers running on other CPUs complete. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit a26221a834fe30c22d440b954b2e11e607fa57f5 Author: H Hartley Sweeten Date: Fri Jun 3 13:32:41 2011 -0500 gpio/samsung: make Kconfig options def_bool The Samsung GPIO drivers are always built-in when the relevant platform is selected.  Change the Kconfig symbol to def_bool y dependant on the platform. Signed-off-by: H Hartley Sweeten Acked-by: Kyungmin Park Signed-off-by: Grant Likely commit 2bcc7ed5b83b0a59c6976476e8788675038fb11b Author: Shawn Guo Date: Tue May 31 16:23:43 2011 +0800 leds: remove config option LEDS_GPIO_PLATFORM from Kconfig Since the commit a314c5c0040aab51ebb1ecfd37a9198a91962243 (leds/leds-gpio: merge platform_driver with of_platform_driver), the config option LEDS_GPIO_PLATFORM becomes useless, so remove it. Signed-off-by: Shawn Guo [grant.likely: also remove LEDS_GPIO_OF for same reason] Signed-off-by: Grant Likely commit a3cc68c37897f0656489a0d853d6e342fc6f076b Author: H Hartley Sweeten Date: Fri May 27 16:35:59 2011 -0700 gpio/74x164: remove unnecessary defines and prototype Remove the #define GEN_74X164_GPIO_COUNT since it's only used in one place and it's meaning is obvious. Also remove the #define GEN_74X164_DRIVER_NAME and use spi->modalias to set the gpio chip's label and the string "74x164" for the driver name. Reorder the code slightly to remove the need to prototype gen_74x164_set_value. Signed-off-by: H Hartley Sweeten Signed-off-by: Grant Likely commit 6885685923ee786f26e7b170e3b961ac0fa14037 Author: Jack Steiner Date: Thu Jun 2 14:59:43 2011 -0500 x66, UV: Enable 64-bit ACPI MFCG support for SGI UV2 platform Enable 64-bit ACPI MFCG support for SGI UV2 platform. The check is similar to the check on UV1. UV2 has a different oem_id string. Signed-off-by: Jack Steiner Link: http://lkml.kernel.org/r/20110602195943.GA27079@sgi.com Signed-off-by: Ingo Molnar commit 68d1c4a73c424061d0de760e04387e3e731c7da4 Author: Ricardo Neri Date: Thu Jun 2 15:44:47 2011 -0500 ASoC: OMAP: Update Makefile and Kconfig for HDMI audio Update Makefile and Kconfig to build HDMI audio support for OMAP4 SDP and Panda boards. Signed-off-by: Ricardo Neri Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 55b95e0e60588ebf0d61d828149092e8e2ec7aec Author: Ricardo Neri Date: Thu Jun 2 15:44:46 2011 -0500 ASoC: OMAP4: Add HDMI Audio machine driver for OMAP4 boards Add machine driver for HDMI audio on OMAP4 boards. This driver is in charge of putting together the HDMI audio codec and the CPU DAI and register the HDMI sound card with ALSA. Signed-off-by: Ricardo Neri Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit bca2e41d31cf891db535f99a2a2dfe4911b96c15 Author: Ricardo Neri Date: Thu Jun 2 15:44:45 2011 -0500 ASoC: OMAP: Add CPU DAI driver for HDMI Addition of the HDMI CPU DAI driver for OMAP4. This driver is in charge of configuring DMA settings for HDMI. Also, it finds the HDMI video device and determines if audio playback can proceed. Signed-off-by: Ricardo Neri Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit aef29bf20bd79c73992ab23d5067e9f0448b466e Merge: 27eb4a1 7cec092 Author: Ingo Molnar Date: Fri Jun 3 10:43:03 2011 +0200 Merge branch 'perf/core' of ssh://k/pub/scm/linux/kernel/git/acme/linux into perf/core commit 27eb4a1e4a56afacb0540c24084b9e0342f9956b Merge: 64ce312 55922c9 Author: Ingo Molnar Date: Fri Jun 3 10:41:03 2011 +0200 Merge commit 'v3.0-rc1' into perf/core Merge reason: merge in the latest fixes. Signed-off-by: Ingo Molnar commit e197f094b7da7d94812492cfcd706d143f1020e5 Merge: f339b9d e69c634 Author: Ingo Molnar Date: Fri Jun 3 10:27:47 2011 +0200 Merge branch 'unlikely/sched' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into sched/urgent commit 34624d6631b6b3a1df16407a847286bb6233a96b Author: Sucheta Chakraborty Date: Thu Jun 2 02:24:14 2011 +0000 netxen: suppress false lro warning messages When interface is down, driver prints false warning messages during lro configuration through ethtool. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit fe09bb619096a0aa139210748ddc668c2dbe2308 Author: Benjamin Herrenschmidt Date: Wed Jun 1 17:17:10 2011 +1000 sungem: Spring cleaning and GRO support This patch simplifies the logic and locking in sungem significantly: - LLTX is gone, all private locks are gone, mutex is gone - We don't poll the PHY while the interface is down - The above allowed me to get rid of a pile of state flags using the proper interface state provided by the networking stack when needed and overall simplify the driver a lot - Allocate the bulk of RX skbs at init time using GFP_KERNEL - Fix a bug where the dev->features were set after register_netdev() - Added GRO while at it Signed-off-by: Benjamin Herrenschmidt Signed-off-by: David S. Miller commit f5960b698eb50a39fce1a066dc19a6a5a1148e16 Author: Matt Evans Date: Wed Jun 1 10:22:55 2011 +1000 xhci: Remove some unnecessary casts and tidy some endian swap code Some of the recently-added cpu_to_leXX and leXX_to_cpu made things somewhat messy; this patch neatens some of these areas, removing unnecessary casts in those parts also. In some places (where Y & Z are constants) a comparison of (leXX_to_cpu(X) & Y) == Z has been replaced with (X & cpu_to_leXX(Y)) == cpu_to_leXX(Z). The endian reversal of the constants should wash out at compile time. Signed-off-by: Matt Evans Signed-off-by: Sarah Sharp commit 6f92c66f7190b1677ea666249b72298723392115 Author: Jiri Pirko Date: Wed Jun 1 10:36:33 2011 +0000 bonding: allow all slave speeds No need to check for 10, 100, 1000, 10000 explicitly. Just make this generic and check for invalid values only (similar check is in ethtool userspace app). This enables correct speed handling for slave devices with "nonstandard" speeds. Signed-off-by: Jiri Pirko Reviewed-by: Nicolas de Pesloüan Signed-off-by: David S. Miller commit afab2d2999e9c12cf319e1f19da9a0a754560d80 Author: Joe Perches Date: Thu May 26 10:58:31 2011 +0000 net: 8021q: Add pr_fmt Use the current logging style. Add #define pr_fmt and remove embedded prefix from formats. Not converting the current pr_ uses to netdev_ because all the output here is nicely prefaced with "8021q: ". Remove __func__ use from proc registration failure message. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit f35490f909b7d535ff7f2f1a7df59be8c2824931 Author: Johannes Berg Date: Thu Jun 2 19:38:43 2011 +0200 iwlagn: fix interface combinations My patch to advertise interface combinations worked by pure luck in the P2P case, but all other cases are broken. This is due to a dumb mistake in the code that checks what should be advertised, fix that. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 796d5116c407690b14fd5bda136aa67a39e7061a Author: Jeff Moyer Date: Thu Jun 2 21:19:05 2011 +0200 iosched: prevent aliased requests from starving other I/O Hi, Jens, If you recall, I posted an RFC patch for this back in July of last year: http://lkml.org/lkml/2010/7/13/279 The basic problem is that a process can issue a never-ending stream of async direct I/Os to the same sector on a device, thus starving out other I/O in the system (due to the way the alias handling works in both cfq and deadline). The solution I proposed back then was to start dispatching from the fifo after a certain number of aliases had been dispatched. Vivek asked why we had to treat aliases differently at all, and I never had a good answer. So, I put together a simple patch which allows aliases to be added to the rb tree (it adds them to the right, though that doesn't matter as the order isn't guaranteed anyway). I think this is the preferred solution, as it doesn't break up time slices in CFQ or batches in deadline. I've tested it, and it does solve the starvation issue. Let me know what you think. Cheers, Jeff Signed-off-by: Jeff Moyer Signed-off-by: Jens Axboe commit e6a9be0bb018466896632969ba4b496d1a7caea9 Author: Mark Brown Date: Wed Jun 1 20:16:40 2011 +0100 ASoC: Use a lower detection rate when monitoring headphones on WM8915 We only need to increase the detection rate to maximum if we're monitoring for button presses as the response times needed for user interaction there are much lower. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 7cec0922389e080d11ec43dd23aa778e136bd1e1 Author: David Ahern Date: Mon May 30 13:08:23 2011 -0600 perf script: Add printing of sample address Resolve to a function or variable if possible and if the sym option is enabled. Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Thomas Gleixner Link: http://lkml.kernel.org/r/1306782503-22002-1-git-send-email-dsahern@gmail.com Signed-off-by: David Ahern Signed-off-by: Arnaldo Carvalho de Melo commit 610723f24eeb842025178a6722fa9108c4e157b6 Author: David Ahern Date: Fri May 27 14:28:44 2011 -0600 perf script: Make printing of dso a separate field option The 'sym' option displays both the function name and the DSO it comes from. Split the display of the dso into a separate option. This allows display of the ip address and symbol without the dso, thus shortening line lengths - and decluttering the output a bit. Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Thomas Gleixner Link: http://lkml.kernel.org/r/1306528124-25861-3-git-send-email-dsahern@gmail.com Signed-off-by: David Ahern Signed-off-by: Arnaldo Carvalho de Melo commit 787bef174f055343c69a9639e6e05a564980ed4c Author: David Ahern Date: Fri May 27 14:28:43 2011 -0600 perf script: "sym" field really means show IP data Currently the "sym" output field is used to dump instruction pointers and callchain stack. Sample addresses can also be converted to symbols, so the meaning of "sym" needs to be fixed. This patch adds an "ip" option and if it is selected the user can also opt to dump symbols for them. If the user opts to dump IP without syms only the address is shown. Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Thomas Gleixner Link: http://lkml.kernel.org/r/1306528124-25861-2-git-send-email-dsahern@gmail.com Signed-off-by: David Ahern Signed-off-by: Arnaldo Carvalho de Melo commit 2cee77c4505fc581f41b44e18ffc0953b67a414c Author: David Ahern Date: Mon May 30 08:55:59 2011 -0600 perf stat: clarify unsupported events from uncounted events perf stat continues running even if the event list contains counters that are not supported. The resulting output then contains for those events which gets confusing as to which events are supported, but not counted and which are not supported. Before: perf stat -ddd -- sleep 1 Performance counter stats for 'sleep 1': 0.571283 task-clock # 0.001 CPUs utilized 1 context-switches # 0.002 M/sec 0 CPU-migrations # 0.000 M/sec 157 page-faults # 0.275 M/sec 1,037,707 cycles # 1.816 GHz stalled-cycles-frontend stalled-cycles-backend 654,499 instructions # 0.63 insns per cycle 136,129 branches # 238.286 M/sec branch-misses L1-dcache-loads L1-dcache-load-misses LLC-loads LLC-load-misses L1-icache-loads L1-icache-load-misses dTLB-loads dTLB-load-misses iTLB-loads iTLB-load-misses L1-dcache-prefetches L1-dcache-prefetch-misses 1.001004836 seconds time elapsed After: perf stat -ddd -- sleep 1 Performance counter stats for 'sleep 1': 1.350326 task-clock # 0.001 CPUs utilized 2 context-switches # 0.001 M/sec 0 CPU-migrations # 0.000 M/sec 157 page-faults # 0.116 M/sec 11,986 cycles # 0.009 GHz stalled-cycles-frontend stalled-cycles-backend 496,986 instructions # 41.46 insns per cycle 138,065 branches # 102.246 M/sec 7,245 branch-misses # 5.25% of all branches L1-dcache-loads L1-dcache-load-misses LLC-loads LLC-load-misses L1-icache-loads L1-icache-load-misses dTLB-loads dTLB-load-misses iTLB-loads iTLB-load-misses L1-dcache-prefetches L1-dcache-prefetch-misses 1.002397333 seconds time elapsed v1->v2: changed supported type from int to bool v2->v3 fixed vertical alignment of new struct element Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Thomas Gleixner Link: http://lkml.kernel.org/r/1306767359-13221-1-git-send-email-dsahern@gmail.com Signed-off-by: David Ahern Signed-off-by: Arnaldo Carvalho de Melo commit 64348153c63b8c1f99f19f14a9c3cbd5df70c9d3 Author: Frederic Weisbecker Date: Thu Mar 31 18:27:43 2011 +0200 perf python: Cleanup useless double NULL termination in method arg names The list of methods argument names only needs to be NULL terminated once. Remove the second ones. Cc: David Ahern Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/r/1301588863-20210-2-git-send-email-fweisbec@gmail.com Signed-off-by: Frederic Weisbecker Signed-off-by: Arnaldo Carvalho de Melo commit e95cc02880947e9f77540b03e166470e8ac14cbc Author: Frederic Weisbecker Date: Thu Mar 31 18:27:42 2011 +0200 perf python: Fix argument name list of read_on_cpu() Mandatory arguments need to be present in the argument name list, as well as optional arguments, otherwise python barfs: # ./python/twatch.py Traceback (most recent call last): File "./python/twatch.py", line 41, in main() File "./python/twatch.py", line 32, in main event = evlist.read_on_cpu(cpu) RuntimeError: more argument specifiers than keyword list entries Hence, add cpu to the name list. Cc: David Ahern Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/r/1301588863-20210-1-git-send-email-fweisbec@gmail.com Signed-off-by: Frederic Weisbecker Signed-off-by: Arnaldo Carvalho de Melo commit c2a70653af45c9cbb0cab900e8931b062e57b1ae Author: Arnaldo Carvalho de Melo Date: Thu Jun 2 11:04:54 2011 -0300 perf evlist: Don't die if sample_{id_all|type} is invalid Fixes two more cases where the python binding would not load: . Not finding die(), which it shouldn't anyway, not good to just stop the world because some particular perf.data file is invalid, just propagate the error to the caller. . Not finding perf_sample_size: fix it by moving it from event.c to evsel, where it belongs, as most cases are moving to operate on an evsel object.o One of the fixed problems: [root@emilia ~]# python >>> import perf Traceback (most recent call last): File "", line 1, in ImportError: /home/acme/git/build/perf/python/perf.so: undefined symbol: perf_sample_size >>> [root@emilia ~]# Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/n/tip-1hkj7b2cvgbfnoizsekjb6c9@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 5c6970af2f4be4e04b06fe78214f6809777a8354 Author: Arnaldo Carvalho de Melo Date: Thu Jun 2 10:55:10 2011 -0300 perf python: Use exception to propagate errors We were using pr_debug to tell the user about not being able to parse a sample where we should really use the python way of reporting errors: exceptions. Fixes this problem: [root@emilia ~]# python >>> import perf Traceback (most recent call last): File "", line 1, in ImportError: /home/acme/git/build/perf/python/perf.so: undefined symbol: eprintf >>> [root@emilia ~] As we want to keep the objects linked in the python binding (and in the future in a shared library) minimal. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/n/tip-m9dba9kaluas0kq8r58z191c@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit bccdaba044a445eb2c391295587aa47977994777 Author: Arnaldo Carvalho de Melo Date: Thu Jun 2 10:39:43 2011 -0300 perf evlist: Remove dependency on debug routines So far we avoided having to link debug.o in the python binding, keep it that way by not using ui__warning() in evlist.c. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/n/tip-4wtew8hd3g7ejnlehtspys2t@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit dd6254e5c0efe01ad255188898cb3dadf98cb56d Author: Clemens Ladisch Date: Mon May 16 08:10:10 2011 +0200 firewire: ohci: remove superfluous posted write flushes The call to flush_writes() in context_stop() is superfluous because another register read is done immediately afterwards. The call to flush_writes() in ar_context_run() does not need to be done individually for each AR context, so move it to ohci_enable(). This also makes ohci_enable() clearer because it no longer depends on a side effect of ar_context_run() to flush its own register writes. Finally, the setting of a context's wake bit does not need to be flushed because neither the driver logic nor the API require the CPU to wait for this action. This removes the last MMIO reads from the packet queueing code paths. Signed-off-by: Clemens Ladisch Signed-off-by: Stefan Richter commit bf337b15c28ae25904a73e7e2e0de2f9c4f0e9f8 Author: August Lilleaas Date: Sun May 29 19:07:19 2011 +0200 firewire: net: replacing deprecated __attribute__((packed)) with __packed Fixing a deprecation, replacing __attribute__((packed)) with __packed. It was deprecated for portability, specifically to avoid GCC specific code. See commit 82ddcb040570411fc2d421d96b3e69711c670328. Signed-off-by: August Lilleaas Signed-off-by: Stefan Richter (added include compiler.h) commit 74facffeca3795ffb5cf8898f5859fbb822e4c5d Author: Russell King Date: Thu Jun 2 11:16:22 2011 +0100 ARM: Allow SoCs to enable scatterlist chaining Allow SoCs to enable the scatterlist chaining support, which allows scatterlist tables to be broken up into smaller allocations. As support for this feature depends on the implementation details of the users of the scatterlists, we can't enable this globally without auditing all the users, which is a very big task. Instead, let SoCs progressively switch over to using this. SoC drivers using scatterlists and SoC DMA implementations need auditing before this option can be enabled for the SoC. Signed-off-by: Russell King commit 8a07eb0a50aebc8c95478d49c28c7f8419a26cef Author: Michio Honda Date: Tue Apr 26 20:19:36 2011 +0900 sctp: Add ASCONF operation on the single-homed host In this case, the SCTP association transmits an ASCONF packet including addition of the new IP address and deletion of the old address. This patch implements this functionality. In this case, the ASCONF chunk is added to the beginning of the queue, because the other chunks cannot be transmitted in this state. Signed-off-by: Michio Honda Signed-off-by: YOSHIFUJI Hideaki Acked-by: Wei Yongjun Signed-off-by: David S. Miller commit 7dc04d712203eecdc1435a4cd135935c4a297be5 Author: Michio Honda Date: Tue Apr 26 20:16:31 2011 +0900 sctp: Add socket option operation for Auto-ASCONF. This patch allows the application to operate Auto-ASCONF on/off behavior via setsockopt() and getsockopt(). Signed-off-by: Michio Honda Signed-off-by: YOSHIFUJI Hideaki Acked-by: Wei Yongjun Signed-off-by: David S. Miller commit dd51be0f5484b450b8d48c9226ed86ce3dd5102e Author: Michio Honda Date: Tue Apr 26 17:36:05 2011 +0900 sctp: Add sysctl support for Auto-ASCONF. This patch allows the system administrator to change default Auto-ASCONF on/off behavior via an sysctl value. Signed-off-by: Michio Honda Signed-off-by: YOSHIFUJI Hideaki Acked-by: Wei Yongjun Signed-off-by: David S. Miller commit 9f7d653b67aed2d92540fbb0a8adaf32fcf352ae Author: Michio Honda Date: Tue Apr 26 19:32:51 2011 +0900 sctp: Add Auto-ASCONF support (core). SCTP reconfigure the IP addresses in the association by using ASCONF chunks as mentioned in RFC5061. For example, we can start to use the newly configured IP address in the existing association. This patch implements automatic ASCONF operation in the SCTP stack with address events in the host computer, which is called auto_asconf. Signed-off-by: Michio Honda Signed-off-by: YOSHIFUJI Hideaki Acked-by: Wei Yongjun Signed-off-by: David S. Miller commit 3ced2dddf10f26f0aaff96f3345a3d876cea62f8 Author: YOSHIFUJI Hideaki Date: Tue Apr 26 19:23:24 2011 +0900 sctp: Allow regular C expression in 4th argument for SCTP_DEBUG_PRINTK_IPADDR macro. Signed-off-by: YOSHIFUJI Hideaki Acked-by: Wei Yongjun Signed-off-by: David S. Miller commit b1364104e37c9d8cf437746ba5f5dfedcc0bc132 Author: Michio Honda Date: Tue Apr 26 17:37:02 2011 +0900 sctp: Add ADD/DEL ASCONF handling at the receiver. This patch fixes the problem that the original code cannot delete the remote address where the corresponding transport is currently directed, even when the ASCONF is sent from the other address (this situation happens when the single-homed sender transmits ASCONF with ADD and DEL.) Signed-off-by: Michio Honda Signed-off-by: YOSHIFUJI Hideaki Acked-by: Wei Yongjun Signed-off-by: David S. Miller commit 40d69043fce579378eb185d31445b6ff66abbd93 Author: Dmitry.Tarnyagin Date: Wed Jun 1 03:29:18 2011 +0000 caif: Add CAIF HSI Link layer driver This patch introduces the CAIF HSI Protocol Driver for the CAIF Link Layer. This driver implements a platform driver to accommodate for a platform specific HSI devices. A general platform driver is not possible as there are no HSI side Kernel API defined. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit badc1446891c158f065c5a9726febdae74eb5ac5 Author: Mark Brown Date: Wed Jun 1 21:25:47 2011 +0100 [IA64] Hook up gpiolib support Allow people to use gpiolib on ia64, mostly for build coverage as it seems more useful to standardise on availablity of the API than handle it being optional. Signed-off-by: Mark Brown Signed-off-by: Tony Luck commit a198c142aacf82acad29e1752191bda8b451a0c7 Author: Yaniv Rosner Date: Tue May 31 21:29:42 2011 +0000 bnx2x: Improve cl45 access methods Instead of setting CL45 mode for every CL45 access, apply it once during initialization. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit ec146a6f019923819f5ca381980248b6d154ca1a Author: Yaniv Rosner Date: Tue May 31 21:29:27 2011 +0000 bnx2x: Modify XGXS functions Modify XGXS functions to follow rest of PHY scheme. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit fd36a2e69e05f42ddfe388efe14e068c0d0c6cb7 Author: Yaniv Rosner Date: Tue May 31 21:29:05 2011 +0000 bnx2x: Fix link status sync Fix link status synchronization between the primary function, and rest functions. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 020c7e3f3cd38d41104c7f55d3d5732c5ac939be Author: Yaniv Rosner Date: Tue May 31 21:28:43 2011 +0000 bnx2x: Adjust BCM8726 module detection settings Move BCM8726 module detection code into a separate function to be called only once during initialization. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 9045f6b44a01737a84c5bb79f580dccce6806d80 Author: Yaniv Rosner Date: Tue May 31 21:28:27 2011 +0000 bnx2x: Fix grammar and relocate code This patch relocates some functions as a preparation for next patches, and also fixes some grammar mistakes. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit bac27bd941454aaf40f7876ce3b487e303c4953d Author: Yaniv Rosner Date: Tue May 31 21:28:10 2011 +0000 bnx2x: Fix BCM84833 settings Fix BCM84833 register settings. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 27d024321cf4fc0a96c41c3b0f3c123796734a63 Author: Yaniv Rosner Date: Tue May 31 21:27:48 2011 +0000 bnx2x: Fix over current port display On 57712 chip, port number is enumerated per engine, so it requires adjustment in port display to the user. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit c688fe2fc0cab3a5d266f7f6fcb21f14e4ac39ba Author: Yaniv Rosner Date: Tue May 31 21:27:06 2011 +0000 bnx2x: Add TX fault check for fiber PHYs In case TX fault is detected on Fiber PHYs, declare the link as down until TX fault is gone. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit fcf5b650832996bd857bb8f0b0b42097218f7fb8 Author: Yaniv Rosner Date: Tue May 31 21:26:28 2011 +0000 bnx2x: Change return status type Change return status from u8 to int. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 1ac9e4286dc9e64dd2d937df7f8660bb5f260792 Author: Yaniv Rosner Date: Tue May 31 21:26:11 2011 +0000 bnx2x: Fix port type display Display the current media type connected to the port in ethtool. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit e4d78f120c039bbd18ae449a6b2af3df83ca02bf Author: Yaniv Rosner Date: Tue May 31 21:25:55 2011 +0000 bnx2x: Add new phy BCM8722 Add support for new phy BCM8722. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 5bc9890ff114cdd39de8561610f6af3bb4b08cfb Author: Wey-Yi Guy Date: Fri May 27 08:40:32 2011 -0700 iwlagn: change log to better represent the state of aggregation process Multiple A-MPDU actions will received from mac80211 while setting up the aggregation queue, change the message log to better represent the states. Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 5f88ac2d72a7f8e1cadab6d9cbc0fe1837cbcd7a Author: Wey-Yi Guy Date: Fri May 27 08:40:31 2011 -0700 iwlagn: change the logging level for aggregation enable check Aggregation will not enable if the traffic is lower than the threshold, this is not an error condition, so change the logging level. Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 0fd095024b7bc023c7afac107732dac961ee690d Author: Johannes Berg Date: Fri May 27 08:40:30 2011 -0700 iwlagn: advertise interface combinations With this, iwlwifi will advertise the limits on concurrency of virtual interfaces. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 93cce6f0adff92238965eadb3c046db58552087b Author: Emmanuel Grumbach Date: Fri May 27 08:40:29 2011 -0700 iwlagn: free the ICT ISR when the request_irq failed Fix a memory leak in case request_irq fails. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 2e5d04dad1934d97057cbecce59834f78dafc067 Author: Daniel Halperin Date: Fri May 27 08:40:28 2011 -0700 iwlwifi: disambiguate invalid DMA index warnings The exact same error message is used in three different functions in iwlagn. Add the function name to the error string to disambiguate where the error is coming from. Signed-off-by: Daniel Halperin Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 3d82b15608ad97627ced4d3bd42ae10297c2f87d Author: Emmanuel Grumbach Date: Fri May 27 08:40:27 2011 -0700 iwlagn: solve sparse warning Remove local variable that was shadowing another one sta_priv hasn't changed since the beginning of the function, so don't define another pointer with the same name to the same variable Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 2b9253d2a0439bd247d9384921ff23e7ac6bba52 Author: Johannes Berg Date: Fri May 27 08:40:26 2011 -0700 iwlagn: fix dual-mode RXON The PAN context has three states: disabled, disassociated and associated. It seems that wasn't quite as much of an issue in previous versions of the microcode, but now we really have to use all the three states properly. So add code to switch accordingly. Additionally, PAN parameters need to be sent differently and the timing for PAN RXON needs to be inbetween. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 5beaaf3756aef42f31747d81b0676c8ccf59c6c4 Author: Wey-Yi Guy Date: Fri May 27 08:40:25 2011 -0700 iwlagn: remove un-necessary tx power ops All agn devices use the same tx power function, remove the ops Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 891db88112b604db054d9575d200271ad97634a4 Author: Wey-Yi Guy Date: Fri May 27 08:40:24 2011 -0700 iwlagn: send tx power command if defer cause by RXON not match During channge channel, tx power will not send to uCode, the tx power command should send after scan complete. but should also can send after RXON command. Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 180cdc79c2204d0abe15509689dde631290f6a95 Author: Luis R. Rodriguez Date: Fri May 27 07:24:02 2011 -0700 cfg80211: skip disabled channels on channel survey The channel survey information will be empy for disabled channels so simply discard those entries. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 84288044dc9a50d2c0b0f1a024d7cd87ab3dd131 Author: Mohammed Shafi Shajakhan Date: Thu May 26 11:41:13 2011 +0530 ath9k: better position PAPRD debug message the training power calculation indirectly depends on target power under some scenarios, unless we have a valid training power, the PAPRD frames won't be sent out. so when we get an invalid training power, its better to display them before returning back. Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 05c0be2f7f10404e5b3bc4105f9206096e9b8767 Author: Mohammed Shafi Shajakhan Date: Thu May 26 10:56:15 2011 +0530 ath9k: Add a debug entry to start/stop ANI this helps the user to start/stop ANI dynamically. Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 81168e509f06aa205b240c1804ec2b9b5add4772 Author: Fabrice Deyber Date: Tue May 24 08:44:35 2011 -0500 ath9k: Further fix for mesh beaconing This fix ensure the timers to be set at beacon interval boundaries. Without this change timers can be set improperly resulting in the absence of beacons. Signed-off-by: Fabrice Deyber Signed-off-by: John W. Linville commit 1e025a3692014e7a29a0b0b01de5cdc2b6ade3cf Author: Mark Brown Date: Wed Jun 1 19:32:22 2011 +0100 ASoC: Update speyside audio driver for hardware revision 2 Revision 2 of the Speyside platform supplies a 32kHz clock on MCLK2 rather than MCLK1. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit b942471bfcda207a51379628379aa821216486e7 Author: Mohammed Shafi Shajakhan Date: Tue May 24 15:29:52 2011 +0530 ath9k: wake up chip before initializing PAPRD table In PAPRD table initialization path we do some register read, so make sure the chip is awake during that. Currently PAPRD is disabled. Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 049436b9804394e4d6caf7da5f3507bd8f4caa6e Author: Larry Finger Date: Mon May 23 20:38:52 2011 -0500 rtlwifi: rtl8192se: Synchronize IRQ after disabling it As suggested by Mike McCormack for rtl8192ce, make sure any IRQ handlers running on other CPUs complete. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 5111dd3e422d08435164fc6d405d849ff6421eec Author: Larry Finger Date: Mon May 23 20:37:31 2011 -0500 rtlwifi: rtl8192se: Use write barrier when assigning ownership As noted by Mike McCormack for rtl8192ce, make sure all updates to a descriptor are flushed to memory before assigning ownship to hardware. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 4a7f5db19c0d8783f700cb606597c4c7b1364db5 Author: Amitkumar Karwar Date: Mon May 23 18:00:17 2011 -0700 mwifiex: remove support for old chipsets W0/W1 For SD8787 A0/A1 chipsets we use the default firmware image file 'mrvl/sd8787_uapsta.bin'. So the chip rev id variable is removed. The global variable fw_name is moved to adapter structure so that we can support a different interface, such as PCIe, in future. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 0541ac4cb47a31f44bf841a4dade539395c146ee Author: Larry Finger Date: Sun May 22 20:57:03 2011 -0500 b43legacy: Fix warnings from gcc 4.6.0 gcc 4.6.0 warnings for b43legacy: CC [M] drivers/net/wireless/b43legacy/main.o drivers/net/wireless/b43legacy/main.c: In function ‘b43legacy_request_firmware’: drivers/net/wireless/b43legacy/main.c:1567:6: warning: variable ‘tmshigh’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/b43legacy/main.c: In function ‘b43legacy_op_dev_config’: drivers/net/wireless/b43legacy/main.c:2637:6: warning: variable ‘antenna_rx’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/b43legacy/main.c: In function ‘b43legacy_op_bss_info_changed’: drivers/net/wireless/b43legacy/main.c:2778:24: warning: variable ‘phy’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/b43legacy/xmit.c: In function ‘generate_txhdr_fw3’: drivers/net/wireless/b43legacy/xmit.c:324:7: warning: variable ‘rts_rate_ofdm’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/b43legacy/dma.o drivers/net/wireless/b43legacy/dma.c: In function ‘free_all_descbuffers’: drivers/net/wireless/b43legacy/dma.c:820:36: warning: variable ‘desc’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/b43legacy/dma.c: In function ‘b43legacy_dma_tx’: drivers/net/wireless/b43legacy/dma.c:1377:28: warning: variable ‘info’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/b43legacy/dma.c:1374:24: warning: variable ‘hdr’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/b43legacy/dma.c: In function ‘b43legacy_dma_handle_txstatus’: drivers/net/wireless/b43legacy/dma.c:1438:36: warning: variable ‘desc’ set but not used [-Wunused-but-set-variable] Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 78d57372cc781c69a97700cac1f181ec42433fca Author: Larry Finger Date: Sun May 22 20:54:43 2011 -0500 rtl8192se: Fix warnings from gcc 4.6.0 gcc 4.6.0 warnings for rtl8192se: CC [M] drivers/net/wireless/rtlwifi/rtl8192se/dm.o drivers/net/wireless/rtlwifi/rtl8192se/dm.c: In function ‘_rtl92s_dm_refresh_rateadaptive_mask’: drivers/net/wireless/rtlwifi/rtl8192se/dm.c:225:5: warning: variable ‘rssi_level’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/rtl8192se/fw.o drivers/net/wireless/rtlwifi/rtl8192se/fw.c: In function ‘rtl92s_download_fw’: drivers/net/wireless/rtlwifi/rtl8192se/fw.c:361:6: warning: variable ‘file_length’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/rtl8192se/hw.o drivers/net/wireless/rtlwifi/rtl8192se/hw.c: In function ‘_rtl92se_hw_configure’: drivers/net/wireless/rtlwifi/rtl8192se/hw.c:887:6: warning: variable ‘reg_ratr’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/rtl8192se/hw.c: In function ‘_rtl92se_set_media_status’: drivers/net/wireless/rtlwifi/rtl8192se/hw.c:1125:20: warning: variable ‘ledaction’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/rtl8192se/hw.c: In function ‘rtl92se_gpio_radio_on_off_checking’: drivers/net/wireless/rtlwifi/rtl8192se/hw.c:2274:32: warning: variable ‘cur_rfstate’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/rtl8192se/phy.o drivers/net/wireless/rtlwifi/rtl8192se/phy.c: In function ‘rtl92s_phy_set_bw_mode’: drivers/net/wireless/rtlwifi/rtl8192se/phy.c:266:5: warning: variable ‘reg_prsr_rsc’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/rtl8192se/trx.o drivers/net/wireless/rtlwifi/rtl8192se/trx.c: In function ‘_rtl92se_translate_rx_signal_stuff’: drivers/net/wireless/rtlwifi/rtl8192se/trx.c:584:6: warning: variable ‘psaddr’ set but not used [-Wunused-but-set-variable] Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 52722592b1702687bf24fe69d75f2ef97360fd59 Author: Larry Finger Date: Sun May 22 20:54:40 2011 -0500 rtl8192cu: Fix warnings from gcc 4.6.0 gcc 4.6.0 warnings for rtl8192cu: CC [M] drivers/net/wireless/rtlwifi/rtl8192cu/mac.o drivers/net/wireless/rtlwifi/rtl8192cu/mac.c: In function ‘rtl92c_translate_rx_signal_stuff’: drivers/net/wireless/rtlwifi/rtl8192cu/mac.c:1116:6: warning: variable ‘psaddr’ set but not used [-Wunused-but-set-variable] Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 6c0d4988c7dc23e5e8b22e99ab140e47c716848e Author: Larry Finger Date: Sun May 22 20:54:37 2011 -0500 rtl8192ce: Fix warnings from gcc 4.6.0 gcc 4.6.0 warnings for rtl8192ce: CC [M] drivers/net/wireless/rtlwifi/rtl8192ce/hw.o drivers/net/wireless/rtlwifi/rtl8192ce/hw.c: In function ‘_rtl92ce_hw_configure’: drivers/net/wireless/rtlwifi/rtl8192ce/hw.c:766:6: warning: variable ‘reg_ratr’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/rtl8192ce/hw.c: In function ‘rtl92ce_gpio_radio_on_off_checking’: drivers/net/wireless/rtlwifi/rtl8192ce/hw.c:1972:41: warning: variable ‘cur_rfstate’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/rtl8192ce/phy.o drivers/net/wireless/rtlwifi/rtl8192ce/phy.c: In function ‘rtl92c_phy_config_rf_with_headerfile’: drivers/net/wireless/rtlwifi/rtl8192ce/phy.c:284:7: warning: variable ‘rtstatus’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/rtl8192ce/trx.o drivers/net/wireless/rtlwifi/rtl8192ce/trx.c: In function ‘_rtl92ce_translate_rx_signal_stuff’: drivers/net/wireless/rtlwifi/rtl8192ce/trx.c:595:6: warning: variable ‘psaddr’ set but not used [-Wunused-but-set-variable] Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c0fda68d00a72895c4ad0871c6f57074b0e4292c Author: Larry Finger Date: Sun May 22 20:54:34 2011 -0500 rtl8192c-common: Fix warnings from gcc 4.6.0 gcc 4.6.0 warnings for rtl8192c-common: CC [M] drivers/net/wireless/rtlwifi/rtl8192c/fw_common.o drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c: In function ‘_rtl92c_cmd_send_packet’: drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c:549:5: warning: variable ‘own’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/rtl8192c/phy_common.o drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c: In function ‘_rtl92c_phy_iq_calibrate’: drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c:1256:6: warning: variable ‘bbvalue’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c: In function ‘rtl92c_phy_iq_calibrate’: drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c:1766:6: warning: variable ‘reg_ecc’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c:1765:34: warning: variable ‘reg_eac’ set but not used [-Wunused-but-set-variable] Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 19086fcef1de1fa7350d8122910a506481acf94b Author: Larry Finger Date: Sun May 22 20:54:31 2011 -0500 rtlwifi: Fix warnings from gcc 4.6.0 gcc 4.6.0 warnings for rtlwifi: CC [M] drivers/net/wireless/rtlwifi/base.o drivers/net/wireless/rtlwifi/base.c: In function ‘rtl_tx_agg_stop’: drivers/net/wireless/rtlwifi/base.c:891:23: warning: variable ‘tid_data’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/base.c: In function ‘rtl_tx_agg_oper’: drivers/net/wireless/rtlwifi/base.c:921:23: warning: variable ‘tid_data’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/efuse.o drivers/net/wireless/rtlwifi/efuse.c: In function ‘efuse_pg_packet_write’: drivers/net/wireless/rtlwifi/efuse.c:928:24: warning: variable ‘dataempty’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/efuse.c: In function ‘efuse_get_current_size’: drivers/net/wireless/rtlwifi/efuse.c:1179:5: warning: variable ‘hoffset’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/ps.o drivers/net/wireless/rtlwifi/ps.c: In function ‘rtl_ps_set_rf_state’: drivers/net/wireless/rtlwifi/ps.c:85:19: warning: variable ‘rtstate’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/regd.o drivers/net/wireless/rtlwifi/regd.c: In function ‘_rtl_dump_channel_map’: drivers/net/wireless/rtlwifi/regd.c:310:28: warning: variable ‘ch’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/rtlwifi/usb.o drivers/net/wireless/rtlwifi/usb.c: In function ‘_rtl_usb_transmit’: drivers/net/wireless/rtlwifi/usb.c:826:21: warning: variable ‘urb_list’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/rtlwifi/usb.c:825:23: warning: variable ‘skb_list’ set but not used [-Wunused-but-set-variable] Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 9c1cacd2c08ede12765e838c35b6d1e9eb900f60 Author: Larry Finger Date: Sun May 22 20:54:25 2011 -0500 b43: Fix warnings from gcc 4.6.0 gcc 4.6.0 warnings for b43: CC [M] drivers/net/wireless/b43/lo.o drivers/net/wireless/b43/lo.c: In function ‘lo_measure_gain_values’: drivers/net/wireless/b43/lo.c:304:7: warning: variable ‘trsw_rx’ set but not used [-Wunused-but-set-variable] CC [M] drivers/net/wireless/b43/dma.o drivers/net/wireless/b43/dma.c: In function ‘free_all_descbuffers’: drivers/net/wireless/b43/dma.c:760:30: warning: variable ‘desc’ set but not used [-Wunused-but-set-variable] drivers/net/wireless/b43/dma.c: In function ‘b43_dma_handle_txstatus’: drivers/net/wireless/b43/dma.c:1391:30: warning: variable ‘desc’ set but not used [-Wunused-but-set-variable] Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 24f7580e852b5472b51eea322bb78454df0054b8 Author: Zefir Kurtisi Date: Fri May 20 20:29:17 2011 +0200 minstrel_ht: fixed rate mode through debugfs Found several threads about fixed rate mode in minstrel_ht for test environments, but no patches for it. This patch provides such a mode through debugfs. Signed-off-by: John W. Linville commit 71063f0e8939b5b6ea5121faed47987e094ef018 Author: Wey-Yi Guy Date: Fri May 20 09:05:54 2011 -0700 nl80211: add testmode dump support This adds dump support to testmode. The testmode dump support in nl80211 requires using two of the six cb->args, the rest can be used by the driver to figure out where the dump position is at or to store other data across invocations. Signed-off-by: Wey-Yi Guy Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2e5ef4599addb1046086b63743f41822858a23b7 Author: Rajkumar Manoharan Date: Fri May 20 17:52:12 2011 +0530 ath9k: Handle IBSS status changes in BSS_CHANGED_IBSS Configure ibss node's bss_changes under BSS_CHANGED_IBSS. And also start/stop ani timer only if the station join/leave the group. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit f29f5c0882bdd58c42b8176ee0b578f92589fda2 Author: Rajkumar Manoharan Date: Fri May 20 17:52:11 2011 +0530 ath9k: Remove ATH9K_BEACON_PERIOD mask Earlier beacon_interval is used to hold interval value and some flags (ATH9K_BEACON_ENA &ATH9K_BEACON_PERIOD). So to extract interval ATH9K_BEACON_PERIOD is used. Those flags were completely removed. So masking beacon_interval is not required. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 9d75ef0f8f6d2e31ed940b3057a42a25f07076fb Author: Rafał Miłecki Date: Fri May 20 03:27:06 2011 +0200 bcma: host pci: implement block R/W operations Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 505fb019d4924e425bb1024eb603a7bc7fe7fe63 Author: Rafał Miłecki Date: Thu May 19 15:11:27 2011 +0200 b43: bus: add helpers for checking host type Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit d48ae5c826f9af7d8b39867887d48e2a6f47af1f Author: Rafał Miłecki Date: Thu May 19 15:11:26 2011 +0200 b43: use new pointers path to access ssb_device in SSB specific places Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 02a0fbe4dcb4c318d09d97b19e51f48ba6d36ede Author: Rafał Miłecki Date: Thu May 19 15:11:25 2011 +0200 b43: SDIO: use new pointers path to access ssb_device SDIO code is SSB specific, we can safely just use "sdev" Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 6ac53692179da165b2cb1e2a122b0ed9dad9b9ad Author: Rafał Miłecki Date: Thu May 19 15:11:24 2011 +0200 b43: LP-PHY: use new pointers path to access ssb_device LP-PHY code is SSB specific, add check for bus type. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 5595f119649b3178c03479baa794113b8533158a Author: Mohammed Shafi Shajakhan Date: Thu May 19 18:08:57 2011 +0530 ath9k: mark few functions as static Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 6d79cb4ca3ff212984c1f9751accf2f033163be9 Author: Mohammed Shafi Shajakhan Date: Thu May 19 17:40:46 2011 +0530 ath9k: make ath9k_setpower function as static Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 1de520f4767cb836828d074db533f93d0ca85998 Author: Rafał Miłecki Date: Thu May 19 14:08:22 2011 +0200 bcma: pci: implement interrupts control Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 33e6ef4e82f1de4f9a98a86633412390a322e2e8 Author: Felix Fietkau Date: Thu May 19 12:20:26 2011 +0200 ath9k_hw: remove ath9k_hw_get_desc_link Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit fce041beb03f93c7a771f0b4b6c45bb71ef90901 Author: Felix Fietkau Date: Thu May 19 12:20:25 2011 +0200 ath9k: unify edma and non-edma tx code, improve tx fifo handling EDMA based chips (AR9380+) have 8 Tx FIFO slots, which are used to fix the tx queue start/stop race conditions which have to be worked around for earlier chips by keeping the last descriptor in the queue. The current code stores all frames that do not fit onto the 8 FIFO slots in a separate list. Whenever a FIFO slot is freed up, the next frame (or A-MPDU) from the pending queue gets moved to that slot. This process is not only inefficient, but also unnecessary. The code can be improved visibly by keeping the pending queue fully linked, and moving the contents of the entire queue to a FIFO slot as it becomes available. This patch makes the necessary changes for that and also merges some code that was duplicated for EDMA vs non-EDMA. It changes txq->axq_link to point to the last descriptor instead of the link pointer, so that ath9k_hw_set_desc_link can be used, which works on all chips. With this patch, a small performance increase for non-aggregated traffic was observed on AR9380 based embedded hardware. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit e62ddec94a1e11ab1043b607e20ae0d142069132 Author: Mohammed Shafi Shajakhan Date: Thu May 19 15:05:46 2011 +0530 ath9k: remove redundant if check Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 7882513bacb176ab4aacceefdd035ca9479da4fb Author: Javier Lopez Date: Wed Jun 1 11:26:13 2011 +0200 mac80211_hwsim driver support userspace frame tx/rx This patch adds to mac80211_hwsim the capability to send traffic via userspace. Frame exchange between kernel and user spaces is done through generic netlink communication protocol. A new generic netlink family MAC80211_HWSIM is proposed, this family contains three basic commands HWSIM_CMD_REGISTER, which is the command used to register a new traffic listener, HWSIM_CMD_FRAME, to exchange the frames from kernel to user and vice-versa, and HWSIM_CMD_TX_INFO_FRAME which returns from user all the information about retransmissions, rates, rx signal, and so on. How it works: Once the driver is loaded the MAC80211_HWSIM family will be registered. In the absence of userspace daemon, the driver itselfs implements a perfect wireless medium as it did in the past. When a daemon sends a HWSIM_CMD_REGISTER command, the module stores the application PID, and from this moment all frames will be sent to the registered daemon. The user space application will be in charge of process/forward all frames broadcast by any mac80211_hwsim radio. If the user application is stopped, the kernel module will detect the release of the socket and it will switch back to in-kernel perfect channel simulation. The userspace daemon must be waiting for incoming HWSIM_CMD_FRAME commands sent from kernel, for each HWSIM_CMD_FRAME command the application will try to broadcast this frame to all mac80211_hwsim radios, however the application may decide to forward/drop this frame. In the case of forwarding the frame, a new HWSIM_CMD_FRAME command will be created, all necessary attributes will be populated and the frame will be sent back to the kernel. Also after the frame broadcast phase, a HWSIM_CMD_TX_INFO_FRAME command will be sent from userspace to kernel, this command contains all the information regarding the transmission, such as number of tries, rates, ack signal, etc. You can find the actual implementation of wireless mediumd daemon (wmediumd) at: * Last version tarball: https://github.com/jlopex/cozybit/tarball/master * Or visiting my github tree: https://github.com/jlopex/cozybit/tree Signed-off-by: Javier Lopez Signed-off-by: John W. Linville commit 0f93c79404e1eaa5207f6d8a7aea14119808d382 Author: Gertjan van Wingerde Date: Wed May 18 20:26:04 2011 +0200 rt2x00: Enabled rt35xx device support by default. Now that support for these devices has been added we can enable them by default and remove the Kconfig not on support for these devices to be non-functional. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8f66bbb5248c59b69b521b35e097ffa6cad07f01 Author: Gertjan van Wingerde Date: Wed May 18 20:25:49 2011 +0200 rt2x00: Move rt2800_txdone and rt2800_txdone_entry_check to rt2800usb. These two functions are only used by rt2800usb so they don't have to be in rt2800lib. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 798eefde3097f218849194f1abda1f179a169cc2 Author: Gertjan van Wingerde Date: Wed May 18 20:25:42 2011 +0200 rt2x00: Interface sequence lock doesn't have to disable interrupts. This lock is only used in the TX path and thus in process context. Therefore we can use a much lighter spinlock variant. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 872834dfb38edc6f72cfc783a5ce78f2a9f36ec5 Author: Gertjan van Wingerde Date: Wed May 18 20:25:31 2011 +0200 rt2x00: Add support for RT3572/RT3592/RT3592+Bluetooth combo card (based on an earlier patch submitted by Shiang) Add support for RT3572/RT3592/RT3592+Bluetooth combo card Signed-off-by: Shiang Tu Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8f96e91fa53761fd63dceedac6bbe4b39e5c5072 Author: Gertjan van Wingerde Date: Wed May 18 20:25:18 2011 +0200 rt2x00: Don't disable G0 PA_PE bit in case of BT coexistence. (split off from the earlier RT35xx patch submitted by Shiang) Signed-off-by: Shiang Tu Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 65f31b5e7029e55d4f7020a1d0b0658a50ea73cb Author: Gertjan van Wingerde Date: Wed May 18 20:25:05 2011 +0200 rt2x00: Enable PA_PE bits in TX_PIN_CFG according to active band. (split off from the earlier RT35xx patch submitted by Shiang) There's no point in enabling the PA_PE bits for the bands that we are not active on. Signed-off-by: Shiang Tu Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 1bdcd095e39a789135f8638a2ff76f74e3071d46 Author: Rafał Miłecki Date: Wed May 18 11:40:22 2011 +0200 bcma: add IRQ number and pointer to DMA dev Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 24ca39d67968c42d377abc122f6dca635ebcdb79 Author: Rafał Miłecki Date: Wed May 18 02:06:43 2011 +0200 b43: bus: abstract bus and core operations Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 79d2232fed23e8e0d1b11abe2f9b78fb09084506 Author: Rafał Miłecki Date: Wed May 18 02:06:42 2011 +0200 b43: bus: abstract board info Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit c244e08c7aa30abea3c29ff17a40f4b0a58a7913 Author: Rafał Miłecki Date: Wed May 18 02:06:41 2011 +0200 b43: bus: abstract chip info Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit a18c715e63505850edd2b69ded5373d6d464cd80 Author: Rafał Miłecki Date: Wed May 18 02:06:40 2011 +0200 b43: bus: abstract device structs and irq Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 0581483afe1a6f90f828b36111b05a70c162137d Author: Rafał Miłecki Date: Wed May 18 02:06:39 2011 +0200 b43: bus: abstract SPROM SPROM is another frequently used struct. We decided to share SPROM struct between ssb na bcma as long as we will not need any hacks. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 21d889d433eb962b70ad88d554a4a7658067596f Author: Rafał Miłecki Date: Wed May 18 02:06:38 2011 +0200 b43: bus: abstract 80211 core info Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit c0b4c00907c7f611ef328de73967d7913e137df8 Author: Rafał Miłecki Date: Wed May 18 02:06:37 2011 +0200 b43: bus: abstract R/W operations Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 482f05386218a028309a71ad36066ee64b7a820d Author: Rafał Miłecki Date: Wed May 18 02:06:36 2011 +0200 b43: add bus device abstraction layer Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit aa63418aa72e4468838eea457a123057b1c7cd11 Author: Rafał Miłecki Date: Wed May 18 02:06:35 2011 +0200 b43: rename ssb_device variable in ssb specific functions Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit cf4a39105ab7d73583f142c492f2880247f520f9 Author: Mark Brown Date: Wed Jun 1 19:17:02 2011 +0100 ASoC: Remove internally generated WM8915 supplies DCVDD and MICVDD are intended to be (and almost always are) generated by on-board LDOs which are transparently controlled by the driver so we shouldn't really be requesting them from the regulator API. If the driver is updated to support external supply of these then we will need to change the way we handle this. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit a2dc56c8a0009ba3879a26dfe416fc453fa2e32f Author: Julia Lawall Date: Wed Jun 1 19:10:05 2011 +0200 ASoC: add missing clk_put to nuc900-ac97 This goto is after the call to clk_get, so it should go to the label that includes a call to clk_put. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a1e9adc00e722b8ec7d9b3d68e6f9564b9455d2f Author: Mark Brown Date: Wed Jun 1 14:45:58 2011 +0100 ASoC: Support edge triggered IRQs for WM8915 Really this should be something the IRQ core can cope with for us but since it doesn't currently do so (at least for threaded interrupts like this) do so in the driver. This allows us to run with interrupt controllers that only support edge triggered interrupts. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 37aa716a57f7c1fe5deaedff242e04f5a0f26b54 Author: Mark Brown Date: Wed Jun 1 10:10:50 2011 +0100 ASoC: Staticize ak4641_dai Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 2a826061df67f205636b953f58f8bede2a3f009c Author: Artem Bityutskiy Date: Fri May 20 17:24:34 2011 +0300 UBI: dump stack when switching to R/O mode If we have debugging enabled and switching to R/O mode because of an error - dump the stack to improve UBI error reporting and make the further diagnostics easier to do. Signed-off-by: Artem Bityutskiy commit 01a4110d2b86b05918debf39c50867cbb9598491 Author: Artem Bityutskiy Date: Wed May 18 18:08:05 2011 +0300 UBI: fix oops in error path This patch fixes an oops in the error path of 'ubi_attach_mtd_dev()'. If anything after 'uif_init()' fails, we get an oops in 'cancel_pending()'. The reason is that 'uif_close()' drops the last reference count for 'ubi->dev' and whole 'struct ubi_device' is freed. And then 'ubi_wl_close()'->'cancel_pending()' tries to access the 'ubi' pointer and problems begin. Note, in 'ubi_detach_mtd_dev()' function we get a device reference to work-around this issue. Do the same in the error path of 'ubi_attach_mtd_dev()'. Signed-off-by: Artem Bityutskiy commit cd6d8567a42907d4e7add0b08f9a2d846690fc65 Author: Artem Bityutskiy Date: Wed May 18 16:21:43 2011 +0300 UBI: switch debugging tests knobs to debugfs Kill the UBI 'debug_tsts' module parameter and switch to debugfs. Create per-test mode files there. E.g., to enable bit-flips emulation you may just do: echo 1 > /sys/kernel/debug/ubi/ubi0/tst_emulate_bitflips Signed-off-by: Artem Bityutskiy commit 18073733247dc0c31e07f3a87f3267fe8d7e7022 Author: Artem Bityutskiy Date: Wed May 18 16:38:06 2011 +0300 UBI: make it possible to use struct ubi_device in debug.h Current layout does not allow us to add inline functions to debug.h which use the 'struct ubi_device' object, because it is undefined there. Move '#include "debug.h"' in "ubi.h" down so to make 'struct ubi_device" be defined. Additionally, this makes it possible to remove a bunch of forward declarations in "debug.h". This is a preparation to the next patch. Signed-off-by: Artem Bityutskiy commit 27a0f2a37aa46cb0174decddf8830715e5f1645a Author: Artem Bityutskiy Date: Wed May 18 16:03:23 2011 +0300 UBI: prepare debugging stuff to further debugfs conversion We'll need the 'struct ubi_device *ubi' pointer in every debugging function (to access the ->dbg field), so add this pointer to all the functions implementing UBI debugging test modes like 'ubi_dbg_is_bitflip()' etc. Signed-off-by: Artem Bityutskiy commit 2a734bb8d502b645c061fa329e87c5d651498e68 Author: Artem Bityutskiy Date: Wed May 18 14:53:05 2011 +0300 UBI: use debugfs for the extra checks knobs This patch introduces debugfs support to UBI. All the UBI stuff is kept in the "ubi" debugfs directory, which contains per-UBI device "ubi/ubiX" sub-directories, containing debugging files. This file also creates "ubi/ubiX/chk_gen" and "ubi/ubiX/chk_io" knobs for switching general and I/O extra checks on and off. And it removes the 'debug_chks' UBI module parameters. Signed-off-by: Artem Bityutskiy commit c3d4913cd4cd469cbf29d411293e937729e83f3a Author: Tomoya MORINAGA Date: Tue May 31 10:34:45 2011 +0900 pch_dma: fix DMA issue(ch8-ch11) ISSUE: In case PCH_DMA with I2S communications with ch8~ch11, sometimes I2S data is not send correctly. CAUSE: The following patch I submitted before was not enough modification for supporting DMA ch8~ch11. The modification for status register of ch8~11 was not enough. pch_dma: Support I2S for ML7213 IOH author Tomoya MORINAGA Mon, 9 May 2011 07:09:38 +0000 (16:09 +0900) committer Vinod Koul Mon, 9 May 2011 11:42:23 +0000 (16:42 +0530) commit 194f5f2706c7472f9c6bb2d17fa788993606581f tree c9d4903ea02b18939a4f390956a48be1a3734517 parent 60092d0bde4c8741198da4a69b693d3709385bf1 This patch fixes the issue. We can confirm PCH_DMA with I2S communications with ch8~ch11 works well. Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit df049672dddde4a2fdacf63fb32eb80146e26841 Author: Tero Roponen Date: Tue May 31 10:24:39 2011 +0300 x86: tsc: Remove unneeded DMI-based blacklisting The blacklist was added in response to my bug report (http://lkml.org/lkml/2006/1/19/362) and has never contained more than the one entry describing my old now dead ThinkPad 380XD laptop. As found out later (http://lkml.org/lkml/2007/11/29/50), this special treatment has been unnecessary for a long time, so it can be removed. Signed-off-by: Tero Roponen Signed-off-by: John Stultz commit 34b1ef04fc050d171e055f75d6a3384e1323bd38 Author: Somnath Kotur Date: Wed Jun 1 00:33:22 2011 +0000 be2net: Fallback to the older opcode if MCC_CREATE_EXT opcode is not supported on the card Instead of failing the init/probe code in the driver fallback to the older opcode to ensure the driver is loaded thereby enabling users to upgrade the f/w to whatever version is required. Signed-off-by: Somnath Kotur Signed-off-by: David S. Miller commit 5bf74c91d7bf56be47c215e6a314ba42da0b68ad Merge: e11ec90 bb899b8 Author: David S. Miller Date: Tue May 31 20:34:19 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge commit e11ec900cfbea3d8f6a188674ee6fcb65f2a73d6 Merge: e12ca23 948252c Author: David S. Miller Date: Tue May 31 20:30:39 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit d99383b00eba9c6ac3dea462d718b2849012ee03 Author: Artem Bityutskiy Date: Wed May 18 14:47:34 2011 +0300 UBI: change the interface of a debugging check function This is a minor preparational patch which changes the 'paranoid_check_in_wl_tree()' function interface by adding the 'ubi' parameter which will be needed there in the next patch. And while on it, add "const" qualifier to the 'ubi' parameter of the 'paranoid_check_in_pq()' function. Signed-off-by: Artem Bityutskiy commit 7736f11dbadce33d3f12bf0e8114d0f1da5e8622 Author: Colin Cross Date: Fri May 27 12:25:27 2011 -0700 regulator: twl-regulator: fix n_voltages for twl6030 variable LDOs The n_voltages initializer for the TWL6030_ADJUSTABLE_LDO macro is off by one, causing the the highest supported voltage to be unreachable. Setting the machine constraints to only allow the highest voltage causes errors: machine_constraints_voltage: VAUX3_6030: unsupportable voltage constraints twl_reg twl_reg.39: can't register VAUX3_6030, -22 twl_reg: probe of twl_reg.39 failed with error -22 This patch fixes the off by one error. Tested by setting VAUX3_6030 to 3.3V. Signed-off-by: Colin Cross Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 2ae3636b79aee1a69b2e84eff68bb123090796d3 Author: Mark Brown Date: Tue May 24 23:14:40 2011 +0800 regulator: Use _cansleep() for WM8994 regulator GPIOs The WM8994 regulator driver is perfectly happy if the GPIO used to enable the regulator sleeps so call the appropriate GPIO API. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit f21e0e81d81b649ad309cedc7226f1bed72982e0 Author: Mark Brown Date: Tue May 24 08:12:40 2011 +0800 regulator: Do bulk enables of regulators in parallel In order to reduce the impact of ramp times rather than enabling the regulators for a device in series use async tasks to run the actual enables. This means that the delays which the enables implement can all run in parallel, though it does mean that the order in which the supplies come on may be unstable. For super bonus fun points if any of the regulators are shared between multiple supplies on the same device (as is rather likely) then this will test our locking. Note that in this case we only delay once for each physical regulator so the threads shouldn't block each other while delaying. It'd be even nicer if we could coalesce writes to a shared enable registers in PMICs but that's definitely future work, and it may also be useful and is certainly more achievable to optimise out the parallelism if none of the regulators implement ramp delays. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 55ba41202866f4e135c39d0bb88f128b96ba2167 Author: Jack Steiner Date: Fri May 27 09:52:56 2011 -0500 x86, UV: Clean up uv_mmrs.h No code changes. Reformat definitions to make it more readable. I fixed alignment of comments in the structure definitions. Also aligned comments and most field definitions & values. Also sorted the defines for the SHIFT & MASK values for each MMR. This make the file visually much more acceptable. Some of the symbol names are still quite long. The file is based on post-processing of verilog definitions that are used for the node controller chip design. Although some symbol names are not what I would chose, I would like to maintain compatibility with the names used by the chip designers. We have a number of cross-reference utilities & having common names is important. Signed-off-by: Jack Steiner Link: http://lkml.kernel.org/r/20110527145256.GA31224@sgi.com Signed-off-by: Ingo Molnar -- arch/x86/include/asm/uv/uv_mmrs.h | 2873 +++++++++++++++++++++----------------- 1 file changed, 1600 insertions(+), 1273 deletions(-) commit bb899b89f46eb1fd6f62a4c360f6511b9714e479 Author: Sven Eckelmann Date: Tue May 10 11:22:37 2011 +0200 batman-adv: Ensure that we really have route changes in update_route The debug output of update_route has tests for "route deleted" and "route added". All other situations are handled as "route changed". This is not true because neigh_node and curr_router could be both NULL. The function is not called in this situation, but the code might be interpreted wrong when reading it without this test. Signed-off-by: Sven Eckelmann commit 402196724816875d382099bedb09fdf1f57845bc Author: Antonio Quartulli Date: Wed May 18 16:47:23 2011 +0200 batman-adv: a multiline comment should precede the variable it is describing This comment has been wrongly put after the variable it refers to and was also bad indented Signed-off-by: Antonio Quartulli Acked-by: Sven Eckelmann Signed-off-by: Sven Eckelmann commit 44e92bc8d6366ebe477cab23199b9f50328d326a Author: Antonio Quartulli Date: Sat May 21 01:33:07 2011 +0200 batman-adv: use is_broadcast_ether_addr() instead of compare_eth(.., brd_addr) Instead of comparing mac addresses with the broadcast address by means of compare_eth(), the is_broadcast_ether_addr() kernel function has to be used. Signed-off-by: Antonio Quartulli Acked-by: Sven Eckelmann Signed-off-by: Sven Eckelmann commit 0bb857511b6a1572ad15dfd7f23d79587d7e2781 Author: Sven Eckelmann Date: Thu May 19 21:43:08 2011 +0200 batman-adv: Check type of x and y in seq_(before|after) seq_before and seq_after depend on the fact that both sequence numbers have the same type and thus the same bitwidth. We can ensure that by compile time checking using a compare between the pointer to the temporary buffers which were created using the typeof of both parameters. For example gcc would create a warning like "warning: comparison of distinct pointer types lacks a cast". Signed-off-by: Sven Eckelmann commit f5d33d37786af139cecde5af831d64a671bb756b Author: Antonio Quartulli Date: Wed May 18 09:20:50 2011 +0200 batman-adv: move smallest_signed_int(), seq_before() and seq_after() into main.h smallest_signed_int(), seq_before() and seq_after() are very useful functions that help to handle comparisons between sequence numbers. However they were only defined in vis.c. With this patch every batman-adv function will be able to use them. Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit 728cbc6ac1eef89660875c70a602c1a0ba8df4ff Author: Sven Eckelmann Date: Sun May 15 00:50:21 2011 +0200 batman-adv: Use rcu_dereference_protected by update-side Usually rcu_dereference isn't necessary in situations were the RCU-protected data structure cannot change, but sparse and lockdep still need a similar functionality for analysis. rcu_dereference_protected implements the reduced version which should be used to support the dynamic and static analysis. Signed-off-by: Sven Eckelmann commit 704509b8d44886cebfbaff1a9813c35dfa986954 Author: Sven Eckelmann Date: Sat May 14 23:14:54 2011 +0200 batman-adv: Calculate sizeof using variable insead of types Documentation/CodingStyle recommends to use the form p = kmalloc(sizeof(*p), ...); to calculate the size of a struct and not the version where the struct name is spelled out to prevent bugs when the type of p changes. This also seems appropriate for manipulation of buffers when they are directly associated with p. Signed-off-by: Sven Eckelmann commit 958ca5985604a6f13387d32de489365df816558b Author: Sven Eckelmann Date: Sat May 14 23:14:53 2011 +0200 batman-adv: Remove casts from type x to type x Casting from pointer like 'struct orig_node*' to 'struct orig_node *' doesn't provide any additional functionality and can be savely removed. Signed-off-by: Sven Eckelmann commit 5f718c20076f4b47c3dc0f1277aef9966928089c Author: Sven Eckelmann Date: Sat May 14 23:14:52 2011 +0200 batman-adv: Remove explicit casts cast from void* for store It is not necessary to cast a void* to the pointer type when we just store it and don't want to do pointer arithmetic before the actual assignment. Signed-off-by: Sven Eckelmann commit 37a4065ec79dcf172c44cb2741c1b9983ecfc492 Author: Sven Eckelmann Date: Sat May 14 23:14:51 2011 +0200 batman-adv: Only use int up and down gw representation It is not save to provide memory for an int and then cast the pointer to it to long*. It is better to standardize the up and down gateway bandwith representation to simple ints and only use long inside conversation routines. Signed-off-by: Sven Eckelmann commit 747e4221a03cde62402b614ca1f8e961b8416130 Author: Sven Eckelmann Date: Sat May 14 23:14:50 2011 +0200 batman-adv: Add const type qualifier for pointers batman-adv uses pointers which are marked as const and should not violate that type qualifier by passing it to functions which force a cast to the non-const version. Signed-off-by: Sven Eckelmann commit 38e3c5f0dae7a3bbb32c3b2bb28c3f2557d40fe9 Author: Sven Eckelmann Date: Sat May 14 23:14:49 2011 +0200 batman-adv: Don't do pointer arithmetic with void* The size of void is currently set by gcc to 1, but is not well defined in general. Therefore it is more advisable to cast it to char* before doing pointer arithmetic. Signed-off-by: Sven Eckelmann commit 16f14b45c48f4f1be5857103ee3054114604d98c Author: Sven Eckelmann Date: Sat May 14 23:14:48 2011 +0200 batman-adv: Remove comparising < 0 for unsigned type Signed-off-by: Sven Eckelmann commit f678bc9883bb28d9d20db01bc0de53efbacc21c5 Author: Sven Eckelmann Date: Sat May 14 23:14:47 2011 +0200 batman-adv: Print jiffies as unsigned long Signed-off-by: Sven Eckelmann commit d3a547be40008be590c169ff2d5d73cc7fada71d Author: Sven Eckelmann Date: Sat May 14 23:14:46 2011 +0200 batman-adv: Annotate functions with format strings Signed-off-by: Sven Eckelmann commit 1b38bed562317701760b84cad12749985ceffb8b Author: Sven Eckelmann Date: Tue May 10 11:17:40 2011 +0200 batman-adv: Use kzalloc rather than kmalloc followed by memset with 0 Signed-off-by: Sven Eckelmann commit e2cbc11c0e1225bd5fe183a967fc80df3db10745 Author: Antonio Quartulli Date: Sun May 8 20:52:57 2011 +0200 batman-adv: move neigh_node->if_incoming->if_status check in find_router() Every time that find_router() is invoked, if_status has to be compared with IF_ACTIVE. Moving this comparison inside find_router() will avoid to write it each time. Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit d21685ec258f803d3badae5eae821383a34815a9 Merge: 74ab24a ea02c63 Author: Mark Brown Date: Mon May 30 10:54:18 2011 +0800 Merge branch 'for-2.6.40' into for-2.6.41 commit 74ab24af4fe165de5af01d0507250dd099f096b0 Author: Axel Lin Date: Fri May 27 23:30:53 2011 +0800 ASoC: Remove redundant freq assignment for max98095->sysclk/max98088->sysclk Current implementation set max98095->sysclk/max98088->sysclk to freq twice. Set it once is enough, this patch removes the first assignment in case we may set invalid clock frequency to max98095->sysclk/max98088->sysclk. Signed-off-by: Axel Lin Acked-by: Peter Hsiang Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit c4d017f21328c269deba3c7acde873204fe595b5 Author: Joe Perches Date: Sat May 28 10:36:22 2011 -0700 x86: Convert vmalloc()+memset() to vzalloc() Signed-off-by: Joe Perches Cc: Jiri Kosina Link: http://lkml.kernel.org/r/10e35243fda0b8739c89ac32a7bdf348ec4752e1.1306603968.git.joe@perches.com Signed-off-by: Ingo Molnar commit 64ce312618ef0e11d88def80effcefd1b59fdb1e Author: Peter Zijlstra Date: Sat Apr 9 21:17:48 2011 +0200 perf: De-schedule a task context when removing the last event Since perf_install_in_context() will now install a context when we add the first event, we can de-schedule the context when the last event is removed. Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192142.090431763@chello.nl Signed-off-by: Ingo Molnar commit e03a9a55b4e45377af9ca3d464135f9ea280b8f8 Author: Peter Zijlstra Date: Sat Apr 9 21:17:47 2011 +0200 perf: Change close() semantics for group events In order to always call list_del_event() on the correct cpu if the event is part of an active context and avoid having to do two IPIs, change the close() semantics slightly. The current perf_event_disable() call would disable a whole group if the event that's being closed is the group leader, whereas the new code keeps the group siblings enabled. People should not rely on this behaviour and I don't think they do, but in case we find they do, the fix is easy and we have to take the double IPI cost. Signed-off-by: Peter Zijlstra Cc: Vince Weaver Link: http://lkml.kernel.org/r/20110409192142.038377551@chello.nl Signed-off-by: Ingo Molnar commit dce5855bba5df9e87bb04584d505c1f1b103c652 Author: Peter Zijlstra Date: Sat Apr 9 21:17:46 2011 +0200 perf: Collect the schedule-in rules in one function This was scattered out - refactor it into a single function. No change in functionality. Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192141.979862055@chello.nl Signed-off-by: Ingo Molnar commit db24d33e08b88e990991760a44d72006a5dc6102 Author: Peter Zijlstra Date: Sat Apr 9 21:17:45 2011 +0200 perf: Change and simplify ctx::is_active semantics Instead of tracking if a context is active or not, track which events of the context are active. By making it a bitmask of EVENT_PINNED|EVENT_FLEXIBLE we can simplify some of the scheduling routines since it can avoid adding events that are already active. Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192141.930282378@chello.nl Signed-off-by: Ingo Molnar commit 2c29ef0fef8aaff1f91263fc75c749d659da6972 Author: Peter Zijlstra Date: Sat Apr 9 21:17:44 2011 +0200 perf: Simplify and fix __perf_install_in_context() Currently __perf_install_in_context() will try and schedule in the event irrespective of our event scheduling rules, that is, we try to schedule CPU-pinned, TASK-pinned, CPU-flexible, TASK-flexible, but when creating a new event we simply try and schedule it on top of whatever is already on the PMU, this can lead to errors for pinned events. Therefore, simplify things and simply schedule everything out, add the event to the corresponding context and schedule everything back in. This also nicely handles the case where with __ARCH_WANT_INTERRUPTS_ON_CTXSW the IPI can come right in the middle of schedule, before we managed to call perf_event_task_sched_in(). Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192141.870894224@chello.nl Signed-off-by: Ingo Molnar commit 04dc2dbbfe1c6f81b996d4dab255da75f9efbb4a Author: Peter Zijlstra Date: Sat Apr 9 21:17:43 2011 +0200 perf: Remove task_ctx_sched_in() Make task_ctx_sched_*() imply EVENT_ALL, since anything less will not actually have scheduled the task in/out at all. Since there's no site that schedules all of a task in (due to the interleave with flexible cpuctx) we can remove this function. Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192141.817893268@chello.nl Signed-off-by: Ingo Molnar commit facc43071cc0d4821c176d7d34570714eb348df9 Author: Peter Zijlstra Date: Sat Apr 9 21:17:42 2011 +0200 perf: Optimize event scheduling locking Currently we only hold one ctx->lock at a time, which results in us flipping back and forth between cpuctx->ctx.lock and task_ctx->lock. Avoid this and gain large atomic regions by holding both locks. We nest the task lock inside the cpu lock, since with task scheduling we might have to change task ctx while holding the cpu ctx lock. Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192141.769881865@chello.nl Signed-off-by: Ingo Molnar commit 9137fb28ac74d05eb66d1d8e6778eaa14e6fed43 Author: Peter Zijlstra Date: Sat Apr 9 21:17:41 2011 +0200 perf: Clean up 'ctx' reference counting Small cleanup to how we refcount in find_get_context(), this also allows us to use put_ctx() to free things instead of using kfree(). Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192141.719340481@chello.nl Signed-off-by: Ingo Molnar commit 075e0b00857e166dcc3e39037a1fc5a90acac709 Author: Peter Zijlstra Date: Sat Apr 9 21:17:40 2011 +0200 perf: Optimize ctx_sched_out() Oleg noted that ctx_sched_out() disables the PMU even though it might not actually do something, avoid needless PMU-disabling. Reported-by: Oleg Nesterov Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110409192141.665385503@chello.nl Signed-off-by: Ingo Molnar commit a5fe6be42e5cadac4c2aef2b3714cfa8fadb6092 Author: Stephen Warren Date: Thu May 26 12:46:50 2011 -0600 ASoC: Tegra: Enable Kaen HP_MUTE at boot We want the default state of the HP_MUTE signal to be asserted, so that the headphones are muted before the first audio playback. Without this, the headphones are left unmuted until shortly after the first audio playback completes. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2ac8b6f41a6886dacc88c15c8742e7cd2e40ca7e Author: Mark Brown Date: Wed May 11 15:15:56 2011 +0200 ASoC: Use explicit endianness conversion in snd_soc_16_8_write() Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 94228bcf8c85cfb824e15485285ceb4d5cf080fe Author: Mark Brown Date: Wed May 11 11:18:00 2011 +0200 ASoC: Use cpu_to_be16() in 8x16 write Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit f06f136fe0217174657e325279672d4b73ed4d87 Author: Mark Brown Date: Wed May 11 00:56:13 2011 +0200 ASoC: Convert 7x9 write to use cpu_to_be16() Run the data through cpu_to_be16() so it's at least clear what we're up to. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 2cdcd951c456fecbeb11fc42aa7d90f172dc58ef Author: Nicolas Ferre Date: Thu May 26 13:44:12 2011 +0200 ASoC: atmel_ssc_dai: fix ssc error path We do not have to free a resource that is not allocated yet. Signed-off-by: Nicolas Ferre Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 97b4fc3c445bf10b6fe0d8543137a6ad30a0fdab Author: Nicolas Ferre Date: Thu May 26 13:44:11 2011 +0200 ASoC: trivial: typo in atmel_pcm_dma_params strucutre comment Signed-off-by: Nicolas Ferre Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 7309d2e28d150748c23db11ac4837898aa04fc81 Author: Nicolas Ferre Date: Thu May 26 13:44:10 2011 +0200 ASoC: trivial: typo in debug comment Signed-off-by: Nicolas Ferre Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 82e14e8bdd88b69018fe757192b01dd98582905e Author: Stephen Warren Date: Wed May 25 14:06:41 2011 -0600 ASoC: core: Don't schedule deferred_resume_work twice For cards that have two or more DAIs, snd_soc_resume's loop over all DAIs ends up calling schedule_work(deferred_resume_work) once per DAI. Since this is the same work item each time, the 2nd and subsequent calls return 0 (work item already queued), and trigger the dev_err message below stating that a work item may have been lost. Solve this by adjusting the loop to simply calculate whether to run the resume work immediately or defer it, and then call schedule work (or not) one time based on that. Note: This has not been tested in mainline, but only in chromeos-2.6.38; mainline doesn't support suspend/resume on Tegra, nor does the mainline Tegra ASoC driver contain multiple DAIs. It has been compile-checked in mainline. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b6f7d7c8bf40800ac68e16302bb7627c59ea9168 Author: Daniel Mack Date: Wed May 25 09:53:12 2011 +0200 ASoC: Fix comment in cs4270 codec driver The comment does not reflect reality anymore since the multi-component monster patch landed. Things are matched by names now, and not by exporting and referencing a struct. Fix it to avoid confusion. Signed-off-by: Daniel Mack Acked-by: Liam Girdwood Acked-by: Timur Tabi Signed-off-by: Mark Brown commit 079f85e624189292d1c818b47764916bf8cf84a8 Author: Michal Marek Date: Tue Apr 12 13:30:24 2011 +0200 x86, build: Do not set the root_dev field in bzImage This has been obsoleted by the root= commandline and the rdev utility for many, many years. People who still depend on this will surely have a copy of the rdev utility around, the rest of the world gets rid of another piece of buildhost-dependent data in the build. Thanks to Paul Bolle for the build.c cleanup. Cc: Paul Bolle Signed-off-by: Michal Marek Link: http://lkml.kernel.org/r/1302607824-24699-1-git-send-email-mmarek@suse.cz Signed-off-by: H. Peter Anvin commit bb5b5fd4d49e5902840874cf60b51714bd51a30a Author: Ben Gardiner Date: Wed May 25 09:27:22 2011 -0400 ASoC: davinci-pcm: comments for the conversion to BATCH mode In the previous commit 'ASoC: davinci-pcm: convert to BATCH mode', the phase offset of 2 was mentioned in the commit message but not well commented in the source. Add descriptive comments of the phase offset with and without ping-pong buffers enabled. Signed-off-by: Ben Gardiner Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit ac9a126571e76abec76e1c1f46672e82501eab1e Merge: 4c54f0f d49e468 Author: Michal Marek Date: Wed May 25 15:33:20 2011 +0200 Merge branch 'kbuild/kconfig-for-40' into kbuild/kconfig commit 4c54f0f846102b05efcc99114ada2b913baab161 Author: Michal Marek Date: Tue May 17 17:31:53 2011 +0200 kconfig: Only generate config_is_xxx for bool and tristate options For strings and integers, the config_is_xxx macros are useless and sometimes misleading: #define CONFIG_INITRAMFS_SOURCE "" #define config_is_initramfs_source() 1 Cc: Jean-Christophe PLAGNIOL-VILLARD Signed-off-by: Michal Marek commit 988acec9ee9d8b38ca0d1187d904cb53588e8c64 Author: Sasha Levin Date: Wed May 25 15:12:20 2011 +0300 hwrng: fix spelling mistake in header comment Cc: Herbert Xu Cc: Matt Mackall Signed-off-by: Sasha Levin Signed-off-by: Jiri Kosina commit 52e2c5d38ea6f13a19c29da7ba5183e6fac55400 Author: Ben Gardiner Date: Tue May 24 14:50:20 2011 -0400 ASoC: davinci-pcm: convert to BATCH mode The davinci-pcm driver's snd_pcm_ops pointer function currently calls into the edma controller driver to read the current positions of the edma channels to determine pos to return to the ALSA framework. In particular, davinci_pcm_pointer() calls edma_get_position() and the latter has a comment indicating that "Its channel should not be active when this is called" whereas the channel is surely active when snd_pcm_ops.pointer is called. The operation of davinci-pcm in capture and playback appears to follow close the other pcm drivers who export SNDRV_PCM_INFO_BATCH except that davinci-pcm does not report it's positions from pointer() using the last transferred chunk. Instead it peeks directly into the edma controller to determine the current position as discussed above. Convert the davinci-pcm driver to BATCH mode: count the periods elapsed in the prtd->period member and use its value to report the 'pos' to the alsa framework in the davinci_pcm_pointer function. There is a phase offset of 2 periods between the position used by dma setup and the position reported in the pointer function. Either +2 in the dma setup or -2 in the pointer function (with wrapping, both) accounts for this offset -- I opted for the latter since it makes the first-time setup clearer. Signed-off-by: Ben Gardiner Reviewed-by: Steven Faludi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 10ab3bfda41ea21419f6a8d1e5a645521fea4b32 Author: Ben Gardiner Date: Tue May 24 14:50:19 2011 -0400 ASoC: davinci-pcm: extract period elapsed functions Extract functions that modify the prtd->period member in preparation for conversion to BATCH mode playback. Signed-off-by: Ben Gardiner Reviewed-by: Steven Faludi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit ef39eb6f212996ede8da47ef45e6dffff1121ec7 Author: Ben Gardiner Date: Tue May 24 14:50:18 2011 -0400 ASoC: davinci-pcm: fix audible glitch on 2nd ping-pong playback The release of the dma channels was being performed in prepare and there was a edma_resume call for the asp-channel only being executed on START, RESUME and PAUSE_RELEASE. The mcasp on da850evm with ping-pong buffers enabled was exhibiting an audible glitch on every playback after the first. It was determined through trial and error that the following two changes fix this problem: 1) Move the edma_start calls from prepare to trigger and 2) reverse the order of starting the asp and ram channels. Signed-off-by: Ben Gardiner Reviewed-by: Steven Faludi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit acb8e2666eba7417e2fab783f86dbe067c3e815f Author: Ben Gardiner Date: Tue May 24 14:50:17 2011 -0400 ASoC: davinci-pcm: increase the maximum channels Based on the registration of davinci-mcasp.1 in the davinci-evm platform setup for da830 and dm6467, davinci-pcm can handle more than the currently reported maximum channels of 2. Increase the maximum channels to 384 to match the maximum reported by davinci-mcasp.1. Signed-off-by: Ben Gardiner Reviewed-by: Steven Faludi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8e56d5b834610504e232641565236ac60740a858 Author: Ben Gardiner Date: Tue May 24 14:50:16 2011 -0400 ASoC: davinci-pcm: expand the .formats Based on the data_type test in ping_pong_dma_setup, davinci-pcm is capable of handling data of width up to and including 32bits. " if ((data_type == 0) || (data_type > 4)) { printk(KERN_ERR "%s: data_type=%i\n", __func__, data_type); return -EINVAL; } " Update the .format member of the snd_pcm_hardware instances it registers to reflect this capability. Signed-off-by: Ben Gardiner Reviewed-by: Steven Faludi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fb1e9703af618c7ae0ee43f19778264c1804a50d Author: Ben Gardiner Date: Tue May 24 14:50:15 2011 -0400 ASoC: davinci-pcm: trivial: make ping-pong params setup symmetrical The setup of the pong channel uses EDMA_CHAN_SLOT instead of & 0x3f as the setup of the ping channel does. Make the setup of ping and pong symmetric. There is no functional change introduced by this patch. Signed-off-by: Ben Gardiner Reviewed-by: Steven Faludi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 163d3fe6a2357aba7b18b938d6ae6ce9570324e4 Author: Geert Uytterhoeven Date: Wed May 25 11:09:59 2011 +0200 kbuild: Fix reference to vermagic.h It's "include/linux/vermagic.h", not "include/vermagic.h" Signed-off-by: Geert Uytterhoeven Signed-off-by: Michal Marek commit 51f31afd12b28eddccd29a94ffbd41cb15eadd39 Merge: de12518 bdebd48 Author: Michal Marek Date: Tue May 24 17:16:21 2011 +0200 Merge branch 'kbuild/kconfig-for-40' into kbuild/kconfig commit 23ca853392aebdaa56c8138746deb2002e03d827 Author: Kuninori Morimoto Date: Mon May 23 20:46:26 2011 +0900 ASoC: sh: fsi: add fsi_hw_startup/shutdown This patch is preparation of cleanup suspend/resume patch. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit cda828cafe9df9a8b0687f1b8a17be2cd9cf1950 Author: Kuninori Morimoto Date: Mon May 23 20:46:35 2011 +0900 ASoC: sh: fsi: cleanup suspend/resume Current FSI driver was using saved_xxx variable for suspend/resume. OTOH, the start and stop of power/clock are controlled by fsi_hw_startup/fsi_hw_shutdown in current FSI driver. The all necessary registers value are set by fsi_hw_startup. So, if fsi_hw_shutdown is called when "suspend" is generated, and fsi_hw_startup is called at "resume", the saved_xxx are not needed. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4c481253311dd5940ae7c26eaff6c6f63bd41fd8 Author: Kuninori Morimoto Date: Mon May 23 20:46:30 2011 +0900 ASoC: sh: fsi: remove fsi_module_init/kill FSIA/B ports is enabled by default when power-on, and current FSI is supporting RuntimePM. In addition, current fsi_module_init/kill doesn't care simultaneous playback/recorde. This mean FSI port control is not needed. This patch remove fsi_module_init/kill Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2da658927c9e28425ecb6b6a7a03094a012e8620 Author: Kuninori Morimoto Date: Mon May 23 20:46:13 2011 +0900 ASoC: sh: fsi: make sure fsi_stream_push/pop access by spin lock fsi_stream_push/pop might be called in same time. This patch protect it. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 9478e0b60fb4a7adde72d4a86b826d396b607a61 Author: Kuninori Morimoto Date: Mon May 23 20:46:07 2011 +0900 ASoC: sh: fsi: remove pm_runtime from fsi_dai_set_fmt. pm_runtime_get/put_sync were used to access FSI register in fsi_dai_set_fmt which is called when ALSA probe. But this register value will disappear after pm_runtime_put_sync if platform is supporting RuntimePM. To solve this issue, this patch adds new variable for format, and remove pm_runtime_get/put_sync from fsi_dai_set_fmt. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2e651bafa959c6e2620601c2c2e9b7c26f6a9c1a Author: Kuninori Morimoto Date: Mon May 23 20:46:03 2011 +0900 ASoC: sh: fsi: tidyup unclear variable naming Some variables on this driver were a unclear naming, and were different unit (byte, frame, sample). And some functions had wrong name (ex. it returned "sample width" but name was "fsi_get_frame_width"). This patch tidy-up this issue, and the minimum unit become "sample". Special thanks to Takashi YOSHII. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 1ddddd36353c40fbf8faad955fcc26e05f656121 Author: Kuninori Morimoto Date: Mon May 23 20:46:23 2011 +0900 ASoC: sh: fsi: irq control moves to fsi_port_start/stop Using fsi_irq_enable/disable in fsi_port_start/stop is very natural. This patch is preparation of cleanup suspend/resume patch. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4f56cde17e3373219b56d2e9a91dbcd0ad228af7 Author: Kuninori Morimoto Date: Mon May 23 20:46:18 2011 +0900 ASoC: sh: fsi: add fsi_set_master_clk Current FSI driver is using set_rate call back function which is for master mode. By this patch, it is used from fsi_set_master_clk. This patch is preparation of cleanup suspend/resume patch. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 0ffe296addcfb8414ebad3d399859f9bf8f955d2 Author: Kuninori Morimoto Date: Mon May 23 20:45:57 2011 +0900 ASoC: sh: fsi: tidyup parameter of fsi_stream_push It is possible to create buff_len and period_len from substream->runtime. This patch is preparation of tidyup unclear variable naming patch. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 60c655e62f1ee85b9144fa259b3d1064ddbbe847 Author: Mark Brown Date: Wed May 11 01:02:35 2011 +0200 ASoC: Convert 16x16 write to use cpu_to_be16() Make it clear what we're doing. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 9c5a2ba70251ecaab18c7a83e38b3c620223476c Author: Tejun Heo Date: Tue Apr 5 18:01:44 2011 +0200 workqueue: separate out drain_workqueue() from destroy_workqueue() There are users which want to drain workqueues without destroying it. Separate out drain functionality from destroy_workqueue() into drain_workqueue() and make it accessible to workqueue users. To guarantee forward-progress, only chain queueing is allowed while drain is in progress. If a new work item which isn't chained from the running or pending work items is queued while draining is in progress, WARN_ON_ONCE() is triggered. Signed-off-by: Tejun Heo Cc: James Bottomley commit 2543a87108d2af7d48a43b3d6685c2b1ea279e36 Author: Amerigo Wang Date: Wed Apr 6 10:43:11 2011 +0200 workqueue: remove cancel_rearming_delayed_work[queue]() cancel_rearming_delayed_work() and cancel_rearming_delayed_workqueue() can be removed now. Signed-off-by: WANG Cong Signed-off-by: Tejun Heo commit 7e146b55866d1176f80439fdc2be2915147468b3 Author: Dimitris Papastamos Date: Thu May 19 13:45:30 2011 +0100 ASoC: soc-cache: Cache a pointer to the last accessed rbnode Whenever we are doing a read or a write through the rbtree code, we'll cache a pointer to the rbnode. To avoid looking up the register everytime we do a read or a write, we first check if it can be found in the cached register block, otherwise we traverse the rbtree and finally cache the rbnode for future use. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 0944cc392e9a41dd36b65b2f8cb31dff437a9fdb Author: Dimitris Papastamos Date: Thu May 19 13:45:29 2011 +0100 ASoC: soc-cache: Block based rbtree compression This patch prepares the ground for the actual rbtree optimization patch which will save a pointer to the last accessed rbnode that was used in either the read() or write() functions. Each rbnode manages a variable length block of registers. There can be no two nodes with overlapping blocks. Each block has a base register and a currently top register, all the other registers, if any, lie in between these two and in ascending order. The reasoning behind the construction of this rbtree is simple. In the snd_soc_rbtree_cache_init() function, we iterate over the register defaults provided by the driver. For each register value that is non-zero we insert it in the rbtree. In order to determine in which rbnode we need to add the register, we first look if there is another register already added that is adjacent to the one we are about to add. If that is the case we append it in that rbnode block, otherwise we create a new rbnode with a single register in its block and add it to the tree. In the next patch, where a cached rbnode is used by both the write() and the read() functions, we also check if the register we are about to add is in the cached rbnode (the least recently accessed one) and if so we append it in that rbnode block. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 0ef5bf1cd3bd2e3eacb11fca80efe3674927ed1a Author: Martin Schwidefsky Date: Tue May 10 10:10:43 2011 +0200 ftrace/s390: mcount offset calculation Do the mcount offset adjustment in the recordmcount.pl/recordmcount.[ch] at compile time and not in ftrace_call_adjust at run time. Signed-off-by: Martin Schwidefsky Signed-off-by: Steven Rostedt commit 414eb44dda6b9893b212b2306ccb423ab01eef8e Author: Martin Schwidefsky Date: Tue May 10 10:10:41 2011 +0200 ftrace/x86: mcount offset calculation Do the mcount offset adjustment in the recordmcount.pl/recordmcount.[ch] at compile time and not in ftrace_call_adjust at run time. Signed-off-by: Martin Schwidefsky Signed-off-by: Steven Rostedt commit f215efc50a3c1430735e89915fae188f927d8773 Author: Martin Schwidefsky Date: Tue May 10 10:10:40 2011 +0200 ftrace/recordmcount: mcount address adjustment Introduce mcount_adjust{,_32,_64} to the C implementation of recordmcount analog to $mcount_adjust in the perl script. The adjustment is added to the address of the relocations against the mcount symbol. If this adjustment is done by recordmcount at compile time the ftrace_call_adjust function can be turned into a nop. Cc: John Reiser Signed-off-by: Martin Schwidefsky Signed-off-by: Steven Rostedt commit 0286d2d12d78ea8aaf0722473dd20cb609a99709 Author: Steven Rostedt Date: Wed Apr 20 21:13:06 2011 -0400 ftrace/recordmcount: Add helper function get_sym_str_and_relp() The code to get the symbol, string, and relp pointers in the two functions sift_rel_mcount() and nop_mcount() are identical and also non-trivial. Moving this duplicate code into a single helper function makes the code easier to read and more maintainable. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023739.723658553@goodmis.org Signed-off-by: Steven Rostedt commit f6d4f08194d77c86fe3af6e2e4b9184347014926 Author: Steven Rostedt Date: Wed Apr 20 20:47:34 2011 -0400 ftrace/recordmcount: Remove duplicate code to find mcount symbol The code in sift_rel_mcount() and nop_mcount() to get the mcount symbol number is identical. Replace the two locations with a call to a function that does the work. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023739.488093407@goodmis.org Signed-off-by: Steven Rostedt commit 406a733db0052fed66d17008430b6047ecea7b92 Author: Steven Rostedt Date: Wed Apr 13 16:43:29 2011 -0400 ftrace/x86: Do not trace .discard.text section The section called .discard.text has tracing attached to it and is currently ignored by ftrace. But it does include a call to the mcount stub. Adding a notrace to the code keeps gcc from adding the useless mcount caller to it. Link: http://lkml.kernel.org/r/20110421023739.243651696@goodmis.org Signed-off-by: Steven Rostedt commit 5f9b93c39239507d2af03f79c8b0df9ebb9be768 Author: Steven Rostedt Date: Tue Apr 12 19:06:39 2011 -0400 ftrace: Avoid recording mcount on .init sections directly The init and exit sections should not be traced and adding a call to mcount to them is a waste of text and instruction cache. Have the macro section attributes include notrace to ignore these functions for tracing from the build. Link: http://lkml.kernel.org/r/20110421023738.953028219@goodmis.org Signed-off-by: Steven Rostedt commit a3a8350ab2f588f3a7a08dc86658bf90773f9a52 Author: Steven Rostedt Date: Tue Apr 12 18:59:10 2011 -0400 kbuild/recordmcount: Add RECORDMCOUNT_WARN to warn about mcount callers When mcount is called in a section that ftrace will not modify it into a nop, we want to warn about this. But not warn about this always. Now if the user builds the kernel with the option RECORDMCOUNT_WARN=1 then the build will warn about mcount callers that are ignored and will just waste execution time. Acked-by: Michal Marek Cc: linux-kbuild@vger.kernel.org Link: http://lkml.kernel.org/r/20110421023738.714956282@goodmis.org Signed-off-by: Steven Rostedt commit 06fd6f6301cce9af4a03dd9e40bfca167e931ff1 Author: Steven Rostedt Date: Tue Apr 12 18:53:25 2011 -0400 ftrace/recordmcount: Add warning logic to warn on mcount not recorded There's some sections that should not have mcount recorded and should not have modifications to the that code. But currently they waste some time by calling mcount anyway (which simply returns). As the real answer should be to either whitelist the section or have gcc ignore it fully. This change adds a option to recordmcount to warn when it finds a section that is ignored by ftrace but still contains mcount callers. This is not on by default as developers may not know if the section should be completely ignored or added to the whitelist. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023738.476989377@goodmis.org Signed-off-by: Steven Rostedt commit 68eb1d2e5370c6da4c871c80fdccbe315dc2f3c1 Author: Steven Rostedt Date: Fri Apr 8 03:58:48 2011 -0400 ftrace/recordmcount: Make ignored mcount calls into nops at compile time There are sections that are ignored by ftrace for the function tracing because the text is in a section that can be removed without notice. The mcount calls in these sections are ignored and ftrace never sees them. The downside of this is that the functions in these sections still call mcount. Although the mcount function is defined in assembly simply as a return, this added overhead is unnecessary. The solution is to convert these callers into nops at compile time. A better solution is to add 'notrace' to the section markers, but as new sections come up all the time, it would be nice that they are delt with when they are created. Later patches will deal with finding these sections and doing the proper solution. Thanks to H. Peter Anvin for giving me the right nops to use for x86. Cc: "H. Peter Anvin" Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023738.237101176@goodmis.org Signed-off-by: Steven Rostedt commit df2ccb69454d022ce99e3a3b7ee7f9fb4a4e9563 Author: Steven Rostedt Date: Wed Apr 13 13:31:08 2011 -0400 ftrace/recordmcount: Modify only executable sections PROGBITS is not enough to determine if the section should be modified or not. Only process sections that are marked as executable. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023737.991485123@goodmis.org Signed-off-by: Steven Rostedt commit bde66c3f45d777082a0df01e64870f47ba2a5055 Author: Steven Rostedt Date: Wed Apr 6 14:10:22 2011 -0400 ftrace: Add .kprobe.text section to whitelist for recordmcount.c The .kprobe.text section is safe to modify mcount to nop and tracing. Add it to the whitelist in recordmcount.c and recordmcount.pl. Cc: John Reiser Cc: Masami Hiramatsu Link: http://lkml.kernel.org/r/20110421023737.743350547@goodmis.org Signed-off-by: Steven Rostedt commit d7e8623ae9cf93a9b517336085a86cabb014ea77 Author: Steven Rostedt Date: Wed Apr 6 13:32:24 2011 -0400 ftrace/trivial: Clean up record mcount to use Linux switch style The Linux style for switch statements is: switch (var) { case x: [...] break; } Not: switch (var) { case x: { [...] } break; Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023737.523968644@goodmis.org Signed-off-by: Steven Rostedt commit c6fece27dfa46abc8c4b87d94a8c2f8cd6c5d8b1 Author: Steven Rostedt Date: Wed Apr 6 13:21:17 2011 -0400 ftrace/trivial: Clean up recordmcount.c to use Linux style comparisons The Linux ftrace subsystem style for comparing is: var == 1 var > 0 and not: 1 == var 0 < var It is considered that Linux developers are smart enough not to do the if (var = 1) mistake. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023737.290712238@goodmis.org Signed-off-by: Steven Rostedt commit 44e6a2069122dbec29d25b8ced3f59f5626a97d7 Author: Michal Marek Date: Tue May 17 15:36:46 2011 +0200 ftrace/kbuild: Add recordmcount files to force full build Modifications to recordmcount must be performed on all object files to stay consistent with what the kernel code may expect. Add the recordmcount files to the main dependencies to make sure any change to them causes a full recompile. Signed-off-by: Michal Marek Link: http://lkml.kernel.org/r/20110517133646.GP13293@sepie.suse.cz Signed-off-by: Steven Rostedt commit de125187dc17e3715ba983adf60faecfdc3a64c4 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Fri May 6 07:03:49 2011 +0200 kconfig: autogenerated config_is_xxx macro this will allow to use to use if(config_is_xxx()) if(config_is_xxx_module()) in the code instead of #ifdef CONFIG_xxx #ifdef CONFIG_xxx_MODULE and now let the compiler remove the non usefull code and not the pre-processor as done in the mach-types for arm as exmaple Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Acked-by: Andi Kleen Signed-off-by: Michal Marek commit a7fed7620b6eeaba98a558df46bb50a31828b462 Author: Jan Engelhardt Date: Thu Apr 21 11:05:14 2011 +0200 netfilter: xt_CT: provide info on why a rule was rejected Signed-off-by: Jan Engelhardt Signed-off-by: Patrick McHardy commit e69c634190dc724ef2d845ace8d783031d3e492e Author: Steven Rostedt Date: Mon Dec 6 17:10:31 2010 -0500 sched: Remove unlikely() from ttwu_post_activation The unlikely() used in ttwu_post_activation() tests if the rq->idle_stamp is set. But since this is for a wakeup, and wakeups happen when tasks block on IO, and blocking tasks on IO may put the system into idle, this can actually be a common occurence. Running the annotated branch profiler on an average desktop running firefox, evolution, xchat and distcc, the report shows: correct incorrect % Function File Line ------- --------- - -------- ---- ---- 34884862 146110926 80 ttwu_post_activation sched.c 2309 80% of the time, this unlikely is incorrect. Best not to assume what the result is, and just remove the branch annotation. Cc: Peter Zijlstra Signed-off-by: Steven Rostedt commit 63f01241176d7cbc976385aec32f0a209b0bc36a Author: Steven Rostedt Date: Mon Dec 6 14:48:10 2010 -0500 sched: Remove unlikely() from rt_policy() in sched.c The rt_policy() has an unlikely() that the policy it is checking is of RT priority (SCHED_FIFO or SCHED_RR). According to the annotate branch profiler it is incorrect most of the time: correct incorrect % Function File Line ------- --------- - -------- ---- ---- 36667 654674 94 rt_policy sched.c 126 This makes sense because the rt_policy() is used by the sched_set_scheduler() and nice(). Although users may use sys_nice a bit, all RT users use the sched_set_scheduler() to set their RT priority, including kernel threads. The above numbers were from a normal desktop computer running firefox, evolution, xchat and was part of a distcc compile farm. Cc: Peter Zijlstra Signed-off-by: Steven Rostedt commit 8e54a2c036d8c47195f094af1628834f4c55844a Author: Steven Rostedt Date: Mon Dec 6 11:28:30 2010 -0500 sched: Change pick_next_task_rt from unlikely to likely The if (unlikely(!rt_rq->rt_nr_running)) test in pick_next_task_rt() tests if there is another rt task ready to run. If so, then pick it. In most systems, only one RT task runs at a time most of the time. Running the branch unlikely annotator profiler on a system doing average work "running firefox, evolution, xchat, distcc builds, etc", it showed the following: correct incorrect % Function File Line ------- --------- - -------- ---- ---- 324344 135104992 99 _pick_next_task_rt sched_rt.c 1064 99% of the time the condition is true. When an RT task schedules out, it is unlikely that another RT task is waiting to run on that same run queue. Simply remove the unlikely() condition. Acked-by: Gregory Haskins Cc:Peter Zijlstra Signed-off-by: Steven Rostedt commit 33c3d6c61debcc0d295fe65521cfbc45409936c7 Author: Yong Zhang Date: Tue Feb 9 14:43:59 2010 -0500 sched: Cleanup pre_schedule_rt Since [commit 9a897c5a: sched: RT-balance, replace hooks with pre/post schedule and wakeup methods] we must call pre_schedule_rt if prev is rt task. So condition rt_task(prev) is always true and the 'unlikely' declaration is simply incorrect. Signed-off-by: Yong Zhang Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Rusty Russell Signed-off-by: Steven Rostedt