commit f6cec0ae58c17522a7bc4e2f39dae19f199ab534 Merge: 0fcf12d c4e9b56 Author: Linus Torvalds Date: Mon Aug 9 21:05:52 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (59 commits) igbvf.txt: Add igbvf Documentation igb.txt: Add igb documentation e100/e1000*/igb*/ixgb*: Add missing read memory barrier ixgbe: fix build error with FCOE_CONFIG without DCB_CONFIG netxen: protect tx timeout recovery by rtnl lock isdn: gigaset: use after free isdn: gigaset: add missing unlock solos-pci: Fix race condition in tasklet RX handling pkt_sched: Fix sch_sfq vs tcf_bind_filter oops net: disable preemption before call smp_processor_id() tcp: no md5sig option size check bug iwlwifi: fix locking assertions iwlwifi: fix TX tracer isdn: fix information leak net: Fix napi_gro_frags vs netpoll path usbnet: remove noisy and hardly useful printk rtl8180: avoid potential NULL deref in rtl8180_beacon_work ath9k: Remove myself from the MAINTAINERS list libertas: scan before assocation if no BSSID was given libertas: fix association with some APs by using extended rates ... commit 0fcf12d510b6d1b1b090a090c62009310eca4be4 Merge: 4d15393 cd078af Author: Linus Torvalds Date: Mon Aug 9 21:05:33 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6: tx493xide: use min_t() macro instead of min() drivers/ide: Use memdup_user via82cxxx: fix typo for VT6415 PCIE PATA IDE Host Controller support. ide-cd: Do not access completed requests in the irq handler commit 4d15393d20c1934a296a999d8ede125532d21cc4 Merge: 7fbd15f 2dc4ec5 Author: Linus Torvalds Date: Mon Aug 9 21:05:17 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: Update defconfig. sparc: Kill user copy check code. sparc64: Fix perf_arch_get_caller_regs(). sparc64: Add missing ID to parport probing code. commit 7fbd15f9b42f2c30ceeb94776a111d0c28669e0c Merge: 1989425 f1d23ed Author: Linus Torvalds Date: Mon Aug 9 21:04:23 2010 -0700 Merge branch 'rs485fix' of git://www.jni.nu/cris * 'rs485fix' of git://www.jni.nu/cris: CRIS: ioctl for getting RS485 information commit 1989425a3aed215f1accd5d8019b18b345166a63 Merge: 0fc2f13 e32e78c Author: Linus Torvalds Date: Mon Aug 9 21:02:42 2010 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc: fix build with make 3.82 Revert "Input: appletouch - fix integer overflow issue" memblock: Fix memblock_is_region_reserved() to return a boolean powerpc: Trim defconfigs powerpc: fix i8042 module build error sound/soc: mpc5200_psc_ac97: Use gpio pins for cold reset powerpc/5200: add mpc5200_psc_ac97_gpio_reset commit 0fc2f137226eff4c9dd90864dda5c237474c3ec5 Merge: dcded10 aab2393 Author: Linus Torvalds Date: Mon Aug 9 21:01:11 2010 -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: (32 commits) Blackfin: gpio: add a debounce stub Blackfin: update defconfigs Blackfin: remove CONFIG_MEM_GENERIC_BOARD Blackfin: dpmc: punt unnecessary RTC_ISTAT clearing Blackfin: unify rotary encoder bitmasks Blackfin: unify SDH/RSI bitmasks Blackfin: BF54x: tweak DMAC MMR naming to match other ports Blackfin: TWI: clean up the MMR names Blackfin: add EVT_OVERRIDE/IPRIO core MMR helpers Blackfin: add support for dynamic ftrace Blackfin: add support for LZO compressed kernels Blackfin: portmux: fix peripheral map overflow when requesting pins Blackfin: document SPI CS limitations with CPHA=0 Blackfin: remove useless and outdated documentation Blackfin: BF51x/BF52x: support GPIO Hysteresis/Schmitt Trigger options Blackfin: gpio/portmux: clean up whitespace corruption Blackfin: make sure mmiowb inserts a write barrier with SSYNC Blackfin: fix DMA/cache bug when resuming from suspend to RAM Blackfin: BF51x: fix handling of PH8 (the "internal" SPI0SEL4 pin) Blackfin: add a GPIO_DEFAULT_BOOT_SPI_CS ... commit dcded10f6dce10411b16134ce9cc87bfdf75c13f Merge: 9e0ba74 b0ebeb9 Author: Linus Torvalds Date: Mon Aug 9 21:00:07 2010 -0700 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (30 commits) DMAENGINE: at_hdmac: locking fixlet DMAENGINE: pch_dma: kill another usage of __raw_{read|write}l dma: dmatest: fix potential sign bug ioat2: catch and recover from broken vtd configurations v6 DMAENGINE: add runtime slave control to COH 901 318 v3 DMAENGINE: add runtime slave config to DMA40 v3 DMAENGINE: generic slave channel control v3 dmaengine: Driver for Topcliff PCH DMA controller intel_mid: Add Mrst & Mfld DMA Drivers drivers/dma: Eliminate a NULL pointer dereference dma/timb_dma: compile warning on 32 bit DMAENGINE: ste_dma40: support older silicon DMAENGINE: ste_dma40: support disabling physical channels DMAENGINE: ste_dma40: no disabled phy channels on ux500 DMAENGINE: ste_dma40: fix suspend bug DMAENGINE: ste_dma40: add DB8500 memcpy channels DMAENGINE: ste_dma40: no flow control on memcpy DMAENGINE: ste_dma40: arch updates for LCLA and LCPA DMAENGINE: ste_dma40: allocate LCLA dynamically DMAENGINE: ste_dma40: no premature stop ... Fix up trivial conflicts in arch/arm/mach-ux500/devices-db8500.c commit 9e0ba741aabdf129d561e62d207c75146adef5e8 Author: qiaochong Date: Mon Aug 9 17:21:27 2010 -0700 drivers/char/vt.c:vc_do_resize(): local var `end' should be unsigned long According include/linux/console_struct.h,vc_scr_end is unsigned long. struct vc_data { unsigned short vc_num; /* Console number */ unsigned int vc_cols; /* [#] Console size */ unsigned int vc_rows; unsigned int vc_size_row; /* Bytes per row */ unsigned int vc_scan_lines; /* # of scan lines */ unsigned long vc_origin; /* [!] Start of real screen */ unsigned long vc_scr_end; /* [!] End of real screen */ unsigned long vc_visible_origin; /* [!] Top of visible window */ unsigned int vc_top, vc_bottom; /* Scrolling region */ const struct consw *vc_sw; unsigned short *vc_screenbuf; ... } Signed-off-by: qiaochong Cc: Greg KH Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 02f0777a0d6560eb995aade34a1b82f95c0452da Author: qiaochong Date: Mon Aug 9 17:21:23 2010 -0700 drivers/char/vt.c: fix vc->vc_origin on take_over_console() kernel will die on some platform when switch from vga mode to framebuffer mode. The reason of this bug is that bind_con_driver reset vc->vc_origin to (unsigned long)vc->vc_screenbuf. On vgacon vc->vc_origin is not releated to vc->vc_screenbuf,if set vc->vc_origin to vc->vc_screenbuf,kernel will die on vc_do_resize. static int vc_do_resize(struct tty_struct *tty, struct tty_struct *real_tty, struct vc_data *vc, unsigned int cols, unsigned int lines) { unsigned long old_origin, new_origin, new_scr_end, rlth, rrem, err = 0; unsigned int old_cols, old_rows, old_row_size, old_screen_size; unsigned int new_cols, new_rows, new_row_size, new_screen_size; unsigned int end, user; ... end = (old_rows > new_rows) ? old_origin + (old_row_size * new_rows) : vc->vc_scr_end; ... /* here for a test from vgacon to framebuffer: old_origin=0x810814a0,end=0xb00b8fa0,vc->vc_origin=0x810814a0 the code bellow will copy memory from 0x810814a0 to 0xb00b8fa0, this will cover kernel code,kernel died here. */ while (old_origin < end) { scr_memcpyw((unsigned short *) new_origin, (unsigned short *) old_origin, rlth); if (rrem) scr_memsetw((void *)(new_origin + rlth), vc->vc_video_erase_char, rrem); old_origin += old_row_size; new_origin += new_row_size; } ... } [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: qiaochong Cc: Greg KH Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8618a0e8a06f75c6efec2a5477861d704d48b28 Author: Michel Lespinasse Date: Mon Aug 9 17:21:20 2010 -0700 rwsem: smaller wrappers around rwsem_down_failed_common More code can be pushed from rwsem_down_read_failed and rwsem_down_write_failed into rwsem_down_failed_common. Following change adding down_read_critical infrastructure support also enjoys having flags available in a register rather than having to fish it out in the struct rwsem_waiter... Signed-off-by: Michel Lespinasse Acked-by: David Howells Cc: Mike Waychison Cc: Suleiman Souhlal Cc: Ying Han Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 424acaaeb3a3932d64a9b4bd59df6cf72c22d8f3 Author: Michel Lespinasse Date: Mon Aug 9 17:21:19 2010 -0700 rwsem: wake queued readers when writer blocks on active read lock This change addresses the following situation: - Thread A acquires the rwsem for read - Thread B tries to acquire the rwsem for write, notices there is already an active owner for the rwsem. - Thread C tries to acquire the rwsem for read, notices that thread B already tried to acquire it. - Thread C grabs the spinlock and queues itself on the wait queue. - Thread B grabs the spinlock and queues itself behind C. At this point A is the only remaining active owner on the rwsem. In this situation thread B could notice that it was the last active writer on the rwsem, and decide to wake C to let it proceed in parallel with A since they both only want the rwsem for read. Signed-off-by: Michel Lespinasse Acked-by: David Howells Cc: Mike Waychison Cc: Suleiman Souhlal Cc: Ying Han Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd41b33435ada87323cc86b50959fbffe35192c8 Author: Michel Lespinasse Date: Mon Aug 9 17:21:18 2010 -0700 rwsem: let RWSEM_WAITING_BIAS represent any number of waiting threads Previously each waiting thread added a bias of RWSEM_WAITING_BIAS. With this change, the bias is added only once to indicate that the wait list is non-empty. This has a few nice properties which will be used in following changes: - when the spinlock is held and the waiter list is known to be non-empty, count < RWSEM_WAITING_BIAS <=> there is an active writer on that sem - count == RWSEM_WAITING_BIAS <=> there are waiting threads and no active readers/writers on that sem Signed-off-by: Michel Lespinasse Acked-by: David Howells Cc: Mike Waychison Cc: Suleiman Souhlal Cc: Ying Han Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 70bdc6e0644f3535e93bac5c364ca199397e507e Author: Michel Lespinasse Date: Mon Aug 9 17:21:17 2010 -0700 rwsem: lighter active count checks when waking up readers In __rwsem_do_wake(), we can skip the active count check unless we come there from up_xxxx(). Also when checking the active count, it is not actually necessary to increment it; this allows us to get rid of the read side undo code and simplify the calculation of the final rwsem count adjustment once we've counted the reader threads to wake. The basic observation is the following. When there are waiter threads on a rwsem and the spinlock is held, other threads can only increment the active count by trying to grab the rwsem in down_xxxx(). However down_xxxx() will notice there are waiter threads and take the down_failed path, blocking to acquire the spinlock on the way there. Therefore, a thread observing an active count of zero with waiters queued and the spinlock held, is protected against other threads acquiring the rwsem until it wakes the last waiter or releases the spinlock. Signed-off-by: Michel Lespinasse Acked-by: David Howells Cc: Mike Waychison Cc: Suleiman Souhlal Cc: Ying Han Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 345af7bf3304410634c21ada4664fda83d4d9a16 Author: Michel Lespinasse Date: Mon Aug 9 17:21:15 2010 -0700 rwsem: fully separate code paths to wake writers vs readers This is in preparation for later changes in the series. In __rwsem_do_wake(), the first queued waiter is checked first in order to determine whether it's a writer or a reader. The code paths diverge at this point. The code that checks and increments the rwsem active count is duplicated on both sides - the point is that later changes in the series will be able to independently modify both sides. Signed-off-by: Michel Lespinasse Acked-by: David Howells Cc: Mike Waychison Cc: Suleiman Souhlal Cc: Ying Han Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7721fea3d0fd93fb4d000eb737b444369358d6d3 Author: Giel van Schijndel Date: Mon Aug 9 17:21:13 2010 -0700 hwmon: f71882fg: add support for the Fintek F71808E Allow device probing to recognise the Fintek F71808E. Sysfs interface: * Fan/pwm control is the same as for F71889FG * Temperature and voltage sensor handling is largely the same as for the F71889FG - Has one temperature sensor less (doesn't have temp3) - Misses one voltage sensor (doesn't have V6, thus in6_input refers to what in7_input refers for F71889FG) For the purpose of the sysfs interface fxxxx_in_temp_attr[] is split up such that it can largely be reused. Signed-off-by: Giel van Schijndel Cc: Jean Delvare Cc: Hans de Goede Cc: Jonathan Cameron Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b8e8282611ea35845dcff0cb321a7d735fc3155 Author: Andrew Morton Date: Mon Aug 9 17:21:11 2010 -0700 drivers/hwmon/coretemp.c: remove unneeded #ifdef CONFIG_HOTPLUG_CPU register_hotcpu_notifier() is designed to make these ifdefs unnecessary. Cc: Chen Gong Cc: Rudolf Marek Cc: Huaxu Wan Cc: Jean Delvare Cc: Guenter Roeck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3cffe4d1a20208da9bf2c9cc0a973bf091eb160 Author: Chen Gong Date: Mon Aug 9 17:21:10 2010 -0700 hwmon: coretemp: documentation update and cleanup Update coretemp supported CPU TjMax lists and some cleanup work. Signed-off-by: Chen Gong Cc: Rudolf Marek Cc: Huaxu Wan Cc: Jean Delvare Cc: Guenter Roeck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 851b29cb3b196cb66452ec964ab5f66c9c9cd1ed Author: Chen Gong Date: Mon Aug 9 17:21:10 2010 -0700 hwmon: coretemp: enable coretemp device add operation failure If one coretemp device can't be added, it should allow subsequent adding operation because every new-added device will create a new sysfs group, not an additional sensor sys entry. Signed-off-by: Chen Gong Cc: Rudolf Marek Cc: Huaxu Wan Cc: Jean Delvare Cc: Guenter Roeck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0dca94baeab4a1a514841b0a4c8e3a51dfb4d5ae Author: Chen Gong Date: Mon Aug 9 17:21:09 2010 -0700 hwmon: coretemp: update hotplug condition check Fix two errors in hotplug. One is for hotplug notifier. The other is unnecessary driver unregister. Because even none of online cpus supports coretemp, we can't assume new onlined cpu doesn't support it either. If related driver is unregistered there we have no chance to use coretemp from then on. Signed-off-by: Chen Gong Cc: Rudolf Marek Cc: Huaxu Wan Cc: Jean Delvare Cc: Guenter Roeck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4453d7364d3b1f92475f104d4625abee36a7733d Author: Guenter Roeck Date: Mon Aug 9 17:21:08 2010 -0700 hwmon: add support for JEDEC JC 42.4 compliant temperature sensors [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Guenter Roeck Cc: Jean Delvare Cc: Randy Dunlap Cc: Hans de Goede Cc: Mark Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 920fa1ffce48d36d7e7bc54eb38c58313bc0a667 Author: Guenter Roeck Date: Mon Aug 9 17:21:06 2010 -0700 hwmon: driver for SMM665 Six-Channel Active DC Output Controller/Monitor This driver adds support for the monitoring features of the Summit Microelectronics SMM665 Six-Channel Active DC Output Controller/Monitor. Signed-off-by: Guenter Roeck Acked-by: Jonathan Cameron Cc: Jean Delvare Cc: Hans de Goede Cc: Mark Brown Cc: Samuel Ortiz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cfa3b24c38b58cb6acabe6441b4668e530e957af Author: Kalhan Trisal Date: Mon Aug 9 17:21:05 2010 -0700 hmc6352: add driver for the HMC6352 compass This driver will report the heading values in degrees to the sysfs interface. The values returned are headings . e.g. 245.6 Alan: Cleanups requested now all folded in and a sysfs description to keep Andrew happy. The sysfs description now resembles hwmon. Signed-off-by: Kalhan Trisal Reviewed-by: Jean Delvare Signed-off-by: Alan Cox Cc: Jonathan Cameron Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f1209a1a4cf24798408fa0893258dcbefcf6be9 Author: Ritesh Raj Sarraf Date: Mon Aug 9 17:21:04 2010 -0700 drivers/hwmon/hdaps.c: add Lenovo Thinkpad T400 to the whitelist Add Lenovo Thinkpad T400. I have done the testing on my laptop. The hdaps module detects the device and the hdapsd daemon is able to [un]park the disk. Signed-off-by: Ritesh Raj Sarraf Cc: Frank Seidel Cc: Dmitry Torokhov Cc: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b998e001e6ce6540ea04a264debc50ae44d2db7a Author: Patrick Pannuto Date: Mon Aug 9 17:21:03 2010 -0700 checkpatch: fix extraneous EXPORT_SYMBOL* warnings These are caused by checkpatch incorrectly parsing its internal representation of a statement block for struct's (or anything else that is a statement block encapsulated in {}'s that also ends with a ';'). Fix this by properly parsing a statement block. An example: +struct dummy_type dummy = { + .foo = "baz", +}; +EXPORT_SYMBOL_GPL(dummy); + +static int dummy_func(void) +{ + return -EDUMMYCODE; +} +EXPORT_SYMBOL_GPL(dummy_func); WARNING: EXPORT_SYMBOL(foo); should immediately \ follow its function/variable #19: FILE: dummy.c:4: +EXPORT_SYMBOL_GPL(dummy); The above warning is issued when it should not be. Signed-off-by: Patrick Pannuto Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09ef87255da0e005dd0ab39ca25714208cf29cb3 Author: Patrick Pannuto Date: Mon Aug 9 17:21:02 2010 -0700 checkpatch: warn about unexpectedly long msleep's As explained in Documentation/timers/timers-howto.txt, msleep's of < 20ms may sleep for as long as 20ms. Caller's of msleep(1) or msleep(2), etc are likely not to expect this quirky behavior - warn them. Signed-off-by: Patrick Pannuto Cc: Thomas Gleixner Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1a15a250862fda3fbdf8454cc7131e24de904e7c Author: Patrick Pannuto Date: Mon Aug 9 17:21:01 2010 -0700 checkpatch: prefer usleep_range over udelay When possible, sleeping is (usually) better than delaying; however, don't bother callers of udelay < 10us, as those cases are generally not worth the switch to usleep [akpm@linux-foundation.org: fix mismatched parentheses] Signed-off-by: Patrick Pannuto Cc: Thomas Gleixner Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8bbea968f9022c3f66a36902509574597611be99 Author: Joe Perches Date: Mon Aug 9 17:21:01 2010 -0700 checkpatch: add more exceptions to 80 char lines Add new logging functions netdev_ and netif_. Don't complain if the only thing on a line is a quoted string. Signed-off-by: Joe Perches Cc: Andy Whitcroft Cc: Wolfram Sang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5150bda43c58cdce7eb851c3fe2ca913524459a0 Author: Joe Eloff Date: Mon Aug 9 17:21:00 2010 -0700 checkpatch: change externals to globals Make error message say 'ERROR: do not initialise globals to 0 or NULL' rather than 'ERROR: do not initialise externals to 0 or NULL'. Makes more sense in the context since there is an extern keyword in C and that is a global declaration within the scope of the current file. Signed-off-by: Joe Eloff Cc: Andy Whitcroft Cc: Wolfram Sang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f7ddae6104d85e27c0fbcb508cfe8286a01a5e1 Author: Raffaele Recalcati Date: Mon Aug 9 17:20:59 2010 -0700 checkpatch: fix handling of leading spaces I've got a false positive when spaces are present at the beginning of a line. So I add this check, obviously excluding to check the lines in the middle of comments. For instance this code passes the checkpatch test: +struct davinci_mcbsp_data { + unsigned int fmt; + int clk_div; +}; + +static struct davinci_mcbsp_data mcbsp_data; Where, before the string "int clk_div", I have 4 spaces (\040 ascii character). With v2.6.34 scripts/checkpatch.pl script I get: scripts/checkpatch.pl 0001-ASoC-DaVinci-Added-support-for-stereo-I2S.patch total: 0 errors, 0 warnings, 201 lines checked 0001-ASoC-DaVinci-Added-support-for-stereo-I2S.patch has no obvious style problems and is ready for submission. That is not correct. Instead with the proposed patch I get: scripts/checkpatch.pl 0001-ASoC-DaVinci-Added-support-for-stereo-I2S.patch WARNING: please, no space for starting a line, excluding comments #63: FILE: sound/soc/davinci/davinci-i2s.c:165: + int clk_div;$ WARNING: please, no space for starting a line, excluding comments #95: FILE: sound/soc/davinci/davinci-i2s.c:406: + return 0;$ total: 0 errors, 2 warnings, 201 lines checked That is correct. Signed-off-by: Raffaele Recalcati Cc: Wolfram Sang Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7840a94cd12559d8aee6382fafb85fbc9eb3a2c2 Author: Wolfram Sang Date: Mon Aug 9 17:20:57 2010 -0700 checkpatch: refactor 'allowed asm includes' and add memory.h Change the check suggesting replacement of asm-includes with linux-includes. Exceptions to this rule are easier to extend now. Add memory.h because ARM has a custom one. Signed-off-by: Wolfram Sang Cc: Russell King Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1986aaf828ac8398b3d8d9b4151b08c840414ffe Author: Axel Lin Date: Mon Aug 9 17:20:56 2010 -0700 edd: fix possible memory leak in edd_init() error path The error may happen at any iteration of the for loop, this patch properly unregisters already registed edd_devices in error path. [akpm@linux-foundation.org: remove unneeded NULL test] Signed-off-by: Axel Lin Cc: Stephen Hemminger Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea98eed9bcb62d1319db8b1210712c6a110a886c Author: Eric Paris Date: Mon Aug 9 17:20:56 2010 -0700 flex_array: add helpers to get and put to make pointers easy to use Getting and putting arrays of pointers with flex arrays is a PITA. You have to remember to pass &ptr to the _put and you have to do weird and wacky casting to get the ptr back from the _get. Add two functions flex_array_get_ptr() and flex_array_put_ptr() to handle all of the magic. [akpm@linux-foundation.org: simplification suggested by Joe] Signed-off-by: Eric Paris Cc: David Rientjes Cc: Dave Hansen Cc: Joe Perches Cc: James Morris Cc: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 559b140a36613bb5b63f258b2ad833dad8cd11d9 Author: Michal Nazarewicz Date: Mon Aug 9 17:20:54 2010 -0700 lib: vsprintf: useless strlen() removed The strict_strtoul() and strict_strtoull() functions used strlen() to check argument's length in a situation where it wasn't strictly necessary Signed-off-by: Michal Nazarewicz Cc: "Yi Yang" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3f76e3386ee38e3654e81c2f3933ccca1f2d639 Author: Baruch Siach Date: Mon Aug 9 17:20:53 2010 -0700 list debugging: warn when deleting a deleted entry Use the magic LIST_POISON* values to detect an incorrect use of list_del on a deleted entry. This DEBUG_LIST specific warning is easier to understand than the generic Oops message caused by LIST_POISON dereference. Signed-off-by: Baruch Siach Cc: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 55817d3d5c480f96589359c10ad93fa2e707a029 Author: Joe Perches Date: Mon Aug 9 17:20:52 2010 -0700 MAINTAINERS: orphan BEFS This old address bounces and Sergey doesn't answer at another email address. Signed-off-by: Joe Perches Cc: Sergey Kostyliov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c53ac0716c66181d1bf42204ad418fbbf08ca957 Author: Joe Perches Date: Mon Aug 9 17:20:51 2010 -0700 MAINTAINERS: update Laurent Pinchart email Laurent is sending auto-replies with a new email address, so might as well update MAINTAINERS. Signed-off-by: Joe Perches Acked-by: Laurent Pinchart Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5fe24756fceb4f5832ae8604b7f41a00909a7a1 Author: Subrata Modak Date: Mon Aug 9 17:20:50 2010 -0700 MAINTAINERS: update information about Linux Test Project maintainence Signed-off-by: Subrata Modak Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 315987dcbf6fce3c0c729463a60a2ac5d8ff8a57 Author: Joe Perches Date: Mon Aug 9 17:20:50 2010 -0700 MAINTAINERS: add patterns to WIMAX STACK Signed-off-by: Joe Perches Acked-by: Inaky Perez-Gonzalez Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a3977cb93aeb0c0d41591e051dda01d9c155800 Author: Joe Perches Date: Mon Aug 9 17:20:49 2010 -0700 MAINTAINERS: add patterns to PS3VRAM DRIVER Signed-off-by: Joe Perches Cc: Jim Paris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce308e268cb2d6eb1343c2a242084f31f330e4fa Author: Joe Perches Date: Mon Aug 9 17:20:49 2010 -0700 MAINTAINERS: remove section PROMISE DC4030 Signed-off-by: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a16fbd65246ae13a5f6b280937c5c0cd16757141 Author: Joe Perches Date: Mon Aug 9 17:20:48 2010 -0700 MAINTAINERS: add patterns to OMAP USB Signed-off-by: Joe Perches Cc: Felipe Balbi Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2b1f7c8f413d52ca5d18130e6089f93d66e983a Author: Joe Perches Date: Mon Aug 9 17:20:47 2010 -0700 MAINTAINERS: add patterns to POWERPC EMBEDDED PPC8XX Signed-off-by: Joe Perches Cc: Vitaly Bordug Cc: Marcelo Tosatti Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 36b3a96f052e6799c09560f97a9b14f1c1db6e60 Author: Joe Perches Date: Mon Aug 9 17:20:46 2010 -0700 MAINTAINERS: add patterns to DELL WMI EXTRAS Signed-off-by: Joe Perches Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 51a2228a8a58c22523e21e7ab96a8a9b99ee43f0 Author: Joe Perches Date: Mon Aug 9 17:20:45 2010 -0700 MAINTAINERS: add patterns to CRYPTOGRAPHIC RANDOM NUMBER GENERATOR Signed-off-by: Joe Perches Cc: Neil Horman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 850e94115c5db51353d449d95be4254164d9c5fd Author: Joe Perches Date: Mon Aug 9 17:20:45 2010 -0700 MAINTAINERS: update DRM DRIVERS patterns Signed-off-by: Joe Perches Cc: David Airlie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a7e4fd93099022fa2166bd50ba5eed27aba32c08 Author: Joe Perches Date: Mon Aug 9 17:20:44 2010 -0700 MAINTAINERS: add file patterns to UCLINUX FOR RENESAS H8/300 Signed-off-by: Joe Perches Cc: Yoshinori Sato Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67752dd5d7113fdb8572981c64c700f260faa29b Author: Joe Perches Date: Mon Aug 9 17:20:44 2010 -0700 MAINTAINERS: remove section STRIP Commit f80a3f62383bf673c310926d55142d51f118926d ("Staging: strip: delete the driver") removed it. Signed-off-by: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 83823b721cd9abcab11e814d4f60456902a2dc66 Author: Joe Perches Date: Mon Aug 9 17:20:42 2010 -0700 MAINTAINERS: update SPEAR CLOCK FRAMEWORK SUPPORT file patterns Signed-off-by: Joe Perches Cc: Viresh Kumar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 43b0f91d42a4dd602a72aa7a6508f484773f0922 Author: Joe Perches Date: Mon Aug 9 17:20:41 2010 -0700 MAINTAINERS: remove section SMX UIO Interface Commit d6e976c0d258c9547a308bd8a9a82ec93e2bc6e2 ("UIO: Remove SMX Cryptengine driver") removed the file. Signed-off-by: Joe Perches Acked-by: Ben Nizette Acked-by: Hans J. Koch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21c26f50f508dd020f551a9b162f8b6030e9200a Author: Joe Perches Date: Mon Aug 9 17:20:40 2010 -0700 MAINTAINERS: update RICOH SMARTMEDIA/XD DRIVER file patterns Entered as 822 (10 key typo?). Signed-off-by: Joe Perches Acked-by: Maxim Levitsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90ca28d1eaff14c8de8665cf31db4fcca602075c Author: Joe Perches Date: Mon Aug 9 17:20:40 2010 -0700 MAINTAINERS: update PPP OVER L2TP file patterns Commit 21b4aaa14329db793832e865f15000c5c0192ac3 ("l2tp: Relocate pppol2tp driver to new net/l2tp directory") moved the file. Signed-off-by: Joe Perches Cc: James Chapman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c984e24d47f824df352234ead831fb3c8f18eca8 Author: Joe Perches Date: Mon Aug 9 17:20:39 2010 -0700 MAINTAINERS: update NETWORKING [WIRELESS] file patterns Signed-off-by: Joe Perches Cc: "John W. Linville" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6ab2a85545c696c552cce4fe6c8cbfee287c63ba Author: Joe Perches Date: Mon Aug 9 17:20:38 2010 -0700 MAINTAINERS: update ARM/ZIPIT Z2 SUPPORT file patterns Use correct file location. Signed-off-by: Joe Perches Acked-by: Marek Vasut Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0cca11ba60fc03475a357f3b213db95c47881b5 Author: Joe Perches Date: Mon Aug 9 17:20:38 2010 -0700 MAINTAINERS: update ARM/VOIPAC PXA270 file patterns Signed-off-by: Joe Perches Acked-by: Marek Vasut Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5351684f435427a68e1e02e9b592559997cd3620 Author: Joe Perches Date: Mon Aug 9 17:20:37 2010 -0700 MAINTAINERS: update ARM/NUVOTON W90X900 ARM ARCHITECTURE file patterns Signed-off-by: Joe Perches Acked-by: Wan ZongShun Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fac7de14f8b9919c8f9ec16cc0607b798182d19d Author: Joe Perches Date: Mon Aug 9 17:20:37 2010 -0700 MAINTAINERS: update ARM/BCMRING MTD NAND DRIVER file patterns Signed-off-by: Joe Perches Cc: Leo Chen Cc: Scott Branden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c4af38e9b2c2a78369c4e2e5706fe539ac64eb2 Author: Andi Kleen Date: Mon Aug 9 17:20:36 2010 -0700 gcc-4.6: printk: use stable variable to dump kmsg buffer kmsg_dump takes care to sample the global variables inside a spinlock, but then goes on to use the same variables outside the spinlock region too. Use the correct variable. This will make the race window smaller. Found by gcc 4.6's new warnings. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 547415d5edf8660aee040dc81d8c71b081a59bda Author: Akinobu Mita Date: Mon Aug 9 17:20:35 2010 -0700 s390: remove WARN_ON for misc_deregister() failures The previous change added WARN_ON() in misc_deregister(). So it is not necessary to WARN_ON() misc_deregister() failure by callers. Signed-off-by: Akinobu Mita Cc: Martin Schwidefsky Cc: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b329becfc78b180d5c422c9cb24a6ab378603305 Author: Akinobu Mita Date: Mon Aug 9 17:20:35 2010 -0700 char: add WARN_ON() in misc_deregister() misc_deregister() returns an error only when it attempts to unregister the device that is not registered. This is the driver's bug. Most of the drivers don't check the return value of misc_deregister(). (It is not bad thing because most of kernel *_unregister() API always succeed and do not return value) So it is better to indicate the error by WARN_ON() in misc_deregister(). Signed-off-by: Akinobu Mita Cc: Heiko Carstens Cc: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 878ae1274944908e1863b06b03a2c94907afaa20 Author: Richard Kennedy Date: Mon Aug 9 17:20:34 2010 -0700 stop_machine: struct cpu_stopper, remove alignment padding on 64 bits Reorder elements in structure cpu_stopper to remove alignment padding on 64 bit builds, this shrinks its size from 40 to 32 bytes saving 8 bytes per cpu. Signed-off-by: Richard Kennedy Acked-by: Tejun Heo Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d7a7c573936a86474c4a5090a45a4bc6e680c117 Author: Suresh Siddha Date: Mon Aug 9 17:20:33 2010 -0700 x86, ia64, smp: use workqueues unconditionally during do_boot_cpu() Workqueues are now initialized as part of the early_initcall(). So they are available for use during cold boot process aswell. Signed-off-by: Suresh Siddha Cc: "H. Peter Anvin" Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Tejun Heo Cc: Oleg Nesterov Cc: Tony Luck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e446127134de06c4aceaa511f411d06eac91634b Author: Kevin Winchester Date: Mon Aug 9 17:20:32 2010 -0700 init/main.c: mark do_one_initcall* as __init_or_module Andrew Morton suggested that the do_one_initcall and do_one_initcall_debug functions can be marked __init_or_module such that they can be discarded for the CONFIG_MODULES=N case. Signed-off-by: Kevin Winchester Cc: Ingo Molnar Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22c5c03b42c082ab57b5d24824769ada0d90f8dc Author: Kevin Winchester Date: Mon Aug 9 17:20:32 2010 -0700 init/main.c: fix warning: 'calltime.tv64' may be used uninitialized Using: gcc (GCC) 4.5.0 20100610 (prerelease) The following warning appears: init/main.c: In function `do_one_initcall': init/main.c:730:10: warning: `calltime.tv64' may be used uninitialized in this function This warning is actually correct, as the global initcall_debug could arguably be changed by the initcall. Correct this warning by extracting a new function, do_one_initcall_debug, that performs the initcall for the debug case. Signed-off-by: Kevin Winchester Cc: Ingo Molnar Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 459b37d423104f00e87d1934821bc8739979d0e4 Author: Geert Uytterhoeven Date: Mon Aug 9 17:20:31 2010 -0700 kernel/range: remove unused definition of ARRAY_SIZE() Remove duplicate definition of ARRAY_SIZE(), which was never used anyway. Signed-off-by: Geert Uytterhoeven Cc: Yinghai Lu Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2ee7c922f20c96dba56fd378a466790d87f42e84 Author: Oleg Nesterov Date: Mon Aug 9 17:20:30 2010 -0700 sys_personality: remove the bogus checks in sys_personality()->__set_personality() path Cleanup, no functional changes. - __set_personality() always changes ->exec_domain/personality, the special case when ->exec_domain remains the same buys nothing but complicates the code. Unify both cases to simplify the code. - The -EINVAL check in sys_personality() was never right. If we assume that set_personality() can fail we should check the value it returns instead of verifying that task->personality was actually changed. Remove it. Before the previous patch it was possible to hit this case due to overflow problems, but this -EINVAL just indicated the kernel bug. OTOH, probably it makes sense to change lookup_exec_domain() to return ERR_PTR() instead of default_exec_domain if the search in exec_domains list fails, and report this error to the user-space. But this means another user-space change, and we have in-kernel users which need fixes. For example, PER_OSF4 falls into PER_MASK for unkown reason and nobody cares to register this domain. Signed-off-by: Oleg Nesterov Cc: Wenming Zhang Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5bf1d290b57e392eaf4bfb15c67f315fce4140be Author: Christoph Mair Date: Mon Aug 9 17:20:28 2010 -0700 drivers/misc: support for the pressure sensor BMP085 from Bosch Sensortec This driver adds support for the BMP085 digital pressure sensor from Bosch Sensortec. It exposes a sysfs api to userspace where pressure and temperature measurement results can be read from the pressure0_input and temp0_input file. The chip is able to calculate the average of up to eight samples to increase the accuracy. This feature can be controlled by writing to the oversampling file. The BMP085 digital pressure sensor can measure ambient air pressure and temperature. Both values can be obtained from sysfs files. The pressure is measured by reading from pressure0_input. Valid values range from 30000 to 110000 pascal with a resolution of 1 pascal (=0.01 millibar). temp0_input holds the current temperature in degree celsius, multiplied by 10. This results in a resolution of a tenth degree celsius. Values range from -400 to 850. To increase the accuracy, this chip can calculate the average of 1, 2, 4 or 8 samples. This behavior is controlled through the oversampling sysfs file. Two to the power of the value written to that file specifies how many samples will be used. Valid values: 0..3. [akpm@linux-foundation.org: fix typo] [shubhrajyoti@ti.com: optimize the wait time for the pressure sensor, definition of long is arch dependent so make it u32] [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Christoph Mair Signed-off-by: Shubhrajyoti D Acked-by: Jonathan Cameron Cc: Stefan Schmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cdf8afca2417c5ae2a940a2ff2d36af986a3cf1d Author: Prarit Bhargava Date: Mon Aug 9 17:20:27 2010 -0700 hpilo: fix pointer warning in ilo_ccb_setup Fix i386 PAE compile warning: drivers/misc/hpilo.c: In function `ilo_ccb_setup': drivers/misc/hpilo.c:274: warning: cast to pointer from integer of different size dma_addr_t is 64 on i386 PAE which causes a size mismatch. Signed-off-by: Prarit Bhargava Acked-by: David Altobelli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7efe15f2a4cd9d40826d31d7d5ef56094f8b65f5 Author: Hemanth V Date: Mon Aug 9 17:20:25 2010 -0700 drivers/misc: ROHM BH1780GLI ambient light sensor driver Add support for ROHM BH1780GLI Ambient light sensor. BH1780 supports I2C interface. Driver supports read/update of power state and read of lux value (through SYSFS). Writing value 3 to power_state enables the sensor and current lux value could be read. Currently this driver follows the same sysfs convention as supported by drivers/misc/isl29003.c. Signed-off-by: Hemanth V Reviewed-by: Daniel Mack Acked-by: Jonathan Cameron Cc: Jean Delvare Cc: Wolfram Sang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37ed19d5cce35a40d3913cf9aa208ce9f60db3d7 Author: Alexey Fomenko Date: Mon Aug 9 17:20:24 2010 -0700 scripts/mod/modpost.c: fix memory leak sec2annotation returns malloc'ed buffer directly to printf as an argument. Free this buffer after printing. Signed-off-by: Alexey Fomenko Cc: Trevor Keith Cc: Rusty Russell Cc: Michal Marek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e269b085175acf03fc687a7416b9fd84aa9c6c23 Author: Anton Blanchard Date: Mon Aug 9 17:20:23 2010 -0700 iommu: inline iommu_num_pages A profile of a network benchmark showed iommu_num_pages rather high up: 0.52% iommu_num_pages Looking at the profile, an integer divide is taking almost all of the time: % : c000000000376ea4 <.iommu_num_pages>: 1.93 : c000000000376ea4: fb e1 ff f8 std r31,-8(r1) 0.00 : c000000000376ea8: f8 21 ff c1 stdu r1,-64(r1) 0.00 : c000000000376eac: 7c 3f 0b 78 mr r31,r1 3.86 : c000000000376eb0: 38 84 ff ff addi r4,r4,-1 0.00 : c000000000376eb4: 38 05 ff ff addi r0,r5,-1 0.00 : c000000000376eb8: 7c 84 2a 14 add r4,r4,r5 46.95 : c000000000376ebc: 7c 00 18 38 and r0,r0,r3 45.66 : c000000000376ec0: 7c 84 02 14 add r4,r4,r0 0.00 : c000000000376ec4: 7c 64 2b 92 divdu r3,r4,r5 0.00 : c000000000376ec8: 38 3f 00 40 addi r1,r31,64 0.00 : c000000000376ecc: eb e1 ff f8 ld r31,-8(r1) 1.61 : c000000000376ed0: 4e 80 00 20 blr Since every caller of iommu_num_pages passes in a constant power of two we can inline this such that the divide is replaced by a shift. The entire function is only a few instructions once optimised, so it is a good candidate for inlining overall. Signed-off-by: Anton Blanchard Cc: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 85c9fe8fcaf630225b26047b3a7cc5167739eced Author: Kevin Winchester Date: Mon Aug 9 17:20:22 2010 -0700 vfs: fix warning: 'dirent' is used uninitialized in this function Using: gcc (GCC) 4.5.0 20100610 (prerelease) The following warnings appear: fs/readdir.c: In function `filldir64': fs/readdir.c:240:15: warning: `dirent' is used uninitialized in this function fs/readdir.c: In function `filldir': fs/readdir.c:155:15: warning: `dirent' is used uninitialized in this function fs/compat.c: In function `compat_filldir64': fs/compat.c:1071:11: warning: `dirent' is used uninitialized in this function fs/compat.c: In function `compat_filldir': fs/compat.c:984:15: warning: `dirent' is used uninitialized in this function The warnings are related to the use of the NAME_OFFSET() macro. Luckily, it appears as though the standard offsetof() macro is what is being implemented by NAME_OFFSET(), thus we can fix the warning and use a more standard code construct at the same time. Signed-off-by: Kevin Winchester Cc: Al Viro Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d89b1945b760a6e0e887da004d68432c0bff899a Author: Randy Dunlap Date: Mon Aug 9 17:20:21 2010 -0700 SubmittingPatches: add more about patch descriptions Add more information about patch descriptions. Signed-off-by: Randy Dunlap Reviewed-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf4ca4874fc45166198424384275f443a672d0b7 Author: Joe Perches Date: Mon Aug 9 17:20:20 2010 -0700 kernel.h: remove unused NIPQUAD and NIPQUAD_FMT There are no more uses of NIPQUAD or NIPQUAD_FMT. Remove the definitions. Signed-off-by: Joe Perches Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb8a88b24bd7e3e7cf65e425f8f12d6a12371738 Author: Geert Uytterhoeven Date: Mon Aug 9 17:20:19 2010 -0700 alpha/h8300/m68k: remove obsolete files Removal of these started in 2.3.43pre3, ca. 10 years ago. Reported-by: Arnd Bergmann Signed-off-by: Geert Uytterhoeven Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Yoshinori Sato Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea6b101d8a3ea4e1dec29df31188c2f9852296fe Author: Rusty Russell Date: Mon Aug 9 17:20:18 2010 -0700 include/linux/compiler-gcc.h: use __same_type() in __must_be_array() We should use the __same_type() helper in __must_be_array(). Signed-off-by: Rusty Russell Reported-by: Andrew Morton Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7387be3373277005c171b9f1509e91fae2e430f3 Author: Mike Frysinger Date: Mon Aug 9 17:20:17 2010 -0700 asm-generic/io.h: add big endian versions of io{read,write}{16,32} The asm-generic/iomap.h provides these functions already, but the non-generic fallback defines do not. Signed-off-by: Mike Frysinger Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7833e7c961612d3031c231596f8d71d0a9b45687 Author: Christoph Egger Date: Mon Aug 9 17:20:16 2010 -0700 arch/um/kernel/ptrace.c: remove dead PROC_MM PROC_MM doesn't exist in Kconfig. Looking around it looks like a left-over from 2.6.0 or even 2.4 times, last mentioned in a fedora patch for 2.6.10. I believe it's time to get rid of that last tiny parts here that are still around. Signed-off-by: Christoph Egger Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 47562277348da533f120acf2b0d4ff82a9444a1f Author: Richard Weinberger Date: Mon Aug 9 17:20:14 2010 -0700 um: call free_irq() only on enabled channels When I use OpenSUSE-11.2 on UML (> 2.6.25) I get lots of such errors: Registering fd 1 twice Irqs : 3, 3 Ids : 0x09cb41a0, 0x09cb4120 ------------[ cut here ]------------ WARNING: at kernel/irq/manage.c:896 __free_irq+0x79/0x11a() Trying to free already-free IRQ 3 Modules linked in: 09dadc6c: [<081b2edb>] dump_stack+0x1c/0x20 09dadc84: [<080716da>] warn_slowpath_common+0x49/0x77 09dadc9c: [<08071772>] warn_slowpath_fmt+0x26/0x2a 09dadcb4: [<08094e08>] __free_irq+0x79/0x11a 09dadce4: [<08094ed6>] free_irq+0x2d/0x49 09dadcf4: [<0805b4bc>] close_one_chan+0x70/0x9c 09dadd0c: [<0805b833>] close_chan+0x17/0x22 09dadd1c: [<0805bdda>] enable_chan+0x70/0x7c 09dadd3c: [<0805cbb7>] line_open+0x34/0x9f 09dadd54: [<0805b21e>] con_open+0x13/0x35 09dadd6c: [<0814dc89>] tty_open+0x285/0x384 09dadda0: [<080b754e>] chrdev_open+0xe0/0xf9 09daddc0: [<080b3fb2>] __dentry_open+0xf3/0x1e2 09dadde4: [<080b4142>] nameidata_to_filp+0x35/0x49 09daddfc: [<080bd270>] do_last+0x409/0x50e 09dade28: [<080bea04>] do_filp_open+0x175/0x446 09dadecc: [<080b3d89>] do_sys_open+0x4a/0x128 09dadf04: [<080b3ea2>] sys_open+0x19/0x21 09dadf28: [<0805ab5a>] handle_syscall+0x7a/0x98 09dadf78: [<08068441>] userspace+0x2c9/0x370 09dadfe0: [<08058bb3>] fork_handler+0x53/0x5b 09dadffc: [<00766564>] 0x766564 ---[ end trace 9ebc1094aaf4bded ]--- This patch fixes the issue. Signed-off-by: Richard Weinberger Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 71abbbf856a0e70ca478782505c800891260ba84 Author: Ai Li Date: Mon Aug 9 17:20:13 2010 -0700 cpuidle: extend cpuidle and menu governor to handle dynamic states On some SoC chips, HW resources may be in use during any particular idle period. As a consequence, the cpuidle states that the SoC is safe to enter can change from idle period to idle period. In addition, the latency and threshold of each cpuidle state can vary, depending on the operating condition when the CPU becomes idle, e.g. the current cpu frequency, the current state of the HW blocks, etc. cpuidle core and the menu governor, in the current form, are geared towards cpuidle states that are static, i.e. the availabiltiy of the states, their latencies, their thresholds are non-changing during run time. cpuidle does not provide any hook that cpuidle drivers can use to adjust those values on the fly for the current idle period before the menu governor selects the target cpuidle state. This patch extends cpuidle core and the menu governor to handle states that are dynamic. There are three additions in the patch and the patch maintains backwards-compatibility with existing cpuidle drivers. 1) add prepare() to struct cpuidle_device. A cpuidle driver can hook into the callback and cpuidle will call prepare() before calling the governor's select function. The callback gives the cpuidle driver a chance to update the dynamic information of the cpuidle states for the current idle period, e.g. state availability, latencies, thresholds, power values, etc. 2) add CPUIDLE_FLAG_IGNORE as one of the state flags. In the prepare() function, a cpuidle driver can set/clear the flag to indicate to the menu governor whether a cpuidle state should be ignored, i.e. not available, during the current idle period. 3) add power_specified bit to struct cpuidle_device. The menu governor currently assumes that the cpuidle states are arranged in the order of increasing latency, threshold, and power savings. This is true or can be made true for static states. Once the state parameters are dynamic, the latencies, thresholds, and power savings for the cpuidle states can increase or decrease by different amounts from idle period to idle period. So the assumption of increasing latency, threshold, and power savings from Cn to C(n+1) can no longer be guaranteed. It can be straightforward to calculate the power consumption of each available state and to specify it in power_usage for the idle period. Using the power_usage fields, the menu governor then selects the state that has the lowest power consumption and that still satisfies all other critieria. The power_specified bit defaults to 0. For existing cpuidle drivers, cpuidle detects that power_specified is 0 and fills in a dummy set of power_usage values. Signed-off-by: Ai Li Cc: Len Brown Acked-by: Arjan van de Ven Cc: Ingo Molnar Cc: Venkatesh Pallipadi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d2997b1042ec150616c1963b5e5e919ffd0b0ebf Author: KAMEZAWA Hiroyuki Date: Mon Aug 9 17:20:11 2010 -0700 hibernation: freeze swap at hibernation When taking a memory snapshot in hibernate_snapshot(), all (directly called) memory allocations use GFP_ATOMIC. Hence swap misusage during hibernation never occurs. But from a pessimistic point of view, there is no guarantee that no page allcation has __GFP_WAIT. It is better to have a global indication "we enter hibernation, don't use swap!". This patch tries to freeze new-swap-allocation during hibernation. (All user processes are frozenm so swapin is not a concern). This way, no updates will happen to swap_map[] between hibernate_snapshot() and save_image(). Swap is thawed when swsusp_free() is called. We can be assured that swap corruption will not occur. Signed-off-by: KAMEZAWA Hiroyuki Cc: "Rafael J. Wysocki" Cc: Hugh Dickins Cc: KOSAKI Motohiro Cc: Ondrej Zary Cc: Balbir Singh Cc: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 966cca029f739716fbcc8068b8c6dfe381f86fc3 Author: KAMEZAWA Hiroyuki Date: Mon Aug 9 17:20:09 2010 -0700 mm: fix corruption of hibernation caused by reusing swap during image saving Since 2.6.31, swap_map[]'s refcounting was changed to show that a used swap entry is just for swap-cache, can be reused. Then, while scanning free entry in swap_map[], a swap entry may be able to be reclaimed and reused. It was caused by commit c9e444103b5e7a5 ("mm: reuse unused swap entry if necessary"). But this caused deta corruption at resume. The scenario is - Assume a clean-swap cache, but mapped. - at hibernation_snapshot[], clean-swap-cache is saved as clean-swap-cache and swap_map[] is marked as SWAP_HAS_CACHE. - then, save_image() is called. And reuse SWAP_HAS_CACHE entry to save image, and break the contents. After resume: - the memory reclaim runs and finds clean-not-referenced-swap-cache and discards it because it's marked as clean. But here, the contents on disk and swap-cache is inconsistent. Hance memory is corrupted. This patch avoids the bug by not reclaiming swap-entry during hibernation. This is a quick fix for backporting. Signed-off-by: KAMEZAWA Hiroyuki Cc: Rafael J. Wysocki Reported-by: Ondreg Zary Tested-by: Ondreg Zary Tested-by: Andrea Gelmini Acked-by: Hugh Dickins Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 979f867191f80e74713394cf8c0a3c1b3662b648 Author: Michael Cree Date: Mon Aug 9 17:20:08 2010 -0700 alpha: implement HW performance events on the EV67 and later CPUs This implements hardware performance events for the EV67 and later CPUs within the Linux performance events subsystem. Only using the performance monitoring unit in HP/Compaq's so called "Aggregrate mode" is supported. The code has been implemented in a manner that makes extension to other older Alpha CPUs relatively straightforward should some mug wish to indulge themselves. Signed-off-by: Michael Cree Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Cc: Thomas Gleixner Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Jay Estabrook Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92484f10ca8f7d36f0bfad92b66a20aa03120cc0 Author: Michael Cree Date: Mon Aug 9 17:20:07 2010 -0700 alpha: add wrperfmon.h header file to aid use of wrperfmon PALcall Signed-off-by: Michael Cree Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Cc: Thomas Gleixner Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Jay Estabrook Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65d920646a1c720c5ba95b7643ab1b46167d9e6a Author: Michael Cree Date: Mon Aug 9 17:20:05 2010 -0700 alpha: add performance monitor interrupt counter The following patches implement hardware performance events for the Alpha EV67 and later CPUs. I have had this running on a Compaq XP1000 (EV67, single CPU) for a few days now. Pretty cool -- discovered that the glibc exp2() library routine uses on average 985 cycles to execute 777 CPU instructions whereas Compaq's CPML library version of exp2() uses on average 32 cycles to execute 47 CPU instructions to achieve the same thing! This patch: Add performance monitor interrupt counternd and export the count to user space via /proc/interrupts. Signed-off-by: Michael Cree Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Cc: Thomas Gleixner Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Jay Estabrook Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7624ee72aa09334af072853457a5d46d9901c3f8 Author: Jan Kara Date: Mon Aug 9 17:20:03 2010 -0700 mm: avoid resetting wb_start after each writeback round WB_SYNC_NONE writeback is done in rounds of 1024 pages so that we don't write out some huge inode for too long while starving writeout of other inodes. To avoid livelocks, we record time we started writeback in wbc->wb_start and do not write out inodes which were dirtied after this time. But currently, writeback_inodes_wb() resets wb_start each time it is called thus effectively invalidating this logic and making any WB_SYNC_NONE writeback prone to livelocks. This patch makes sure wb_start is set only once when we start writeback. Signed-off-by: Jan Kara Reviewed-by: Wu Fengguang Cc: Christoph Hellwig Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d9f8984c2c23b91e202a764fe4b15041a29a201a Author: Lai Jiangshan Date: Mon Aug 9 17:20:02 2010 -0700 ksm: cleanup for mm_slots_hash Use compile-allocated memory instead of dynamic allocated memory for mm_slots_hash. Use hash_ptr() instead divisions for bucket calculation. Signed-off-by: Lai Jiangshan Signed-off-by: Izik Eidus Cc: Avi Kivity Cc: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e31f3698cd3499e676f6b0ea12e3528f569c4fa3 Author: Wu Fengguang Date: Mon Aug 9 17:20:01 2010 -0700 vmscan: raise the bar to PAGEOUT_IO_SYNC stalls Fix "system goes unresponsive under memory pressure and lots of dirty/writeback pages" bug. http://lkml.org/lkml/2010/4/4/86 In the above thread, Andreas Mohr described that Invoking any command locked up for minutes (note that I'm talking about attempted additional I/O to the _other_, _unaffected_ main system HDD - such as loading some shell binaries -, NOT the external SSD18M!!). This happens when the two conditions are both meet: - under memory pressure - writing heavily to a slow device OOM also happens in Andreas' system. The OOM trace shows that 3 processes are stuck in wait_on_page_writeback() in the direct reclaim path. One in do_fork() and the other two in unix_stream_sendmsg(). They are blocked on this condition: (sc->order && priority < DEF_PRIORITY - 2) which was introduced in commit 78dc583d (vmscan: low order lumpy reclaim also should use PAGEOUT_IO_SYNC) one year ago. That condition may be too permissive. In Andreas' case, 512MB/1024 = 512KB. If the direct reclaim for the order-1 fork() allocation runs into a range of 512KB hard-to-reclaim LRU pages, it will be stalled. It's a severe problem in three ways. Firstly, it can easily happen in daily desktop usage. vmscan priority can easily go below (DEF_PRIORITY - 2) on _local_ memory pressure. Even if the system has 50% globally reclaimable pages, it still has good opportunity to have 0.1% sized hard-to-reclaim ranges. For example, a simple dd can easily create a big range (up to 20%) of dirty pages in the LRU lists. And order-1 to order-3 allocations are more than common with SLUB. Try "grep -v '1 :' /proc/slabinfo" to get the list of high order slab caches. For example, the order-1 radix_tree_node slab cache may stall applications at swap-in time; the order-3 inode cache on most filesystems may stall applications when trying to read some file; the order-2 proc_inode_cache may stall applications when trying to open a /proc file. Secondly, once triggered, it will stall unrelated processes (not doing IO at all) in the system. This "one slow USB device stalls the whole system" avalanching effect is very bad. Thirdly, once stalled, the stall time could be intolerable long for the users. When there are 20MB queued writeback pages and USB 1.1 is writing them in 1MB/s, wait_on_page_writeback() will stuck for up to 20 seconds. Not to mention it may be called multiple times. So raise the bar to only enable PAGEOUT_IO_SYNC when priority goes below DEF_PRIORITY/3, or 6.25% LRU size. As the default dirty throttle ratio is 20%, it will hardly be triggered by pure dirty pages. We'd better treat PAGEOUT_IO_SYNC as some last resort workaround -- its stall time is so uncomfortably long (easily goes beyond 1s). The bar is only raised for (order < PAGE_ALLOC_COSTLY_ORDER) allocations, which are easy to satisfy in 1TB memory boxes. So, although 6.25% of memory could be an awful lot of pages to scan on a system with 1TB of memory, it won't really have to busy scan that much. Andreas tested an older version of this patch and reported that it mostly fixed his problem. Mel Gorman helped improve it and KOSAKI Motohiro will fix it further in the next patch. Reported-by: Andreas Mohr Reviewed-by: Minchan Kim Reviewed-by: KOSAKI Motohiro Signed-off-by: Mel Gorman Signed-off-by: Wu Fengguang Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 51980ac9e72fb5f22c81b7798d65b691125d70ee Author: Kulikov Vasiliy Date: Mon Aug 9 17:19:58 2010 -0700 mm/vmalloc.c: check kmalloc() return value kmalloc() may fail, if so return -ENOMEM. Signed-off-by: Kulikov Vasiliy Acked-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc8e970c3ce4d98afa8eb02dbd2526ce57f7611a Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:57 2010 -0700 memcg: add mm_vmscan_memcg_isolate tracepoint Memcg also need to trace page isolation information as global reclaim. This patch does it. Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Acked-by: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e17613c39b8894c164df782d0508c27ca559c24b Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:57 2010 -0700 vmscan: convert mm_vmscan_lru_isolate to DEFINE_EVENT Mel Gorman recently added some vmscan tracepoints. Unfortunately they are covered only global reclaim. But we want to trace memcg reclaim too. Thus, this patch convert them to DEFINE_TRACE macro. it help to reuse tracepoint definition for other similar usage (i.e. memcg). This patch have no functionally change. Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Balbir Singh Acked-by: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bdce6d9ebf52c1f6c23163d1a33320ce7c007f73 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:56 2010 -0700 memcg, vmscan: add memcg reclaim tracepoint Memcg also need to trace reclaim progress as direct reclaim. This patch add it. Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Acked-by: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf4dcc3e9b374e1b61a7c22faf868707ce78d6a9 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:55 2010 -0700 vmscan: convert direct reclaim tracepoint to DEFINE_TRACE Mel Gorman recently added some vmscan tracepoints. Unfortunately they are covered only global reclaim. But we want to trace memcg reclaim too. Thus, this patch convert them to DEFINE_TRACE macro. it help to reuse tracepoint definition for other similar usage (i.e. memcg). This patch have no functionally change. Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Acked-by: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4dc4b3d971b23e12d483ba9f3b93b648c54b298a Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:54 2010 -0700 vmscan: shrink_slab() requires the number of lru_pages, not the page order Presently shrink_slab() has the following scanning equation. lru_scanned max_pass basic_scan_objects = 4 x ------------- x ----------------------------- lru_pages shrinker->seeks (default:2) scan_objects = min(basic_scan_objects, max_pass * 2) If we pass very small value as lru_pages instead real number of lru pages, shrink_slab() drop much objects rather than necessary. And now, __zone_reclaim() pass 'order' as lru_pages by mistake. That produces a bad result. For example, if we receive very low memory pressure (scan = 32, order = 0), shrink_slab() via zone_reclaim() always drop _all_ icache/dcache objects. (see above equation, very small lru_pages make very big scan_objects result). This patch fixes it. [akpm@linux-foundation.org: fix layout, typos] Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Acked-by: Christoph Lameter Acked-by: Rik van Riel Cc: Johannes Weiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57250a5bf0f6ff68dc339572adbd881a11f366fa Author: Jeremy Fitzhardinge Date: Mon Aug 9 17:19:52 2010 -0700 mmu-notifiers: remove mmu notifier calls in apply_to_page_range() It is not appropriate for apply_to_page_range() to directly call any mmu notifiers, because it is a general purpose function whose effect depends on what context it is called in and what the callback function does. In particular, if it is being used as part of an mmu notifier implementation, the recursive calls can be particularly problematic. It is up to apply_to_page_range's caller to do any notifier calls if necessary. It does not affect any in-tree users because they all operate on init_mm, and mmu notifiers only pertain to usermode mappings. [stefano.stabellini@eu.citrix.com: remove unused local `start'] Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Stefano Stabellini Cc: Andrea Arcangeli Cc: Stefano Stabellini Cc: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58c37f6e0dfaaab85a3c11fcbf24451dfe70c721 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:51 2010 -0700 vmscan: protect reading of reclaim_stat with lru_lock Rik van Riel pointed out reading reclaim_stat should be protected lru_lock, otherwise vmscan might sweep 2x much pages. This fault was introduced by commit 4f98a2fee8acdb4ac84545df98cccecfd130f8db Author: Rik van Riel Date: Sat Oct 18 20:26:32 2008 -0700 vmscan: split LRU lists into anon & file sets Signed-off-by: KOSAKI Motohiro Cc: Rik van Riel Reviewed-by: Minchan Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 15748048991e801a2d18ce5da4e0d528852bc106 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:50 2010 -0700 vmscan: avoid subtraction of unsigned types 'slab_reclaimable' and 'nr_pages' are unsigned. Subtraction is unsafe because negative results would be misinterpreted. Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: Mel Gorman Cc: Rik van Riel Cc: Johannes Weiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7ee92255470daa0edb93866aec6e27534cd9a177 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:50 2010 -0700 drivers/base/node.c: reduce stack usage of node_read_meminfo() drivers/base/node.c: In function 'node_read_meminfo': drivers/base/node.c:139: warning: the frame size of 848 bytes is larger than 512 bytes Fix it by splitting the sprintf() into three parts. It has no functional change. Signed-off-by: KOSAKI Motohiro Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a5b489b870def9a93f5e89dac03ebe136f901db Author: Andrea Arcangeli Date: Mon Aug 9 17:19:49 2010 -0700 mm: set VM_FAULT_WRITE in do_swap_page() Set the flag if do_swap_page is decowing the page the same way do_wp_page would too. Signed-off-by: Andrea Arcangeli Cc: KOSAKI Motohiro Cc: Rik van Riel Cc: Nick Piggin Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad8c2ee801ad7a52d919b478d9b2c7b39a72d295 Author: Rik van Riel Date: Mon Aug 9 17:19:48 2010 -0700 rmap: add exclusive page to private anon_vma on swapin On swapin it is fairly common for a page to be owned exclusively by one process. In that case we want to add the page to the anon_vma of that process's VMA, instead of to the root anon_vma. This will reduce the amount of rmap searching that the swapout code needs to do. Signed-off-by: Rik van Riel Cc: Andrea Arcangeli Cc: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 51b1bd2ace1595b72956224deda349efa880b693 Author: David Rientjes Date: Mon Aug 9 17:19:47 2010 -0700 oom: deprecate oom_adj tunable /proc/pid/oom_adj is now deprecated so that that it may eventually be removed. The target date for removal is August 2012. A warning will be printed to the kernel log if a task attempts to use this interface. Future warning will be suppressed until the kernel is rebooted to prevent spamming the kernel log. Signed-off-by: David Rientjes Cc: Nick Piggin Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Oleg Nesterov Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a63d83f427fbce97a6cea0db2e64b0eb8435cd10 Author: David Rientjes Date: Mon Aug 9 17:19:46 2010 -0700 oom: badness heuristic rewrite This a complete rewrite of the oom killer's badness() heuristic which is used to determine which task to kill in oom conditions. The goal is to make it as simple and predictable as possible so the results are better understood and we end up killing the task which will lead to the most memory freeing while still respecting the fine-tuning from userspace. Instead of basing the heuristic on mm->total_vm for each task, the task's rss and swap space is used instead. This is a better indication of the amount of memory that will be freeable if the oom killed task is chosen and subsequently exits. This helps specifically in cases where KDE or GNOME is chosen for oom kill on desktop systems instead of a memory hogging task. The baseline for the heuristic is a proportion of memory that each task is currently using in memory plus swap compared to the amount of "allowable" memory. "Allowable," in this sense, means the system-wide resources for unconstrained oom conditions, the set of mempolicy nodes, the mems attached to current's cpuset, or a memory controller's limit. The proportion is given on a scale of 0 (never kill) to 1000 (always kill), roughly meaning that if a task has a badness() score of 500 that the task consumes approximately 50% of allowable memory resident in RAM or in swap space. The proportion is always relative to the amount of "allowable" memory and not the total amount of RAM systemwide so that mempolicies and cpusets may operate in isolation; they shall not need to know the true size of the machine on which they are running if they are bound to a specific set of nodes or mems, respectively. Root tasks are given 3% extra memory just like __vm_enough_memory() provides in LSMs. In the event of two tasks consuming similar amounts of memory, it is generally better to save root's task. Because of the change in the badness() heuristic's baseline, it is also necessary to introduce a new user interface to tune it. It's not possible to redefine the meaning of /proc/pid/oom_adj with a new scale since the ABI cannot be changed for backward compatability. Instead, a new tunable, /proc/pid/oom_score_adj, is added that ranges from -1000 to +1000. It may be used to polarize the heuristic such that certain tasks are never considered for oom kill while others may always be considered. The value is added directly into the badness() score so a value of -500, for example, means to discount 50% of its memory consumption in comparison to other tasks either on the system, bound to the mempolicy, in the cpuset, or sharing the same memory controller. /proc/pid/oom_adj is changed so that its meaning is rescaled into the units used by /proc/pid/oom_score_adj, and vice versa. Changing one of these per-task tunables will rescale the value of the other to an equivalent meaning. Although /proc/pid/oom_adj was originally defined as a bitshift on the badness score, it now shares the same linear growth as /proc/pid/oom_score_adj but with different granularity. This is required so the ABI is not broken with userspace applications and allows oom_adj to be deprecated for future removal. Signed-off-by: David Rientjes Cc: Nick Piggin Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Oleg Nesterov Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74bcbf40546bb7500f2a7ba4ff3cc056a6bd004a Author: Andrew Morton Date: Mon Aug 9 17:19:43 2010 -0700 oom: move badness() declaration into oom.h Cc: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cef1d3523d33ebc35fc29e454b1f4bab953fabbf Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:42 2010 -0700 oom: multi threaded process coredump don't make deadlock Oleg pointed out current PF_EXITING check is wrong. Because PF_EXITING is per-thread flag, not per-process flag. He said, Two threads, group-leader L and its sub-thread T. T dumps the code. In this case both threads have ->mm != NULL, L has PF_EXITING. The first problem is, select_bad_process() always return -1 in this case (even if the caller is T, this doesn't matter). The second problem is that we should add TIF_MEMDIE to T, not L. I think we can remove this dubious PF_EXITING check. but as first step, This patch add the protection of multi threaded issue. Signed-off-by: KOSAKI Motohiro Cc: Oleg Nesterov Cc: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93b43fa55088fe977503a156d1097cc2055449a2 Author: Luis Claudio R. Goncalves Date: Mon Aug 9 17:19:41 2010 -0700 oom: give the dying task a higher priority In a system under heavy load it was observed that even after the oom-killer selects a task to die, the task may take a long time to die. Right after sending a SIGKILL to the task selected by the oom-killer this task has its priority increased so that it can exit() soon, freeing memory. That is accomplished by: /* * We give our sacrificial lamb high priority and access to * all the memory it needs. That way it should be able to * exit() and clear out its resources quickly... */ p->rt.time_slice = HZ; set_tsk_thread_flag(p, TIF_MEMDIE); It sounds plausible giving the dying task an even higher priority to be sure it will be scheduled sooner and free the desired memory. It was suggested on LKML using SCHED_FIFO:1, the lowest RT priority so that this task won't interfere with any running RT task. If the dying task is already an RT task, leave it untouched. Another good suggestion, implemented here, was to avoid boosting the dying task priority in case of mem_cgroup OOM. Signed-off-by: Luis Claudio R. Goncalves Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19b4586cd9c8ed642798902e55c6f61ed576ad93 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:39 2010 -0700 oom: remove child->mm check from oom_kill_process() The current "child->mm == p->mm" check prevents selection of vfork()ed task. But we don't have any reason to don't consider vfork(). Removed. Signed-off-by: KOSAKI Motohiro Cc: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df1090a8dda40b6e11d8cd09e8fc900cfe913b38 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:39 2010 -0700 oom: cleanup has_intersects_mems_allowed() presently has_intersects_mems_allowed() has own thread iterate logic, but it should use while_each_thread(). It slightly improve the code readability. Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a96cfd6e9176ad442233001b7d15e9ed42234320 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:38 2010 -0700 oom: move OOM_DISABLE check from oom_kill_task to out_of_memory() Presently if oom_kill_allocating_task is enabled and current have OOM_DISABLED, following printk in oom_kill_process is called twice. pr_err("%s: Kill process %d (%s) score %lu or sacrifice child\n", message, task_pid_nr(p), p->comm, points); So, OOM_DISABLE check should be more early. Signed-off-by: KOSAKI Motohiro Cc: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 113e27f36dff9895049df324f292474854750d21 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:37 2010 -0700 oom: kill duplicate OOM_DISABLE check select_bad_process() and badness() have the same OOM_DISABLE check. This patch kills one. Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26ebc984913b6a8d86d724b3a79d2ed4ed574612 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:37 2010 -0700 oom: /proc//oom_score treat kernel thread honestly If a kernel thread is using use_mm(), badness() returns a positive value. This is not a big issue because caller take care of it correctly. But there is one exception, /proc//oom_score calls badness() directly and doesn't care that the task is a regular process. Another example, /proc/1/oom_score return !0 value. But it's unkillable. This incorrectness makes administration a little confusing. This patch fixes it. Signed-off-by: KOSAKI Motohiro Cc: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f88ccad5886d5a864b8b0d48c666ee9998dec53f Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:36 2010 -0700 oom: oom_kill_process() needs to check that p is unkillable When oom_kill_allocating_task is enabled, an argument task of oom_kill_process is not selected by select_bad_process(), It's just out_of_memory() caller task. It mean the task can be unkillable. check it first. Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab290adbaf8f46770f014ea87968de5baca29c30 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:35 2010 -0700 oom: make oom_unkillable_task() helper function Presently we have the same task check in two places. Unify it. Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c5ea53ce46ebb232e0d9a475fdd2b166d2a516b Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:34 2010 -0700 oom: oom_kill_process() doesn't select kthread child Presently select_bad_process() has a PF_KTHREAD check, but oom_kill_process doesn't. It mean oom_kill_process() may choose wrong task, especially, when the child are using use_mm(). Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7c59aec830c7ed6c745bd513982cee3563ed20c1 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:33 2010 -0700 oom: don't try to kill oom_unkillable child Presently, badness() doesn't care about either CPUSET nor mempolicy. Then if the victim child process have disjoint nodemask, OOM Killer might kill innocent process. This patch fixes it. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: Minchan Kim Cc: David Rientjes Cc: KAMEZAWA Hiroyuki Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1489fa14cb757b496c8fa2b63097dbcee6690695 Author: Mel Gorman Date: Mon Aug 9 17:19:33 2010 -0700 vmscan: update isolated page counters outside of main path in shrink_inactive_list() When shrink_inactive_list() isolates pages, it updates a number of counters using temporary variables to gather them. These consume stack and it's in the main path that calls ->writepage(). This patch moves the accounting updates outside of the main path to reduce stack usage. Signed-off-by: Mel Gorman Reviewed-by: Johannes Weiner Acked-by: Rik van Riel Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit abe4c3b50c3f25cb1baf56036024860f12f96015 Author: Mel Gorman Date: Mon Aug 9 17:19:31 2010 -0700 vmscan: set up pagevec as late as possible in shrink_page_list() shrink_page_list() sets up a pagevec to release pages as according as they are free. It uses significant amounts of stack on the pagevec. This patch adds pages to be freed via pagevec to a linked list which is then freed en-masse at the end. This avoids using stack in the main path that potentially calls writepage(). Signed-off-by: Mel Gorman Reviewed-by: Rik van Riel Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 666356297ec4e9e6594c6008803f2b1403ff7950 Author: Mel Gorman Date: Mon Aug 9 17:19:30 2010 -0700 vmscan: set up pagevec as late as possible in shrink_inactive_list() shrink_inactive_list() sets up a pagevec to release unfreeable pages. It uses significant amounts of stack doing this. This patch splits shrink_inactive_list() to take the stack usage out of the main path so that callers to writepage() do not contain an unused pagevec on the stack. Signed-off-by: Mel Gorman Reviewed-by: Johannes Weiner Acked-by: Rik van Riel Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d4debc66d1fc1b98a68081c4c8156f171841dca8 Author: Mel Gorman Date: Mon Aug 9 17:19:29 2010 -0700 vmscan: remove unnecessary temporary vars in do_try_to_free_pages Remove temporary variable that is only used once and does not help clarify code. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Mel Gorman Reviewed-by: Rik van Riel Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e247dbce5cc747a714e8dcbd6b3f442cc2a284cf Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:28 2010 -0700 vmscan: simplify shrink_inactive_list() Now, max_scan of shrink_inactive_list() is always passed less than SWAP_CLUSTER_MAX. then, we can remove scanning pages loop in it. This patch also help stack diet. detail - remove "while (nr_scanned < max_scan)" loop - remove nr_freed (now, we use nr_reclaimed directly) - remove nr_scan (now, we use nr_scanned directly) - rename max_scan to nr_to_scan - pass nr_to_scan into isolate_pages() directly instead using SWAP_CLUSTER_MAX [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: KOSAKI Motohiro Signed-off-by: Mel Gorman Reviewed-by: Johannes Weiner Reviewed-by: Rik van Riel Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25edde0332916ae706ccf83de688be57bcc844b7 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:27 2010 -0700 vmscan: kill prev_priority completely Since 2.6.28 zone->prev_priority is unused. Then it can be removed safely. It reduce stack usage slightly. Now I have to say that I'm sorry. 2 years ago, I thought prev_priority can be integrate again, it's useful. but four (or more) times trying haven't got good performance number. Thus I give up such approach. The rest of this changelog is notes on prev_priority and why it existed in the first place and why it might be not necessary any more. This information is based heavily on discussions between Andrew Morton, Rik van Riel and Kosaki Motohiro who is heavily quotes from. Historically prev_priority was important because it determined when the VM would start unmapping PTE pages. i.e. there are no balances of note within the VM, Anon vs File and Mapped vs Unmapped. Without prev_priority, there is a potential risk of unnecessarily increasing minor faults as a large amount of read activity of use-once pages could push mapped pages to the end of the LRU and get unmapped. There is no proof this is still a problem but currently it is not considered to be. Active files are not deactivated if the active file list is smaller than the inactive list reducing the liklihood that file-mapped pages are being pushed off the LRU and referenced executable pages are kept on the active list to avoid them getting pushed out by read activity. Even if it is a problem, prev_priority prev_priority wouldn't works nowadays. First of all, current vmscan still a lot of UP centric code. it expose some weakness on some dozens CPUs machine. I think we need more and more improvement. The problem is, current vmscan mix up per-system-pressure, per-zone-pressure and per-task-pressure a bit. example, prev_priority try to boost priority to other concurrent priority. but if the another task have mempolicy restriction, it is unnecessary, but also makes wrong big latency and exceeding reclaim. per-task based priority + prev_priority adjustment make the emulation of per-system pressure. but it have two issue 1) too rough and brutal emulation 2) we need per-zone pressure, not per-system. Another example, currently DEF_PRIORITY is 12. it mean the lru rotate about 2 cycle (1/4096 + 1/2048 + 1/1024 + .. + 1) before invoking OOM-Killer. but if 10,0000 thrreads enter DEF_PRIORITY reclaim at the same time, the system have higher memory pressure than priority==0 (1/4096*10,000 > 2). prev_priority can't solve such multithreads workload issue. In other word, prev_priority concept assume the sysmtem don't have lots threads." Signed-off-by: KOSAKI Motohiro Signed-off-by: Mel Gorman Reviewed-by: Johannes Weiner Reviewed-by: Rik van Riel Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b898cc70019ce1835bbf6c47bdf978adc36faa42 Author: Mel Gorman Date: Mon Aug 9 17:19:24 2010 -0700 vmscan: tracing: add a postprocessing script for reclaim-related ftrace events Add a simple post-processing script for the reclaim-related trace events. It can be used to give an indication of how much traffic there is on the LRU lists and how severe latencies due to reclaim are. Example output looks like the following Reclaim latencies expressed as order-latency_in_ms uname-3942 9-200.179000000004 9-98.7900000000373 9-99.8330000001006 kswapd0-311 0-662.097999999998 0-2.79700000002049 \ 0-149.100000000035 0-3295.73600000003 0-9806.31799999997 0-35528.833 \ 0-10043.197 0-129740.979 0-3.50500000000466 0-3.54899999999907 \ 0-9297.78999999992 0-3.48499999998603 0-3596.97999999998 0-3.92799999995623 \ 0-3.35000000009313 0-16729.017 0-3.57799999997951 0-47435.0630000001 \ 0-3.7819999998901 0-5864.06999999995 0-18635.334 0-10541.289 9-186011.565 \ 9-3680.86300000001 9-1379.06499999994 9-958571.115 9-66215.474 \ 9-6721.14699999988 9-1962.15299999993 9-1094806.125 9-2267.83199999994 \ 9-47120.9029999999 9-427653.886 9-2.6359999999404 9-632.148999999976 \ 9-476.753000000026 9-495.577000000048 9-8.45900000003166 9-6.6820000000298 \ 9-1.30500000016764 9-251.746000000043 9-383.905000000028 9-80.1419999999925 \ 9-281.160000000149 9-14.8780000000261 9-381.45299999998 9-512.07799999998 \ 9-49.5519999999087 9-167.439000000013 9-183.820999999996 9-239.527999999933 \ 9-19.9479999998584 9-148.747999999905 9-164.583000000101 9-16.9480000000913 \ 9-192.376000000164 9-64.1010000000242 9-1.40800000005402 9-3.60800000000745 \ 9-17.1359999999404 9-4.69500000006519 9-2.06400000001304 9-1582488.554 \ 9-6244.19499999983 9-348153.812 9-2.0999999998603 9-0.987999999895692 \ 0-32218.473 0-1.6140000000596 0-1.28100000019185 0-1.41300000017509 \ 0-1.32299999985844 0-602.584000000032 0-1.34400000004098 0-1.6929999999702 \ 1-22101.8190000001 9-174876.724 9-16.2420000000857 9-175.165999999736 \ 9-15.8589999997057 9-0.604999999981374 9-3061.09000000032 9-479.277000000235 \ 9-1.54499999992549 9-771.985000000335 9-4.88700000010431 9-15.0649999999441 \ 9-0.879999999888241 9-252.01500000013 9-1381.03600000031 9-545.689999999944 \ 9-3438.0129999998 9-3343.70099999988 bench-stresshig-3942 9-7063.33900000004 9-129960.482 9-2062.27500000002 \ 9-3845.59399999992 9-171.82799999998 9-16493.821 9-7615.23900000006 \ 9-10217.848 9-983.138000000035 9-2698.39999999991 9-4016.1540000001 \ 9-5522.37700000009 9-21630.429 \ 9-15061.048 9-10327.953 9-542.69700000016 9-317.652000000002 \ 9-8554.71699999995 9-1786.61599999992 9-1899.31499999994 9-2093.41899999999 \ 9-4992.62400000007 9-942.648999999976 9-1923.98300000001 9-3.7980000001844 \ 9-5.99899999983609 9-0.912000000011176 9-1603.67700000014 9-1.98300000000745 \ 9-3.96500000008382 9-0.902999999932945 9-2802.72199999983 9-1078.24799999991 \ 9-2155.82900000014 9-10.058999999892 9-1984.723 9-1687.97999999998 \ 9-1136.05300000007 9-3183.61699999985 9-458.731000000145 9-6.48600000003353 \ 9-1013.25200000009 9-8415.22799999989 9-10065.584 9-2076.79600000009 \ 9-3792.65699999989 9-71.2010000001173 9-2560.96999999997 9-2260.68400000012 \ 9-2862.65799999982 9-1255.81500000018 9-15.7440000001807 9-4.33499999996275 \ 9-1446.63800000004 9-238.635000000009 9-60.1790000000037 9-4.38800000003539 \ 9-639.567000000039 9-306.698000000091 9-31.4070000001229 9-74.997999999905 \ 9-632.725999999791 9-1625.93200000003 9-931.266000000061 9-98.7749999999069 \ 9-984.606999999844 9-225.638999999966 9-421.316000000108 9-653.744999999879 \ 9-572.804000000004 9-769.158999999985 9-603.918000000063 9-4.28499999991618 \ 9-626.21399999992 9-1721.25 9-0.854999999981374 9-572.39599999995 \ 9-681.881999999983 9-1345.12599999993 9-363.666999999899 9-3823.31099999999 \ 9-2991.28200000012 9-4.27099999994971 9-309.76500000013 9-3068.35700000008 \ 9-788.25 9-3515.73999999999 9-2065.96100000013 9-286.719999999972 \ 9-316.076000000117 9-344.151000000071 9-2.51000000000931 9-306.688000000082 \ 9-1515.00099999993 9-336.528999999864 9-793.491999999853 9-457.348999999929 \ 9-13620.155 9-119.933999999892 9-35.0670000000391 9-918.266999999993 \ 9-828.569000000134 9-4863.81099999999 9-105.222000000067 9-894.23900000006 \ 9-110.964999999851 9-0.662999999942258 9-12753.3150000002 9-12.6129999998957 \ 9-13368.0899999999 9-12.4199999999255 9-1.00300000002608 9-1.41100000008009 \ 9-10300.5290000001 9-16.502000000095 9-30.7949999999255 9-6283.0140000002 \ 9-4320.53799999994 9-6826.27300000004 9-3.07299999985844 9-1497.26799999992 \ 9-13.4040000000969 9-3.12999999988824 9-3.86100000003353 9-11.3539999998175 \ 9-0.10799999977462 9-21.780999999959 9-209.695999999996 9-299.647000000114 \ 9-6.01699999999255 9-20.8349999999627 9-22.5470000000205 9-5470.16800000006 \ 9-7.60499999998137 9-0.821000000229105 9-1.56600000010803 9-14.1669999998994 \ 9-0.209000000031665 9-1.82300000009127 9-1.70000000018626 9-19.9429999999702 \ 9-124.266999999993 9-0.0389999998733401 9-6.71400000015274 9-16.7710000001825 \ 9-31.0409999999683 9-0.516999999992549 9-115.888000000035 9-5.19900000002235 \ 9-222.389999999898 9-11.2739999999758 9-80.9050000000279 9-8.14500000001863 \ 9-4.44599999999627 9-0.218999999808148 9-0.715000000083819 9-0.233000000007451 \ 9-48.2630000000354 9-248.560999999987 9-374.96800000011 9-644.179000000004 \ 9-0.835999999893829 9-79.0060000000522 9-128.447999999858 9-0.692000000039116 \ 9-5.26500000013039 9-128.449000000022 9-2.04799999995157 9-12.0990000001621 \ 9-8.39899999997579 9-10.3860000001732 9-11.9310000000987 9-53.4450000000652 \ 9-0.46999999997206 9-2.96299999998882 9-17.9699999999721 9-0.776000000070781 \ 9-25.2919999998994 9-33.1110000000335 9-0.434000000124797 9-0.641000000061467 \ 9-0.505000000121072 9-1.12800000002608 9-149.222000000067 9-1.17599999997765 \ 9-3247.33100000001 9-10.7439999999478 9-153.523000000045 9-1.38300000014715 \ 9-794.762000000104 9-3.36199999996461 9-128.765999999829 9-181.543999999994 \ 9-78149.8229999999 9-176.496999999974 9-89.9940000001807 9-9.12700000009499 \ 9-250.827000000048 9-0.224999999860302 9-0.388999999966472 9-1.16700000036508 \ 9-32.1740000001155 9-12.6800000001676 9-0.0720000001601875 9-0.274999999906868 \ 9-0.724000000394881 9-266.866000000387 9-45.5709999999963 9-4.54399999976158 \ 9-8.27199999988079 9-4.38099999958649 9-0.512000000104308 9-0.0640000002458692 \ 9-5.20000000018626 9-0.0839999997988343 9-12.816000000108 9-0.503000000026077 \ 9-0.507999999914318 9-6.23999999975786 9-3.35100000025705 9-18.8530000001192 \ 9-25.2220000000671 9-68.2309999996796 9-98.9939999999478 9-0.441000000108033 \ 9-4.24599999981001 9-261.702000000048 9-3.01599999982864 9-0.0749999997206032 \ 9-0.0370000000111759 9-4.375 9-3.21800000034273 9-11.3960000001825 \ 9-0.0540000000037253 9-0.286000000312924 9-0.865999999921769 \ 9-0.294999999925494 9-6.45999999996275 9-4.31099999975413 9-128.248999999836 \ 9-0.282999999821186 9-102.155000000261 9-0.0860000001266599 \ 9-0.0540000000037253 9-0.935000000055879 9-0.0670000002719462 \ 9-5.8640000000596 9-19.9860000000335 9-4.18699999991804 9-0.566000000108033 \ 9-2.55099999997765 9-0.702000000048429 9-131.653999999631 9-0.638999999966472 \ 9-14.3229999998584 9-183.398000000045 9-178.095999999903 9-3.22899999981746 \ 9-7.31399999978021 9-22.2400000002235 9-11.7979999999516 9-108.10599999968 \ 9-99.0159999998286 9-102.640999999829 9-38.414000000339 Process Direct Wokeup Pages Pages Pages details Rclms Kswapd Scanned Sync-IO ASync-IO cc1-30800 0 1 0 0 0 wakeup-0=1 cc1-24260 0 1 0 0 0 wakeup-0=1 cc1-24152 0 12 0 0 0 wakeup-0=12 cc1-8139 0 1 0 0 0 wakeup-0=1 cc1-4390 0 1 0 0 0 wakeup-0=1 cc1-4648 0 7 0 0 0 wakeup-0=7 cc1-4552 0 3 0 0 0 wakeup-0=3 dd-4550 0 31 0 0 0 wakeup-0=31 date-4898 0 1 0 0 0 wakeup-0=1 cc1-6549 0 7 0 0 0 wakeup-0=7 as-22202 0 17 0 0 0 wakeup-0=17 cc1-6495 0 9 0 0 0 wakeup-0=9 cc1-8299 0 1 0 0 0 wakeup-0=1 cc1-6009 0 1 0 0 0 wakeup-0=1 cc1-2574 0 2 0 0 0 wakeup-0=2 cc1-30568 0 1 0 0 0 wakeup-0=1 cc1-2679 0 6 0 0 0 wakeup-0=6 sh-13747 0 12 0 0 0 wakeup-0=12 cc1-22193 0 18 0 0 0 wakeup-0=18 cc1-30725 0 2 0 0 0 wakeup-0=2 as-4392 0 2 0 0 0 wakeup-0=2 cc1-28180 0 14 0 0 0 wakeup-0=14 cc1-13697 0 2 0 0 0 wakeup-0=2 cc1-22207 0 8 0 0 0 wakeup-0=8 cc1-15270 0 179 0 0 0 wakeup-0=179 cc1-22011 0 82 0 0 0 wakeup-0=82 cp-14682 0 1 0 0 0 wakeup-0=1 as-11926 0 2 0 0 0 wakeup-0=2 cc1-6016 0 5 0 0 0 wakeup-0=5 make-18554 0 13 0 0 0 wakeup-0=13 cc1-8292 0 12 0 0 0 wakeup-0=12 make-24381 0 1 0 0 0 wakeup-1=1 date-18681 0 33 0 0 0 wakeup-0=33 cc1-32276 0 1 0 0 0 wakeup-0=1 timestamp-outpu-2809 0 253 0 0 0 wakeup-0=240 wakeup-1=13 date-18624 0 7 0 0 0 wakeup-0=7 cc1-30960 0 9 0 0 0 wakeup-0=9 cc1-4014 0 1 0 0 0 wakeup-0=1 cc1-30706 0 22 0 0 0 wakeup-0=22 uname-3942 4 1 306 0 17 direct-9=4 wakeup-9=1 cc1-28207 0 1 0 0 0 wakeup-0=1 cc1-30563 0 9 0 0 0 wakeup-0=9 cc1-22214 0 10 0 0 0 wakeup-0=10 cc1-28221 0 11 0 0 0 wakeup-0=11 cc1-28123 0 6 0 0 0 wakeup-0=6 kswapd0-311 0 7 357302 0 34233 wakeup-0=7 cc1-5988 0 7 0 0 0 wakeup-0=7 as-30734 0 161 0 0 0 wakeup-0=161 cc1-22004 0 45 0 0 0 wakeup-0=45 date-4590 0 4 0 0 0 wakeup-0=4 cc1-15279 0 213 0 0 0 wakeup-0=213 date-30735 0 1 0 0 0 wakeup-0=1 cc1-30583 0 4 0 0 0 wakeup-0=4 cc1-32324 0 2 0 0 0 wakeup-0=2 cc1-23933 0 3 0 0 0 wakeup-0=3 cc1-22001 0 36 0 0 0 wakeup-0=36 bench-stresshig-3942 287 287 80186 6295 12196 direct-9=287 wakeup-9=287 cc1-28170 0 7 0 0 0 wakeup-0=7 date-7932 0 92 0 0 0 wakeup-0=92 cc1-22222 0 6 0 0 0 wakeup-0=6 cc1-32334 0 16 0 0 0 wakeup-0=16 cc1-2690 0 6 0 0 0 wakeup-0=6 cc1-30733 0 9 0 0 0 wakeup-0=9 cc1-32298 0 2 0 0 0 wakeup-0=2 cc1-13743 0 18 0 0 0 wakeup-0=18 cc1-22186 0 4 0 0 0 wakeup-0=4 cc1-28214 0 11 0 0 0 wakeup-0=11 cc1-13735 0 1 0 0 0 wakeup-0=1 updatedb-8173 0 18 0 0 0 wakeup-0=18 cc1-13750 0 3 0 0 0 wakeup-0=3 cat-2808 0 2 0 0 0 wakeup-0=2 cc1-15277 0 169 0 0 0 wakeup-0=169 date-18317 0 1 0 0 0 wakeup-0=1 cc1-15274 0 197 0 0 0 wakeup-0=197 cc1-30732 0 1 0 0 0 wakeup-0=1 Kswapd Kswapd Order Pages Pages Pages Instance Wakeups Re-wakeup Scanned Sync-IO ASync-IO kswapd0-311 91 24 357302 0 34233 wake-0=31 wake-1=1 wake-9=59 rewake-0=10 rewake-1=1 rewake-9=13 Summary Direct reclaims: 291 Direct reclaim pages scanned: 437794 Direct reclaim write sync I/O: 6295 Direct reclaim write async I/O: 46446 Wake kswapd requests: 2152 Time stalled direct reclaim: 519.163009000002 ms Kswapd wakeups: 91 Kswapd pages scanned: 357302 Kswapd reclaim write sync I/O: 0 Kswapd reclaim write async I/O: 34233 Time kswapd awake: 5282.749757 ms Signed-off-by: Mel Gorman Acked-by: Rik van Riel Acked-by: Larry Woodman Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 755f0225e8347b23a33ee6e3fb14a35310f95766 Author: Mel Gorman Date: Mon Aug 9 17:19:18 2010 -0700 vmscan: tracing: add trace event when a page is written Add a trace event for when page reclaim queues a page for IO and records whether it is synchronous or asynchronous. Excessive synchronous IO for a process can result in noticeable stalls during direct reclaim. Excessive IO from page reclaim may indicate that the system is seriously under provisioned for the amount of dirty pages that exist. Signed-off-by: Mel Gorman Acked-by: Rik van Riel Acked-by: Larry Woodman Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8a94d151521b248727c1f88756174e15260815a Author: Mel Gorman Date: Mon Aug 9 17:19:17 2010 -0700 vmscan: tracing: add trace events for LRU page isolation Add an event for when pages are isolated en-masse from the LRU lists. This event augments the information available on LRU traffic and can be used to evaluate lumpy reclaim. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Mel Gorman Acked-by: Rik van Riel Acked-by: Larry Woodman Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 33906bc5c87b50028364405ec425de9638afc719 Author: Mel Gorman Date: Mon Aug 9 17:19:16 2010 -0700 vmscan: tracing: add trace events for kswapd wakeup, sleeping and direct reclaim Add two trace events for kswapd waking up and going asleep for the purposes of tracking kswapd activity and two trace events for direct reclaim beginning and ending. The information can be used to work out how much time a process or the system is spending on the reclamation of pages and in the case of direct reclaim, how many pages were reclaimed for that process. High frequency triggering of these events could point to memory pressure problems. Signed-off-by: Mel Gorman Acked-by: Rik van Riel Acked-by: Larry Woodman Cc: Dave Chinner Cc: Chris Mason Cc: Nick Piggin Cc: Rik van Riel Cc: Johannes Weiner Cc: Christoph Hellwig Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Andrea Arcangeli Cc: Michael Rubin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c6a8a8c589b53f90854a07db3b5806ce111e826b Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:14 2010 -0700 vmscan: recalculate lru_pages on each priority shrink_zones() need relatively long time and lru_pages can change dramatically during shrink_zones(). So lru_pages should be recalculated for each priority. Signed-off-by: KOSAKI Motohiro Acked-by: Rik van Riel Reviewed-by: Minchan Kim Acked-by: Johannes Weiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b00d3ea7cfe44e177ad5cd8141209d46478a7a51 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:13 2010 -0700 vmscan: zone_reclaim don't call disable_swap_token() Swap token don't works when zone reclaim is enabled since it was born. Because __zone_reclaim() always call disable_swap_token() unconditionally. This kill swap token feature completely. As far as I know, nobody want to that. Remove it. Signed-off-by: KOSAKI Motohiro Acked-by: Rik van Riel Reviewed-by: Minchan Kim Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f446daaea9d4a420d16c606f755f3689dcb2d0ce Author: Jan Kara Date: Mon Aug 9 17:19:12 2010 -0700 mm: implement writeback livelock avoidance using page tagging We try to avoid livelocks of writeback when some steadily creates dirty pages in a mapping we are writing out. For memory-cleaning writeback, using nr_to_write works reasonably well but we cannot really use it for data integrity writeback. This patch tries to solve the problem. The idea is simple: Tag all pages that should be written back with a special tag (TOWRITE) in the radix tree. This can be done rather quickly and thus livelocks should not happen in practice. Then we start doing the hard work of locking pages and sending them to disk only for those pages that have TOWRITE tag set. Note: Adding new radix tree tag grows radix tree node from 288 to 296 bytes for 32-bit archs and from 552 to 560 bytes for 64-bit archs. However, the number of slab/slub items per page remains the same (13 and 7 respectively). Signed-off-by: Jan Kara Cc: Dave Chinner Cc: Nick Piggin Cc: Chris Mason Cc: Theodore Ts'o Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ebf8aa44beed48cd17893a83d92a4403e5f9d9e2 Author: Jan Kara Date: Mon Aug 9 17:19:11 2010 -0700 radix-tree: omplement function radix_tree_range_tag_if_tagged Implement function for setting one tag if another tag is set for each item in given range. Signed-off-by: Jan Kara Cc: Dave Chinner Cc: Nick Piggin Cc: Chris Mason Cc: Theodore Ts'o Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44ab57a06ded284db6ccdefc6b76eddb1c34d7ed Author: Andrea Arcangeli Date: Mon Aug 9 17:19:10 2010 -0700 rmap: add anon_vma bug checks Verify the refcounting doesn't go wrong, and resurrect the check in __page_check_anon_rmap as in old anon-vma code. Signed-off-by: Andrea Arcangeli Signed-off-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21d0d443cdc1658a8c1484fdcece4803f0f96d0e Author: Andrea Arcangeli Date: Mon Aug 9 17:19:10 2010 -0700 rmap: resurrect page_address_in_vma anon_vma check With root anon-vma it's trivial to keep doing the usual check as in old-anon-vma code. Signed-off-by: Andrea Arcangeli Signed-off-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 288468c334e98aacbb7e2fb8bde6bc1adcd55e05 Author: Andrea Arcangeli Date: Mon Aug 9 17:19:09 2010 -0700 rmap: always use anon_vma root pointer Always use anon_vma->root pointer instead of anon_vma_chain.prev. Also optimize the map-paths, if a mapping is already established no need to overwrite it with root anon-vma list, we can keep the more finegrined anon-vma and skip the overwrite: see the PageAnon check in !exclusive case. This is also the optimization that hidden the ksm bug as this tends to make ksm_might_need_to_copy skip the copy, but only the proper fix to ksm_might_need_to_copy guarantees not triggering the ksm bug unless ksm is in use. this is an optimization only... [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Andrea Arcangeli Signed-off-by: Rik van Riel [kamezawa.hiroyu@jp.fujitsu.com: fix false positive BUG_ON in __page_set_anon_rmap] Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba6f0ff3981e6263ab81ac512f04cca55b85ec81 Author: Andrea Arcangeli Date: Mon Aug 9 17:19:08 2010 -0700 ksm: fix ksm swapin time optimization The new anon-vma code, was suboptimal and it lead to erratic invocation of ksm_does_need_to_copy. That leads to host hangs or guest vnc lockup, or weird behavior. It's unclear why ksm_does_need_to_copy is unstable but the point is that when KSM is not in use, ksm_does_need_to_copy must never run or we bounce pages for no good reason. I suspect the same hangs will happen with KVM swaps. But this at least fixes the regression in the new-anon-vma code and it only let KSM bugs triggers when KSM is in use. The code in do_swap_page likely doesn't cope well with a not-swapcache, especially the memcg code. Signed-off-by: Andrea Arcangeli Signed-off-by: Rik van Riel Cc: Izik Eidus Cc: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26ba0cb63cb8df4e45394227f33c938920b11b88 Author: Andrea Arcangeli Date: Mon Aug 9 17:19:08 2010 -0700 rmap: always add new vmas at the end Make sure to always add new VMAs at the end of the list. This is important so rmap_walk does not miss a VMA that was created during the rmap_walk. The old code got this right most of the time due to luck, but was buggy when anon_vma_prepare reused a mergeable anon_vma. Signed-off-by: Andrea Arcangeli Signed-off-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e549e989f94de0596b8149a90e0088e7d4d7c97 Author: Andrea Arcangeli Date: Mon Aug 9 17:19:07 2010 -0700 mmap: remove unnecessary lock from __vma_link There's no anon-vma related mangling happening inside __vma_link anymore so no need of anon_vma locking there. Signed-off-by: Andrea Arcangeli Signed-off-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff36b801624d02a876bb7deded6ab860ea3503f2 Author: Shaohua Li Date: Mon Aug 9 17:19:06 2010 -0700 shmem: reduce pagefault lock contention I'm running a shmem pagefault test case (see attached file) under a 64 CPU system. Profile shows shmem_inode_info->lock is heavily contented and 100% CPUs time are trying to get the lock. In the pagefault (no swap) case, shmem_getpage gets the lock twice, the last one is avoidable if we prealloc a page so we could reduce one time of locking. This is what below patch does. The result of the test case: 2.6.35-rc3: ~20s 2.6.35-rc3 + patch: ~12s so this is 40% improvement. One might argue if we could have better locking for shmem. But even shmem is lockless, the pagefault will soon have pagecache lock heavily contented because shmem must add new page to pagecache. So before we have better locking for pagecache, improving shmem locking doesn't have too much improvement. I did a similar pagefault test against a ramfs file, the test result is ~10.5s. [akpm@linux-foundation.org: fix comment, clean up code layout, elimintate code duplication] Signed-off-by: Shaohua Li Cc: Hugh Dickins Cc: "Zhang, Yanmin" Cc: Tim Chen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e496299d4d2ad8083effed6c5a18313a919edc6 Author: Tim Chen Date: Mon Aug 9 17:19:05 2010 -0700 tmpfs: make tmpfs scalable with percpu_counter for used blocks The current implementation of tmpfs is not scalable. We found that stat_lock is contended by multiple threads when we need to get a new page, leading to useless spinning inside this spin lock. This patch makes use of the percpu_counter library to maintain local count of used blocks to speed up getting and returning of pages. So the acquisition of stat_lock is unnecessary for getting and returning blocks, improving the performance of tmpfs on system with large number of cpus. On a 4 socket 32 core NHM-EX system, we saw improvement of 270%. The implementation below has a slight chance of race between threads causing a slight overshoot of the maximum configured blocks. However, any overshoot is small, and is bounded by the number of cpus. This happens when the number of used blocks is slightly below the maximum configured blocks when a thread checks the used block count, and another thread allocates the last block before the current thread does. This should not be a problem for tmpfs, as the overshoot is most likely to be a few blocks and bounded. If a strict limit is really desired, then configured the max blocks to be the limit less the number of cpus in system. Signed-off-by: Tim Chen Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27f5e0f694fd0600274a76854636c0749e3bb1f6 Author: Tim Chen Date: Mon Aug 9 17:19:04 2010 -0700 tmpfs: add accurate compare function to percpu_counter library Add percpu_counter_compare that allows for a quick but accurate comparison of percpu_counter with a given value. A rough count is provided by the count field in percpu_counter structure, without accounting for the other values stored in individual cpu counters. The actual count is a sum of count and the cpu counters. However, count field is never different from the actual value by a factor of batch*num_online_cpu. We do not need to get actual count for comparison if count is different from the given value by this factor and allows for quick comparison without summing up all the per cpu counters. Signed-off-by: Tim Chen Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e60c86bd9e5a7110ed28874d0b6592186550ae8 Author: Andi Kleen Date: Mon Aug 9 17:19:03 2010 -0700 gcc-4.6: mm: fix unused but set warnings No real bugs, just some dead code and some fixups. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 627295e492638936e76f3d8fcb1e0a3367b88341 Author: Andi Kleen Date: Mon Aug 9 17:19:02 2010 -0700 gcc-4.6: pagemap: avoid unused-but-set variable Avoid quite a lot of warnings in header files in a gcc 4.6 -Wall builds Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67a8a20fe1eec43ebfa7f2b83e988dbdb4c16271 Author: Nick Piggin Date: Mon Aug 9 17:19:02 2010 -0700 avr32: invoke oom-killer from page fault As explained in commit 1c0fe6e3bd ("mm: invoke oom-killer from page fault") , we want to call the architecture independent oom killer when getting an unexplained OOM from handle_mm_fault, rather than simply killing current. Signed-off-by: Nick Piggin Acked-by: Haavard Skinnemoen Acked-by: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 596d7cfa2be6284512915609f01b7fe2f4df5d02 Author: KOSAKI Motohiro Date: Mon Aug 9 17:19:01 2010 -0700 mempolicy: reduce stack size of migrate_pages() migrate_pages() is using >500 bytes stack. Reduce it. mm/mempolicy.c: In function 'sys_migrate_pages': mm/mempolicy.c:1344: warning: the frame size of 528 bytes is larger than 512 bytes [akpm@linux-foundation.org: don't play with a might-be-NULL pointer] Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Reviewed-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 251060006003b79b788f8ce5a827ee5354a42910 Author: Lee Schermerhorn Date: Mon Aug 9 17:19:00 2010 -0700 topology: alternate fix for ia64 tiger_defconfig build breakage Define stubs for the numa_*_id() generic percpu related functions for non-NUMA configurations in where the other non-numa stubs live. Fixes ia64 !NUMA build breakage -- e.g., tiger_defconfig Back out now unneeded '#ifndef CONFIG_NUMA' guards from ia64 smpboot.c Signed-off-by: Lee Schermerhorn Tested-by: Tony Luck Acked-by: Tony Luck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b645bd1286f2fbcd2eb4ab3bed5884f63c42e363 Author: Alexander Nevenchannyy Date: Mon Aug 9 17:19:00 2010 -0700 mmzone.h: remove dead prototype get_zone_counts() was dropped from kernel tree, see: http://www.mail-archive.com/mm-commits@vger.kernel.org/msg07313.html but its prototype remains. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 31f961a89bd1cb9baaf32af4bd8b571ace3447b1 Author: Minchan Kim Date: Mon Aug 9 17:18:59 2010 -0700 mm: use for_each_online_cpu() in vmstat The sum_vm_events passes cpumask for for_each_cpu(). But it's useless since we have for_each_online_cpu. Althougth it's tirival overhead, it's not good about coding consistency. Let's use for_each_online_cpu instead of for_each_cpu with cpumask argument. Signed-off-by: Minchan Kim Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Christoph Lameter Reviewed-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0aad4b3124850e85fe54e610802f0917ce46a1ae Author: David Rientjes Date: Mon Aug 9 17:18:59 2010 -0700 oom: fold __out_of_memory into out_of_memory __out_of_memory() only has a single caller, so fold it into out_of_memory() and add a comment about locking for its call to oom_kill_process(). Signed-off-by: David Rientjes Cc: KAMEZAWA Hiroyuki Acked-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f44200320b10c76003101dee21c5f961e80faf0b Author: David Rientjes Date: Mon Aug 9 17:18:58 2010 -0700 oom: remove constraint argument from select_bad_process and __out_of_memory select_bad_process() and __out_of_memory() doe not need their enum oom_constraint arguments: it's possible to pass a NULL nodemask if constraint == CONSTRAINT_MEMORY_POLICY in the caller, out_of_memory(). Signed-off-by: David Rientjes Cc: KAMEZAWA Hiroyuki Acked-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff321feac22313cf53ffceb69224b09ac19ff22b Author: Minchan Kim Date: Mon Aug 9 17:18:57 2010 -0700 mm: rename try_set_zone_oom() to try_set_zonelist_oom() We have been used naming try_set_zone_oom and clear_zonelist_oom. The role of functions is to lock of zonelist for preventing parallel OOM. So clear_zonelist_oom makes sense but try_set_zone_oome is rather awkward and unmatched with clear_zonelist_oom. Let's change it with try_set_zonelist_oom. Signed-off-by: Minchan Kim Acked-by: David Rientjes Reviewed-by: KOSAKI Motohiro Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b940fd703572f7f9e5f894c682c91c3cbd84c11e Author: David Rientjes Date: Mon Aug 9 17:18:57 2010 -0700 oom: remove unnecessary code and cleanup Remove the redundancy in __oom_kill_task() since: - init can never be passed to this function: it will never be PF_EXITING or selectable from select_bad_process(), and - it will never be passed a task from oom_kill_task() without an ->mm and we're unconcerned about detachment from exiting tasks, there's no reason to protect them against SIGKILL or access to memory reserves. Also moves the kernel log message to a higher level since the verbosity is not always emitted here; we need not print an error message if an exiting task is given a longer timeslice. __oom_kill_task() only has a single caller, so it can be merged into that function at the same time. Signed-off-by: David Rientjes Reviewed-by: KAMEZAWA Hiroyuki Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8e4228e1edb922afa83366803a1e5b3fa8e987c2 Author: David Rientjes Date: Mon Aug 9 17:18:56 2010 -0700 oom: move sysctl declarations to oom.h The three oom killer sysctl variables (sysctl_oom_dump_tasks, sysctl_oom_kill_allocating_task, and sysctl_panic_on_oom) are better declared in include/linux/oom.h rather than kernel/sysctl.c. Signed-off-by: David Rientjes Acked-by: KOSAKI Motohiro Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e365893236ca78fa1fe2482ccbdc30e9abde6027 Author: David Rientjes Date: Mon Aug 9 17:18:55 2010 -0700 oom: remove special handling for pagefault ooms It is possible to remove the special pagefault oom handler by simply oom locking all system zones and then calling directly into out_of_memory(). All populated zones must have ZONE_OOM_LOCKED set, otherwise there is a parallel oom killing in progress that will lead to eventual memory freeing so it's not necessary to needlessly kill another task. The context in which the pagefault is allocating memory is unknown to the oom killer, so this is done on a system-wide level. If a task has already been oom killed and hasn't fully exited yet, this will be a no-op since select_bad_process() recognizes tasks across the system with TIF_MEMDIE set. Signed-off-by: David Rientjes Acked-by: Nick Piggin Acked-by: KOSAKI Motohiro Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 309ed882508cc471320ff79265e7340774d6746c Author: David Rientjes Date: Mon Aug 9 17:18:54 2010 -0700 oom: extract panic helper function There are various points in the oom killer where the kernel must determine whether to panic or not. It's better to extract this to a helper function to remove all the confusion as to its semantics. Also fix a call to dump_header() where tasklist_lock is not read- locked, as required. There's no functional change with this patch. Acked-by: KOSAKI Motohiro Signed-off-by: David Rientjes Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 03668b3ceb0c7a95e09f1b6169f5270ffc1a19f6 Author: David Rientjes Date: Mon Aug 9 17:18:54 2010 -0700 oom: avoid oom killer for lowmem allocations If memory has been depleted in lowmem zones even with the protection afforded to it by /proc/sys/vm/lowmem_reserve_ratio, it is unlikely that killing current users will help. The memory is either reclaimable (or migratable) already, in which case we should not invoke the oom killer at all, or it is pinned by an application for I/O. Killing such an application may leave the hardware in an unspecified state and there is no guarantee that it will be able to make a timely exit. Lowmem allocations are now failed in oom conditions when __GFP_NOFAIL is not used so that the task can perhaps recover or try again later. Previously, the heuristic provided some protection for those tasks with CAP_SYS_RAWIO, but this is no longer necessary since we will not be killing tasks for the purposes of ISA allocations. high_zoneidx is gfp_zone(gfp_flags), meaning that ZONE_NORMAL will be the default for all allocations that are not __GFP_DMA, __GFP_DMA32, __GFP_HIGHMEM, and __GFP_MOVABLE on kernels configured to support those flags. Testing for high_zoneidx being less than ZONE_NORMAL will only return true for allocations that have either __GFP_DMA or __GFP_DMA32. Acked-by: KOSAKI Motohiro Signed-off-by: David Rientjes Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad915c432eccb482427c1bbd77c74e6f7bfe60b3 Author: David Rientjes Date: Mon Aug 9 17:18:53 2010 -0700 oom: enable oom tasklist dump by default The oom killer tasklist dump, enabled with the oom_dump_tasks sysctl, is very helpful information in diagnosing why a user's task has been killed. It emits useful information such as each eligible thread's memory usage that can determine why the system is oom, so it should be enabled by default. Signed-off-by: David Rientjes Acked-by: KOSAKI Motohiro Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f48d0ebd907ae419387f27b602ee98870cfa7bb Author: David Rientjes Date: Mon Aug 9 17:18:52 2010 -0700 oom: select task from tasklist for mempolicy ooms The oom killer presently kills current whenever there is no more memory free or reclaimable on its mempolicy's nodes. There is no guarantee that current is a memory-hogging task or that killing it will free any substantial amount of memory, however. In such situations, it is better to scan the tasklist for nodes that are allowed to allocate on current's set of nodes and kill the task with the highest badness() score. This ensures that the most memory-hogging task, or the one configured by the user with /proc/pid/oom_adj, is always selected in such scenarios. Signed-off-by: David Rientjes Reviewed-by: KOSAKI Motohiro Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e9d834a0e0c0485dfa487281ab9650fc37a3bb5 Author: David Rientjes Date: Mon Aug 9 17:18:51 2010 -0700 oom: sacrifice child with highest badness score for parent When a task is chosen for oom kill, the oom killer first attempts to sacrifice a child not sharing its parent's memory instead. Unfortunately, this often kills in a seemingly random fashion based on the ordering of the selected task's child list. Additionally, it is not guaranteed at all to free a large amount of memory that we need to prevent additional oom killing in the very near future. Instead, we now only attempt to sacrifice the worst child not sharing its parent's memory, if one exists. The worst child is indicated with the highest badness() score. This serves two advantages: we kill a memory-hogging task more often, and we allow the configurable /proc/pid/oom_adj value to be considered as a factor in which child to kill. Reviewers may observe that the previous implementation would iterate through the children and attempt to kill each until one was successful and then the parent if none were found while the new code simply kills the most memory-hogging task or the parent. Note that the only time oom_kill_task() fails, however, is when a child does not have an mm or has a /proc/pid/oom_adj of OOM_DISABLE. badness() returns 0 for both cases, so the final oom_kill_task() will always succeed. Signed-off-by: David Rientjes Acked-by: Rik van Riel Acked-by: Nick Piggin Acked-by: Balbir Singh Cc: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6cf86ac6f36b638459a9a6c2576d5e655d41d451 Author: David Rientjes Date: Mon Aug 9 17:18:50 2010 -0700 oom: filter tasks not sharing the same cpuset Tasks that do not share the same set of allowed nodes with the task that triggered the oom should not be considered as candidates for oom kill. Tasks in other cpusets with a disjoint set of mems would be unfairly penalized otherwise because of oom conditions elsewhere; an extreme example could unfairly kill all other applications on the system if a single task in a user's cpuset sets itself to OOM_DISABLE and then uses more memory than allowed. Killing tasks outside of current's cpuset rarely would free memory for current anyway. To use a sane heuristic, we must ensure that killing a task would likely free memory for current and avoid needlessly killing others at all costs just because their potential memory freeing is unknown. It is better to kill current than another task needlessly. Signed-off-by: David Rientjes Acked-by: Rik van Riel Acked-by: Nick Piggin Acked-by: Balbir Singh Cc: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4358997ae38a1901498d128d6508119d9f318b36 Author: David Rientjes Date: Mon Aug 9 17:18:49 2010 -0700 oom: avoid sending exiting tasks a SIGKILL It's unnecessary to SIGKILL a task that is already PF_EXITING and can actually cause a NULL pointer dereference of the sighand if it has already been detached. Instead, simply set TIF_MEMDIE so it has access to memory reserves and can quickly exit as the comment implies. Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: David Rientjes Cc: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b98c2e402eaa1f2beec18b1bde17f74948a19db Author: David Rientjes Date: Mon Aug 9 17:18:48 2010 -0700 oom: give current access to memory reserves if it has been killed It's possible to livelock the page allocator if a thread has mm->mmap_sem and fails to make forward progress because the oom killer selects another thread sharing the same ->mm to kill that cannot exit until the semaphore is dropped. The oom killer will not kill multiple tasks at the same time; each oom killed task must exit before another task may be killed. Thus, if one thread is holding mm->mmap_sem and cannot allocate memory, all threads sharing the same ->mm are blocked from exiting as well. In the oom kill case, that means the thread holding mm->mmap_sem will never free additional memory since it cannot get access to memory reserves and the thread that depends on it with access to memory reserves cannot exit because it cannot acquire the semaphore. Thus, the page allocators livelocks. When the oom killer is called and current happens to have a pending SIGKILL, this patch automatically gives it access to memory reserves and returns. Upon returning to the page allocator, its allocation will hopefully succeed so it can quickly exit and free its memory. If not, the page allocator will fail the allocation if it is not __GFP_NOFAIL. Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: David Rientjes Cc: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c81fac5cb8c92b8b4795ac250a46c7514d1fce06 Author: David Rientjes Date: Mon Aug 9 17:18:47 2010 -0700 oom: dump_tasks use find_lock_task_mm too fix When find_lock_task_mm() returns a thread other than p in dump_tasks(), its name should be displayed instead. This is the thread that will be targeted by the oom killer, not its mm-less parent. This also allows us to safely dereference task->comm without needing get_task_comm(). While we're here, remove the cast on task_cpu(task) as Andrew suggested. Signed-off-by: David Rientjes Cc: KOSAKI Motohiro Cc: Balbir Singh Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74ab7f1d3f22ccb02f8b14f1f2375416b1ab0adb Author: David Rientjes Date: Mon Aug 9 17:18:46 2010 -0700 oom: improve commentary in dump_tasks() The comments in dump_tasks() should be updated to be more clear about why tasks are filtered and how they are filtered by its argument. An unnecessary comment concerning a check for is_global_init() is removed since it isn't of importance. Suggested-by: Andrew Morton Signed-off-by: David Rientjes Acked-by: KOSAKI Motohiro Cc: Balbir Singh Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c55db95788a2a55a77f5a3ced1e59578710440b2 Author: KOSAKI Motohiro Date: Mon Aug 9 17:18:46 2010 -0700 oom: dump_tasks use find_lock_task_mm too dump_task() should use find_lock_task_mm() too. It is necessary for protecting task-exiting race. dump_tasks() currently filters any task that does not have an attached ->mm since it incorrectly assumes that it must either be in the process of exiting and has detached its memory or that it's a kernel thread; multithreaded tasks may actually have subthreads that have a valid ->mm pointer and thus those threads should actually be displayed. This change finds those threads, if they exist, and emit their information along with the rest of the candidate tasks for kill. Signed-off-by: KOSAKI Motohiro Signed-off-by: David Rientjes Cc: Balbir Singh Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd8e8f405ca386c7ce7cbb996ccd985d283b0e03 Author: Oleg Nesterov Date: Mon Aug 9 17:18:45 2010 -0700 oom: introduce find_lock_task_mm() to fix !mm false positives Almost all ->mm == NULL checks in oom_kill.c are wrong. The current code assumes that the task without ->mm has already released its memory and ignores the process. However this is not necessarily true when this process is multithreaded, other live sub-threads can use this ->mm. - Remove the "if (!p->mm)" check in select_bad_process(), it is just wrong. - Add the new helper, find_lock_task_mm(), which finds the live thread which uses the memory and takes task_lock() to pin ->mm - change oom_badness() to use this helper instead of just checking ->mm != NULL. - As David pointed out, select_bad_process() must never choose the task without ->mm, but no matter what oom_badness() returns the task can be chosen if nothing else has been found yet. Change oom_badness() to return int, change it to return -1 if find_lock_task_mm() fails, and change select_bad_process() to check points >= 0. Note! This patch is not enough, we need more changes. - oom_badness() was fixed, but oom_kill_task() still ignores the task without ->mm - oom_forkbomb_penalty() should use find_lock_task_mm() too, and it also needs other changes to actually find the first first-descendant children This will be addressed later. [kosaki.motohiro@jp.fujitsu.com: use in badness(), __oom_kill_task()] Signed-off-by: Oleg Nesterov Signed-off-by: David Rientjes Signed-off-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b52279406e77be711c068f9a8e970ea6471e089c Author: Oleg Nesterov Date: Mon Aug 9 17:18:44 2010 -0700 oom: PF_EXITING check should take mm into account select_bad_process() checks PF_EXITING to detect the task which is going to release its memory, but the logic is very wrong. - a single process P with the dead group leader disables select_bad_process() completely, it will always return ERR_PTR() while P can live forever - if the PF_EXITING task has already released its ->mm it doesn't make sense to expect it is goiing to free more memory (except task_struct/etc) Change the code to ignore the PF_EXITING tasks without ->mm. Signed-off-by: Oleg Nesterov Signed-off-by: David Rientjes Cc: Balbir Singh Acked-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 455c0e5fb03b67fa62bd12e3abe3fa484b9960c5 Author: Oleg Nesterov Date: Mon Aug 9 17:18:43 2010 -0700 oom: check PF_KTHREAD instead of !mm to skip kthreads select_bad_process() thinks a kernel thread can't have ->mm != NULL, this is not true due to use_mm(). Change the code to check PF_KTHREAD. Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: Oleg Nesterov Signed-off-by: David Rientjes Acked-by: KOSAKI Motohiro Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a9877cc2937889e5669114f28612b494384152a4 Author: Richard Kennedy Date: Mon Aug 9 17:18:42 2010 -0700 buffer_head: remove redundant test from wait_on_buffer The comment suggests that when b_count equals zero it is calling __wait_no_buffer to trigger some debug, but as there is no debug in __wait_on_buffer the whole thing is redundant. AFAICT from the git log this has been the case for at least 5 years, so it seems safe just to remove this. Signed-off-by: Richard Kennedy Cc: Nick Piggin Cc: Jens Axboe Cc: Jeff Mahoney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 76545066c8521f3e32c849744744842b4df25b79 Author: Rik van Riel Date: Mon Aug 9 17:18:41 2010 -0700 mm: extend KSM refcounts to the anon_vma root KSM reference counts can cause an anon_vma to exist after the processe it belongs to have already exited. Because the anon_vma lock now lives in the root anon_vma, we need to ensure that the root anon_vma stays around until after all the "child" anon_vmas have been freed. The obvious way to do this is to have a "child" anon_vma take a reference to the root in anon_vma_fork. When the anon_vma is freed at munmap or process exit, we drop the refcount in anon_vma_unlink and possibly free the root anon_vma. The KSM anon_vma reference count function also needs to be modified to deal with the possibility of freeing 2 levels of anon_vma. The easiest way to do this is to break out the KSM magic and make it generic. When compiling without CONFIG_KSM, this code is compiled out. Signed-off-by: Rik van Riel Tested-by: Larry Woodman Acked-by: Larry Woodman Reviewed-by: Minchan Kim Cc: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Acked-by: Linus Torvalds Tested-by: Dave Young Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 012f18004da33ba672e3c60838cc4898126174d3 Author: Rik van Riel Date: Mon Aug 9 17:18:40 2010 -0700 mm: always lock the root (oldest) anon_vma Always (and only) lock the root (oldest) anon_vma whenever we do something in an anon_vma. The recently introduced anon_vma scalability is due to the rmap code scanning only the VMAs that need to be scanned. Many common operations still took the anon_vma lock on the root anon_vma, so always taking that lock is not expected to introduce any scalability issues. However, always taking the same lock does mean we only need to take one lock, which means rmap_walk on pages from any anon_vma in the vma is excluded from occurring during an munmap, expand_stack or other operation that needs to exclude rmap_walk and similar functions. Also add the proper locking to vma_adjust. Signed-off-by: Rik van Riel Tested-by: Larry Woodman Acked-by: Larry Woodman Reviewed-by: Minchan Kim Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Acked-by: Linus Torvalds Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1 Author: Rik van Riel Date: Mon Aug 9 17:18:39 2010 -0700 mm: track the root (oldest) anon_vma Track the root (oldest) anon_vma in each anon_vma tree. Because we only take the lock on the root anon_vma, we cannot use the lock on higher-up anon_vmas to lock anything. This makes it impossible to do an indirect lookup of the root anon_vma, since the data structures could go away from under us. However, a direct pointer is safe because the root anon_vma is always the last one that gets freed on munmap or exit, by virtue of the same_vma list order and unlink_anon_vmas walking the list forward. [akpm@linux-foundation.org: fix typo] Signed-off-by: Rik van Riel Acked-by: Mel Gorman Acked-by: KAMEZAWA Hiroyuki Tested-by: Larry Woodman Acked-by: Larry Woodman Reviewed-by: Minchan Kim Acked-by: Linus Torvalds Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cba48b98f2348c814316c4b4f411a07a0e4a2bf9 Author: Rik van Riel Date: Mon Aug 9 17:18:38 2010 -0700 mm: change direct call of spin_lock(anon_vma->lock) to inline function Subsitute a direct call of spin_lock(anon_vma->lock) with an inline function doing exactly the same. This makes it easier to do the substitution to the root anon_vma lock in a following patch. We will deal with the handful of special locks (nested, dec_and_lock, etc) separately. Signed-off-by: Rik van Riel Acked-by: Mel Gorman Acked-by: KAMEZAWA Hiroyuki Tested-by: Larry Woodman Acked-by: Larry Woodman Reviewed-by: Minchan Kim Acked-by: Linus Torvalds Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb4a340e075b7897ece109686bfa177f8518d2db Author: Rik van Riel Date: Mon Aug 9 17:18:37 2010 -0700 mm: rename anon_vma_lock to vma_lock_anon_vma Rename anon_vma_lock to vma_lock_anon_vma. This matches the naming style used in page_lock_anon_vma and will come in really handy further down in this patch series. Signed-off-by: Rik van Riel Acked-by: Mel Gorman Acked-by: KAMEZAWA Hiroyuki Tested-by: Larry Woodman Acked-by: Larry Woodman Reviewed-by: Minchan Kim Acked-by: Linus Torvalds Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 597781f3e51f48ef8e67be772196d9e9673752c4 Author: Cesar Eduardo Barros Date: Mon Aug 9 17:18:32 2010 -0700 kmap_atomic: make kunmap_atomic() harder to misuse kunmap_atomic() is currently at level -4 on Rusty's "Hard To Misuse" list[1] ("Follow common convention and you'll get it wrong"), except in some architectures when CONFIG_DEBUG_HIGHMEM is set[2][3]. kunmap() takes a pointer to a struct page; kunmap_atomic(), however, takes takes a pointer to within the page itself. This seems to once in a while trip people up (the convention they are following is the one from kunmap()). Make it much harder to misuse, by moving it to level 9 on Rusty's list[4] ("The compiler/linker won't let you get it wrong"). This is done by refusing to build if the type of its first argument is a pointer to a struct page. The real kunmap_atomic() is renamed to kunmap_atomic_notypecheck() (which is what you would call in case for some strange reason calling it with a pointer to a struct page is not incorrect in your code). The previous version of this patch was compile tested on x86-64. [1] http://ozlabs.org/~rusty/index.cgi/tech/2008-04-01.html [2] In these cases, it is at level 5, "Do it right or it will always break at runtime." [3] At least mips and powerpc look very similar, and sparc also seems to share a common ancestor with both; there seems to be quite some degree of copy-and-paste coding here. The include/asm/highmem.h file for these three archs mention x86 CPUs at its top. [4] http://ozlabs.org/~rusty/index.cgi/tech/2008-03-30.html [5] As an aside, could someone tell me why mn10300 uses unsigned long as the first parameter of kunmap_atomic() instead of void *? Signed-off-by: Cesar Eduardo Barros Cc: Russell King (arch/arm) Cc: Ralf Baechle (arch/mips) Cc: David Howells (arch/frv, arch/mn10300) Cc: Koichi Yasutake (arch/mn10300) Cc: Kyle McMartin (arch/parisc) Cc: Helge Deller (arch/parisc) Cc: "James E.J. Bottomley" (arch/parisc) Cc: Benjamin Herrenschmidt (arch/powerpc) Cc: Paul Mackerras (arch/powerpc) Cc: "David S. Miller" (arch/sparc) Cc: Thomas Gleixner (arch/x86) Cc: Ingo Molnar (arch/x86) Cc: "H. Peter Anvin" (arch/x86) Cc: Arnd Bergmann (include/asm-generic) Cc: Rusty Russell ("Hard To Misuse" list) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3edd4fc9537d95e460d502987c63a90d6b9a7a82 Author: Doug Doan Date: Mon Aug 9 17:18:30 2010 -0700 hugetlb: call mmu notifiers on hugepage cow When a copy-on-write occurs, we take one of two paths in handle_mm_fault: through handle_pte_fault for normal pages, or through hugetlb_fault for huge pages. In the normal page case, we eventually get to do_wp_page and call mmu notifiers via ptep_clear_flush_notify. There is no callout to the mmmu notifiers in the huge page case. This patch fixes that. Signed-off-by: Doug Doan Acked-by: Mel Gorman Cc: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a1b200e27c0426ea98c1231a2b78c6094eb073e4 Author: Heiko Carstens Date: Mon Aug 9 17:18:28 2010 -0700 mm: provide init_mm mm_context initializer Provide an INIT_MM_CONTEXT intializer macro which can be used to statically initialize mm_struct:mm_context of init_mm. This way we can get rid of code which will do the initialization at run time (on s390). In addition the current code can be found at a place where it is not expected. So let's have a common initializer which architectures can use if needed. This is based on a patch from Suzuki Poulose. Signed-off-by: Heiko Carstens Cc: Martin Schwidefsky Cc: Suzuki Poulose Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e7d86340793e7162126926ec9d226c68f4e37f94 Author: Julia Lawall Date: Mon Aug 9 17:18:28 2010 -0700 mm: use ERR_CAST Use ERR_CAST(x) rather than ERR_PTR(PTR_ERR(x)). The former makes more clear what is the purpose of the operation, which otherwise looks like a no-op. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ type T; T x; identifier f; @@ T f (...) { <+... - ERR_PTR(PTR_ERR(x)) + x ...+> } @@ expression x; @@ - ERR_PTR(PTR_ERR(x)) + ERR_CAST(x) // Signed-off-by: Julia Lawall Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90d7404558fbe6f369d5e27b5ea3ef1e57562d3d Author: Julia Lawall Date: Mon Aug 9 17:18:26 2010 -0700 mm: use memdup_user Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // Signed-off-by: Julia Lawall Cc: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e58143dc08123c22c5b9f782b2913bd3a07a03d Author: Michal Simek Date: Mon Aug 9 17:18:24 2010 -0700 asm-generic: use raw_local_irq_save/restore instead local_irq_save/restore The start/stop_critical_timing functions for preemptirqsoff, preemptoff and irqsoff tracers contain atomic_inc() and atomic_dec() operations. Atomic operations use local_irq_save/restore macros to ensure atomic access but they are traced by the same function which is causing recursion problem. The reason is when these tracers are turn ON then the local_irq_save/restore macros are changed in include/linux/irqflags.h to call trace_hardirqs_on/off which call start/stop_critical_timing. Microblaze was affected because it uses generic atomic implementation. Signed-off-by: Michal Simek Acked-by: Steven Rostedt Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fa260c00c1aa5c657793a7221e40d2400df5afd8 Author: Peter Huewe Date: Mon Aug 9 17:18:23 2010 -0700 drivers/video/w100fb.c: ignore void return value / fix build failure Fix a build failure "error: void value not ignored as it ought to be" by removing an assignment of a void return value. The functionality of the code is not changed. Signed-off-by: Peter Huewe Acked-by: Henrik Kretzschmar Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d9e1b6c45059ccfff647a120769ae86da78dfdc4 Author: Yinghai Lu Date: Mon Aug 9 17:18:22 2010 -0700 ipmi: fix ACPI detection with regspacing After the commit that changed ipmi_si detecting sequence from SMBIOS/ACPI to ACPI/SMBIOS, | commit 754d453185275951d39792865927ec494fa1ebd8 | Author: Matthew Garrett | Date: Wed May 26 14:43:47 2010 -0700 | | ipmi: change device discovery order | | The ipmi spec provides an ordering for si discovery. Change the driver to | match, with the exception of preferring smbios to SPMI as HPs (at least) | contain accurate information in the former but not the latter. ipmi_si can not be initialized. [ 138.799739] calling init_ipmi_devintf+0x0/0x109 @ 1 [ 138.805050] ipmi device interface [ 138.818131] initcall init_ipmi_devintf+0x0/0x109 returned 0 after 12797 usecs [ 138.822998] calling init_ipmi_si+0x0/0xa90 @ 1 [ 138.840276] IPMI System Interface driver. [ 138.846137] ipmi_si: probing via ACPI [ 138.849225] ipmi_si 00:09: [io 0x0ca2] regsize 1 spacing 1 irq 0 [ 138.864438] ipmi_si: Adding ACPI-specified kcs state machine [ 138.870893] ipmi_si: probing via SMBIOS [ 138.880945] ipmi_si: Adding SMBIOS-specified kcs state machineipmi_si: duplicate interface [ 138.896511] ipmi_si: probing via SPMI [ 138.899861] ipmi_si: Adding SPMI-specified kcs state machineipmi_si: duplicate interface [ 138.917095] ipmi_si: Trying ACPI-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 [ 138.928658] ipmi_si: Interface detection failed [ 138.953411] initcall init_ipmi_si+0x0/0xa90 returned 0 after 110847 usecs in smbios has DMI/SMBIOS Handle 0x00C5, DMI type 38, 18 bytes IPMI Device Information Interface Type: KCS (Keyboard Control Style) Specification Version: 2.0 I2C Slave Address: 0x00 NV Storage Device: Not Present Base Address: 0x0000000000000CA2 (I/O) Register Spacing: 32-bit Boundaries in DSDT has Device (BMC) { Name (_HID, EisaId ("IPI0001")) Method (_STA, 0, NotSerialized) { If (LEqual (OSN, Zero)) { Return (Zero) } Return (0x0F) } Name (_STR, Unicode ("IPMI_KCS")) Name (_UID, Zero) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0CA2, // Range Minimum 0x0CA2, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0CA6, // Range Minimum 0x0CA6, // Range Maximum 0x00, // Alignment 0x01, // Length ) }) Method (_IFT, 0, NotSerialized) { Return (One) } Method (_SRV, 0, NotSerialized) { Return (0x0200) } } so the reg spacing should be 4 instead of 1. Try to calculate regspacing for this kind of system. Observed on a Sun Fire X4800. Other OSes work and pass certification. Signed-off-by: Yinghai Lu Cc: Bjorn Helgaas Acked-by: Matthew Garrett Cc: Len Brown Cc: Myron Stowe Cc: Corey Minyard Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5149cc44cf9c5e23fbe34515fc6b4b91c0e48c4 Merge: 45d7f32 9a919c4 Author: Linus Torvalds Date: Mon Aug 9 19:30:17 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: drm: fix fallouts from slow-work -> wq conversion workqueue: workqueue_cpu_callback() should be cpu_notifier instead of hotcpu_notifier workqueue: add missing __percpu markup in kernel/workqueue.c commit f1d23ed8218ca5afaf178a6495253dbb7fc98f57 Author: Claudio Scordino Date: Mon May 31 10:19:09 2010 +0200 CRIS: ioctl for getting RS485 information Add ioctl to CRIS serial driver to get RS485 data from user-space. Signed-off-by: Claudio Scordino Signed-off-by: Jesper Nilsson commit 9a919c46dfa48a9c1f465174609b90253eb8ffc1 Author: Tejun Heo Date: Mon Aug 9 12:01:27 2010 +0200 drm: fix fallouts from slow-work -> wq conversion Commit 991ea75c (drm: use workqueue instead of slow-work), which made drm to use wq instead of slow-work, didn't account for the return value difference between delayed_slow_work_enqueue() and queue_delayed_work(). The former returns 0 on success and -errno on failures while the latter never fails and only uses the return value to indicate whether the work was already pending or not. This misconversion triggered spurious error messages. Remove the now unnecessary return value check and error message. Markus: caught another incorrect conversion in drm_kms_helper_poll_enable() Signed-off-by: Tejun Heo Reported-by: Markus Trippelsdorf Tested-by: Markus Trippelsdorf Cc: David Airlie Cc: dri-devel@lists.freedesktop.org commit cd078af65d5c2f19c0f378062b07a0a79b000723 Author: Atsushi Nemoto Date: Fri Jun 4 16:19:23 2010 -0700 tx493xide: use min_t() macro instead of min() This fixes a warning ("comparison of distinct pointer types lacks a cast") introduced by the commit 040f6b4f14adb2ca5babb84e9fb2ebc6661e0be2 ("tx493xide: use ->pio_mode value to determine pair device speed"). Signed-off-by: Atsushi Nemoto Signed-off-by: David S. Miller commit 7d543d8468348c44010c7b4e6fdd23a398779668 Author: Julia Lawall Date: Fri Jun 4 16:11:17 2010 -0700 drivers/ide: Use memdup_user Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 2a800b7bd926c739c07c1690579f03bbd6f1b5a3 Author: Yann Dirson Date: Sun Jul 18 16:11:06 2010 -0700 via82cxxx: fix typo for VT6415 PCIE PATA IDE Host Controller support. Without this fix, init of the via82cxxx driver causes a oops with a stack resembling the one below, and the boot blocks between init of USB devices and launch of init (was easy to bisect by booting with init=/bin/sh). Pid: 279, comm: work_for_cpu Not tainted 2.6.34.1-00003-ga42ea77 #2 Call Trace: [] ? warn_slowpath_common+0x76/0x8c [] ? warn_slowpath_fmt+0x40/0x45 [] ? printk+0x40/0x47 [] ? enable_irq+0x3e/0x64 [] ? ide_probe_port+0x55c/0x589 [ide_core] [] ? ide_host_register+0x273/0x628 [ide_core] [] ? ide_pci_init_two+0x4da/0x5c5 [ide_core] [] ? up+0xe/0x36 [] ? release_console_sem+0x17e/0x1ae [] ? klist_iter_exit+0x14/0x1e [] ? bus_find_device+0x75/0x83 [] ? via_init_one+0x269/0x28a [via82cxxx] [] ? init_chipset_via82cxxx+0x0/0x1ea [via82cxxx] [] ? do_work_for_cpu+0x0/0x1b [] ? local_pci_probe+0x12/0x16 [] ? do_work_for_cpu+0xb/0x1b [] ? kthread+0x75/0x7d [] ? kernel_thread_helper+0x4/0x10 [] ? kthread+0x0/0x7d [] ? kernel_thread_helper+0x0/0x10 ---[ end trace 89c8cb70379b5bda ]--- The typo was introduced in a354ae8747d0687093ce244e76b15b6174d2f098, and affects 2.6.33-rc4 and later. Signed-off-by: Yann Dirson Signed-off-by: David S. Miller commit 110712828365ccafcc61a7f4db44c31ed4cf8793 Author: Borislav Petkov Date: Mon Jul 5 21:23:52 2010 -0700 ide-cd: Do not access completed requests in the irq handler ide_cd_error_cmd() can complete an erroneous request with leftover buffers. Signal this with its return value so that the request is not accessed after its completion in the irq handler and we oops. Cc: # 32.x 33.x 34.x Signed-off-by: Borislav Petkov Signed-off-by: David S. Miller commit 2dc4ec5de039d5db4805dff170ab80f4e990e977 Author: David S. Miller Date: Mon Aug 9 03:12:56 2010 -0700 sparc64: Update defconfig. Signed-off-by: David S. Miller commit f6500947a9cbb81cfa07ff344f16955d9c6ebe61 Author: Tejun Heo Date: Mon Aug 9 11:50:34 2010 +0200 workqueue: workqueue_cpu_callback() should be cpu_notifier instead of hotcpu_notifier Commit 6ee0578b (workqueue: mark init_workqueues as early_initcall) made workqueue SMP initialization depend on workqueue_cpu_callback(), which however was registered as hotcpu_notifier() and didn't get called if CONFIG_HOTPLUG_CPU is not set. This made gcwqs on non-boot CPUs not create their initial workers leading to boot failures. Fix it by making it a cpu_notifier. Signed-off-by: Tejun Heo Reported-and-bisected-by: walt Tested-by: Markus Trippelsdorf commit 4cb6066af9ee58ddba58a63cc77b324ac21add75 Author: David S. Miller Date: Mon Aug 9 00:45:46 2010 -0700 sparc: Kill user copy check code. For whatever reason GCC isn't able to figure things out in the control flow (in particular when min() and max() expressions are involved) on sparc as well as it can on x86. So lots of useless incorrect user copy warnings get spewed and the full-on compile failure mode of the user copy checks were never usable on sparc at all. People can debug these kinds of problems on x86. Signed-off-by: David S. Miller commit b11287e8c5b2797b86351f6db0fcd9ff99b20bab Author: David S. Miller Date: Sun Aug 8 22:03:59 2010 -0700 sparc64: Fix perf_arch_get_caller_regs(). After b0f82b81fe6bbcf78d478071f33e44554726bc81 ("perf: Drop the skip argument from perf_arch_fetch_regs_caller") the build broke on sparc64 due to the lack of a module symbol export of __perf_arch_fetch_caller_regs. But that assembler helper can actually be complete eliminated now that the semantics of this interface have been greatly simplified. Signed-off-by: David S. Miller commit c8837434e8bfd08abf3b596dbaeffe4a8b59a284 Author: David S. Miller Date: Wed Aug 4 17:30:21 2010 -0700 sparc64: Add missing ID to parport probing code. SunBlade-2500 has 'parallel' device node with compatible property "pnpALI,1533,3" so add that to the ID table. Reported-by: Mikael Pettersson Tested-by: Mikael Pettersson Signed-off-by: David S. Miller commit e32e78c5ee8aadef020fbaecbe6fb741ed9029fd Author: Sam Ravnborg Date: Mon Aug 2 20:47:48 2010 +0000 powerpc: fix build with make 3.82 Thomas Backlund reported that the powerpc build broke with make 3.82. It failed with the following message: arch/powerpc/Makefile:183: *** mixed implicit and normal rules. Stop. The fix is to avoid mixing non-wildcard and wildcard targets. Reported-by: Thomas Backlund Tested-by: Thomas Backlund Cc: Michal Marek Cc: stable Signed-off-by: Sam Ravnborg Signed-off-by: Benjamin Herrenschmidt commit 6e49c1a407c8af8d779a24fd2428857991514a7b Author: Benjamin Herrenschmidt Date: Mon Aug 9 13:48:08 2010 +1000 Revert "Input: appletouch - fix integer overflow issue" This reverts commit 04b4b88cca0ebe3813b4b6f014fb6a0db380b137. While the original problem only caused a slight disturbance on the edge of the touchpad, the commit above to "fix" it completely breaks operation on some other models such as mine. We'll sort this out separately, revert the patch for now. Signed-off-by: Benjamin Herrenschmidt commit c4e9b56e24422e71424b24eee27c2b134a191d7b Author: Jeff Kirsher Date: Sun Aug 8 15:54:31 2010 +0000 igbvf.txt: Add igbvf Documentation Adds documentation for the igbvf (igb virtual function driver). v2: - Removed trailing white space - Removed Ethtool version info Signed-off-by: Jeff Kirsher Tested-by: Jeff Pieper Signed-off-by: David S. Miller commit b55c52b1938c9320819144e060ca28244d8ee7eb Author: Jeff Kirsher Date: Sun Aug 8 15:54:11 2010 +0000 igb.txt: Add igb documentation Add documentation for the igb networking driver. v2: - Removed trailing white space - Removed Ethtool version info - Removed LRO kernel version info Signed-off-by: Jeff Kirsher Tested-by: Jeff Pieper Signed-off-by: David S. Miller commit 2d0bb1c1f4524befe9f0fcf0d0cd3081a451223f Author: Jeff Kirsher Date: Sun Aug 8 16:02:31 2010 +0000 e100/e1000*/igb*/ixgb*: Add missing read memory barrier Based on patches from Sonny Rao and Milton Miller... Combined the patches to fix up clean_tx_irq and clean_rx_irq. The PowerPC architecture does not require loads to independent bytes to be ordered without adding an explicit barrier. In ixgbe_clean_rx_irq we load the status bit then load the packet data. With packet split disabled if these loads go out of order we get a stale packet, but we will notice the bad sequence numbers and drop it. The problem occurs with packet split enabled where the TCP/IP header and data are in different descriptors. If the reads go out of order we may have data that doesn't match the TCP/IP header. Since we use hardware checksumming this bad data is never verified and it makes it all the way to the application. This bug was found during stress testing and adding this barrier has been shown to fix it. The bug can manifest as a data integrity issue (bad payload data) or as a BUG in skb_pull(). This was a nasty bug to hunt down, if people agree with the fix I think it's a candidate for stable. Previously Submitted to e1000-devel only for ixgbe http://marc.info/?l=e1000-devel&m=126593062701537&w=3 We've now seen this problem hit with other device drivers (e1000e mostly) So I'm resubmitting with fixes for other Intel Device Drivers with similar issues. CC: Milton Miller CC: Anton Blanchard CC: Sonny Rao CC: stable Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 4bc091d85f979a1a18ef2d710b819b3c5b397707 Author: John Fastabend Date: Sun Aug 8 15:46:15 2010 +0000 ixgbe: fix build error with FCOE_CONFIG without DCB_CONFIG Building ixgbe without DCB_CONFIG and FCOE_CONFIG will cause a build error. This resolves the build error by wrapping the fcoe.up in CONFIG_IXGBE_DCB ifdefs. Also frames were being priority VLAN tagged even without DCB enabled. This fixes this so that 8021Q priority tags are only added with DCB actually enabled. Reported-by: divya Reported-by: Jon Mason Signed-off-by: John Fastabend Tested-by: Stephen Ko Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 8b449d1f1371e8ecd0b2499034e0b1432cdbe662 Merge: 2ed9aae ee11006 Author: Benjamin Herrenschmidt Date: Mon Aug 9 11:23:58 2010 +1000 Merge remote branch 'gcl/next' into next commit 2ed9aae0facd603f9f9b8347d1d7e9de23bde286 Author: Benjamin Herrenschmidt Date: Wed Aug 4 14:17:17 2010 +1000 memblock: Fix memblock_is_region_reserved() to return a boolean All callers expect a boolean result which is true if the region overlaps a reserved region. However, the implementation actually returns -1 if there is no overlap, and a region index (0 based) if there is. Make it behave as callers (and common sense) expect. Signed-off-by: Benjamin Herrenschmidt commit 61a3e1665f714640a888e9ac5470e94696ac545b Author: Benjamin Herrenschmidt Date: Mon Aug 9 11:19:16 2010 +1000 powerpc: Trim defconfigs This trims all our defconfigs using make savedefconfig Signed-off-by: Benjamin Herrenschmidt commit 45d7f32c7a43cbb9592886d38190e379e2eb2226 Merge: 53bcef6 ab11b48 Author: Linus Torvalds Date: Sun Aug 8 10:10:11 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: arch/tile: check kmalloc() result arch/tile: catch up on various minor cleanups. arch/tile: avoid erroneous error return for PTRACE_POKEUSR. tile: set ARCH_KMALLOC_MINALIGN tile: remove homegrown L1_CACHE_ALIGN macro arch/tile: Miscellaneous cleanup changes. arch/tile: Split the icache flush code off to a generic header. arch/tile: Fix bug in support for atomic64_xx() ops. arch/tile: Shrink the tile-opcode files considerably. arch/tile: Add driver to enable access to the user dynamic network. arch/tile: Enable more sophisticated IRQ model for 32-bit chips. Move list types from to . Add wait4() back to the set of syscalls. Revert adding some arch-specific signal syscalls to . arch/tile: Do not use GFP_KERNEL for dma_alloc_coherent(). Feedback from fujita.tomonori@lab.ntt.co.jp. arch/tile: core support for Tilera 32-bit chips. Fix up the "generic" unistd.h ABI to be more useful. commit 53bcef60633086ad73683d01a4ef9ca678484d2d Merge: 4fd6c6b 85d9865 Author: Linus Torvalds Date: Sun Aug 8 10:08:26 2010 -0700 Merge branch 'for-linus' of git://www.jni.nu/cris * 'for-linus' of git://www.jni.nu/cris: (51 commits) CRIS: Fix alignment problem for older ld CRIS: Always dump registers for segfaulting process. CRIS: Add config for pausing a seg-faulting process CRIS: Don't take faults while in_atomic CRIS: Fixup lookup for delay slot faults CRIS: Discard exit.text and .data at runtime CRIS: Add cache aligned and read mostly data sections CRIS: Return something from profile write CRIS: Add ARTPEC-3 and timestamps for sync-serial CRIS: Better ARTPEC-3 support for gpio CRIS: Add include guard CRIS: Better handling of pinmux settings CRIS: New DMA defines for ARTPEC-3 CRIS: __do_strncpy_from_user: Don't read the byte beyond the nil CRIS: Pagetable for ARTPEC-3 CRIS: Machine dependent memmap.h CRIS: Check if pointer is set before using it CRIS: Machine dependent dma.h CRIS: Define __read_mostly for CRISv32 CRIS: Discard .note.gnu.build-id section ... commit 4fd6c6bf83cb16321e9902b00e2af79054f4e0d6 Merge: c5f3475 84b9414 Author: Linus Torvalds Date: Sun Aug 8 10:05:57 2010 -0700 Merge branch 'for-linus' of git://android.kernel.org/kernel/tegra * 'for-linus' of git://android.kernel.org/kernel/tegra: [ARM] tegra: add MAINTAINERS entry [ARM] tegra: harmony: Add harmony board file [ARM] tegra: add pinmux support [ARM] tegra: add GPIO support [ARM] tegra: Add timer support [ARM] tegra: SMP support [ARM] tegra: Add clock support [ARM] tegra: Add IRQ support [ARM] tegra: initial tegra support commit c5f347579a661c9506e794315f0798b75ef71d35 Merge: 537d847 f270983 Author: Linus Torvalds Date: Sun Aug 8 10:04:17 2010 -0700 Merge branch 'for-linus' of git://github.com/schandinat/linux-2.6 * 'for-linus' of git://github.com/schandinat/linux-2.6: drivers/video/via/via-gpio.c: fix warning viafb: Depends on X86 fbdev: section cleanup in viafb driver viafb: fix accel_flags check_var bug viafb: probe cleanups viafb: remove ioctls which break the framebuffer interface viafb: update fix before calculating depth viafb: PLL value cleanup viafb: simplify lcd size "detection" viafb: fix PCI table viafb: add lcd scaling support for some IGPs viafb: improve lcd code readability viafb: remove duplicated scaling code MAINTAINERS: update viafb entry commit 537d84787659b355b3331813dc134c7497ddafa5 Merge: d71048e ece350d Author: Linus Torvalds Date: Sun Aug 8 10:02:59 2010 -0700 Merge branch 'for-linus' of git://gitorious.org/linux-omap-dss2/linux * 'for-linus' of git://gitorious.org/linux-omap-dss2/linux: (64 commits) OMAP: DSS2: OMAPFB: add support for FBIO_WAITFORVSYNC OMAP: DSS2: Replace strncmp() with sysfs_streq() in overlay_manager_store() OMAP: DSS2: Fix error path in omap_dsi_update() OMAP: DSS2: TDO35S: fix video signaling OMAP: DSS2: OMAPFB: Fix invalid bpp for PAL and NTSC modes OMAP: DSS2: OMAPFB: Fix probe error path OMAP3EVM: Replace vdvi regulator supply with vdds_dsi OMAP: DSS2: Remove extra return statement OMAP: DSS2: adjust YUV overlay width to be even OMAP: DSS2: OMAPFB: Fix sysfs mirror input check OMAP: DSS2: OMAPFB: Remove redundant color register range check OMAP: DSS2: OMAPFB: Remove redundant rotate range check OMAP: DSS2: OMAPFB: Check fb2display() return value OMAP: DSS2: Taal: Optimize enable_te, rotate, mirror when value unchanged OMAP: DSS2: DSI: detect unsupported update requests OMAP: DSS2: DSI: increase FIFO low threshold OMAP: DSS2: DSI: Add error IRQ mask for DSI complexIO OMAP: DSS2: DSI: Remove BTA after set_max_rx_packet_size OMAP: DSS2: change manual update scaling setup OMAP: DSS2: DSI: use BTA to end the frame transfer ... commit d71048e22f47725a5808ea2e4e1e72fa36c1a788 Merge: 44d51a0 d21872b Author: Linus Torvalds Date: Sun Aug 8 10:01:46 2010 -0700 Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (143 commits) omap: mailbox: reorganize headers omap: mailbox: standarize on 'omap-mailbox' omap: mailbox: only compile for configured archs omap: mailbox: simplify omap_mbox_register() omap: mailbox: reorganize registering omap: mailbox: add IRQ names omap: mailbox: remove unecessary fields omap: mailbox: don't export unecessary symbols omap: mailbox: update omap1 probing omap: mailbox: use correct config for omap1 omap: mailbox: 2420 should be detected at run-time omap: mailbox: reorganize structures omap: mailbox: trivial cleanups omap mailbox: Set a device in logical mbox instance for traceability omap: mailbox: convert block api to kfifo omap: mailbox: remove (un)likely macros from cold paths omap: mailbox cleanup: split MODULE_AUTHOR line omap: mailbox: convert rwlocks to spinlock Mailbox: disable mailbox interrupt when request queue Mailbox: new mutext lock for h/w mailbox configuration ... commit 44d51a029f95d49c5c7ccd7808f81904c20c3abd Merge: 2d53056 cce3ddd Author: Linus Torvalds Date: Sun Aug 8 10:00:55 2010 -0700 Merge branch 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci * 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci: davinci: dm646x EVM: Specify reserved EDMA channel/slots davinci: da8xx/omapl EVM: Specify reserved channels/slots davinci: support for EDMA resource sharing davinci: edma: provide ability to detect insufficient CC info data davinci: da8xx: sparse cleanup: remove duplicate entries in irq priorities davinci: DM365: fixed second serial port Davinci: tnetv107x evm board initial support Davinci: tnetv107x initial gpio support Davinci: tnetv107x soc support Davinci: tnetv107x decompresser uart definitions Davinci: generalized debug macros commit 38f51568005873a241a8ae6bf28c9ddd3f6a11ed Author: Namhyung Kim Date: Sun Aug 8 14:24:09 2010 +0200 workqueue: add missing __percpu markup in kernel/workqueue.c works in schecule_on_each_cpu() is a percpu pointer but was missing __percpu markup. Add it. Signed-off-by: Namhyung Kim Signed-off-by: Tejun Heo commit 16d884bd901288fb5cde876489f7093740b66a30 Author: Amit Kumar Salecha Date: Sat Aug 7 23:05:23 2010 -0700 netxen: protect tx timeout recovery by rtnl lock Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 8bcfbd0af0f8ee50033091e75ab3d6b6e7fa8867 Author: Dan Carpenter Date: Thu Aug 5 22:21:26 2010 +0000 isdn: gigaset: use after free I moved the kfree(cb) below the dereferences. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 7e27a0aeb98d53539bdc38384eee899d6db62617 Author: Dan Carpenter Date: Thu Aug 5 22:23:23 2010 +0000 isdn: gigaset: add missing unlock We should unlock here. This is the only place where we return from the function with the lock held. The caller isn't expecting it. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 1f6ea6e511e5ec730d8e88651da1b7b6e8fd1333 Author: David Woodhouse Date: Sat Aug 7 23:02:59 2010 -0700 solos-pci: Fix race condition in tasklet RX handling We were seeing faults in the solos-pci receive tasklet when packets arrived for a VCC which was currently being closed: [18842.727906] EIP: [] br2684_push+0x19/0x234 [br2684] SS:ESP 0068:dfb89d14 [18845.090712] [] ? do_page_fault+0x0/0x2e1 [18845.120042] [] ? br2684_push+0x19/0x234 [br2684] [18845.153530] [] solos_bh+0x28b/0x7c8 [solos_pci] [18845.186488] [] ? solos_irq+0x2d/0x51 [solos_pci] [18845.219960] [] ? handle_irq+0x3b/0x48 [18845.247732] [] ? irq_exit+0x34/0x57 [18845.274437] [] tasklet_action+0x42/0x69 [18845.303247] [] __do_softirq+0x8e/0x129 [18845.331540] [] do_softirq+0x25/0x2a [18845.358274] [] _local_bh_enable_ip+0x5e/0x6a [18845.389677] [] local_bh_enable+0xb/0xe [18845.417944] [] ppp_unregister_channel+0x32/0xbb [ppp_generic] [18845.458193] [] pppox_unbind_sock+0x18/0x1f [pppox] This patch uses an RCU-inspired approach to fix it. In the RX tasklet's find_vcc() function we first refuse to use a VCC which already has the ATM_VF_READY bit cleared. And in the VCC close function, we synchronise with the tasklet to ensure that it can't still be using the VCC before we continue and allow the VCC to be destroyed. Signed-off-by: David Woodhouse Tested-by: Nathan Williams Cc: stable@kernel.org Signed-off-by: David S. Miller commit eb4a5527b1f0d581ac217c80ef3278ed5e38693c Author: Jarek Poplawski Date: Fri Aug 6 00:22:35 2010 +0000 pkt_sched: Fix sch_sfq vs tcf_bind_filter oops Since there was added ->tcf_chain() method without ->bind_tcf() to sch_sfq class options, there is oops when a filter is added with the classid parameter. Fixes commit 7d2681a6ff4f9ab5e48d02550b4c6338f1638998 netdev thread: null pointer at cls_api.c Signed-off-by: Jarek Poplawski Reported-by: Franchoze Eric Signed-off-by: David S. Miller commit cece1945bffcf1a823cdfa36669beae118419351 Author: Changli Gao Date: Sat Aug 7 20:35:43 2010 -0700 net: disable preemption before call smp_processor_id() Although netif_rx() isn't expected to be called in process context with preemption enabled, it'd better handle this case. And this is why get_cpu() is used in the non-RPS #ifdef branch. If tree RCU is selected, rcu_read_lock() won't disable preemption, so preempt_disable() should be called explictly. Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit ba78e2ddca844598c0efcbf2c76d73519a61b902 Author: Dmitry Popov Date: Sat Aug 7 20:24:28 2010 -0700 tcp: no md5sig option size check bug tcp_parse_md5sig_option doesn't check md5sig option (TCPOPT_MD5SIG) length, but tcp_v[46]_inbound_md5_hash assume that it's at least 16 bytes long. Signed-off-by: Dmitry Popov Signed-off-by: David S. Miller commit 2d53056973079e6c2ffc0d7ae3afbdd3d4f18ae3 Merge: 9e50ab9 e78483c Author: Linus Torvalds Date: Sat Aug 7 17:09:24 2010 -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: (82 commits) firewire: core: add forgotten dummy driver methods, remove unused ones firewire: add isochronous multichannel reception firewire: core: small clarifications in core-cdev firewire: core: remove unused code firewire: ohci: release channel in error path firewire: ohci: use memory barriers to order descriptor updates tools/firewire: nosy-dump: increment program version tools/firewire: nosy-dump: remove unused code tools/firewire: nosy-dump: use linux/firewire-constants.h tools/firewire: nosy-dump: break up a deeply nested function tools/firewire: nosy-dump: make some symbols static or const tools/firewire: nosy-dump: change to kernel coding style tools/firewire: nosy-dump: work around segfault in decode_fcp tools/firewire: nosy-dump: fix it on x86-64 tools/firewire: add userspace front-end of nosy firewire: nosy: note ioctls in ioctl-number.txt firewire: nosy: use generic printk macros firewire: nosy: endianess fixes and annotations firewire: nosy: annotate __user pointers and __iomem pointers firewire: nosy: fix device shutdown with active client ... commit 9e50ab91d025afc17ca14a1764be2e1d0c24245d Merge: 3cc08fc a0d4687 Author: Linus Torvalds Date: Sat Aug 7 17:08:30 2010 -0700 Merge branch 'acpica' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'acpica' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (27 commits) ACPI / ACPICA: Simplify acpi_ev_initialize_gpe_block() ACPI / ACPICA: Fail acpi_gpe_wakeup() if ACPI_GPE_CAN_WAKE is unset ACPI / ACPICA: Do not execute _PRW methods during initialization ACPI: Fix bogus GPE test in acpi_bus_set_run_wake_flags() ACPICA: Update version to 20100702 ACPICA: Fix for Alias references within Package objects ACPICA: Fix lint warning for 64-bit constant ACPICA: Remove obsolete GPE function ACPICA: Update debug output components ACPICA: Add support for WDDT - Watchdog Descriptor Table ACPICA: Drop acpi_set_gpe ACPICA: Use low-level GPE enable during GPE block initialization ACPI / EC: Do not use acpi_set_gpe ACPI / EC: Drop suspend and resume routines ACPICA: Remove wakeup GPE reference counting which is not used ACPICA: Introduce acpi_gpe_wakeup() ACPICA: Rename acpi_hw_gpe_register_bit ACPICA: Update version to 20100528 ACPICA: Add signatures for undefined tables: ATKG, GSCI, IEIT ACPICA: Optimization: Reduce the number of namespace walks ... commit 3cc08fc35db75b059118626c30b60b0f56583802 Merge: faa38b5 03b37ec Author: Linus Torvalds Date: Sat Aug 7 17:08:02 2010 -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: (42 commits) IB/qib: Add missing include IB/ehca: Drop unnecessary NULL test RDMA/nes: Fix confusing if statement indentation IB/ehca: Init irq tasklet before irq can happen RDMA/nes: Fix misindented code RDMA/nes: Fix showing wqm_quanta RDMA/nes: Get rid of "set but not used" variables RDMA/nes: Read firmware version from correct place IB/srp: Export req_lim via sysfs IB/srp: Make receive buffer handling more robust IB/srp: Use print_hex_dump() IB: Rename RAW_ETY to RAW_ETHERTYPE RDMA/nes: Fix two sparse warnings RDMA/cxgb3: Make needlessly global iwch_l2t_send() static IB/iser: Make needlessly global iser_alloc_rx_descriptors() static RDMA/cxgb4: Add timeouts when waiting for FW responses IB/qib: Fix race between qib_error_qp() and receive packet processing IB/qib: Limit the number of packets processed per interrupt IB/qib: Allow writes to the diag_counters to be able to clear them IB/qib: Set cfgctxts to number of CPUs by default ... commit faa38b5e0e092914764cdba9f83d31a3f794d182 Merge: 7841733 74bf40f Author: Linus Torvalds Date: Sat Aug 7 17:07:31 2010 -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: (214 commits) ALSA: hda - Add pin-fix for HP dc5750 ALSA: als4000: Fix potentially invalid DMA mode setup ALSA: als4000: enable burst mode ALSA: hda - Fix initial capsrc selection in patch_alc269() ASoC: TWL4030: Capture route runtime DAPM ordering fix ALSA: hda - Add PC-beep whitelist for an Intel board ALSA: hda - More relax for pending period handling ALSA: hda - Define AC_FMT_* constants ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs ALSA: hda - Add support for HDMI HBR passthrough ALSA: hda - Set Stream Type in Stream Format according to AES0 ALSA: hda - Fix Thinkpad X300 so SPDIF is not exposed ALSA: hda - FIX to not expose SPDIF on Thinkpad X301, since it does not have the ability to use SPDIF ASoC: wm9081: fix resource reclaim in wm9081_register error path ASoC: wm8978: fix a memory leak if a wm8978_register fail ASoC: wm8974: fix a memory leak if another WM8974 is registered ASoC: wm8961: fix resource reclaim in wm8961_register error path ASoC: wm8955: fix resource reclaim in wm8955_register error path ASoC: wm8940: fix a memory leak if wm8940_register return error ASoC: wm8904: fix resource reclaim in wm8904_register error path ... commit 78417334b5cb6e1f915b8fdcc4fce3f1a1b4420c Merge: cd816a0 5f202bd Author: Linus Torvalds Date: Sat Aug 7 17:06:54 2010 -0700 Merge branch 'bkl/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing * 'bkl/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing: do_coredump: Do not take BKL init: Remove the BKL from startup code commit cd816a0d84377c4e87f55cbe934a23417f9f5743 Merge: 0d9f9e1 a7a387c Author: Linus Torvalds Date: Sat Aug 7 14:28:20 2010 -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: SELINUX: Fix build error. commit 0d9f9e122c74583de15a86d1c660c08dc298f2c8 Merge: df44f9f 998db52 Author: Linus Torvalds Date: Sat Aug 7 14:24:41 2010 -0700 Merge branch 'for-2.6.36' of git://linux-nfs.org/~bfields/linux * 'for-2.6.36' of git://linux-nfs.org/~bfields/linux: (34 commits) nfsd4: fix file open accounting for RDWR opens nfsd: don't allow setting maxblksize after svc created nfsd: initialize nfsd versions before creating svc net: sunrpc: removed duplicated #include nfsd41: Fix a crash when a callback is retried nfsd: fix startup/shutdown order bug nfsd: minor nfsd read api cleanup gcc-4.6: nfsd: fix initialized but not read warnings nfsd4: share file descriptors between stateid's nfsd4: fix openmode checking on IO using lock stateid nfsd4: miscellaneous process_open2 cleanup nfsd4: don't pretend to support write delegations nfsd: bypass readahead cache when have struct file nfsd: minor nfsd_svc() cleanup nfsd: move more into nfsd_startup() nfsd: just keep single lockd reference for nfsd nfsd: clean up nfsd_create_serv error handling nfsd: fix error handling in __write_ports_addxprt nfsd: fix error handling when starting nfsd with rpcbind down nfsd4: fix v4 state shutdown error paths ... commit df44f9f4f9b5d362b5a2d1c8444fe7e6d4c42653 Author: David Howells Date: Fri Aug 6 17:26:48 2010 +0100 AFS: Fix the module init error handling Fix the module init error handling. There are a bunch of goto labels for aborting the init procedure at different points and just undoing what needs undoing - they aren't all in the right places, however. This can lead to an oops like the following: BUG: unable to handle kernel NULL pointer dereference at 0000000000000020 IP: [] destroy_workqueue+0x17/0xc0 ... Modules linked in: kafs(+) dns_resolver rxkad af_rxrpc fscache Pid: 2171, comm: insmod Not tainted 2.6.35-cachefs+ #319 DG965RY/ ... Process insmod (pid: 2171, threadinfo ffff88003ca6a000, task ffff88003dcc3050) ... Call Trace: [] afs_callback_update_kill+0x10/0x12 [kafs] [] afs_init+0x190/0x1ce [kafs] [] ? afs_init+0x0/0x1ce [kafs] [] do_one_initcall+0x59/0x14e [] sys_init_module+0x9c/0x1de [] system_call_fastpath+0x16/0x1b Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 5df6b8e65ad0f2eaee202ff002ac00d1ac605315 Merge: fe21ea1 3dce9a5 Author: Linus Torvalds Date: Sat Aug 7 13:19:36 2010 -0700 Merge branch 'nfs-for-2.6.36' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 * 'nfs-for-2.6.36' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (42 commits) NFS: NFSv4.1 is no longer a "developer only" feature NFS: NFS_V4 is no longer an EXPERIMENTAL feature NFS: Fix /proc/mount for legacy binary interface NFS: Fix the locking in nfs4_callback_getattr SUNRPC: Defer deleting the security context until gss_do_free_ctx() SUNRPC: prevent task_cleanup running on freed xprt SUNRPC: Reduce asynchronous RPC task stack usage SUNRPC: Move the bound cred to struct rpc_rqst SUNRPC: Clean up of rpc_bindcred() SUNRPC: Move remaining RPC client related task initialisation into clnt.c SUNRPC: Ensure that rpc_exit() always wakes up a sleeping task SUNRPC: Make the credential cache hashtable size configurable SUNRPC: Store the hashtable size in struct rpc_cred_cache NFS: Ensure the AUTH_UNIX credcache is allocated dynamically NFS: Fix the NFS users of rpc_restart_call() SUNRPC: The function rpc_restart_call() should return success/failure NFSv4: Get rid of the bogus RPC_ASSASSINATED(task) checks NFSv4: Clean up the process of renewing the NFSv4 lease NFSv4.1: Handle NFS4ERR_DELAY on SEQUENCE correctly NFS: nfs_rename() should not have to flush out writebacks ... commit fe21ea18c742ab0eb8f6f8ebc543374839a02a87 Merge: a57f9a3 2d45ba3 Author: Linus Torvalds Date: Sat Aug 7 13:18:36 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse: fuse: add retrieve request fuse: add store request fuse: don't use atomic kmap commit a57f9a3e811cf1246b394f0cc667c6bc5a52e099 Merge: 09dc942 89c0fd0 Author: Linus Torvalds Date: Sat Aug 7 13:10:55 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: (45 commits) nilfs2: reject filesystem with unsupported block size nilfs2: avoid rec_len overflow with 64KB block size nilfs2: simplify nilfs_get_page function nilfs2: reject incompatible filesystem nilfs2: add feature set fields to super block nilfs2: clarify byte offset in super block format nilfs2: apply read-ahead for nilfs_btree_lookup_contig nilfs2: introduce check flag to btree node buffer nilfs2: add btree get block function with readahead option nilfs2: add read ahead mode to nilfs_btnode_submit_block nilfs2: fix buffer head leak in nilfs_btnode_submit_block nilfs2: eliminate inline keywords in btree implementation nilfs2: get maximum number of child nodes from bmap object nilfs2: reduce repetitive calculation of max number of child nodes nilfs2: optimize calculation of min/max number of btree node children nilfs2: remove redundant pointer checks in bmap lookup functions nilfs2: get rid of nilfs_bmap_union nilfs2: unify bmap set_target_v operations nilfs2: get rid of nilfs_btree uses nilfs2: get rid of nilfs_direct uses ... commit 09dc942c2a767e2d298f1cc9294bc19c7d7208c5 Merge: 90e0c22 6c7a120 Author: Linus Torvalds Date: Sat Aug 7 13:03:53 2010 -0700 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (40 commits) ext4: Adding error check after calling ext4_mb_regular_allocator() ext4: Fix dirtying of journalled buffers in data=journal mode ext4: re-inline ext4_rec_len_(to|from)_disk functions jbd2: Remove t_handle_lock from start_this_handle() jbd2: Change j_state_lock to be a rwlock_t jbd2: Use atomic variables to avoid taking t_handle_lock in jbd2_journal_stop ext4: Add mount options in superblock ext4: force block allocation on quota_off ext4: fix freeze deadlock under IO ext4: drop inode from orphan list if ext4_delete_inode() fails ext4: check to make make sure bd_dev is set before dereferencing it jbd2: Make barrier messages less scary ext4: don't print scary messages for allocation failures post-abort ext4: fix EFBIG edge case when writing to large non-extent file ext4: fix ext4_get_blocks references ext4: Always journal quota file modifications ext4: Fix potential memory leak in ext4_fill_super ext4: Don't error out the fs if the user tries to make a file too big ext4: allocate stripe-multiple IOs on stripe boundaries ext4: move aio completion after unwritten extent conversion ... Fix up conflicts in fs/ext4/inode.c as per Ted. Fix up xfs conflicts as per earlier xfs merge. commit 90e0c225968f0878e090c7ff3f88323973476cee Merge: 938a73b 5f11e6a Author: Linus Torvalds Date: Sat Aug 7 12:57:07 2010 -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: ext3: Fix dirtying of journalled buffers in data=journal mode ext3: default to ordered mode quota: Use mark_inode_dirty_sync instead of mark_inode_dirty quota: Change quota error message to print out disk and function name MAINTAINERS: Update entries of ext2 and ext3 MAINTAINERS: Update address of Andreas Dilger ext3: Avoid filesystem corruption after a crash under heavy delete load ext3: remove vestiges of nobh support ext3: Fix set but unused variables quota: clean up quota active checks quota: Clean up the namespace in dqblk_xfs.h quota: check quota reservation on remove_dquot_ref commit 938a73b959cf77aadc41bded3bf416b618aa20b3 Merge: 45480aa f70cb33 Author: Linus Torvalds Date: Sat Aug 7 12:56:48 2010 -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: fs/dlm: Drop unnecessary null test dlm: use genl_register_family_with_ops() commit 45480aa75b03d6705ab5ceebda9d09be22f4e928 Merge: 1fc7995 581b7e9 Author: Linus Torvalds Date: Sat Aug 7 12:56:27 2010 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6: udf: super.c Fix warning: variable 'sbi' set but not used udf: remove duplicated #include commit 1fc7995d19139d6f99203b43c161968f3f554a15 Merge: 3b7433b 5227bbb Author: Linus Torvalds Date: Sat Aug 7 12:54:46 2010 -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: [DNS RESOLVER] Minor typo correction DNS: Fixes for the DNS query module cifs: Include linux/err.h for IS_ERR and PTR_ERR DNS: Make AFS go to the DNS for AFSDB records for unknown cells DNS: Separate out CIFS DNS Resolver code cifs: account for new creduid=0x%x parameter in spnego upcall string cifs: reduce false positives with inode aliasing serverino autodisable CIFS: Make cifs_convert_address() take a const src pointer and a length cifs: show features compiled in as part of DebugData cifs: update README Fix up trivial conflicts in fs/cifs/cifsfs.c due to workqueue changes commit 3b7433b8a8a83c87972065b1852b7dcae691e464 Merge: 4a386c3 6ee0578 Author: Linus Torvalds Date: Sat Aug 7 12:42:58 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits) workqueue: mark init_workqueues() as early_initcall() workqueue: explain for_each_*cwq_cpu() iterators fscache: fix build on !CONFIG_SYSCTL slow-work: kill it gfs2: use workqueue instead of slow-work drm: use workqueue instead of slow-work cifs: use workqueue instead of slow-work fscache: drop references to slow-work fscache: convert operation to use workqueue instead of slow-work fscache: convert object to use workqueue instead of slow-work workqueue: fix how cpu number is stored in work->data workqueue: fix mayday_mask handling on UP workqueue: fix build problem on !CONFIG_SMP workqueue: fix locking in retry path of maybe_create_worker() async: use workqueue for worker pool workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead workqueue: implement unbound workqueue workqueue: prepare for WQ_UNBOUND implementation libata: take advantage of cmwq and remove concurrency limitations workqueue: fix worker management invocation without pending works ... Fixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in include/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c commit 998db52c03cd293d16a457f1b396cea932244147 Author: J. Bruce Fields Date: Sat Aug 7 09:21:41 2010 -0400 nfsd4: fix file open accounting for RDWR opens Commit f9d7562fdb9dc0ada3a7aba5dbbe9d965e2a105d "nfsd4: share file descriptors between stateid's" didn't correctly account for O_RDWR opens. Symptoms include leaked files, resulting in failures to unmount and/or warnings about orphaned inodes on reboot. Signed-off-by: J. Bruce Fields commit ee110066130b79b7abf63bbd836d382699252b81 Author: Grant Likely Date: Fri Aug 6 20:49:20 2010 -0600 powerpc: fix i8042 module build error of_i8042_{kbd,aux}_irq needs to be exported Signed-off-by: Grant Likely commit 949ad0a783729ad8c2e8e5bcbbad5d05a60de616 Author: Eric Millbrandt Date: Fri Aug 6 20:49:19 2010 -0600 sound/soc: mpc5200_psc_ac97: Use gpio pins for cold reset Call the gpio reset platform function instead of using the flawed ac97 functionality of the MPC5200(b) From MPC5200B User's Manual: "Some AC97 devices goes to a test mode, if the Sync line is high during the Res line is low (reset phase). To avoid this behavior the Sync line must be also forced to zero during the reset phase. To do that, the pin muxing should switch to GPIO mode and the GPIO control register should be used to control the output lines." Signed-off-by: Eric Millbrandt Signed-off-by: Grant Likely commit cfa6a88c83f639f17b96a34dc0bf93faf432e73a Author: Eric Millbrandt Date: Fri Aug 6 20:49:18 2010 -0600 powerpc/5200: add mpc5200_psc_ac97_gpio_reset Work around a silicon bug in the ac97 reset functionality of the mpc5200(b). The implementation of the ac97 "cold" reset is flawed. If the sync and output lines are high when reset is asserted the attached ac97 device may go into test mode. Avoid this by reconfiguring the psc to gpio mode and generating the reset manually. From MPC5200B User's Manual: "Some AC97 devices goes to a test mode, if the Sync line is high during the Res line is low (reset phase). To avoid this behavior the Sync line must be also forced to zero during the reset phase. To do that, the pin muxing should switch to GPIO mode and the GPIO control register should be used to control the output lines." Signed-off-by: Eric Millbrandt Signed-off-by: Grant Likely commit 4a386c3e177ca2fbc70c9283d0b46537844763a0 Merge: e877977 1cff92d Author: Linus Torvalds Date: Fri Aug 6 16:25:13 2010 -0700 Merge branch 'x86-xsave-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-xsave-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, xsave: Make xstate_enable_boot_cpu() __init, protect on CPU 0 x86, xsave: Add __init attribute to setup_xstate_features() x86, xsave: Make init_xstate_buf static x86, xsave: Check cpuid level for XSTATE_CPUID (0x0d) x86, xsave: Introduce xstate enable functions x86, xsave: Separate fpu and xsave initialization x86, xsave: Move boot cpu initialization to xsave_init() x86, xsave: 32/64 bit boot cpu check unification in initialization x86, xsave: Do not include asm/i387.h in asm/xsave.h x86, xsave: Use xsaveopt in context-switch path when supported x86, xsave: Sync xsave memory layout with its header for user handling x86, xsave: Track the offset, size of state in the xsave layout commit e8779776afbd5f2d5315cf48c4257ca7e9b250fb Merge: 3cf8ad3 a2d7b0d Author: Linus Torvalds Date: Fri Aug 6 16:24:51 2010 -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 HW_ERR in MCE handler x86, mce: Add HW_ERR printk prefix for hardware error logging x86, mce: Fix MSR_IA32_MCI_CTL2 CMCI threshold setup x86, mce: Rename MSR_IA32_MCx_CTL2 value commit 3cf8ad3394b8675e92a35c438f22341197535531 Merge: 66cd55d 54e5bc0 Author: Linus Torvalds Date: Fri Aug 6 16:24:34 2010 -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: Constify an olpc_ofw() arg x86, olpc: Use pr_debug() for EC commands x86, olpc: Add comment about implicit optimization barrier x86, olpc: Add support for calling into OpenFirmware commit 66cd55d2b903643cbd019ef97a5305d9428d3865 Merge: 75cb5fd 3b770a2 Author: Linus Torvalds Date: Fri Aug 6 16:24:17 2010 -0700 Merge branch 'x86-alternatives-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-alternatives-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, alternatives: BUG on encountering an invalid CPU feature number x86, alternatives: Fix one more open-coded 8-bit alternative number x86, alternatives: Use 16-bit numbers for cpufeature index commit 75cb5fdce29c77ec54db45f0c6be7cc5715f8e15 Merge: ce06ea8 b269108 9f242dc 68f202e 5bbd4a33 8e221b6 be783a4 Author: Linus Torvalds Date: Fri Aug 6 16:22:59 2010 -0700 Merge branches 'x86-cleanups-for-linus', 'x86-vmware-for-linus', 'x86-mtrr-for-linus', 'x86-apic-for-linus', 'x86-fpu-for-linus' and 'x86-vdso-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: Clean up arch/x86/kernel/cpu/mtrr/cleanup.c: use ";" not "," to terminate statements * 'x86-vmware-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, vmware: Preset lpj values when on VMware. * 'x86-mtrr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, mtrr: Use stop machine context to rendezvous all the cpu's * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86/apic/es7000_32: Remove unused variable * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Avoid unnecessary __clear_user() and xrstor in signal handling * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, vdso: Unmap vdso pages commit ce06ea8339de1dca3455e9c89c56ea161988ab71 Merge: 1787985 9261ec1 Author: Linus Torvalds Date: Fri Aug 6 16:15:12 2010 -0700 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: console: Fix compilation regression commit a7a387cc596278af1516c534b50cc0bee171129d Author: Ralf Baechle Date: Fri Aug 6 20:37:56 2010 +0100 SELINUX: Fix build error. Fix build error caused by a stale security/selinux/av_permissions.h in the $(src) directory which will override a more recent version in $(obj) that is it appears to strike only when building with a separate object directory. Signed-off-by: Ralf Baechle Acked-by: Eric Paris Signed-off-by: James Morris commit 7fa53cc872332b265bc5ba1266f39586f218ad4a Author: J. Bruce Fields Date: Fri Aug 6 18:00:33 2010 -0400 nfsd: don't allow setting maxblksize after svc created It's harmless to set this after the server is created, but also ineffective, since the value is only used at the time of svc_create_pooled(). So fail the attempt, in keeping with the pattern set by write_versions, write_{lease,grace}time and write_recoverydir. (This could break userspace that tried to write to nfsd/max_block_size between setting up sockets and starting the server. However, such code wouldn't have worked anyway, and I don't know of any examples--rpc.nfsd in nfs-utils, probably the only user of the interface, doesn't do that.) Signed-off-by: J. Bruce Fields commit e844a7b9805a2b74cfd34c8604f5bba3e0869305 Author: J. Bruce Fields Date: Fri Aug 6 15:48:03 2010 -0400 nfsd: initialize nfsd versions before creating svc Commit 59db4a0c102e0de226a3395dbf25ea51bf845937 "nfsd: move more into nfsd_startup()" inadvertently moved nfsd_versions after nfsd_create_svc(). On older distributions using an rpc.nfsd that does not explicitly set the list of nfsd versions, this results in svc-create_pooled() being called with an empty versions array. The resulting incomplete initialization leads to a NULL dereference in svc_process_common() the first time a client accesses the server. Move nfsd_reset_versions() back before the svc_create_pooled(); this time, put it closer to the svc_create_pooled() call, to make this mistake more difficult in the future. Signed-off-by: J. Bruce Fields commit e2aa7f8304b3b5656ded8699216cc65138d03b64 Author: Andrea Gelmini Date: Thu Aug 5 15:51:36 2010 +0200 net: sunrpc: removed duplicated #include Signed-off-by: Andrea Gelmini Signed-off-by: J. Bruce Fields commit c18c821fd40ad0ffc199a55be874e556bf999416 Author: Boaz Harrosh Date: Tue Jun 29 14:33:55 2010 +0300 nfsd41: Fix a crash when a callback is retried If a callback is retried at nfsd4_cb_recall_done() due to some error, the returned rpc reply crashes here: @@ -514,6 +514,7 @@ decode_cb_sequence(struct xdr_stream *xdr, struct nfsd4_cb_sequence *res, u32 dummy; __be32 *p; + BUG_ON(!res); if (res->cbs_minorversion == 0) return 0; [BUG_ON added for demonstration] This is because the nfsd4_cb_done_sequence() has NULLed out the task->tk_msg.rpc_resp pointer. Also eventually the rpc would use the new slot without making sure it is free by calling nfsd41_cb_setup_sequence(). This problem was introduced by a 4.1 protocol addition patch: [0421b5c5] nfsd41: Backchannel: Implement cb_recall over NFSv4.1 Which was overlooking the possibility of an RPC callback retries. For not-4.1 case redoing the _prepare is harmless. Signed-off-by: Boaz Harrosh Signed-off-by: J. Bruce Fields commit 774f8bbd9ef2e71d4ef4b89933d292091d31ca98 Author: J. Bruce Fields Date: Mon Aug 2 14:12:44 2010 -0400 nfsd: fix startup/shutdown order bug We must create the server before we can call init_socks or check the number of threads. Symptoms were a NULL pointer dereference in nfsd_svc(). Problem identified by Jeff Layton. Also fix a minor cleanup-on-error case in nfsd_startup(). Reported-by: Tetsuo Handa Signed-off-by: J. Bruce Fields commit 9261ec1a8d7b17e2540bef7cad3470870d13b61e Author: Jason Wessel Date: Fri Aug 6 15:36:47 2010 -0500 console: Fix compilation regression A regression of building without CONFIG_HW_CONSOLE was introduced with commit b45cfba4e9005d64d419718e7ff7f7cab44c1994 (vt,console,kdb: implement atomic console enter/leave functions). ERROR: "con_debug_enter" [drivers/serial/kgdboc.ko] undefined! ERROR: "vc_cons" [drivers/serial/kgdboc.ko] undefined! ERROR: "fg_console" [drivers/serial/kgdboc.ko] undefined! ERROR: "con_debug_leave" [drivers/serial/kgdboc.ko] undefined! When there is no HW console the con_debug_enter and con_debug_leave functions should have no code. Signed-off-by: Jason Wessel CC: Jesse Barnes Reported-by: Randy Dunlap commit e225567960db50e9810a152c8621c7a6ed94de71 Merge: 4b030d4 a24d52f Author: David S. Miller Date: Fri Aug 6 13:30:43 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 17879857821adad4e180c5d6457c3b8bbf1d0c0c Merge: b62ad9a 4877c73 Author: Linus Torvalds Date: Fri Aug 6 13:25:43 2010 -0700 Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: xen: Do not suspend IPI IRQs. powerpc: Use IRQF_NO_SUSPEND not IRQF_TIMER for non-timer interrupts ixp4xx-beeper: Use IRQF_NO_SUSPEND not IRQF_TIMER for non-timer interrupt irq: Add new IRQ flag IRQF_NO_SUSPEND commit b62ad9ab181a67207a4c8c373461b587c4861a68 Merge: af39008 b292307 Author: Linus Torvalds Date: Fri Aug 6 13:18:29 2010 -0700 Merge branch 'timers-timekeeping-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-timekeeping-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: um: Fix read_persistent_clock fallout kgdb: Do not access xtime directly powerpc: Clean up obsolete code relating to decrementer and timebase powerpc: Rework VDSO gettimeofday to prevent time going backwards clocksource: Add __clocksource_updatefreq_hz/khz methods x86: Convert common clocksources to use clocksource_register_hz/khz timekeeping: Make xtime and wall_to_monotonic static hrtimer: Cleanup direct access to wall_to_monotonic um: Convert to use read_persistent_clock timkeeping: Fix update_vsyscall to provide wall_to_monotonic offset powerpc: Cleanup xtime usage powerpc: Simplify update_vsyscall time: Kill off CONFIG_GENERIC_TIME time: Implement timespec_add x86: Fix vtime/file timestamp inconsistencies Trivial conflicts in Documentation/feature-removal-schedule.txt Much less trivial conflicts in arch/powerpc/kernel/time.c resolved as per Thomas' earlier merge commit 47916be4e28c ("Merge branch 'powerpc.cherry-picks' into timers/clocksource") commit af390084359a5de20046c901529b2b6a50b941cb Merge: 7645e43 0fcb808 Author: Linus Torvalds Date: Fri Aug 6 13:12:36 2010 -0700 Merge branch 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: Documentation: Add timers/timers-howto.txt timer: Added usleep_range timer Revert "timer: Added usleep[_range] timer" clockevents: Remove the per cpu tick skew posix_timer: Move copy_to_user(created_timer_id) down in timer_create() timer: Added usleep[_range] timer timers: Document meaning of deferrable timer commit 7645e4320497b35ce9fb6c2269ebcd57af9fe735 Author: H. Peter Anvin Date: Fri Aug 6 12:18:11 2010 -0700 x86, kvm: Remove cast obsoleted by set_64bit() prototype cleanup KVM ended up having to put a pretty ugly wrapper around set_64bit() in order to get the type right. Now set_64bit() takes the expected u64 type, and this wrapper can be cleaned up. Signed-off-by: H. Peter Anvin Cc: Avi Kivity LKML-Reference: <4C5C4E7A.8040603@kernel.org> Signed-off-by: Linus Torvalds commit 1685e633b396b0f3dabbc9fa5d65dfefe6435250 Merge: 1cfd2bd 127c03c Author: Linus Torvalds Date: Fri Aug 6 12:25:06 2010 -0700 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: pcmcia: avoid buffer overflow in pcmcia_setup_isa_irq pcmcia: do not request windows if you don't need to pcmcia: insert PCMCIA device resources into resource tree pcmcia: export resource information to sysfs pcmcia: use struct resource for PCMCIA devices, part 2 pcmcia: remove memreq_t pcmcia: move local definitions out of include/pcmcia/cs.h pcmcia: do not use io_req_t when calling pcmcia_request_io() pcmcia: do not use io_req_t after call to pcmcia_request_io() pcmcia: use struct resource for PCMCIA devices pcmcia: clean up cs.h pcmcia: use pcmica_{read,write}_config_byte pcmcia: remove cs_types.h pcmcia: remove unused flag, simplify headers pcmcia: remove obsolete CS_EVENT_ definitions pcmcia: split up central event handler pcmcia: simplify event callback pcmcia: remove obsolete ioctl Conflicts in: - drivers/staging/comedi/drivers/* - drivers/staging/wlags49_h2/wl_cs.c due to dev_info_t and whitespace changes commit 1cfd2bda8c486ae0e7a8005354758ebb68172bca Merge: b57bdda 763e9db Author: Linus Torvalds Date: Fri Aug 6 11:44:36 2010 -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: (30 commits) PCI: update for owner removal from struct device_attribute PCI: Fix warnings when CONFIG_DMI unset PCI: Do not run NVidia quirks related to MSI with MSI disabled x86/PCI: use for_each_pci_dev() PCI: use for_each_pci_dev() PCI: MSI: Restore read_msi_msg_desc(); add get_cached_msi_msg_desc() PCI: export SMBIOS provided firmware instance and label to sysfs PCI: Allow read/write access to sysfs I/O port resources x86/PCI: use host bridge _CRS info on ASRock ALiveSATA2-GLAN PCI: remove unused HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_{SIZE|BOUNDARY} PCI: disable mmio during bar sizing PCI: MSI: Remove unsafe and unnecessary hardware access PCI: Default PCIe ASPM control to on and require !EMBEDDED to disable PCI: kernel oops on access to pci proc file while hot-removal PCI: pci-sysfs: remove casts from void* ACPI: Disable ASPM if the platform won't provide _OSC control for PCIe PCI hotplug: make sure child bridges are enabled at hotplug time PCI hotplug: shpchp: Removed check for hotplug of display devices PCI hotplug: pciehp: Fixed return value sign for pciehp_unconfigure_device PCI: Don't enable aspm before drivers have had a chance to veto it ... commit b57bdda58cda0aaf6def042d101dd85977a286ed Merge: cc41f5c 415cb47 Author: Linus Torvalds Date: Fri Aug 6 11:44:08 2010 -0700 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: slub: Allow removal of slab caches during boot Revert "slub: Allow removal of slab caches during boot" slub numa: Fix rare allocation from unexpected node slab: use deferable timers for its periodic housekeeping slub: Use kmem_cache flags to detect if slab is in debugging mode. slub: Allow removal of slab caches during boot slub: Check kasprintf results in kmem_cache_init() SLUB: Constants need UL slub: Use a constant for a unspecified node. SLOB: Free objects to their own list slab: fix caller tracking on !CONFIG_DEBUG_SLAB && CONFIG_TRACING commit cc41f5cede3c63836d1c0958204630b07f5b5ee7 Merge: ab69bcd 9015e49 Author: Linus Torvalds Date: Fri Aug 6 11:41:17 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (524 commits) Staging: wlan-ng: Update prism2_set_tx_power() to use mBm Staging: ti-st: update TODO Staging: wlags49_h2: use common PCI_VENDOR/DEVICE_ID name format Staging: comedi : fix brace coding style issue in wwrap.c Staging: quatech_usb2: remove unused qt2_box_flush function Staging: slicoss: Remove net_device_stats from the driver's private staging: rtl8192su: check whether requests succeeded staging: panel: fix error path staging: otus: check kmalloc() return value staging: octeon: check request_irq() return value Staging: wlan-ng: remove typedef in p80211hdr.h Staging: wlan-ng: fix checkpatch issues in headers. Staging: wlan-ng: remove typedef in p80211ioctl.h Staging: wlan-ng: fix style issues in p80211conv.h Staging: wlan-ng: fix style issues for p80211hdr.h staging: vt6656: removed NTSTATUS definition staging: vt6656: simplified tests involving both multi/broad-casts Staging: vt6655: replace BOOL with in kernel bool Staging: vt6655: replace FALSE with in kernel false Staging: vt6655: replace TRUE with in kernel true ... commit ab69bcd66fb4be64edfc767365cb9eb084961246 Merge: c513b67 6937e8f Author: Linus Torvalds Date: Fri Aug 6 11:36:30 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (28 commits) driver core: device_rename's new_name can be const sysfs: Remove owner field from sysfs struct attribute powerpc/pci: Remove owner field from attribute initialization in PCI bridge init regulator: Remove owner field from attribute initialization in regulator core driver leds: Remove owner field from attribute initialization in bd2802 driver scsi: Remove owner field from attribute initialization in ARCMSR driver scsi: Remove owner field from attribute initialization in LPFC driver cgroupfs: create /sys/fs/cgroup to mount cgroupfs on Driver core: Add BUS_NOTIFY_BIND_DRIVER driver core: fix memory leak on one error path in bus_register() debugfs: no longer needs to depend on SYSFS sysfs: Fix one more signature discrepancy between sysfs implementation and docs. sysfs: fix discrepancies between implementation and documentation dcdbas: remove a redundant smi_data_buf_free in dcdbas_exit dmi-id: fix a memory leak in dmi_id_init error path sysfs: sysfs_chmod_file's attr can be const firmware: Update hotplug script Driver core: move platform device creation helpers to .init.text (if MODULE=n) Driver core: reduce duplicated code for platform_device creation Driver core: use kmemdup in platform_device_add_resources ... commit c513b67e68787eceafeede32bcd0edbee45c0006 Author: Linus Torvalds Date: Fri Aug 6 11:02:31 2010 -0700 pci: fix type warnings in intr_remapping.c Commit 69309a059075 ("x86, asm: Clean up and simplify set_64bit()") sanitized the x86-64 types to set_64bit(), and incidentally resulted in warnings like drivers/pci/intr_remapping.c: In function 'modify_irte': drivers/pci/intr_remapping.c:314: warning: passing argument 1 of 'set_64bit' from incompatible pointer type arch/x86/include/asm/cmpxchg_64.h:6: note:expected 'volatile u64 *' but argument is of type 'long unsigned int *' It turns out that the change to set_64bit() really does clean up things, and the PCI intr_remapping.c file did a rather ugly cast in order to avoid warnings with the previous set_64bit() type model. Removing the ugly cast fixes the warning, and makes everybody happy and expects a set_64bit() to take the logical "u64 *" argument. Pointed-out-by: Peter Anvin Signed-off-by: Linus Torvalds commit a24d52f390a77ce90dc8cf0cd75d27ec0a6ea3f8 Author: Johannes Berg Date: Fri Aug 6 16:17:53 2010 +0200 iwlwifi: fix locking assertions spin_is_locked() can return zero on some (UP?) configurations because locks don't exist, and that causes an endless amount of warnings. Use lockdep_assert_held() instead, which has two advantages: 1) it verifies the current task is holding the lock or mutex 2) it compiles away completely when lockdep is not enabled Cc: stable@kernel.org [2.6.34+, maybe only parts of patch] Reported-by: Thomas Meyer Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e95b743536937a72e1560c85696b425c5d1a1c18 Author: Johannes Berg Date: Fri Aug 6 16:00:48 2010 +0200 iwlwifi: fix TX tracer The TX tracing code copies with the wrong length, which will typically copy too little data. Fix this by using the correct length variable. Cc: stable@kernel.org [2.6.32+] Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3dce9a5c3a39a664e372886ea86c42ae7ae33dfc Author: Trond Myklebust Date: Wed Aug 4 14:39:16 2010 -0400 NFS: NFSv4.1 is no longer a "developer only" feature Mark it as 'experimental' instead, since in practice, NFSv4.1 should now be relatively stable. Signed-off-by: Trond Myklebust commit b3edc2bc19b4856c705f4aea3f5472970b99f386 Author: Trond Myklebust Date: Wed Aug 4 14:38:01 2010 -0400 NFS: NFS_V4 is no longer an EXPERIMENTAL feature Signed-off-by: Trond Myklebust commit d5eff1a3412f6d75bf28f423c5015ece8055407a Author: Bryan Schumaker Date: Tue Aug 3 13:04:00 2010 -0400 NFS: Fix /proc/mount for legacy binary interface Add a flag so we know if we mounted the NFS server using the legacy binary interface. If we used the legacy interface, then we should not show the mountd options. Signed-off-by: Bryan Schumaker Signed-off-by: Trond Myklebust commit 761fe93cdfa29071879d882c92e966ae692c0048 Author: Trond Myklebust Date: Wed Aug 4 09:29:52 2010 -0400 NFS: Fix the locking in nfs4_callback_getattr The delegation is protected by RCU now, so we need to replace the nfsi->rwsem protection with an rcu protected section. Reported-by: Fred Isaman Signed-off-by: Trond Myklebust commit 90c8327cad5d7c2d5d7d3e761d17af1925474107 Merge: a417fb9 b4bcb4c fa10ba6 Author: Linus Torvalds Date: Fri Aug 6 10:22:40 2010 -0700 Merge branches 'x86-rwsem-for-linus' and 'x86-gcc46-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-rwsem-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, rwsem: Minor cleanups x86, rwsem: Stay on fast path when count > 0 in __up_write() * 'x86-gcc46-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, gcc-4.6: Fix set but not read variables x86, gcc-4.6: Avoid unused by set variables in rdmsr commit a417fb99dea8ee47e72060fb36e5f3ff4ea54a5b Merge: 9faa1e5 6238b47 Author: Linus Torvalds Date: Fri Aug 6 10:20:47 2010 -0700 Merge branch 'x86-setup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-setup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, setup: move isdigit.h to ctype.h, header files on top. x86, setup: enable early console output from the decompressor x86, setup: reorganize the early console setup x86, setup: Allow global variables and functions in the decompressor x86, setup: Only set early_serial_base after port is initialized x86, setup: Make the setup code also accept console=uart8250 x86, setup: Early-boot serial I/O support commit 9faa1e5942fd647b0dd2fbbdcc04988841cacaf3 Merge: d9a73c0 3709c85 Author: Linus Torvalds Date: Fri Aug 6 10:17:52 2010 -0700 Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Ioremap: fix wrong physical address handling in PAT code x86, tlb: Clean up and correct used type x86, iomap: Fix wrong page aligned size calculation in ioremapping code x86, mm: Create symbolic index into address_markers array x86, ioremap: Fix normal ram range check x86, ioremap: Fix incorrect physical address handling in PAE mode x86-64, mm: Initialize VDSO earlier on 64 bits x86, kmmio/mmiotrace: Fix double free of kmmio_fault_pages commit d9a73c00161f3eaa4c8c035c62f45afd1549e38a Merge: b304441 bf67694 Author: Linus Torvalds Date: Fri Aug 6 10:07:34 2010 -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: um, x86: Cast to (u64 *) inside set_64bit() x86-32, asm: Directly access per-cpu GDT x86-64, asm: Directly access per-cpu IST x86, asm: Merge cmpxchg_486_u64() and cmpxchg8b_emu() x86, asm: Move cmpxchg emulation code to arch/x86/lib x86, asm: Clean up and simplify x86, asm: Clean up and simplify set_64bit() x86: Add memory modify constraints to xchg() and cmpxchg() x86-64: Simplify loading initial_gs x86: Use symbolic MSR names x86: Remove redundant K6 MSRs commit b304441c6f3a5cb5ea80b9a719d2851544f348d6 Merge: f7ddc2b 18642a5 Author: Linus Torvalds Date: Fri Aug 6 10:06:47 2010 -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, vdso: Don't quote $nm in the script for checking vdso references x86, vdso: Error out if the vdso contains external references commit f7ddc2b6cd880a259db338925d03bdc01f1d26c1 Merge: a5e1159 1467138 Author: Linus Torvalds Date: Fri Aug 6 10:06:28 2010 -0700 Merge branch 'x86-mrst-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-mrst-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, mrst: make mrst_timer_options an enum x86, mrst: make mrst_identify_cpu() an inline returning enum x86, mrst: add more timer config options x86, mrst: add cpu type detection x86: detect scattered cpuid features earlier commit a5e11599da95fbe8425db0cfd01a581d7412d0c9 Merge: 0f477dd a315986 Author: Linus Torvalds Date: Fri Aug 6 10:02:58 2010 -0700 Merge branch 'x86-hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, hwmon: Package Level Thermal/Power: pkgtemp documentation x86, hwmon: Package Level Thermal/Power: power limit x86, hwmon: Package Level Thermal/Power: thermal throttling handler x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver commit 0f477dd0851bdcee82923da66a7fc4a44cb1bc3d Merge: c4efd6b e8c534e Author: Linus Torvalds Date: Fri Aug 6 10:02:36 2010 -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: Fix keeping track of AMD C1E x86, cpu: Package Level Thermal Control, Power Limit Notification definitions x86, cpu: Export AMD errata definitions x86, cpu: Use AMD errata checking framework for erratum 383 x86, cpu: Clean up AMD erratum 400 workaround x86, cpu: AMD errata checking framework x86, cpu: Split addon_cpuid_features.c x86, cpu: Clean up formatting in cpufeature.h, remove override x86, cpu: Enumerate xsaveopt x86, cpu: Add xsaveopt cpufeature x86, cpu: Make init_scattered_cpuid_features() consider cpuid subleaves x86, cpu: Support the features flags in new CPUID leaf 7 x86, cpu: Add CPU flags for F16C and RDRND x86: Look for IA32_ENERGY_PERF_BIAS support x86, AMD: Extend support to future families x86, cacheinfo: Carve out L3 cache slot accessors x86, xsave: Cleanup return codes in check_for_xstate() commit aab2393e2ec52c74b419af7c26a12e21584e483b Author: Mike Frysinger Date: Fri Aug 6 11:36:37 2010 -0400 Blackfin: gpio: add a debounce stub The GPIO API was extended recently to include debounce functions, but since the on-chip Blackfin GPIO modules don't support this stuff, make a stub in the non-GPIOLIB case so drivers build properly. Signed-off-by: Mike Frysinger commit bad6b094ad995b1c3d8ddfab4605ea4b049407b0 Author: Mike Frysinger Date: Tue Aug 3 02:47:21 2010 -0400 Blackfin: update defconfigs Signed-off-by: Mike Frysinger commit efbd24b5b050c586c059ee68c57c09996e7be886 Author: Christian Dietrich Date: Mon Aug 2 18:01:58 2010 +0200 Blackfin: remove CONFIG_MEM_GENERIC_BOARD MEM_GENERIC_BOARD depends on GENERIC_BOARD, but this flag was removed in 4f25eb85d64640bc656e72917113a84701521b99, therefore all references to it from the source can be removed. Signed-off-by: Christian Dietrich Signed-off-by: Mike Frysinger commit f619ddd4fe5e6da3c3e97fe21043a4233aa54aee Author: Michael Hennerich Date: Mon Aug 2 08:51:07 2010 +0000 Blackfin: dpmc: punt unnecessary RTC_ISTAT clearing The RTC ISTAT bits do not affect wakeups, and the RTC driver already takes care of clearing this MMR when necessary. So drop the useless clearing in the core Blackfin power code. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit 39750324053c2aa4314e460b5ce1767f4dfbeff1 Author: Mike Frysinger Date: Thu Jul 29 05:53:33 2010 +0000 Blackfin: unify rotary encoder bitmasks Avoid duplication and ugly global namespace pollution. Signed-off-by: Mike Frysinger commit c385acceb4db55a492cb16b24b6102af90348440 Author: Mike Frysinger Date: Thu Jul 29 05:28:32 2010 +0000 Blackfin: unify SDH/RSI bitmasks Avoid duplication and ugly global namespace pollution. Signed-off-by: Mike Frysinger commit 2b73a19f2d3391b070d9d9270a9c9d502fe357ce Author: Mike Frysinger Date: Thu Jul 29 02:04:42 2010 +0000 Blackfin: BF54x: tweak DMAC MMR naming to match other ports Signed-off-by: Mike Frysinger commit ba3f5973ce3eb7ef4894ccd3df78c5cb410b17cc Author: Mike Frysinger Date: Wed Jul 28 19:59:03 2010 +0000 Blackfin: TWI: clean up the MMR names The standard short name for control is CTL and not CTRL. Use TWI0_xxx even on parts that only have one TWI bus to keep things simple. Drop all the cdef helpers since the bus driver takes care of everything. Signed-off-by: Mike Frysinger commit ada091729e8737edc3d455681fda9f745cfd2b63 Author: Mike Frysinger Date: Wed Jul 28 19:50:47 2010 +0000 Blackfin: add EVT_OVERRIDE/IPRIO core MMR helpers These were partially defined, so fill out the def/cdef pieces properly. Signed-off-by: Mike Frysinger commit f5074429621ceb0ec42f8116bd51d02c031faf82 Author: Mike Frysinger Date: Wed Jul 21 09:13:02 2010 -0400 Blackfin: add support for dynamic ftrace Signed-off-by: Mike Frysinger commit 67df6cc665dc3441bf5eb2ad7018e969463a2588 Author: Mike Frysinger Date: Mon Jul 19 05:37:54 2010 +0000 Blackfin: add support for LZO compressed kernels Signed-off-by: Mike Frysinger commit 382dbe5b39a4efa6fdb3e5093e5d0bdbb5c5301f Author: Michael Hennerich Date: Tue Jul 13 08:26:10 2010 +0000 Blackfin: portmux: fix peripheral map overflow when requesting pins Some processors have groups of pins that aren't an even number of 16. This causes the array size calculation to under count the number of needed entries due to integer truncation. So on the BF51x, while we should have 3 bitmaps (41 / 16), we end up with 2 and pin requests for the 3rd bank end up scribbling over the top of the GPIO IRQ array. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit 3322c7bbf60801da2a22d7bd88865d2dc3bd73ac Author: Michael Hennerich Date: Tue Jul 6 13:57:12 2010 +0000 Blackfin: document SPI CS limitations with CPHA=0 With the Blackfin on-chip SPI peripheral, there is some logic tied to the CPHA bit whether the Slave Select Line is controlled by hardware (CPHA=0) or controlled by software (CPHA=1). However, the Linux SPI bus driver assumes that the Slave Select being asserted during the entire SPI transfer. So explain these small details for people who need certain SPI modes with standard CS behavior. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit 58b0e22ab68d055a9563835daef10fbc9fe8f5ae Author: Michael Hennerich Date: Tue Jul 6 13:01:06 2010 +0000 Blackfin: remove useless and outdated documentation The filesystem and cache files duplicate existing & better documents, and these contain outdated information. So punt them. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit 7a4a207e74d6aeb63a38e9a3f0cfc40223d5c40e Author: Michael Hennerich Date: Mon Jul 5 13:39:16 2010 +0000 Blackfin: BF51x/BF52x: support GPIO Hysteresis/Schmitt Trigger options Newer parts have optional Hysteresis/Schmitt Trigger options to help with dirty signals. So add some kconfig options for tuning this and enable it by default for people. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit 812ae98f0849fbceb32c6d21bcdda42b40264c82 Author: Mike Frysinger Date: Mon Jul 5 08:40:41 2010 +0000 Blackfin: gpio/portmux: clean up whitespace corruption Random tabs instead of spaces, mixes of the two, and unicode spaces instead of ascii spaces. Signed-off-by: Mike Frysinger commit eb9649095f4e81a6535c10377da3d5f48b9ad822 Author: Michael Hennerich Date: Fri Jun 18 08:30:08 2010 +0000 Blackfin: make sure mmiowb inserts a write barrier with SSYNC Add SSYNC to our implementation of I/O write barrier to ensure ordering of I/O space writes. This will make sure that writes following the barrier will arrive after all previous writes. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit d1401e1dc22606a91f577ad3dfd68ae7e60e0357 Author: Michael Hennerich Date: Wed Jun 16 09:12:10 2010 +0000 Blackfin: fix DMA/cache bug when resuming from suspend to RAM The dma_memcpy() function takes care of flushing different caches for us. Normally this is what we want, but when resuming from mem, we don't yet have caches enabled. If these functions happen to be placed into L1 mem (which is what we're trying to relocate), then things aren't going to work. So define a non-cache dma_memcpy() variant to utilize in situations like this. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger commit 502c8a0e07450ff886b80a11150a123bae92f3f7 Author: Mike Frysinger Date: Wed Jun 9 03:02:09 2010 +0000 Blackfin: BF51x: fix handling of PH8 (the "internal" SPI0SEL4 pin) Even though the PH8 pin is only internal to the processor packaging, it can be controlled like any other GPIO pin. Now that we have a proper GPIO define, we can fix the SPI0 CS4 define for the internal SPI flash. Signed-off-by: Mike Frysinger commit 306208f40cde5f835e891976031571b81815b9df Author: Mike Frysinger Date: Tue Jun 8 19:53:45 2010 +0000 Blackfin: add a GPIO_DEFAULT_BOOT_SPI_CS This is parallel to the existing P_DEFAULT_BOOT_SPI_CS, but in terms of the GPIO value so it can be used with the normal gpio API. Signed-off-by: Mike Frysinger commit a13265af99c8c10c61b7713d62d8d163fbf30a94 Author: Mike Frysinger Date: Mon Jun 7 12:22:03 2010 +0000 Blackfin: fix typo in hweight asm Run ONES on the incoming value rather than random garbage. This fixes random crashes with some networking code. Signed-off-by: Mike Frysinger commit 1ae9ab17e7c951eac55ebe40f6f19e7f2470c305 Author: Mike Frysinger Date: Fri Jun 4 05:27:29 2010 +0000 Blackfin: BF51x: fix typo in HWAIT pin define Signed-off-by: Mike Frysinger commit 399408276df23f467dd67ed5b73b81275a753667 Author: Mike Frysinger Date: Wed Jun 2 05:37:10 2010 +0000 Blackfin: BF54x: add ifdef protection to gpio header Signed-off-by: Mike Frysinger commit 332824b8353be3606a7d0bef2451fc85e803cab1 Author: Mike Frysinger Date: Wed Jun 2 04:22:01 2010 +0000 Blackfin: gpio: unify & clean up reserved map handling The duplicated bit banging logic is getting out of hand, so unify the local API to make management a lot easier. This also makes the code a lot easier to follow. Signed-off-by: Mike Frysinger commit 74181295fbc6e65047e85529aa74457d82355ffc Author: Mike Frysinger Date: Thu May 27 22:46:46 2010 +0000 Blackfin: allow cache funcs to be in L1 for IFLUSH Anomaly 05000491 Anomaly 05000491 says that IFLUSH cannot have certain types of memory stalls triggered before it has completed in order to function correctly. One such condition is that it be in L1 instruction. So add a config option to move it there, default it to on, and throw up a warning when it is turned off and this anomaly exists. Since the anomaly should be worked around, we can drop the older method of calling IFLUSH multiple times. Signed-off-by: Mike Frysinger Signed-off-by: Sonic Zhang commit dc7101bbaed644e61aa0056ff572b8d7a58e1ef0 Author: Mike Frysinger Date: Thu May 27 21:47:31 2010 +0000 Blackfin: update anomaly lists to latest public info Signed-off-by: Mike Frysinger commit 5369fba13611118bc380674a410bede0863566f2 Author: Mike Frysinger Date: Thu May 27 22:40:26 2010 +0000 Blackfin: merge anomalies 475 and 220 to follow official lists Design found that these anomalies had the same root issue, so they've merged 475 into 220. We need to do the same to update to the latest anomaly sheets. Signed-off-by: Mike Frysinger commit 1ed181f248dbd26ee1bbbb1e7a61e94f875191ed Author: Mike Frysinger Date: Thu May 27 22:33:46 2010 +0000 Blackfin: move MPU anomaly check to common location Keep all anomaly/arch checks in one place to keep logic simple. Signed-off-by: Mike Frysinger commit d49e8e7e5a6ebc66906e24d7eed04ae0292fcb12 Author: Mike Frysinger Date: Mon May 24 23:15:31 2010 +0000 Blackfin: use common EXCEPTION_TABLE() in vmlinux.lds Rather than do our own thing, use what common code provides. Signed-off-by: Mike Frysinger commit 88a0ade952647fa76c70b12f1b2f095712976833 Author: Mike Frysinger Date: Sat May 22 21:25:39 2010 -0400 Blackfin: stub fpregs dumping The Blackfin processor has no FPU, so there are no FPU regs to dump. Signed-off-by: Mike Frysinger commit f2521ce9ce84d1f10016a8fc91108ef9d3b14d2b Author: Mike Frysinger Date: Sat Dec 26 15:25:56 2009 +0000 Blackfin: new dynamic bfin read/write mmr helpers These are useful when working with C structs of MMRs as the appropriate size is selected based on the given argument. Signed-off-by: Mike Frysinger commit 222f6eb66eb966ac9f21c0224f53b98787529e10 Author: Mike Frysinger Date: Thu Oct 15 03:35:35 2009 +0000 Blackfin: punt NFC MMR bits Now that the NFC driver has its own defines, scrub the ones from the global namespace to avoid ugly collisions with common code. Signed-off-by: Mike Frysinger commit c4efd6b569b2646e1346a08a4c40286f8bcb5f11 Merge: 4aed2fd 0bcfe75 Author: Linus Torvalds Date: Fri Aug 6 09:39:22 2010 -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: (27 commits) sched: Use correct macro to display sched_child_runs_first in /proc/sched_debug sched: No need for bootmem special cases sched: Revert nohz_ratelimit() for now sched: Reduce update_group_power() calls sched: Update rq->clock for nohz balanced cpus sched: Fix spelling of sibling sched, cpuset: Drop __cpuexit from cpu hotplug callbacks sched: Fix the racy usage of thread_group_cputimer() in fastpath_timer_check() sched: run_posix_cpu_timers: Don't check ->exit_state, use lock_task_sighand() sched: thread_group_cputime: Simplify, document the "alive" check sched: Remove the obsolete exit_state/signal hacks sched: task_tick_rt: Remove the obsolete ->signal != NULL check sched: __sched_setscheduler: Read the RLIMIT_RTPRIO value lockless sched: Fix comments to make them DocBook happy sched: Fix fix_small_capacity powerpc: Exclude arch_sd_sibiling_asym_packing() on UP powerpc: Enable asymmetric SMT scheduling on POWER7 sched: Add asymmetric group packing option for sibling domain sched: Fix capacity calculations for SMT4 sched: Change nohz idle load balancing logic to push model ... commit 4aed2fd8e3181fea7c09ba79cf64e7e3f4413bf9 Merge: 3a3527b fc9ea5a Author: Linus Torvalds Date: Fri Aug 6 09:30:52 2010 -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: (162 commits) tracing/kprobes: unregister_trace_probe needs to be called under mutex perf: expose event__process function perf events: Fix mmap offset determination perf, powerpc: fsl_emb: Restore setting perf_sample_data.period perf, powerpc: Convert the FSL driver to use local64_t perf tools: Don't keep unreferenced maps when unmaps are detected perf session: Invalidate last_match when removing threads from rb_tree perf session: Free the ref_reloc_sym memory at the right place x86,mmiotrace: Add support for tracing STOS instruction perf, sched migration: Librarize task states and event headers helpers perf, sched migration: Librarize the GUI class perf, sched migration: Make the GUI class client agnostic perf, sched migration: Make it vertically scrollable perf, sched migration: Parameterize cpu height and spacing perf, sched migration: Fix key bindings perf, sched migration: Ignore unhandled task states perf, sched migration: Handle ignored migrate out events perf: New migration tool overview tracing: Drop cpparg() macro perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call ... Fix up trivial conflicts in Makefile and drivers/cpufreq/cpufreq.c commit 3a3527b6461b1298cc53ce72f336346739297ac8 Merge: cc77b4d a53f4b6 Author: Linus Torvalds Date: Fri Aug 6 09:23:07 2010 -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: Revert "net: Make accesses to ->br_port safe for sparse RCU" mce: convert to rcu_dereference_index_check() net: Make accesses to ->br_port safe for sparse RCU vfs: add fs.h to define struct file lockdep: Add an in_workqueue_context() lockdep-based test function rcu: add __rcu API for later sparse checking rcu: add an rcu_dereference_index_check() tree/tiny rcu: Add debug RCU head objects mm: remove all rcu head initializations fs: remove all rcu head initializations, except on_stack initializations powerpc: remove all rcu head initializations commit cc77b4db0017dab014ad7ea3d297e10f5b5bf028 Merge: 132a4ed 7a42c4f Author: Linus Torvalds Date: Fri Aug 6 09:22:39 2010 -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: x86/amd-iommu: Export cache-coherency capability iommu-api: Extension to check for interrupt remapping x86/amd-iommu: Use for_each_pci_dev() commit 132a4edb2b69924742f62dc06ace42ad2a9f57f3 Merge: e6da54d 752e386 Author: Linus Torvalds Date: Fri Aug 6 09:20:19 2010 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: sata_fsl,mv,nv: prepare for NCQ command completion update ata: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) libata: more PCI IDs for jmicron controllers ata_piix: fix locking around SIDPR access [libata] update blacklist for new hyphenated pattern ranges (v2) libata: allow hyphenated pattern ranges ata_generic: drop hard coded DMA force logic for CENATEK [libata] ahci: Fix warning: comparison between 'enum ' and 'enum ' [libata] add ATA_CMD_DSM to ata_get_cmd_descript [libata] Add Samsung PATA controller driver, pata_samsung_cf [libata] Add 460EX on-chip SATA driver, sata_dwc_460ex libata: reduce blacklist size even more (v2) libata: reduce blacklist size (v2) libata: glob_match for ata_device_blacklist (v2) ahci_platform: Remove unneeded ahci_driver.probe assignment ahci_platform: Provide for vendor specific init commit e6da54d84f9286edbe4c92ff5023ff481ce2a5c9 Author: Alan Stern Date: Thu Aug 5 13:17:10 2010 -0400 SCSI: remove fake "address-of" expression Fake "address-of" expressions that evaluate to NULL generally confuse readers and can provoke compiler warnings. This patch (as1411) removes one such fake expression, using an "#ifdef" in its place. Signed-off-by: Alan Stern Signed-off-by: Linus Torvalds commit 14828349719aa09845843477df8bad60792d18f3 Author: Sam Ravnborg Date: Fri Aug 6 07:13:54 2010 +0200 kconfig: fix make oldconfig Linus wrote: This seems to make "make oldconfig" a _lot_ more verbose than it used to be. In a very annoying way. I just did a quick git bisect. It's introduced by commit 4062f1a4c030 ("kconfig: use long options in conf") by Sam Ravnborg. Apparently that thing is totally buggy, and doesn't just change the option names, but actively breaks them. The old behaviour (from years ago) were reintroduced by accident. Fix this so we are back to the version that are silent if there is nothing to ask about. Reported-by: Linus Torvalds Signed-off-by: Sam Ravnborg Reviewed-by: Michal Marek Signed-off-by: Linus Torvalds commit 31d1d48e199e99077fb30f6fb9a793be7bec756f Author: David Howells Date: Fri Aug 6 16:34:43 2010 +0100 Fix init ordering of /dev/console vs callers of modprobe Make /dev/console get initialised before any initialisation routine that invokes modprobe because if modprobe fails, it's going to want to open /dev/console, presumably to write an error message to. The problem with that is that if the /dev/console driver is not yet initialised, the chardev handler will call request_module() to invoke modprobe, which will fail, because we never compile /dev/console as a module. This will lead to a modprobe loop, showing the following in the kernel log: request_module: runaway loop modprobe char-major-5-1 request_module: runaway loop modprobe char-major-5-1 request_module: runaway loop modprobe char-major-5-1 request_module: runaway loop modprobe char-major-5-1 request_module: runaway loop modprobe char-major-5-1 This can happen, for example, when the built in md5 module can't find the built in cryptomgr module (because the latter fails to initialise). The md5 module comes before the call to tty_init(), presumably because 'crypto' comes before 'drivers' alphabetically. Fix this by calling tty_init() from chrdev_init(). Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 1e456a124353a753e9d1fadfbf5cd459c2f197ae Author: David Howells Date: Fri Aug 6 16:08:27 2010 +0100 KEYS: request_key() should return -ENOKEY if the constructed key is negative request_key() should return -ENOKEY if the key it constructs has been negatively instantiated. Without this, request_key() can return an unusable key to its caller, and if the caller then does key_validate() that won't catch the problem. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit ab11b487402f97975f3ac1eeea09c82f4431481e Merge: 1c689cb fc1caf6 Author: Chris Metcalf Date: Fri Aug 6 10:37:02 2010 -0400 Merge branch 'master' into for-linus commit 5227bbb008fa6d2efddd86170bdfac2020cf571d Author: Steve French Date: Fri Aug 6 03:18:09 2010 +0000 [DNS RESOLVER] Minor typo correction CC: Dave Howells Signed-off-by: Steve French commit ff9517a68792bb363c16f4e3155c4fc5a7f9d738 Author: David Howells Date: Fri Aug 6 03:13:52 2010 +0100 DNS: Fixes for the DNS query module Fixes for the DNS query module, including: (1) Use 'negative' instead of '-ve' in the documentation. (2) Mark the kdoc comment with '/**' on dns_query(). Reported-by: Randy Dunlap Signed-off-by: David Howells Signed-off-by: Steve French commit af352fe960263fbab3252be0ba6d4e0a27e62f5d Author: Stephen Rothwell Date: Fri Aug 6 03:13:47 2010 +0100 cifs: Include linux/err.h for IS_ERR and PTR_ERR Fixes build errors: net/dns_resolver/dns_key.c: In function 'init_dns_resolver': net/dns_resolver/dns_key.c:170: error: implicit declaration of function 'IS_ERR' net/dns_resolver/dns_key.c:171: error: implicit declaration of function 'PTR_ERR' net/dns_resolver/dns_query.c: In function 'dns_query': net/dns_resolver/dns_query.c:126: error: implicit declaration of function 'IS_ERR' net/dns_resolver/dns_query.c:127: error: implicit declaration of function 'PTR_ERR' Signed-off-by: Stephen Rothwell Signed-off-by: David Howells Signed-off-by: Steve French commit fc1caf6eafb30ea185720e29f7f5eccca61ecd60 Merge: 9779714 96576a9 Author: Linus Torvalds Date: Thu Aug 5 16:02:01 2010 -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: (204 commits) agp: intel-agp: do not use PCI resources before pci_enable_device() agp: efficeon-agp: do not use PCI resources before pci_enable_device() drm: kill BKL from common code drm/kms: Simplify setup of the initial I2C encoder config. drm,io-mapping: Specify slot to use for atomic mappings drm/radeon/kms: only expose underscan on avivo chips drm/radeon: add new pci ids drm: Cleanup after failing to create master->unique and dev->name drm/radeon: tone down overchatty acpi debug messages. drm/radeon/kms: enable underscan option for digital connectors drm/radeon/kms: fix calculation of h/v scaling factors drm/radeon/kms/igp: sideport is AMD only drm/radeon/kms: handle the case of no active displays properly in the bandwidth code drm: move ttm global code to core drm drm/i915: Clear the Ironlake dithering flags when the pipe doesn't want it. drm/radeon/kms: make sure HPD is set to NONE on analog-only connectors drm/radeon/kms: make sure rio_mem is valid before unmapping it drm/agp/i915: trim stolen space to 32M drm/i915: Unset cursor if out-of-bounds upon mode change (v4) drm/i915: Unreference object not handle on creation ... commit 9779714c8af09d57527f18d9aa2207dcc27a8687 Merge: 89a6c8c 65b5ac1 Author: Linus Torvalds Date: Thu Aug 5 16:00:44 2010 -0700 Merge branch 'kms-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb * 'kms-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb: kgdb,docs: Update the kgdb docs to include kms drm_fb_helper: Preserve capability to use atomic kms i915: when kgdb is active display compression should be off drm/i915: use new fb debug hooks drm: add KGDB/KDB support fb: add hooks to handle KDB enter/exit kgdboc: Add call backs to allow kernel mode switching vt,console,kdb: automatically set kdb LINES variable vt,console,kdb: implement atomic console enter/leave functions commit 89a6c8cb9e6e11b6e3671dce7e037789b8f7cf62 Merge: 03c0c29 3fa43ab Author: Linus Torvalds Date: Thu Aug 5 15:59:48 2010 -0700 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: debug_core,kdb: fix crash when arch does not have single step kgdb,x86: use macro HBP_NUM to replace magic number 4 kgdb,mips: remove unused kgdb_cpu_doing_single_step operations mm,kdb,kgdb: Add a debug reference for the kdb kmap usage KGDB: Remove set but unused newPC ftrace,kdb: Allow dumping a specific cpu's buffer with ftdump ftrace,kdb: Extend kdb to be able to dump the ftrace buffer kgdb,powerpc: Replace hardcoded offset by BREAK_INSTR_SIZE arm,kgdb: Add ability to trap into debugger on notify_die gdbstub: do not directly use dbg_reg_def[] in gdb_cmd_reg_set() gdbstub: Implement gdbserial 'p' and 'P' packets kgdb,arm: Individual register get/set for arm kgdb,mips: Individual register get/set for mips kgdb,x86: Individual register get/set for x86 kgdb,kdb: individual register set and and get API gdbstub: Optimize kgdb's "thread:" response for the gdb serial protocol kgdb: remove custom hex_to_bin()implementation commit 03c0c29aff7e56b722eb6c47eace222b140d0377 Merge: c60c6a9 7fb8f88 Author: Linus Torvalds Date: Thu Aug 5 15:57:35 2010 -0700 Merge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6 * 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6: (63 commits) of/platform: Register of_platform_drivers with an "of:" prefix of/address: Clean up function declarations of/spi: call of_register_spi_devices() from spi core code of: Provide default of_node_to_nid() implementation. of/device: Make of_device_make_bus_id() usable by other code. of/irq: Fix endian issues in parsing interrupt specifiers of: Fix phandle endian issues of/flattree: fix of_flat_dt_is_compatible() to match the full compatible string of: remove of_default_bus_ids of: make of_find_device_by_node generic microblaze: remove references to of_device and to_of_device sparc: remove references to of_device and to_of_device powerpc: remove references to of_device and to_of_device of/device: Replace of_device with platform_device in includes and core code of/device: Protect against binding of_platform_drivers to non-OF devices of: remove asm/of_device.h of: remove asm/of_platform.h of/platform: remove all of_bus_type and of_platform_bus_type references of: Merge of_platform_bus_type with platform_bus_type drivercore/of: Add OF style matching to platform bus ... Fix up trivial conflicts in arch/microblaze/kernel/Makefile due to just some obj-y removals by the devicetree branch, while the microblaze updates added a new file. commit f27098379b1dbfedae99e5b86e10529f799d4071 Author: Andrew Morton Date: Tue Jun 29 14:09:43 2010 -0700 drivers/video/via/via-gpio.c: fix warning drivers/video/via/via-gpio.c: In function 'viafb_gpio_probe': drivers/video/via/via-gpio.c:216: warning: assignment from incompatible pointer type Cc: Joseph Chan Cc: Scott Fang Cc: Jonathan Corbet Signed-off-by: Andrew Morton Signed-off-by: Florian Tobias Schandinat commit 901b97d7b7ca9512ebb5d358df4ba6f8031f32cd Author: Ben Hutchings Date: Tue Jul 20 00:40:16 2010 +0100 viafb: Depends on X86 VIA UniChrome and Chrome9 GPUs only exist as Integrated Graphics Processors in x86 chipsets. Signed-off-by: Ben Hutchings Signed-off-by: Florian Tobias Schandinat commit eca9c47bd3120d3643b83dce09b0cf49fdd73d1a Author: Henrik Kretzschmar Date: Thu Jun 17 12:01:24 2010 +0200 fbdev: section cleanup in viafb driver This patch moves two functions from .devexit to .text, which are called on the probe error path. Also a function which is called by probe is moved from .text to .devinit. WARNING: vmlinux.o(.devinit.text+0x2ca5): Section mismatch in reference from the function via_pci_probe() to the function devexit.text:via_teardown_subdevs() The function __devinit via_pci_probe() references a function __devexit via_teardown_subdevs(). This is often seen when error handling in the init function uses functionality in the exit path. The fix is often to remove the __devexit annotation of via_teardown_subdevs() so it may be used outside an exit section. WARNING: vmlinux.o(.devinit.text+0x2cb1): Section mismatch in reference from the function via_pci_probe() to the function devexit.text:via_pci_teardown_mmio() The function __devinit via_pci_probe() references a function __devexit via_pci_teardown_mmio(). This is often seen when error handling in the init function uses functionality in the exit path. The fix is often to remove the __devexit annotation of via_pci_teardown_mmio() so it may be used outside an exit section. Signed-off-by: Henrik Kretzschmar Signed-off-by: Florian Tobias Schandinat commit 84b9414babdc303dde1d3f44cd2a54dffb67ab97 Author: Erik Gilling Date: Wed Jun 9 15:35:53 2010 -0700 [ARM] tegra: add MAINTAINERS entry Signed-off-by: Erik Gilling Signed-off-by: Colin Cross Acked-by: Olof Johansson commit 42a7bf4d2686145bea03ff9b87d83868cc514f47 Author: Colin Cross Date: Wed Feb 10 17:13:07 2010 -0800 [ARM] tegra: harmony: Add harmony board file v2: fixes from Russell King - include linux/io.h instead of mach/io.h v3: fixes from Linus Walleij - remove /16 * 16 from UART clock v3: - Fix checkpatch issues - make board init calls explicit - use clock init table to set clocks - remove panel Signed-off-by: Colin Cross Signed-off-by: Erik Gilling commit a4417c84513650a0f9e4de6a0bb2c5480e45b2a7 Author: Erik Gilling Date: Tue Feb 23 18:46:37 2010 -0800 [ARM] tegra: add pinmux support v2: fixes from Russell King - include linux/io.h instead of asm/io.h v3: - Add drive strength controls - Replace typedef enums with plain enums Signed-off-by: Erik Gilling Signed-off-by: Colin Cross commit 3c92db9ac0ca3eee8e46e2424b6c074e2e394ad9 Author: Erik Gilling Date: Mon Mar 15 19:40:06 2010 -0700 [ARM] tegra: add GPIO support v2: fixes from Mike Rapoport: - move gpio-names.h to arch/arm/mach-tegra fixes from Russell King - include linux/io.h and linux/gpio.h instead of asm/io.h and asm/gpio.h additional changes: - add macros to convert between irq and gpio numbers for platform data - change for_each_bit to for_each_set_bit in gpio.c v3: - minor bugfixes Signed-off-by: Colin Cross Signed-off-by: Erik Gilling commit 2d5cd9a38b3792426115adbedce539bd45ee640e Author: Colin Cross Date: Thu Jan 28 16:41:42 2010 -0800 [ARM] tegra: Add timer support v2: fixes from Russell King: - include linux/io.h instead of asm/io.h fixes from Gary King: - remove extra (and incorrect) irq definitions - use timer 3 instead of timer 1 for compatibility with other drivers - fix typo that disabled oneshot mode v3: - Implement sched_clock - Fix checkpatch issues fixes from Gary King: - Fix incorrect cycles calculation - Fix min_delta_ns assignment fixes from Linus Walleij: - use calc_mult_shift() instead of hard coding values Signed-off-by: Colin Cross commit 1cea7326b3fff97d17d33fb8f33163409a84431b Author: Colin Cross Date: Sun Feb 21 17:46:23 2010 -0800 [ARM] tegra: SMP support Signed-off-by: Colin Cross Signed-off-by: Erik Gilling commit d861196163e30c07add471562b45dce38517c9b2 Author: Colin Cross Date: Thu Jan 28 16:40:29 2010 -0800 [ARM] tegra: Add clock support v2: fixes from Russell King: - include linux/io.h instead of asm/io.h - fix whitespace in Kconfig - Use spin_lock_init to initialize lock - Return -ENOSYS instead of BUG for unimplemented clock ops - Use proper return values in tegra2 clock ops additional changes: - Rename some clocks to match dev_ids - add rate propagation - add debugfs entries - add support for clock listed in clk_lookup under multiple dev_ids v3: - Replace per-clock locking with global clock lock - Autodetect clock state on init - Let clock dividers pick next lower possible frequency - Add support for clock init tables - Minor bug fixes - Fix checkpatch issues Signed-off-by: Colin Cross commit 5ad36c5f0ece31552a195f2f9e29357a2747536e Author: Erik Gilling Date: Mon Mar 15 23:04:46 2010 -0700 [ARM] tegra: Add IRQ support v2: fixes from Russell King - include linux/io.h instead of asm/io.h and mach/io.h Signed-off-by: Colin Cross Signed-off-by: Erik Gilling commit c5f800656bc985b448b1d848d309648826536543 Author: Erik Gilling Date: Thu Jan 21 16:53:02 2010 -0800 [ARM] tegra: initial tegra support v2: Fixes from Mike Rapoport - remove unused header files (mach/dma.h and mach/nand.h) - remove tegra 1 references from Makefile.boot v2: fixes from Russell King - remove mach/io.h include from mach/iomap.h - fix whitespace in Kconfig v2: from Colin Cross - fix invalid immediate in debug-macro.S v3: - allow selection of multiple boards Signed-off-by: Colin Cross Signed-off-by: Erik Gilling commit 03b37ecdb3975f09832747600853d3818a50eda3 Merge: 18199f5 a5f4a07 2db0032 dccb816 a2ebf07 817979a ba818af 89de748 Author: Roland Dreier Date: Thu Aug 5 14:27:14 2010 -0700 Merge branches 'cxgb3', 'cxgb4', 'ehca', 'ipath', 'misc', 'nes', 'qib' and 'srp' into for-next commit ba818afdc62590e95e45d63be96954ea568925bf Author: David Miller Date: Thu Aug 5 05:55:52 2010 +0000 IB/qib: Add missing include Fix build failure on sparc64 which is missing the include of via that x86, powerpc, ia64, etc. have. Signed-off-by: David S. Miller Signed-off-by: Roland Dreier commit c60c6a96b7bb0f1f8bb635fdfcf5b592aaf062b4 Merge: f43100a 06c22da Author: Linus Torvalds Date: Thu Aug 5 14:26:19 2010 -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: apparmor: depends on NET commit 2db00321815e20f4a7ff9df43f7cf2073085683d Author: Julia Lawall Date: Tue Aug 3 21:35:36 2010 +0000 IB/ehca: Drop unnecessary NULL test list_for_each_entry binds its first argument to a non-null value, and thus any null test on the value of that argument is superfluous. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ iterator I; expression x; statement S,S1,S2; @@ I(x,...) { <... - if (x == NULL && ...) S ...> } // Signed-off-by: Julia Lawall Acked-by: Alexander Schmidt Signed-off-by: Roland Dreier commit 817979ac45679f0cb3f9fea6dc444e4097aa6892 Author: Roland Dreier Date: Thu Aug 5 14:21:31 2010 -0700 RDMA/nes: Fix confusing if statement indentation Fix confusing indentation that makes a statement look as if it's part of an if statement when in fact it isn't. Reported-by: Julia Lawall Signed-off-by: Roland Dreier commit f43100ae39bfeb757b75835ef61f0c2c46c99348 Merge: 27b4a1a 5e8e1cc Author: Linus Torvalds Date: Thu Aug 5 14:20:14 2010 -0700 Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: scripts/dtc: Fix a resource leak Documentation: fix ubuntu distro name MAINTAINERS: Update kbuild git URLs Add support for the C variable in the coccicheck script Add scripts/coccinelle/deref_null.cocci Add scripts/coccinelle/err_cast.cocci Add scripts/coccinelle/resource_size.cocci Add scripts/coccinelle/alloc/kzalloc-simple.cocci Add scripts/coccinelle/alloc/drop_kmalloc_cast.cocci Add Documentation/coccinelle.txt Add a target to use the Coccinelle checker scripts: decodecode: remove bashisms Makefile: clarify a comment checkkconfigsymbols.sh: Kconfig symbols sometimes have lowercase letters scripts: add nconf into gitignore file commit 27b4a1a9eac8b0f8958da67e4abe025b96e1a293 Merge: e4d6152 aa42abe Author: Linus Torvalds Date: Thu Aug 5 14:19:50 2010 -0700 Merge branch 'packaging' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'packaging' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: Change section of generated debian packages to kernel kbuild: Mark that the packages generated conform to Standards-Version 3.8.4 kbuild: Add homepage field to debian/control file commit 9015e4996273c86574d6fd26df8a203941d3cc24 Author: Christoph Fritz Date: Mon Aug 2 21:53:35 2010 +0200 Staging: wlan-ng: Update prism2_set_tx_power() to use mBm Commit fa61cf70a6ae1089e459e4b59b2e8d8e90d8535e updates nl80211's function .set_tx_power to use mBm units instead of dBm for greater accuracy and smaller power levels. This patchs updates prism2_set_tx_power() accordingly. Signed-off-by: Christoph Fritz Signed-off-by: Greg Kroah-Hartman commit e9563355ac1175dd3440dc2ea5c28b27ed51a283 Merge: cdd854b b12d199 Author: Greg Kroah-Hartman Date: Thu Aug 5 14:18:03 2010 -0700 Staging: Merge staging-next into Linus's tree Conflicts: drivers/staging/Kconfig drivers/staging/batman-adv/bat_sysfs.c drivers/staging/batman-adv/device.c drivers/staging/batman-adv/hard-interface.c drivers/staging/cx25821/cx25821-audups11.c Signed-off-by: Greg Kroah-Hartman commit e4d6152b520184be87aa65cb7035bf87acd27c14 Merge: da9e82b 7a996d3 Author: Linus Torvalds Date: Thu Aug 5 14:12:07 2010 -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: (26 commits) kconfig: add savedefconfig kconfig: code refactoring in confdata.c kconfig: refactor code in symbol.c kconfig: add alldefconfig kconfig: print more info when we see a recursive dependency kconfig: save location of config symbols kconfig: change nonint_oldconfig to listnewconfig kconfig: rename loose_nonint_oldconfig => oldnoconfig kconfig: use long options in conf kconfig: fix MODULES-related bug in case of no .config kconfig: make randconfig fair for booleans kconfig: Don't write invisible choice values kbuild: Warn on selecting symbols with unmet direct dependencies scripts:conf.c Fix warning: variable 'type' set but not used menuconfig: truncate list items menuconfig: fix to center checklist correctly in a corner case xconfig: add support to show hidden options which have prompts xconfig: remove unused function xconfig: clean up gconfig: fix null pointer warning ... commit da9e82b3b8989fc09e2a4c45b9da604ba2b4c46d Merge: 90d3417 772320e Author: Linus Torvalds Date: Thu Aug 5 14:10:07 2010 -0700 Merge branch 'kbuild' 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: modpost: support objects with more than 64k sections trivial: fix a typo in a filename frv: clean up arch/frv/Makefile kbuild: allow assignment to {A,C}FLAGS_KERNEL on the command line kbuild: allow assignment to {A,C,LD}FLAGS_MODULE on the command line Kbuild: Add option to set -femit-struct-debug-baseonly Makefile: "make kernelrelease" should show the correct full kernel version Makefile.build: make KBUILD_SYMTYPES work again commit 6937e8f8c0135f2325194c372ada6dc655499992 Author: Johannes Berg Date: Thu Aug 5 17:38:18 2010 +0200 driver core: device_rename's new_name can be const The new_name argument to device_rename() can be const as kobject_rename's new_name argument is. Signed-off-by: Johannes Berg Signed-off-by: Greg Kroah-Hartman commit 6fd69dc578fa0b1bbc3aad70ae3af9a137211707 Author: Guenter Roeck Date: Wed Jul 28 22:09:26 2010 -0700 sysfs: Remove owner field from sysfs struct attribute Signed-off-by: Guenter Roeck Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit c4945b0d8ce682eb58b82138aaf4ca2e32b0b757 Author: Guenter Roeck Date: Wed Jul 28 22:09:25 2010 -0700 powerpc/pci: Remove owner field from attribute initialization in PCI bridge init Signed-off-by: Guenter Roeck Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit 068a2782f59efe5855091860bbccbadf1c72fffd Author: Guenter Roeck Date: Wed Jul 28 22:09:24 2010 -0700 regulator: Remove owner field from attribute initialization in regulator core driver Signed-off-by: Guenter Roeck Acked-by: Mark Brown Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit 0c8617d3abf6a83b05f80179f8729a002f4160ad Author: Guenter Roeck Date: Wed Jul 28 22:09:23 2010 -0700 leds: Remove owner field from attribute initialization in bd2802 driver Signed-off-by: Guenter Roeck Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit cf9e82a8a03cee3c4ffe0a23ca0f17bd57b3cc60 Author: Guenter Roeck Date: Wed Jul 28 22:09:22 2010 -0700 scsi: Remove owner field from attribute initialization in ARCMSR driver Signed-off-by: Guenter Roeck Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit 3577dc76fc92c45ff61f8fa85b90e872755796d1 Author: Guenter Roeck Date: Wed Jul 28 22:09:21 2010 -0700 scsi: Remove owner field from attribute initialization in LPFC driver Signed-off-by: Guenter Roeck Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit 676db4af043014e852f67ba0349dae0071bd11f3 Author: Greg KH Date: Thu Aug 5 13:53:35 2010 -0700 cgroupfs: create /sys/fs/cgroup to mount cgroupfs on We really shouldn't be asking userspace to create new root filesystems. So follow along with all of the other in-kernel filesystems, and provide a mount point in sysfs. For cgroupfs, this should be in /sys/fs/cgroup/ This change provides that mount point when the cgroup filesystem is registered in the kernel. Acked-by: Paul Menage Acked-by: Dhaval Giani Cc: Li Zefan Cc: Lennart Poettering Cc: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit 45daef0fdcc44f6af86fdebc4fc7eb7c79375398 Author: Magnus Damm Date: Fri Jul 23 19:56:18 2010 +0900 Driver core: Add BUS_NOTIFY_BIND_DRIVER Add BUS_NOTIFY_BIND_DRIVER as a bus notifier event. For driver binding/unbinding we with this in place have the following bus notifier events: - BUS_NOTIFY_BIND_DRIVER - before ->probe() - BUS_NOTIFY_BOUND_DRIVER - after ->probe() - BUS_NOTIFY_UNBIND_DRIVER - before ->remove() - BUS_NOTIFY_UNBOUND_DRIVER - after ->remove() The event BUS_NOTIFY_BIND_DRIVER allows bus code to be notified that ->probe() is about to be called. Useful for bus code that needs to setup hardware before the driver gets to run. With this in place platform drivers can be loaded and unloaded as modules and the new BIND event allows bus code to control for instance device clocks that must be enabled before the driver can be executed. Without this patch there is no way for the bus code to get notified that a modular driver is about to be probed. Signed-off-by: Magnus Damm Signed-off-by: Greg Kroah-Hartman commit 600c20f34f645adf7884277302b10601583aa7d5 Author: Jike Song Date: Thu Jul 15 17:43:54 2010 +0800 driver core: fix memory leak on one error path in bus_register() Reported-by: huangweibing@gmail.com Signed-off-by: Jike Song Signed-off-by: Greg Kroah-Hartman commit c462e8cd57869a81223c5cad2d5a61b491634229 Author: Randy Dunlap Date: Tue Jul 20 16:04:51 2010 -0700 debugfs: no longer needs to depend on SYSFS debugfs no longer uses 'kernel_subsys' (which is gone), and other kernel/ksysfs.c code is always built, so DEBUG_FS does not need to depend on SYSFS. Fixes this kconfig warning: warning: (TREE_RCU_TRACE || AMD_IOMMU_STATS && AMD_IOMMU || MTD_UBI_DEBUG && MTD && SYSFS && MTD_UBI || UBIFS_FS_DEBUG && MISC_FILESYSTEMS && UBIFS_FS || DEBUG_KMEMLEAK && DEBUG_KERNEL && EXPERIMENTAL && !MEMORY_HOTPLUG && (X86 || ARM || PPC || S390 || SPARC64 || SUPERH || MICROBLAZE) && SYSFS || TRACING || X86_PTDUMP && DEBUG_KERNEL || BLK_DEV_IO_TRACE && TRACING_SUPPORT && FTRACE && SYSFS && BLOCK) selects DEBUG_FS which has unmet direct dependencies (SYSFS) Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit a5307032718b1e90e6d07008d7fd44d1446db7d7 Author: Ira Weiny Date: Thu Jul 15 11:34:44 2010 -0700 sysfs: Fix one more signature discrepancy between sysfs implementation and docs. Signed-off-by: Ira Weiny Signed-off-by: Greg Kroah-Hartman commit 30a69000a4ba9cf49e8b826431847cc80881b59b Author: Bart Van Assche Date: Tue Jul 20 15:22:05 2010 -0700 sysfs: fix discrepancies between implementation and documentation Fix all discrepancies I know of between the sysfs implementation and its documentation. Signed-off-by: Bart Van Assche Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit e3ed249af8cb2f73fc6ef5494d2ddef43fb0ff19 Author: Axel Lin Date: Mon Jul 5 09:35:47 2010 +0800 dcdbas: remove a redundant smi_data_buf_free in dcdbas_exit smi_data_buf_free is called twice in current implementation. The second call simply return because smi_data_buf is set to NULL in first call. This patch removes the second smi_data_buf_free call. Signed-off-by: Axel Lin Signed-off-by: Greg Kroah-Hartman commit 5b232f753a842fa66eab86e51dc76e3929d853af Author: Axel Lin Date: Thu Jul 1 10:35:07 2010 +0800 dmi-id: fix a memory leak in dmi_id_init error path This patch adds a missing kfree(dmi_dev) in dmi_id_init error path. Signed-off-by: Axel Lin Acked-by: Tejun Heo Signed-off-by: Greg Kroah-Hartman commit 49c19400f60bbe362202d7e7b3e68cc66040d0fa Author: Jean Delvare Date: Fri Jul 2 16:54:05 2010 +0200 sysfs: sysfs_chmod_file's attr can be const sysfs_chmod_file doesn't change the attribute it operates on, so this attribute can be marked const. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 3317fad5e9c741e758707879c68e20de2cb08f87 Author: Magnus Damm Date: Fri Jun 25 17:55:11 2010 +0900 firmware: Update hotplug script Update the in-kernel hotplug example script to work properly with recent kernels. Without this fix the script may load the firmware twice - both at "add" and "remove" time. The second load only triggers in the case when multiple firmware images are used. A good example is the b43 driver which does not work properly without this fix. Signed-off-by: Magnus Damm Signed-off-by: Greg Kroah-Hartman commit 737a3bb9416ce2a7c7a4170852473a4fcc9c67e8 Author: Uwe Kleine-König Date: Mon Jun 21 16:11:45 2010 +0200 Driver core: move platform device creation helpers to .init.text (if MODULE=n) Platform devices should only be called by init code, so it should be possible to move creation helpers to .init.text -- at least if modules are disabled. Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 44f28bdea09415d40b4d73a7668db5961362ec53 Author: Uwe Kleine-König Date: Mon Jun 21 16:11:44 2010 +0200 Driver core: reduce duplicated code for platform_device creation This makes the two similar functions platform_device_register_simple and platform_device_register_data one line inline functions using a new generic function platform_device_register_resndata. Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 3e61dfd8509a52d165726831c57b4c8a015d626c Author: Uwe Kleine-König Date: Tue Jun 15 10:47:55 2010 +0200 Driver core: use kmemdup in platform_device_add_resources This makes platform_device_add_resources look like platform_device_add_data. Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit f8a4bd3456b988fc73b2c291b9e01b434c8fa940 Author: Dmitry Torokhov Date: Fri Jun 4 00:54:43 2010 -0700 firmware loader: embed device into firmware_priv structure Both these structures have the same lifetime rules so instead of allocating and managing them separately embed struct device into struct firmware_priv. Also make sure to delete sysfs attributes ourselves instead of expecting sysfs to clean up our mess. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 0983ca2d0f0ff645bc86899aefb936cffb314839 Author: Dmitry Torokhov Date: Fri Jun 4 00:54:37 2010 -0700 firmware loader: use statically initialized data attribute There is no reason why we are using a template for binary attribute and copying it into per-firmware data before registering. Using the original works as well. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit cc7447a5fa92759b0856d6a83ba2539c6a94e67e Author: Jean Delvare Date: Wed Jun 16 11:44:18 2010 +0200 Driver core: Drop __must_check from bus_for_each_drv() There is little rationale for marking bus_for_each_drv() __must_check. It is more of an iteration helper than a real function. You don't know in advance which callback it will be used on, so you have no clue how important it can be to check the returned value. In practice, this helper function can be used for best-effort tasks. As a matter of fact, bus_for_each_dev() is not marked __must_check. So remove it from bus_for_each_drv() as well. This is the same that was done back in October 2006 by Russell King for device_for_each_child(), for exactly the same reasons. Signed-off-by: Jean Delvare Cc: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit ed1d218c95c6846416ddb39085b20a5b3c0872e4 Author: Marin Mitov Date: Mon May 31 13:03:04 2010 +0300 Driver core: internal struct dma_coherent_mem, change type of a member. struct dma_coherent_mem in drivers/base/dma-coherent.c has member 'device_base' that is of type u32, but is assigned value of type dma_addr_t, which may be 64 bits for x86_64. Change the type to dma_addr_t. Signed-off-by: Marin Mitov Signed-off-by: Greg Kroah-Hartman commit 94f17cd7887ca681ea88fda1fd9bf65c0ca161f0 Author: Ian Abbott Date: Mon Jun 7 12:57:12 2010 +0100 hotplug: Support kernel/hotplug sysctl variable when !CONFIG_NET The kernel/hotplug sysctl variable (/proc/sys/kernel/hotplug file) was made conditional on CONFIG_NET by commit f743ca5e10f4145e0b3e6d11b9b46171e16af7ce (applied in 2.6.18) to fix problems with undefined references in 2.6.16 when CONFIG_HOTPLUG=y && !CONFIG_NET, but this restriction is no longer needed. This patch makes the kernel/hotplug sysctl variable depend only on CONFIG_HOTPLUG. Signed-off-by: Ian Abbott Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 14ec5394827eea8df7bbf14775c52fc48fc97a40 Author: Hans J. Koch Date: Thu Jun 10 01:18:08 2010 +0200 uio: Remove IRQF_DISABLED flag from uio_cif.c Remove IRQF_DISABLED since it is deprecated and a no-op in the current kernel. Signed-off-by: Hans J. Koch Signed-off-by: Greg Kroah-Hartman commit 62c867791f7b9feb2f6c2ca60e8a246d0c810ad9 Author: Hans J. Koch Date: Thu Jun 10 01:15:49 2010 +0200 uio: Remove IRQF_DISABLED from uio_sercos3.c Remove IRQF_DISABLED since it is deprecated and a no-op in the current kernel. Signed-off-by: Hans J. Koch Acked-by: John Ogness Signed-off-by: Greg Kroah-Hartman commit 5685ad5b29934e09dd9746f8553066f8288d4dff Author: Hans J. Koch Date: Thu Jun 10 01:12:32 2010 +0200 uio: Remove IRQF_DISABLED flag from uio_pdrv_genirq.c Remove IRQF_DISABLED flag since it is deprecated and a no-op in the current kernel. Signed-off-by: Hans J. Koch Signed-off-by: Greg Kroah-Hartman commit 90d3417a3a4e810d67081dd106f0e603a856978f Merge: 552c7db 51f3d0f Author: Linus Torvalds Date: Thu Aug 5 13:49:55 2010 -0700 Merge branch 'modules' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * 'modules' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: module: cleanup comments, remove noinline module: group post-relocation functions into post_relocation() module: move module args strndup_user to just before use module: pass load_info into other functions module: fix sysfs cleanup for !CONFIG_SYSFS module: sysfs cleanup module: layout_and_allocate module: fix crash in get_ksymbol() when oopsing in module init module: kallsyms functions take struct load_info module: refactor out section header rewriting: FIX modversions module: refactor out section header rewriting module: add load_info module: reduce stack usage for each_symbol() module: refactor load_module part 5 module: refactor load_module part 4 module: refactor load_module part 3 module: refactor load_module part 2 module: refactor load_module module: module_unload_init() cleanup commit 552c7dbb3459c219e44a65fd6bca21b1227c0e33 Merge: db7a153 6c99a85 Author: Linus Torvalds Date: Thu Aug 5 13:49:37 2010 -0700 Merge branch 'virtio' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * 'virtio' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: virtio_blk: Remove VBID ioctl virtio_blk: Add 'serial' attribute to virtio-blk devices (v2) virtio_blk: support barriers without FLUSH feature commit db7a1535d2dcf91115ba0fb940b1902c05305843 Merge: ab265d5 7cc88fd Author: Linus Torvalds Date: Thu Aug 5 13:45:50 2010 -0700 Merge branch 'upstream/xen' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen * 'upstream/xen' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen: (23 commits) xen/panic: use xen_reboot and fix smp_send_stop Xen: register panic notifier to take crashes of xen guests on panic xen: support large numbers of CPUs with vcpu info placement xen: drop xen_sched_clock in favour of using plain wallclock time pvops: do not notify callers from register_xenstore_notifier Introduce CONFIG_XEN_PVHVM compile option blkfront: do not create a PV cdrom device if xen_hvm_guest support multiple .discard.* sections to avoid section type conflicts xen/pvhvm: fix build problem when !CONFIG_XEN xenfs: enable for HVM domains too x86: Call HVMOP_pagetable_dying on exit_mmap. x86: Unplug emulated disks and nics. x86: Use xen_vcpuop_clockevent, xen_clocksource and xen wallclock. implement O_NONBLOCK for /proc/xen/xenbus xen: Fix find_unbound_irq in presence of ioapic irqs. xen: Add suspend/resume support for PV on HVM guests. xen: Xen PCI platform device driver. x86/xen: event channels delivery on HVM. x86: early PV on HVM features initialization. xen: Add support for HVM hypercalls. ... commit 6c7a120ac6c62316ab1fc78dfc0a7b13f3bfcbff Author: Aditya Kali Date: Thu Aug 5 16:22:24 2010 -0400 ext4: Adding error check after calling ext4_mb_regular_allocator() If the bitmap block on disk is bad, ext4_mb_load_buddy() returns an error. This error is returned to the caller, ext4_mb_regular_allocator() and then to ext4_mb_new_blocks(). But ext4_mb_new_blocks() did not check for the return value of ext4_mb_regular_allocator() and would repeatedly try to load the bitmap block. The fix simply catches the return value and exits out of the 'repeat' loop after cleanup. We also take the opportunity to clean up the error handling in ext4_mb_new_blocks(). Google-Bug-Id: 2853530 Signed-off-by: Aditya Kali Signed-off-by: "Theodore Ts'o" commit 4b030d4288a569d6bdeca884d7f102d951f097f2 Author: Dan Carpenter Date: Wed Aug 4 23:38:06 2010 +0000 isdn: fix information leak The main motivation of this patch changing strcpy() to strlcpy(). We strcpy() to copy a 48 byte buffers into a 49 byte buffers. So at best the last byte has leaked information, or maybe there is an overflow? Anyway, this patch closes the information leaks by zeroing the memory and the calls to strlcpy() prevent overflows. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit ce9e76c8450fc248d3e1fc16ef05e6eb50c02fa5 Author: Jarek Poplawski Date: Thu Aug 5 01:19:11 2010 +0000 net: Fix napi_gro_frags vs netpoll path The netpoll_rx_on() check in __napi_gro_receive() skips part of the "common" GRO_NORMAL path, especially "pull:" in dev_gro_receive(), where at least eth header should be copied for entirely paged skbs. Signed-off-by: Jarek Poplawski Acked-by: Herbert Xu Signed-off-by: David S. Miller commit ab265d5cdde7133f2569e2b5f341a80907b8600e Author: Johannes Berg Date: Thu Aug 5 11:23:11 2010 -0700 docbook: use IDs as filenames to support multiple books I'm trying to generate a of s in docbook for wireless to link together all the cfg80211 and mac80211 documentation. However, docbook will generate "re01.html" anew for each book for the first , presumably due to a bug in the stylesheets. An effective workaround is to use IDs for the filenames, which makes them more descriptive as well, e.g. API-enum-ieee80211-band.html. Signed-off-by: Johannes Berg Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 23d23e409a51a3eaad17a8045d30fd9cf8fb8a03 Author: Christian Samsel Date: Wed Aug 4 22:14:36 2010 +0000 usbnet: remove noisy and hardly useful printk With turned on hspa modem (Dell 5530 internal card) and activated usb auto suspend, my system gets up 100 "usbnet_resume has delayed data" per minute. I didnt noticed any pathological behaviour, so just drop this message. if any objections, please at least change it to _DEBUG. Signed-off-by: Christian Samsel Signed-off-by: David S. Miller commit c95940f264e59ff8d21d76ace47bac1018912800 Author: Nicolas Kaiser Date: Thu Aug 5 11:23:11 2010 -0700 Documentation: fix kbuild typos and wording Fixed some typos and wording. Signed-off-by: Nicolas Kaiser Signed-off-by: Linus Torvalds commit eb07e1b4ac544abaf4ec8ad25cdbe39485de6842 Author: Matt Mooney Date: Thu Aug 5 11:23:11 2010 -0700 Documentation: update kbuild make typos/grammar/text flow Update section 3.7 examples to reflect the current state of the Makefiles used. Fix spelling and grammar errors along with flow of text. Signed-off-by: matt mooney Reviewed-by: WANG Cong Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 2f5a2f81843ccef626c3db30aa19ed5abf8f0181 Author: Matt Mooney Date: Thu Aug 5 11:23:11 2010 -0700 Documentation: update kbuild make examples#2 to reflect changes Update section 3.2 and 3.5 example, along with text in section 3.5 to reflect change. Signed-off-by: matt mooney Reviewed-by: WANG Cong Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 4f8272802739f5c6ce6b0a548810a181d2f1b652 Author: Matt Mooney Date: Thu Aug 5 11:23:11 2010 -0700 Documentation: update kbuild loadable modules goals & examples Update section 3.3 Loadable module goals - obj-m, from $(-objs) to $(-y) for easier addition of conditional objects to the module. The examples are also updated to reflect the current state of each Makefile used. Signed-off-by: matt mooney Reviewed-by: WANG Cong Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit c7825cfac6f34e66797905f365761f66fd51ebda Author: Tommi Rantala Date: Thu Aug 5 11:23:11 2010 -0700 Documentation/vm: fix spelling in page-types.c Trivial typo fixes. Signed-off-by: Tommi Rantala Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 642b5123ac5ec40a28575e930a3e2ff595473e9d Author: Satoru Takeuchi Date: Thu Aug 5 11:23:11 2010 -0700 aio: fix wrong subsystem comments - sys_io_destroy(): acutually return -EINVAL if the context pointed to is invalidIndex: linux-2.6.33-rc4/fs/aio.c - sys_io_getevents(): An argument specifying timeout is not `when', but `timeout'. - sys_io_getevents(): Should describe what is returned if this syscall succeeds. Signed-off-by: Satoru Takeuchi Signed-off-by: Randy Dunlap Reviewed-by: Jeff Moyer Signed-off-by: Linus Torvalds commit 8f1d2d2be73a98c21e68fe2a26f633892d4abdd1 Author: John W. Linville Date: Thu Aug 5 13:46:27 2010 -0400 rtl8180: avoid potential NULL deref in rtl8180_beacon_work ieee80211_beacon_get can return NULL... Signed-off-by: John W. Linville Cc: stable@kernel.org commit c5d2711cb508ff8bc76d88fe442d1c27fb136245 Author: Sujith Date: Fri Jul 30 12:01:17 2010 +0530 ath9k: Remove myself from the MAINTAINERS list So long. Signed-off-by: Sujith Signed-off-by: John W. Linville commit cc02681923ce09a7c8cfacc6855de259b9d4ef87 Author: Dan Williams Date: Wed Aug 4 00:43:47 2010 -0500 libertas: scan before assocation if no BSSID was given Fix this leftover TODO from the cfg80211 conversion by doing a scan if cfg80211 didn't pass in the BSSID for us. Since the scan code uses so much of the cfg80211_scan_request structure to build up the firmware command, we just fake one when the scan request is triggered internally. But we need to make sure that internal 'fake' cfg82011 scan request does not get back to cfg82011 via cfg80211_scan_done(). Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 197575393713eba035925e4bfdee407f473e5057 Author: Dan Williams Date: Thu Jul 29 23:16:01 2010 -0700 libertas: fix association with some APs by using extended rates Some APs get pissy if you don't send the firmware the extended rates in the association request's rates TLV. Found this on a Linksys WRT54G v2; it denies association with status code 18 unless you add the extended rates too. The old driver did this, but it got lost in the cfg80211 conversion. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit aebb628f39ccf67fe9ed888c7f80926fc1070ce5 Author: Dan Williams Date: Thu Jul 29 23:11:30 2010 -0700 libertas: get the right # of scanned BSSes Let's actually check the right field in the command response; and if there aren't any reported BSSes, exit early with success. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit c0068c85897f06205d4c35cf4bf9161be90690e9 Merge: 2411054 adb08ed Author: John W. Linville Date: Thu Aug 5 15:54:28 2010 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6 commit 5f11e6a44059f728dddd8d0dbe5b4368ea93575b Author: Jan Kara Date: Thu Aug 5 12:38:26 2010 +0200 ext3: Fix dirtying of journalled buffers in data=journal mode In data=journal mode, we still use block_write_begin() to prepare page for writing. This function can occasionally mark buffer dirty which violates journalling assumptions - when a buffer is part of a transaction, it should be dirty and a buffer can be already part of a forget list of some transaction when block_write_begin() gets called. This violation of journalling assumptions then results in "JBD: Spotted dirty metadata buffer..." warnings. In fact, temporary dirtying the buffer while the page is still locked does not really cause problems to the journalling because we won't write the buffer until the page gets unlocked. So we just have to make sure to clear dirty bits before unlocking the page. Reviewed-by: "Theodore Ts'o" Signed-off-by: Jan Kara commit f70cb33b9c270f4f1a7f28327e7d35dbf1a6fc40 Author: Julia Lawall Date: Tue Aug 3 23:34:16 2010 +0200 fs/dlm: Drop unnecessary null test hlist_for_each_entry binds its first argument to a non-null value, and thus any null test on the value of that argument is superfluous. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ iterator I; expression x,E,E1,E2; statement S,S1,S2; @@ I(x,...) { <... - (x != NULL) && E ...> } // Signed-off-by: Julia Lawall Signed-off-by: David Teigland commit a4d935bd97b9ccf40aa0ec59646612df8ed46640 Author: Changli Gao Date: Mon Jul 26 17:19:19 2010 +0800 dlm: use genl_register_family_with_ops() Signed-off-by: Changli Gao Signed-off-by: David Teigland commit 56d35a4cd13e7bc5eca5b2dba5a41794afb17e11 Author: Jan Kara Date: Thu Aug 5 14:41:42 2010 -0400 ext4: Fix dirtying of journalled buffers in data=journal mode In data=journal mode, we still use block_write_begin() to prepare page for writing. This function can occasionally mark buffer dirty which violates journalling assumptions - when a buffer is part of a transaction, it should be dirty and a buffer can be already part of a forget list of some transaction when block_write_begin() gets called. This violation of journalling assumptions then results in "JBD: Spotted dirty metadata buffer..." warnings. In fact, temporary dirtying the buffer while the page is still locked does not really cause problems to the journalling because we won't write the buffer until the page gets unlocked. So we just have to make sure to clear dirty bits before unlocking the page. Signed-off-by: Jan Kara commit 07567a5509327bcbf2c867286eb1524447c9b954 Author: Wang Lei Date: Wed Aug 4 15:16:38 2010 +0100 DNS: Make AFS go to the DNS for AFSDB records for unknown cells Add DNS query support for AFS so that it can get the IP addresses of Volume Location servers from the DNS using an AFSDB record. This requires userspace support. /etc/request-key.conf must be configured to invoke a helper for dns_resolver type keys with a subtype of "afsdb:" in the description. Signed-off-by: Wang Lei Signed-off-by: David Howells Signed-off-by: Steve French commit 1a4240f4764ac78adbf4b0ebb49b3bd8c72ffa11 Author: Wang Lei Date: Wed Aug 4 15:16:33 2010 +0100 DNS: Separate out CIFS DNS Resolver code Separate out the DNS resolver key type from the CIFS filesystem into its own module so that it can be made available for general use, including the AFS filesystem module. This facility makes it possible for the kernel to upcall to userspace to have it issue DNS requests, package up the replies and present them to the kernel in a useful form. The kernel is then able to cache the DNS replies as keys can be retained in keyrings. Resolver keys are of type "dns_resolver" and have a case-insensitive description that is of the form "[:]". The optional indicates the particular DNS lookup and packaging that's required. The is the query to be made. If isn't given, a basic hostname to IP address lookup is made, and the result is stored in the key in the form of a printable string consisting of a comma-separated list of IPv4 and IPv6 addresses. This key type is supported by userspace helpers driven from /sbin/request-key and configured through /etc/request-key.conf. The cifs.upcall utility is invoked for UNC path server name to IP address resolution. The CIFS functionality is encapsulated by the dns_resolve_unc_to_ip() function, which is used to resolve a UNC path to an IP address for CIFS filesystem. This part remains in the CIFS module for now. See the added Documentation/networking/dns_resolver.txt for more information. Signed-off-by: Wang Lei Signed-off-by: David Howells Acked-by: Jeff Layton Signed-off-by: Steve French commit ba5dadbf4e7b531bd7ccecffb4d3935c80a3372e Author: Jeff Layton Date: Tue Aug 3 10:19:50 2010 -0400 cifs: account for new creduid=0x%x parameter in spnego upcall string The commit that added the creduid=0x%x parameter failed to increase the buffer allocation to account for it. Reported-by: J. Bruce Fields Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 5acfec2502cf60a91dc1959e476b588ecb3a1b8a Author: Jeff Layton Date: Mon Aug 2 17:43:54 2010 -0400 cifs: reduce false positives with inode aliasing serverino autodisable It turns out that not all directory inodes with dentries on the i_dentry list are unusable here. We only consider them unusable if they are still hashed or if they have a root dentry attached. Full disclosure -- this check is inherently racy. There's nothing that stops someone from slapping a new dentry onto this inode just after this check, or hashing an existing one that's already attached. So, this is really a "best effort" thing to work around misbehaving servers. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 67b7626a0512d12e34b38ff45e32c693cf9c79a1 Author: David Howells Date: Thu Jul 22 18:33:01 2010 +0100 CIFS: Make cifs_convert_address() take a const src pointer and a length Make cifs_convert_address() take a const src pointer and a length so that all the strlen() calls in their can be cut out and to make it unnecessary to modify the src string. Also return the data length from dns_resolve_server_name_to_ip() so that a strlen() can be cut out of cifs_compose_mount_options() too. Acked-by: Jeff Layton Signed-off-by: David Howells Signed-off-by: Steve French commit f579903ef3e392251dc7e93cb521ddb622fbf8e0 Author: Suresh Jayaraman Date: Fri Jul 30 18:25:56 2010 +0530 cifs: show features compiled in as part of DebugData Fixed the nit pointed out by Jeff. From: Suresh Jayaraman Subject: [PATCH 1/2] cifs: show features compiled in as part of DebugData This patch adds the features that are compiled in to the CIFS debugging data as shown below: $cat /proc/fs/cifs/DebugData Display Internal CIFS Data Structures for Debugging --------------------------------------------------- CIFS Version 1.64 Features: dfs fscache posix spnego xattr Active VFS Requests: 0 ... This patch provides a definitive way to tell what features are currently enabled in the running kernel. This could also help debugging. Signed-off-by: Suresh Jayaraman Cc: Jeff Layton Signed-off-by: Steve French commit 95c99904f614f90797fc589c40c2050b8c1c42cb Author: Suresh Jayaraman Date: Fri Jul 30 18:01:17 2010 +0530 cifs: update README Update the README file to reflect that now DebugData shows all the features enabled. Signed-off-by: Suresh Jayaraman Cc: Jeff Layton -- fs/cifs/README | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) Signed-off-by: Steve French commit cce3dddb87e4b72b1787527eec6826a43a562e71 Author: Rajashekhara, Sudhakar Date: Tue Jun 29 11:35:15 2010 +0530 davinci: dm646x EVM: Specify reserved EDMA channel/slots Not all the channels and slots available on the DM646x EVM are used by the devices on the EVM. These resources can be used by the DSP to speed up codec operations. This patch reserves these channels for the DSP. Signed-off-by: Sudhakar Rajashekhara Signed-off-by: Sekhar Nori Signed-off-by: Kevin Hilman commit a941c50340c97f1f9c5e4d0de7d1bfdbffbdef24 Author: Rajashekhara, Sudhakar Date: Tue Jun 29 11:35:14 2010 +0530 davinci: da8xx/omapl EVM: Specify reserved channels/slots The drivers on da8xx/omapl EVMs do not utilize all the channels and slots provided by EDMA. Some of these are better utilitzed by the DSP on the SoC for speeding up codec operations. Reserve these channels/slots for the DSP. Signed-off-by: Sudhakar Rajashekhara Signed-off-by: Sekhar Nori Signed-off-by: Kevin Hilman commit 90bd4e6dd7f4b747477f2ad0125adb933cf3bcfa Author: Rajashekhara, Sudhakar Date: Tue Jun 29 11:35:13 2010 +0530 davinci: support for EDMA resource sharing Current EDMA driver is not taking care of EDMA channels/slots which are allocated from other processor, say DSP. If a channel/slot is allocated from DSP, the existing EDMA driver can still allocate the same resource on ARM. This patch enables the user to pass the channel/slots reserved for DSP as platform data. EDMA driver scans this list during probe and prepares a bitmap of channel/slots which can be used on ARM side. Trying to reserve channels by doing a 'pre-allocate' using edma_alloc_{slot|channel}() API does not work because 1) The reservation should be done in probe() to avoid race with other ARM side driver trying to use EDMA 2) The alloc channel API sets up the access through shadow region 0 which will be incorrect for DSP usage. It also sets up the channel <-> queue number mapping which is not required as DSP will likely do its own mapping anyway. 3) (minor) There is no API to allocate channels in bulk. Signed-off-by: Sudhakar Rajashekhara Cc: David Brownell Signed-off-by: Sekhar Nori Signed-off-by: Kevin Hilman commit bc3ac9f31642fb4697b313c2eb575c5286f35c2a Author: Sekhar Nori Date: Tue Jun 29 11:35:12 2010 +0530 davinci: edma: provide ability to detect insufficient CC info data This patch modifies the EDMA driver to expect the channel controller (CC) infomation passed on by the platform as a fixed size (EDMA_MAX_CC) array of pointers to structures. Doing so helps catch errors of the sort where the resource structure has information for more channel controllers than the number channel controller info structures defined. Such insufficient platform data would lead to illegal memory accesses. Signed-off-by: Sekhar Nori Signed-off-by: Kevin Hilman commit f027512db7410ed149422262b07d2c78f0a36282 Author: Sekhar Nori Date: Mon Jun 28 17:16:37 2010 +0530 davinci: da8xx: sparse cleanup: remove duplicate entries in irq priorities This patch helps get rid of the following sparse warnings of the type: CHECK arch/arm/mach-davinci/da830.c arch/arm/mach-davinci/da830.c:1026:3: warning: Initializer entry defined twice arch/arm/mach-davinci/da830.c:1027:3: also defined here coming from the irq priorities array init. Apart from one instance of genuinie repetition, most are are instances of multiple #defines of the same interrupt number. I have not removed the multiple definitions from the irq.h file in the hope that someone might decide to use them as shared interrupts at some point of time. The priority initialization however needs to be done only once and hence has been corrected. Signed-off-by: Sekhar Nori Signed-off-by: Kevin Hilman commit a2767b41eee1267db73f405634376a1802cbe3ad Author: Thomas Koeller Date: Tue Jun 22 14:08:12 2010 +0200 davinci: DM365: fixed second serial port The register base address for the second serial port (UART1) was wrong. Signed-off-by: Thomas Koeller Signed-off-by: Kevin Hilman commit cdd854bc42b5e6c79bbbc40c6600d995ffe6e747 Merge: bbc4fd1 42a0ae2 Author: Linus Torvalds Date: Thu Aug 5 09:03:46 2010 -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: (79 commits) powerpc/8xx: Add support for the MPC8xx based boards from TQC powerpc/85xx: Introduce support for the Freescale P1022DS reference board powerpc/85xx: Adding DTS for the STx GP3-SSA MPC8555 board powerpc/85xx: Change deprecated binding for 85xx-based boards powerpc/tqm85xx: add a quirk for ti1520 PCMCIA bridge powerpc/tqm85xx: update PCI interrupt-map attribute powerpc/mpc8308rdb: support for MPC8308RDB board from Freescale powerpc/fsl_pci: add quirk for mpc8308 pcie bridge powerpc/85xx: Cleanup QE initialization for MPC85xxMDS boards powerpc/85xx: Fix booting for P1021MDS boards powerpc/85xx: Fix SWIOTLB initalization for MPC85xxMDS boards powerpc/85xx: kexec for SMP 85xx BookE systems powerpc/5200/i2c: improve i2c bus error recovery of/xilinxfb: update tft compatible versions powerpc/fsl-diu-fb: Support setting display mode using EDID powerpc/5121: doc/dts-bindings: update doc of FSL DIU bindings powerpc/5121: shared DIU framebuffer support powerpc/5121: move fsl-diu-fb.h to include/linux powerpc/5121: fsl-diu-fb: fix issue with re-enabling DIU area descriptor powerpc/512x: add clock structure for Video-IN (VIU) unit ... commit bbc4fd12a635492ad9d12bb418124fa2d5f0d734 Merge: 673b864 2d5973c Author: Linus Torvalds Date: Thu Aug 5 08:59:22 2010 -0700 Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze * 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze: (49 commits) microblaze: Add KGDB support microblaze: Support brki rX, 0x18 for user application debugging microblaze: Remove nop after MSRCLR/SET, MTS, MFS instructions microblaze: Simplify syscall rutine microblaze: Move PT_MODE saving to delay slot microblaze: Fix _interrupt function microblaze: Fix _user_exception function microblaze: Put together addik instructions microblaze: Use delay slot in syscall macros microblaze: Save kernel mode in delay slot microblaze: Do not mix register saving and mode setting microblaze: Move SAVE_STATE upward microblaze: entry.S: Macro optimization microblaze: Optimize hw exception rutine microblaze: Implement clear_ums macro and fix SAVE_STATE macro microblaze: Remove additional setup for kernel_mode microblaze: Optimize SAVE_STATE macro microblaze: Remove additional loading microblaze: Completely remove working with R11 register microblaze: Do not setup BIP in _debug_exception ... commit 673b864fd76a29031aa0b4b08fc80886d527b3b7 Merge: 93b9e9a 71cd03b Author: Linus Torvalds Date: Thu Aug 5 08:58:30 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: arch/sparc/mm: Use GFP_KERNEL MAINTAINERS: Add trailing slash to SBUS path. sbus: autoconvert trivial BKL users to private mutex commit 93b9e9a2d91b8a6c93f14e98382694f83de9f02e Merge: c3d1f17 9354a55 Author: Linus Torvalds Date: Thu Aug 5 08:57:50 2010 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] increase ia64 static per cpu area [IA64] Put ia64 config files on the Uwe Kleine-König diet [IA64] perfmon: convert to unlocked_ioctl [IA64] beautify vmlinux.lds.h commit c3d1f1746b966907ba5ad2f75ddca24db8b21147 Merge: 66eddbf 0d36575 Author: Linus Torvalds Date: Thu Aug 5 08:53:20 2010 -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: (150 commits) MIPS: PowerTV: Separate PowerTV USB support from non-USB code MIPS: strip the un-needed sections of vmlinuz MIPS: Clean up the calculation of VMLINUZ_LOAD_ADDRESS MIPS: Clean up arch/mips/boot/compressed/decompress.c MIPS: Clean up arch/mips/boot/compressed/ld.script MIPS: Unify the suffix of compressed vmlinux.bin MIPS: PowerTV: Add Gaia platform definitions. MIPS: BCM47xx: Fix nvram_getenv return value. MIPS: Octeon: Allow more than 3.75GB of memory with PCIe MIPS: Clean up notify_die() usage. MIPS: Remove unused task_struct.trap_no field. Documentation: Mention that KProbes is supported on MIPS SAMPLES: kprobe_example: Make it print something on MIPS. MIPS: kprobe: Add support. MIPS: Add instrunction format for BREAK and SYSCALL MIPS: kprobes: Define regs_return_value() MIPS: Ritually kill stupid printk. MIPS: Octeon: Disallow MSI-X interrupt and fall back to MSI interrupts. MIPS: Octeon: Support 256 MSI on PCIe MIPS: Decode core number for R2 CPUs. ... commit 65b5ac1479840a3e87f086d68e5ef91f3002e8e2 Author: Jason Wessel Date: Thu Aug 5 09:22:33 2010 -0500 kgdb,docs: Update the kgdb docs to include kms Update the kgdb docs to include information about kernel mode setting support. [Randy Dunlap : grammatical corrections] CC: Randy Dunlap Signed-off-by: Jason Wessel commit 66eddbfcc1f6610fa7c73c8d20a57eaf8e284e2f Merge: 6e57559 66630f7 Author: Linus Torvalds Date: Thu Aug 5 08:49:42 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/czankel/xtensa-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/czankel/xtensa-2.6: xtensa: Disable PCI and nfsroot on simulation target xtensa: Add missing include in coprocessor.h xtensa: Fix the network driver for the simulator target xtensa: Shuffle include statements to fix linker script xtensa: Add -mforce-no-pic option is supported xtensa: Fixes due to bss boundary symbol name changes. xtensa: Fix linker script patch-up xtensa: Fix FLUSH_DCACHE macro for some variants. commit 6e57559022a2c6e3decfb77a228f8a354ac23ba1 Author: Nick Piggin Date: Thu Aug 5 21:08:09 2010 +1000 nick piggin: change email address Signed-off-by: Nick Piggin Signed-off-by: Linus Torvalds commit f90ebd9e98f366c41773ad8d0482dade668f5103 Author: Jason Wessel Date: Thu Aug 5 09:22:32 2010 -0500 drm_fb_helper: Preserve capability to use atomic kms Commit 5349ef3127c77075ff70b2014f17ae0fbcaaf199 (drm/fb: fix FBIOGET/PUT_VSCREENINFO pixel clock handling) changed the logic of when a pixclock was valid vs invalid. The atomic kernel mode setting used by the kernel debugger relies upon the drm_fb_helper_check_var() to always return -EINVAL. Until a better solution exists, this behavior will be restored. CC: David Airlie CC: Jesse Barnes CC: Clemens Ladisch Signed-off-by: Jason Wessel commit c924b934d0cd14a4559611da91f28f59acebe32a Author: Jason Wessel Date: Thu Aug 5 09:22:32 2010 -0500 i915: when kgdb is active display compression should be off If the HW compression is left on, the call backs from the HW will crash the kernel. The only time this code is called is when kernel mode setting is in use with kgdb and the kdb shell. The atomic display pipe handler callback will reset everything when kgdb restores kernel to the run state. Signed-off-by: Jason Wessel Acked-by: Jesse Barnes CC: David Airlie commit 81255565dbf5958187bdb6cc4e3aa0db9ce4d237 Author: Jesse Barnes Date: Mon Aug 2 12:07:50 2010 -0700 drm/i915: use new fb debug hooks Implement atomic kernel mode settings using the fb layer's debug hook system for supporting debugger interaction. Signed-off-by: Jesse Barnes Signed-off-by: Jason Wessel commit 1a7aba7f4e45014c5a4741164b1ecb4ffe616fb7 Author: Jesse Barnes Date: Thu Aug 5 09:22:31 2010 -0500 drm: add KGDB/KDB support Implement the callbacks for KDB entry/exit via the drm helpers. Signed-off-by: Jesse Barnes Signed-off-by: Jason Wessel commit d219adc1228a3887486b58a430e736b0831f192c Author: Jesse Barnes Date: Mon Aug 2 12:05:41 2010 -0700 fb: add hooks to handle KDB enter/exit Add fb ops to handle enter/exit of the kernel debugger. If present, the fb core will register them with KGDB and they'll be called when the debugger is entered and exited. The new functions are responsible for switching to an appropriate debug framebuffer and restoring the interrupted state at exit time. Signed-off-by: Jesse Barnes Signed-off-by: Jason Wessel commit 408a4be1f8cbee511895ee07da2a007a5a24303f Author: Jason Wessel Date: Thu Aug 5 09:22:30 2010 -0500 kgdboc: Add call backs to allow kernel mode switching Add the kms keyword processing to kgdboc and the callbacks to invoke console switching when ever kgdboc is started with "kgdboc=kms,kbd". Signed-off-by: Jason Wessel Signed-off-by: Jesse Barnes commit 81d4450732c68aa728f2c86c0c2993c6cfc3d032 Author: Jason Wessel Date: Thu Aug 5 09:22:30 2010 -0500 vt,console,kdb: automatically set kdb LINES variable The kernel console interface stores the number of lines it is configured to use. The kdb debugger can greatly benefit by knowing how many lines there are on the console for the pager functionality without having the end user compile in the setting or have to repeatedly change it at run time. Signed-off-by: Jason Wessel Signed-off-by: Jesse Barnes CC: David Airlie CC: Andrew Morton commit b45cfba4e9005d64d419718e7ff7f7cab44c1994 Author: Jesse Barnes Date: Thu Aug 5 09:22:30 2010 -0500 vt,console,kdb: implement atomic console enter/leave functions These functions allow the kernel debugger to save and restore the state of the system console. Signed-off-by: Jesse Barnes Signed-off-by: Jason Wessel CC: David Airlie CC: Andrew Morton commit 3fa43aba08c5b5a4b407e402606fbe463239b14a Author: Jason Wessel Date: Thu Aug 5 09:22:25 2010 -0500 debug_core,kdb: fix crash when arch does not have single step When an arch such as mips and microblaze does not implement either HW or software single stepping the debug core should re-enter kdb. The kdb code will properly ignore the single step operation. Attempting to single step the kernel without software or hardware support causes unpredictable kernel crashes. Signed-off-by: Jason Wessel commit df4939350b345ebb44937902827aa75b8ad4998c Author: Dongdong Deng Date: Thu Aug 5 09:22:25 2010 -0500 kgdb,x86: use macro HBP_NUM to replace magic number 4 Use the macros provided by the HW breakpoint API. Signed-off-by: Dongdong Deng Signed-off-by: Jason Wessel commit 7aeb48b70b077375cdd2fe22f7a8b63ed6a98f25 Author: Jason Wessel Date: Thu Aug 5 09:22:25 2010 -0500 kgdb,mips: remove unused kgdb_cpu_doing_single_step operations The mips kgdb specific code does not support software or HW single stepping so it should not implement Signed-off-by: Jason Wessel Signed-off-by: Dongdong Deng Acked-by: Ralf Baechle CC: linux-mips@linux-mips.org commit eac790059b22883763759aeb468ff862bae4627e Author: Jason Wessel Date: Thu Aug 5 09:22:24 2010 -0500 mm,kdb,kgdb: Add a debug reference for the kdb kmap usage The kdb kmap should never get used outside of the kernel debugger exception context. Signed-off-by: Jason Wessel CC: Andrew Morton CC: Ingo Molnar CC: linux-mm@kvack.org commit 9264b278be42c031dc76517a0d4bb154f5dcf470 Author: Andi Kleen Date: Thu Aug 5 09:22:24 2010 -0500 KGDB: Remove set but unused newPC Found by gcc 4.6's new warnings Signed-off-by: Andi Kleen Signed-off-by: Jason Wessel commit 19063c776fe745fab11216422cf56489ee83b452 Author: Jason Wessel Date: Thu Aug 5 09:22:23 2010 -0500 ftrace,kdb: Allow dumping a specific cpu's buffer with ftdump In systems with more than one processor it is desirable to look at the per cpu trace buffers. Signed-off-by: Jason Wessel Acked-by: Steven Rostedt CC: Frederic Weisbecker commit 955b61e597984745fb7d34c75708f6503b6aaeab Author: Jason Wessel Date: Thu Aug 5 09:22:23 2010 -0500 ftrace,kdb: Extend kdb to be able to dump the ftrace buffer Add in a helper function to allow the kdb shell to dump the ftrace buffer. Modify trace.c to expose the capability to iterate over the ftrace buffer in a read only capacity. Signed-off-by: Jason Wessel Acked-by: Steven Rostedt CC: Frederic Weisbecker commit 3f0a55e3579a500ce9f5cdab70a5741f99769118 Author: Michal Simek Date: Thu Aug 5 09:22:22 2010 -0500 kgdb,powerpc: Replace hardcoded offset by BREAK_INSTR_SIZE kgdb_handle_breakpoint checks the first arch_kgdb_breakpoint which is not known by gdb that's why is necessary jump over it. The jump lenght is equal to BREAK_INSTR_SIZE that's why is cleaner to use defined macro instead of hardcoded non-described offset. Signed-off-by: Michal Simek Signed-off-by: Jason Wessel Acked-by: Benjamin Herrenschmidt commit 62a0309c4c99274052e4829ed6a8fe579dd2c767 Author: Jason Wessel Date: Thu Aug 5 09:22:22 2010 -0500 arm,kgdb: Add ability to trap into debugger on notify_die Now that ARM implements the notify die handlers, add the ability for the kernel debugger to receive the notifications. Signed-off-by: Jason Wessel CC: Russell King CC: linux-arm-kernel@lists.infradead.org commit 6d855b1d83c980c1283d98d2d63a2bd3a87e21b7 Author: Jason Wessel Date: Thu Aug 5 09:22:22 2010 -0500 gdbstub: do not directly use dbg_reg_def[] in gdb_cmd_reg_set() Presently the usable registers definitions on x86 are not contiguous for kgdb. The x86 kgdb uses a case statement for the sparse register accesses. The array which defines the registers (dbg_reg_def) should not be used directly in order to safely work with sparse register definitions. Specifically there was a problem when gdb accesses ORIG_AX, which is accessed only through the case statement. This patch encodes register memory using the size information provided from the debugger which avoids the need to look up the size of the register. The dbg_set_reg() function always further validates the inputs from the debugger. Signed-off-by: Jason Wessel Signed-off-by: Dongdong Deng commit 55751145dc1e08e16df418cdd101661f5c6ac991 Author: Jason Wessel Date: Thu Aug 5 09:22:21 2010 -0500 gdbstub: Implement gdbserial 'p' and 'P' packets The gdbserial 'p' and 'P' packets allow gdb to individually get and set registers instead of querying for all the available registers. Signed-off-by: Jason Wessel commit 22eeef4bb2a7fd225089c0044060ed1fbf091958 Author: Jason Wessel Date: Thu Aug 5 09:22:21 2010 -0500 kgdb,arm: Individual register get/set for arm Implement the ability to individually get and set registers for kdb and kgdb for arm. Signed-off-by: Jason Wessel CC: Russell King CC: linux-arm-kernel@lists.infradead.org commit 0896a9becdea36b2da21709b5e73ba47ae6481ea Author: Jason Wessel Date: Thu Aug 5 09:22:21 2010 -0500 kgdb,mips: Individual register get/set for mips Implement the ability to individually get and set registers for kdb and kgdb for mips. Signed-off-by: Jason Wessel Acked-by: Ralf Baechle CC: linux-mips@linux-mips.org commit 12bfa3de63504d879ae427ec1f2884fc46556157 Author: Jason Wessel Date: Thu Aug 5 09:22:20 2010 -0500 kgdb,x86: Individual register get/set for x86 Implement the ability to individually get and set registers for kdb and kgdb for x86. Signed-off-by: Jason Wessel Acked-by: H. Peter Anvin CC: Ingo Molnar CC: x86@kernel.org commit 534af1082329392bc29f6badf815e69ae2ae0f4c Author: Jason Wessel Date: Thu Aug 5 09:22:20 2010 -0500 kgdb,kdb: individual register set and and get API The kdb shell specification includes the ability to get and set architecture specific registers by name. For the time being individual register get and set will be implemented on a per architecture basis. If an architecture defines DBG_MAX_REG_NUM > 0 then kdb and the gdbstub will use the capability for individually getting and setting architecture specific registers. Signed-off-by: Jason Wessel commit 84a0bd5b2830722cf80ff6ad33ef98101a947e14 Author: Jason Wessel Date: Thu Aug 5 09:22:19 2010 -0500 gdbstub: Optimize kgdb's "thread:" response for the gdb serial protocol The gdb debugger understands how to parse short versions of the thread reference string as long as the bytes are paired in sets of two characters. The kgdb implementation was always sending 8 leading zeros which could be omitted, and further optimized in the case of non-negative thread numbers. The negative numbers are used to reference a specific cpu in the case of kgdb. An example of the previous i386 stop packet looks like: T05thread:00000000000003bb; New stop packet response: T05thread:03bb; The previous ThreadInfo response looks like: m00000000fffffffe,0000000000000001,0000000000000002,0000000000000003,0000000000000004,0000000000000005,0000000000000006,0000000000000007,000000000000000c,0000000000000088,000000000000008a,000000000000008b,000000000000008c,000000000000008d,000000000000008e,00000000000000d4,00000000000000d5,00000000000000dd New ThreadInfo response: mfffffffe,01,02,03,04,05,06,07,0c,88,8a,8b,8c,8d,8e,d4,d5,dd A few bytes saved means better response time when using kgdb over a serial line. Signed-off-by: Jason Wessel commit a9fa20a7af1f152d2d89c44c274a310ac654e3ad Author: Andy Shevchenko Date: Thu Aug 5 09:22:19 2010 -0500 kgdb: remove custom hex_to_bin()implementation Signed-off-by: Andy Shevchenko Signed-off-by: Jason Wessel commit ece350d3949e9a60b39e4f9853be118e98d48fbc Author: Grazvydas Ignotas Date: Fri Jul 2 22:54:56 2010 +0200 OMAP: DSS2: OMAPFB: add support for FBIO_WAITFORVSYNC FBIO_WAITFORVSYNC is a stardard ioctl for waiting vsync, already used by some userspace, so add it as an alias for OMAPFB_WAITFORVSYNC. Signed-off-by: Grazvydas Ignotas Signed-off-by: Tomi Valkeinen commit f3c77d6332d979b74364ce2f3fc027ff6c0e00d1 Author: Archit Taneja Date: Mon Aug 2 15:14:11 2010 +0200 OMAP: DSS2: Replace strncmp() with sysfs_streq() in overlay_manager_store() The function overlay_manager_store currently fails if the sysfs input is a prefix string of an existing overlay manager name. This occurs because strncmp compares the two strings only till the length of the input sysfs string. So a sysfs input "lcd" will match manager name "lcd2" which is incorrect behavior. The use of sysfs_streq here will prevent this false positive match to occur. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit e9c31afcffe3df90ebac343611b2f0177bf3cbe4 Author: Archit Taneja Date: Wed Jul 14 14:11:50 2010 +0200 OMAP: DSS2: Fix error path in omap_dsi_update() In the case of an error on calling dsi_update_screen_l4(), a successful framedone callback is still sent to panel-taal. An error should be returned to taal_update() instead. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 451cfbfc27b45a4aebd1e536f2b79c8b7113fbc9 Author: Igor Grinberg Date: Mon Jul 12 12:42:50 2010 +0200 OMAP: DSS2: TDO35S: fix video signaling TDO35S samples the data on the falling adge of the pixel clock, therefore the data strobe should be on the raising edge. Signed-off-by: Igor Grinberg Signed-off-by: Mike Rapoport Signed-off-by: Tomi Valkeinen commit e8c66dcf5aa8df2d1b1f249519c920d3a45dd613 Author: Maurus Cuelenaere Date: Thu Jul 22 00:40:58 2010 +0200 OMAP: DSS2: OMAPFB: Fix invalid bpp for PAL and NTSC modes omapfb_mode_to_timings() sets the bpp to 0 when bootarg omapfb.mode is set to either "pal" or "ntsc". This patch corrects this by setting the bpp to 24, as would be done if omapdss_default_get_recommended_bpp() would be called. Signed-off-by: Maurus Cuelenaere Signed-off-by: Tomi Valkeinen commit e26ed44c950ed9d1feb7719100f475e4e80f1419 Author: Afzal Mohammed Date: Thu Jul 1 15:40:01 2010 +0200 OMAP: DSS2: OMAPFB: Fix probe error path Move sysfs entry creation to omapfb_probe() from omapfb_create_framebuffers(). This will make sure that sysfs entry is not left behind in case of unsuccessful probe due to failure in enabling fb0 of omapfb_create_framebuffers(). Signed-off-by: Afzal Mohammed Signed-off-by: Tomi Valkeinen commit f3fe53c12000adfd50b6a111bd0f5b27a412ca31 Author: Vaibhav Hiremath Date: Fri Mar 19 11:21:19 2010 +0000 OMAP3EVM: Replace vdvi regulator supply with vdds_dsi With recent changes happened in OMAP2/3 DSS library for regulator interface, it is required to define DSI regulator supply, without this DSS (in turn Fbdev) fails to get regulator. Signed-off-by: Vaibhav Hiremath Signed-off-by: Tomi Valkeinen commit edecee858ea5540075cbd84ada8bb07f952fd758 Author: Archit Taneja Date: Tue Jun 22 10:14:01 2010 +0200 OMAP: DSS2: Remove extra return statement Remove extra return statement in omapdss_default_get_recommended_bpp from overlay.c Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit f55fdcfe88c5a23115b6d93674ad1e082e841091 Author: Tomi Valkeinen Date: Thu Jun 3 16:27:46 2010 +0300 OMAP: DSS2: adjust YUV overlay width to be even An overlay in YUV mode has to have an even input width, because data for each pixel is divided between two adjacent pixels. The algorithm handling manual update overlay adjusting may adjust the overlay width to be odd. This patch adds a check for that situation, and makes the width even. The width is increased by one if it is possible (the unadjusted input width is larger than the width), and decreased by one if increasing is not possible. Signed-off-by: Tomi Valkeinen commit 5cb33e2166067e1fff7ebc3b849ec70a6fd7ec1d Author: Jani Nikula Date: Tue Jun 1 18:08:18 2010 +0300 OMAP: DSS2: OMAPFB: Fix sysfs mirror input check Using bool silently converted input to 0 or 1, making the range check useless. Use unsigned long instead, and convert to bool later. Found by Coverity. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 7f8b183059edc6c74654301431d520a91539e45f Author: Jani Nikula Date: Tue Jun 1 17:33:54 2010 +0300 OMAP: DSS2: OMAPFB: Remove redundant color register range check Unsigned regno can never be less than zero. Found by Coverity. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 86f2d7dd72e1ff4656107e42a12c999a7b9c26d4 Author: Jani Nikula Date: Tue Jun 1 17:25:10 2010 +0300 OMAP: DSS2: OMAPFB: Remove redundant rotate range check Unsigned rotate can never be less than zero. Found by Coverity. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 9325588757aa7d08bf2ca9c63b669d0d7aa2fc40 Author: Jani Nikula Date: Tue Jun 1 15:12:12 2010 +0300 OMAP: DSS2: OMAPFB: Check fb2display() return value Make sure NULL return value of fb2display() is not referenced. Found by Coverity. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit ffb63c95b2fa52b02b45537d18f0ca698bef5496 Author: Tomi Valkeinen Date: Fri May 21 10:09:18 2010 +0300 OMAP: DSS2: Taal: Optimize enable_te, rotate, mirror when value unchanged Skip any further processing of taal_enable_te(), taal_rotate(), and taal_mirror() if value remains unchanged. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit a602771c43ed7f1a02c7766c94fda74ac5d72a8b Author: Tomi Valkeinen Date: Tue May 25 17:01:28 2010 +0300 OMAP: DSS2: DSI: detect unsupported update requests OMAP DSS HW cannot send updates with odd widths. Normally the widths are made even while preparing the update. This patch adds a BUG_ON() to check if the update width is even. This is to detect broken updates cleanly, as otherwise the OMAP DSS HW will just halt, leading to obscure error situations. Signed-off-by: Tomi Valkeinen commit 36194b4792bacf8a02e713536487af60938f06dd Author: Tomi Valkeinen Date: Tue May 18 13:35:37 2010 +0300 OMAP: DSS2: DSI: increase FIFO low threshold The current FIFO low threshold was too low, and caused the FIFO to run empty when core domain went to INA state between FIFO fills. This patch increases the low threshold to keep that from happening. The threshold values depend quite much on the HW and the use cases, so this should actually be somehow configurable from board files, perhaps. Signed-off-by: Tomi Valkeinen commit bbecb50b5f609e0291cce83e10b5500cc8d688c6 Author: Tomi Valkeinen Date: Mon May 10 14:35:33 2010 +0300 OMAP: DSS2: DSI: Add error IRQ mask for DSI complexIO The code presumed that all ComplexIO interrupts are errors. This is not the case. This patch adds proper error mask for CIO interrupt handling. Signed-off-by: Tomi Valkeinen commit fa15c79b9a75cdc5eaabfed7413a9e098c841022 Author: Tomi Valkeinen Date: Fri May 14 17:42:07 2010 +0300 OMAP: DSS2: DSI: Remove BTA after set_max_rx_packet_size SMRPS function always sent BTA after sending the SMRPS packet. This is not needed, and also caused some (buggy) panels to bug. This patch removes the BTA. Signed-off-by: Tomi Valkeinen commit 26a8c2507a224d39003665cd6e7678520c733c04 Author: Tomi Valkeinen Date: Wed Jun 9 15:31:34 2010 +0300 OMAP: DSS2: change manual update scaling setup Currently the update area on manual update displays is automatically enlargened to fully cover scaled overlays. This patch makes that optional, allowing the panel driver to choose if it's used or not. Signed-off-by: Tomi Valkeinen commit ab83b14c829e35436b423947bb5b151133314346 Author: Tomi Valkeinen Date: Wed Jun 9 15:31:01 2010 +0300 OMAP: DSS2: DSI: use BTA to end the frame transfer Previously a work was started on FRAMEDONE interrupt, and this work either sent a BTA synchronously or looped until TE_SIZE was zero, to wait for the end of the transfer. This patch changes a BTA to be sent asynchronously from FRAMEDONE interrupt, and when a BTA interrupt is received, the transfer is finished. This way we do the whole process asynchronously, and also inside interrupt context. This will give us much better latency to handle the end of the frame than with the previous work based solution. Signed-off-by: Tomi Valkeinen commit 9ecd96842bc6312fdb2f84b6379a6f92686e2fd0 Author: Tomi Valkeinen Date: Fri Apr 30 11:24:33 2010 +0300 OMAP: DSS2: DSI: change dsi_vc_config_l4/vp() Change dsi_vc_config_l4/vp() to loop for the VC_BUSY flag to change, and return an error if it fails. Busy looping is bad, but there's no interrupt that can be used for all the cases where VC can be busy. So the caller should first try to make sure that the VC is not busy, if possible, and then call dsi_vc_config_l4/vp(). Most notable case when the caller cannot be sure if the VC is busy is after frame has been sent. Usually DSI buffers have been emptied until we need to reconfig the VC, but in some rare cases the VC can still be busy, and this patch will handle that case. Signed-off-by: Tomi Valkeinen commit d73701044b70924f450fc6b161d952b38b7d0182 Author: Ville Syrjälä Date: Thu Apr 22 22:50:09 2010 +0200 OMAP: DSS2: DSI: Disable interface when disabling the display Once the DSI PLL is separated from the DSI display a full DSI reset will not be performed every time the display is enabled so the interface and VCs must be disabled when disabling the display. If the VCs are not disabled some register accesses will abort. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit e406f9079b993f4d5d7b5a3452b11df81ff2aef0 Author: Tomi Valkeinen Date: Wed Jun 9 15:28:12 2010 +0300 OMAP: DSS2: DSI: Wait for DSI PLL clocks to be active before selecting them The TRM tells us to wait for the DSI PLL derived clocks to become active before selecting them for use. I didn't actually have any issues which this would fix but according to the TRM it seems to be the right thing to do. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit ebf0a3fef2240983fbc994f15d8c3d8a20102480 Author: Ville Syrjälä Date: Thu Apr 22 22:50:05 2010 +0200 OMAP: DSS2: DSI: Print an error message if DSI clock calc fails Print an error message if dsi_calc_clock_rates() fails just like it's done when dispc_calc_clock_rates() fails. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 481dfa0eb915fb248c93ea37cd6e669b91ee9f8e Author: Ville Syrjälä Date: Thu Apr 22 22:50:04 2010 +0200 OMAP: DSS2: DSI: Disable PCKFREE on error Do not leave the free running pixel clock enabled if the DSI PLL reset times out. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 0d365753d0b7c26043fdfa97790411606fb40112 Author: David VomLehn Date: Mon Aug 2 18:40:58 2010 -0700 MIPS: PowerTV: Separate PowerTV USB support from non-USB code Separate USB code into a file separate from asic/asic_devices. Separating the USB code from everything else in asic/asic_devices.c goes a long way toward reducing the use of that file as a dumping ground for everything that didn't seem to fit anywhere else. Signed-off-by: David VomLehn To: linux-mips@linux-mips.org Cc: greg@kroah.com Cc: linux-usb@vger.kernel.org Patchwork: http://patchwork.linux-mips.org/patch/1522/ Signed-off-by: Ralf Baechle commit 5089ca9d31b0250f42ccd0e0a41b3547f22a20a0 Author: Wu Zhangjin Date: Wed Jun 16 15:52:21 2010 +0800 MIPS: strip the un-needed sections of vmlinuz This patch use "strip -s" to strip the .symtab and .strtab sections of vmlinuz. Note: This patch is based on http://patchwork.linux-mips.org/patch/1324/ Signed-off-by: Wu Zhangjin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1383/ Signed-off-by: Ralf Baechle commit 3c4b7fde941639bd96c7d0429b4da925f07be75f Author: Wu Zhangjin Date: Wed Jun 2 16:35:25 2010 +0800 MIPS: Clean up the calculation of VMLINUZ_LOAD_ADDRESS We have calculated VMLINUZ_LOAD_ADDRESS in shell, which is indecipherable. This patch rewrites it in C. Signed-off-by: Wu Zhangjin To: linux-mips Cc: Alexander Clouter Cc: Manuel Lauss Cc: Sam Ravnborg Acked-by: Sam Ravnborg Reviewed-by: Alexander Clouter Patchwork: https://patchwork.linux-mips.org/patch/1324/ Signed-off-by: Ralf Baechle commit 1e1a77d6984a0010a2225de97009ae22f1ffa026 Author: Wu Zhangjin Date: Wed Jun 16 15:52:20 2010 +0800 MIPS: Clean up arch/mips/boot/compressed/decompress.c - Remove several outdated comments - Clearify the definition of zimage_start and zimage_size and the their usage Signed-off-by: Wu Zhangjin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1382/ Signed-off-by: Ralf Baechle commit bdbffd9b8d565fa7e011def532d3770be8d8091b Author: Wu Zhangjin Date: Wed Jun 16 15:52:19 2010 +0800 MIPS: Clean up arch/mips/boot/compressed/ld.script - Remove unused symbols: _fdata, _text; only _edata and _end are needed by head.S - Remove unused sections: .sbss, .stab, .gptab.sdata, .gptab.sbss - Change the alignment to 16 bytes to ensure it is greater than any fundamental type of a MIPS compiler. - Clean up comments Signed-off-by: Wu Zhangjin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1381/ Signed-off-by: Ralf Baechle commit c853d945d3e0cadf60da03106f7d9bbf1346a518 Author: Wu Zhangjin Date: Wed Jun 2 16:35:24 2010 +0800 MIPS: Unify the suffix of compressed vmlinux.bin The compressed vmlinux.bin is only a temp file so it's ok to use the same suffix .z for them (.gz,.lzo,.lzma...) to remove several lines and simpify the maintenance (no need to add the "suffix_$(xxx) := suffix" line). Signed-off-by: Wu Zhangjin To: linux-mips Cc: Alexander Clouter Cc: Manuel Lauss Cc: Sam Ravnborg Patchwork: https://patchwork.linux-mips.org/patch/1323/ Signed-off-by: Ralf Baechle --- commit 51f1336d4dbd0935d873761f7f267c3f5abc9bd6 Author: David VomLehn Date: Mon Aug 2 11:44:00 2010 -0700 MIPS: PowerTV: Add Gaia platform definitions. Define ASIC address, memory preallocations, and initialization code for the Gaia platform. Signed-off-by: David VomLehn To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1519/ Signed-off-by: Ralf Baechle commit 47a348614492987ef307aad299c09163344e4eaf Author: Hauke Mehrtens Date: Mon Aug 2 23:56:22 2010 +0200 MIPS: BCM47xx: Fix nvram_getenv return value. Nvram_getenv should behave like cfe_getenv. cfe_getenv returns 0 on success and -9 if the value was not found. If the input was wrong -8 will be returned by cfe_getenv. Change nvram_getenv to do the same. Signed-off-by: Hauke Mehrtens Cc: Waldemar Brodkorb Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1520/ Signed-off-by: Ralf Baechle commit 2b5987abaf2dd6c3934e0376b7d9f64411cdcf03 Author: David Daney Date: Wed Aug 4 14:53:57 2010 -0700 MIPS: Octeon: Allow more than 3.75GB of memory with PCIe We reserve the 3.75GB - 4GB region of PCIe address space for device to device transfers, making the corresponding physical memory under direct mapping unavailable for DMA. To allow for PCIe DMA to all physical memory we map this chunk of physical memory with BAR1. Because of the resulting discontinuity in the mapping function, we remove a page of memory at each end of the range so multi-page DMA buffers can never be allocated that span the range. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1535/ Signed-off-by: Ralf Baechle commit 70dc6f045fce6907b5d10377850a78ada6837ffb Author: David Daney Date: Tue Aug 3 15:44:43 2010 -0700 MIPS: Clean up notify_die() usage. The sixth argument of notify_die() is a signal number, the fifth is a trap number. Instead of passing a signal number in a randomly selected argument, pass it in the sixth. Extract the exception code from regs and pass that as the trap number. Get rid of redundant cast, and remove some gratuitous spaces. Nobody actually does anything with the signal number or trap number, but we might as well populate them with sensible values. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1532/ Signed-off-by: Ralf Baechle commit 7281cd22973008a782860e48ed8d85d00204168c Author: David Daney Date: Tue Aug 3 14:57:39 2010 -0700 MIPS: Remove unused task_struct.trap_no field. It is initialized to zero and only ever read. Remove it, and pass zero in its place. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1531/ Signed-off-by: Ralf Baechle commit 9bb4d9dfd890372092338cc460b3f921c8be8e31 Author: David Daney Date: Tue Aug 3 11:22:22 2010 -0700 Documentation: Mention that KProbes is supported on MIPS MIPS now has KProbes support, so kprobes.txt should reflect it. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: ananth@in.ibm.com To: anil.s.keshavamurthy@intel.com To: davem@davemloft.net To: masami.hiramatsu.pt@hitachi.com Cc: linux-kernel@vger.kernel.org Cc: hschauhan@nulltrace.org Patchwork: https://patchwork.linux-mips.org/patch/1527/ Signed-off-by: Ralf Baechle commit 8a1492370b493cf680b86885286f07cb9b967716 Author: David Daney Date: Tue Aug 3 11:22:21 2010 -0700 SAMPLES: kprobe_example: Make it print something on MIPS. This KProbes example is a little useless if it doesn't print anything. For MIPS print similar messages to those produced on x86 and PPC. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: ananth@in.ibm.com To: anil.s.keshavamurthy@intel.com To: davem@davemloft.net To: masami.hiramatsu.pt@hitachi.com Cc: linux-kernel@vger.kernel.org Cc: hschauhan@nulltrace.org Patchwork: https://patchwork.linux-mips.org/patch/1528/ Signed-off-by: Ralf Baechle commit c1bf207d6ee1eb72e9c10365edbdc7c9ff7fb9b0 Author: David Daney Date: Tue Aug 3 11:22:20 2010 -0700 MIPS: kprobe: Add support. This patch is based on previous work by Sony and Himanshu Chauhan. I have done some cleanup and implemented JProbes and KRETPROBES. The KRETPROBES part is pretty much copied verbatim from powerpc. A possible future enhance might be to factor out the common code. Signed-off-by: David Daney Cc: Himanshu Chauhan To: linux-mips@linux-mips.org To: ananth@in.ibm.com, To: anil.s.keshavamurthy@intel.com To: davem@davemloft.net To: masami.hiramatsu.pt@hitachi.com Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1525/ Patchwork: https://patchwork.linux-mips.org/patch/1530/ Signed-off-by: Ralf Baechle commit 2ea6399f553bf9a47260723b44d50f747e310218 Author: David Daney Date: Tue Aug 3 11:22:19 2010 -0700 MIPS: Add instrunction format for BREAK and SYSCALL Signed-off-by: David Daney To: linux-mips@linux-mips.org To: ananth@in.ibm.com To: anil.s.keshavamurthy@intel.com To: davem@davemloft.net To: masami.hiramatsu.pt@hitachi.com Cc: linux-kernel@vger.kernel.org Cc: hschauhan@nulltrace.org Patchwork: https://patchwork.linux-mips.org/patch/1524/ Signed-off-by: Ralf Baechle commit ef771ad4ad59c88ffd1e313aa9e943751f83d3a2 Author: David Daney Date: Tue Aug 3 13:53:24 2010 -0700 MIPS: kprobes: Define regs_return_value() Signed-off-by: David Daney To: linux-mips@linux-mips.org To: ananth@in.ibm.com To: anil.s.keshavamurthy@intel.com To: davem@davemloft.net To: masami.hiramatsu.pt@hitachi.com Cc: linux-kernel@vger.kernel.org, Cc: hschauhan@nulltrace.org Patchwork: https://patchwork.linux-mips.org/patch/1529/ Signed-off-by: Ralf Baechle commit d7674c4f5899712a262d4946ca6edaa947148f52 Author: Ralf Baechle Date: Thu Aug 5 13:26:27 2010 +0100 MIPS: Ritually kill stupid printk. This belongs into userland. Signed-off-by: Ralf Baechle commit 52a0f00b50ea360e3cf7e3281523c6a8aafc5761 Author: Chandrakala Chavva Date: Mon Jul 26 18:14:16 2010 -0700 MIPS: Octeon: Disallow MSI-X interrupt and fall back to MSI interrupts. MSI-X interrupts are not supported yet for Octeon, return error if MSI-X interrupts are requested by driver so that the driver will fall back to use MSI interrupts. Signed-off-by: Chandrakala Chavva To: linux-mips@linux-mips.org Cc: David Daney Patchwork: https://patchwork.linux-mips.org/patch/1506/ Signed-off-by: Ralf Baechle Signed-off-by: David Daney commit 1aa2b2782a056b9bb0a19fae5a04624d8dcd8379 Author: David Daney Date: Mon Jul 26 18:14:15 2010 -0700 MIPS: Octeon: Support 256 MSI on PCIe Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: http://patchwork.linux-mips.org/patch/1507/ Signed-off-by: Ralf Baechle commit 0c2f4551df3880083e4733b5d928d2758b71162c Author: David Daney Date: Mon Jul 26 14:29:37 2010 -0700 MIPS: Decode core number for R2 CPUs. The struct cpuinfo_mips.core field should be populated with the physical core number. For R2 CPUs, this is carried in the low 10 bits of Ebase. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1505/ Signed-off-by: Ralf Baechle commit fa90c87297a1bebd8356e41d71518b37ada56583 Author: Kulikov Vasiliy Date: Wed Jul 14 22:01:42 2010 +0400 MIPS: SMTC: Use %p to format pointers While at it, drop 0x prefix. Signed-off-by: Kulikov Vasiliy To: kernel-janitors@vger.kernel.org Cc: Chris Dearman Cc: "Robert P. J. Day" Cc: Rusty Russell Cc: André Goddard Rosa Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1458/ Signed-off-by: Ralf Baechle commit e608aadd17b2430ad9f6c412311bfcc120222ae3 Author: Wu Zhangjin Date: Sat Jul 24 09:22:15 2010 +0800 MIPS: Loongson: Remove unused macro LOONGSON_PERFCNT_IRQ LOONGSON2_PERFCNT_IRQ is used for the irq number of the performance overflow interrupts; LOONGSON_PERFCNT_IRQ is unused so remove it. Signed-off-by: Wu Zhangjin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1494/ Signed-off-by: Ralf Baechle commit de3bc0e7ba5e89d63cb2dbac4e49a5c4b18669b5 Author: Wu Zhangjin Date: Sat Jul 24 09:22:14 2010 +0800 MIPS: Loongson: Oprofile: add a new do_perfcnt_IRQ() On FuLoong-2F IP6 is shared by the performance counter overflow interrupt and the Bonito northbridge interrupt. To reduce overhead only call do_IRQ() when oprofile is enabled to reduce overhead. This patch adds an inline function do_perfcnt_IRQ() to hide the #if's , which can be shared by the other Loongson machines, i.e. gdium. Signed-off-by: Wu Zhangjin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1492/ Signed-off-by: Ralf Baechle commit b8c7428af023c4cc37b8651e309713c1f4d9a18e Author: Wu Zhangjin Date: Sat Jul 24 09:22:13 2010 +0800 MIPS: Loongson: Remove set_irq_trigger_mode() set_irq_trigger_mode() is not needed on all platforms so remove it and move the related source code to mach_init_irq(). This will allow gdium to share the common irq.c without adding an empty set_irq_trigger_mode(). Signed-off-by: Wu Zhangjin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1493/ Signed-off-by: Ralf Baechle commit 4c076fb41ac93bc0cbd55f2a731cc31337804acb Author: David Daney Date: Sat Jul 24 10:16:05 2010 -0700 WATCHDOG: Add watchdog driver for OCTEON SOCs The OCTEON is a MIPS64 based SOC family with an on chip watchdog unit. The driver is split into two source files one for the C code and one for assembly. Assembly is needed to handle the NMI and then print the machine state before the reboot is triggered. Signed-off-by: David Daney Cc: Wim Van Sebroeck Cc: Andrew Morton Cc: Russell King Cc: Tony Lindgren Cc: Marc Zyngier Cc: Thierry Reding Cc: Sam Ravnborg To: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org, Patchwork: https://patchwork.linux-mips.org/patch/1503/ Signed-off-by: Wim Van Sebroeck Signed-off-by: Ralf Baechle create mode 100644 drivers/watchdog/octeon-wdt-main.c create mode 100644 drivers/watchdog/octeon-wdt-nmi.S commit 96ffa02d219f50a52e0482ad85130858c61efc63 Author: David Daney Date: Fri Jul 23 18:41:46 2010 -0700 MIPS: Define ST0_NMI in asm/mipsregs.h This is used by the forthcoming OCTEON watchdog patch. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: wim@iguana.be Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1498/ Signed-off-by: Ralf Baechle commit 2dc2ae344e0e655fb4296266036d2ac5064634ae Author: David Daney Date: Fri Jul 23 18:41:45 2010 -0700 MIPS: Export __cpu_number_map and __cpu_logical_map. The forthcoming Octeon watchdog driver will use them. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: wim@iguana.be Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1499/ Signed-off-by: Ralf Baechle commit ea435464a14af37b9384e96b2f5a1f76a605b048 Author: David Daney Date: Fri Jul 23 18:41:44 2010 -0700 MIPS: Octeon: Export prom_putchar(). The forthcoming watchdog driver will use it. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: wim@iguana.be Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1499/ Signed-off-by: Ralf Baechle commit 22b0763a2328434ac68cca884e1b7d350ca61332 Author: David Daney Date: Fri Jul 23 18:41:43 2010 -0700 MIPS: uasm: Add option to export uasm API. A 'select EXPORT_UASM' in Kconfig will cause the uasm to be exported for use in modules. When it is exported, all the uasm data and code cease to be __init and __initdata. Also daddiu_bug cannot be __cpuinitdata if uasm is exported. The cleanest thing is to just make it normal data. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: wim@iguana.be Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1500/ Signed-off-by: Ralf Baechle commit 5b97c3f7ae0ad0eea1eb90d649420a1a180f2bdf Author: David Daney Date: Fri Jul 23 18:41:42 2010 -0700 MIPS: uasm: Add BBIT0 and BBIT1 instructions These are OCTEON specific instructions. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: wim@iguana.be Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1496/ Signed-off-by: Ralf Baechle commit de6d5b555c1887b5b9b59854a45ebd4805fb4b39 Author: David Daney Date: Fri Jul 23 18:41:41 2010 -0700 MIPS: uasm: Add drotr32 and uasm_i_drotr_safe. Signed-off-by: David Daney To: linux-mips@linux-mips.org To: wim@iguana.be Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1495/ Signed-off-by: Ralf Baechle commit ca148125e6134de334b61822539d220794d8da18 Author: David Daney Date: Tue Jun 1 13:18:15 2010 -0700 MIPS: Octeon: Implement delays with cycle counter. Power throttling make deterministic delay loops impossible. Re-implement delays using the cycle counter. This also allows us to get rid of the code that calculates loops per jiffy. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1317/ Signed-off-by: Ralf Baechle commit e6b78c4f224925c71cce57033b1e6e30dd56add7 Author: Lars-Peter Clausen Date: Sat Jul 17 11:16:29 2010 +0000 MIPS: JZ4740: Add qi_lb60 board support Add support for the qi_lb60 (a.k.a QI Ben NanoNote) clamshell device. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1472/ Signed-off-by: Ralf Baechle commit f6a21388bd255773cc80d4423afb4c69d4daa173 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:29 2010 +0000 POWER: Add JZ4740 battery driver. Add support for the battery voltage measurement part of the JZ4740 ADC unit. Signed-off-by: Lars-Peter Clausen Acked-by: Anton Vorontsov Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1416/ Signed-off-by: Ralf Baechle commit 7f983ba93d449972d5f372f12c6ad32d86ef30b4 Author: Lars-Peter Clausen Date: Sat Jun 19 18:32:58 2010 +0000 HWMON: Add JZ4740 ADC driver Add support for reading the ADCIN pin of the ADC unit on JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: lm-sensors@lm-sensors.org Acked-by: Jean Delvare Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1425/ Signed-off-by: Axel Lin Signed-off-by: Ralf Baechle commit 2249071b3e03747884d0781ab10b0b9ceac5756b Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:24 2010 +0000 USB: Add JZ4740 OHCI support Add OHCI glue code for JZ4740 SoCs OHCI module. Signed-off-by: Lars-Peter Clausen Cc: Greg Kroah-Hartman Cc: David Brownell Cc: linux-usb@vger.kernel.org Acked-by: Greg Kroah-Hartman Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1411/ Signed-off-by: Ralf Baechle commit 61bfbdb856879cff583fe53b2ab6ae907faedee7 Author: Lars-Peter Clausen Date: Thu Jul 15 20:06:04 2010 +0000 MMC: Add support for the controller on JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Acked-by: Matt Fleming Cc: Andrew Morton Cc: Matt Fleming Cc: linux-mmc@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1463/ Patchwork: https://patchwork.linux-mips.org/patch/1523/ Signed-off-by: Ralf Baechle commit ba01d6ec04f6d1d983101eb527caa96318fc1017 Author: Lars-Peter Clausen Date: Sat Jul 17 11:15:29 2010 +0000 MTD: Nand: Add JZ4740 NAND driver Add support for the NAND controller on JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: David Woodhouse Cc: linux-mtd@lists.infradead.org Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1470/ Signed-off-by: Ralf Baechle commit 7a92d54521443450b14d89c413ec2072365da5bc Author: Lars-Peter Clausen Date: Sat Jul 17 11:14:34 2010 +0000 FBDEV: JZ4740: Add framebuffer driver Add support for the LCD controller on JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: Andrew Morton Cc: linux-fbdev@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1470/ Signed-off-by: Ralf Baechle commit 3bf0eea8942fdcb948dea7e45c38bf7563407c49 Author: Lars-Peter Clausen Date: Sat Jun 19 18:29:50 2010 +0000 RTC: Add JZ4740 RTC driver Add support for the RTC unit on JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: Alessandro Zummo Cc: Paul Gortmaker Cc: rtc-linux@googlegroups.com Acked-by: Wan ZongShun Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Cc: Alessandro Zummo , Patchwork: https://patchwork.linux-mips.org/patch/1424/ Signed-off-by: Ralf Baechle commit 5ebabe59807e116976b073ec43327eedb4b357e2 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:19 2010 +0000 MIPS: JZ4740: Add Kbuild files Add the Kbuild files for the JZ4740 architecture and adds JZ4740 support to the MIPS Kbuild files. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1406/ Signed-off-by: Ralf Baechle commit c2a529f73de56cb99ae9abcc2c8fb9fe3f2d2039 Author: Lars-Peter Clausen Date: Sat Jul 17 11:13:29 2010 +0000 MIPS: JZ4740: Add platform devices Add platform devices for all the JZ4740 platform drivers. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1469/ Signed-off-by: Ralf Baechle commit a8b7e9e8b08afe97e5b3d9bdd499867ce9a1c913 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:17 2010 +0000 MIPS: JZ4740: Add prom support Add support for initializing arcs_cmdline on JZ4740 based machines and provides a prom_putchar implementation. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1404/ Signed-off-by: Ralf Baechle commit c3b9566de89f40557e3a3d041ca08b05978aeb12 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:16 2010 +0000 MIPS: JZ4740: Add serial support The JZ4740 UART interface is almost 16550 compatible. The UART module needs to be enabled by setting a bit in the FCR register and it has support for receive timeout interrupts. Instead of adding yet another machine specific quirk to the 8250 serial driver we provide a serial_out implementation which sets the required additional flags. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1403/ Signed-off-by: Ralf Baechle commit eda0347bf8b449a42b3bf4e0b9754263d853982f Author: Lars-Peter Clausen Date: Sat Jul 17 11:12:20 2010 +0000 MIPS: JZ4740: Add PWM support Add support for the PWM part of the timer unit on a JZ4740 SoC. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1468/ Signed-off-by: Ralf Baechle commit 68fcfe7f82f46cc2d0c28128afafbd3a3ff874f8 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:14 2010 +0000 MIPS: JZ4740: Add DMA support. Add support for DMA transfers on JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1401/ Signed-off-by: Ralf Baechle commit a55f4506652cbdf23fa1b5fd509d4f3cc01e1843 Author: Lars-Peter Clausen Date: Sat Jul 17 11:11:19 2010 +0000 MIPS: JZ4740: Add GPIO support Add gpiolib support for JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1467/ Signed-off-by: Ralf Baechle commit 713233fbaf8c859f71b246c81baf082c0e6b9625 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:12 2010 +0000 MIPS: JZ4740: Add setup code Add plat_mem_setup and get_system_type for JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1399/ Signed-off-by: Ralf Baechle commit c863a2368ced0e6df07121d13933ee0f5a5ee681 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:11 2010 +0000 MIPS: JZ4740: Add power-management and system reset support Add support for suspend/resume and poweroff/reboot on a JZ4740 SoC. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1398/ Signed-off-by: Ralf Baechle commit b200eff6d16cf53dfaf14eb6f1934890d2db2237 Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:10 2010 +0000 MIPS: JZ4740: Add clocksource/clockevent support. Add clocksource and clockevent support for the timer/counter unit on JZ4740 SoCs. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1397/ Signed-off-by: Ralf Baechle commit 544a7324198972716d486e04e77bc2622e12245b Author: Lars-Peter Clausen Date: Sat Jun 19 04:08:09 2010 +0000 MIPS: JZ4740: Add timer support Add support for the timer/counter unit on a JZ4740 SoC. This code is used as a common base for the JZ4740 clocksource/clockevent implementation and PWM support. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1396/ Signed-off-by: Ralf Baechle commit 9869848d12601cdddf097a36aebe0b10dc5d177b Author: Lars-Peter Clausen Date: Sat Jul 17 11:08:43 2010 +0000 MIPS: JZ4740: Add IRQ handler code Add support for IRQ handling on a JZ4740 SoC. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1465/ Signed-off-by: Ralf Baechle commit 570a0bb82f0b5c2c6324153010e72c3f0c26a7a3 Author: Lars-Peter Clausen Date: Sat Jul 17 11:10:00 2010 +0000 MIPS: JZ4740: Add clock API support. Add support for managing the clocks found on JZ4740 SoC through the Linux clock API. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1466/ Signed-off-by: Ralf Baechle commit 83ccf69d8f118306e90af703f32109edb6c1e4a1 Author: Lars-Peter Clausen Date: Sat Jul 17 11:07:51 2010 +0000 MIPS: JZ4740: Add base support for Ingenic JZ4740 System-on-a-Chip Adds a new cpu type for the JZ4740 to the Linux MIPS architecture code. It also adds the iomem addresses for the different components found on a JZ4740 SoC. Signed-off-by: Lars-Peter Clausen Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1464/ Signed-off-by: Ralf Baechle commit babba4f11379fb3804de802a3d0bc6b96c59d547 Author: David Daney Date: Fri Jul 23 10:57:51 2010 -0700 MIPS: Octeon: HOTPLUG_CPU fixes. * Rename camel-case InitTLBStart_addr to octeon_bootloader_entry_addr. * Convert calls to cvmx_read64_uint32(), to simple pointer dereferences. * Set proper ebase. * Don't confuse coreid and cpu numbers. * Try to maintain consistent bootloader coremask. * Update the signature and boot_init_vector of supported bootloaders. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1491/ Signed-off-by: Ralf Baechle commit 442f201286bfbbcd5ba5acb616914004be3e6268 Author: David Daney Date: Fri Jul 23 10:57:50 2010 -0700 MIPS: Octeon: Simplify hotcpu_notifier registration. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1490/ Signed-off-by: Ralf Baechle commit edfcbb8cac13d679c0d656fd4576b3945429f3c0 Author: David Daney Date: Fri Jul 23 10:57:49 2010 -0700 MIPS: Octeon: Clean up SMP CPU numbering. Also number offline CPUs that could potentially be brought on-line later. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1489/ Signed-off-by: Ralf Baechle commit 7d9eee6e52e817c006666b0efc5068aa219dbecb Author: David Daney Date: Fri Jul 23 10:43:49 2010 -0700 MIPS: Octeon: Make MSI use handle_simple_irq(). The use of handle_percpu_irq() is not really what we want for MSI, use handle_simple_irq() instead. This is probably the prototypical case for using handle_simple_irq(), because all the MSIs are dispatched from the root interrupt service routine. Also since the base IRQ is not shared, don't pass IRQF_SHARED. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1488/ Signed-off-by: Ralf Baechle commit a5decf700be1123c2da6bdab5099bce072c55cc2 Author: David Daney Date: Fri Jul 23 10:43:48 2010 -0700 MIPS: Octeon: Get rid of a bunch of MSI IRQ number definitions. MSI IRQ numbers are allocated dynamically, so there is no reason to have all these static definitions. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1487/ Signed-off-by: Ralf Baechle commit 3508920f5811fcb8bdbf02943eb5ed531834bbc4 Author: David Daney Date: Fri Jul 23 10:43:47 2010 -0700 MIPS: Octeon: Fix fixup_irqs for HOTPLUG_CPU The original version went behind the back of everything, leaving things in an inconsistent state. Now we use the irq_set_affinity() to do the work for us. This has the advantage that the IRQ core's view of the affinity stays consistent. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1486/ Signed-off-by: Ralf Baechle commit 5aae1fd4d41ea69da845e11d4766ab61666494ed Author: David Daney Date: Fri Jul 23 10:43:46 2010 -0700 MIPS: Octeon: Improve interrupt handling. The main change is to change most of the IRQs from handle_percpu_irq to handle_fasteoi_irq. This necessitates extracting all the .ack code to common functions that are not exposed to the irq core. The affinity code now acts more sanely, by doing round-robin distribution instead of broadcasting. Because of the change to handle_fasteoi_irq and affinity, some of the IRQs had to be split into separate groups with their own struct irq_chip to prevent undefined operations on specific IRQ lines. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1485/ Signed-off-by: Ralf Baechle commit a894f14d7ebe9e278b496b1e653ae57f2eff514e Author: David Daney Date: Fri Jul 23 10:43:45 2010 -0700 MIPS: Octeon: Move MSI code out of octeon-irq.c. Put all the MSI code in one place (msi-octeon.c). This simplifies octeon-irq.c and gets rid of some ugly #ifdefs Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1484/ Signed-off-by: Ralf Baechle commit cb8f55b9207df96ccc332748eb3d154cd2e8014f Author: Wolfgang Grandegger Date: Thu Jul 15 11:21:23 2010 +0200 MIPS: Alchemy: Add basic support for the GPR board From: Wolfgang Grandegger Add basic support for the General Purpose Router (GPR) board from Trapeze ITS. Signed-off-by: Wolfgang Grandegger To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1460/ Signed-off-by: Ralf Baechle commit f66736532a6bc593a2d7cda68835a79c23836f1b Author: Manuel Lauss Date: Wed Jul 21 14:30:50 2010 +0200 MIPS: au1000_eth: Get ethernet address from platform_data au1000_eth uses firmware calls to get a valid MAC address, and changes it depending on platform device id. This patch moves this logic out of the driver into the platform device registration part, where boards with supported chips can use whatever firmware interface they need; the default implementation maintains compatibility with existing, YAMON-based firmware. Tested-by: Wolfgang Grandegger Acked-by: Florian Fainelli Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: netdev@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/1481/ Acked-by: David S. Miller Signed-off-by: Ralf Baechle commit 12bf3f24e07d18ab6c42619be604e269f6738614 Author: Manuel Lauss Date: Thu Jul 15 21:45:05 2010 +0200 SERIAL: 8250: Remove SERIAL_8250_AU1X00 Remove the SERIAL_8250_AU1X00 config symbol. Instead, use the MIPS_ALCHEMY one which is always defined when building an Au1x00-based platform. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Linux-serial Patchwork: https://patchwork.linux-mips.org/patch/1461/ Signed-off-by: Ralf Baechle This one depends on a previous patch (which removes SOC_AU1X00 and changes MACH_ALCHEMY) to apply cleanly (and then actually work), so I'd love for this to go in via the mips tree. commit 42a4f17dc356689075263d7c2bd68456676fa62e Author: Manuel Lauss Date: Thu Jul 15 21:45:04 2010 +0200 MIPS: Alchemy: remove SOC_AU1X00 in favor of MIPS_ALCHEMY Remove the CONFIG_SOC_AU1X00 Kconfig symbol since its job can also be done by MACH_ALCHEMY, now renamed to MIPS_ALCHEMY. Signed-off-by: Manuel Lauss To: Linux-MIPS Patchwork: https://patchwork.linux-mips.org/patch/1461/ Signed-off-by: Ralf Baechle commit 745aef5df1e2277ee9e34d86491084c0d6106338 Author: Ricardo Mendoza Date: Mon Jul 19 05:00:00 2010 +0100 MIPS: RM7000: Add support for tertiary cache Add support for the external T-cache interface. Allow for platform independent size probing from 512KB to 8MB in powers of two. Signed-off-by: Ricardo Mendoza To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1477/ Signed-off-by: Ralf Baechle commit 58a6d45193a4f5af9d55f243779ea485656e3a22 Author: Ricardo Mendoza Date: Mon Jul 19 04:59:59 2010 +0100 MIPS: RM7000: Make use of cache_op() instead of inline asm Small cleanup of the cache code to get rid of inline asm, in preparation to give tertiary cache support. Signed-off-by: Ricardo Mendoza To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1476/ Signed-off-by: Ralf Baechle commit 65ab2826c4185fc949c3a720186bd09d75ea14a4 Author: Wu Zhangjin Date: Sun Jul 18 03:10:51 2010 +0800 MIPS: tracing: Fix the indentation of mcount.S The commit "MIPS: Tracing: Cleanup the arguments passing of prepare_ftrace_return" has moved the "jal prepare_ftrace_return" instruction after the handling of the 3rd argument but forgot to remove the superfluous space before the related instructions. Signed-off-by: Wu Zhangjin Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1475/ Signed-off-by: Ralf Baechle commit 652b14aa84961fa391184ccbaf559a537d33b28c Author: David Daney Date: Mon Jul 19 13:14:57 2010 -0700 MIPS: Enable heap randomization. Based somewhat on the PPC implementation. 32-bit processes have the heap randomized in an 8MB space, 256MB for 64-bit processes. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1479/ Signed-off-by: Ralf Baechle commit 1091458d09e1a0788268578001f279250d2c0844 Author: David Daney Date: Mon Jul 19 13:14:56 2010 -0700 MIPS: Randomize mmap if randomize_va_space is set Fairly straight forward: For 32-bit address spaces randomize within a 16MB space, for 64-bit within a 256MB space. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1480/ Signed-off-by: Ralf Baechle commit b3b3c176d9150af542d9ba5e5b292d233883ff85 Author: Bruno Randolf Date: Mon Jul 12 00:40:38 2010 +0900 MIPS: MTX-1: cleanup and comments Add some comments about mtx1_pci_idsel() and remove a dead block of old code. Signed-off-by: Bruno Randolf To: linux-mips@linux-mips.org To: manuel.lauss@googlemail.com Cc: florian@openwrt.org Patchwork: https://patchwork.linux-mips.org/patch/1449/ Signed-off-by: Ralf Baechle commit f5c1ca77a3b2f9b424c4f39bd71143d0ac308924 Author: Shinya Kuribayashi Date: Sun Jun 27 22:52:01 2010 +0900 MIPS: Loongson: irq.c: Misc cleanups * Remove unnecessary 'if (int_status & (1 <<10))' statement * s/if (foo != 0)/if (foo)/ * Remove unused 'inst_status &= ~(1 << i);' line Signed-off-by: Shinya Kuribayashi To: wuzhangjin@gmail.com CC: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1433/ Acked-by: Wu Zhangjin Signed-off-by: Ralf Baechle commit 1f1f4e7dbc0c0312e9e7fe3cadd07340ea62070f Author: Shinya Kuribayashi Date: Thu Jun 17 20:37:13 2010 +0900 MIPS: EMMA2RH: Replace EMMA2RH_SW_IRQ_INTxx with EMMA2RH_SW_IRQ(n) Don't duplicate worthless lines. Signed-off-by: Shinya Kuribayashi To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1390/ Signed-off-by: Ralf Baechle commit 4040703fffbb6b120253b2fe69f743466af69778 Author: Shinya Kuribayashi Date: Thu Jun 17 20:36:32 2010 +0900 MIPS: EMMA2RH: Replace EMMA2RH_IRQ_INTxx with EMMA2RH_IRQ_INT(n) Don't duplicate worthless lines. Signed-off-by: Shinya Kuribayashi To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1389/ Signed-off-by: Ralf Baechle commit 9e6f39698ac66e08017114a51600bf633becd011 Author: Shinya Kuribayashi Date: Thu Jun 17 20:36:13 2010 +0900 MIPS: EMMA2RH: Remove EMMA2RH_CPU_CASCADE Although all EMMAxxx SoCs can support IP2 and IP3 hardware interrupts, current EMMA2RH plat_irq_dispatch() supports IP2 only. We can make it configurable in the future, but for the time being, would like to make things explicitly allcated to IP2 in accordance with plat_irq_dispatch(). Signed-off-by: Shinya Kuribayashi To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1388/ Signed-off-by: Ralf Baechle commit eebacda40f2f9818c92f61b2228c7888e1f4926c Author: Shinya Kuribayashi Date: Thu Jun 17 20:35:58 2010 +0900 MIPS: EMMA2RH: Remove useless CPU_IRQ_BASE For historical reasons, we used to put MIPS CPU IRQs behind SoC-specific IRQs in the queue, and have been using CPU_IRQ_BASE as MIPS_CPU_IRQ_BASE. In recent years, however, we've brought it back to normal order, and now CPU_IRQ_BASE just redefines the generic MIPS_CPU_IRQ_BASE. At the same time, NUM_CPU_IRQ is also removed as useless. Signed-off-by: Shinya Kuribayashi To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1387/ Signed-off-by: Ralf Baechle commit 1d1929c7662d5da3badcf0df2ca5c9b2dc15db97 Author: David Daney Date: Fri Jun 25 16:46:08 2010 -0700 MIPS: Octeon: Define ARCH_HAS_USABLE_BUILTIN_POPCOUNT for OCTEON. OCTEON implements __builtin_popcount with a single instruction, so lets use it. Signed-off-by: David Daney To: linux-mips@linux-mips.org Cc: David Daney Patchwork: https://patchwork.linux-mips.org/patch/1431/ Signed-off-by: Ralf Baechle commit 1a403d1d2e549bc7d280001503867321572717f6 Author: David Daney Date: Fri Jun 25 16:46:07 2010 -0700 MIPS: Create and use asm/arch_hweight.h Some MIPS ISA processor varients can do hweight operations efficiently. Split arch_hweight.h into a seperate file, and implement the operations with __builtin_popcount{,ll} if supported. Signed-off-by: David Daney To: linux-mips@linux-mips.org Cc: David Daney Patchwork: https://patchwork.linux-mips.org/patch/1430/ Signed-off-by: Ralf Baechle commit d16f7093b6eb4f3859856f6ee4ab504cbeeea0b9 Author: Alexander Clouter Date: Mon Jul 5 21:11:26 2010 +0100 MIPS: AR7: rewrite of cpmac_get_mac() Shamelessly stealing wisdom from pasemi_mac.c, I found char2hex() could be replaced with a single call to sscanf(), looks cleaner to me at least. The result is 100 bytes trimmed off the size of a compiled cpmac_get_mac() and as an extra bonus it grumbles and gracefully fails over to using random_ether_addr() when an attempt to parse an invalid MAC address is made. Signed-off-by: Alexander Clouter To: linux-mips@linux-mips.org Cc: florian@openwrt.org Signed-off-by: Ralf Baechle commit 0d59050496db973d8689f954baf8a202ddd4d51a Author: David VomLehn Date: Thu Jul 1 13:37:52 2010 -0700 MIPS: PowerTV: Simplify command line handling and needed config changes Additional changes to Youichi Yuasa's command line simplication code The PowerTV platform uses a non-standard way to get the kernel command line--we insert a built-in command line into arcs_cmdline and to get additional command line information from the bootloader via a pointer in the a1 register. It is necessary to insert a space between to the two strings or the last argument from arcs_cmdline and the first argument from the bootloader may be inadvertantly combined. It is also necessary to set CONFIG_CMDLINE_BOOL to "y" and to set the default command line to an empty string to get the simplified code to work properly in the PowerTV environment. Signed-off-by: David VomLehn To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1438/ Signed-off-by: Ralf Baechle commit 417a5eb02ce8e5fbaf3d97d8dacc813b0a273ec3 Author: Ralf Baechle Date: Thu Aug 5 13:26:01 2010 +0100 MIPS: Update comment for cpu_has_clo_clz Signed-off-by: Ralf Baechle commit e6a033c1cac98be10634e7f82fe0269c8adaf3e5 Author: Christoph Egger Date: Wed Jun 9 13:23:27 2010 +0200 MIPS: MSP71xx: Remove dead CONFIG_MTD_PMC_MSP_RAMROOT CONFIG_MTD_PMC_MSP_RAMROOT doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger To: Ralf Baechle , Yoichi Yuasa , linux-mips@linux-mips.org, linux-kernel@vger.kernel.org Cc: vamos@i4.informatik.uni-erlangen.de Acked-by: Shane McDonald Patchwork: https://patchwork.linux-mips.org/patch/1375/ Signed-off-by: Ralf Baechle commit bc7cb37788533e43e7c5f6063c928abcd11a6ae1 Author: Christoph Egger Date: Wed Jun 9 13:23:02 2010 +0200 MIPS: PowerTV: Removing dead CONFIG_DIAGNOSTICS CONFIG_DIAGNOSTICS doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger To: David VomLehn To: Yoichi Yuasa To: linux-mips@linux-mips.org To: linux-kernel@vger.kernel.org Cc: vamos@i4.informatik.uni-erlangen.de Patchwork: https://patchwork.linux-mips.org/patch/1374/ Signed-off-by: Ralf Baechle commit 8b284dbc22001a958e64a30a10aa5f274cf6f33d Author: Christoph Egger Date: Wed Jun 9 13:22:37 2010 +0200 MIPS: PNX Removing dead CONFIG_PMCTWILED CONFIG_PMCTWILED doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger To: linux-mips@linux-mips.org To: linux-kernel@vger.kernel.org Cc: vamos@i4.informatik.uni-erlangen.de Acked-by: Shane McDonald Patchwork: https://patchwork.linux-mips.org/patch/1373/ Signed-off-by: Ralf Baechle commit 3f441ee1cc150623aa64ddb1333d57eca78fdac2 Author: Christoph Egger Date: Wed Jun 9 13:21:30 2010 +0200 MIPS: Remove dead CONFIG_MTD_PB1550_BOOT, CONFIG_MTD_PB1550_USER CONFIG_MTD_PB1550_BOOT, CONFIG_MTD_PB1550_USER doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger To: Manuel Lauss , To: linux-mips@linux-mips.org To: linux-kernel@vger.kernel.org Cc: vamos@i4.informatik.uni-erlangen.de Patchwork: https://patchwork.linux-mips.org/patch/1370/ Signed-off-by: Ralf Baechle commit 723b7f812fbcf76abad2c03674b3b3893ccd8516 Author: Christoph Egger Date: Wed Jun 9 13:20:41 2010 +0200 MIPS: Cavium: Remove dead CONFIG_GDB_CONSOLE CONFIG_GDB_CONSOLE doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger To: David Daney To: Yang Shi To: Herbert Xu To: Tejun Heo To: linux-mips@linux-mips.org To: linux-kernel@vger.kernel.org Cc: vamos@i4.informatik.uni-erlangen.de Patchwork: https://patchwork.linux-mips.org/patch/1368/ Acked-by: David Daney Signed-off-by: Ralf Baechle commit 9b98031e673df81989c0f4f63a99b79fa6630ff5 Author: Christoph Egger Date: Wed Jun 9 13:20:23 2010 +0200 MIPS: Alchemy: Remove dead CONFIG_SOC_AU1000_FREQUENCY CONFIG_SOC_AU1000_FREQUENCY doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger To: linux-mips@linux-mips.org To: linux-kernel@vger.kernel.org Cc: vamos@i4.informatik.uni-erlangen.de Patchwork: https://patchwork.linux-mips.org/patch/1367/ Signed-off-by: Ralf Baechle commit 4483b159168d3db41458925512523e44d0d49cd4 Author: Ralf Baechle Date: Thu Aug 5 13:25:59 2010 +0100 MIPS: Provide more elevant interface cu2_notifier for CP2 extensions. Signed-off-by: Ralf Baechle Signed-off-by: David Daney Patchwork: https://patchwork.linux-mips.org/patch/1504/ commit ea7a8463be6b5dd824bdf42b8f2af1d34f157877 Author: Ralf Baechle Date: Thu Aug 5 13:25:59 2010 +0100 MIPS: Remove unnecessary header file inclusion from fault.c. Signed-off-by: Ralf Baechle commit 034260d6779087431a8b2f67589c68b919299e5c Author: Kevin Cernekee Date: Thu Jun 3 22:11:25 2010 -0700 printk: fix delayed messages from CPU hotplug events When a secondary CPU is being brought up, it is not uncommon for printk() to be invoked when cpu_online(smp_processor_id()) == 0. The case that I witnessed personally was on MIPS: http://lkml.org/lkml/2010/5/30/4 If (can_use_console() == 0), printk() will spool its output to log_buf and it will be visible in "dmesg", but that output will NOT be echoed to the console until somebody calls release_console_sem() from a CPU that is online. Therefore, the boot time messages from the new CPU can get stuck in "limbo" for a long time, and might suddenly appear on the screen when a completely unrelated event (e.g. "eth0: link is down") occurs. This patch modifies the console code so that any pending messages are automatically flushed out to the console whenever a CPU hotplug operation completes successfully or aborts. The issue was seen on 2.6.34. Original patch by Kevin Cernekee with cleanups by akpm and additional fixes by Santosh Shilimkar. This patch superseeds https://patchwork.linux-mips.org/patch/1357/. Signed-off-by: Kevin Cernekee To: To: To: To: To: Cc: Cc: Reviewed-by: Paul Mundt Signed-off-by: Kevin Cernekee Patchwork: https://patchwork.linux-mips.org/patch/1534/ LKML-Reference: LKML-Reference: Signed-off-by: Ralf Baechle commit d745866e4d8c0675bab90868b5e4a8fcd053eff2 Author: Sam Ravnborg Date: Sun May 30 16:28:31 2010 +0200 MIPS: Clean up arch/mips/Makefile - Drop CLEAN_FILES assignments that is no longer required - Add $(Q) in a few rules Signed-off-by: Sam Ravnborg To: linux-mips To: Wu Zhangjin Patchwork: https://patchwork.linux-mips.org/patch/1305/ Signed-off-by: Ralf Baechle commit 35eaa1e9c9b4579100320814aeebff167ee59b0a Author: Sam Ravnborg Date: Sun May 30 16:28:03 2010 +0200 MIPS: Refactor arch/mips/boot/compressed/Makefile - use hostprogs-y for the elf2ecoff - list all *.o file in targets - renamed obj-y to vmlinuzobjs-y (it was confusing to re-use a kbuild variable) - fix all uses of if_changed/cmd - use kbuild rules to beautify output - update clean-file to clean vmlinuz.* in top-level directory - simplied logic in arch/mips/Makefile for compressed targets The net result is a more kbuild conformant Makefile but readability did not increase. Signed-off-by: Sam Ravnborg To: linux-mips To: Wu Zhangjin Patchwork: https://patchwork.linux-mips.org/patch/1304/ Signed-off-by: Ralf Baechle commit 961e196c7a3b3c3d1d9eb32629b0e745ce0a68d1 Author: Sam Ravnborg Date: Sun May 30 16:27:33 2010 +0200 MIPS: Refactor arch/mips/boot/Makefile - remove stuff that is not needed VMLINUX assignment, all: rule - use hostprogs-y for the host program - use kbuild rules for the three targets - to beautify output - drop clean-files - it is no longer needed - simplify arch/mips/Makefile when calling targets in boot/Makefile Signed-off-by: Sam Ravnborg To: linux-mips To: Wu Zhangjin Patchwork: https://patchwork.linux-mips.org/patch/1303/ Signed-off-by: Ralf Baechle commit ad5f2635578a19ff8885bff1ef4d5adf7193cb02 Author: Ralf Baechle Date: Thu Aug 5 13:25:57 2010 +0100 MIPS: PNX8550: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 91a548d57e9c95bb47b66d9d3ac0bf381619a6e7 Author: Ralf Baechle Date: Thu Aug 5 13:25:56 2010 +0100 MIPS: PNX833x: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 9453e84d1765d2a532c2ba26ab2a5c3c9b8867c4 Author: Ralf Baechle Date: Thu Aug 5 13:25:56 2010 +0100 MIPS: STB8550: Move boards over to obj-y Preparatory cleanup for moving Alchemy over to new MIPS Platform build system support. Signed-off-by: Ralf Baechle commit 98e9aee33797c6319425aa729d828e9fe304774c Author: Ralf Baechle Date: Thu Aug 5 13:25:56 2010 +0100 MIPS: STB22x: Move boards over to obj-y Preparatory cleanup for moving Alchemy over to new MIPS Platform build system support. Signed-off-by: Ralf Baechle commit 79d7cd31f9a3d3e75ae67f742aa5eb199cfa71cf Author: Ralf Baechle Date: Thu Aug 5 13:25:56 2010 +0100 MIPS: PNX8550: Move code one directory level up. It was sharing the nxp directory but no code with pnx833x and will fit better into the new platform makefile scheme, if moved. Also after the pnx833x code has been moved up, the pnx8550 Code was the last users of the nxp dir. Signed-off-by: Ralf Baechle commit 86c6d4d0acc64543a485c11e197d0bd2c5ae0bb2 Author: Ralf Baechle Date: Thu Aug 5 13:25:55 2010 +0100 MIPS: PNX833x: Move code one directory level up. It was sharing the nxp directory but no code with pnx8550 and will fit better into the new platform makefile scheme, if moved. Signed-off-by: Ralf Baechle commit 2f22f456933c1db57d84627a046dd20e935ad51a Author: Ralf Baechle Date: Thu Aug 5 13:25:55 2010 +0100 MIPS: EMMA: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit a8b361d97f8e5a496a6144c470be03595247ad9f Author: Ralf Baechle Date: Thu Aug 5 13:25:55 2010 +0100 MIPS: TXx9: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 34f5c1c5787bd13a3fbfc284ff7f719846427b9d Author: Ralf Baechle Date: Thu Aug 5 13:25:55 2010 +0100 MIPS: Sibyte: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit f6e1db1b87a9199275694d10713d4baa80030fc7 Author: Ralf Baechle Date: Thu Aug 5 13:25:54 2010 +0100 MIPS: Octeon: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit f5e8abd6f1fdba3abf6675700069005e25531208 Author: Ralf Baechle Date: Thu Aug 5 13:25:54 2010 +0100 MIPS: BCM63xx: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 53e4345906703785d6d02bd1b418abe2e8c9ebc1 Author: Ralf Baechle Date: Thu Aug 5 13:25:54 2010 +0100 MIPS: BCM47xx: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit bd152b095ef67898ed794f100e4ecc5298a61ad8 Author: Ralf Baechle Date: Thu Aug 5 13:25:53 2010 +0100 MIPS: Lasat: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 026dab3c51d3d6129cf66f24bc592e9315856fdb Author: Ralf Baechle Date: Thu Aug 5 13:25:52 2010 +0100 MIPS: PowerTV: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit f70a974dd04619575723331a4f767254b76e3c8e Author: Ralf Baechle Date: Thu Aug 5 13:25:51 2010 +0100 MIPS: WRPPMC: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 9ebc2935f346964c34e5f376263c4071f66edcd9 Author: Ralf Baechle Date: Thu Aug 5 13:25:50 2010 +0100 MIPS: WRPPMC: Move code one directory level up. It was the last platform under gt64120 and will fit better into the new platform makefile scheme, if moved. Signed-off-by: Ralf Baechle commit 91598965ecb508dc7bc154ec9d3e35dcadb3fa5f Author: Ralf Baechle Date: Thu Aug 5 13:25:50 2010 +0100 MIPS: RB532: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 4fa8a557c301b14a53dcd654aa0c2988c71cbd4d Author: Ralf Baechle Date: Thu Aug 5 13:25:50 2010 +0100 MIPS: IP32: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 36bb97e97176e57d88db93593720531f51ea75b6 Author: Ralf Baechle Date: Thu Aug 5 13:25:50 2010 +0100 MIPS: Malta: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit b9dbdce11b0c961d5cf22488ee059f2f9d930431 Author: Ralf Baechle Date: Thu Aug 5 13:25:49 2010 +0100 MIPS: IP22, IP28: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 655f40e4870a46551a4510695765913d2c0518ce Author: Ralf Baechle Date: Thu Aug 5 13:25:49 2010 +0100 MIPS: SNI: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit c136af0906ba714b67bdc8623a0f82ddd7a7ba21 Author: Ralf Baechle Date: Thu Aug 5 13:25:49 2010 +0100 MIPS: DECstation: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 1505b60757694512b76edce8ecc6f73b4a8a7f9f Author: Ralf Baechle Date: Thu Aug 5 13:25:48 2010 +0100 MIPS: Jazz: Migrate to new platform makefile style. Signed-off-by: Ralf Baechle commit 82baa6b0829b810329dd72a31cd5721cba05488a Author: Shane McDonald Date: Thu Jun 3 04:34:06 2010 -0600 MIPS: PMC-Sierra: Move board Makefile parts to their own Platform file Signed-off-by: Shane McDonald To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1354/ Signed-off-by: Ralf Baechle commit 4300a92e9b3794caee33a8f3985ad883db1b4650 Author: Yoichi Yuasa Date: Wed Jun 2 16:52:21 2010 +0900 MIPS: Move VR41xx Makefile parts to their own Platform file Signed-off-by: Yoichi Yuasa Cc: linux-mips Patchwork: https://patchwork.linux-mips.org/patch/1322/ Signed-off-by: Ralf Baechle commit 5c6aecbda882b62c84abf72cf056e39e215feac3 Author: Yoichi Yuasa Date: Wed Jun 2 16:51:16 2010 +0900 MIPS: Move Cobalt Makefile parts to their own Platform file Signed-off-by: Yoichi Yuasa Cc: linux-mips Patchwork: https://patchwork.linux-mips.org/patch/1321/ Signed-off-by: Ralf Baechle commit 6a0cd4dca00110fd11b8b07b7c2e08a60d22c580 Author: Ralf Baechle Date: Thu Aug 5 13:25:47 2010 +0100 MIPS: IP27: Migrate to new Platform file Signed-off-by: Ralf Baechle commit baf3eb233df301081b66637a257ce0e9f6f84706 Author: Manuel Lauss Date: Tue Jun 1 22:30:37 2010 +0200 MIPS: Move Alchemy Makefile parts to their own Platform file. [Ralf: Remove a forgotten -Werror in Pb1200 Makefile.] Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Sam Ravnborg Cc: Manuel Lauss Patchwork: https://patchwork.linux-mips.org/patch/1319/ Signed-off-by: Ralf Baechle commit 25c8f83864878e1ec95c0bd8273405ab415eb0a4 Author: FUJITA Tomonori Date: Thu Jun 24 01:26:09 2010 +0900 MIPS: Alchemy: fix deprecated compile warnings Replace deprecated DMA_32BIT_MASK with DMA_BIT_MASK. This is needed because the new style platform makefiles will enable -Werror. cc1: warnings being treated as errors arch/mips/alchemy/devboards/db1200/platform.c:219: error: 'DMA_nnBIT_MASK' is deprecated arch/mips/alchemy/devboards/db1200/platform.c:226: error: 'DMA_nnBIT_MASK' is deprecated arch/mips/alchemy/devboards/db1200/platform.c:388: error: 'DMA_nnBIT_MASK' is deprecated arch/mips/alchemy/devboards/db1200/platform.c:393: error: 'DMA_nnBIT_MASK' is deprecated Signed-off-by: FUJITA Tomonori To: linux-mips@linux-mips.org Acked-by: Manuel Lauss Patchwork: https://patchwork.linux-mips.org/patch/1427/ Signed-off-by: Ralf Baechle commit 4767d7ddbb904ac481bcf1340eae7758d124db96 Author: Manuel Lauss Date: Tue Jun 1 22:30:36 2010 +0200 MIPS: Alchemy: move boards over to obj-y Preparatory step for moving Alchemy over to new MIPS Platform build system support. Signed-off-by: Manuel Lauss To: Linux-MIPS Patchwork: https://patchwork.linux-mips.org/patch/1318/ Signed-off-by: Ralf Baechle commit 526a2fe2f5d887ef8b89243c3a5e64f0f38c21cc Author: Ralf Baechle Date: Thu Aug 5 13:25:45 2010 +0100 MIPS: MIPSsim: Migrate to new Platform file Signed-off-by: Ralf Baechle commit 28c945c88676bf71ec649429f2c1c4ce3719cd7c Author: Wu Zhangjin Date: Tue Jun 1 18:29:04 2010 +0800 MIPS: Loongson: Migrate makefile to new Platform file Signed-off-by: Wu Zhangjin To: linux-mips Cc: Alexander Clouter Cc: Manuel Lauss Cc: Sam Ravnborg , Patchwork: https://patchwork.linux-mips.org/patch/1313/ Patchwork: https://patchwork.linux-mips.org/patch/1326/ Signed-off-by: Ralf Baechle commit 5d25b01cf90c1a27d196a52f48d5364458b80b86 Author: Sam Ravnborg Date: Sun May 30 16:27:10 2010 +0200 MIPS: Introduce support for Platform definitions Move platform specific definitions to the platfrom directories. Each platform shall do the following: 1) include an entry in arch/mips/Kbuild.platforms 2) add relevant definitions to arch/mips//Platform This commits changes ar7 to the new scheme as an example. Introducing a platform speecific Platfrom file has following advantages: 1) decentralization of platfrom definitions 2) simplification af arch/mips/Makefile 3) force all platfrom to build with -Werror (done in arch/mips/Kbuild) [Ralf: Remove forgotten -Werror from AR7 Makefile] Signed-off-by: Sam Ravnborg To: linux-mips To: Wu Zhangjin Patchwork: https://patchwork.linux-mips.org/patch/1302/ Patchwork: http://patchwork.linux-mips.org/patch/1308/ Signed-off-by: Ralf Baechle commit 66f9ba101f54bda63ab1db97f9e9e94763d0651b Author: Sam Ravnborg Date: Sun May 30 16:26:40 2010 +0200 MIPS: Add -Werror to arch/mips/Kbuild Adding subdirs-ccflags-y := -Werror to arch/mips/Kbuild let us in one go cover all files with -Werror. In addition this allows us to remove the individual -Werror definition in various Makefile. Adding the definition to Kbuild as a recursive option help us not to forget to do so. With this change we now compile arch/mips/kernel/cpufreq with -Werror One drawback: When specifying a subdirectory covered by the Kbuild file like this: make arch/mips/kernel/ then kbuild fails to pick up the -Werror definition. Signed-off-by: Sam Ravnborg To: linux-mips To: Wu Zhangjin Patchwork: https://patchwork.linux-mips.org/patch/1301/ Signed-off-by: Ralf Baechle commit 9aeb404b4cfed41fdfd01e6fb3cc995c327ba98e Author: Sam Ravnborg Date: Sun May 30 13:27:22 2010 +0200 MIPS: Introduce arch/mips/Kbuild Signed-off-by: Sam Ravnborg To: linux-mips To: Wu Zhangjin Patchwork: https://patchwork.linux-mips.org/patch/1300/ Signed-off-by: Ralf Baechle commit 78e6f4c03d51e4004866918a1482d48624e38d67 Author: Andrea Gelmini Date: Sun May 23 21:52:12 2010 +0200 MIPS: IP27: klconfig.c checkpatch cleanup arch/mips/sgi-ip27/ip27-klconfig.c:51: ERROR: "foo * bar" should be "foo *bar" arch/mips/sgi-ip27/ip27-klconfig.c:63: ERROR: "foo * bar" should be "foo *bar" arch/mips/sgi-ip27/ip27-klconfig.c:81: ERROR: "foo * bar" should be "foo *bar" arch/mips/sgi-ip27/ip27-klconfig.c:100: ERROR: "foo * bar" should be "foo *bar" Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1278/ Signed-off-by: Ralf Baechle commit 11ed4add992062de988773287c32e43f294968ac Author: Andrea Gelmini Date: Sun May 23 21:52:11 2010 +0200 MIPS: PCI: RM9000 checkpatch cleanup arch/mips/pci/ops-titan-ht.c:36: ERROR: "foo * bar" should be "foo *bar" arch/mips/pci/ops-titan-ht.c:68: ERROR: "foo * bar" should be "foo *bar" Signed-off-by: Andrea Gelmini Cc: Tejun Heo Cc: Christoph Lameter Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1277/ Signed-off-by: Ralf Baechle commit abb86dc5430abe4e07f53b9221fc8eb59321dc41 Author: Andrea Gelmini Date: Sun May 23 21:52:10 2010 +0200 MIPS: math-emu: Checkpatch cleanup arch/mips/math-emu/sp_tlong.c:75: ERROR: else should follow close brace '}' Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1276/ Signed-off-by: Ralf Baechle commit 3e4088affe2bd73dc4235cf0cc735722641085a6 Author: Andrea Gelmini Date: Sun May 23 21:52:09 2010 +0200 MIPS: math-emu: Checkpatch cleanup arch/mips/math-emu/sp_tint.c:76: ERROR: else should follow close brace '}' Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1275/ Signed-off-by: Ralf Baechle commit 24da36cdc5c7bc8ccde1876f81f884d6d42c0602 Author: Andrea Gelmini Date: Sun May 23 21:52:08 2010 +0200 MIPS: math-emu: Checkpatch cleanup arch/mips/math-emu/sp_modf.c:32: ERROR: "foo * bar" should be "foo *bar" Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1273/ Signed-off-by: Ralf Baechle commit c273625b42dc93094b9f5db64944a0a8c6775c99 Author: Andrea Gelmini Date: Sun May 23 21:52:07 2010 +0200 MIPS: math-emu: Checkpatch cleanup arch/mips/math-emu/dp_tlong.c:75: ERROR: else should follow close brace '}' Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1272/ Signed-off-by: Ralf Baechle commit 6337f5e5aab7faf6029d9ac4eba7496295bdf93c Author: Andrea Gelmini Date: Sun May 23 21:52:06 2010 +0200 MIPS: math-emu: Checkpatch cleanup arch/mips/math-emu/dp_tint.c:73: ERROR: else should follow close brace '}' Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1271/ Signed-off-by: Ralf Baechle commit 055899a0e249ad9c1c709376c37ee7103abb22c4 Author: Andrea Gelmini Date: Sun May 23 21:52:05 2010 +0200 MIPS: math-emu: Checkpatch cleanup arch/mips/math-emu/dp_modf.c:32: ERROR: "foo * bar" should be "foo *bar" Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1269/ Signed-off-by: Ralf Baechle commit cb5dcea176a87d47a7c2e8d8ac5ecf6a667140a1 Author: Andrea Gelmini Date: Sun May 23 21:52:04 2010 +0200 MIPS: DECstation: Checkpatch cleanup arch/mips/dec/promcon.c:37: ERROR: that open brace { should be on the previous line Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1270/ Signed-off-by: Ralf Baechle commit d3bbfbc29d5010d4288f089370682a7b882fa559 Author: Andrea Gelmini Date: Sun May 23 21:52:03 2010 +0200 MIPS: Yosemite: ht-irq.c: Checkpatch cleanup arch/mips/pmc-sierra/yosemite/ht-irq.c:38: ERROR: code indent should use tabs where possible arch/mips/pmc-sierra/yosemite/ht-irq.c:39: ERROR: code indent should use tabs where possible arch/mips/pmc-sierra/yosemite/ht-irq.c:40: ERROR: code indent should use tabs where possible arch/mips/pmc-sierra/yosemite/ht-irq.c:43: ERROR: code indent should use tabs where possible arch/mips/pmc-sierra/yosemite/ht-irq.c:44: ERROR: code indent should use tabs where possible arch/mips/pmc-sierra/yosemite/ht-irq.c:45: ERROR: code indent should use tabs where possible Signed-off-by: Andrea Gelmini Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1268/ Signed-off-by: Ralf Baechle commit 339e658b88108d4bc7daf61736df494dcf4a43e4 Author: David VomLehn Date: Fri May 21 11:25:59 2010 -0700 MIPS: PowerTV: Correct ASIC device register names and locations Correct ASIC device register names and addresses for USB devices. Signed-off-by: David VomLehn To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1258/ Signed-off-by: Ralf Baechle commit ca36c36b7821b573fe06ce6bc34db03b557f3ce4 Author: David VomLehn Date: Fri May 21 11:25:36 2010 -0700 MIPS: PowerTV: Use O(1) algorthm for phys_to_dma/dma_to_phys Replace phys_to_dma()/dma_to_phys() looping algorithm with an O(1) algorithm The approach taken is inspired by the sparse memory implementation: take a certain number of high-order bits off the address them, use this as an index into a table containing an offset to the desired address and add it to the original value. There is a table for mapping physical addresses to DMA addresses and another one for the reverse mapping. The table sizes depend on how fine-grained the mappings need to be; Coarser granularity less to smaller tables. On a processor with 32-bit physical and DMA addresses, with 4 MIB granularity, memory usage is two 2048-byte arrays. Each 32-byte cache line thus covers 64 MiB of address space. Also, renames phys_to_bus() to phys_to_dma() and bus_to_phys() to dma_to_phys() to align with kernel usage. [Ralf: Fixed silly build breakage due to stackoverflow warning caused by huge array on stack.] Signed-off-by: David VomLehn To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1257/ Signed-off-by: Ralf Baechle commit 36f217d9df3e6bf8e6ae7647827b485b79dbaf8e Author: Ralf Baechle Date: Tue Aug 3 03:42:32 2010 +0100 MIPS: MTX1: Fix build. CC arch/mips/alchemy/mtx-1/board_setup.o {standard input}: Assembler messages: {standard input}:263: Error: opcode not supported on this processor: mips1 (mips1) `sync' {standard input}:274: Error: opcode not supported on this processor: mips1 (mips1) `sync' {standard input}:296: Error: opcode not supported on this processor: mips1 (mips1) `sync' [...] Any .set mipsX statement other than .set mips0 at the end of inline assembler is a big fat bug. Introduced by 9482eabeca315c0276ffb50026b7482481b7097b (linux-mips.org) rsp. 32fd6901a6d8d19f94e4de6be4e4b552ab078620 (kernel.org). While at it, fix the same issue in arch/mips/alchemy/devboards/pb1000/board_setup.c arch/mips/alchemy/xxs1500/board_setup.c as well. Signed-off-by: Ralf Baechle commit 220937b1aa97025a0e2fff0604b00ee6e9b7ccd3 Author: Hauke Mehrtens Date: Tue Jul 27 22:12:45 2010 +0200 MIPS: BCM47xx: Activate SSB_B43_PCI_BRIDGE by default B43_pci_bridge is needed to use the b43 driver with brcm47xx. Activate it by default if PCI is available. Signed-off-by: Hauke Mehrtens To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1510/ Acked-by: Florian Fainelli Signed-off-by: Ralf Baechle commit aec9222551353890190af810a4c93ed7050bfa19 Author: Hauke Mehrtens Date: Tue Jul 27 22:12:43 2010 +0200 MIPS: BCM47xx: Really fix 128MB RAM problem The previous patch 4a86f2d27733f610e642649aca3e82e86fca9e22 (lmo) rsp. 84a6fcb368a080620d12fc4d79e07902dbee7335 (kernel.org) was wrong. The BCM47xx architecture maps the ram into a 128MB address space. It will be spaced there as often as goes into the 128MB. Detection tries to find the position where the same memory is found. When reading beyond 128MB the processor will throw an exception. If 128MB RAM is installed, it will not find a memory alias because it tries to read beyond the 128MB border. Now it just assumes 128MB installed ram if it can not find an alias. Signed-off-by: Hauke Mehrtens To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1508/ Acked-by: Florian Fainelli Signed-off-by: Ralf Baechle commit 5c8974538afd97990d3730ef6fea731a34ef1f85 Author: Florian Fainelli Date: Thu Jul 29 00:13:07 2010 +0200 MIPS: Octeon: Workaround link failures with gcc-4.4.x 32-bits toolchains When building with a gcc-4.4.x toolchain that is configured to produce 32-bits executables by default, we will produce __lshrti3 in sched_clock() which is never resolved so the kernel fails to link. Unconditionally use the inline assembly version as suggested by David Daney, which works around the issue. Signed-off-by: Florian Fainelli To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1514/ Acked-by: David Daney Signed-off-by: Ralf Baechle commit e10c53a5f31ae1535e13ef51d6615662c36d36c6 Author: David Daney Date: Thu Jul 29 13:43:04 2010 -0700 MIPS: N32: Fix syscall number comments. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1515/ Signed-off-by: Ralf Baechle commit 4d2b11252b92c6aca9f9222ee05e00f7262c2e53 Author: David Daney Date: Wed May 19 10:40:53 2010 -0700 MIPS: Don't overflow cevt-r4k.c calculations at high clock rates. The 'mult' element of struct clock_event_device must never be wider than 32-bits. If it were, it would get truncated when used by clockevent_delta2ns() when this calls do_div(). We can meet this requirement by using clockevent_set_clock() to set the MULT and SHIFT values. Signed-off-by: David Daney Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1253/ Acked-by: Thomas Gleixner Signed-off-by: Ralf Baechle commit 6165df980801e1be7a5b65686bd52f55e0407db1 Author: Ralf Baechle Date: Thu May 20 19:15:17 2010 +0100 MIPS: IP27: Don't include into . The include is unecessary and will when building the IP35 result in recursive header inclusion spaghetti. Signed-off-by: Ralf Baechle commit 40cb989fcf9f0caf6a116562132c2fffed38d261 Author: Atsushi Nemoto Date: Tue May 18 00:38:05 2010 +0900 MIPS: TX49xx: Define ARCH_KMALLOC_MINALIGN With SLAB, it works without ARCH_KMALLOC_MINALIGN, but with SLOB/SLUB, ARCH_KMALLOC_MINALIGN is required to ensure alignment of kmalloced buffer. Signed-off-by: Atsushi Nemoto To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/1248/ Signed-off-by: Ralf Baechle commit 26692f53ef550f7b8dc43fc5171c6187094632a8 Author: Julia Lawall Date: Sun Aug 9 11:42:32 2009 +0200 VIDEO: Correct use of request_region/request_mem_region request_region should be used with release_region, not request_mem_region. Geert Uytterhoeven pointed out that in the case of drivers/video/gbefb.c, the problem is actually the other way around; request_mem_region should be used instead of request_region. The semantic patch that finds/fixes this problem is as follows: (http://coccinelle.lip6.fr/) // @r1@ expression start; @@ request_region(start,...) @b1@ expression r1.start; @@ request_mem_region(start,...) @depends on !b1@ expression r1.start; expression E; @@ - release_mem_region + release_region (start,E) // Signed-off-by: Julia Lawall Signed-off-by: Ralf Baechle commit 06c22dadc6d3f9b65e55407a87faaf6a4a014112 Author: Randy Dunlap Date: Mon Aug 2 10:52:18 2010 -0700 apparmor: depends on NET SECURITY_APPARMOR should depend on NET since AUDIT needs (depends on) NET. Fixes 70-80 errors that occur when CONFIG_NET is not enabled, but APPARMOR selects AUDIT without qualification. E.g.: audit.c:(.text+0x33361): undefined reference to `netlink_unicast' (.text+0x333df): undefined reference to `netlink_unicast' audit.c:(.text+0x3341d): undefined reference to `skb_queue_tail' audit.c:(.text+0x33424): undefined reference to `kfree_skb' audit.c:(.text+0x334cb): undefined reference to `kfree_skb' audit.c:(.text+0x33597): undefined reference to `skb_put' audit.c:(.text+0x3369b): undefined reference to `__alloc_skb' audit.c:(.text+0x336d7): undefined reference to `kfree_skb' (.text+0x3374c): undefined reference to `__alloc_skb' auditfilter.c:(.text+0x35305): undefined reference to `skb_queue_tail' lsm_audit.c:(.text+0x2873): undefined reference to `init_net' lsm_audit.c:(.text+0x2878): undefined reference to `dev_get_by_index' Signed-off-by: Randy Dunlap Signed-off-by: John Johansen Signed-off-by: James Morris commit 74bf40f0793fed9e01eb6164c2ce63e8c27ca205 Merge: e719813 c468584 Author: Takashi Iwai Date: Thu Aug 5 11:17:04 2010 +0200 Merge branch 'topic/misc' into for-linus commit e71981343ad29b5d929f82ac56c0b27b8ea0e540 Merge: 2603798 bda7d2a Author: Takashi Iwai Date: Thu Aug 5 11:17:01 2010 +0200 Merge branch 'topic/asoc' into for-linus commit 2603798070a80d76e7e6d2992ba4ec74addcec90 Merge: 9fe6206 fc09176 Author: Takashi Iwai Date: Thu Aug 5 11:16:56 2010 +0200 Merge branch 'topic/hda' into for-linus commit 0bcfe75807944106a3aa655a54bb610d62f3a7f5 Merge: eebef74 396e894 Author: Ingo Molnar Date: Thu Aug 5 09:46:29 2010 +0200 Merge branch 'sched/urgent' into sched/core Conflicts: include/linux/sched.h Merge reason: Add the leftover .35 urgent bits, fix the conflict. Signed-off-by: Ingo Molnar commit fc9ea5a1e53ee54f681e226d735008e2a6f8f470 Merge: 61be7fd 9da79ab Author: Ingo Molnar Date: Thu Aug 5 08:46:15 2010 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core commit 61be7fdec2f51b99570cd5dcc30c7848c8e56513 Merge: 12a81c8 eb703f9 Author: Ingo Molnar Date: Thu Aug 5 08:45:05 2010 +0200 Merge branch 'perf/nmi' into perf/core Conflicts: kernel/Makefile Merge reason: Add the now complete topic, fix the conflict. Signed-off-by: Ingo Molnar commit 0cfc9255a1efb0467de2162950197750570ecec0 Author: Eric Sandeen Date: Thu Aug 5 01:46:37 2010 -0400 ext4: re-inline ext4_rec_len_(to|from)_disk functions commit 3d0518f4, "ext4: New rec_len encoding for very large blocksizes" made several changes to this path, but from a perf perspective, un-inlining ext4_rec_len_from_disk() seems most significant. This function is called from ext4_check_dir_entry(), which on a file-creation workload is called extremely often. I tested this with bonnie: # bonnie++ -u root -s 0 -f -x 200 -d /mnt/test -n 32 (this does 200 iterations) and got this for the file creations: ext4 stock: Average = 21206.8 files/s ext4 inlined: Average = 22346.7 files/s (+5%) Signed-off-by: Eric Sandeen Signed-off-by: "Theodore Ts'o" commit b0ebeb9c09cb5b84bb2f33927c84c7648845fcec Author: Yong Wang Date: Thu Aug 5 10:40:08 2010 +0800 DMAENGINE: at_hdmac: locking fixlet atc_chain_complete shall be called with atchan->lock held and bh disabled. Signed-off-by: Yong Wang Signed-off-by: Dan Williams commit 61cd2203769a2bf35d41f8682f6ef865fe2d23ff Author: Yong Wang Date: Thu Aug 5 10:38:43 2010 +0800 DMAENGINE: pch_dma: kill another usage of __raw_{read|write}l Use {read|write}l instead of __raw_{read|write}l since PCH DMA controller is PCI device. Signed-off-by: Yong Wang Signed-off-by: Dan Williams commit a767bde4d484b60dab0abac740a7151b624a30bf Author: Rusty Russell Date: Wed Aug 4 17:32:05 2010 +0000 virtio_net: implements ethtool_ops.get_drvinfo I often use "ethtool -i" command to check what driver controls the ehternet device. But because current virtio_net driver doesn't support "ethtool -i", it becomes the following: # ethtool -i eth3 Cannot get driver information: Operation not supported This patch simply adds the "ethtool -i" support. The following is the result when using the virtio_net driver with my patch applied to. # ethtool -i eth3 driver: virtio_net version: N/A firmware-version: N/A bus-info: virtio0 Personally, "-i" is one of the most frequently-used option, and most network drivers support "ethtool -i", so I think virtio_net also should do. Signed-off-by: Taku Izumi Signed-off-by: Rusty Russell (use ARRAY_SIZE) Signed-off-by: David S. Miller commit d7100da026317fcf07411f765fe1cdb044053917 Author: stephen hemminger Date: Wed Aug 4 07:34:36 2010 +0000 ppp: make channel_ops const The PPP channel ops structure should be const. Cleanup the declarations to use standard C99 format. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3b5bac2bdea1de832bdd8e2c904ab7c9479ff9ed Author: David Howells Date: Wed Aug 4 02:34:17 2010 +0000 RxRPC: Fix a potential deadlock between the call resend_timer and state_lock RxRPC can potentially deadlock as rxrpc_resend_time_expired() wants to get call->state_lock so that it can alter the state of an RxRPC call. However, its caller (call_timer_fn()) has an apparent lock on the timer struct. The problem is that rxrpc_resend_time_expired() isn't permitted to lock call->state_lock as this could cause a deadlock against rxrpc_send_abort() as that takes state_lock and then attempts to delete the resend timer by calling del_timer_sync(). The deadlock can occur because del_timer_sync() will sit there forever waiting for rxrpc_resend_time_expired() to return, but the latter may then wait for call->state_lock, which rxrpc_send_abort() holds around del_timer_sync()... This leads to a warning appearing in the kernel log that looks something like the attached. It should be sufficient to simply dispense with the locks. It doesn't matter if we set the resend timer expired event bit and queue the event processor whilst we're changing state to one where the resend timer is irrelevant as the event can just be ignored by the processor thereafter. ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.35-rc3-cachefs+ #115 ------------------------------------------------------- swapper/0 is trying to acquire lock: (&call->state_lock){++--..}, at: [] rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc] but task is already holding lock: (&call->resend_timer){+.-...}, at: [] run_timer_softirq+0x182/0x2a5 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (&call->resend_timer){+.-...}: [] __lock_acquire+0x889/0x8fa [] lock_acquire+0x57/0x6d [] del_timer_sync+0x3c/0x86 [] rxrpc_send_abort+0x50/0x97 [af_rxrpc] [] rxrpc_kernel_abort_call+0xa1/0xdd [af_rxrpc] [] afs_deliver_to_call+0x129/0x368 [kafs] [] afs_process_async_call+0x54/0xff [kafs] [] worker_thread+0x1ef/0x2e2 [] kthread+0x7a/0x82 [] kernel_thread_helper+0x4/0x10 -> #0 (&call->state_lock){++--..}: [] validate_chain+0x727/0xd23 [] __lock_acquire+0x889/0x8fa [] lock_acquire+0x57/0x6d [] _raw_read_lock_bh+0x34/0x43 [] rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc] [] run_timer_softirq+0x1f3/0x2a5 [] __do_softirq+0xa2/0x13e [] call_softirq+0x1c/0x28 [] do_softirq+0x38/0x80 [] irq_exit+0x45/0x47 [] smp_apic_timer_interrupt+0x88/0x96 [] apic_timer_interrupt+0x13/0x20 [] cpu_idle+0x4d/0x83 [] start_secondary+0x1bd/0x1c1 other info that might help us debug this: 1 lock held by swapper/0: #0: (&call->resend_timer){+.-...}, at: [] run_timer_softirq+0x182/0x2a5 stack backtrace: Pid: 0, comm: swapper Not tainted 2.6.35-rc3-cachefs+ #115 Call Trace: [] print_circular_bug+0xae/0xbd [] validate_chain+0x727/0xd23 [] __lock_acquire+0x889/0x8fa [] ? mark_lock+0x42f/0x51f [] lock_acquire+0x57/0x6d [] ? rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc] [] _raw_read_lock_bh+0x34/0x43 [] ? rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc] [] rxrpc_resend_time_expired+0x56/0x96 [af_rxrpc] [] run_timer_softirq+0x1f3/0x2a5 [] ? run_timer_softirq+0x182/0x2a5 [] ? rxrpc_resend_time_expired+0x0/0x96 [af_rxrpc] [] ? __do_softirq+0x69/0x13e [] __do_softirq+0xa2/0x13e [] call_softirq+0x1c/0x28 [] do_softirq+0x38/0x80 [] irq_exit+0x45/0x47 [] smp_apic_timer_interrupt+0x88/0x96 [] apic_timer_interrupt+0x13/0x20 [] ? __atomic_notifier_call_chain+0x0/0x86 [] ? mwait_idle+0x6e/0x78 [] ? mwait_idle+0x65/0x78 [] cpu_idle+0x4d/0x83 [] start_secondary+0x1bd/0x1c1 Signed-off-by: David Howells Signed-off-by: David S. Miller commit f2f009812f1fdcaf40fa547282c1b90d3b702a7d Author: Changli Gao Date: Wed Aug 4 04:58:59 2010 +0000 sch_sfq: add sanity check for the packet length The packet length should be checked before the packet data is dereferenced. Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit 12dc96d1673feabef98eed1b5ff37abaa67fbe64 Author: Changli Gao Date: Wed Aug 4 04:55:40 2010 +0000 cls_rsvp: add sanity check for the packet length The packet length should be checked before the packet data is dereferenced. Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit 4b95c3d40d7d9927438ed7b7b49c84c60e27b65b Author: Changli Gao Date: Wed Aug 4 04:48:12 2010 +0000 cls_flow: add sanity check for the packet length The packet length should be checked before the packet data is dereferenced. Signed-off-by: Changli Gao Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit f9599ce11192f24dbb0f4fdb70121a05edc58342 Author: Changli Gao Date: Wed Aug 4 04:43:44 2010 +0000 sk_buff: introduce pskb_network_may_pull() Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit 36d12690a2e9bcacae5a2a7e0fb6345a3caad625 Author: Changli Gao Date: Tue Aug 3 17:39:18 2010 +0000 act_nat: fix on the TX path On the TX path, skb->data points to the ethernet header, not the network header. So when validating the packet length for accessing we should take the ethernet header into account. Signed-off-by: Changli Gao Acked-by: Herbert Xu Signed-off-by: David S. Miller commit 6c99a8528f9a81dda6bbbf83854b8475ce79c745 Author: Ryan Harper Date: Wed Jun 23 22:19:58 2010 -0500 virtio_blk: Remove VBID ioctl With the availablility of a sysfs device attribute for examining disk serial numbers the ioctl is no longer needed. The user-space changes for this aren't upstream yet so we don't have any users to worry about. Signed-off-by: Ryan Harper Signed-off-by: Rusty Russell commit a5eb9e4ff18a33e43557d44b205f953b0c1efade Author: Ryan Harper Date: Wed Jun 23 22:19:57 2010 -0500 virtio_blk: Add 'serial' attribute to virtio-blk devices (v2) Create a new attribute for virtio-blk devices that will fetch the serial number of the block device. This attribute can be used by udev to create disk/by-id symlinks for devices that don't have a UUID (filesystem) associated with them. ATA_IDENTIFY strings are special in that they can be up to 20 chars long and aren't required to be nul-terminated. The buffer is also zero-padded meaning that if the serial is 19 chars or less that we get a nul-terminated string. When copying this value into a string buffer, we must be careful to copy up to the nul (if it present) and only 20 if it is longer and not to attempt to nul terminate; this isn't needed. Changes since v1: - Added BUILD_BUG_ON() for PAGE_SIZE check - Removed min() since BUILD_BUG_ON() handles the check - Replaced serial_sysfs() by copying id directly to buffer Signed-off-by: Ryan Harper Signed-off-by: john cooper Signed-off-by: Rusty Russell commit 10bc310c27af1ed358e62351e7ac1d0110c3da27 Author: Christoph Hellwig Date: Tue Jun 15 14:43:48 2010 +0200 virtio_blk: support barriers without FLUSH feature If we want to support barriers with the cache=writethrough mode in qemu we need to tell the block layer that we only need queue drains to implement a barrier. Follow the model set by SCSI and IDE and assume that there is no volatile write cache if the host doesn't advertize it. While this might imply working barriers on old qemu versions or other hypervisors that actually have a volatile write cache this is only a cosmetic issue - these hypervisors don't guarantee any data integrity with or without this patch, but with the patch we at least provide data ordering. Signed-off-by: Christoph Hellwig Signed-off-by: Rusty Russell commit 51f3d0f474aaebbc253100fa32a49c8256812330 Author: Rusty Russell Date: Thu Aug 5 12:59:13 2010 -0600 module: cleanup comments, remove noinline On my (32-bit x86) machine, sys_init_module() uses 124 bytes of stack once load_module() is inlined. This effectively reverts ffb4ba76 which inlined it due to stack pressure. Signed-off-by: Rusty Russell commit 811d66a0e1e99902d365497eec7884113a2665bd Author: Rusty Russell Date: Thu Aug 5 12:59:12 2010 -0600 module: group post-relocation functions into post_relocation() This simply hoists more code out of load_module; we also put the identification of the extable and dynamic debug table in with the others in find_module_sections(). We move the taint check to the actual add/remove of the dynamic debug info: this is certain (find_module_sections is too early). Signed-off-by: Rusty Russell Cc: Yehuda Sadeh commit 6526c534b2677ca601b7b92851437feb041d02a1 Author: Rusty Russell Date: Thu Aug 5 12:59:10 2010 -0600 module: move module args strndup_user to just before use Instead of copying and allocating the args and storing it in load_info, we can just allocate them right before we need them. Signed-off-by: Rusty Russell commit 49668688dd5a5f46c72f965835388ed16c596055 Author: Rusty Russell Date: Thu Aug 5 12:59:10 2010 -0600 module: pass load_info into other functions Pass the struct load_info into all the other functions in module loading. This neatens things and makes them more consistent. Signed-off-by: Rusty Russell commit 36b0360d17dc3928cc96347a18a3a1cdbb7e506d Author: Rusty Russell Date: Thu Aug 5 12:59:09 2010 -0600 module: fix sysfs cleanup for !CONFIG_SYSFS Restore the stub module_remove_modinfo_attrs, remove the now-unused !CONFIG_SYSFS module_sysfs_init. Also, rename mod_kobject_remove() to mod_sysfs_teardown() as it is the logical counterpart to mod_sysfs_setup now. Reported-by: Randy Dunlap Signed-off-by: Rusty Russell commit 8f6d037815466cb25e7de8f00536eca71d94d4c3 Author: Rusty Russell Date: Thu Aug 5 12:59:09 2010 -0600 module: sysfs cleanup We change the sysfs functions to take struct load_info, and call them all in mod_sysfs_setup(). We also clean up the #ifdefs a little. Signed-off-by: Rusty Russell commit d913188c75191114051cf0bac75dad444c6080fa Author: Rusty Russell Date: Thu Aug 5 12:59:08 2010 -0600 module: layout_and_allocate layout_and_allocate() does everything up to and including the final struct module placement inside the allocated module memory. We have to store the symbol layout information in our struct load_info though. This avoids the nasty code we had before where 'mod' pointed first to the version inside the temporary allocation containing the entire file, then later was moved to point to the real struct module: now the main code only ever sees the final module address. (Includes fix for the Tony Luck-found Linus-diagnosed failure path error). Signed-off-by: Rusty Russell commit 511ca6ae43fbe0a7c9e0b50ad275f7ef24ef3b58 Author: Rusty Russell Date: Thu Aug 5 12:59:08 2010 -0600 module: fix crash in get_ksymbol() when oopsing in module init Andrew had the sole pleasure of tickling this bug in linux-next; when we set up "info->strtab" it's pointing into the temporary copy of the module. For most uses that is fine, but kallsyms keeps a pointer around during module load (inside mod->strtab). If we oops for some reason inside a module's init function, kallsyms will use the mod->strtab pointer into the now-freed temporary module copy. (Later oopses work fine: after init we overwrite mod->strtab to point to a compacted core-only strtab). Reported-by: Andrew "Grumpy" Morton Signed-off-by: Rusty "Buggy" Russell Tested-by: Andrew "Happy" Morton Signed-off-by: Rusty Russell commit eded41c1c6466081e0eb00d38719c6e6ee81a5d4 Author: Rusty Russell Date: Thu Aug 5 12:59:07 2010 -0600 module: kallsyms functions take struct load_info Simple refactor causes us to lift struct definition to top of file. Signed-off-by: Rusty Russell commit d6df72a06e067139d491da4a9d14d92ad39e7a50 Author: Rusty Russell Date: Thu Aug 5 12:59:07 2010 -0600 module: refactor out section header rewriting: FIX modversions We can't do the find_sec after removing the SHF_ALLOC flags; it won't find the sections. Signed-off-by: Rusty Russell commit 8b5f61a795fe37be090b0fd18b6b7271db9298e0 Author: Rusty Russell Date: Thu Aug 5 12:59:06 2010 -0600 module: refactor out section header rewriting Put all the "rewrite and check section headers" in one place. This adds another iteration over the sections, but it's far clearer. We iterate once for every find_section() so we already iterate over many times. Signed-off-by: Rusty Russell commit 3264d3f9dd532ed9c3eb9491619e3f485b72747f Author: Linus Torvalds Date: Wed Jun 2 11:01:06 2010 -0700 module: add load_info Btw, here's a patch that _looks_ large, but it really pretty trivial, and sets things up so that it would be way easier to split off pieces of the module loading. The reason it looks large is that it creates a "module_info" structure that contains all the module state that we're building up while loading, instead of having individual variables for all the indices etc. So the patch ends up being large, because every "symindex" access instead becomes "info.index.sym" etc. That may be a few characters longer, but it then means that we can just pass a pointer to that "info" structure around. and let all the pieces fill it in very naturally. As an example of that, the patch also moves the initialization of all those convenience variables into a "setup_module_info()" function. And at this point it really does become very natural to start to peel off some of the error labels and move them into the helper functions - now the "truncated" case is gone, and is handled inside that setup function instead. So maybe you don't like this approach, and it does make the variable accesses a bit longer, but I don't think unreadably so. And the patch really does look big and scary, but there really should be absolutely no semantic changes - most of it was a trivial and mindless rename. In fact, it was so mindless that I on purpose kept the existing helper functions looking like this: - err = check_modinfo(mod, sechdrs, infoindex, versindex); + err = check_modinfo(mod, info.sechdrs, info.index.info, info.index.vers); rather than changing them to just take the "info" pointer. IOW, a second phase (if you think the approach is ok) would change that calling convention to just do err = check_modinfo(mod, &info); (and same for "layout_sections()", "layout_symtabs()" etc.) Similarly, while right now it makes things _look_ bigger, with things like this: versindex = find_sec(hdr, sechdrs, secstrings, "__versions"); becoming info->index.vers = find_sec(info->hdr, info->sechdrs, info->secstrings, "__versions"); in the new "setup_module_info()" function, that's again just a result of it being a search-and-replace patch. By using the 'info' pointer, we could just change the 'find_sec()' interface so that it ends up being info->index.vers = find_sec(info, "__versions"); instead, and then we'd actually have a shorter and more readable line. So for a lot of those mindless variable name expansions there's would be room for separate cleanups. I didn't move quite everything in there - if we do this to layout_symtabs, for example, we'd want to move the percpu, symoffs, stroffs, *strmap variables to be fields in that module_info structure too. But that's a much smaller patch, I moved just the really core stuff that is currently being set up and used in various parts. But even in this rough form, it removes close to 70 lines from that function (but adds 22 lines overall, of course - the structure definition, the helper function declarations and call-sites etc etc). Signed-off-by: Linus Torvalds Signed-off-by: Rusty Russell commit 44032e631691adf1f406843d5e54deb795973ff7 Author: Linus Torvalds Date: Thu Aug 5 12:59:05 2010 -0600 module: reduce stack usage for each_symbol() And now that I'm looking at that call-chain (to see if it would make sense to use some other more specific lock - doesn't look like it: all the readers are using RCU and this is the only writer), I also give you this trivial one-liner. It changes each_symbol() to not put that constant array on the stack, resulting in changing movq $C.388.31095, %rsi #, tmp85 subq $376, %rsp #, movq %rdi, %rbx # fn, fn leaq -208(%rbp), %rdi #, tmp84 movq %rbx, %rdx # fn, rep movsl xorl %esi, %esi # leaq -208(%rbp), %rdi #, tmp87 movq %r12, %rcx # data, call each_symbol_in_section.clone.0 # into xorl %esi, %esi # subq $216, %rsp #, movq %rdi, %rbx # fn, fn movq $arr.31078, %rdi #, call each_symbol_in_section.clone.0 # which is not so much about being obviously shorter and simpler because we don't unnecessarily copy that constant array around onto the stack, but also about having a much smaller stack footprint (376 vs 216 bytes - see the update of 'rsp'). Signed-off-by: Linus Torvalds Signed-off-by: Rusty Russell commit 22e268ebecc549f1b1907f114cb44d6044bdee3c Author: Rusty Russell Date: Thu Aug 5 12:59:05 2010 -0600 module: refactor load_module part 5 1) Extract out the relocation loop into apply_relocations 2) Extract license and version checks into check_module_license_and_versions 3) Extract icache flushing into flush_module_icache 4) Move __obsparm warning into find_module_sections 5) Move license setting into check_modinfo. Signed-off-by: Rusty Russell commit 9f85a4bbb1cf56f65b3d065a5f88204a757f2325 Author: Rusty Russell Date: Thu Aug 5 12:59:04 2010 -0600 module: refactor load_module part 4 Allocate references inside module_unload_init(), clean up inside module_unload_free(). This version fixed to do allocation before __this_cpu_write, thanks to bug reports from linux-next from Dave Young and Stephen Rothwell . Signed-off-by: Rusty Russell commit 40dd2560ec2df21036db9ec8b971f92d98fd1969 Author: Rusty Russell Date: Thu Aug 5 12:59:03 2010 -0600 module: refactor load_module part 3 Extract out the allocation and copying in from userspace, and the first set of modinfo checks. Signed-off-by: Rusty Russell commit 65b8a9b4d5525348e55cf63a43517610ee8e0970 Author: Linus Torvalds Date: Thu Aug 5 12:59:02 2010 -0600 module: refactor load_module part 2 Here's a second one. It's slightly less trivial - since we now have error cases - and equally untested so it may well be totally broken. But it also cleans up a bit more, and avoids one of the goto targets, because the "move_module()" helper now does both allocations or none. Signed-off-by: Linus Torvalds Signed-off-by: Rusty Russell commit f91a13bb99b73961d4e2743a6ff296ac553abc4f Author: Linus Torvalds Date: Thu Aug 5 12:59:02 2010 -0600 module: refactor load_module I'd start from the trivial stuff. There's a fair amount of straight-line code that just makes the function hard to read just because you have to page up and down so far. Some of it is trivial to just create a helper function for. Signed-off-by: Linus Torvalds Signed-off-by: Rusty Russell commit 2409e74278b7fb917d39ef6d3c16223c04a386f2 Author: Eric Dumazet Date: Thu Aug 5 12:59:00 2010 -0600 module: module_unload_init() cleanup No need to clear mod->refptr in module_unload_init(), since alloc_percpu() already clears allocated chunks. Signed-off-by: Eric Dumazet Signed-off-by: Rusty Russell (removed unused var) commit 96576a9e1a0cdb8a43d3af5846be0948f52b4460 Author: Kulikov Vasiliy Date: Tue Aug 3 19:42:34 2010 +0400 agp: intel-agp: do not use PCI resources before pci_enable_device() IRQ and resource[] may not have correct values until after PCI hotplug setup occurs at pci_enable_device() time. The semantic match that finds this problem is as follows: // @@ identifier x; identifier request ~= "pci_request.*|pci_resource.*"; @@ ( * x->irq | * x->resource | * request(x, ...) ) ... *pci_enable_device(x) // Signed-off-by: Kulikov Vasiliy Signed-off-by: Dave Airlie commit 46cfc58a77de5fc8385ad87077f4dc14633e57a7 Author: Kulikov Vasiliy Date: Tue Aug 3 19:42:30 2010 +0400 agp: efficeon-agp: do not use PCI resources before pci_enable_device() IRQ and resource[] may not have correct values until after PCI hotplug setup occurs at pci_enable_device() time. The semantic match that finds this problem is as follows: // @@ identifier x; identifier request ~= "pci_request.*|pci_resource.*"; @@ ( * x->irq | * x->resource | * request(x, ...) ) ... *pci_enable_device(x) // Signed-off-by: Kulikov Vasiliy Signed-off-by: Dave Airlie commit 58374713c9dfb4d231f8c56cac089f6fbdedc2ec Author: Arnd Bergmann Date: Sat Jul 10 23:51:39 2010 +0200 drm: kill BKL from common code This restricts the use of the big kernel lock to the i830 and i810 device drivers. The three remaining users in common code (open, ioctl and release) get converted to a new mutex, the drm_global_mutex, making the locking stricter than the big kernel lock. This may have a performance impact, but only in those cases that currently don't use DRM_UNLOCKED flag in the ioctl list and would benefit from that anyway. The reason why i810 and i830 cannot use drm_global_mutex in their mmap functions is a lock-order inversion problem between the current use of the BKL and mmap_sem in these drivers. Since the BKL has release-on-sleep semantics, it's harmless but it would cause trouble if we replace the BKL with a mutex. Instead, these drivers get their own ioctl wrappers that take the BKL around every ioctl call and then set their own handlers as DRM_UNLOCKED. Signed-off-by: Arnd Bergmann Cc: David Airlie Cc: dri-devel@lists.freedesktop.org Signed-off-by: Dave Airlie commit 42a0ae2282b512d1a8f6f020327f5f7b8f31a5ea Merge: 412a4ac c4b6a77 Author: Benjamin Herrenschmidt Date: Thu Aug 5 10:17:29 2010 +1000 Merge commit 'kumar/next' into next commit a1e09b62592eb57e25f8d076ffa5b7bef18be812 Author: Francisco Jerez Date: Thu Jul 22 17:07:38 2010 +0200 drm/kms: Simplify setup of the initial I2C encoder config. In most use cases the driver will be using the same static config all the time: interpreting i2c_board_info::platform_data as the default config we can can save the GPU driver a redundant set_config() call. Signed-off-by: Francisco Jerez Signed-off-by: Dave Airlie commit c33788b45f754bd5dd8adc520e37fa38ac1849c7 Author: Joe Perches Date: Tue Aug 3 09:32:24 2010 +0000 drivers/net/enic: Use %pUB to format a UUID Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 2a1bc0d56b446104a3a728925b3a7afbef64afa7 Author: Stefan Weil Date: Tue Aug 3 08:53:45 2010 +0000 davinci_emac: Fix use after free in davinci_emac_remove free_netdev finally calls kfree which makes the contents of ndev and priv (private data contained in ndev) invalid. So iounmap should be called before free_netdev. Cc: David S. Miller Cc: Chaithrika U S Cc: Sriramakrishnan Cc: Kevin Hilman Cc: netdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Stefan Weil Signed-off-by: David S. Miller commit 889635fd6b269963f7e68b53c9f0f60c8008a77f Author: Kulikov Vasiliy Date: Tue Aug 3 05:43:18 2010 +0000 via-velocity: do not use PCI resources before pci_enable_device() IRQ and resource[] may not have correct values until after PCI hotplug setup occurs at pci_enable_device() time. The semantic match that finds this problem is as follows: // @@ identifier x; identifier request ~= "pci_request.*|pci_resource.*"; @@ ( * x->irq | * x->resource | * request(x, ...) ) ... *pci_enable_device(x) // Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 7a0c2029d655e03499b1e2a3daeeab6a56d72b87 Author: Kulikov Vasiliy Date: Tue Aug 3 05:43:15 2010 +0000 cxgb4vf: do not use PCI resources before pci_enable_device() IRQ and resource[] may not have correct values until after PCI hotplug setup occurs at pci_enable_device() time. The semantic match that finds this problem is as follows: // @@ identifier x; identifier request ~= "pci_request.*|pci_resource.*"; @@ ( * x->irq | * x->resource | * request(x, ...) ) ... *pci_enable_device(x) // Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 7aaaaa1e44b2a4047dfe05f304a5090eb995cf44 Author: Kulikov Vasiliy Date: Tue Aug 3 05:43:11 2010 +0000 cxgb3: do not use PCI resources before pci_enable_device() IRQ and resource[] may not have correct values until after PCI hotplug setup occurs at pci_enable_device() time. The semantic match that finds this problem is as follows: // @@ identifier x; identifier request ~= "pci_request.*|pci_resource.*"; @@ ( * x->irq | * x->resource | * request(x, ...) ) ... *pci_enable_device(x) // Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit bd5d0ccbef9f2565e76dba4ff291da6a2cb8b1b4 Author: Alexander Schmidt Date: Mon Jul 5 11:41:56 2010 +0000 IB/ehca: Init irq tasklet before irq can happen Initialize tasklet before interrupts are requested to prevent scheduling of an uninitialized tasklet. Signed-off-by: Alexander Schmidt Signed-off-by: Roland Dreier commit fca3ec01e0b40cab82cac7745e154b01969e6219 Author: Chris Wilson Date: Wed Aug 4 14:34:24 2010 +0100 drm,io-mapping: Specify slot to use for atomic mappings This is required should we ever attempt to use an io-mapping where KM_USER0 is verboten, such as inside an IRQ context. Signed-off-by: Chris Wilson Cc: Eric Anholt Signed-off-by: Dave Airlie commit 430f70d59da643f1aa7c9cf3493423a76550b110 Author: Alex Deucher Date: Wed Aug 4 03:45:04 2010 -0400 drm/radeon/kms: only expose underscan on avivo chips R4xx also uses the atom add connector function, but underscan is only supported on avivo chips. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 1297c05a8dfb568c689f057d51a65eebe5ddc86f Author: Alex Deucher Date: Wed Aug 4 11:40:00 2010 -0400 drm/radeon: add new pci ids New evergreen and r7xx ids. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 3fb688fdc1890f9e8e97597f690c145ab888aec0 Author: Chris Wilson Date: Wed Aug 4 11:09:42 2010 +0100 drm: Cleanup after failing to create master->unique and dev->name v2: Userspace (notably xf86-video-{intel,ati}) became confused when drmSetInterfaceVersion() started returning -EBUSY as they used a second call (the first done in drmOpen()) to check their master credentials. Since userspace wants to be able to repeatedly call drmSetInterfaceVersion() allow them to do so. v3: Rebase to drm-core-next. Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit 3cfc2c42c1cbc8e238bb9c0612c0df4565e3a8b4 Merge: 5cf6571 0ea6e61 Author: Linus Torvalds Date: Wed Aug 4 15:31:02 2010 -0700 Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits) Documentation: update broken web addresses. fix comment typo "choosed" -> "chosen" hostap:hostap_hw.c Fix typo in comment Fix spelling contorller -> controller in comments Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -> Fault fs/Kconfig: Fix typo Userpace -> Userspace Removing dead MACH_U300_BS26 drivers/infiniband: Remove unnecessary casts of private_data fs/ocfs2: Remove unnecessary casts of private_data libfc: use ARRAY_SIZE scsi: bfa: use ARRAY_SIZE drm: i915: use ARRAY_SIZE drm: drm_edid: use ARRAY_SIZE synclink: use ARRAY_SIZE block: cciss: use ARRAY_SIZE comment typo fixes: charater => character fix comment typos concerning "challenge" arm: plat-spear: fix typo in kerneldoc reiserfs: typo comment fix update email address ... commit 5cf65713f87775c548e3eb48dbafa32e12f28000 Merge: b7c8e55 9f17d51 Author: Linus Torvalds Date: Wed Aug 4 15:23:49 2010 -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: (30 commits) Revert "HID: add support for the Wacom Intuos 4 wireless" HID: fix up Kconfig entry for ACRUX driver HID: add ACRUX game controller force feedback support HID: Force input registration for "VEC footpedal" HID: add HID_QUIRK_HIDINPUT_FORCE HID: hid-input.c: indentation fixes HID: hiddev: use usb_find_interface, get rid of BKL HID: ignore digitizer usage Undefined (0x00) HID: Add support for Conceptronic CLLRCMCE HID: hid-ids.h: Whitespace fixup, align using TABs HID: picolcd: implement refcounting of framebuffer HID: picolcd: do not reallocate memory on depth change HID: picolcd: Add minimal palette required by fbcon on 8bpp HID: magicmouse: Correct parsing of large X and Y motions. HID: magicmouse: report last touch up HID: picolcd: fix deferred_io init/cleanup to fb ordering HID: hid-ids.h: keep vendor ids in alphabetical order HID: add proper support for Elecom BM084 bluetooth mouse HID: magicmouse: enable horizontal scrolling HID: magicmouse: add param for scroll speed ... commit b7c8e55db7141dcbb9d5305a3260fa0ed62a1bcc Merge: ffd386a 4015d9a Author: Linus Torvalds Date: Wed Aug 4 15:23:14 2010 -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: (39 commits) random: Reorder struct entropy_store to remove padding on 64bits padata: update API documentation padata: Remove padata_get_cpumask crypto: pcrypt - Update pcrypt cpumask according to the padata cpumask notifier crypto: pcrypt - Rename pcrypt_instance padata: Pass the padata cpumasks to the cpumask_change_notifier chain padata: Rearrange set_cpumask functions padata: Rename padata_alloc functions crypto: pcrypt - Dont calulate a callback cpu on empty callback cpumask padata: Check for valid cpumasks padata: Allocate cpumask dependend recources in any case padata: Fix cpu index counting crypto: geode_aes - Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) pcrypt: Added sysfs interface to pcrypt padata: Added sysfs primitives to padata subsystem padata: Make two separate cpumasks padata: update documentation padata: simplify serialization mechanism padata: make padata_do_parallel to return zero on success padata: Handle empty padata cpumasks ... commit ffd386a9a8273dcfa61705d0b349eebc7525ef87 Merge: 03da309 099a19d Author: Linus Torvalds Date: Wed Aug 4 15:17:52 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: percpu: allow limited allocation before slab is online percpu: make @dyn_size always mean min dyn_size in first chunk init functions commit 03da30986793385af57eeca3296253c887b742e6 Merge: 6ba7401 339f4f4 Author: Linus Torvalds Date: Wed Aug 4 15:15:15 2010 -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: (276 commits) [SCSI] zfcp: Trigger logging in the FCP channel on qdio error conditions [SCSI] zfcp: Introduce experimental support for DIF/DIX [SCSI] zfcp: Enable data division support for FCP devices [SCSI] zfcp: Prevent access on uninitialized memory. [SCSI] zfcp: Post events through FC transport class [SCSI] zfcp: Cleanup QDIO attachment and improve processing. [SCSI] zfcp: Cleanup function parameters for sbal value. [SCSI] zfcp: Use correct width for timer_interval field [SCSI] zfcp: Remove SCSI device when removing unit [SCSI] zfcp: Use memdup_user and kstrdup [SCSI] zfcp: Fix retry after failed "open port" erp action [SCSI] zfcp: Fail erp after timeout [SCSI] zfcp: Use forced_reopen in terminate_rport_io callback [SCSI] zfcp: Register SCSI devices after successful fc_remote_port_add [SCSI] zfcp: Do not try "forced close" when port is already closed [SCSI] zfcp: Do not unblock rport from REOPEN_PORT_FORCED [SCSI] sd: add support for runtime PM [SCSI] implement runtime Power Management [SCSI] convert to the new PM framework [SCSI] Unify SAM_ and SAM_STAT_ macros ... commit fc091769a5aa65c045bfbda149c424ba33d0abbb Author: Takashi Iwai Date: Wed Aug 4 23:53:36 2010 +0200 ALSA: hda - Add pin-fix for HP dc5750 The NID 0x11 on HP dc5750 with ALC260 should be a speaker although BIOS gives it as a line-out. This patch adds a quirk to fix the pin config so that the real line-out is used properly. Reference: bnc#624118 https://bugzilla.novell.com/show_bug.cgi?id=624118 Signed-off-by: Takashi Iwai commit 7cc88fdcff3cc7f0d5d2384ffd7f6d4ce9a745f1 Merge: ca50a5f 6280f19 Author: Jeremy Fitzhardinge Date: Wed Aug 4 14:49:24 2010 -0700 Merge branch 'xen/xenbus' into upstream/xen * xen/xenbus: implement O_NONBLOCK for /proc/xen/xenbus xenbus: do not hold transaction_mutex when returning to userspace commit ca50a5f39041497253c6362f2ba4da1b56d3e6cb Merge: a70ce4b ca65f9f Author: Jeremy Fitzhardinge Date: Wed Aug 4 14:49:16 2010 -0700 Merge branch 'upstream/pvhvm' into upstream/xen * upstream/pvhvm: Introduce CONFIG_XEN_PVHVM compile option blkfront: do not create a PV cdrom device if xen_hvm_guest support multiple .discard.* sections to avoid section type conflicts xen/pvhvm: fix build problem when !CONFIG_XEN xenfs: enable for HVM domains too x86: Call HVMOP_pagetable_dying on exit_mmap. x86: Unplug emulated disks and nics. x86: Use xen_vcpuop_clockevent, xen_clocksource and xen wallclock. xen: Fix find_unbound_irq in presence of ioapic irqs. xen: Add suspend/resume support for PV on HVM guests. xen: Xen PCI platform device driver. x86/xen: event channels delivery on HVM. x86: early PV on HVM features initialization. xen: Add support for HVM hypercalls. Conflicts: arch/x86/xen/enlighten.c arch/x86/xen/time.c commit a70ce4b6064b64477ed12ef1878980f842819094 Merge: 9fe6206 086748e Author: Jeremy Fitzhardinge Date: Wed Aug 4 14:49:05 2010 -0700 Merge branch 'upstream/core' into upstream/xen * upstream/core: xen/panic: use xen_reboot and fix smp_send_stop Xen: register panic notifier to take crashes of xen guests on panic xen: support large numbers of CPUs with vcpu info placement xen: drop xen_sched_clock in favour of using plain wallclock time pvops: do not notify callers from register_xenstore_notifier xen: make sure pages are really part of domain before freeing xen: release unused free memory commit 086748e52fb072ff0935ba4512e29c421bd5b716 Author: Ian Campbell Date: Tue Aug 3 14:55:14 2010 -0700 xen/panic: use xen_reboot and fix smp_send_stop Offline vcpu when using stop_self. Signed-off-by: Ian Campbell Signed-off-by: Jeremy Fitzhardinge commit f09f6d194d85043e0eb105a577e7ad6d8170ab66 Author: Donald Dutile Date: Thu Jul 15 14:56:49 2010 -0400 Xen: register panic notifier to take crashes of xen guests on panic Register a panic notifier so that when the guest crashes it can shut down the domain and indicate it was a crash to the host. Signed-off-by: Donald Dutile Signed-off-by: Jeremy Fitzhardinge commit c06ee78d73fd24e8d8a65f16380f6a0551107e1b Author: Mukesh Rathor Date: Mon Jul 19 10:25:08 2010 -0700 xen: support large numbers of CPUs with vcpu info placement When vcpu info placement is supported, we're not limited to MAX_VIRT_CPUS vcpus. However, if it isn't supported, then ignore any excess vcpus. Signed-off-by: Mukesh Rathor Signed-off-by: Jeremy Fitzhardinge commit 8a22b9996b001c88f2bfb54c6de6a05fc39e177a Author: Jeremy Fitzhardinge Date: Mon Jul 12 11:49:59 2010 -0700 xen: drop xen_sched_clock in favour of using plain wallclock time xen_sched_clock only counts unstolen time. In principle this should be useful to the Linux scheduler so that it knows how much time a process actually consumed. But in practice this doesn't work very well as the scheduler expects the sched_clock time to be synchronized between cpus. It also uses sched_clock to measure the time a task spends sleeping, in which case "unstolen time" isn't meaningful. So just use plain xen_clocksource_read to return wallclock nanoseconds for sched_clock. Signed-off-by: Jeremy Fitzhardinge commit 31de189f7d02da163f77d46a86d9e655a2d83124 Author: Stefano Stabellini Date: Fri Jul 16 17:30:19 2010 +0100 pvops: do not notify callers from register_xenstore_notifier Currently register_xenstore_notifier notifies the caller during the registration itself if xenstore is believed to be ready. This behaviour causes problems to PV on HVM guests, in which case callers should be notified by xenbus_probe only after the platform pci driver is loaded. We already make sure xenbus_probe is called at the right time, calling it either from device_initcall (PV case) or from the platform pci driver initialization (HVM case) so we don't need this additional notification. Signed-off-by: Stefano Stabellini Signed-off-by: Jeremy Fitzhardinge commit b2a899eaf3ab78cab380ef7e331c549d771cc2ca Author: Roland Dreier Date: Wed Aug 4 14:29:31 2010 -0700 RDMA/nes: Fix misindented code In nes_probe(), a bit of code is indented one tab stop too far. Fix this. Signed-off-by: Roland Dreier commit b9033e682e86f3c6a66763f9b6a3935c5c64e145 Author: Kulikov Vasiliy Date: Sat Jul 17 19:19:48 2010 +0400 dma: dmatest: fix potential sign bug 'cnt' is unsigned, so this code may become wrong in future as dmatest_add_threads() can return error code: cnt = dmatest_add_threads(dtc, DMA_MEMCPY); thread_count += cnt > 0 ? cnt : 0; ^^^^^^^ Now it can return only -EINVAL if and only if second argument of dmatest_add_threads() is not one of DMA_MEMCPY, DMA_XOR, DMA_PQ. So, now it is not wrong but may become wrong in future. The semantic patch that finds this problem (many false-positive results): (http://coccinelle.lip6.fr/) // @ r1 @ identifier f; @@ int f(...) { ... } @@ identifier r1.f; type T; unsigned T x; @@ *x = f(...) ... *x > 0 Signed-off-by: Kulikov Vasiliy Signed-off-by: Dan Williams commit df924f833c0389c9f5206b073e87e9f5f3e857d3 Author: Roland Dreier Date: Wed Aug 4 14:27:01 2010 -0700 RDMA/nes: Fix showing wqm_quanta In nes_show_wqm_quanta(), the wrong value is printed. Fix this. Signed-off-by: Roland Dreier commit 69d510238300c0888ec17e4a811279fe7760b527 Author: Roland Dreier Date: Wed Aug 4 14:25:40 2010 -0700 RDMA/nes: Get rid of "set but not used" variables Delete dead code in various places that is shown by gcc 4.6's new -Wunused-but-set-variable warnings. Signed-off-by: Roland Dreier commit 763e9db9994e27a7d2cb3701c8a097a867d0e0b4 Author: Stephen Rothwell Date: Wed Aug 4 14:25:31 2010 +1000 PCI: update for owner removal from struct device_attribute Fixes the build. Acked-by: Guenter Roeck Signed-off-by: Stephen Rothwell Signed-off-by: Jesse Barnes commit c4685849b4d725ab80cd29f5e09f5f128b4724b5 Author: Ondrej Zary Date: Wed Aug 4 21:56:44 2010 +0200 ALSA: als4000: Fix potentially invalid DMA mode setup My previous patch assumed that the DMA mode (represented by 3 lowest bits of ALS4K_GCR99_DMA_EMULATION_CTRL register) is set to the default value 0. If that's not the case, it might result in invalid mode to be set. This patch fixes this potential problem. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 556ab45f9a775bfa4762bacc0a4afb5b44b067bc Author: Dan Williams Date: Fri Jul 23 15:47:56 2010 -0700 ioat2: catch and recover from broken vtd configurations v6 On some platforms (MacPro3,1) the BIOS assigns the ioatdma device to the incorrect iommu causing faults when the driver initializes. Add a quirk to catch this misconfiguration and try falling back to untranslated operation (which works in the MacPro3,1 case). Assuming there are other platforms with misconfigured iommus teach the ioatdma driver to treat initialization failures as non-fatal (just fail the driver load and emit a warning instead of triggering a BUG_ON). This can be classified as a boot regression since 2.6.32 on affected platforms since the ioatdma module did not autoload prior to that kernel. Cc: Acked-by: David Woodhouse Reported-by: Chris Li Tested-by: Chris Li Signed-off-by: Dan Williams commit 128f904ac87cb6e63921e80f378fdf9ba532c0f6 Author: Linus Walleij Date: Wed Aug 4 13:37:53 2010 +0200 DMAENGINE: add runtime slave control to COH 901 318 v3 This extends the DMA engine driver for the COH 901 318 used in the U300 platform with the generic runtime slave control command. Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 95e1400fa1317e566b316ff4af947bd5341332c8 Author: Linus Walleij Date: Wed Aug 4 13:37:45 2010 +0200 DMAENGINE: add runtime slave config to DMA40 v3 This extends the DMA engine driver for the DMA40 used in the U8500 platform with the generic runtime slave configuration interface. Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit c156d0a5b0c667999e06d0bb52e3d1376faec8bf Author: Linus Walleij Date: Wed Aug 4 13:37:33 2010 +0200 DMAENGINE: generic slave channel control v3 This adds an interface to the DMAengine to make it possible to reconfigure a slave channel at runtime. We add a few foreseen config parameters to the passed struct, with a void * pointer for custom per-device or per-platform runtime slave data. Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 0c42bd0e425e9c8ddb7019fc446f7d915e36c5f6 Author: Yong Wang Date: Fri Jul 30 16:23:03 2010 +0800 dmaengine: Driver for Topcliff PCH DMA controller Topcliff PCH is the platform controller hub that is going to be used in Intel's upcoming general embedded platforms. This adds the driver for Topcliff PCH DMA controller. The DMA channels are strictly for device to host or host to device transfers and cannot be used for generic memcpy. Signed-off-by: Yong Wang [kill GFP_ATOMIC, kill __raw_{read|write}l, locking fixlet] Signed-off-by: Dan Williams commit ff0380ce3928e162d5b417ac88124d87b34d63a7 Author: Miroslaw Walukiewicz Date: Thu Jul 15 14:53:29 2010 +0000 RDMA/nes: Read firmware version from correct place Signed-off-by: Mirek Walukiewicz Signed-off-by: Roland Dreier commit 89de74866b846cc48780fda3de7fd223296aaca9 Author: Bart Van Assche Date: Tue Aug 3 14:08:45 2010 +0000 IB/srp: Export req_lim via sysfs Export req_lim via sysfs for debugging. Signed-off-by: Bart Van Assche Acked-by: David Dillow Signed-off-by: Roland Dreier commit 2411054ae9eb7e7ef488a39912abfc4ebadbe3ad Author: Andy Lutomirski Date: Sun Jul 25 13:14:29 2010 -0400 iwlagn: Improve aggregation failure error messages 82ca9341763107615a15da6e59b9535d49eb91c3 added scary looking but harmless error messages. Make them clearer and make the actual failure message show up with the same severity as the harmless one. Signed-off-by: Andy Lutomirski Signed-off-by: John W. Linville commit 47cb905d6b1f46bf403998f4838baa3f3b597391 Author: Kulikov Vasiliy Date: Tue Aug 3 19:43:22 2010 +0400 rt2x00: do not use PCI resources before pci_enable_device() IRQ and resource[] may not have correct values until after PCI hotplug setup occurs at pci_enable_device() time. The semantic match that finds this problem is as follows: // @@ identifier x; identifier request ~= "pci_request.*|pci_resource.*"; @@ ( * x->irq | * x->resource | * request(x, ...) ) ... *pci_enable_device(x) // Signed-off-by: Kulikov Vasiliy Acked-by: Gertjan van Wingerde Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 93c08c32914264f539baf7f04cce310a0dd30a7a Author: Juuso Oikarinen Date: Tue Aug 3 08:22:25 2010 +0300 mac80211: Fix compilation warning when CONFIG_INET is not set The warning is: net/mac80211/main.c:688: warning: label ‘fail_ifa’ defined but not used Signed-off-by: Juuso Oikarinen Signed-off-by: John W. Linville commit 93c0584ca92a76bd458c7fd505b1747901315156 Author: Christoph Fritz Date: Tue Aug 3 12:54:20 2010 +0200 wireless: ipw2100: check result of kzalloc() If kzalloc() fails return with -ENOMEM from ipw2100_net_init() which is called by register_netdev. CC: Dan Carpenter Signed-off-by: Christoph Fritz Signed-off-by: John W. Linville commit c8f3b7213342d905cbb75d6c8820d9141205f3a0 Author: Jan Friedrich Date: Mon Aug 2 23:55:50 2010 +0200 ath9k: fix erased ieee80211_rx_status.mactime ath9k_rx_skb_preprocess nulls rxs and the mactime is never set again - mactime is always 0. This causes problems in IBSS mode. ieee80211_rx_bss_info uses mactime to decide if an IBSS merge is needed. Without this patch the merge is triggered by each beacon received. This can be recognized by the "beacon TSF higher than local TSF - IBSS merge with BSSID" log message accompanying each beacon. This problem was not completely fixed in commit a6d2055b02dde1067075795274672720baadd3ca and is not a stable kernel fix. It is solely intended for wireless-testing. Signed-off-by: Jan Friedrich Signed-off-by: John W. Linville commit 5f7aebd845a9d2ed42f36b7333579ec3534b4713 Author: Larry Finger Date: Sun Aug 1 15:40:04 2010 -0500 p54pci: Add PCI ID for SMC2802W The SMC2802W appears to work with p54pci. Signed-off-by: Larry Finger Tested-by: David Cozatt Signed-off-by: John W. Linville commit 754018494216e07f43c611d342d7d8bd25b22140 Author: Lorenzo Bianconi Date: Sun Aug 1 15:47:32 2010 +0200 ath9k: fix an issue in ath_atx_tid paused flag management I noticed a possible issue in the paused flag management of the ath_atx_tid data structure. In particular, in a noisy environment and under heavy load, I observed that the AGGR session establishment could fail several times consecutively causing values of the paused flag greater than one for this TID (ath_tx_pause_tid is called more than once from ath_tx_aggr_start). Considering that the session for this TID can not be established also after the mac80211 stack calls the ieee80211_agg_tx_operational() since the ath_tx_aggr_resume() lowers the paused flag only by one. This patch also replaces some BUG_ON calls with WARN_ON, as even if these unlikely conditions happen, it's not fatal enough to justify a BUG_ON. Signed-off-by: Lorenzo Bianconi Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 824b185adf86163e57892f22a878f97bc4bc69ab Author: Luis R. Rodriguez Date: Sun Aug 1 02:25:16 2010 -0400 ath9k_hw: Fix regulatory CTL index usage for AR9003 AR9003 was not relying on the CTL indexes from the EEPROM for capping the max output power. The CTL indexes from the EEPROM provide calibrated limits for output power for each tested and supported frequency. Without this the device operates at a power level which only conforms to the transmit spectrum mask as specified by IEEE Annex I.2.3. The regulatory limit by CRDA is always used but does not provide calibrated values for optimal performance, specially on band edges. Using the calibrated data from the EEPROM ensures the device operates at optimal output power while still ensuring proper regulatory compliance. The device uses the minimum of these tree values, the value from CRDA, the calibrated value from CTL indexex, and the value to conform to the IEEE transmit spectrum mask. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit bb1236115eb6fd9ab7563b6a8cfbcc6980eb3ff1 Author: Kulikov Vasiliy Date: Sat Jul 31 20:33:59 2010 +0400 net: wl12xx: do not use kfree'd memory wl1271_dump() uses cmd after kfree(cmd). Move kfree() just after wl1271_dump(). Signed-off-by: Kulikov Vasiliy Acked-by: Juuso Oikarinen Signed-off-by: John W. Linville commit 74dee2c3e1a3dc5cd6100f110f7935dece7a3505 Author: Wey-Yi Guy Date: Sat Jul 31 08:34:12 2010 -0700 iwlagn: fix typo in ucode_bt_stats_read debugfs small typo fix in ucode_bt_stats_read debugfs file Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 735df29a0641d9d8d65117c48ee460284ffcfc05 Author: Wey-Yi Guy Date: Sat Jul 31 08:34:11 2010 -0700 iwlwifi: BA scd_flow not match condition detected It is a uCode bug which cause the tx queue id not match scd_flow in compressed block ack frame, and it need to be addressed in uCode. Currently, driver will log the information when it happen. Since it is possible happen very often and we do not want to fill the syslog, so don't enable the logging by default. Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 5fc97f7789e6ff3d1698a544f863b55dba9d9cd9 Author: Johannes Berg Date: Sat Jul 31 08:34:09 2010 -0700 iwlwifi: fix compile warning When iwlwifi is compiled w/o debug, we get this warning: iwl-agn.c: In function ‘iwlagn_load_firmware’: iwl-agn.c:2014: warning: passing argument 3 of ‘iwl_print_hex_dump’ discards qualifiers from pointer target type iwl-debug.h:73: note: expected ‘void *’ but argument is of type ‘const u8 *’ because the const qualifier is missing in the inline stub. Fix this. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 4254bc1c4d7b53ac10e558dfe015725fdd693da4 Author: Felix Fietkau Date: Sat Jul 31 00:12:01 2010 +0200 ath9k_hw: fix a noise floor calibration related race condition On AR5008-AR9002, other forms of calibration must not be started while the noise floor calibration is running, as this can create invalid readings which were sometimes not even recoverable by any further calibration attempts. This patch also ensures that the result of noise floor measurements are processed faster and also allows the result of the initial calibration on reset to make it into the NF history buffer Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 20bd2a0952d01ba82a99b3f22d46e3832c255529 Author: Felix Fietkau Date: Sat Jul 31 00:12:00 2010 +0200 ath9k_hw: clean up per-channel calibration data The noise floor history buffer is currently not kept per channel, which can lead to problems when changing channels from a clean channel to a noisy one. Also when switching from HT20 to HT40, the noise floor history buffer is full of measurements, but none of them contain data for the extension channel, which it needs quite a bit of time to recover from. This patch puts all the per-channel calibration data into a single data structure, and gives the the driver control over whether that is used per-channel or even not used for some channels. For ath9k_htc, I decided to keep this per-channel in order to avoid creating regressions. For ath9k, the data is kept only for the operating channel, which saves some space. ath9k_hw takes care of wiping old data when the operating channel or its channel flags change. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 5ee0865615f65f84e6ee9174771a6716c29e08e1 Author: Felix Fietkau Date: Sat Jul 31 00:11:59 2010 +0200 ath9k: prevent calibration during off-channel activity Previously the software scan callback was used to indicate to the hardware, when it was safe to calibrate. This didn't really work properly, because it depends on a specific order of software scan callbacks vs. channel changes. Also, software scans are not the only thing that triggers off-channel activity, so it's better to use the newly added indication from mac80211 for this and not use the software scan callback for anything calibration related. This fixes at least some of the invalid noise floor readings that I've seen in AP mode on AR9160 Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit b2ccc507b70be2815a25e3c5dc23c636e128222c Author: Felix Fietkau Date: Fri Jul 30 21:02:12 2010 +0200 ath9k_hw: fix analog shift register writes on AR9003 Writes to the analog shift registers, which are issues by the initval programming function, require a 100 usec delay (similar to AR9002, but in a different register range). Signed-off-by: Felix Fietkau Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit ddfef79257648e165ac49e6088d459819a02a882 Author: Felix Fietkau Date: Fri Jul 30 21:02:11 2010 +0200 ath9k: fix a crash in the PA predistortion apply function When updating the PAPRD table in hardware, PAPRD itself needs to be disabled first, otherwise the hardware can throw a data bus error, which upsets at least some platforms. Signed-off-by: Felix Fietkau Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 9369746050e838c57e357f0caa552386ad65a82d Author: Felix Fietkau Date: Fri Jul 30 21:02:10 2010 +0200 ath9k_hw: fix periodic noise floor calibration on AR9003 The periodic noise floor calibration is broken on this chip family, because it keeps triggering a software-filtered noise floor calibration, but never reads the result before uploading the history buffer value to the hardware. Fix this with a call to ath9k_hw_getnf(), just like on AR9002. Signed-off-by: Felix Fietkau Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 00c86590e36bd42574821b43b5124d75f30df9dd Author: Felix Fietkau Date: Fri Jul 30 21:02:09 2010 +0200 ath9k_hw: clean up and fix initial noise floor calibration On AR9003 the initial noise floor calibration is currently triggered at the end of the reset without allowing the hardware to update the baseband settings. This could potentially make scans in noisy environments a bit more unreliable, so use the same calibration sequence that is used on AR9002. Signed-off-by: Felix Fietkau Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 1601b1e56e1093d6deb8f475fafc30cc30143357 Author: Johannes Berg Date: Fri Jul 30 13:30:47 2010 +0200 mac80211: fix scan locking wrt. hw scan Releasing the scan mutex while starting scans can lead to unexpected things happening, so we shouldn't do that. Fix that and hold the mutex across the scan triggering. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 02f5ba5bac8b374bc2126920c7204c63019f28ce Author: Johannes Berg Date: Fri Jul 30 13:30:46 2010 +0200 iwlwifi: fix possible recursive locking deadlock commit f84b29ec0a1ab767679d3f2428877b65f94bc3ff Author: Johannes Berg Date: Tue May 18 02:29:13 2010 -0700 iwlwifi: queue user-initiated scan when doing internal scan introduced a potential deadlock because it calls ieee80211_scan_completed() with the priv->mutex held, but mac80211 may call back into iwlwifi which would lead to recursive locking. Move this out from under the mutex. Cc: stable@kernel.org Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit c4b6a77663f5879de20561144716cfb675815e82 Author: Heiko Schocher Date: Tue Mar 23 08:57:01 2010 +0100 powerpc/8xx: Add support for the MPC8xx based boards from TQC Supported SMC1 (serial console), SCC1 Ethernet (10Mbps HD). FEC Ethernet, 8MB NOR CFI Flash. Tested on STK8xx with TQM860L (with FEC) and with TQM855M (without FEC). Signed-off-by: Heiko Schocher Signed-off-by: Kumar Gala commit 30be4c965c37418606006940f45919694693e3f9 Author: Timur Tabi Date: Fri Jul 2 17:25:03 2010 -0500 powerpc/85xx: Introduce support for the Freescale P1022DS reference board Introduce basic support for the Freescale P1022DS reference board, based on the Freescale BSP for this board. This patch excludes the DIU, SSI, and MMC/SD drivers. Only a 36-bit DTS is provided. Update mpc86xx_smp_defconfig and mpc85xx_defconfig to support the P1022DS. This means enabling 64-bit physical address support, increasing the maximum zone order to 12 (to allow the DIU driver to allocate large chunks), and clean up the audio options to disable the deprecated OSS support. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit 51974d3162308695f888600b15c6f6009069dd0d Author: Bradley Hughes Date: Wed Jul 21 12:04:00 2010 +0000 powerpc/85xx: Adding DTS for the STx GP3-SSA MPC8555 board This version uses "fsl,mpc8555..." instead of "fsl,85..." notation. There is also an 8541 version of this board so DTS for this board is specific to the 8555 processor. Another patch is coming to fix-up other DTS that use old notation. Signed-off-by: Bradley Hughes Signed-off-by: Kumar Gala commit 8a4ab218ef7034660982931b3e1eb6bbc2bde0ea Author: Bradley Hughes Date: Wed Jul 21 12:04:06 2010 +0000 powerpc/85xx: Change deprecated binding for 85xx-based boards The "fsl,85..." style compatible binding was to be deprecated some time ago. This patch corrects existing occurrences of the incorrect binding. The memory-controller and l2-cache-controller are the only affected nodes. Signed-off-by: Bradley Hughes Signed-off-by: Kumar Gala commit e9502fbe2d1e754edfb70d5738f058853097c88c Author: Dmitry Eremin-Solenikov Date: Wed Jul 21 10:33:24 2010 +0000 powerpc/tqm85xx: add a quirk for ti1520 PCMCIA bridge By default ti1520 bridge expects an input clock on CLOCK pin (to control power chip). However on this boards CLOCK should be generated by PCI1520 itself. Add a quirk that enables internal 16 KHz clock generation on this pin. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Kumar Gala commit 07c638398f490e63275ae23aa51b7c50df7d1a49 Author: Dmitry Eremin-Solenikov Date: Wed Jul 21 10:33:23 2010 +0000 powerpc/tqm85xx: update PCI interrupt-map attribute Update PCI IRQ mapping on TQM85xx platforms: include INTC and INTD on PCI-X slot and add INTA/INTB mapping for PCMCIA bridge. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Kumar Gala commit ba4d1275d1ad89a17cd529f7755e227ead52be4e Author: Ilya Yanok Date: Thu Jul 8 10:10:39 2010 +0000 powerpc/mpc8308rdb: support for MPC8308RDB board from Freescale This patch adds support for MPC8308RDB development board from Freescale. Supported devices: DUART Dual Ethernet NOR and NAND flashes I2C USB in peripheral mode PCIE support is broken by the commit 3da34aa ("powerpc/fsl: Support unique MSI addresses per PCIe Root Complex"). Works after revert. Signed-off-by: Ilya Yanok Signed-off-by: Kumar Gala commit e3b5e0d552b34d65e15b20610273b200555eea53 Author: Ilya Yanok Date: Thu Jul 8 10:10:38 2010 +0000 powerpc/fsl_pci: add quirk for mpc8308 pcie bridge This patch adds the quirk for PCIE controller found on Freescale MPC8308. The quirk is the same as for other MPC83xx processors. Signed-off-by: Ilya Yanok Signed-off-by: Kumar Gala commit 99d8238f5fb1dfe225042aea708337fcb7e8de55 Author: Anton Vorontsov Date: Tue Jun 8 09:55:57 2010 +0000 powerpc/85xx: Cleanup QE initialization for MPC85xxMDS boards The mpc85xx_mds_setup_arch() function is incomprehensible and unmaintainable. Factor out all QE specific stuff into mpc85xx_mds_qe_init() and mpc85xx_mds_reset_ucc_phys(). Also move QE stuff out of mpc85xx_mds_pic_init(). The diff is unreadable, but only because the code was so. ;-) It should be better now, and less indented. Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit dee9ad718b4f0009a4170c178f7171c7b1f06f92 Author: Anton Vorontsov Date: Tue Jun 8 09:55:50 2010 +0000 powerpc/85xx: Fix booting for P1021MDS boards P1021 processors have no dedicated ROM to store the QE microcode, so the fimrware is stored externally, and it is U-Boot responsibility to load it. It might be that the board is booting without QE, e.g. currently U-Boot doesn't support QE for P1021MDS boards, which means that QE isn't initialized, and so the board hangs early at boot. This patch fixes the issue by marking QE as disabled and checking the state in the probing code. U-Boot should fixup the state if it initialized the QE. Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit bb863e85a74f0222f4486ddb1945ed9eb431d6c9 Author: Anton Vorontsov Date: Tue Jun 8 09:55:40 2010 +0000 powerpc/85xx: Fix SWIOTLB initalization for MPC85xxMDS boards The code inside '#ifdef CONFIG_QUICC_ENGINE' makes the mpc85xx_mds_setup_arch() return early if no QE nodes present, and so SWIOTLB is never initialized. This patch fixes the issue by moving SWIOTLB code above QE. Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit 415cb47998c54195710d413c3d95e37a9339c1e8 Merge: 9fe6206 78b4353 d602dab 2bce648 bc6488e Author: Pekka Enberg Date: Wed Aug 4 22:04:43 2010 +0300 Merge branches 'slab/fixes', 'slob/fixes', 'slub/cleanups' and 'slub/fixes' into for-linus commit 6ba74014c1ab0e37af7de6f64b4eccbbae3cb9e7 Merge: 5abd9cc 3ff1c25 Author: Linus Torvalds Date: Wed Aug 4 11:47:58 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1443 commits) phy/marvell: add 88ec048 support igb: Program MDICNFG register prior to PHY init e1000e: correct MAC-PHY interconnect register offset for 82579 hso: Add new product ID can: Add driver for esd CAN-USB/2 device l2tp: fix export of header file for userspace can-raw: Fix skb_orphan_try handling Revert "net: remove zap_completion_queue" net: cleanup inclusion phy/marvell: add 88e1121 interface mode support u32: negative offset fix net: Fix a typo from "dev" to "ndev" igb: Use irq_synchronize per vector when using MSI-X ixgbevf: fix null pointer dereference due to filter being set for VLAN 0 e1000e: Fix irq_synchronize in MSI-X case e1000e: register pm_qos request on hardware activation ip_fragment: fix subtracting PPPOE_SES_HLEN from mtu twice net: Add getsockopt support for TCP thin-streams cxgb4: update driver version cxgb4: add new PCI IDs ... Manually fix up conflicts in: - drivers/net/e1000e/netdev.c: due to pm_qos registration infrastructure changes - drivers/net/phy/marvell.c: conflict between adding 88ec048 support and cleaning up the IDs - drivers/net/wireless/ipw2x00/ipw2100.c: trivial ipw2100_pm_qos_req conflict (registration change vs marking it static) commit c996bb47bb419b7c2f75499e11750142775e5da9 Author: Bart Van Assche Date: Fri Jul 30 10:59:05 2010 +0000 IB/srp: Make receive buffer handling more robust The current strategy in ib_srp for posting receive buffers is: * Post one buffer after channel establishment. * Post one buffer before sending an SRP_CMD or SRP_TSK_MGMT to the target. As a result, only the first non-SRP_RSP information unit from the target will be processed. If that first information unit is an SRP_T_LOGOUT, it will be processed. On the other hand, if the initiator receives an SRP_CRED_REQ or SRP_AER_REQ before it receives a SRP_T_LOGOUT, the SRP_T_LOGOUT won't be processed. We can fix this inconsistency by changing the strategy for posting receive buffers to: * Post all receive buffers after channel establishment. * After a receive buffer has been consumed and processed, post it again. A side effect is that the ib_post_recv() call is moved out of the SCSI command processing path. Since __srp_post_recv() is not called directly any more, get rid of it and move the code directly into srp_post_recv(). Also, move srp_post_recv() up in the file to avoid a forward declaration. Signed-off-by: Bart Van Assche Acked-by: David Dillow Signed-off-by: Roland Dreier commit 5abd9ccced7a726c817dd6b5b96bc933859138d1 Merge: d5fc1d5 57a5f3c Author: Linus Torvalds Date: Wed Aug 4 11:25:58 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6: ibft: Use IBFT_SIGN instead of open-coding the search string. ibft: convert iscsi_ibft module to iscsi boot lib ibft: separate ibft parsing from sysfs interface ibft: For UEFI machines actually do scan ACPI for iBFT. ibft: Update iBFT handling for v1.03 of the spec. commit 7a7008110b94dfaa90db4b0cc5b0c3f964c80506 Author: Bart Van Assche Date: Thu Jul 29 15:56:37 2010 +0000 IB/srp: Use print_hex_dump() Replace an open-coded dump of the receive buffer with a call to print_hex_dump(). Signed-off-by: Bart Van Assche Signed-off-by: Roland Dreier commit d5fc1d517543857ea117fc57f23b394aa9784f06 Merge: 694f690 c4799c7 Author: Linus Torvalds Date: Wed Aug 4 11:23:59 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: amd64_edac: Minor formatting fix amd64_edac: Fix operator precendence error edac, mc: Improve scrub rate handling amd64_edac: Correct scrub rate setting amd64_edac: Fix DCT base address selector amd64_edac: Remove polling mechanism x86, mce: Notify about corrected events too amd64_edac: Remove unneeded defines edac: Remove EDAC_DEBUG_VERBOSE amd64_edac: Sanitize syndrome extraction commit 694f690d27dadccc8cb9d90532e76593b61fe098 Author: David Howells Date: Wed Aug 4 16:59:14 2010 +0100 CRED: Fix RCU warning due to previous patch fixing __task_cred()'s checks Commit 8f92054e7ca1 ("CRED: Fix __task_cred()'s lockdep check and banner comment") fixed the lockdep checks on __task_cred(). This has shown up a place in the signalling code where a lock should be held - namely that check_kill_permission() requires its callers to hold the RCU lock. Fix group_send_sig_info() to get the RCU read lock around its call to check_kill_permission(). Without this patch, the following warning can occur: =================================================== [ INFO: suspicious rcu_dereference_check() usage. ] --------------------------------------------------- kernel/signal.c:660 invoked rcu_dereference_check() without protection! ... Reported-by: Tetsuo Handa Signed-off-by: David Howells Acked-by: Oleg Nesterov Signed-off-by: Linus Torvalds commit e75aa85892b2ee78c79edac720868cbef16e62eb Author: Tejun Heo Date: Wed Aug 4 17:59:39 2010 +0200 block_dev: always serialize exclusive open attempts bd_prepare_to_claim() incorrectly allowed multiple attempts for exclusive open to progress in parallel if the attempting holders are identical. This triggered BUG_ON() as reported in the following bug. https://bugzilla.kernel.org/show_bug.cgi?id=16393 __bd_abort_claiming() is used to finish claiming blocks and doesn't work if multiple openers are inside a claiming block. Allowing multiple parallel open attempts to continue doesn't gain anything as those are serialized down in the call chain anyway. Fix it by always allowing only single open attempt in a claiming block. This problem can easily be reproduced by adding a delay after bd_prepare_to_claim() and attempting to mount two partitions of a disk. stable: only applicable to v2.6.35 Signed-off-by: Tejun Heo Reported-by: Markus Trippelsdorf Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit d9b68e5e88248bb24fd4e455588bea1d56108fd6 Author: Kyle McMartin Date: Tue Aug 3 20:38:08 2010 -0400 parisc: pass through '\t' to early (iodc) console The firmware handles '\t' internally, so stop trying to emulate it (which, incidentally, had a bug in it.) Fixes a really weird hang at bootup in rcu_bootup_announce, which, as far as I can tell, is the first printk in the core kernel to use a tab as the first character. Cc: stable@kernel.org Signed-off-by: Kyle McMartin Signed-off-by: Linus Torvalds commit f46e9913faeebcb6bd29edf795f12b60acbff171 Merge: 8d91530 8d4b9d1 Author: Linus Torvalds Date: Wed Aug 4 11:14:36 2010 -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: PM / Runtime: Add runtime PM statistics (v3) PM / Runtime: Make runtime_status attribute not debug-only (v. 2) PM: Do not use dynamically allocated objects in pm_wakeup_event() PM / Suspend: Fix ordering of calls in suspend error paths PM / Hibernate: Fix snapshot error code path PM / Hibernate: Fix hibernation_platform_enter() pm_qos: Get rid of the allocation in pm_qos_add_request() pm_qos: Reimplement using plists plist: Add plist_last PM: Make it possible to avoid races between wakeup and system sleep PNPACPI: Add support for remote wakeup PM: describe kernel policy regarding wakeup defaults (v. 2) PM / Hibernate: Fix typos in comments in kernel/power/swap.c commit 8d91530c5fd7f0b1e8c4ddfea2905e55a178569b Merge: c145307 9d1f44e Author: Linus Torvalds Date: Wed Aug 4 11:13:36 2010 -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] Remove pointless printk from p4-clockmod. [CPUFREQ] Fix section mismatch for powernow_cpu_init in powernow-k7.c [CPUFREQ] Fix section mismatch for longhaul_cpu_init. [CPUFREQ] Fix section mismatch for longrun_cpu_init. [CPUFREQ] powernow-k8: Fix misleading variable naming [CPUFREQ] Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) [CPUFREQ] arch/x86/kernel/cpu/cpufreq: use for_each_pci_dev() [CPUFREQ] fix brace coding style issue. [CPUFREQ] x86 cpufreq: Make trace_power_frequency cpufreq driver independent [CPUFREQ] acpi-cpufreq: Fix CPU_ANY CPUFREQ_{PRE,POST}CHANGE notification [CPUFREQ] ondemand: don't synchronize sample rate unless multiple cpus present [CPUFREQ] unexport (un)lock_policy_rwsem* functions [CPUFREQ] ondemand: Refactor frequency increase code [CPUFREQ] powernow-k8: On load failure, remind the user to enable support in BIOS setup [CPUFREQ] powernow-k8: Limit Pstate transition latency check [CPUFREQ] Fix PCC driver error path [CPUFREQ] fix double freeing in error path of pcc-cpufreq [CPUFREQ] pcc driver should check for pcch method before calling _OSC [CPUFREQ] fix memory leak in cpufreq_add_dev [CPUFREQ] revert "[CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call (second call site)" Manually fix up non-data merge conflict introduced by new calling conventions for trace_power_start() in commit 6f4f2723d085 ("x86 cpufreq: Make trace_power_frequency cpufreq driver independent"), which didn't update the intel_idle native hardware cpuidle driver. commit a2ebf07ae53e65bd073f96877e4818f2e89271ae Author: Aleksey Senin Date: Sun Jul 4 13:55:57 2010 +0000 IB: Rename RAW_ETY to RAW_ETHERTYPE Change abbreviated IB_QPT_RAW_ETY to IB_QPT_RAW_ETHERTYPE to make the special QP type easier to understand. cf http://www.mail-archive.com/linux-rdma@vger.kernel.org/msg04530.html Signed-off-by: Aleksey Senin Signed-off-by: Roland Dreier commit c145307a110c14d09d5d92ff3c49dc0940e44b80 Merge: 5e83f6f 1a14703 Author: Linus Torvalds Date: Wed Aug 4 10:44:06 2010 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (88 commits) ips driver: make it less chatty intel_scu_ipc: fix size field for intel_scu_ipc_command intel_scu_ipc: return -EIO for error condition in busy_loop intel_scu_ipc: fix data packing of PMIC command on Moorestown Clean up command packing on MRST. zero the stack buffer before giving random garbage to the SCU Fix stack buffer size for IPC writev messages intel_scu_ipc: Use the new cpu identification function intel_scu_ipc: tidy up unused bits Remove indirect read write api support. intel_scu_ipc: Support Medfield processors intel_scu_ipc: detect CPU type automatically x86 plat: limit x86 platform driver menu to X86 acpi ec_sys: Be more cautious about ec write access acpi ec: Fix possible double io port registration hp-wmi: acpi_drivers.h is already included through acpi.h two lines below hp-wmi: Fix mixing up of and/or directive dell-laptop: make dell_laptop_i8042_filter() static asus-laptop: fix asus_input_init error path msi-wmi: make needlessly global symbols static ... commit 5e83f6fbdb020b70c0e413312801424d13c58d68 Merge: fe445c6 3444d7d Author: Linus Torvalds Date: Wed Aug 4 10:43:01 2010 -0700 Merge branch 'kvm-updates/2.6.36' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/2.6.36' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (198 commits) KVM: VMX: Fix host GDT.LIMIT corruption KVM: MMU: using __xchg_spte more smarter KVM: MMU: cleanup spte set and accssed/dirty tracking KVM: MMU: don't atomicly set spte if it's not present KVM: MMU: fix page dirty tracking lost while sync page KVM: MMU: fix broken page accessed tracking with ept enabled KVM: MMU: add missing reserved bits check in speculative path KVM: MMU: fix mmu notifier invalidate handler for huge spte KVM: x86 emulator: fix xchg instruction emulation KVM: x86: Call mask notifiers from pic KVM: x86: never re-execute instruction with enabled tdp KVM: Document KVM_GET_SUPPORTED_CPUID2 ioctl KVM: x86: emulator: inc/dec can have lock prefix KVM: MMU: Eliminate redundant temporaries in FNAME(fetch) KVM: MMU: Validate all gptes during fetch, not just those used for new pages KVM: MMU: Simplify spte fetch() function KVM: MMU: Add gpte_valid() helper KVM: MMU: Add validate_direct_spte() helper KVM: MMU: Add drop_large_spte() helper KVM: MMU: Use __set_spte to link shadow pages ... commit fe445c6e2cb62a566e1a89f8798de11459975710 Merge: f63b759 d01d075 Author: Linus Torvalds Date: Wed Aug 4 10:41:52 2010 -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: (57 commits) Input: adp5588-keypad - fix NULL dereference in adp5588_gpio_add() Input: cy8ctmg110 - capacitive touchscreen support Input: keyboard - also match braille-only keyboards Input: adp5588-keys - export unused GPIO pins Input: xpad - add product ID for Hori Fighting Stick EX2 Input: adxl34x - fix leak and use after free Input: samsung-keypad - Add samsung keypad driver Input: i8042 - reset keyboard controller wehen resuming from S2R Input: synaptics - set min/max for finger width Input: synaptics - only report width on hardware that supports it Input: evdev - signal that device is writable in evdev_poll() Input: mousedev - signal that device is writable in mousedev_poll() Input: change input handlers to use bool when possible Input: document the MT event slot protocol Input: introduce MT event slots Input: usbtouchscreen - implement reset_resume Input: usbtouchscreen - implement runtime power management Input: usbtouchscreen - implement basic suspend/resume Input: Add ATMEL QT602240 touchscreen driver Input: fix signedness warning in input_set_keycode() ... commit f63b759c44b0561c76a67894c734157df3313b42 Merge: 4a35cee 844a9e9 Author: Linus Torvalds Date: Wed Aug 4 10:38:08 2010 -0700 Merge branch 'v4l_for_2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_2.6.35' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (243 commits) V4L/DVB: sms: Convert IR support to use the Remote Controller core V4L/DVB: sms: properly initialize IR phys and IR name V4L/DVB: standardize names at rc-dib0700 tables V4L/DVB: smsusb: enable IR port for Hauppauge WinTV MiniStick V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5 V4L/DVB: dib0700: properly implement IR change_protocol V4L/DVB: dib0700: break keytable into NEC and RC-5 variants V4L/DVB: dib0700: avoid bad repeat V4L/DVB: Port dib0700 to rc-core V4L/DVB: Add a keymap file with dib0700 table V4L/DVB: dvb-usb: add support for rc-core mode V4L/DVB: dvb-usb: prepare drivers for using rc-core V4L/DVB: dvb-usb: get rid of struct dvb_usb_rc_key V4L/DVB: rj54n1cb0c: fix a comment in the driver V4L/DVB: V4L2: sh_vou: VOU does support the full PAL resolution too V4L/DVB: V4L2: sh_mobile_camera_ceu: add support for CSI2 V4L/DVB: V4L2: soc-camera: add a MIPI CSI-2 driver for SH-Mobile platforms V4L/DVB: V4L2: soc-camera: export soc-camera bus type for notifications V4L/DVB: V4L2: mediabus: add 12-bit Bayer and YUV420 pixel formats V4L/DVB: mediabus: fix ambiguous pixel code names ... commit 4a35cee066df1b1958e25e71595b3845d06b192e Merge: 7e68809 d7ef153 Author: Linus Torvalds Date: Wed Aug 4 10:36:39 2010 -0700 Merge branch 'stable/swiotlb-0.8.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6 * 'stable/swiotlb-0.8.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6: swiotlb: Make swiotlb bookkeeping functions visible in the header file. swiotlb: search and replace "int dir" with "enum dma_data_direction dir" swiotlb: Make internal bookkeeping functions have 'swiotlb_tbl' prefix. swiotlb: add the swiotlb initialization function with iotlb memory swiotlb: add swiotlb_tbl_map_single library function commit 7e6880951da86928c7f6cecf26dcb8e8d9f826da Merge: 3a09b1b 77c80e6 Author: Linus Torvalds Date: Wed Aug 4 10:28:39 2010 -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: (90 commits) AppArmor: fix build warnings for non-const use of get_task_cred selinux: convert the policy type_attr_map to flex_array AppArmor: Enable configuring and building of the AppArmor security module TOMOYO: Use pathname specified by policy rather than execve() AppArmor: update path_truncate method to latest version AppArmor: core policy routines AppArmor: policy routines for loading and unpacking policy AppArmor: mediation of non file objects AppArmor: LSM interface, and security module initialization AppArmor: Enable configuring and building of the AppArmor security module AppArmor: update Maintainer and Documentation AppArmor: functions for domain transitions AppArmor: file enforcement routines AppArmor: userspace interfaces AppArmor: dfa match engine AppArmor: contexts used in attaching policy to system objects AppArmor: basic auditing infrastructure. AppArmor: misc. base functions and defines TOMOYO: Update version to 2.3.0 TOMOYO: Fix quota check. ... commit 812d8672218e71fe3ea249f16ad990978dc3bb84 Author: Or Gerlitz Date: Tue Jul 20 12:00:20 2010 +0000 RDMA/nes: Fix two sparse warnings Simple changes to fix warnings: CHECK drivers/infiniband/hw/nes/nes_verbs.c nes_verbs.c:1944:45: warning: Using plain integer as NULL pointer nes_verbs.c:1944:48: warning: Using plain integer as NULL pointer CHECK drivers/infiniband/hw/nes/nes_cm.c nes_cm.c:2645:43: warning: mixing different enum types nes_cm.c:2645:43: int enum iw_cm_event_type versus nes_cm.c:2645:43: int enum iw_cm_event_status Signed-off-by: Or Gerlitz Acked-by: Chien Tung Signed-off-by: Roland Dreier commit 18199f573ee03e9265b3f5c45389742dae17607a Author: Or Gerlitz Date: Tue Jul 20 12:00:20 2010 +0000 RDMA/cxgb3: Make needlessly global iwch_l2t_send() static Signed-off-by: Or Gerlitz Acked-by: Steve Wise Signed-off-by: Roland Dreier commit 48d8fcebb7abf64843314672c1208b730be911bb Author: Or Gerlitz Date: Tue Jul 20 12:00:20 2010 +0000 IB/iser: Make needlessly global iser_alloc_rx_descriptors() static Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit a5f4a07820ebc60b21c984d893f48402c4b4a4a2 Author: Steve Wise Date: Fri Jul 23 19:12:43 2010 +0000 RDMA/cxgb4: Add timeouts when waiting for FW responses Don't hang a host thread if the FW stops responding. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 85d9865721c62a551547984e6cc8bd3ba732e294 Author: Jesper Nilsson Date: Wed Aug 4 18:30:01 2010 +0200 CRIS: Fix alignment problem for older ld CRISv10 uses a pretty old ld, which does not allow ALIGN(0), (It becomes . = 0;) so instead we align to 1 byte. Signed-off-by: Jesper Nilsson commit 2d495ebc55f0d5a7ac488716230d817d43818549 Author: Jesper Nilsson Date: Wed Aug 4 17:48:40 2010 +0200 CRIS: Always dump registers for segfaulting process. Signed-off-by: Jesper Nilsson commit b4e8a1813c7d65a7c28a3536da08444c21f2c37b Author: Jesper Nilsson Date: Wed Aug 4 17:42:43 2010 +0200 CRIS: Add config for pausing a seg-faulting process Put it on a wait queue, so we can attach gdb to the process to debug it instead of just killing it. Signed-off-by: Jesper Nilsson commit 028c1f6817c1ef49c61641dc1ae6c629e5bb32df Author: Jesper Nilsson Date: Wed Aug 4 17:23:24 2010 +0200 CRIS: Don't take faults while in_atomic Signed-off-by: Jesper Nilsson commit a90993c693ab7bd72bcb28b105e8dd4f0698f836 Author: Jesper Nilsson Date: Wed Aug 4 14:39:01 2010 +0200 CRIS: Fixup lookup for delay slot faults Signed-off-by: Jesper Nilsson commit 9354a55f9490aff8e5d4abedec3db78093772cae Merge: 38e14a7 ba58aebf Author: Tony Luck Date: Wed Aug 4 08:53:02 2010 -0700 Pull misc2-6-36 into release branch commit 38e14a7cf1f5ecc1fadf2d8814bca07095786551 Merge: 13a1e6e a95f9ac Author: Tony Luck Date: Wed Aug 4 08:52:50 2010 -0700 Pull percpu256K into release branch commit 13a1e6e1a5adedeafbd09b1f5fa8f0ef837d5d3e Merge: 1a041a2 8f72bad Author: Tony Luck Date: Wed Aug 4 08:52:27 2010 -0700 Pull reduce-config into release branch commit 9da79ab83ee33ddc1fdd0858fd3d70925a1bde99 Author: Srikar Dronamraju Date: Wed Jun 30 14:15:48 2010 +0530 tracing/kprobes: unregister_trace_probe needs to be called under mutex Comment in unregister_trace_probe() says probe_lock will be held when it gets called. However there is a case where it might called without the probe_lock being held. Also since we are traversing the probe_list and deleting an element from the probe_list, probe_lock should be held. This was first pointed in uprobes traceevent review by Frederic Weisbecker here. (http://lkml.org/lkml/2010/5/12/106) Cc: Ingo Molnar Cc: Masami Hiramatsu Acked-by: Masami Hiramatsu Acked-by: Steven Rostedt LKML-Reference: <20100630084548.GA10325@linux.vnet.ibm.com> Signed-off-by: Srikar Dronamraju Signed-off-by: Arnaldo Carvalho de Melo commit b83f920e179101a54721e5ab1d6c3edfb9d4bcbb Author: Srikar Dronamraju Date: Mon Aug 2 18:08:51 2010 +0530 perf: expose event__process function The event__process function is useful in processing /proc//maps. All of the functions that are called from event__process are defined in util/event.c. Though its defined in builtin-top.c, it could be reused for perf probe for uprobes. Hence moving it to util/event.c and exporting the function. LKML-Reference: <20100802123851.GD22812@linux.vnet.ibm.com> Signed-off-by: Srikar Dronamraju Signed-off-by: Arnaldo Carvalho de Melo commit b5a6325464b700c4bdac8799c495970516eed41c Author: Dave Martin Date: Tue Aug 3 12:48:35 2010 +0100 perf events: Fix mmap offset determination Fix buggy-looking code which unnecessarily adjusts the file offset fields read from /proc/*/maps. This may have gone unnoticed since the offset is usually 0 (and the logic in util/symbol.c may work incorrectly for other offset values). Commiter note: This fixes a bug introduced in 4af8b35, there is no need to shift pgoff twice, the show_map_vma routine in fs/proc/task_mmu.c already converts it from the number of pages to the size in bytes, and that is what appears in /proc/PID/map. Cc: Nicolas Pitre Cc: Will Deacon LKML-Reference: <1280836116-6654-2-git-send-email-dave.martin@linaro.org> Signed-off-by: Dave Martin Signed-off-by: Arnaldo Carvalho de Melo commit 12a81c8df13c60904febcafcf6b90ca1acb67122 Merge: 43d7383 729419f Author: Ingo Molnar Date: Wed Aug 4 16:25:47 2010 +0200 Merge branch 'core' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/core commit adb08edea0119f7a5484a9f6a385fbcecdf85a63 Author: Ville Tervo Date: Wed Aug 4 09:43:33 2010 +0300 Bluetooth: Check result code of L2CAP information response Check result code of L2CAP information response. Otherwise it would read invalid feature mask and access invalid memory. Signed-off-by: Ville Tervo Signed-off-by: Marcel Holtmann commit 6340650400525a9ca8d86b1b4501cc50670dce0d Author: Gustavo F. Padovan Date: Tue Aug 3 23:49:29 2010 -0300 Bluetooth: Don't send RFC for Basic Mode if only it is supported If the remote side doesn't support Enhanced Retransmission Mode neither Streaming Mode, we shall not send the RFC option. Some devices that only supports Basic Mode do not understanding the RFC option. This patch fixes the regression found with these devices. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 9f17d516416c88dfe18f4deee508fce763ddedb5 Merge: ada8c79 bd25f4d Author: Jiri Kosina Date: Wed Aug 4 15:31:24 2010 +0200 Merge branch 'bkl' into for-linus commit ada8c7973b65865cf0436b73898e32992860012a Merge: 35d03a0 7d876c0 0b3fa39 70c7c9c Author: Jiri Kosina Date: Wed Aug 4 15:31:13 2010 +0200 Merge branches 'magicmouse', 'roccat' and 'vec-pedal' into for-linus Conflicts: drivers/hid/hid-ids.h commit 35d03a0d9b22fdf7cba75cd41a6f0a039ba35cdd Merge: 9929ffe 7d3d42a Author: Jiri Kosina Date: Wed Aug 4 15:29:35 2010 +0200 Merge branch 'acrux' into for-linus Conflicts: drivers/hid/hid-ids.h commit 9929ffed889b4861b52ba648a44fa4add945c4d1 Merge: fc73697 d5e0a06 Author: Jiri Kosina Date: Wed Aug 4 15:27:54 2010 +0200 Merge branch 'upstream-fixes' into for-linus Conflicts: drivers/hid/hid-ids.h commit fc73697bd5bf4efe8b5b2b78ec09e00f967cd055 Merge: 1c5474a 8c8b01c Author: Jiri Kosina Date: Wed Aug 4 15:26:15 2010 +0200 Merge branch 'upstream' into for-linus Conflicts: drivers/hid/hid-ids.h commit 0ea6e61122196509af82cc4f36cbdaacbefb8227 Author: Justin P. Mattock Date: Fri Jul 23 20:51:24 2010 -0700 Documentation: update broken web addresses. Below you will find an updated version from the original series bunching all patches into one big patch updating broken web addresses that are located in Documentation/* Some of the addresses date as far far back as 1995 etc... so searching became a bit difficult, the best way to deal with these is to use web.archive.org to locate these addresses that are outdated. Now there are also some addresses pointing to .spec files some are located, but some(after searching on the companies site)where still no where to be found. In this case I just changed the address to the company site this way the users can contact the company and they can locate them for the users. Signed-off-by: Justin P. Mattock Signed-off-by: Thomas Weber Signed-off-by: Mike Frysinger Cc: Paulo Marques Cc: Randy Dunlap Cc: Michael Neuling Signed-off-by: Jiri Kosina commit d790d4d583aeaed9fc6f8a9f4d9f8ce6b1c15c7f Merge: 73b2c71 3a09b1b Author: Jiri Kosina Date: Wed Aug 4 15:14:38 2010 +0200 Merge branch 'master' into for-next commit d21872b3683ff37f73c68993749a6e6aeeaed265 Merge: 80690cc b3e6914 Author: Tony Lindgren Date: Wed Aug 4 16:10:38 2010 +0300 Merge branch 'v2.6.35-omap-mailbox-for-next' of git://gitorious.org/~doyu/lk/mainline into omap-for-linus Conflicts: arch/arm/mach-omap1/devices.c commit 73b2c7165b76b20eb1290e7efebc33cfd21db1ca Author: Uwe Kleine-König Date: Fri Jul 30 21:02:47 2010 +0200 fix comment typo "choosed" -> "chosen" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 17964e9d086cd4cb15b54a71ccddd8bbacb4c00c Author: Justin P. Mattock Date: Mon Aug 2 13:50:43 2010 -0700 hostap:hostap_hw.c Fix typo in comment The patch below fixes a typo in a comment. Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit c2e07b3a9ced33dd92597201be3931be8ea57ed6 Author: Stefan Weil Date: Tue Aug 3 19:44:52 2010 +0200 Fix spelling contorller -> controller in comments Cc: Jiri Kosina Cc: linux-kernel@vger.kernel.org Signed-off-by: Stefan Weil Signed-off-by: Jiri Kosina commit 0d8a374673c9bc62bc78a2d8fe64553a51542cb4 Author: Trond Myklebust Date: Sun Aug 1 20:14:55 2010 -0400 SUNRPC: Defer deleting the security context until gss_do_free_ctx() There is no need to delete the gss context separately from the rest of the security context information, and doing so gives rise to a an rcu_dereference_check() warning. Signed-off-by: Trond Myklebust commit c3ae62ae08bb0db3639d8c579e4ff0967d908199 Author: J. Bruce Fields Date: Tue Aug 3 17:22:20 2010 -0400 SUNRPC: prevent task_cleanup running on freed xprt We saw a report of a NULL dereference in xprt_autoclose: https://bugzilla.redhat.com/show_bug.cgi?id=611938 This appears to be the result of an xprt's task_cleanup running after the xprt is destroyed. Nothing in the current code appears to prevent that. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit d6a1ed08c6acea647b3f2aaebe0261f079e1be49 Author: Trond Myklebust Date: Sat Jul 31 14:29:08 2010 -0400 SUNRPC: Reduce asynchronous RPC task stack usage We should just farm out asynchronous RPC tasks immediately to rpciod... Signed-off-by: Trond Myklebust commit a17c2153d2e271b0cbacae9bed83b0eaa41db7e1 Author: Trond Myklebust Date: Sat Jul 31 14:29:08 2010 -0400 SUNRPC: Move the bound cred to struct rpc_rqst This will allow us to save the original generic cred in rpc_message, so that if we migrate from one server to another, we can generate a new bound cred without having to punt back to the NFS layer. Signed-off-by: Trond Myklebust commit 8572b8e2e3c5f3d990122348c4d2c64dad338611 Author: Trond Myklebust Date: Sat Jul 31 14:29:08 2010 -0400 SUNRPC: Clean up of rpc_bindcred() Signed-off-by: Trond Myklebust commit 58f9612c6ea858f532021a0ce42ec53cb0a493b3 Author: Trond Myklebust Date: Sat Jul 31 14:29:08 2010 -0400 SUNRPC: Move remaining RPC client related task initialisation into clnt.c Now that rpc_run_task() is the sole entry point for RPC calls, we can move the remaining rpc_client-related initialisation of struct rpc_task from sched.c into clnt.c. Also move rpc_killall_tasks() into the same file, since that too is relative to the rpc_clnt. Signed-off-by: Trond Myklebust commit d9b6cd94601e1d17273f93a326a135fbf487a918 Author: Trond Myklebust Date: Sat Jul 31 14:29:08 2010 -0400 SUNRPC: Ensure that rpc_exit() always wakes up a sleeping task Make rpc_exit() non-inline, and ensure that it always wakes up a task that has been queued. Kill off the now unused rpc_wake_up_task(). Signed-off-by: Trond Myklebust commit 241269bd0b580faae71575443d9ab38df7469126 Author: Trond Myklebust Date: Sat Jul 31 14:29:08 2010 -0400 SUNRPC: Make the credential cache hashtable size configurable This patch allows the user to configure the credential cache hashtable size using a new module parameter: auth_hashtable_size When set, this parameter will be rounded up to the nearest power of two, with a maximum allowed value of 1024 elements. Signed-off-by: Trond Myklebust commit 988664a0f6bbfc356e6ce55f7a87b8594050012f Author: Trond Myklebust Date: Sat Jul 31 14:29:07 2010 -0400 SUNRPC: Store the hashtable size in struct rpc_cred_cache Cleanup in preparation for allowing the user to determine the maximum hash table size. Signed-off-by: Trond Myklebust commit 5d8d9a4d9ff74c55901642b4e2ac5124830ddafe Author: Trond Myklebust Date: Sat Jul 31 14:29:07 2010 -0400 NFS: Ensure the AUTH_UNIX credcache is allocated dynamically Signed-off-by: Trond Myklebust commit b3e69146f43fa351aa3cdffe2e76ec42174da612 Author: Felipe Contreras Date: Fri Jun 11 15:51:49 2010 +0000 omap: mailbox: reorganize headers Remove kernel.h and module.h since they are not used correctly anyway. Also, remove device.h since it comes along with platform_device.h (always will I guess). Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit d742709ea4de70f4bf5e9b5171d37b92b5345ea3 Author: Felipe Contreras Date: Fri Jun 11 15:51:48 2010 +0000 omap: mailbox: standarize on 'omap-mailbox' omap{1,2}-mailbox are modules that provide the 'omap-mailbox' driver. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 14476bd9373ed76858eaeb038eff8790ba36030e Author: Felipe Contreras Date: Fri Jun 11 15:51:47 2010 +0000 omap: mailbox: only compile for configured archs Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 9c80c8cd740f802eed27ed1c1334262b205bb8f5 Author: Felipe Contreras Date: Fri Jun 11 15:51:46 2010 +0000 omap: mailbox: simplify omap_mbox_register() No need to dynamically register mailboxes one by one. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 898ee75623d5a151157e3f0dca12b0148051e2d6 Author: Felipe Contreras Date: Fri Jun 11 15:51:45 2010 +0000 omap: mailbox: reorganize registering It's more extensible this way. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 1f2c4dfd30edfe9125a00d76596ebb3adabd8a5a Author: Felipe Contreras Date: Fri Jun 11 15:51:44 2010 +0000 omap: mailbox: add IRQ names Will be useful to identify them later. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit fc9960b2823d581ab8a1541fc8b9f2748ee3e5f2 Author: Felipe Contreras Date: Fri Jun 11 15:51:43 2010 +0000 omap: mailbox: remove unecessary fields Nobody is using them. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 4b191eb9604a6eb6f411c47814707e0ff8027c44 Author: Felipe Contreras Date: Fri Jun 11 15:51:42 2010 +0000 omap: mailbox: don't export unecessary symbols Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 5f1af5c7013b8fde5b92cb4d356dfafa78284951 Author: Felipe Contreras Date: Fri Jun 11 15:51:41 2010 +0000 omap: mailbox: update omap1 probing Based on omap2 code. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit e37a769caa6bd4348986d863a99736b61adc5b4c Author: Felipe Contreras Date: Fri Jun 11 15:51:40 2010 +0000 omap: mailbox: use correct config for omap1 CONFIG_OMAP_DSP is not in mainline, CONFIG_OMAP_MBOX_FWK is. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 7b2729a15bd512180706340d9b1bf3e63fe009bf Author: Felipe Contreras Date: Fri Jun 11 15:51:39 2010 +0000 omap: mailbox: 2420 should be detected at run-time Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 07d65d8b91c2f514e32014ae4b02f58cbd35820c Author: Felipe Contreras Date: Fri Jun 11 15:51:38 2010 +0000 omap: mailbox: reorganize structures OMAP4 ones messed up the organization. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 909f9dc71e31e77b6a354b54141e7e9905281156 Author: Felipe Contreras Date: Fri Jun 11 15:51:37 2010 +0000 omap: mailbox: trivial cleanups And fix a few compilation warnings. Signed-off-by: Felipe Contreras Signed-off-by: Hiroshi DOYU commit 6b23398591a51943dbf08f30cfc2475a895cb1b4 Author: Hiroshi DOYU Date: Tue May 18 16:15:32 2010 +0300 omap mailbox: Set a device in logical mbox instance for traceability With this patch, you'll get the following sysfs directories. This structure implies that a single platform device, "omap2-mailbox" holds multiple logical mbox instances. This could be the base to add sysfs files for each logical mboxes. Then userland application can access a mbox through sysfs entries if necessary(ex: setting kfifo size dynamically) ~# tree -d -L 2 /sys/devices/platform/omap2-mailbox/ /sys/devices/platform/omap2-mailbox/ |-- driver -> ../../../bus/platform/drivers/omap2-mailbox |-- mbox | |-- dsp <- they are each instances of logical mailbox. | |-- ducati | |-- iva2 | |-- mbox01 | |-- mbox02 | |-- mbox03 | |-- ..... | `-- tesla |-- power `-- subsystem -> ../../../bus/platform This was wrongly dropped by: commit c7c158e57bce6220644f2bcd65d82e1468aa40ec Signed-off-by: Hiroshi DOYU commit b5bebe410204cf84337b54c372cceda2d6b27de6 Author: Ohad Ben-Cohen Date: Wed May 5 15:33:09 2010 +0000 omap: mailbox: convert block api to kfifo The underlying buffering implementation of mailbox is converted from block API to kfifo due to the simplicity and speed of kfifo. The default size of the kfifo buffer is set to 256 bytes. This value is configurable at compile time (via CONFIG_OMAP_MBOX_KFIFO_SIZE), and can be changed at runtime (via the mbox_kfifo_size module parameter). Signed-off-by: Ohad Ben-Cohen Signed-off-by: Hari Kanigeri Signed-off-by: Hiroshi DOYU commit 01072d8f4b9911047ef435a807cfd7223c94d94d Author: Ohad Ben-Cohen Date: Wed May 5 15:33:08 2010 +0000 omap: mailbox: remove (un)likely macros from cold paths Signed-off-by: Ohad Ben-Cohen Signed-off-by: Hiroshi DOYU commit f375325a040d03e2c620394ebc8bcaf0bdba01da Author: Ohad Ben-Cohen Date: Wed May 5 15:33:07 2010 +0000 omap: mailbox cleanup: split MODULE_AUTHOR line use multiple MODULE_AUTHOR lines for multiple authors Signed-off-by: Ohad Ben-Cohen Signed-off-by: Hiroshi DOYU commit 10d1a0028dc4549bd8e887641cc283f5f184f819 Author: Ohad Ben-Cohen Date: Wed May 5 15:33:06 2010 +0000 omap: mailbox: convert rwlocks to spinlock rwlocks are slower and have potential starvation issues therefore spinlocks are generally preferred. see also: http://lwn.net/Articles/364583/ Signed-off-by: Ohad Ben-Cohen Signed-off-by: Kanigeri Hari Signed-off-by: Hiroshi DOYU commit 1ea5d6d18bf1d528ae1081b9176d69c00bd51fa2 Author: Fernando Guzman Lugo Date: Mon Feb 8 13:35:40 2010 -0600 Mailbox: disable mailbox interrupt when request queue when blk_get_request fails to get the request it is returning without read the message from the mailbox fifo, then when it leaves the isr and interruption is trigger again and again and the workqueue which get elements from the request queue is never executed and the kernel is stuck and shows a softlockup message. Now the mailbox interrupt is disabled when request queue is full and enabled when it pop a elememt form the request queue. Signed-off-by: Fernando Guzman Lugo Signed-off-by: Hiroshi DOYU commit 72b917ef90084885ffcc5adb69095af02d2b6996 Author: Hiroshi DOYU Date: Thu Feb 18 00:48:55 2010 -0600 Mailbox: new mutext lock for h/w mailbox configuration mailbox startup and shutdown are being executed against a single H/W module, and a mailbox H/W module is totally __independent__ of the registration of logical mailboxes. So, an independent mutext should be used for startup and shutdown. Signed-off-by: Fernando Guzman Lugo Signed-off-by: Hiroshi DOYU commit 9caae4d87ca0087edd6c02efd674f13fe0419ee9 Author: Fernando Guzman Lugo Date: Wed Jan 27 20:04:02 2010 -0600 Mailbox: Check valid registered callback before calling This patch checks if the mailbox user has assinged a valid callback fuction before calling it. Signed-off-by: Fernando Guzman Lugo Signed-off-by: Hiroshi DOYU commit 0e828e8c2bab6d30649447eea68686413c92d340 Author: Fernando Guzman Lugo Date: Fri Feb 12 19:07:14 2010 -0600 Mailbox: flush pending deferred works before freeing blk queue flush pending deferred works before freeing blk_queue to prevent any attempt of access to blk_queue after it was freed Signed-off-by: Fernando Guzman Lugo Signed-off-by: Hiroshi DOYU commit ad6d962735eb48dde1851269bdeaa042fdb39172 Author: Fernando Guzman Lugo Date: Fri Feb 12 19:02:32 2010 -0600 Mailbox: free mailbox interrupt before freeing blk queue Free interrupt before freeing blk_queue to avoid any attempt of access to blk_queue after it was freed. Signed-off-by: Fernando Guzman Lugo Signed-off-by: Hiroshi DOYU commit 80690ccc41f01df6edfb6684006824d8edff189e Author: Vincent Sanders Date: Tue Aug 3 21:19:21 2010 +0100 Remove ARM default configurations which duplicate omap3_defconfig These configurations are no longer useful as the systems they support are covered by the generic omap3_defconfig Signed-off-by:Vincent Sanders Signed-off-by: Tony Lindgren commit 7c8a25b544c1659ad57de2394006fdd449325161 Author: Jesper Nilsson Date: Wed Aug 4 14:10:04 2010 +0200 CRIS: Discard exit.text and .data at runtime This allows us to handle references from __bug_table. Signed-off-by: Jesper Nilsson commit 7a996d3ab150bb0e1b71fa182f70199a703efdd1 Merge: 7cf3d73 9fe6206 Author: Michal Marek Date: Wed Aug 4 14:05:07 2010 +0200 Merge commit 'v2.6.35' into kbuild/kconfig Conflicts: scripts/kconfig/Makefile commit dcb313c23f440873a5a382e6672ad6a684193e86 Author: Jesper Nilsson Date: Wed Aug 4 14:01:28 2010 +0200 CRIS: Add cache aligned and read mostly data sections Signed-off-by: Jesper Nilsson commit 772320e84588dcbe1600ffb83e5f328f2209ac2a Merge: 1ce53ad 9fe6206 Author: Michal Marek Date: Wed Aug 4 13:59:13 2010 +0200 Merge commit 'v2.6.35' into kbuild/kbuild Conflicts: arch/powerpc/Makefile commit 58dcfb3a0f5eb0a882f7b696d4d2dc49b709ce5c Author: Anand Gadiyar Date: Wed Jul 14 13:38:49 2010 +0000 omap: 3630: disable TLL SAR on 3630 ES1 USBTLL Save-and-Restore is broken in 3630 ES1.0. Having it enabled could result in incorrect register restores as the OMAP exits off-mode. This could potentially result in unexpected wakeup events. (Refer 3630 errata ID i579) This is fixed in ES1.1. So disable it for ES1.0s. Signed-off-by: Anand Gadiyar Acked-by: Paul Walmsley Signed-off-by: Tony Lindgren commit b0a1a6ce0597662c06f970643da60b8ebb5cdd1c Author: Anand Gadiyar Date: Tue Aug 3 19:59:24 2010 +0000 OMAP3630: Add ES1.1 and ES1.2 detection Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2. Add CHIP_GE_OMAP3630ES1_1 to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions. Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance. Signed-off-by: Anand Gadiyar Cc: Nishanth Menon Cc: Manjunatha GK [tony@atomide.com: update to remove fallthrough handling] Signed-off-by: Tony Lindgren commit 49b368a6b3e803fe4f0a10c14f8fde3f20998f04 Author: Artem Bityutskiy Date: Mon Jul 12 13:38:07 2010 +0000 omap: device: improve errors handling Do not forget to check the 'platform_device_add_data()' error code in 'omap_device_build_ss()'. Signed-off-by: Artem Bityutskiy Acked-by: Nishanth Menon Acked-by: Paul Walmsley Signed-off-by: Tony Lindgren commit 7590d1defdc720a97a9e186f45f529c4ae1b40f7 Merge: 7e788b4 869fef4 Author: Tony Lindgren Date: Wed Aug 4 14:43:45 2010 +0300 Merge branch 'devel-map-io' into omap-for-linus commit 869fef41547db95df8523bf67845a21313709428 Author: Mike Rapoport Date: Wed Aug 4 14:43:18 2010 +0300 omap3: introduce omap3_map_io Most OMAP3-based boards use exactly the same code for .map_io method in the machine_desc structure. This patch introduces omap3_map_io and updates board-* files to use it as .map_io method. Signed-off-by: Mike Rapoport Signed-off-by: Tony Lindgren commit c573bcf96a427923d09de0b247691165d9a96023 Author: Sergio Aguirre Date: Wed Aug 4 14:43:18 2010 +0300 omap3: Unify omap2_set_globals_3[43,6x]x functions The only difference between them is the physical address of the uart4 port, which is only present in 36xx chips. We don't really need to care about keeping these 2 functions, since the decision to use uart4 is more cleanly done later when we do have access to omap_revision variable. Signed-off-by: Sergio Aguirre Acked-by: Kevin Hilman [tony@atomide.com: added comment for the uart4_phys] Signed-off-by: Tony Lindgren commit c1c8f558749cbf2a7ed16b6ae6e19a4238b6fa33 Author: Jesper Nilsson Date: Wed Aug 4 11:44:08 2010 +0200 CRIS: Return something from profile write Even if it doesn't matter, we should return something. Also, clean up some formatting. Signed-off-by: Jesper Nilsson commit 72e08db187cbbfca00583c28b64ae81a35f4a287 Author: Jesper Nilsson Date: Wed Aug 4 11:30:41 2010 +0200 CRIS: Add ARTPEC-3 and timestamps for sync-serial Signed-off-by: Jesper Nilsson commit 4f248d1cea12afd2d961509eb2ba19bd0939033f Author: Jesper Nilsson Date: Wed Aug 4 11:25:13 2010 +0200 CRIS: Better ARTPEC-3 support for gpio Add PWM support, correct comment for ARTPEC-3. Signed-off-by: Jesper Nilsson commit 97a644461d9f47a0b2085d79783017d45b575325 Author: Jesper Nilsson Date: Wed Aug 4 11:18:47 2010 +0200 CRIS: Add include guard Signed-off-by: Jesper Nilsson commit 0c07d3abc8d76120317c108062cc7aa81fbd96d6 Author: Jesper Nilsson Date: Wed Aug 4 11:03:57 2010 +0200 CRIS: Better handling of pinmux settings Depending on eth, eth_mido and geth fields in wr_hwprot, don't set corresponding pins on gpio port b to gpio mode. This avoids re-resetting the ethernet PHY should this already have been done. Signed-off-by: Jesper Nilsson commit 6f09963caf5ff7cb4b8de600caee3ff016e97139 Author: Jesper Nilsson Date: Wed Aug 4 10:49:17 2010 +0200 CRIS: New DMA defines for ARTPEC-3 Signed-off-by: Jesper Nilsson commit da2af0a771caa8f8cff9c7bfc979f0510eb0faea Author: Jesper Nilsson Date: Tue Aug 3 19:14:29 2010 +0200 CRIS: __do_strncpy_from_user: Don't read the byte beyond the nil Signed-off-by: Jesper Nilsson commit 2dc1c40c6e81ba406f2f6b00fe5eecb4c7cf1197 Author: Jesper Nilsson Date: Tue Aug 3 18:58:29 2010 +0200 CRIS: Pagetable for ARTPEC-3 Signed-off-by: Jesper Nilsson commit 32e7a8ba8d435d03752be818a82748c5e3eadc36 Author: Jesper Nilsson Date: Tue Aug 3 18:53:50 2010 +0200 CRIS: Machine dependent memmap.h Move the old one to mach-fs and replace with a new one that only include the correct one for the machine architecture. Signed-off-by: Jesper Nilsson commit 243ba2fa461a22e01e5905dd299babeaeeb418e2 Author: Jesper Nilsson Date: Tue Aug 3 18:50:06 2010 +0200 CRIS: Check if pointer is set before using it Signed-off-by: Jesper Nilsson commit a3af54ffa9fb0e3ce66904bd316f079cafad1bd5 Author: Jesper Nilsson Date: Tue Aug 3 18:40:39 2010 +0200 CRIS: Machine dependent dma.h Move the old one to mach-fs and replace with a new one that only include the correct one for the machine architecture. Signed-off-by: Jesper Nilsson commit 6fdf581e9df53ee4f8b46487a046fff7613a0fa0 Author: Jesper Nilsson Date: Tue Aug 3 18:29:07 2010 +0200 CRIS: Define __read_mostly for CRISv32 Signed-off-by: Jesper Nilsson commit d717809bcef50658092c8e18d7576475b6484a4c Author: Jesper Nilsson Date: Tue Aug 3 18:27:23 2010 +0200 CRIS: Discard .note.gnu.build-id section Signed-off-by: Jesper Nilsson commit 76fdf67bb5415a8e97bfecf81bf0c0d64bf7a552 Author: Jesper Nilsson Date: Tue Aug 3 18:12:47 2010 +0200 CRIS: Avoid compilation warning for puts Rename to aputs. Also, simplify code by moving some common code out to macros. Signed-off-by: Jesper Nilsson commit ac93f62179ecb82739ab7c76857c4ae44e0cb83f Author: Jesper Nilsson Date: Tue Aug 3 18:10:12 2010 +0200 CRIS: Add debug for assembler macros Signed-off-by: Jesper Nilsson commit 7ec280c52ca5aa1448cd16ae77dd44755413db2b Author: Jesper Nilsson Date: Tue Aug 3 18:01:06 2010 +0200 CRIS: Update for ARTPEC-3 Signed-off-by: Jesper Nilsson commit 98560bd83e73b5c0cf38e3d984892f46a405a172 Author: Jesper Nilsson Date: Tue Aug 3 17:34:28 2010 +0200 CRIS: Add more delays in DDR setup Also, make DDR latency configurable. Signed-off-by: Jesper Nilsson commit 2d0503d1a6816e920e5b827bbe4eea7370c8130e Author: Jesper Nilsson Date: Tue Aug 3 16:18:22 2010 +0200 CRIS: Add debug info for assembler code Signed-off-by: Jesper Nilsson commit 3a38125d3eda41972caee512d9823b964e0c16fc Author: Jesper Nilsson Date: Tue Aug 3 16:16:45 2010 +0200 CRIS: Add debug info for assembler code Signed-off-by: Jesper Nilsson commit 5f9ac92f3d21ed5a2afdc88c97ad7d9289be373c Author: Jesper Nilsson Date: Tue Aug 3 16:13:37 2010 +0200 CRIS: Add debug symbols for assembler code Signed-off-by: Jesper Nilsson commit e2ee9bb2253c50a40a659f5c6daf3da1e77d9308 Author: Jesper Nilsson Date: Tue Aug 3 15:59:26 2010 +0200 CRIS: Minor formatting fix in traps.c Signed-off-by: Jesper Nilsson commit 399233265c2ce805cf19a4f56f79836faad6a034 Author: Jesper Nilsson Date: Tue Aug 3 15:55:48 2010 +0200 CRIS: v32: Correct auto-restart of syscalls Register number was incorrect in syscalls that go via the restartblock (e.g, poll). Signed-off-by: Edgar Iglesias Signed-off-by: Jesper Nilsson commit e281a31e1c08e02d05c6fa1c11968c9369e4d809 Author: Jesper Nilsson Date: Tue Aug 3 14:59:22 2010 +0200 CRIS: More ARTPEC-3 support and i2c-boardinfo. Add standard i2d-devices. Signed-off-by: Jesper Nilsson commit c9cbf097b79b9bde32f4e5aaa0bbc16212be3016 Author: Jesper Nilsson Date: Tue Aug 3 14:49:12 2010 +0200 CRIS: Remove obsolete pinmux.c, now machine dependent. Signed-off-by: Jesper Nilsson commit ab43d14dab1c112b74aae1c2d684a19a26c34c43 Author: Jesper Nilsson Date: Tue Aug 3 14:45:55 2010 +0200 CRIS: kgdb: Fix compilation errors Paths were not correct and pack_hex_byte() takes two arguments. Signed-off-by: Jesper Nilsson commit e336285db2593bf443b53647d8f6d8006e471d89 Author: Jesper Nilsson Date: Tue Aug 3 14:17:20 2010 +0200 CRIS: v32: Correct path for intr_vect.h Signed-off-by: Jesper Nilsson commit e75a320edab4170f28f6cce22d4ea5c15f13ecfa Author: Jesper Nilsson Date: Tue Aug 3 13:52:45 2010 +0200 CRIS: v32: Better irq mapping code Signed-off-by: Jesper Nilsson commit 403a1c4f1380b4ec842df5f4aa86e86ba02904f3 Author: Jesper Nilsson Date: Mon Aug 2 18:23:39 2010 +0200 CRIS: v32: Correct address for romfs in the image Is after __bss_start, not __vmlinux_end Signed-off-by: Jesper Nilsson commit 345c52e079001354809c17f84e164827e99f2aaa Author: Jesper Nilsson Date: Mon Aug 2 18:22:09 2010 +0200 CRIS: Additional mmu settings for ARTPEC-3 Signed-off-by: Jesper Nilsson commit cd4f20110cf46ab7ca35ea32d601576b31abd9bb Author: Jesper Nilsson Date: Mon Aug 2 18:13:45 2010 +0200 CRIS: Faster syscall entry for CRISv32. Signed-off-by: Edgar Iglesias Signed-off-by: Jesper Nilsson commit 43f6cdd7693ddddb4db17a1ab591d506cb1fc110 Author: Jesper Nilsson Date: Mon Aug 2 18:09:56 2010 +0200 CRIS: Simple insn reschedule to avoid interlocks. Brings down the CPI from ~1.5 to ~1.1. Signed-off-by: Edgar Iglesias Signed-off-by: Jesper Nilsson commit a80a635f3d60e4aa61f96d22a122071cb061be93 Author: Jesper Nilsson Date: Mon Aug 2 18:05:17 2010 +0200 CRIS: Add debug for assembler functions Signed-off-by: Edgar Iglesias Signed-off-by: Jesper Nilsson commit b4973ae9dac3397499f5576c591d5c5bf51c68c6 Author: Jesper Nilsson Date: Mon Aug 2 17:48:31 2010 +0200 CRIS: Correct address of the romfs in boot image The romfs should land after __init_end Signed-off-by: Jesper Nilsson commit d77eab8cb18dc4b8adfa82088e95b48c654c66b9 Author: Jesper Nilsson Date: Mon Aug 2 15:19:17 2010 +0200 CRIS: Fasttimer: Remove obsolete ifdef Signed-off-by: Jesper Nilsson commit 5866d7ef9553c0107576dc1bc1d5c6acb68e8f87 Author: Jesper Nilsson Date: Mon Aug 2 15:09:22 2010 +0200 CRIS: Better link to rs485 in help Signed-off-by: Jesper Nilsson commit fcb31dbb36bfaa96ceb64ed0924a828013429840 Author: Jesper Nilsson Date: Mon Aug 2 15:04:51 2010 +0200 CRIS: Remove CVS tag. Signed-off-by: Jesper Nilsson commit 0e0aff21261aba52ee37b59fcf48202230fc7377 Author: Jesper Nilsson Date: Mon Aug 2 13:46:12 2010 +0200 CRIS: v10: remove all BKL usage We don't need to take the BKL here. Also fixes compile error after last commit (smp_lock.h was not included) Signed-off-by: Jesper Nilsson commit 60362158e2419b20cc04d43a6ffa60c1845775dc Author: Jesper Nilsson Date: Mon Aug 2 13:17:05 2010 +0200 CRIS: gpio: don't call copy_to_user()/copy_from_user() while holding spinlocks copy_to_user()/copy_from_user() must not be used with spinlocks held. Move locks inside each case so we have better control of when the locks are held. Also, since we use spinlocks, we don't need to hold the BKL, so remove it. Reported-by: Kulikov Vasiliy Signed-off-by: Jesper Nilsson commit 16bc0fe5ce84df89c8e802be210af88721d4cc4f Author: Joe Perches Date: Mon Jul 12 22:49:53 2010 +0200 arch/cris: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: Jesper Nilsson commit 096b7bdc8663c16417ff5fbec42622302e6886e1 Author: Jesper Nilsson Date: Fri Jul 30 19:15:24 2010 +0200 cris: autoconvert trivial BKL users to private mutex All these files use the big kernel lock in a trivial way to serialize their private file operations, typically resulting from an earlier semi-automatic pushdown from VFS. None of these drivers appears to want to lock against other code, and they all use the BKL as the top-level lock in their file operations, meaning that there is no lock-order inversion problem. Consequently, we can remove the BKL completely, replacing it with a per-file mutex in every case. Using a scripted approach means we can avoid typos. file=$1 name=$2 if grep -q lock_kernel ${file} ; then if grep -q 'include.*linux.mutex.h' ${file} ; then sed -i '/include.*/d' ${file} else sed -i 's/include.*.*$/include /g' ${file} fi sed -i ${file} \ -e "/^#include.*linux.mutex.h/,$ { 1,/^\(static\|int\|long\)/ { /^\(static\|int\|long\)/istatic DEFINE_MUTEX(${name}_mutex); } }" \ -e "s/\(un\)*lock_kernel\>[ ]*()/mutex_\1lock(\&${name}_mutex)/g" \ -e '/[ ]*cycle_kernel_lock();/d' else sed -i -e '/include.*\/d' ${file} \ -e '/cycle_kernel_lock()/d' fi Signed-off-by: Arnd Bergmann Signed-off-by: Jesper Nilsson commit 90276a1a64e2ab732e26e3ac68febbf3ad04c517 Author: Jesper Nilsson Date: Fri Jul 30 19:04:37 2010 +0200 cris: Pushdown the bkl from ioctl From: Frederic Weisbecker Pushdown the bkl to the remaining drivers using the deprecated .ioctl. Signed-off-by: Frederic Weisbecker Signed-off-by: Arnd Bergmann Signed-off-by: Jesper Nilsson Cc: Thomas Gleixner Cc: John Kacur commit 3648bdf79f7e020c3a28c9c842111879d8e506c0 Author: Jesper Nilsson Date: Fri Jul 30 18:34:16 2010 +0200 CRIS: invoke oom-killer from page fault As explained in commit 1c0fe6e3bd, we want to call the architecture independent oom killer when getting an unexplained OOM from handle_mm_fault, rather than simply killing current. Signed-off-by: Nick Piggin Acked-by: David Rientjes Signed-off-by: Jesper Nilsson Signed-off-by: Mikael Starvik commit 60dbd6633178a8625ed71329da0167c6d50c559c Author: Jesper Nilsson Date: Fri Jul 30 17:33:07 2010 +0200 CRIS: GENERIC_TIME fixes GENERIC_TIME was not functional for CRIS, giving random backward time jumps. For CRISv32 implement a new clocksource using the free running counter and ditch the arch_gettimeoffset. The random time jumps still existed, but turned out to be the write_seqlock which was missing around our do_timer() call. So switch over to GENERIC_TIME using the clocksource for CRISv32. CRISv10 doesn't have the free running counter needed for the clocksource trick, but we can still use GENERIC_TIME with arch_gettimeoffset. Unfortunately, there were problems in using the prescaler register to timer0 for the gettimeoffset calculation, so it is now ignored, making our resolution worse by the tune of 40usec (0.4%) worst case. At the same time, clean up some formatting and use NSEC_PER_SEC instead of 1000000000. Signed-off-by: Jesper Nilsson commit 26bfeea38a4a5daf52c8f01c986ca8680bf1f6a1 Author: Latchesar Ionkov Date: Mon Jul 19 15:40:03 2010 -0500 9p: Pass the correct end of buffer to p9stat_read Pass the correct end of the buffer to p9stat_read. Signed-off-by: Latchesar Ionkov Signed-off-by: Eric Van Hensbergen commit 7e788b4289bb025a96e327c604cb2db92e17108f Author: Jason Wang Date: Tue Aug 3 11:44:18 2010 +0800 omap: Fix DEBUG_LL uart to access phys addr when MMU isn't enable Now we use a memory address to store the debug port info, So we need to read/write this address when we choose DEBUG_LL. When MMU isn't enable(I.E. the begining part of init stage of the linux kernel boot), we need to access physical address instead of virtual address, otherwise the kernel will crash. Signed-off-by: Jason Wang Signed-off-by: Tony Lindgren commit c4799c7570475352c8c5de82ae938f7a02f206fa Author: Borislav Petkov Date: Tue Aug 3 17:25:18 2010 +0200 amd64_edac: Minor formatting fix EDAC MC3: CE page 0xc32281, offset 0x8a0, grain 0, syndrome 0x1, row 2, channel 1, label "": amd64_edac EDAC MC3: CE - no information available: amd64_edacError Overflow Add the missing space before "Error Overflow" on the second line. Signed-off-by: Borislav Petkov commit 962b70a1eb22c467b95756a290c694e73da17f41 Author: Borislav Petkov Date: Tue Aug 3 16:51:28 2010 +0200 amd64_edac: Fix operator precendence error The bitwise AND is of higher precedence, make that explicit. Cc: # 34.x Signed-off-by: Borislav Petkov commit 0fcb80818bc3ade5befd409051089f710adcf7b0 Author: Patrick Pannuto Date: Mon Aug 2 15:01:05 2010 -0700 Documentation: Add timers/timers-howto.txt This file seeks to explain the nuances in various delays; many driver writers are not necessarily familiar with the various kernel timers, their shortfalls, and quirks. When faced with ndelay, udelay, mdelay, usleep_range, msleep, and msleep_interrubtible the question "How do I just wait 1 ms for my hardware to latch?" has the non-intuitive "best" answer: usleep_range(1000,1500) This patch is followed by a series of checkpatch additions that seek to help kernel hackers pick the best delay. Signed-off-by: Patrick Pannuto Cc: apw@canonical.com Cc: corbet@lwn.net Cc: arjan@linux.intel.com Cc: Randy Dunlap Cc: Andrew Morton LKML-Reference: <1280786467-26999-3-git-send-email-ppannuto@codeaurora.org> Signed-off-by: Thomas Gleixner commit 5e7f5a178bba45c5aca3448fddecabd4e28f1f6b Author: Patrick Pannuto Date: Mon Aug 2 15:01:04 2010 -0700 timer: Added usleep_range timer usleep_range is a finer precision implementations of msleep and is designed to be a drop-in replacement for udelay where a precise sleep / busy-wait is unnecessary. Since an easy interface to hrtimers could lead to an undesired proliferation of interrupts, we provide only a "range" API, forcing the caller to think about an acceptable tolerance on both ends and hopefully avoiding introducing another interrupt. INTRO As discussed here ( http://lkml.org/lkml/2007/8/3/250 ), msleep(1) is not precise enough for many drivers (yes, sleep precision is an unfair notion, but consistently sleeping for ~an order of magnitude greater than requested is worth fixing). This patch adds a usleep API so that udelay does not have to be used. Obviously not every udelay can be replaced (those in atomic contexts or being used for simple bitbanging come to mind), but there are many, many examples of mydriver_write(...) /* Wait for hardware to latch */ udelay(100) in various drivers where a busy-wait loop is neither beneficial nor necessary, but msleep simply does not provide enough precision and people are using a busy-wait loop instead. CONCERNS FROM THE RFC Why is udelay a problem / necessary? Most callers of udelay are in device/ driver initialization code, which is serial... As I see it, there is only benefit to sleeping over a delay; the notion of "refactoring" areas that use udelay was presented, but I see usleep as the refactoring. Consider i2c, if the bus is busy, you need to wait a bit (say 100us) before trying again, your current options are: * udelay(100) * msleep(1) <-- As noted above, actually as high as ~20ms on some platforms, so not really an option * Manually set up an hrtimer to try again in 100us (which is what usleep does anyway...) People choose the udelay route because it is EASY; we need to provide a better easy route. Device / driver / boot code is *currently* serial, but every few months someone makes noise about parallelizing boot, and IMHO, a little forward-thinking now is one less thing to worry about if/when that ever happens udelay's could be preempted Sure, but if udelay plans on looping 1000 times, and it gets preempted on loop 200, whenever it's scheduled again, it is going to do the next 800 loops. Is the interruptible case needed? Probably not, but I see usleep as a very logical parallel to msleep, so it made sense to include the "full" API. Processors are getting faster (albeit not as quickly as they are becoming more parallel), so if someone wanted to be interruptible for a few usecs, why not let them? If this is a contentious point, I'm happy to remove it. OTHER THOUGHTS I believe there is also value in exposing the usleep_range option; it gives the scheduler a lot more flexibility and allows the programmer to express his intent much more clearly; it's something I would hope future driver writers will take advantage of. To get the results in the NUMBERS section below, I literally s/udelay/usleep the kernel tree; I had to go in and undo the changes to the USB drivers, but everything else booted successfully; I find that extremely telling in and of itself -- many people are using a delay API where a sleep will suit them just fine. SOME ATTEMPTS AT NUMBERS It turns out that calculating quantifiable benefit on this is challenging, so instead I will simply present the current state of things, and I hope this to be sufficient: How many udelay calls are there in 2.6.35-rc5? udealy(ARG) >= | COUNT 1000 | 319 500 | 414 100 | 1146 20 | 1832 I am working on Android, so that is my focus for this. The following table is a modified usleep that simply printk's the amount of time requested to sleep; these tests were run on a kernel with udelay >= 20 --> usleep "boot" is power-on to lock screen "power collapse" is when the power button is pushed and the device suspends "resume" is when the power button is pushed and the lock screen is displayed (no touchscreen events or anything, just turning on the display) "use device" is from the unlock swipe to clicking around a bit; there is no sd card in this phone, so fail loading music, video, camera ACTION | TOTAL NUMBER OF USLEEP CALLS | NET TIME (us) boot | 22 | 1250 power-collapse | 9 | 1200 resume | 5 | 500 use device | 59 | 7700 The most interesting category to me is the "use device" field; 7700us of busy-wait time that could be put towards better responsiveness, or at the least less power usage. Signed-off-by: Patrick Pannuto Cc: apw@canonical.com Cc: corbet@lwn.net Cc: arjan@linux.intel.com Cc: Randy Dunlap Cc: Andrew Morton Signed-off-by: Thomas Gleixner commit e1b004c3ef9c59db5f013528628b51c8653155ec Author: Thomas Gleixner Date: Wed Aug 4 10:53:00 2010 +0200 Revert "timer: Added usleep[_range] timer" This reverts commit 22b8f15c2f7130bb0386f548428df2ffd4e81903 to merge an advanced version. Signed-off-by: Thomas Gleixner commit 2d5973cb5ac5d04662f86e19a06a4c52fa4c4ae3 Author: Michal Simek Date: Tue Aug 3 11:45:08 2010 +0200 microblaze: Add KGDB support Kgdb uses brki r16, 0x18 instruction to call low level _debug_exception function which save current state to pt_regs and call microblaze_kgdb_break function. _debug_exception should be called only from the kernel space. User space calling is not supported because user application debugging uses different handling. pt_regs_to_gdb_regs loads additional special registers which can't be changed * Enable KGDB in Kconfig * Remove ancient not-tested KGDB support * Remove ancient _debug_exception code from entry.S Only MMU KGDB support is supported. Signed-off-by: Michal Simek CC: Jason Wessel CC: John Williams CC: Edgar E. Iglesias CC: linux-kernel@vger.kernel.org Acked-by: Jason Wessel commit 751f1605e03533a6279ccf456e938e9595c7d888 Author: Michal Simek Date: Tue Aug 3 11:26:51 2010 +0200 microblaze: Support brki rX, 0x18 for user application debugging This is the first patch which add support for user application debugging through brki rX, 0x18 vector. This patch has side effect which also remove security issue to use brki rX, 0x18 to freeze kernel. Support for old gdb support via priviledged exception (brk r0, r0) is still there. It will be remove in future. Signed-off-by: Michal Simek commit 958063e67b775bc1be85eb3761c85202597a87aa Author: Michal Simek Date: Tue Jun 22 21:18:57 2010 +0200 microblaze: Remove nop after MSRCLR/SET, MTS, MFS instructions We need to save instruction and the latest Microblaze shouldn't have any problem with it. Signed-off-by: Michal Simek commit 0e41c90908881a1b8205c66a66becec7d8d4eb4a Author: Michal Simek Date: Tue Jun 22 21:11:49 2010 +0200 microblaze: Simplify syscall rutine Syscall can be called only from userspace that's why we don't need to check which space kernel come from. Kernel syscall calling is not check and shouldn't come throught this part of code. Signed-off-by: Michal Simek commit 0a6b08fda6e3229713e779e30028598c067e904d Author: Michal Simek Date: Tue Jun 22 20:49:46 2010 +0200 microblaze: Move PT_MODE saving to delay slot We can save one more instruction if PT_MODE is saved in delay slot Signed-off-by: Michal Simek commit 80c5ff6b9b2dd9a2e99d3d6f74df5e6f888d43e9 Author: Michal Simek Date: Tue Jun 22 18:50:31 2010 +0200 microblaze: Fix _interrupt function Save instructions by using delay slot and clear UMS only if kernel comes from user space. Signed-off-by: Michal Simek commit 25f6e59657211b3f7d912520c53fb7d98ebe960b Author: Michal Simek Date: Tue Jun 22 18:29:05 2010 +0200 microblaze: Fix _user_exception function Saving some instructions. Clear VMS bit if kernel comes from kernel space. Signed-off-by: Michal Simek commit 287503fabd9910cc77266142c7c8acbdb8efbf6b Author: Michal Simek Date: Tue Jun 22 18:16:07 2010 +0200 microblaze: Put together addik instructions Saving instructions by adding 2/3 addik instructions to one. Signed-off-by: Michal Simek commit 9814cc11e559d982874f6ebac2bc795e33cb0244 Author: Michal Simek Date: Tue Jun 22 18:09:29 2010 +0200 microblaze: Use delay slot in syscall macros Saving instruction with delay slot usage. Signed-off-by: Michal Simek commit da23355280d106b1160a0a07028838097b639f0b Author: Michal Simek Date: Tue Jun 22 18:02:06 2010 +0200 microblaze: Save kernel mode in delay slot This change save one instruction if kernel comes from kernel space. Signed-off-by: Michal Simek commit e7741075b37e2be6693def1ff98487e3aef67874 Author: Michal Simek Date: Tue Jun 22 18:00:35 2010 +0200 microblaze: Do not mix register saving and mode setting Separate reg saving and mode setting. Signed-off-by: Michal Simek commit e5d2af2b96696420865a1644c94a0e79e34c6035 Author: Michal Simek Date: Tue Jun 22 17:58:26 2010 +0200 microblaze: Move SAVE_STATE upward SAVE_STATE macro could be used by other rutines too. Signed-off-by: Michal Simek commit 66f7de8634b39fb685556419fc12522e96990d32 Author: Michal Simek Date: Tue Jun 22 17:52:47 2010 +0200 microblaze: entry.S: Macro optimization We are not working with values from MSR that's why we can discard it and use r11 for different purpose without saving/restoring. Signed-off-by: Michal Simek commit c318d483b3d9cf68d791b4024760cb171dae1215 Author: Michal Simek Date: Tue Jun 22 16:25:31 2010 +0200 microblaze: Optimize hw exception rutine Remove set_vms because UMS is cleared and VMS is already setup. Optimize function calling which save one additional instruction. Signed-off-by: Michal Simek commit b318067e2c946a560035faf47e24a20e50696cce Author: Michal Simek Date: Tue Jun 22 17:46:27 2010 +0200 microblaze: Implement clear_ums macro and fix SAVE_STATE macro VMS is always setup because VM mode was before exception/syscall/interrupt. Kernel continues in kernel mode that's why we have to clear UMS bit if kernel comes from user space. Signed-off-by: Michal Simek commit 77f6d226050e2d8f046e268a9f84ec834172f0de Author: Michal Simek Date: Tue Jun 22 16:39:56 2010 +0200 microblaze: Remove additional setup for kernel_mode PT_MODE stores information if kernel comes from user or kernel space. If come from user space, PT_MODE contains 0. If come from kernel store, PT_MODE contains non zero value. We don't need to save value 1. I am using r1 register which contains non zero value. This change save one additional instruction. Signed-off-by: Michal Simek commit 06a54604a31f06715a393a4fdd099b03611cce10 Author: Michal Simek Date: Tue Jun 22 16:22:01 2010 +0200 microblaze: Optimize SAVE_STATE macro SAVE_STATE macro could be used for user_exception or interrupt functions. Signed-off-by: Michal Simek commit 40eb0dc456dc3dd3f01da94e1f36085e956f20cc Author: Michal Simek Date: Tue Jun 22 16:04:00 2010 +0200 microblaze: Remove additional loading We don't need to save r0 to PT_R0. It could be additional operation. Signed-off-by: Michal Simek commit 653e447e113a19fcb54d454b9f5a3bff9979729f Author: Michal Simek Date: Tue Jun 22 14:51:45 2010 +0200 microblaze: Completely remove working with R11 register We don't need to save R11 register. There is easy way to use only R1 which is saved and restore later. Signed-off-by: Michal Simek commit 0388107dd50eaa52c028312a7cc20177cb95a943 Author: Michal Simek Date: Tue Jun 22 15:32:52 2010 +0200 microblaze: Do not setup BIP in _debug_exception BIP is already setup. Signed-off-by: Michal Simek commit 06b2864038517905752bdacd95f1f265ef780f3b Author: Michal Simek Date: Tue Jun 22 15:25:24 2010 +0200 microblaze: Simplify _debug_exception function Keep together all arguments for send_sig function. Move returning address to delay slot which is executed. Remove additional send_sig loading. I am using IMM part of rtbd instruction with r0. old solution: addik r11, r0, send_sig rtbd r11, 0 nop new solution: rtbd r0, send_sig nop There is one instruction saving. Signed-off-by: Michal Simek commit 8b110d157c82f3818fc578b633f0cf7ace9efc22 Author: Michal Simek Date: Thu Jun 17 16:03:05 2010 +0200 microblaze: Optimize SAVE_STATE macro It is necessary to setup BIP and EE and clear EIP only for unaligned exception handler. The rest of hw exception handlers don't require it. HW exception occured and we are not in virtual mode. That's why we can do operations protected by EIP. Interrupt, next hw exception or syscall can't occur. EIP is cleared by rted. This change speedup page_fault hw exception handler which is critical path. There is also necessary to save R11 content before flag setup for unaligned exception. Signed-off-by: Michal Simek commit b9ea77e2d37013a4e66c9dad2e629998ff300608 Author: Michal Simek Date: Wed Jul 28 12:40:02 2010 +0200 microblaze: trivial: Use la insted of addik la is translated to addik by toolchain. Signed-off-by: Michal Simek commit be304350ddba60813f8703c481380752ebfd93f9 Author: Michal Simek Date: Tue Jun 22 14:15:23 2010 +0200 microblaze: remove enable_irq from SAVE_STATE macro SAVE_STATE macro is used in hw exceptions high level handling functions. Hw exception doesn't disable IRQ that's why we don't need to reenable it. Signed-off-by: Michal Simek commit 63708f635c1702ac512626d7afe558de2b18554a Author: Michal Simek Date: Tue Jun 22 14:13:09 2010 +0200 microblaze: Move stack backup to SAVE_STATE macro Remove code duplicity and move it to SAVE_STATE macro. There is no impact on performance. Signed-off-by: Michal Simek commit 96014cc39bffe04429bcd143aa7bbde81f659ee4 Author: Michal Simek Date: Tue Jun 22 14:05:43 2010 +0200 microblaze: Move BIP setup to the end of ret_from_trap/ret_from_exc We don't need to protect by BIP whole ret_from_trap/ret_from_exc code. Only restoring from user/hw exception should be covered. If BIP is setup, IRQ can't occur. Signed-off-by: Michal Simek commit 5c0d72b1b35fd0dad7dd70a114df068eadcc1b16 Author: Michal Simek Date: Tue Jun 22 14:00:12 2010 +0200 microblaze: Remove PER_CPU(KM) variable There is a way howto remove Kernel Mode variable. It is easier to parse UMS bit in MSR to find out if I come from kernel or user space. Loading MSR content should be in one cycle and loading PER_CPU variable depends on memory state. Signed-off-by: Michal Simek commit 3fbd93e58e0f3589720798b7c8992a25e4a2d3a4 Author: Michal Simek Date: Tue Jun 22 13:51:50 2010 +0200 microblaze: Optimize clear_vms_ums macro We can save two instruction when MSR_VMS and MSR_UMS are setup in one instruction. Signed-off-by: Michal Simek commit 36f6095419b100479bd3ffabcafe4dac8d918734 Author: Michal Simek Date: Tue Jun 22 13:27:43 2010 +0200 microblaze: Save and restore r3/r4 in SAVE/RESTORE_REGS macros Save and restore R3/R4 registers in macros. This change help to cleanup entry.S. In ret_from_trap function we are saving returning value from syscall to pt_regs on stack that's why we don't need to save and restore these values before kernel functions (schedule, do_signal). Signed-off-by: Michal Simek commit a4a94dbf20fa2e119cf89615ef21230f9b2f8913 Author: Michal Simek Date: Tue Jun 22 13:15:53 2010 +0200 microblaze: Fix VM_ON and VM_OFF macros Jump behind macro. We don't want to execute nop instruction again. Signed-off-by: Michal Simek commit ca28b510163a55df6260652056bfc60c4cf8aca1 Author: Michal Simek Date: Wed Jul 28 09:29:11 2010 +0200 microblaze: Do not use _start in vmlinux _start symbol stores physical address where kernel is. Gdb uses this symbol for their purpose that's why we have to rename it. Signed-off-by: Michal Simek commit 61b403af8b0af4225802da60406045faf0e5d612 Author: Michal Simek Date: Wed Jul 28 07:58:06 2010 +0200 microblaze: Cleanup boot/Makefile Remove spaces and use tabs instead. Signed-off-by: Michal Simek commit aee04d76d2bfd3539ae7e06c15ee52317db78499 Author: Michal Simek Date: Tue Jul 27 12:53:15 2010 +0200 microblaze: Fix number of pvr regs Microblaze has only 11 pvr regs according manual. Signed-off-by: Michal Simek commit c8f77436d11190d0d9379f4fb2c6f22a155c8d8e Author: Michal Simek Date: Thu Jun 10 16:04:05 2010 +0200 microblaze: Decrease time shifting values Lower shifting values ensure that shifted 32bit counter value doesn't exceed 64bit cycle variable too fast. Signed-off-by: Michal Simek commit 615748aefa61066e8e5ec9d27521f37037b4c1a7 Author: Michal Simek Date: Mon Jul 19 09:37:16 2010 +0200 microblaze: Enable early printk only for uartlite Microblaze has support for early printk. The second serial driver (uart16550/8250) has no microblaze support for early printk. Signed-off-by: Michal Simek commit 75842abfd82d4b2ef9bd2ae632ca911e7559a194 Author: FUJITA Tomonori Date: Mon Jul 12 15:37:20 2010 +0900 microblaze: remove unused HAVE_ARCH_PCI_SET_DMA_MASK HAVE_ARCH_PCI_SET_DMA_MASK was removed in 2.6.34 (no architecture has the own implementation of pci_set_dma_mask). Signed-off-by: FUJITA Tomonori Signed-off-by: Michal Simek commit d0f140e03e38dc553a0bb61611c15fcede671f23 Author: Michal Simek Date: Thu Jun 10 16:02:32 2010 +0200 microblaze: Do not trace cpu_relax function IRQsoff tracer requires to protect cpu_idle function to get correct timing report. Signed-off-by: Michal Simek commit 6f34b08f58f5097bb408e188e09cda75e61ee513 Author: Michal Simek Date: Fri Apr 16 09:50:13 2010 +0200 microblaze: Improve ftrace time measuring I had to comment sched_clock generic function because of broken toolchain. It is fine grain timing. Signed-off-by: Michal Simek commit ce3266c047389443d5f433d605c769e878cbe46e Author: Steven J. Magnani Date: Tue Apr 27 12:37:54 2010 -0500 microblaze: Add stack unwinder Implement intelligent backtracing by searching for stack frame creation, and emitting only return addresses. Use print_hex_dump() to display the entire binary kernel stack. Limitation: MMU kernels are not currently able to trace beyond a system trap (interrupt, syscall, etc.). It is the intent of this patch to provide infrastructure that can be extended to add this capability later. Changes from V1: * Removed checks in find_frame_creation() that prevented location of the frame creation instruction in heavily optimized code * Various formatting/commenting/file location tweaks per review comments * Dropped Kconfig option to enable STACKTRACE as something logically separate Signed-off-by: Steven J. Magnani commit ba9c4f88d747836bf35c3eee36aa18d2e164f493 Author: Steven J. Magnani Date: Thu May 13 10:48:27 2010 -0500 microblaze: Allow PAGE_SIZE configuration Allow developer to configure memory page size at compile time. Larger pages can improve performance on some workloads. Based on PowerPC code. Signed-off-by: Steven J. Magnani Signed-off-by: Michal Simek commit 0d9ec762af297f1ef38114f9498322d994063802 Author: Michal Simek Date: Tue May 25 13:44:38 2010 +0200 microblaze: Trace hardirqs Add trace_hardirqs_off and trace_hardirqs_on to do_IRQ function. Signed-off-by: Michal Simek commit 570e3e236efdf5bb4a023ecc3601dad9273a011e Author: Michal Simek Date: Fri Jun 4 13:06:27 2010 +0200 microblaze: Fix sys_clone syscall sys_clone syscall ignored args which this patch mapped to args which are passing from glibc. Here is the origin problem description. "I ran the static libgcc tests (very few of them are there, they are mostly dynamically linked) and some of them fail with an assertion in fork() system call (tid != pid), I looked at the microblaze/entry.S file and it looks suspicious (ignores arguments 3-5)" Arg mapping should be: glibc ARCH_FORK(...) -> do_fork(...) r5 -> r5 (clone_flags) r6 -> r6 (stack_start, use parent->stack if NULL) pt_regs -> r7 (pt_regs) r7 -> r8 (stack_size) r8 -> r9 (parent_tidptr) r9 -> r10 (child_tidptr) Signed-off-by: John Williams Signed-off-by: Michal Simek commit 79aac889037027bebf7fcfc4cf9f2eb25f4f8075 Author: Michal Simek Date: Tue May 25 11:33:26 2010 +0200 microblaze: Disable FRAME_POINTER selection Microblaze doesn't support frame pointers. Ftrace code uses CALLER_ADDR1 which is defined in linux/ftrace.h. For Microblaze is 0. Signed-off-by: Michal Simek commit 6847ba91a190fe41d21779d6b382b47b2f4c50f4 Author: Michal Simek Date: Mon May 24 12:13:24 2010 +0200 microblaze: Fix copy_to_user_page macro copy_to_user_page macro is used in mm/memory.c:access_process_vm function. This function is called from ptrace code (POKETEXT, POKEDATA) which write data to memory. Microblaze handle physical address for caches that's why there is virt_to_phys conversion. There is potential one location which can caused the problem on WB system. The important is take a look at write PTRACEs requests (POKE/TEXT, DATA, USR). Note: Majority of Microblaze PTRACE code is moved to generic location in newer kernel version that's why this solution should work on the newest kernel version too. linux/io.h is in cacheflush because of mm/nommu.c Tested on a WB system - hello world debugging. Signed-off-by: Michal Simek commit e05816679b61e47e90d7455a8f6dc6126dc479e3 Author: Michal Simek Date: Thu May 27 11:17:35 2010 +0200 microblaze: Sync noMMU and MMU setup_memory Both versions can use the same node to register NODE_DATA(0) Signed-off-by: Michal Simek commit ef78705034763ebdf500695deaed599c481318a7 Author: Michal Simek Date: Mon Jun 7 14:18:13 2010 +0200 microblaze: Remove unused label The label should be remove by 21e1c93631e027136ea4070e7bca600c4ad4f391 Warning message: arch/microblaze/mm/fault.c: In function 'do_page_fault': arch/microblaze/mm/fault.c:229: warning: label 'survive' defined but not used Signed-off-by: Michal Simek commit 79e87830faf22ca636b1a1d8f4deb430ea6e1c8b Author: Michal Simek Date: Fri Jun 4 13:00:31 2010 +0200 microblaze: Implement flush_dcache_page macro flush_dcache_page macro is necessary to implement for JFFS2 rootfs support on WB system. Signed-off-by: Michal Simek commit 331d919af416b9b92428947ef8c535a3e24c6b31 Merge: 047b51f fb8ce14 Author: Tony Lindgren Date: Wed Aug 4 08:46:24 2010 +0300 Merge branch 'for_2.6.36' of git://git.pwsan.com/linux-2.6 into omap-for-linus commit b9619230e1f55a763bc41848c1cd971a394c878c Author: Ondrej Zary Date: Tue Aug 3 23:57:05 2010 +0200 ALSA: als4000: enable burst mode Enable burst mode to prevent dropouts during high PCI bus usage. The card is useless in X without this because of dropouts when anything moves on the screen (at least with PCI VGA card). Enabling this is also recommended by the datasheet (page 48). Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 748cce431eb413e794c8f1d1974b78b47a6174ef Author: Takashi Iwai Date: Wed Aug 4 07:37:39 2010 +0200 ALSA: hda - Fix initial capsrc selection in patch_alc269() In patch_alc269(), we initialize the primary capsrc so that the device works from the beginning. It issues CONNECT_SEL verb no matter which widget is although some widget (e.g. 0x23) has no connection selection but a mixer, which requires unmuting instead. This patch fixes the initialization of capsrc by re-using the code as a helper function. Signed-off-by: Takashi Iwai commit 3ff1c25927e3af61c6bf0e4ed959504058ae4565 Author: Cyril Chemparathy Date: Tue Aug 3 19:36:06 2010 -0700 phy/marvell: add 88ec048 support Marvell 88ec048 is a derivative of its 88e1121r device. From the programmer's perspective, the one major difference is the addition of an additional control bit in Page 2 Register 16 - used to control the padding of odd nibble preambles. This patch adds support for this new device, while inheriting as much code as possible from the existing 88e1121r implementation. Signed-off-by: Cyril Chemparathy Signed-off-by: David S. Miller commit d05dd4e98f0dd30ee933e05ac9363614c47df83a Author: Trond Myklebust Date: Sat Jul 31 14:29:07 2010 -0400 NFS: Fix the NFS users of rpc_restart_call() Fix up those functions that depend on knowing whether or not rpc_restart_call is successful or not. Signed-off-by: Trond Myklebust commit f1f88fc7e818c6678c6799a2edb8f1aeccc124aa Author: Trond Myklebust Date: Sat Jul 31 14:29:07 2010 -0400 SUNRPC: The function rpc_restart_call() should return success/failure Both rpc_restart_call_prepare() and rpc_restart_call() test for the RPC_TASK_KILLED flag, and fail to restart the RPC call if that flag is set. This patch allows callers to know whether or not the restart was successful, so that they can perform cleanups etc in case of failure. Signed-off-by: Trond Myklebust commit a6f03393ec86fd25523c79497a9a773bda170d1d Author: Trond Myklebust Date: Sat Jul 31 14:29:07 2010 -0400 NFSv4: Get rid of the bogus RPC_ASSASSINATED(task) checks There is no real reason to have RPC_ASSASSINATED() checks in the NFS code. As far as it is concerned, this is just an RPC error... Signed-off-by: Trond Myklebust commit 452e93523d9433f83670e7b42cbe75319c208762 Author: Trond Myklebust Date: Sat Jul 31 14:29:06 2010 -0400 NFSv4: Clean up the process of renewing the NFSv4 lease Signed-off-by: Trond Myklebust commit 14516c3a30e256e8d4e7a9af271c8df644ac3222 Author: Trond Myklebust Date: Sat Jul 31 14:29:06 2010 -0400 NFSv4.1: Handle NFS4ERR_DELAY on SEQUENCE correctly In RFC5661, an NFS4ERR_DELAY error on a SEQUENCE operation has the special meaning that the server is not finished processing the request. In this case we want to just retry the request without touching the slot. Also fix a bug whereby we would fail to update the sequence id if the server returned any error other than NFS_OK/NFS4ERR_DELAY. Signed-off-by: Trond Myklebust commit 0a8ebba943dd89bdd57c5dab5a66932f690847d9 Author: Trond Myklebust Date: Sat Jul 31 14:29:06 2010 -0400 NFS: nfs_rename() should not have to flush out writebacks We don't really support nfs servers that invalidate the file handle after a rename, so precautions such as flushing out dirty data before renaming the file are superfluous. Signed-off-by: Trond Myklebust commit 1b924e5f878e3cd62a20bd8dbf3b911a40185a99 Author: Trond Myklebust Date: Sat Jul 31 14:29:06 2010 -0400 NFS: Clean up the callers of nfs_wb_all() There is no need to flush out writes before calling nfs_wb_all(). Signed-off-by: Trond Myklebust commit af7fa16506bf9b6323e862a61e14c20555152bb3 Author: Trond Myklebust Date: Sat Jul 31 14:29:06 2010 -0400 NFS: Fix up the fsync code Christoph points out that the VFS will always flush out data before calling nfs_fsync(), so we can dispense with a full call to nfs_wb_all(), and replace that with a simpler call to nfs_commit_inode(). Signed-off-by: Trond Myklebust commit 8dd420466c7bfc459fa04680bd5690bfc41a4553 Author: Theodore Ts'o Date: Tue Aug 3 21:38:29 2010 -0400 jbd2: Remove t_handle_lock from start_this_handle() This should remove the last exclusive lock from start_this_handle(), so that we should now be able to start multiple transactions at the same time on large SMP systems. Signed-off-by: "Theodore Ts'o" commit a931da6ac9331a6c80dd91c199105806f2336188 Author: Theodore Ts'o Date: Tue Aug 3 21:35:12 2010 -0400 jbd2: Change j_state_lock to be a rwlock_t Lockstat reports have shown that j_state_lock is a major source of lock contention, especially on systems with more than 4 CPU cores. So change it to be a read/write spinlock. Signed-off-by: "Theodore Ts'o" commit dc77de12dde95c8da39e4c417eb70c7d445cf84b Author: Dave Airlie Date: Wed Aug 4 11:16:56 2010 +1000 drm/radeon: tone down overchatty acpi debug messages. On non laptop systems we'll see these the whole time, so make them less important. Signed-off-by: Dave Airlie commit 412a4ac5e9cf7fdeb6af562c25547a9b9da7674f Merge: e8e5c21 0c2daaaf Author: Benjamin Herrenschmidt Date: Wed Aug 4 10:26:03 2010 +1000 Merge commit 'gcl/next' into next commit 5b1714d386a2f0c0d270e3abe1ac39ad1b0ba010 Author: Alex Deucher Date: Tue Aug 3 19:59:20 2010 -0400 drm/radeon/kms: enable underscan option for digital connectors This connector attribute allows you to enable or disable underscan on a digital output to compensate for panels that automatically overscan (e.g., many HDMI TVs). Valid values for the attribute are: off - forces underscan off on - forces underscan on auto - enables underscan if an HDMI TV is connected, off otherwise default value is auto. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d65d65b175a29bd7ea2bb69c046419329c4a5db7 Author: Alex Deucher Date: Tue Aug 3 19:58:49 2010 -0400 drm/radeon/kms: fix calculation of h/v scaling factors Prior to this patch the code was dividing the src_v by the dst_h and vice versa, rather than src_v/dst_v and src_h/dst_h. This could lead to problems in the calculation of the display watermarks. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit fa0a6024da61d96a12fab18991b9897292b43253 Merge: 4c70b2e 7b824ec Author: Dave Airlie Date: Wed Aug 4 09:51:27 2010 +1000 Merge remote branch 'intel/drm-intel-next' of /ssd/git/drm-next into drm-core-next * 'intel/drm-intel-next' of /ssd/git/drm-next: (230 commits) drm/i915: Clear the Ironlake dithering flags when the pipe doesn't want it. drm/agp/i915: trim stolen space to 32M drm/i915: Unset cursor if out-of-bounds upon mode change (v4) drm/i915: Unreference object not handle on creation drm/i915: Attempt to uncouple object after catastrophic failure in unbind drm/i915: Repeat unbinding during free if interrupted (v6) drm/i915: Refactor i915_gem_retire_requests() drm/i915: Warn if we run out of FIFO space for a mode drm/i915: Round up the watermark entries (v3) drm/i915: Typo in (unused) register mask for overlay. drm/i915: Check overlay stride errata for i830 and i845 drm/i915: Validate the mode for eDP by using fixed panel size drm/i915: Always use the fixed panel timing for eDP drm/i915: Enable panel fitting for eDP drm/i915: Add fixed panel mode parsed from EDID for eDP without fixed mode in VBT drm/i915/sdvo: Set sync polarity based on actual mode drm/i915/hdmi: Set sync polarity based on actual mode drm/i915/pch: Set transcoder sync polarity for DP based on actual mode drm/i915: Initialize LVDS and eDP outputs before anything else drm/i915/dp: Correctly report eDP in the core connector type ... commit 4c70b2eae371ebe83019ac47de6088b78124ab36 Author: Alex Deucher Date: Mon Aug 2 19:39:15 2010 -0400 drm/radeon/kms/igp: sideport is AMD only Intel variants don't support it. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit e06b14ee91a2ddefc9a67443a6cd8ee0fa800115 Author: Alex Deucher Date: Mon Aug 2 12:13:46 2010 -0400 drm/radeon/kms: handle the case of no active displays properly in the bandwidth code Logic was: if (mode0 && mode1) else if (mode0) else Should be: if (mode0 && mode1) else if (mode0) else if (mode1) Otherwise we may end up calculating the priority regs with unitialized values. Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=16492 Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit ba4420c224c2808f2661cf8428f43ceef7a73a4a Author: Dave Airlie Date: Tue Mar 9 10:56:52 2010 +1000 drm: move ttm global code to core drm I wrote this for the prime sharing work, but I also noticed other external non-upstream drivers from a large company carrying a similiar patch, so I may as well ship it in master. Signed-off-by: Dave Airlie commit bda7d2a862e6b788bca2d02d38a07966a9c92e48 Author: Peter Ujfalusi Date: Tue Aug 3 12:01:01 2010 +0300 ASoC: TWL4030: Capture route runtime DAPM ordering fix Fix the ordering problem in DAPM domain, when the user changes between digital and analog sources during active capture (or loopback) scenario. Before this patch, when the user changed from analog source to digital there were a short time, when the codec enabled analog mic bias (2.2 volts) instead of the correct digital mic bias (1.8 volts) to the digital microphones. This behaviour caused by the former implementation of selecting the correct type of bias. This was done at the POST_REG event of the DAPM_MUX_E("TXx Capture Route") widget. By moving the bias type selection as DAPM_SUPPLY and connecting it to the corresponding digimic widget the problematic situation can be avoided. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 99870a73d406e5bd235bc8e5aca6893a68184881 Author: Alexander Duyck Date: Tue Aug 3 11:50:08 2010 +0000 igb: Program MDICNFG register prior to PHY init This patch addresses an issue seen on 82580 in which the MDICNFG register will be reset during a single function reset and as a result we will be unable to communicate with the PHY. To correct the issue, added a call to reset_mdicnfg just prior to the first access of the MDICNFG register in sgnii_uses_mdio. Signed-off-by: Alexander Duyck Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 96f2bd13bfb6df5beec7fe55405ad94b528b8b4c Author: Bruce Allan Date: Tue Aug 3 11:48:35 2010 +0000 e1000e: correct MAC-PHY interconnect register offset for 82579 The MAC-PHY interconnect register set on ICH/PCH parts is accessed through a peephole mechanism by writing an offset to a CSR register. The offset for the interconnect's half-duplex control register (which is used in a jumbo frame workaround for 82579) is incorrect. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5c7bf2f4d6304ab4741f38365ca0c0223147263d Author: Filip Aben Date: Tue Aug 3 05:36:41 2010 +0000 hso: Add new product ID This patch adds a new product ID to the hso driver. Signed-off-by: Filip Aben Signed-off-by: David S. Miller commit 96d8e90382dc336b5de401164597edfdc2e8d9f1 Author: Matthias Fuchs Date: Tue Aug 3 02:55:23 2010 +0000 can: Add driver for esd CAN-USB/2 device This patch adds a driver for esd's USB high speed CAN interface. The driver supports devices with multiple CAN interfaces. Signed-off-by: Matthias Fuchs Acked-by: Wolfgang Grandegger Signed-off-by: David S. Miller commit 7b824ec2e5d7d086264ecae51e30e3c5e00cdecc Author: Eric Anholt Date: Mon Jul 26 14:49:07 2010 -0700 drm/i915: Clear the Ironlake dithering flags when the pipe doesn't want it. My fine DisplayPort output was getting ST dithering forever after having had the LVDS enabled at one point. Signed-off-by: Eric Anholt commit a3159864f2978bf2ace9cc787d73d315c98bbf9a Author: Fenghua Yu Date: Thu Jul 29 17:13:46 2010 -0700 x86, hwmon: Package Level Thermal/Power: pkgtemp documentation Document for package level thermal hwmon driver. Signed-off-by: Fenghua Yu LKML-Reference: <1280448826-12004-6-git-send-email-fenghua.yu@intel.com> Reviewed-by: Len Brown Signed-off-by: H. Peter Anvin commit 0199114c31798af5b83841b21759b64171060d9b Author: Fenghua Yu Date: Thu Jul 29 17:13:45 2010 -0700 x86, hwmon: Package Level Thermal/Power: power limit Power limit notification feature is published in Intel 64 and IA-32 Architectures SDMV Vol 3A 14.5.6 Power Limit Notification. It is implemented first on Intel Sandy Bridge platform. The patch handles notification interrupt. Interrupt handler dumps power limit information in log_buf, logs the event in mce log, and increases the event counters (core_power_limit and package_power_limit). Upper level applications could use the data to detect system health or diagnose functionality/performance issues. In the future, the event could be handled in a more fancy way. Signed-off-by: Fenghua Yu LKML-Reference: <1280448826-12004-5-git-send-email-fenghua.yu@intel.com> Reviewed-by: Len Brown Signed-off-by: H. Peter Anvin commit 55d435a227bd28c77afab326de44dfacc0b15059 Author: Fenghua Yu Date: Thu Jul 29 17:13:44 2010 -0700 x86, hwmon: Package Level Thermal/Power: thermal throttling handler Add package level thermal throttle interrupt support. The interrupt handler increases package level thermal throttle count. It also logs the event in MCE log. The package level thermal throttle interrupt happens across threads in a package. Each thread handles the interrupt individually. User level application is supposed to retrieve correct event count and log based on package/thread topology. This is the same situation for core level interrupt handler. In the future, interrupt may be reported only per package or per core. core_throttle_count and package_throttle_count are used for user interface. Previously only throttle_count is used for core throttle count. If you think new core_throttle_count name breaks user interface, I can change this part. Signed-off-by: Fenghua Yu LKML-Reference: <1280448826-12004-4-git-send-email-fenghua.yu@intel.com> Reviewed-by: Len Brown Signed-off-by: H. Peter Anvin commit cb84b19474384c572ba3aa2345815e555112ebf5 Author: Fenghua Yu Date: Thu Jul 29 17:13:43 2010 -0700 x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver This patch adds a hwmon driver for package level thermal control. The driver dumps package level thermal information through sysfs interface so that upper level application (e.g. lm_sensor) can retrive the information. Instead of having the package level hwmon code in coretemp, I write a seperate driver pkgtemp because: First, package level thermal sensors include not only sensors for each core, but also sensors for uncore, memory controller or other components in the package. Logically it will be clear to have a seperate hwmon driver for package level hwmon to monitor wider range of sensors in a package. Merging package thermal driver into core thermal driver doesn't make sense and may mislead. Secondly, merging the two drivers together may cause coding mess. It's easier to include various package level sensors info if more sensor information is implemented. Coretemp code needs to consider a lot of legacy machine cases. Pkgtemp code only considers platform starting from Sandy Bridge. On a 1Sx4Cx2T Sandy Bridge platform, lm-sensors dumps the pkgtemp and coretemp: pkgtemp-isa-0000 Adapter: ISA adapter physical id 0: +33.0°C (high = +79.0°C, crit = +99.0°C) coretemp-isa-0000 Adapter: ISA adapter Core 0: +32.0°C (high = +79.0°C, crit = +99.0°C) coretemp-isa-0001 Adapter: ISA adapter Core 1: +32.0°C (high = +79.0°C, crit = +99.0°C) coretemp-isa-0002 Adapter: ISA adapter Core 2: +32.0°C (high = +79.0°C, crit = +99.0°C) coretemp-isa-0003 Adapter: ISA adapter Core 3: +32.0°C (high = +79.0°C, crit = +99.0°C) [ hpa: folded v3 patch removing improper global variable "SHOW" ] Signed-off-by: Fenghua Yu LKML-Reference: <1280448826-12004-3-git-send-email-fenghua.yu@intel.com> Reviewed-by: Len Brown Signed-off-by: H. Peter Anvin commit 3a09b1be53d23df780a0cd0e4087a05e2ca4a00c Merge: 7046e66 0809f6e Author: Linus Torvalds Date: Tue Aug 3 14:40:10 2010 -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: Fix recovery stuck bug (try #2) GFS2: Fix typo in stuffed file data copy handling Revert "GFS2: recovery stuck on transaction lock" GFS2: Make "try" lock not try quite so hard GFS2: remove dependency on __GFP_NOFAIL GFS2: Simplify gfs2_write_alloc_required GFS2: Wait for journal id on mount if not specified on mount command line GFS2: Use nobh_writepage commit 7046e668d7973c470146fbe6635967a1b4a31bca Merge: c939f9f 64d4b4c Author: Linus Torvalds Date: Tue Aug 3 14:37:26 2010 -0700 Merge branch 'linux-next' of git://git.infradead.org/ubi-2.6 * 'linux-next' of git://git.infradead.org/ubi-2.6: UBI: do not warn unnecessarily UBI: do not print message about corruptes PEBs if we have none of them UBI: improve delete-compatible volumes handling UBI: fix error message and compilation warnings UBI: generate random image_seq when formatting MTD devices UBI: improve ECC error message UBI: improve corrupted flash handling UBI: introduce eraseblock counter variables UBI: introduce a new IO return code UBI: simplify IO error codes commit c939f9f9d225972a60181c95df8a9aa50f8b1701 Merge: b8b3e90 c18de72 Author: Linus Torvalds Date: Tue Aug 3 14:37:02 2010 -0700 Merge branch 'linux-next' of git://git.infradead.org/ubifs-2.6 * 'linux-next' of git://git.infradead.org/ubifs-2.6: UBIFS: fix a memory leak on error path. UBIFS: fix GC LEB recovery UBIFS: use ERR_CAST UBIFS: check return code commit b8b3e9058f0f1d5c5a81c7d3d46f373d5f59a82c Merge: 51102ee 327aec0 Author: Linus Torvalds Date: Tue Aug 3 14:36:16 2010 -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: (22 commits) 9p: fix sparse warnings in new xattr code fs/9p: remove sparse warning in vfs_inode fs/9p: destroy fid on failed remove fs/9p: Prevent parallel rename when doing fid_lookup fs/9p: Add support user. xattr net/9p: Implement TXATTRCREATE 9p call net/9p: Implement attrwalk 9p call 9p: Implement LOPEN fs/9p: This patch implements TLCREATE for 9p2000.L protocol. 9p: Implement TMKDIR 9p: Implement TMKNOD 9p: Define and implement TSYMLINK for 9P2000.L 9p: Define and implement TLINK for 9P2000.L 9p: Define and implement TLINK for 9P2000.L 9p: Implement client side of setattr for 9P2000.L protocol. 9p: getattr client implementation for 9P2000.L protocol. fs/9p: Pass the correct user credentials during attach net/9p: Handle the server returned error properly 9p: readdir implementation for 9p2000.L 9p: Make use of iounit for read/write ... commit 51102ee5b8853d230e534cbcd0d888f0134738a3 Merge: 54161df 6b0a299 Author: Linus Torvalds Date: Tue Aug 3 14:33:38 2010 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: (49 commits) xfs simplify and speed up direct I/O completions xfs: move aio completion after unwritten extent conversion direct-io: move aio_complete into ->end_io xfs: fix big endian build xfs: clean up xfs_bmap_get_bp xfs: simplify xfs_truncate_file xfs: kill the b_strat callback in xfs_buf xfs: remove obsolete osyncisosync mount option xfs: clean up filestreams helpers xfs: fix gcc 4.6 set but not read and unused statement warnings xfs: Fix build when CONFIG_XFS_POSIX_ACL=n xfs: fix unsigned underflow in xfs_free_eofblocks xfs: use GFP_NOFS for page cache allocation xfs: fix memory reclaim recursion deadlock on locked inode buffer xfs: fix xfs_trans_add_item() lockdep warnings xfs: simplify and remove xfs_ireclaim xfs: don't block on buffer read errors xfs: move inode shrinker unregister even earlier xfs: remove a dmapi leftover xfs: writepage always has buffers ... commit 54161df1fb1469d66bce3a3b14d8281adbb69263 Merge: be82ae0 cb76d5e Author: Linus Torvalds Date: Tue Aug 3 14:33:09 2010 -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: (29 commits) cifs: fsc should not default to "on" [CIFS] remove redundant path walking in dfs_do_refmount cifs: ignore the "mand", "nomand" and "_netdev" mount options cifs: map NT_STATUS_ERROR_WRITE_PROTECTED to -EROFS cifs: don't allow cifs_iget to match inodes of the wrong type [CIFS] relinquish fscache cookie before freeing CIFSTconInfo cifs: add separate cred_uid field to sesInfo fs: cifs: check kmalloc() result [CIFS] Missing ifdef [CIFS] Missing line from previous commit [CIFS] Fix build break when CONFIG_CIFS_FSCACHE disabled cifs: add mount option to enable local caching cifs: read pages from FS-Cache cifs: store pages into local cache cifs: FS-Cache page management cifs: define inode-level cache object and register them cifs: define superblock-level cache index objects and register them cifs: remove unused cifsUidInfo struct cifs: clean up cifs_find_smb_ses (try #2) cifs: match secType when searching for existing tcp session ... commit be82ae0238b0453afcf4a76f0512b7dde34ba500 Merge: 4b4fd27 7b70c42 Author: Linus Torvalds Date: Tue Aug 3 14:31:24 2010 -0700 Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (291 commits) ARM: AMBA: Add pclk support to AMBA bus infrastructure ARM: 6278/2: fix regression in RealView after the introduction of pclk ARM: 6277/1: mach-shmobile: Allow users to select HZ, default to 128 ARM: 6276/1: mach-shmobile: remove duplicate NR_IRQS_LEGACY ARM: 6246/1: mmci: support larger MMCIDATALENGTH register ARM: 6245/1: mmci: enable hardware flow control on Ux500 variants ARM: 6244/1: mmci: add variant data and default MCICLOCK support ARM: 6243/1: mmci: pass power_mode to the translate_vdd callback ARM: 6274/1: add global control registers definition header file for nuc900 mx2_camera: fix type of dma buffer virtual address pointer mx2_camera: Add soc_camera support for i.MX25/i.MX27 arm/imx/gpio: add spinlock protection ARM: Add support for the LPC32XX arch ARM: LPC32XX: Arch config menu supoport and makefiles ARM: LPC32XX: Phytec 3250 platform support ARM: LPC32XX: Misc support functions ARM: LPC32XX: Serial support code ARM: LPC32XX: System suspend support ARM: LPC32XX: GPIO, timer, and IRQ drivers ARM: LPC32XX: Clock driver ... commit a5210c12b7c4e34e904f4820a4abd048a2d75db5 Author: Ralph Campbell Date: Mon Aug 2 22:39:30 2010 +0000 IB/qib: Fix race between qib_error_qp() and receive packet processing When transitioning a QP to the error state, in progress RWQEs need to be marked complete. This also involves releasing the reference count to the memory regions referenced in the SGEs. The locking in the receive packet processing wasn't sufficient to prevent qib_error_qp() from modifying the r_sge state at the same time, thus leading to kernel panics. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 3e3aed0b88f680fed5c604caf7b10d77b2ec45c4 Author: Ralph Campbell Date: Mon Aug 2 22:39:24 2010 +0000 IB/qib: Limit the number of packets processed per interrupt Don't processes too many packets without allowing other IRQ functions a chance to run. Otherwise, there is a chance of getting a "soft lockup" messages and poor application response times. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 4c6931f5d4f423238ae6e93423081c6ff9753d26 Author: Ira Weiny Date: Wed Jul 14 01:53:18 2010 +0000 IB/qib: Allow writes to the diag_counters to be able to clear them Signed-off-by: Ira Weiny Acked-by: Ralph Campbell Signed-off-by: Roland Dreier commit 0502f94c62be79d1f4ae6f53ceaefde67ef3cea2 Author: Ralph Campbell Date: Wed Jul 21 22:46:11 2010 +0000 IB/qib: Set cfgctxts to number of CPUs by default Up to now, we have set the number of available user contexts based on the number of hardware contexts which is set according to the number of available CPUs. This was fine since most CPUs had a power of two number of cores and the chip supported 4, 8, or 16 user contexts. Now that some systems have 12 cores, the default isn't optimal and should be set to 12 even though 16 hardware contexts need to be enabled. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit b29230769e3482bbd62a07d6d9485371ee66a18f Author: Thomas Gleixner Date: Tue Aug 3 20:34:48 2010 +0200 um: Fix read_persistent_clock fallout commit 9f31f57(um: Convert to use read_persistent_clock) moved the code, but not the variable. Signed-off-by: Thomas Gleixner commit 9d1f44ee206a23b975d7d7c6f759efb25e0e61ac Author: Dave Jones Date: Tue Aug 3 13:47:30 2010 -0400 [CPUFREQ] Remove pointless printk from p4-clockmod. The only machines this is triggering on should be supported by acpi-cpufreq or acpi's internal throttling. Signed-off-by: Dave Jones commit 307069cf6c53632adc27de4f49bf5d1d67cb87bb Author: Holger Freyther Date: Mon Jul 19 03:29:16 2010 +0800 [CPUFREQ] Fix section mismatch for powernow_cpu_init in powernow-k7.c Use __cpuinit instead of __init for the cpufreq_driver init function like it is done in powernow-k8.c. This is removing the warning generated when compiling with the CONFIG_DEBUG_SECTION_MISMATCH=y option. Signed-off-by: Holger Hans Peter Freyther Signed-off-by: Dave Jones commit 2530573e45c5846cd238db78651f0d236fc78aab Author: Holger Freyther Date: Mon Jul 19 03:29:03 2010 +0800 [CPUFREQ] Fix section mismatch for longhaul_cpu_init. Use __cpuinit instead of __init for the cpufreq_driver init function like it is done in powernow-k8.c. Use the __cpuinitdata for data used by the routines marked as __cpuinit. This is removing the warning generated when compiling with the CONFIG_DEBUG_SECTION_MISMATCH=y option. Signed-off-by: Holger Hans Peter Freyther Signed-off-by: Dave Jones commit 7e2d81122052c83feeddbebf706b6d53fba7996d Author: Holger Freyther Date: Mon Jul 19 03:28:49 2010 +0800 [CPUFREQ] Fix section mismatch for longrun_cpu_init. Use __cpuinit instead of __init for the cpufreq_driver init function like it is done in powernow-k8.c. This is removing the warning generated when compiling with the CONFIG_DEBUG_SECTION_MISMATCH=y option. Signed-off-by: Holger Hans Peter Freyther Signed-off-by: Dave Jones commit b30d3304c9c068ccfe6940232834768af75f8c9a Author: Borislav Petkov Date: Thu Jul 8 18:05:14 2010 +0200 [CPUFREQ] powernow-k8: Fix misleading variable naming rdmsr() takes the lower 32 bits as a second argument and the high 32 as a third. Fix the names accordingly since they were swapped. There should be no functionality change resulting from this patch. Signed-off-by: Borislav Petkov Signed-off-by: Dave Jones commit 55c789bb2bcdcaa8f1f60687b4a9dbd02ffddd88 Author: Peter Huewe Date: Thu Jul 15 20:36:41 2010 +0200 [CPUFREQ] Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: Dave Jones commit ccc5638a20b0eb3a66666d9d4dd8fe8f5ad40386 Author: Kulikov Vasiliy Date: Sat Jul 3 20:03:55 2010 +0400 [CPUFREQ] arch/x86/kernel/cpu/cpufreq: use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: Dave Jones commit 9c36f746d7e191ad6f44f01859af843f0c4d3c5d Author: Neal Buckendahl Date: Tue Jun 22 22:02:44 2010 -0500 [CPUFREQ] fix brace coding style issue. This patch fixes up a brace warning found by the checkpatch.pl tool Signed-off-by: Neal Buckendahl Signed-off-by: Dave Jones commit 6f4f2723d08534fd4e407e1ef8500b0f4d12c30c Author: Thomas Renninger Date: Tue Apr 20 13:17:36 2010 +0200 [CPUFREQ] x86 cpufreq: Make trace_power_frequency cpufreq driver independent and fix the broken case if a core's frequency depends on others. trace_power_frequency was only implemented in a rather ungeneric way in acpi-cpufreq driver's target() function only. -> Move the call to trace_power_frequency to cpufreq.c:cpufreq_notify_transition() where CPUFREQ_POSTCHANGE notifier is triggered. This will support power frequency tracing by all cpufreq drivers trace_power_frequency did not trace frequency changes correctly when the userspace governor was used or when CPU cores' frequency depend on each other. -> Moving this into the CPUFREQ_POSTCHANGE notifier and pass the cpu which gets switched automatically fixes this. Robert Schoene provided some important fixes on top of my initial quick shot version which are integrated in this patch: - Forgot some changes in power_end trace (TP_printk/variable names) - Variable dummy in power_end must now be cpu_id - Use static 64 bit variable instead of unsigned int for cpu_id Signed-off-by: Thomas Renninger CC: davej@redhat.com CC: arjan@infradead.org CC: linux-kernel@vger.kernel.org CC: robert.schoene@tu-dresden.de Tested-by: robert.schoene@tu-dresden.de Signed-off-by: Dave Jones commit 6b72e3934b42930fd40fc42fe762d21be413301c Author: Thomas Renninger Date: Tue Apr 20 13:17:35 2010 +0200 [CPUFREQ] acpi-cpufreq: Fix CPU_ANY CPUFREQ_{PRE,POST}CHANGE notification Signed-off-by: Thomas Renninger CC: venki@google.com CC: davej@redhat.com CC: arjan@infradead.org CC: linux-kernel@vger.kernel.org Signed-off-by: Dave Jones commit a665df9d510bfd5bac5664f436411f921471264a Author: Jocelyn Falempe Date: Thu Mar 11 14:01:11 2010 -0800 [CPUFREQ] ondemand: don't synchronize sample rate unless multiple cpus present For UP systems this is not required, and results in a more consistent sample interval. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Jocelyn Falempe Signed-off-by: Mike Chan Signed-off-by: Andrew Morton Signed-off-by: Dave Jones commit 226528c6100e4191842e61997110c8ace40605f7 Author: Amerigo Wang Date: Thu Mar 4 03:23:36 2010 -0500 [CPUFREQ] unexport (un)lock_policy_rwsem* functions lock_policy_rwsem_* and unlock_policy_rwsem_* functions are scheduled to be unexported when 2.6.33. Now there are no other callers of them out of cpufreq.c, unexport them and make them static. Signed-off-by: WANG Cong Cc: Venkatesh Pallipadi Signed-off-by: Dave Jones commit 00e299fff3cc2745847b03eebcc9e9362db9366d Author: Mike Chan Date: Tue Jan 26 17:06:47 2010 -0800 [CPUFREQ] ondemand: Refactor frequency increase code Make simpler to read and call. *** v3 - Always call when powersave_bias is enabled. Acked-by: Venkatesh Pallipadi Signed-off-by: Mike Chan Signed-off-by: Dave Jones commit 298decfbc44e9a4cb7862ae1b7dfc4e1ba3551b9 Author: Marti Raudsepp Date: Wed Jan 20 19:19:33 2010 +0200 [CPUFREQ] powernow-k8: On load failure, remind the user to enable support in BIOS setup On Wed, 2010-01-20 at 16:56 +0100, Thomas Renninger wrote: > But most often this happens if people upgrade their CPU and do not > update their BIOS. > Or the vendor does not recognise the new CPU even if the BIOS got > updated. Maybe some of those people just didn't realize it was disabled in BIOS? If you tell users that it's a firmware bug then they'll probably just give up. > The itself message might be an enhancment, IMO it's not worth a patch. Why do you think so? I spent an hour on hunting down the BIOS upgrade, only to find that it didn't improve anything. It was a day later that I realized that it might be a BIOS option; and the option was literally the _last_ option in the whole BIOS setup. :) This message would have saved the day. > But do not revert the FW_BUG part! Sure, you have a point here. How about this patch? commit c2f4a2c6e08c7635316dfd25ef706e9104384c56 Author: Borislav Petkov Date: Thu Jul 8 17:55:30 2010 +0200 [CPUFREQ] powernow-k8: Limit Pstate transition latency check The Pstate transition latency check was added for broken F10h BIOSen which wrongly contain a value of 0 for transition and bus master latency. Fam11h and later, however, (will) have similar transition latency so extend that behavior for them too. Signed-off-by: Borislav Petkov Signed-off-by: Dave Jones commit 6ebdf777ba034d2b54c99f28a4b18dabf286d8e5 Author: Matthew Garrett Date: Thu Jul 15 11:44:00 2010 -0400 [CPUFREQ] Fix PCC driver error path The PCC cpufreq driver unmaps the mailbox address range if any CPUs fail to initialise, but doesn't do anything to remove the registered CPUs from the cpufreq core resulting in failures further down the line. We're better off simply returning a failure - the cpufreq core will unregister us cleanly if we end up with no successfully registered CPUs. Tidy up the failure path and also add a sanity check to ensure that the firmware gives us a realistic frequency - the core deals badly with that being set to 0. Signed-off-by: Matthew Garrett Cc: Naga Chumbalkar Signed-off-by: Dave Jones commit 0d9715d64fe118dd0957a29e344972b8d3f960e7 Author: Daniel J Blueman Date: Fri Jul 23 23:06:52 2010 +0100 [CPUFREQ] fix double freeing in error path of pcc-cpufreq Prevent double freeing on error path. Signed-off-by: Daniel J Blueman Signed-off-by: Dave Jones commit 5d77b85458f656923b85291a4ff56ed44859ed52 Author: Matthew Garrett Date: Tue Jul 20 13:52:00 2010 -0400 [CPUFREQ] pcc driver should check for pcch method before calling _OSC The pcc specification documents an _OSC method that's incompatible with the one defined as part of the ACPI spec. This shouldn't be a problem as both are supposed to be guarded with a UUID. Unfortunately approximately nobody (including HP, who wrote this spec) properly check the UUID on entry to the _OSC call. Right now this could result in surprising behaviour if the pcc driver performs an _OSC call on a machine that doesn't implement the pcc specification. Check whether the PCCH method exists first in order to reduce this probability. Signed-off-by: Matthew Garrett Cc: Naga Chumbalkar Signed-off-by: Dave Jones commit cad70a6ae5aaef4641a3efdfd536c30f13891afe Author: Xiaotian Feng Date: Tue Jul 20 20:11:02 2010 +0800 [CPUFREQ] fix memory leak in cpufreq_add_dev We didn't free policy->related_cpus in error path err_unlock_policy. This is catched by following kmemleak report: unreferenced object 0xffff88022a0b96d0 (size 512): comm "modprobe", pid 886, jiffies 4294689177 (age 780.694s) hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace: [] create_object+0x186/0x281 [] kmemleak_alloc+0x60/0xa7 [] kmem_cache_alloc_node_notrace+0x120/0x142 [] alloc_cpumask_var_node+0x2c/0xd7 [] alloc_cpumask_var+0x11/0x13 [] zalloc_cpumask_var+0xf/0x11 [] cpufreq_add_dev+0x11f/0x547 [] sysdev_driver_register+0xc2/0x11d [] cpufreq_register_driver+0xcb/0x1b8 [] 0xffffffffa032e040 [] do_one_initcall+0x5e/0x15c [] sys_init_module+0xa6/0x1e6 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff Signed-off-by: Xiaotian Feng Cc: Thomas Renninger Cc: Prarit Bhargava Signed-off-by: Dave Jones commit ffe6275f90cc2ea77e6120a510903687be067b16 Author: Andrej Gelenberg Date: Fri May 14 15:15:58 2010 -0700 [CPUFREQ] revert "[CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call (second call site)" 395913d0b1db37092ea3d9d69b832183b1dd84c5 ("[CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call (second call site)") is not needed, because there is no rwsem lock in cpufreq_ondemand and cpufreq_conservative anymore. Lock should not be released until the work done. Addresses https://bugzilla.kernel.org/show_bug.cgi?id=1594 Signed-off-by: Andrej Gelenberg Cc: Mathieu Desnoyers Cc: Venkatesh Pallipadi Signed-off-by: Andrew Morton Acked-by: Mathieu Desnoyers Signed-off-by: Dave Jones commit 4b4fd27c0b5ec638a1f06ced9226fd95229dbbf0 Author: Helge Deller Date: Mon Aug 2 22:46:41 2010 +0200 PARISC: led.c - fix potential stack overflow in led_proc_write() avoid potential stack overflow by correctly checking count parameter Reported-by: Ilja Signed-off-by: Helge Deller Acked-by: Kyle McMartin Cc: James E.J. Bottomley Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit 1a14703d6b20010401ca273ac1f07bff7992aa2c Author: Jesse Barnes Date: Wed Jul 28 14:42:56 2010 -0700 ips driver: make it less chatty We don't need a dev_warn when we exceed a thermal or power limit as we'll handle it appropriately by clamping down on the CPU, GPU or both as needed. Signed-off-by: Jesse Barnes Signed-off-by: Matthew Garrett commit e096c8e6d5ed965f346d94befbbec2275dde3621 Author: Takashi Iwai Date: Tue Aug 3 17:20:35 2010 +0200 ALSA: hda - Add PC-beep whitelist for an Intel board An Intel board needs a white-list entry to enable PC-beep. Otherwise the driver misdetects (due to bogus BIOS info) and ignores the PC-beep on 2.6.35. Reported-and-tested-by: Leandro Lucarella Cc: Signed-off-by: Takashi Iwai commit 127c03cdbad9bd5af5d7f33bd31a1015a90cb77f Author: Dominik Brodowski Date: Tue Aug 3 09:33:45 2010 +0200 pcmcia: avoid buffer overflow in pcmcia_setup_isa_irq NR_IRQS may be as low as 16, causing a (harmless?) buffer overflow in pcmcia_setup_isa_irq(): static u8 pcmcia_used_irq[NR_IRQS]; ... if ((try < 32) && pcmcia_used_irq[irq]) continue; This is read-only, so if this address would be non-zero, it would just mean we would not attempt an IRQ >= NR_IRQS -- which would fail anyway! And as request_irq() fails for an irq >= NR_IRQS, the setting code path: pcmcia_used_irq[irq]++; is never reached as well. Reported-by: Christoph Fritz CC: stable@kernel.org Signed-off-by: Dominik Brodowski Signed-off-by: Christoph Fritz commit eba042a81edd6baaff44831b2d719b14a6d21e58 Author: Borislav Petkov Date: Tue May 25 18:21:07 2010 +0200 edac, mc: Improve scrub rate handling Fortify the interface to not accept negative values, remove memctrl_int_store() as a result. Also, sanitize bandwidth setting by making the argument a simple u32 instead of strange u32 pointer being passed around for no obvious reason. Then, fix error handling and teach it to return proper error values. Finally, make code more readable, simplify debug messages. Cc: Mauro Carvalho Chehab Cc: Arthur Jones Signed-off-by: Borislav Petkov Acked-by: Doug Thompson commit bc57117856cf1e581135810b37d3b75f9d1749f5 Author: Borislav Petkov Date: Fri May 21 21:25:03 2010 +0200 amd64_edac: Correct scrub rate setting Exit early when setting scrub rate on unknown/unsupported families. Cc: # 32.x 33.x 34.x Signed-off-by: Borislav Petkov Acked-by: Doug Thompson commit 9975a5f22a4fcc8d08035c65439900a983f891ad Author: Borislav Petkov Date: Mon Mar 8 18:29:35 2010 +0100 amd64_edac: Fix DCT base address selector The correct check is to verify whether in high range we're below 4GB and not to extract the DctSelBaseAddr again. See "2.8.5 Routing DRAM Requests" in the F10h BKDG. Cc: # .32.x .33.x .34.x Signed-off-by: Borislav Petkov Acked-by: Doug Thompson commit f4347553b30ec66530bfe63c84530afea3803396 Author: Borislav Petkov Date: Sat May 15 13:51:57 2010 +0200 amd64_edac: Remove polling mechanism Switch to reusing the mcheck core's machine check polling mechanism instead of duplicating functionality by using the EDAC polling routine. Correct formatting while at it. Signed-off-by: Borislav Petkov Acked-by: Doug Thompson commit 98a5ae2d99b78d29d2d31283cd8b481a44f41fd3 Author: Borislav Petkov Date: Tue May 18 13:59:05 2010 +0200 x86, mce: Notify about corrected events too Notify all parties registered on the mce decoder chain about logged correctable MCEs. Signed-off-by: Borislav Petkov Acked-by: Doug Thompson Acked-by: Ingo Molnar commit 695426506ebba6acc87843cca075595a775e8866 Author: Borislav Petkov Date: Mon Mar 15 19:39:18 2010 +0100 amd64_edac: Remove unneeded defines All F2x110-related bit defines are used at only one place so replace them with simple BIT() macros. Signed-off-by: Borislav Petkov Acked-by: Doug Thompson commit 935ab88e341ccb1507b2b0b1f1e9adcbbd693265 Author: Borislav Petkov Date: Mon Mar 15 19:17:57 2010 +0100 edac: Remove EDAC_DEBUG_VERBOSE This option differs from EDAC_DEBUG only by printing the file and line of where the debug statement is placed, which contains unneeded information. So remove it. Signed-off-by: Borislav Petkov Acked-by: Doug Thompson commit ad6a32e96939a0eb0eb382e7d78dbf33457aed1a Author: Borislav Petkov Date: Tue Mar 9 12:46:00 2010 +0100 amd64_edac: Sanitize syndrome extraction Remove the two syndrome extraction macros and add a single function which does the same thing but with proper typechecking. While at it, make sure to cache ECC syndrome size and dump it in debug output. Signed-off-by: Borislav Petkov commit bf676945cb5bfe455321f57968967c18976f4995 Author: H. Peter Anvin Date: Tue Aug 3 07:00:16 2010 -0700 um, x86: Cast to (u64 *) inside set_64bit() After tightening up the types passed to set_64bit(), the cast to (phys_t *) triggers a warning apparently because phys_t is defined as "unsigned long" when building on 64 bits; however, u64 is defined as "unsigned long long". This is, however, a explicit cast inside a size-specific call, so just make the cast explicitly (u64 *). Signed-off-by: H. Peter Anvin Cc: Jeff Dike LKML-Reference: commit 5aa06930fbcfcb6b03fcb18b753122b10ac47a87 Author: Hong Liu Date: Mon Jul 26 10:06:31 2010 +0100 intel_scu_ipc: fix size field for intel_scu_ipc_command Size for PMIC read/write command is byte, while it is DWORD for other IPC commands. Signed-off-by: Hong Liu Signed-off-by: ALan Cox Signed-off-by: Matthew Garrett commit 77e01d6d177f060f466417fa32fc3e1381a73502 Author: Hong Liu Date: Mon Jul 26 10:06:12 2010 +0100 intel_scu_ipc: return -EIO for error condition in busy_loop Signed-off-by: Hong Liu Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit 215c330fe92be8d9f74bc292ea085dbe2ace6bf5 Author: Hong Liu Date: Mon Jul 26 10:05:52 2010 +0100 intel_scu_ipc: fix data packing of PMIC command on Moorestown Data is 2-byte per entry for PMIC read-modify-update command. Signed-off-by: Hong Liu Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit 6c8d0fdbe88e8bb1a07fa9a2830767cc180f7d1b Author: Andy Ross Date: Mon Jul 26 10:05:03 2010 +0100 Clean up command packing on MRST. Don't pass more bytes in the command length field than we filled. Signed-off-by: Andy Ross Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit ed6f2b4da32913875355f5c9cbbb38e4168b7801 Author: Arjan van de Ven Date: Mon Jul 26 10:04:37 2010 +0100 zero the stack buffer before giving random garbage to the SCU some messages take 4 bytes, but only fill 3 bytes.... this patch makes sure that whatever we send to the SCU is zeroed first Signed-off-by: Arjan van de Ven Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit 51cd525dce018f298568d8e2e769b1a698ef91cd Author: Arjan van de Ven Date: Mon Jul 26 10:04:24 2010 +0100 Fix stack buffer size for IPC writev messages The stack buffer for IPC messages was 16 bytes, limiting messages to a size of 4 (each message is 32 bit). However, the touch screen driver is trying to send messages of size 5.... (AC: Set to 20 bytes having checked the max size allowed) Signed-off-by: Arjan van de Ven Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit 9dd3adeb00b14d4b3d106360e2e33272deab35f3 Author: Alan Cox Date: Mon Jul 26 10:03:58 2010 +0100 intel_scu_ipc: Use the new cpu identification function This provides an architecture level board identify function to replace the cpuid direct usage Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit a5b74e69e1238eb46a6fcf2b9dc9d0e4efbb4e46 Author: Sreedhara DS Date: Mon Jul 26 10:03:30 2010 +0100 intel_scu_ipc: tidy up unused bits Delete unused constants IPC_CMD_INDIRECT_RD and IPC_CMD_INDIRECT_WR Remove multiple inclusion of header file "asm/mrst.h" Signed-off-by: Sreedhara DS Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit 804f8681a99da2aa49bd7f0dab3750848d1ab1bc Author: Sreedhara DS Date: Mon Jul 26 10:03:10 2010 +0100 Remove indirect read write api support. The firmware of production devices does not support this interface so this is dead code. Signed-off-by: Sreedhara DS Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit e3359fd5d2d97f4d3bca5778e35427b07a2b1060 Author: Sreedhara DS Date: Mon Jul 26 10:02:46 2010 +0100 intel_scu_ipc: Support Medfield processors Changes to work on bothMmoorestown and Medfield New pci id added for Medfield Return type of ipc_data_readl chnaged from u8 to u32 Signed-off-by: Sreedhara DS Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit 14d10f0a48cdfa76773cadcbf0deb233282f6b94 Author: Sreedhara DS Date: Mon Jul 26 10:02:25 2010 +0100 intel_scu_ipc: detect CPU type automatically Intel SCU message formats depend upon the processor type. Replace the module option with automatic detection of the processor type. Signed-off-by: Sreedhara DS Signed-off-by: Matthew Garrett commit a00cd11b3986f4ab9b43f553785c3f9e8fb64323 Author: Jan Engelhardt Date: Tue Aug 3 00:40:10 2010 +0200 x86 plat: limit x86 platform driver menu to X86 My .config contains ACER_WMI=m. On SPARC. That does not make sense. Restrict the x86 platform driver menu to x86. Signed-off-by: Jan Engelhardt Signed-off-by: Matthew Garrett commit 500de3dd46ac9f9ae9d124634c68907b7d50d2cb Author: Thomas Renninger Date: Thu Jul 29 22:30:24 2010 +0200 acpi ec_sys: Be more cautious about ec write access - Set Kconfig option default n - Only allow root to read/write io file (sever bug!) - Introduce write support module param -> default off - Properly clean up if any debugfs files cannot be created Signed-off-by: Thomas Renninger CC: mjg59@srcf.ucam.org CC: platform-driver-x86@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: astarikovskiy@suse.de Signed-off-by: Matthew Garrett commit de4f10466e9347a2f1bfe39e501539557bed2c4b Author: Thomas Renninger Date: Thu Jul 29 22:08:44 2010 +0200 acpi ec: Fix possible double io port registration which will result in a harmless but ugly WARN message on some machines. Signed-off-by: Thomas Renninger CC: mjg59@srcf.ucam.org CC: platform-driver-x86@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: astarikovskiy@suse.de CC: akpm@linux-foundation.org Signed-off-by: Matthew Garrett commit 7a0691c16f795cb7b69dcbaa61543e73b8865c4f Author: Thomas Renninger Date: Thu Jul 29 12:28:00 2010 +0200 hp-wmi: acpi_drivers.h is already included through acpi.h two lines below Signed-off-by: Thomas Renninger CC: linux-acpi@vger.kernel.or CC: platform-driver-x86@vger.kernel.org CC: mjg@redhat.com Signed-off-by: Matthew Garrett commit c4775062d57c762de37ff93fb5f8611320c25e2a Author: Thomas Renninger Date: Thu Jul 29 12:27:59 2010 +0200 hp-wmi: Fix mixing up of and/or directive This should have been an "and". Additionally checking for !obj is even better. Signed-off-by: Thomas Renninger CC: linux-acpi@vger.kernel.or CC: platform-driver-x86@vger.kernel.org CC: mjg@redhat.com Signed-off-by: Matthew Garrett commit 4519169b8f096957e4474e9a17206b2026dab0b3 Author: Axel Lin Date: Mon Jul 5 17:21:10 2010 +0800 dell-laptop: make dell_laptop_i8042_filter() static Make dell_laptop_i8042_filter() static as it's used only in dell-laptop.c Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit 45036ae14a0161e9a0f542b6cb7ed55790f73f5b Author: Axel Lin Date: Mon Jul 5 15:29:00 2010 +0800 asus-laptop: fix asus_input_init error path This patch includes below fixes: 1. return -ENOMEM instead of 0 if input_allocate_device fail. 2. fix wrong goto if sparse_keymap_setup fail. 3. fix wrong goto if input_register_device fail. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit 8700e1612e19f752be507f7fdcd8b48ba1b425ee Author: Axel Lin Date: Thu Jul 8 09:50:30 2010 +0800 msi-wmi: make needlessly global symbols static backlight is needlessly defined global. This patch makes the symbol static. Signed-off-by: Axel Lin Acked-by: Anisse Astier Signed-off-by: Matthew Garrett commit 6c3f6e6c575a0a992429427d4978c6091756a526 Author: Pierre Ducroquet Date: Thu Jul 29 11:56:59 2010 +0200 toshiba-acpi: Add support for Toshiba Illumination. Add support for Toshiba Illumination. This is a set of LEDs installed on some Toshiba laptops. It is controlled through ACPI, the commands has been found through reverse engineering. It has been tested on a Toshiba Qosmio G50-122. Signed-off-by: Pierre Ducroquet Signed-off-by: Matthew Garrett commit 5ca56718917a353a7a916b182f6d7f1f2479c5bf Author: Randy Dunlap Date: Fri Jul 23 09:41:34 2010 -0700 compal-laptop: depends on POWER_SUPPLY compal-laptop uses power_supply interfaces so it should depend on POWER_SUPPLY. ERROR: "power_supply_register" [drivers/platform/x86/compal-laptop.ko] undefined! ERROR: "power_supply_unregister" [drivers/platform/x86/compal-laptop.ko] undefined! Signed-off-by: Randy Dunlap Cc: Cezary Jackiewicz Cc: Matthew Garrett Cc: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett commit 8950778704cf8483cc5cc0140f557adf0d3f45a5 Author: Alek Du Date: Tue Jul 13 10:56:25 2010 +0100 gpio: Add PMIC GPIO block support Moorestown has PMIC chip which contains GPIO blocks. The PMIC chip is connected to Langwell by SPI interface. So this GPIO driver will be regarded as SPI GPIO expander though the actual GPIO access is through IPC and SRAM. The SPI master contoller will probe this device driver by parsing SPIB table. Cleaned up for new IPC, GPE removed and some printk and other tidying by Alan Cox. Fixes for points noted by Matthew Garrett Signed-off-by: Alek Du Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit b52e04216fcd86968c01ad0cfdb249375f19134d Author: Thomas Renninger Date: Fri Jul 16 13:11:33 2010 +0200 ACPI: Register EC io ports in /proc/ioports Formerly these have been exposed through /proc/.. Better register them where all IO ports should get registered and scream loud if someone else claims to use them. EC data and command port typically should show up like this then: ... 0060-0060 : keyboard 0062-0062 : EC data 0064-0064 : keyboard 0066-0066 : EC command 0070-0071 : rtc0 ... Signed-off-by: Thomas Renninger CC: Alexey Starikovskiy CC: Len Brown CC: linux-kernel@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: Bjorn Helgaas CC: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett commit 9827886dce77c47c378ce3154689cea2c45c731d Author: Thomas Renninger Date: Fri Jul 16 13:11:32 2010 +0200 ACPI: Provide /sys/kernel/debug//ec/ec0/io for binary access to the EC A userspace app to easily read/write the EC can be found here: ftp://ftp.suse.com/pub/people/trenn/sources/ec/ec_access.c Multiple ECs are not supported, but shouldn't be hard to add as soon as the ec driver itself will support them. Signed-off-by: Thomas Renninger CC: Alexey Starikovskiy CC: Len Brown CC: linux-kernel@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett commit 1195a098168fcacfef1cd80d05358e52fb366bf6 Author: Thomas Renninger Date: Fri Jul 16 13:11:31 2010 +0200 ACPI: Provide /sys/kernel/debug/ec/... This patch provides the same information through debugfs, which previously was provided through /proc/acpi/embedded_controller/*/info This is the gpe the EC is connected to and whether the global lock gets used. The io ports used are added to /proc/ioports in another patch. Beside the fact that /proc/acpi is deprecated for quite some time, this info is not needed for applications and thus can be moved to debugfs instead of a public interface like /sys. Signed-off-by: Thomas Renninger CC: Alexey Starikovskiy CC: Len Brown CC: linux-kernel@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: Bjorn Helgaas CC: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett commit cd89e08fa020f5a882f922e3c9e2628235ca6715 Author: Thomas Renninger Date: Fri Jul 16 13:11:37 2010 +0200 Documentation: Add new /sys/kernel/debug/ec/* files to ABI Signed-off-by: Thomas Renninger CC: Alexey Starikovskiy CC: Len Brown CC: linux-kernel@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett commit 925b108918c9a2ac58b4fd0994f4a9e63e11521c Author: Thomas Renninger Date: Fri Jul 16 13:11:36 2010 +0200 X86 platform driver: Fix section mismatch in wmi.c The .add function must not be declared __init. Signed-off-by: Thomas Renninger CC: Alexey Starikovskiy CC: Len Brown CC: linux-kernel@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett commit a420e46412ad9d33c7174cd4311b91728122e2c4 Author: Thomas Renninger Date: Fri Jul 16 13:11:35 2010 +0200 X86 platform drivers: Remove EC dump from thinkpad_acpi There is a general interface for that now (provided by other patches in this patch series): /sys/kernel/debug/ec/*/io Signed-off-by: Thomas Renninger CC: Alexey Starikovskiy CC: Len Brown CC: linux-kernel@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org CC: Henrique de Moraes Holschuh CC: ibm-acpi-devel@lists.sourceforge.net Signed-off-by: Matthew Garrett commit 49c6c5ff924cecc0b6260109a510b7ed4c970dc5 Author: Thomas Renninger Date: Fri Jul 16 13:11:34 2010 +0200 ACPI: Remove /proc/acpi/embedded_controller/.. Other patches in this series add the same info to /sys/... and /proc/ioports. The info removed should never have been used in an application, eventually someone read it manually. /proc/acpi is deprecated for more than a year anyway... Signed-off-by: Thomas Renninger CC: Alexey Starikovskiy CC: Len Brown CC: linux-kernel@vger.kernel.org CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett commit 9fab10cdf58099beff08d74f6b4a6633305c5754 Author: Axel Lin Date: Wed Jul 7 08:21:48 2010 +0800 panasonic-laptop: fix acpi_pcc_write_sset return value In current implementation, acpi_pcc_write_sset return 1 if write is successful, 0 if write is failed. But all the callers consider acpi_pcc_write_sset return 0 if write is successful and return negtive if write is failed. This patch changes the implementation of acpi_pcc_write_sset to return 0 if write is successful, -EIO if write is failed. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit bfa47960f957c021a4d626b051668d2f66cadf23 Author: Axel Lin Date: Tue Jul 20 15:19:55 2010 -0700 eeepc-laptop: fix hotplug_disabled module_param permissions The hotplug_disabled module parameter is determinated at the module load time. Change the value after the module is loaded does not make sense and has no effect at all, thus set the permissions to 0444 instead of 0644. Signed-off-by: Axel Lin Cc: Corentin Chary Cc: Matthew Garrett Cc: Alan Jenkins Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit c26d85cb90e178d1e3df6a78d064f8731f154a5e Author: Axel Lin Date: Tue Jul 20 15:19:55 2010 -0700 asus-laptop: fix wapf, wlan_status and bluetooth_status module_param permissions The wapf module parameters defines the behavior of the Fn+Fx wlan key. The wlan_status and bluetooth_status module parameters are for setting the wlan/bluetooth status on boot. All above module parameters are determinated only at the module load time. Change the value after the module is loaded does not make sense and has no effect at all, thus set the permissions to 0444 instead of 0644. Signed-off-by: Axel Lin Cc: Corentin Chary Cc: Matthew Garrett Cc: Alan Jenkins Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit ff2367d1d5b8f76005899cd636fac5b82a881ab0 Author: Axel Lin Date: Tue Jul 20 15:19:54 2010 -0700 acer-wmi: remove non-used acer_quirks struct definition Remove non-used acer_quirks struct definition. Signed-off-by: Axel Lin Cc: Carlos Corbacho Cc: Matthew Garrett Cc: Thomas Renninger Cc: Alan Jenkins Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 7677fbdff16f5b817bc3dc5d194a8b3350f8f9cb Author: Axel Lin Date: Tue Jul 20 15:19:53 2010 -0700 acer-wmi: fix memory leaks in wmab_execute error path When acpi_evaluate_object() is passed ACPI_ALLOCATE_BUFFER, the caller must kfree the returned buffer if AE_OK is returned. Call Trace: wmab_execute -> wmi_evaluate_method -> acpi_evaluate_object Thus if callers of wmab_execute() pass ACPI_ALLOCATE_BUFFER, the return buffer must be kfreed if wmab_execute return AE_OK. [akpm@linux-foundation.org: avoid multiple return points, remove unneeded cast, remove unneeded initialisation of `status'] Signed-off-by: Axel Lin Acked-by: Carlos Corbacho Cc: Matthew Garrett Cc: Thomas Renninger Cc: Alan Jenkins Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 669048639ca6d3fdfb2e75dd77b8f49434d57625 Author: Axel Lin Date: Tue Jul 20 15:19:52 2010 -0700 acer-wmi: fix memory leaks in WMID_set_capabilities and get_wmid_devices When acpi_evaluate_object() is passed ACPI_ALLOCATE_BUFFER, the caller must kfree the returned buffer if AE_OK is returned. The callers of wmi_query_block() pass ACPI_ALLOCATE_BUFFER, and thus must check its return value before accessing or kfree() on the buffer. This patch adds a missing kfree(out.pointer) before exit WMID_set_capabilities() and get_wmid_devices(). Signed-off-by: Axel Lin Acked-by: Carlos Corbacho Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit f8ef3aecabe0e386303d028d02b6e5b23ac3a566 Author: Axel Lin Date: Tue Jul 20 15:19:51 2010 -0700 toshiba_acpi: rename add_device() and remove_device() to create_toshiba_proc_entries() and remove_toshiba_proc_entries() To improve readability rename add_device() to create_toshiba_proc_entries() and rename remove_device() to remove_toshiba_proc_entries(). Signed-off-by: Axel Lin Cc: Matthew Garrett Cc: Márton Németh Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit bc28596a8fe5034ef776b0be2e0bf5629a31f746 Author: Axel Lin Date: Tue Jul 20 15:19:51 2010 -0700 hp-wmi: add return value checking for input_allocate_device() Add error checking and return -ENOMEM if input_allocate_device() fail. Signed-off-by: Axel Lin Acked-by: Thomas Renninger Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 1bd1ca1f4ce99c5be041bfc2997e394cdb5240dc Author: Axel Lin Date: Tue Jul 20 15:19:50 2010 -0700 toshiba_acpi: make remove_device() and add_device() void remove_device() and add_device() are not related to ACPI APIs, it does not make sense to return acpi_status for both functions. Current implementation of add_device() always AE_OK, thus the return value checking for add_device() always return false for ACPI_FAILURE(status). This patch makes add_device() to be void and remove the unnecessary return value checking. remove_proc_entry() won't fail, thus change remove_device() to be void. Signed-off-by: Axel Lin Cc: Matthew Garrett Cc: Márton Németh Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit a0dba697eec78fb2d4e2b76b83104a2b251ae70d Author: Axel Lin Date: Tue Jul 20 15:19:49 2010 -0700 acerhdf: fix resource reclaim in error path Fix resource reclaim in below cases: 1. acerhdf_register_platform() does not properly handle platform_device_alloc() failure and platform_device_add() failure This patch adds error handing for acerhdf_register_platform(). 2. acerhdf_register_platform() return err with acerhdf_dev == NULL. as a result, acerhdf_unregister_platform() does not do resource reclaim in acerhdf_init() error path. This patch adds error handing for acerhdf_register_platform(), thus correct the error handing path in acerhdf_init(). goto out_err instead of err_unreg if acerhdf_register_platform() fail. 3. platform_device_del() should only used in error handling. Current implementation missed a platform_device_put() in acerhdf_exit. This patch fixes it by using platform_device_unregister() instead of platform_device_del() in acerhdf_unregister_platform. Signed-off-by: Axel Lin Acked-by: Peter Feuerer Cc: Matthew Garrett Acked-by: Borislav Petkov Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 6a984a06487129f013ee2df6ce98b6cfada1e7b1 Author: Axel Lin Date: Tue Jul 20 15:19:48 2010 -0700 asus-laptop: return proper error for store_ledd if write_acpi_int fail In current implementation, store_ledd() does not return error if write_acpi_int fail. This patch fixes it by return -ENODEV if write_acpi_int fail. Signed-off-by: Axel Lin Cc: Matthew Garrett Cc: Corentin Chary Cc: Alan Jenkins Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 9fb866f317def195bb794120e13d1d73c2a94bb2 Author: Axel Lin Date: Tue Jul 20 15:19:47 2010 -0700 asus-laptop: fix incorrect return value for write_acpi_int_ret if handle is NULL According to the comments of write_acpi_int_ret(), write_acpi_int_ret() should return 0 if write is successful, -1 else. Thus if handle is NULL, the write does not happen, it should return -1. Signed-off-by: Axel Lin Cc: Matthew Garrett Cc: Corentin Chary Cc: Alan Jenkins Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit e38f052ba5fd4d3d8eb547e7d0c6bc1143a2babd Author: Axel Lin Date: Tue Jul 20 15:19:46 2010 -0700 msi-laptop: make struct rfkill_ops const rfkill uses a const struct rfkill_ops pointer. Signed-off-by: Axel Lin Cc: Matthew Garrett Cc: Lennart Poettering Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 67af7111689b0b615d27b1a5fcc553bee4639831 Author: Axel Lin Date: Tue Jul 20 15:19:45 2010 -0700 fujitsu-laptop: make needlessly global symbols static The following symbols are needlessly defined global: logolamp_led kblamps_led This patch makes the symbols static. Signed-off-by: Axel Lin Cc: Matthew Garrett Acked-by: Jonathan Woithe Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit df92754dddc77003c6be9540ff91bf89fcfce890 Author: Axel Lin Date: Tue Jul 20 15:19:44 2010 -0700 classmate-laptop: make needlessly global symbols static cmpc_accel_sensitivity_attr is needlessly defined global. This patch makes the symbol static. Signed-off-by: Axel Lin Acked-by: Thadeu Lima de Souza Cascardo Cc: Daniel Oliveira Nascimento Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit fedae5ad61fc213eda78d4905316eb50e35b6c8f Author: Axel Lin Date: Tue Jul 20 15:19:43 2010 -0700 acerhdf: make needlessly global symbols static The following symbols are needlessly defined global: thz_dev cl_dev acerhdf_dev acerhdf_dev_ops acerhdf_cooling_ops This patch makes the symbols static. Signed-off-by: Axel Lin Acked-by: Borislav Petkov Acked-by: Peter Feuerer Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 3bf460f7b2767df63b76257332c4a9a29d5733c1 Author: Axel Lin Date: Tue Jul 20 15:19:42 2010 -0700 asus_acpi: fix coding style to improve readability In the case of no match ( hotk->model == END_MODEL ), the only posible case to return 0 is to have a Samsung P30 detected. This patch improves readability by moving related code after if/else clause to be inside if clause. Signed-off-by: Axel Lin Cc: Corentin Chary Cc: Karol Kozimor Cc: Matthew Garrett Cc: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit d47bb5b227f103f9bc0e572f478ac6b2a08fc2b2 Author: Axel Lin Date: Tue Jul 20 15:19:41 2010 -0700 asus_acpi: fix a memory leak in asus_hotk_get_info() In the case of no match ( hotk->model == END_MODEL ), model sholud be kfreed before return AE_OK. This patch includes below fixes: 1. adds a missing kfree(model) before return AE_OK. 2. asus_hotk_get_info should return int, thus return 0 instead of AE_OK. Signed-off-by: Axel Lin Cc: Corentin Chary Cc: Karol Kozimor Cc: Matthew Garrett Cc: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 80183a4b637982d56965e4a27b823c9a29d185b3 Author: Axel Lin Date: Tue Jul 20 15:19:40 2010 -0700 compal-laptop/fujitsu-laptop/msi-laptop: make dmi_check_cb to return 1 instead of 0 dmi_check_system() walks the table running matching functions until someone returns non zero or we hit the end. This patch makes dmi_check_cb to return 1 so dmi_check_system() return immediately when a match is found. Signed-off-by: Axel Lin Acked-by: Jonathan Woithe Cc: Matthew Garrett a Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 9be0fcb5ed46509f859542fb2871ac2d277b5407 Author: Roald Frederickx Date: Tue Jul 20 15:19:39 2010 -0700 compal-laptop: add JHL90, battery & hwmon interface The driver now supports the Compal JHL90 (which I use) and it has some added features. The biggest novelties are a battery interface (power_supply) and a temperature and fan control interface (hmwon). It also adds a power-off feature to the backlight subsystem and it exports a few files that can enable/disable wake_on_XXX events. Much of the original code of the old features is still there, but I've changed some names to keep the naming more coherent with the added functionalities. (Sorry for the huge patch) Some technical stuff about the new driver: First of all, I'm not sure if the extra features also work on the other Compal boards. Currently they only get enabled if the DMI data indicates you are on a JHL90 board. Secondly, I've noticed a quirk in my fan controller. I have to re-send the wanted pwm-level to the controller every so often. If I don't do this, the fanspeed will slowly rise until after a couple of minutes it's at full speed. (Note that every normal userland application will probably update the pwm-level every so often anyway, based on temperature readings, so this might not be an issue in practice) If this turns out to be a problem with all the controllers, maybe we should implement a kernel timer and have the driver re-send the pwm level every XX seconds to make this transparent to userspace? (However, I couldn't immediately find a way to do this cleanly.) Additional information can be found in the source comments. [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: add missing semicolon] Signed-off-by: Roald Frederickx Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit c28341455c080356508cc375ba440018e150021c Author: Randy Dunlap Date: Tue Jul 20 15:19:39 2010 -0700 compal-laptop: uses hwmon interfaces, depends on HWMON compal-laptop uses hwmon interfaces, so it should depend on HWMON. compal-laptop.c:(.devinit.text+0x4071f): undefined reference to `hwmon_device_register' compal-laptop.c:(.devexit.text+0x6ec0): undefined reference to `hwmon_device_unregister' Signed-off-by: Randy Dunlap Cc: Roald Frederickx Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 8e4e2efdfab5448b0a01be8883d62fc90cce2a7e Author: Axel Lin Date: Tue Jul 20 15:19:34 2010 -0700 fujitsu-laptop: remove unnecessary input_free_device calls input_free_device() should only be used if input_register_device() was not called yet or if it failed. This patch removes unnecessary input_free_device calls. Signed-off-by: Axel Lin Acked-by: Jonathan Woithe Acked-by: Dmitry Torokhov Cc: Matthew Garrett a Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 24964639e132375f3d7eee9354b565aaa824d1dd Author: Peter Feuerer Date: Tue Jul 20 15:19:33 2010 -0700 acerhdf: add AO531 and many BIOS versions for 1410, 1810xx and packard bell netbooks Signed-off-by: Peter Feuerer Cc: Borislav Petkov Cc: Andreas Mohr Cc: Len Brown Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 5cf4c07a2805388b5645079039d9a8b4b9269e08 Author: Rahul Chaturvedi Date: Tue Jul 20 15:19:33 2010 -0700 acerhdf: driver didn't verify the pointers in which it got product information Driver didn't verify the pointers in which it got product information back from DMI; on QEMU one of the pointers came back null, which made the driver crash and subsequently caused a kernel panic. Signed-off-by: Rahul Chaturvedi Signed-off-by: Peter Feuerer Cc: Borislav Petkov Cc: Andreas Mohr Cc: Len Brown Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 210183d4af87cc70d7e4552d325f238734cade15 Author: Peter Feuerer Date: Tue Jul 20 15:19:32 2010 -0700 acerhdf: remove "chk_off" as it was only needed for T31 netbooks Remove "chk_off" as it was only needed for T31 netbooks. But those netbooks can also be handled just with "cmd_off" register (0x9e) for reading the state back. Signed-off-by: Peter Feuerer Cc: Borislav Petkov Cc: Andreas Mohr Cc: Len Brown Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit 887b7ca9c55a5dd53413a467f7b02821ba7a6557 Author: Peter Feuerer Date: Tue Jul 20 15:19:30 2010 -0700 acerhdf: add new BIOS versions Add new BIOS versions for Acer 1410 and 1810xx and Packard Bell netbooks. Fixed registers of Acer AOA150 BIOS version v0.3114: Old registers caused Fan to spin up at every temperature check. Signed-off-by: Peter Feuerer Cc: Borislav Petkov Cc: Andreas Mohr Cc: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit b096667bc3f01e2468df56d4a241dc5231b2f2aa Author: Thomas Renninger Date: Tue Jul 20 15:19:29 2010 -0700 hp-wmi: return -ENODEV if BIOS does not export any supported hp wmi guid Signed-off-by: Thomas Renninger Cc: Matthew Garrett Cc: Len Brown Cc: Axel Lin Signed-off-by: Andrew Morton Signed-off-by: Matthew Garrett commit ae42f234470662aefe65ab59a0ef228f1f6f9c77 Author: Matthew Garrett Date: Thu Jul 15 14:23:42 2010 -0400 toshiba-acpi: Add an extra couple of keys Thomas Bächler reports that his machine generates two keycodes for zooming in and out. Add these to the default keymap. Signed-off-by: Matthew Garrett Cc: Thomas Bächler commit 08db2b3141b99b476749201eb8e164b39fa7a4ca Author: Axel Lin Date: Thu Jul 1 10:18:01 2010 +0800 sony-laptop: use platform_device_unregister in sony_pf_remove platform_device_unregister calls platform_device_del and platform_device_put, thus this change is logically equivalent to original code. I made this change because the documents in platform.c shows that: platform_device_del and platform_device_put must _only_ be externally called in error cases. All other usage is a bug. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit 32ab72e7ca7aed399b81a3ffec26d7353bd33581 Author: Axel Lin Date: Wed Jun 30 17:25:46 2010 +0800 dell-wmi: fix a memory leak If dell_new_hk_type is true, dell_legacy_wmi_keymap will point to a memory allocated in setup_new_hk_map(). In this case, the memory is not freed in current implementation. This patch fixes the leak by kfree(dell_wmi_keymap) if dell_new_hk_type is true. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit d53bf0f32410c8c738935aa3d9740d66d39ba967 Author: Axel Lin Date: Wed Jun 30 13:32:16 2010 +0800 acer-wmi: make dmi_matched to return 1 instead of 0 dmi_check_system() walks the table running matching functions until someone returns non zero or we hit the end. This patch makes dmi_matched to return 1 so dmi_check_system() return immediately when a match is found. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit 370525df9dfb4f55dfc177b0c31c26d77694c992 Author: Axel Lin Date: Wed Jun 30 10:20:23 2010 +0800 acer-wmi: set permissions on interface file to S_IRUGO The interface file is not writable, thus set permissions to S_IRUGO. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit d8eca1105fe2039e102c6a8a915d0af937b1b593 Author: Axel Lin Date: Tue Jun 29 11:09:47 2010 +0800 asus-laptop: fix a memory leak in asus_laptop_get_info error path The callers of write_acpi_int_ret() pass ACPI_ALLOCATE_BUFFER, the caller must kfree the returned buffer if AE_OK is returned. This patch adds a missing kfree(buffer.pointer) before return -ENOMEM if kstrdup fail. Signed-off-by: Axel Lin Acked-by: Corentin Chary Signed-off-by: Matthew Garrett commit 1492616a434dae1908d0da2d6ee6605ca5a77e6f Author: Axel Lin Date: Mon Jun 28 09:30:45 2010 +0800 wmi: fix a memory leak in wmi_notify_debug When acpi_evaluate_object() is passed ACPI_ALLOCATE_BUFFER, the caller must kfree the returned buffer if AE_OK is returned. The callers of wmi_get_event_data() pass ACPI_ALLOCATE_BUFFER, and thus must check its return value before accessing or kfree() on the buffer. This patch adds return value checking for wmi_get_event_data() and adds a missing kfree(obj) in the end of wmi_notify_debug Signed-off-by: Axel Lin Acked-by: Thomas Renninger Signed-off-by: Matthew Garrett commit d5164dbf1f651d1e955b158fb70a9c844cc91cd1 Author: Islam Amer Date: Thu Jun 24 13:39:47 2010 -0400 dell-wmi: Add support for eject key on Dell Studio 1555 Fixes pressing the eject key on Dell Studio 1555 does not work and produces message : dell-wmi: Unknown key 0 pressed Signed-off-by: Islam Amer commit c715a38bb7fc22fb8018b916c8a9f7ff017a8ad7 Author: Alan Cox Date: Fri Jun 18 14:05:52 2010 +0100 rar: Move the RAR driver into the right place as its now clean We exit staging rar! rar! rar!... Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett Acked-by: Greg Kroah-Hartman commit 97ba0af097dc3428b85dc6a1282968d7ba9510f5 Author: Axel Lin Date: Thu Jun 3 15:18:03 2010 +0800 acer-wmi/hp-wmi: use platform_device_unregister instead of platform_device_del in module_exit platform_device_unregister will also call platform_device_put() to drop reference count. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit a5167c5b3a842b865b0ca87202b95cc8a84c9e7e Author: Axel Lin Date: Thu Jun 3 11:45:45 2010 +0800 wmi: fix memory leak in parse_wdg This patch properly kfree out.pointer and gblock in error path. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit 410d44c74cf9942e3055d5b7d73953fac8efbacb Author: Rezwanul Kabir Date: Wed Jun 23 12:02:43 2010 -0500 dell-laptop: Add another Dell laptop family to the DMI whitelist This is to support Precision M4500 and others. Signed-off-by: Rezwanul Kabir Signed-off-by: Matthew Garrett commit 1c79632bd011de84f32dcdf7d92b65bb61b1e6da Author: Axel Lin Date: Tue Jun 22 16:17:38 2010 +0800 acer-wmi: fix resource reclaim in acer_wmi_init error path This patch fixes the resource reclaim in acer_wmi_init error path. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit e9ec7f3539cbeae8ffc5d7b30543e5612df5cba3 Author: Jiri Slaby Date: Mon Jun 21 17:40:15 2010 +0200 X86: intel_ips, check for kzalloc properly Stanse found that there are two NULL checks missing in ips_monitor. So check their value too and bail out appropriately if the allocation failed. While at it, add one more kfree to the fail path. It is not necessary now, but may be needed in the future when a new allocation is added. And for completeness. Also remove unneeded initialization of the variables. They are all set right after their declaration. Signed-off-by: Jiri Slaby Signed-off-by: Matthew Garrett Acked-by: Jesse Barnes commit dfec5c48cdfdcb08d73d24cbf277de543ef864ae Author: Axel Lin Date: Thu Jun 10 16:06:40 2010 +0800 hp-wmi: add error handling for hp_wmi_init Current implementation in hp_wmi_init does not check any error and always return success. This patch properly handles recource reclaim and return err in error path. Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit 35f2915c3bd0cd6950bdd9d461de565e8feae852 Author: Feng Tang Date: Tue Jun 1 13:07:34 2010 +0100 intel_scu_ipc: add definitions for vRTC related command Signed-off-by: Feng Tang Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit b95d13eaf3d4ea093aba95c7f615f3b10708a2c4 Author: Thadeu Lima de Souza Cascardo Date: Wed Jun 9 16:48:39 2010 -0300 classmate-laptop: should check for NULL as retval for rfkill_alloc rfkill_alloc returns NULL when it fails if RFKILL is enabled. When RFKILL is disabled, its return value of ERR_PTR(-ENODEV) is OK to use as all rfkill functions will work with it, as they are simply empty stubs. Reported-by: Alan Jenkins Cc: Johannes Berg Cc: platform-driver-x86@vger.kernel.org Cc: mjg@redhat.com Cc: don@syst.com.br Cc: rpurdie@rpsys.net Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Matthew Garrett commit 0385e5210c83b13fe685c54b6063655f80bce3ee Author: Jesse Barnes Date: Thu May 20 14:27:23 2010 -0700 IPS driver: add GPU busy and turbo checking Be sure to enable GPU turbo by default at load time and check GPU busy and MCP exceeded status correctly. Also fix up CPU power comparison and work around buggy MCH temp reporting. Signed-off-by: Jesse Barnes Signed-off-by: Matthew Garrett commit aa7ffc01d254c91a36bf854d57a14049c6134c72 Author: Jesse Barnes Date: Fri May 14 15:41:14 2010 -0700 x86 platform driver: intelligent power sharing driver Intel Core i3/5 platforms with integrated graphics support both CPU and GPU turbo mode. CPU turbo mode is opportunistic: the CPU will use any available power to increase core frequencies if thermal headroom is available. The GPU side is more manual however; the graphics driver must monitor GPU power and temperature and coordinate with a core thermal driver to take advantage of available thermal and power headroom in the package. The intelligent power sharing (IPS) driver is intended to coordinate this activity by monitoring MCP (multi-chip package) temperature and power, allowing the CPU and/or GPU to increase their power consumption, and thus performance, when possible. The goal is to maximize performance within a given platform's TDP (thermal design point). Signed-off-by: Jesse Barnes Signed-off-by: Matthew Garrett commit 8cadd2831bf3abc94f4530e7fdbab7bb39b6b27d Author: Jesse Barnes Date: Mon May 10 14:26:20 2010 -0700 timer: add on-stack deferrable timer interfaces In some cases (for instance with kernel threads) it may be desireable to use on-stack deferrable timers to get their power saving benefits. Add interfaces to support this for the IPS driver. Signed-off-by: Jesse Barnes Signed-off-by: Matthew Garrett commit 81f61484f16decba0fb68400fe0036b337b4cdc7 Author: Randy Dunlap Date: Sun May 23 16:33:17 2010 -0700 platform/x86: msi-laptop depends on SERIO_I8042 msi-laptop uses i8042_*() interfaces, so it should depend on SERIO_I8042. E.g., when SERIO_I8042=m and MSI_LAPTOP=y: msi-laptop.c:(.text+0x18a7fe): undefined reference to `i8042_install_filter' msi-laptop.c:(.init.text+0xd69d): undefined reference to `i8042_remove_filter' msi-laptop.c:(.exit.text+0x19c3): undefined reference to `i8042_remove_filter' Signed-off-by: Randy Dunlap Signed-off-by: Matthew Garrett Cc: Lennart Poettering commit f35843ed8d17562f7c5da4b34a4a81b0cc450e9e Author: Thadeu Lima de Souza Cascardo Date: Wed May 26 12:00:10 2010 -0300 classmate-laptop: depends on RFKILL or RFKILL=n Randy Dunlap has reported that building classmate-laptop fails when CONFIG_RFKILL=m and CONFIG_ACPI_CMPC=y. He suggested depending on RFKILL, but, then, it will not be possible to select classmate-laptop when RFKILL is off. There's no known problem with building and using classmate-laptop with RFKILL off. So depend on RFKILL or RFKILL=n. Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Matthew Garrett Reported-by: Randy Dunlap Cc: Randy Dunlap Cc: platform-driver-x86@vger.kernel.org Cc: Daniel Oliveira Nascimento commit 0fc8f274aef03bbe85774ba30e75deb58e8a90ff Author: Julia Lawall Date: Thu May 27 18:32:15 2010 +0200 drivers/platform/x86: Eliminate a NULL pointer dereference Give different error messages if device_enum is NULL or if its type field has the wrong value. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression E,E1; identifier f; statement S1,S2,S3; @@ if ((E == NULL && ...) || ...) { ... when != if (...) S1 else S2 when != E = E1 * E->f ... when any return ...; } else S3 // Signed-off-by: Julia Lawall Signed-off-by: Matthew Garrett commit 6d96e00cef35036c513d342c4676d210b842880d Author: Thomas Renninger Date: Fri May 21 16:42:40 2010 +0200 X86 platform: hp-wmi Better match the HP WMI query interface - Improve error handling, by explictly return zero for success, error otherwise - WMI query command can have arbitrary input sized params - WMI query command can have specific output sized params (0, 4, 128,..) byte I like to go on here, but this is a rather intrusive change that should be looked at first. I am sure the one or other thing can be done better or there might be typo/bug somewhere. This did not get any testing yet, only compile tested. Next steps could be: - Eventually introduce hp_wmi_perform_{read,write}_query macros - Introduce new wireless query interface (0x1B) - more Signed-off-by: Thomas Renninger Signed-off-by: Matthew Garrett CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org commit 8dda6b0410cfc64642b2ed5b37987292f6321d0f Author: Thomas Renninger Date: Fri May 21 16:41:43 2010 +0200 x86 platform drivers: hp-wmi fix buffer size depending on ACPI version Depending on ACPI version (1.0 -> 32 bit) an integer could be 32 or 64 bit long. _WED internal concatenates two integers and the return value will be 8 byte (2* 32 bit) or 16 byte (2* 64 bit) long, depending on the ACPI version. Also the data send with the WMI event is defined to be splitted into: - Event ID -> 4 bytes - Event Data -> 4 bytes This gets messed up with new ACPI versions. But it's a HP BIOS bug that may get fixed in the future -> Support both, 16 and 8 byte _WED buffers. Also the wrong assumption that from the event data sent, only the first byte is relevant got cleaned up that it fits event_id/event_data as described above. Signed-off-by: Thomas Renninger CC: robert.moore@intel.com Signed-off-by: Matthew Garrett CC: platform-driver-x86@vger.kernel.org CC: linux-acpi@vger.kernel.org commit 1bbdfd5961e83a1e3037d9362094bd09e0b066ab Author: Thomas Renninger Date: Fri May 21 16:18:13 2010 +0200 x86 platform drivers: hp-wmi Set placeholder for unimplemented events Rather than print unknown events when we know what caused them Signed-off-by: Thomas Renninger Signed-off-by: Matthew Garrett CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org commit f6b2ff0821fb1b05a24beb6b343aa80e8a383a9e Author: Thomas Renninger Date: Fri May 21 16:18:12 2010 +0200 x86 platform drivers: hp-wmi Add media key 0x20e8 Signed-off-by: Thomas Renninger Signed-off-by: Matthew Garrett CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org commit a2806c6f00d851f11ef8725d78739d48a1ca2fe9 Author: Thomas Renninger Date: Fri May 21 16:18:11 2010 +0200 x86 platform drivers: hp-wmi Use consistent prefix string for messages. Signed-off-by: Thomas Renninger Signed-off-by: Matthew Garrett CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org commit da9a79ba5873b0f1d4dc7711ea6a96be6b69341e Author: Thomas Renninger Date: Fri May 21 16:18:10 2010 +0200 x86 platform drivers: hp-wmi Catch and log unkown event and key codes correctly Signed-off-by: Thomas Renninger Signed-off-by: Matthew Garrett CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org commit 751ae808f6b29803228609f51aa1ae057f5c576e Author: Thomas Renninger Date: Fri May 21 16:18:09 2010 +0200 x86 platform drivers: hp-wmi Reorder event id processing Event id 0x4 defines the hotkey event. No need (or even wrong) to query HPWMI_HOTKEY_QUERY if event id is != 0x4. Reorder the eventcode conditionals and use switch case instead of if/else. Use an enum for the event ids cases. Signed-off-by: Thomas Renninger Signed-off-by: Matthew Garrett CC: linux-acpi@vger.kernel.org CC: platform-driver-x86@vger.kernel.org commit 4b30fbca4f64bc70c59867ad5769c37efb587ff4 Author: Axel Lin Date: Fri May 21 17:10:33 2010 +0800 intel_menlow: fix memory leaks in error path This patch includes below fixes in error path: 1. fix a memory leak if device_create_file failed in intel_menlow_add_one_attribute 2. properly free added attributes before return error in intel_menlow_register_sensor error handler 3. properly call acpi_bus_unregister_driver before return error in intel_menlow_module_init Signed-off-by: Axel Lin Signed-off-by: Matthew Garrett commit 1ce53adf13a54375d2a5c7cdbe341b2558389615 Author: Denys Vlasenko Date: Thu Jul 29 01:47:53 2010 +0200 modpost: support objects with more than 64k sections This patch makes modpost able to process object files with more than 64k sections. Needed for huge kernel builds (allyesconfig, for example) with -ffunction-sections. 64k sections handling is covered, for example, by this document: "IA-64 gABI Proposal 74: Section Indexes" http://www.codesourcery.com/public/cxx-abi/abi/prop-74-sindex.html Signed-off-by: Denys Vlasenko Signed-off-by: Anders Kaseorg Acked-by: Sam Ravnborg Cc: Rusty Russell Cc: Andi Kleen Signed-off-by: Michal Marek commit 4696e2958b345189afebcb52e365d16ca6e403ef Author: Uwe Kleine-König Date: Fri Jul 30 20:43:20 2010 +0200 trivial: fix a typo in a filename Signed-off-by: Uwe Kleine-König Signed-off-by: Michal Marek commit 08af495f22f43eff3b5a347dc10384ebcf356e41 Author: Takashi Iwai Date: Tue Aug 3 14:39:04 2010 +0200 ALSA: hda - More relax for pending period handling Since the pending periods are often bogus and take long time until actually processed, it often results in a high CPU usage of the hd-audio workq. Overall it's better to have low CPU consumption by avoiding a too tight loop rather than the wake-up timing accuracy. Signed-off-by: Takashi Iwai commit 92f10b3f5d53f9e35da5285eb8ea4bc88082b71e Author: Takashi Iwai Date: Tue Aug 3 14:21:00 2010 +0200 ALSA: hda - Define AC_FMT_* constants Define constants for the HD-audio stream format bits, and replace the magic numbers in codes. Signed-off-by: Takashi Iwai commit 1e8943dbae98f48fc485fb9a671e94972b234cb2 Author: Jani Nikula Date: Thu Apr 15 17:07:39 2010 +0300 OMAP: DSS2: Taal: CABC workaround is Taal specific Prepare for supporting panels other than Taal in this driver. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit c8cd4547dcb350331cf80f5729ee648d8120783e Author: Tomi Valkeinen Date: Wed Jun 9 15:24:46 2010 +0300 OMAP: DSS2: Taal: Add regulator configuration support Add support for configuring regulators in the panel specific configuration data. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 0f45bddf0420ace2ddb7c4faa11f139b42c6eea5 Author: Jani Nikula Date: Fri Apr 16 14:21:14 2010 +0300 OMAP: DSS2: Taal: Print panel name in addition to revision The driver will support other panels in addition to Taal, print also the name. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit e7f6c3f2fbad84aacff1483c0f144364d8be82bc Author: Jani Nikula Date: Thu Apr 15 12:55:38 2010 +0300 OMAP: DSS2: Taal: Add panel specific configuration structure Add a structure for panel specific configration to be able to support more than one panel in the future. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 448dfe968099b130e6163bdcb4b839a2fb36484d Author: Jani Nikula Date: Thu Apr 15 12:42:16 2010 +0300 OMAP: DSS2: Taal: Configure ESD check in DSI panel data Make ESD check usage configurable in DSI panel data, as opposed to a define. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 8d3573c88a5a7b67a5fec5eb457efa3616fe56b7 Author: Tomi Valkeinen Date: Wed Jun 9 15:23:44 2010 +0300 OMAP: DSS2: Taal: Use Nokia DSI panel data Get board specific information from the Nokia DSI panel data structure instead of the DSS. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 823c8e4a8ae6c5792e0b35b49d2b63292a28575d Author: Jani Nikula Date: Thu Apr 22 15:27:36 2010 +0300 OMAP: DSS2: Add Nokia DSI command mode panel configuration struct Introduce a configuration struct for platform/board specific information of Nokia DSI command mode panels, to be used in addition to struct omap_dss_device (passed via the 'void *data' member). Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 7ae2fb1192f0510991a833ca1dd4baace9bd8977 Author: Jani Nikula Date: Tue Apr 13 10:57:52 2010 +0300 OMAP: DSS2: Taal: Add proper external TE support Add gpio irq based external TE support with timeout. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit d2b657873839fd401798ba277868fc8442997443 Author: Jani Nikula Date: Thu Apr 15 12:24:36 2010 +0300 OMAP: DSS2: Taal: Change probe error handling labels Switch from numbered to named labels to make it easier to add new labels for error handling. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 4571a023f5e9b18ca79e67ae6135b26624589ed9 Author: Jani Nikula Date: Mon Apr 12 10:23:46 2010 +0300 OMAP: DSS2: Taal: Change ESD work management Move ESD work queuing and cancelling out of taal_power_on/off() to avoid problems related to taal_esd_work() calling the power on/off functions. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit fed44b7af8d9ce4c2c3d10a2e22e34ab596568a4 Author: Jani Nikula Date: Mon Apr 12 10:25:21 2010 +0300 OMAP: DSS2: Taal: Check taal_power_on() return value in taal_resume() Change state only if power on was succesful. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 2c2fc151245df37dba17f4ae1760bfa97e4fd3c5 Author: Jani Nikula Date: Mon Apr 12 10:06:14 2010 +0300 OMAP: DSS2: Taal: Change DSI bus locking to avoid deadlock in ESD work Move dsi_bus_lock/unlock() out of taal_power_on/off() to avoid deadlock in taal_esd_work(). Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit ee52c0ae68c42c5a0c26462b141a521fcc70849a Author: Jani Nikula Date: Mon Apr 12 09:36:05 2010 +0300 OMAP: DSS2: Taal: Ensure panel is enabled in enable_te() and run_test() Bail out from taal_enable_te() and taal_run_test() if panel is not enabled. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit f2a8b75c137acb048a627379cf7e93b8b7c29191 Author: Jani Nikula Date: Fri Apr 9 14:15:12 2010 +0300 OMAP: DSS2: Taal: Improve taal_power_on() error handling Check return values and bail out on errors. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit d803bb6e68872ea474ef8caba33abb47c8ee19da Author: Jani Nikula Date: Fri Apr 9 14:01:37 2010 +0300 OMAP: DSS2: Taal: Remove ESD work cancel from driver probe error handling ESD work is never queued in probe, no need to cancel it on probe error. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 2f1e5f606a1330fa9d1d89e88670c3dec7fbe36f Author: Jani Nikula Date: Fri Apr 9 13:52:33 2010 +0300 OMAP: DSS2: Taal: Fix request_irq() error handling Separate gpio_request() and request_irq() error handling. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 75392bfe3ecc8dc89acf2165a34f8aa039346fb4 Author: Jani Nikula Date: Tue Apr 27 14:40:30 2010 +0300 OMAP: DSS2: Taal: Remove platform enable/disable After the addition of proper hardware reset, taal_hw_reset(), there's no need for an additional platform enable/disable. Remove them. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 6b316715b4b96da49fcac0fa07082692eebca8af Author: Jani Nikula Date: Wed Apr 28 11:15:18 2010 +0300 OMAP: DSS2: Taal: Add locks to protect taal data access Avoid potential race conditions in sysfs access to taal data. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 006db7b4304303f014a0c13f479715885b603e9f Author: Jani Nikula Date: Fri Apr 9 12:25:59 2010 +0300 OMAP: DSS2: Taal: Add panel hardware reset Issue a proper reset pulse on the reset line instead of just doing power on/off. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit 1cbc8703e1c510a245a7bd5e269987402ffc9e18 Author: Tomi Valkeinen Date: Thu Apr 15 16:41:07 2010 +0300 OMAP: DSS2: Taal: add locks to taal_bl_update_status taal_bl_update_status was missing locks to protect taal_data. This caused a kernel crash randomly, as the code attempted to set the brightness while the OMAP's DSI block was actually disabled. Signed-off-by: Tomi Valkeinen commit 4ffa35713e263fbf4975e14bc6f4a515b7701349 Author: Tomi Valkeinen Date: Mon Apr 12 10:40:12 2010 +0300 OMAP: DSS2: DSI: change DSI timeout functions Using nanoseconds as arguments to functions that set the DSI timeouts was perhaps not so good idea. The timeouts are based on different DSI clocks, so the possible range for the timeouts vary greatly depending on the clocks. Also, the multipliers used with the timeouts cause big gaps in the timeout range, meaning that the nanosecond based functions could cause the timeout to be quite far from the intended value. This patch changes the functions to take the plain tick values with the multiplier enable/disable bits, and sets the TA/LP_RX/HS_TX timeouts to maximum. While the timeouts could be much lower, the fact is that when TA/LP_RX/HS_TX timeout happens, we are in an error situation and not in a hurry anyway. STOP_STATE_COUNTER is a different matter, but it is only used at initialization time, and won't normally affect the performance. Signed-off-by: Tomi Valkeinen commit b63ac1e31422077bed8257a519c6668f8868ed2b Author: Tomi Valkeinen Date: Fri Apr 9 13:20:57 2010 +0300 OMAP: DSS2: DSI: handle error in synchronous write Check if the peripheral answered something, and if so, dump the data and return an error. Signed-off-by: Tomi Valkeinen commit 0c244f770f7fdb3e6779b3433aac9cfb6deb3255 Author: Tomi Valkeinen Date: Wed Jun 9 15:19:29 2010 +0300 OMAP: DSS2: DSI: change dsi_vc_dcs_read_2 parameters Change dsi_vc_dcs_read_2() data parameter to two u8 parameters to make the byte-order clear. Signed-off-by: Tomi Valkeinen commit 0f16aa0ae6b84d7ae72fbe8999e6a94cb78edd4e Author: Tomi Valkeinen Date: Mon Apr 12 09:57:19 2010 +0300 OMAP: DSS2: DSI: use a private workqueue Using the shared workqueue led to to a deadlock in the case where the display was unblanked via keyboard. What happens is something like this: - User presses a key context 1: - drivers/char/keyboard.c calls schedule_console_callback() - fb_unblank takes the console semaphore - dsi bus lock is taken, and frame transfer is started (dsi bus lock is left on) - Unblank code tries to set the panel backlight, which tries to take dsi bus lock, but is blocked while the frame transfer is going on context 2, shared workqueue, console_callback in drivers/char/vt.c: - Tries to take console semaphore - Blocks, as console semaphore is being held by context 1 - No other shared workqueue work can be run context 3, HW irq, caused by FRAMEDONE interrupt: - Interrupt handler schedules framedone-work in shared workqueue - Framedone-work is never ran, as the shared workqueue is blocked. This means that the unblank thread stays blocked, which means that context 2 stays blocked. While I think the real problem is in keyboard/virtual terminal code, using a private workqueue in the DSI driver is perhaps safer and more robust than using the shared one. The DSI works should not be delayed more than a millisecond or so, and even if the private workqueue gives us no hard promise of doing so, it's still safer bet than the shared workqueue. Signed-off-by: Tomi Valkeinen commit 86a7867ebff675f5f5816222c5a2c64b35f8bea6 Author: Tomi Valkeinen Date: Tue Mar 16 16:19:06 2010 +0200 OMAP: DSS2: DSI: print errors in dsi_vc_flush_receive_data() dsi_vc_flush_receive_data() is meant to dump data when something has gone wrong, and thus we should use DSSERR, not DSSDBG. Signed-off-by: Tomi Valkeinen commit 1ceafc00910439c8e5450fae189b69427725992c Author: Ville Syrjälä Date: Wed Mar 17 21:28:50 2010 +0200 OMAP: DSS2: OMAPFB: Add some locking debug checks Trigger WARN_ON() messages from various places in the code in case the memory region is not currently locked. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 3d84b65aa63833a2ac07b1cc626984a1e1485fed Author: Ville Syrjälä Date: Wed Mar 17 21:42:06 2010 +0200 OMAP: DSS2: OMAPFB: Make lockdep happy When more than one memory region needs to be lockd at the same time use the memory region id to fix the order in which the locks are taken. Also one needs to use the _nested() versions of the locking primitives. The memory region id can serve as the lock class there as well. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 2f642a17503838e256b8b7e9f1153512e2efc38b Author: Ville Syrjälä Date: Wed Mar 17 20:58:03 2010 +0200 OMAP: DSS2: OMAPFB: Convert the memory region locking to rwsem R/W semaphore is a good fit for the memory region locking pattern. So use it. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 430571d59a0b51c6541c153ad8b08e72fef26098 Author: Ville Syrjälä Date: Wed Mar 17 20:43:23 2010 +0200 OMAP: DSS2: OMAPFB: Add locking for memory regions Add locking to the memory regions to make sure the memory region size won't be changed while some other piece of code is performing some checks or setup based on that information. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 078ff546a806b2c2ab74c25c8edd4c6d4680656a Author: Ville Syrjälä Date: Wed Mar 17 20:36:51 2010 +0200 OMAP: DSS2: OMAPFB: Add support for switching memory regions Separate the memory region from the framebuffer device a little bit. It's now possible to select the memory region used by the framebuffer device using the new mem_idx parameter of omapfb_plane_info. If the mem_idx is specified it will be interpreted as an index into the memory regions array, if it's not specified the framebuffer's index is used instead. So by default each framebuffer keeps using it's own memory region which preserves backwards compatibility. This allows cloning the same memory region to several overlays and yet each overlay can be controlled independently since they can be associated with separate framebuffer devices. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 2ad0c50b84ee984aa58b09b46aef5c9f1d95e469 Author: Ville Syrjälä Date: Wed Mar 17 20:13:44 2010 +0200 OMAP: DSS2: OMAPFB: Skip unnecessary set_overlay_info() In omapfb_enable_overlay() if the overlay state is already what we want skip the set_overlay_info(). Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 276a1d4337c9c261f42d5a7f813d96ca18f67c2b Author: Ville Syrjälä Date: Wed Mar 17 20:05:38 2010 +0200 OMAP: DSS2: OMAPFB: Check var even if there isn't memory If video memory hasn't been allocate have check_fb_var() still check most of the settings, just skip the ones involving the size of the memory region. Also skip the memory address calculations in omapfb_setup_overlay() if there's no memory. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 46d3524a1b9155dd9cd57ea28e00db08c7a95c1a Author: Ville Syrjälä Date: Wed Mar 17 19:59:26 2010 +0200 OMAP: DSS2: OMAPFB: Refactor overlay address calculations Split the overlay address calculations into their own function. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 8cab90fdb4c71f9a92c09c015aee42ff2149b317 Author: Tomi Valkeinen Date: Wed Jun 9 15:09:30 2010 +0300 OMAP: DSS2: Fix update area calculations with multiple scaled overlays When there are multiple scaled overlays simply checking whether the update area intersects any of them in order is not enough. If eg. VID1 starts out completely outside the update area but VID2 causes the update area to increase in such a way that VID1 now falls partially within the increased update area VID1 should be rechecked and the update area possibly increased even further to fully encompass VID1. So simply keep looping over the overlays until such time that none of the overlays caused the update area to change. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 75c7d59daf502a4eb040e181120fb83b4a8c0719 Author: Ville Syrjälä Date: Fri Mar 5 01:13:11 2010 +0200 OMAP: DSS2: clear spurious SYNC_LOST_DIGIT interrupts When DSS transitions from off mode to on VENC may generate a spurious SYNC_LOST_DIGIT error. Just ack it when restoring the context. Also restore IRQENABLE last to avoid triggering interrupts before the context is fully restored. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit a74b260502c0911d14bafb76a20f699b6caa2e91 Author: Ville Syrjälä Date: Thu Mar 4 16:03:56 2010 +0200 OMAP: DSS2: Make wait_for_go() succeed for disabled displays When the display is not active make the wait_for_go() functions return immediately. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 825f50b1a498f6e3532c8fcbc093322bb386f9e1 Author: Ville Syrjälä Date: Tue Mar 2 21:30:52 2010 +0200 OMAP: DSS2: Check if display supports update mode changes Check whether the display actually has the set_update_mode() function before calling it. Only the sysfs codepath was broken, the omapfb ioctl had the necessary protection. Signed-off-by: Ville Syrjälä Signed-off-by: Tomi Valkeinen commit 5ab8e30c18292cf30de3adc36b0e2ed9d271e4e7 Author: Tomi Valkeinen Date: Fri Mar 12 15:11:19 2010 +0200 OMAP: DSS2: DSI: Increase HS TX timeout For some reason screen updates of certain odd widths seem to be triggering HS TX timeouts on OMAP 3430, even if bigger updates do not. The reason for this is unknown, but increasing the timeout removes the problem with no (so far) noticeable problems. I haven't seen this problem on OMAP 3630. Signed-off-by: Tomi Valkeinen commit 5a1819e3a82b65454cbba818efe0528785c9fb6a Author: Tobias Klauser Date: Thu May 20 17:12:52 2010 +0200 OMAP: DSS2: storage class should be before const qualifier The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser Signed-off-by: Tomi Valkeinen commit c9575dc680dffa26411e9aed32b4a1e12609428d Author: Sam Ravnborg Date: Wed Jul 28 19:33:00 2010 +0200 frv: clean up arch/frv/Makefile - removed a lot of unused variable assignmnets - removed unused bootstrap target - replaced ARCHMODFLAGS with proper KBUILD_{A,C}FLAGS_MODULE assignmnets The resuting Makefile has not been tested due to lack of toolchain, but these were all trivial changes. Signed-off-by: Sam Ravnborg Cc: David Howells Signed-off-by: Michal Marek commit 80c00ba942ee39c9a95c06959223560400bbb86e Author: Sam Ravnborg Date: Wed Jul 28 19:11:27 2010 +0200 kbuild: allow assignment to {A,C}FLAGS_KERNEL on the command line It is now possible to assign options to AS and CC on the command line - which is only used for built-in code. {A,C}FLAGS_KERNEL was used both in the top-level Makefile in the arch makefiles, thus users had no way to specify additional options to AS, CC without overriding the original value. Introduce a new set of variables KBUILD_{A,C}FLAGS_KERNEL that is used by arch specific files and free up {A,C}FLAGS_KERNEL so they can be assigned on the command line. All arch Makefiles that used the old variables has been updated. Signed-off-by: Sam Ravnborg Cc: Tony Luck Cc: Hirokazu Takata Signed-off-by: Michal Marek commit 6588169d516560f68672e2928680b71c647b7806 Author: Sam Ravnborg Date: Wed Jul 28 17:33:09 2010 +0200 kbuild: allow assignment to {A,C,LD}FLAGS_MODULE on the command line It is now possible to assign options to AS, CC and LD on the command line - which is only used when building modules. {A,C,LD}FLAGS_MODULE was all used both in the top-level Makefile in the arch makefiles, thus users had no way to specify additional options to AS, CC, LD when building modules without overriding the original value. Introduce a new set of variables KBUILD_{A,C,LD}FLAGS_MODULE that is used by arch specific files and free up {A,C,LD}FLAGS_MODULE so they can be assigned on the command line. All arch Makefiles that used the old variables has been updated. Note: Previously we had a MODFLAGS variable for both AS and CC. But in favour of consistency this was dropped. So in some cases arch Makefile has one assignmnet replaced by two assignmnets. Note2: MODFLAGS was not documented and is dropped without any notice. I do not expect much/any breakage from this. Signed-off-by: Sam Ravnborg Cc: Denys Vlasenko Cc: Haavard Skinnemoen Cc: Mike Frysinger Cc: Tony Luck Cc: Geert Uytterhoeven Cc: Ralf Baechle Cc: Benjamin Herrenschmidt Cc: Martin Schwidefsky Cc: Chen Liqin Acked-by: Mike Frysinger [blackfin] Acked-by: Haavard Skinnemoen [avr32] Signed-off-by: Michal Marek commit 7cf3d73b4360e91b14326632ab1aeda4cb26308d Author: Sam Ravnborg Date: Sat Jul 31 23:35:34 2010 +0200 kconfig: add savedefconfig savedefconfig will save a minimal config to a file named "defconfig". The config symbols are saved in the same order as they appear in the menu structure so it should be possible to map them to the relevant menus if desired. The implementation was tested against several minimal configs for arm which was created using brute-force. There was one regression related to default numbers which had their valid range further limited by another symbol. Sample: config FOO int "foo" default 4 config BAR int "bar" range 0 FOO If FOO is set to 3 then BAR cannot take a value higher than 3. But the current implementation will set BAR equal to 4. This is seldomly used and the final configuration is OK, and the fix was non-trivial. So it was documented in the code and left as is. Signed-off-by: Sam Ravnborg Acked-by: Uwe Kleine-König Signed-off-by: Michal Marek commit 49192f266ffa187bd7adaf5c2d881f85bd53e0ed Author: Sam Ravnborg Date: Sat Jul 31 23:35:33 2010 +0200 kconfig: code refactoring in confdata.c Add a a few local functions to avoid some code duplication No functional changes. Signed-off-by: Sam Ravnborg Signed-off-by: Michal Marek commit c252147de68cf58ba601278481e473dab432cee4 Author: Sam Ravnborg Date: Sat Jul 31 23:35:32 2010 +0200 kconfig: refactor code in symbol.c Move logic to determine default for a choice to a separate function. No functional changes. Signed-off-by: Sam Ravnborg Signed-off-by: Michal Marek commit 0748cb3e1fbd89c03a98c15e91ad65797981de77 Author: Sam Ravnborg Date: Sat Jul 31 23:35:31 2010 +0200 kconfig: add alldefconfig alldefconfig create a configuration with all values set to their default value (form the Kconfig files). This may be useful when we try to use more sensible default values and may also be used in combination with the minimal defconfigs. Signed-off-by: Sam Ravnborg Signed-off-by: Michal Marek commit d595cea62403db4e65b98a8bb96ff2b5205c7b82 Author: Roman Zippel Date: Sat Jul 31 23:35:30 2010 +0200 kconfig: print more info when we see a recursive dependency Consider following kconfig file: config TEST1 bool "test 1" depends on TEST2 config TEST2 bool "test 2" depends on TEST1 Previously kconfig would report: foo:6:error: found recursive dependency: TEST2 -> TEST1 -> TEST2 With the following patch kconfig reports: foo:5:error: recursive dependency detected! foo:5: symbol TEST2 depends on TEST1 foo:1: symbol TEST1 depends on TEST2 Note that we now report where the offending symbols are defined. This can be a great help for complex situations involving several files. Patch is originally from Roman Zippel with a few adjustments by Sam. Signed-off-by: Sam Ravnborg Cc: Roman Zippel Signed-off-by: Michal Marek commit 59e89e3ddf8523be39a8e0a66bacbbdd6a72d069 Author: Sam Ravnborg Date: Sat Jul 31 23:35:29 2010 +0200 kconfig: save location of config symbols When we add a new config symbol save the file/line so we later can refer to their location. The information is saved as a property to a config symbol because we may have multiple definitions of the same symbol. This has the side-effect that a symbol always has at least one property. Signed-off-by: Sam Ravnborg Cc: Roman Zippel Signed-off-by: Michal Marek commit 861b4ea4cc0eade661480f1ce197ae747f22a918 Author: Sam Ravnborg Date: Sat Jul 31 23:35:28 2010 +0200 kconfig: change nonint_oldconfig to listnewconfig Rename to a name that better match the other kconfig targets. listnewconfig shall read as: - list new options compared to current configuration New options are now written to stdout so one can redirect the output. Do not exit with an error code if there is new options. These are feature changes compared to the original nonint_oldconfig - but as this feature has not yet been in a released kernel it should not matter. It is still possible to do: make listnewconfig lookup new config options in Kconfig* edit .config Signed-off-by: Sam Ravnborg Cc: Aristeu Rozanski Acked-by: Aristeu Rozanski Signed-off-by: Michal Marek commit ef61ca88c511154d6bead23c08f9a021cfdfeb01 Author: Sam Ravnborg Date: Sat Jul 31 23:35:27 2010 +0200 kconfig: rename loose_nonint_oldconfig => oldnoconfig Rename target to something that fall more in line with the other kconfig targets. oldnoconfig shall read as: - read the old configuration and set all new options to no Signed-off-by: Sam Ravnborg Cc: Aristeu Rozanski Signed-off-by: Michal Marek commit 4062f1a4c030157216dc8932e27131975cf7253c Author: Sam Ravnborg Date: Sat Jul 31 23:35:26 2010 +0200 kconfig: use long options in conf The list of options supported by conf is growing and their abbreviation did not resemble anything usefull. So drop the single letter options in favour of long options. The long options are named equal to what we know from the make target. The internal implmentation was changed to match this, resulting in much more readable code. Support for short options is dropped - no one is supposed to call this program direct anyway. Signed-off-by: Sam Ravnborg Signed-off-by: Michal Marek commit 1b0e372d7b52c9fc96348779015a6db7df7f286e Author: Daniel J Blueman Date: Tue Aug 3 11:09:13 2010 +0100 ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs Fix HDA beep frequency on IDT 92HD73xx and 92HD71Bxx codecs. These codecs use the standard beep frequency calculation although the datasheet says it's linear frequency. Other IDT/STAC codecs might have the same problem. They should be fixed individually later. Signed-off-by: Daniel J Blueman Signed-off-by: Takashi Iwai commit ea87d1c493aba9cf3f645eae0d6d9c0fd44d3189 Author: Anssi Hannula Date: Tue Aug 3 13:28:58 2010 +0300 ALSA: hda - Add support for HDMI HBR passthrough Passing IEC 61937 encapsulated compressed audio at bitrates over 6.144 Mbps (i.e. more than a single 2-channel 16-bit 192kHz IEC 60958 link) over HDMI requires the use of HBR Audio Stream Packets instead of Audio Sample Packets. Enable HBR mode when the stream has 8 channels and the Non-PCM bit is set. If the audio converter is not connected to any HBR-capable pins, return -EINVAL in prepare(). Signed-off-by: Anssi Hannula Signed-off-by: Takashi Iwai commit 32c168c892e2c6936c714d1653ba5e19e07d5c26 Author: Anssi Hannula Date: Tue Aug 3 13:28:57 2010 +0300 ALSA: hda - Set Stream Type in Stream Format according to AES0 Set bit 15 (Stream Type) of HDA Stream Format to 1 (Non-PCM) when IEC958 channel status bit 1 (AES0 & 0x02) is set to 1 (non-audio). This is a prequisite for HDMI HBR passthrough. Signed-off-by: Anssi Hannula Signed-off-by: Takashi Iwai commit 4565956dc0847985c0403c9ebbf274b6a122e1e2 Author: James Chapman Date: Tue Aug 3 00:42:17 2010 -0700 l2tp: fix export of header file for userspace The header file l2tp.h should be exported to the installed include/linux/ tree for userspace programs. This patch fixes compilation errors in L2TP userspace apps which want to use the new L2TP support introduced in 2.6.35. Signed-off-by: James Chapman Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 66630f71e23a3b5fe778d38aea2f0c6d017602bf Merge: 9fe6206 ecd5349 Author: Chris Zankel Date: Tue Aug 3 00:38:00 2010 -0700 Merge remote branch 'origin/master' commit cff0d6e6edac7672b3f915bb4fb59f279243b7f9 Author: Oliver Hartkopp Date: Tue Aug 3 00:31:48 2010 -0700 can-raw: Fix skb_orphan_try handling Commit fc6055a5ba31e2c14e36e8939f9bf2b6d586a7f5 (net: Introduce skb_orphan_try()) allows an early orphan of the skb and takes care on tx timestamping, which needs the sk-reference in the skb on driver level. So does the can-raw socket, which has not been taken into account here. The patch below adds a 'prevent_sk_orphan' bit in the skb tx shared info, which fixes the problem discovered by Matthias Fuchs here: http://marc.info/?t=128030411900003&r=1&w=2 Even if it's not a primary tx timestamp topic it fits well into some skb shared tx context. Or should be find a different place for the information to protect the sk reference until it reaches the driver level? Signed-off-by: Oliver Hartkopp Signed-off-by: David S. Miller commit 3578b0c8abc7bdb4f02152ce5db7e09d484c6866 Author: David S. Miller Date: Tue Aug 3 00:24:04 2010 -0700 Revert "net: remove zap_completion_queue" This reverts commit 15e83ed78864d0625e87a85f09b297c0919a4797. As explained by Johannes Berg, the optimization made here is invalid. Or, at best, incomplete. Not only destructor invocation, but conntract entry releasing must be executed outside of hw IRQ context. So just checking "skb->destructor" is insufficient. Signed-off-by: David S. Miller commit 047b51fb208c716294b4682c904df8a3ad8b6a69 Author: Thomas Weber Date: Fri Jul 9 07:40:53 2010 +0000 OMAP2: powerdomain: Add break in switch statement Add a missing break at end of switch statement. At the moment it is a fall through to WARN_ON(1) and return -EEXIST. Signed-off-by: Thomas Weber Acked-by: Paul Walmsley Signed-off-by: Tony Lindgren commit ecd53497b706b235a10c70d4fc639768d7235c5f Author: Chris Zankel Date: Tue Aug 3 00:18:38 2010 -0700 xtensa: Disable PCI and nfsroot on simulation target The ISS platform is a pure simulation target and doesn't support PCI, so disable it in the default configuration. Signed-off-by: Chris Zankel commit 0f52e86ded65749c6037473013ad77b2afa4f68d Author: Dominik Brodowski Date: Wed Jul 28 09:32:02 2010 +0200 pcmcia: do not request windows if you don't need to Several drivers contained dummy code to request for memory windows, even though they never made use of it. Remove all such code snippets. CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org Signed-off-by: Dominik Brodowski commit ad0c7be28bc7593da43f494f6d074767ea96ca59 Author: Dominik Brodowski Date: Sun Jul 25 13:10:22 2010 +0200 pcmcia: insert PCMCIA device resources into resource tree Insert PCMCIA device resources into the resource tree. However, this is currently only implemented for sockets which do not statically map the resources. Signed-off-by: Dominik Brodowski commit 8f677ea07a2a934ac74ffa57db0f5617aec15ddf Author: Dominik Brodowski Date: Sun Jul 25 11:10:29 2010 +0200 pcmcia: export resource information to sysfs Signed-off-by: Dominik Brodowski commit 0ca724d37af370dbf2d55dc4d6359ead558e5756 Author: Dominik Brodowski Date: Sat Jul 24 19:03:02 2010 +0200 pcmcia: use struct resource for PCMCIA devices, part 2 Use struct resource * also for iomem resources. CC: linux-mtd@lists.infradead.org CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org CC: Jiri Kosina Signed-off-by: Dominik Brodowski commit b5cb259e7fac5536c4ddf350af6a3d6cc950e47e Author: Dominik Brodowski Date: Sat Jul 24 18:46:42 2010 +0200 pcmcia: remove memreq_t Page already had to be set to 0; Offset can easily be passed as parameter to pcmcia_map_mem_page. CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org CC: linux-ide@vger.kernel.org CC: linux-usb@vger.kernel.org CC: laforge@gnumonks.org CC: linux-mtd@lists.infradead.org CC: linux-bluetooth@vger.kernel.org CC: alsa-devel@alsa-project.org CC: linux-serial@vger.kernel.org CC: Michael Buesch Signed-off-by: Dominik Brodowski commit a3d0d4d8dd45779b6e174a8567ffb9b485e472af Author: Dominik Brodowski Date: Sat Jul 24 17:43:10 2010 +0200 pcmcia: move local definitions out of include/pcmcia/cs.h Signed-off-by: Dominik Brodowski commit 90abdc3b973229bae98dd96649d9f7106cc177a4 Author: Dominik Brodowski Date: Sat Jul 24 17:23:51 2010 +0200 pcmcia: do not use io_req_t when calling pcmcia_request_io() Instead of io_req_t, drivers are now requested to fill out struct pcmcia_device *p_dev->resource[0,1] for up to two ioport ranges. After a call to pcmcia_request_io(), the ports found there are reserved, after calling pcmcia_request_configuration(), they may be used. CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org CC: linux-ide@vger.kernel.org CC: linux-usb@vger.kernel.org CC: laforge@gnumonks.org CC: linux-mtd@lists.infradead.org CC: alsa-devel@alsa-project.org CC: linux-serial@vger.kernel.org CC: Michael Buesch Acked-by: Marcel Holtmann (for drivers/bluetooth/) Signed-off-by: Dominik Brodowski commit 9a017a910346afd88ec2e065989903bf211a7d37 Author: Dominik Brodowski Date: Sat Jul 24 15:58:54 2010 +0200 pcmcia: do not use io_req_t after call to pcmcia_request_io() After pcmcia_request_io(), do not make use of the values stored in io_req_t, but instead use those found in struct pcmcia_device->resource[]. CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org CC: linux-ide@vger.kernel.org CC: linux-usb@vger.kernel.org CC: laforge@gnumonks.org CC: linux-mtd@lists.infradead.org CC: alsa-devel@alsa-project.org CC: linux-serial@vger.kernel.org Acked-by: Marcel Holtmann (for drivers/bluetooth/) Signed-off-by: Dominik Brodowski commit 2ce4905e4da9f512b38f56a53ece9da2072dd164 Author: Dominik Brodowski Date: Sat Jul 24 13:14:44 2010 +0200 pcmcia: use struct resource for PCMCIA devices Introduce a new field into struct pcmcia_device named "resource" and of type struct resource *, which contains the IO port ranges allocated for this device. Memory window ranges and registration with the resource trees will follow at a later date. Signed-off-by: Dominik Brodowski commit 3dace8cf15ae1dd7c9384758b3a29556b441a90a Author: Dominik Brodowski Date: Sat Jul 24 12:33:29 2010 +0200 pcmcia: clean up cs.h Remove some obsolete definitions from cs.h Signed-off-by: Dominik Brodowski commit 1d5cc192d431bce2ebe9fde64054ce903200e179 Author: Dominik Brodowski Date: Sat Jul 24 12:23:21 2010 +0200 pcmcia: use pcmica_{read,write}_config_byte Use pcmcia_read_config_byte and pcmcia_write_config_byte instead of pcmcia_access_configuration_register. CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org CC: linux-serial@vger.kernel.org CC: Michael Buesch Signed-off-by: Dominik Brodowski commit 68c18697910fdcacea36bd58d2d3d8febfa199a2 Author: Jerone Young Date: Tue Aug 3 01:46:44 2010 -0500 ALSA: hda - Fix Thinkpad X300 so SPDIF is not exposed Just as with the X301. The X300 does not have a way to do SPDIF either. It does not have a dock connector, nor does it have the SPDIF through the headphone jack. This patch fixes it so X300 does not show SPDIF, since it cannot do it. To add all Lenovo Thinkpads had different codec subsytem IDs: X300: http://launchpadlibrarian.net/34862838/Card0.Codecs.codec.0.txt Signed-off-by: Jerone Young Signed-off-by: Takashi Iwai commit 607bc3e4888443cdd21a795f7312f64c2de26b5c Author: Jerone Young Date: Tue Aug 3 01:46:42 2010 -0500 ALSA: hda - FIX to not expose SPDIF on Thinkpad X301, since it does not have the ability to use SPDIF The Lenovo X301 does not have the ability to connect to a docking station to use the SPDIF port. It also does not have the ability to do SPDIF though the headphone jack or Display Port jacks. This patch fixes it so this is not exposed for the X301 and users do think it has the ability to do SPDIF. I tested both headphone & display port jacks and it is not there. I have tested this patch and it works great. Also to add the other Thinkpads have different subsystem codec IDs. Here are examples: X301: http://launchpadlibrarian.net/31561902/Card0.Codecs.codec.0.txt X200: http://launchpadlibrarian.net/49055036/Card0.Codecs.codec.0.txt W500: http://launchpadlibrarian.net/36276057/Card0.Codecs.codec.0.txt Signed-off-by: Jerone Young Signed-off-by: Takashi Iwai commit 116bcd9cf22c00c22402c2a2be6ef8e81289a574 Author: Axel Lin Date: Fri Jul 23 05:53:54 2010 +0000 ASoC: wm9081: fix resource reclaim in wm9081_register error path This patch fixes the error path in wm9081_register to properly free resources. Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d484366beeab0cded9644083172151c5afacc503 Author: Axel Lin Date: Fri Jul 23 05:53:53 2010 +0000 ASoC: wm8978: fix a memory leak if a wm8978_register fail There is a memory leak found if wm8978_register() fail. This patch moves the buffer allocate and release at the same level to prevent the memory leak. Signed-off-by: Axel Lin Reviewed-by: Guennadi Liakhovetski Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4eaac50552395f693b8c428872e8b5311c3dab60 Author: Axel Lin Date: Fri Jul 23 05:53:52 2010 +0000 ASoC: wm8974: fix a memory leak if another WM8974 is registered wm8974 is allocated in wm8974_i2c_probe() but is not freed if wm8974_register() return -EINVAL (if another WM8974 is registered). Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 6b5d071e8ba7d802f3123e7b7a37ea13650a98bf Author: Axel Lin Date: Fri Jul 23 05:53:51 2010 +0000 ASoC: wm8961: fix resource reclaim in wm8961_register error path This patch fixes the error path in wm8961_register to properly free resources. Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8089a49d99bb25bc63237ae8e90a84c72897b66d Author: Axel Lin Date: Fri Jul 23 05:53:50 2010 +0000 ASoC: wm8955: fix resource reclaim in wm8955_register error path This patch fixes the error path in wm8955_register to properly free resources. Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit db1e18de98c8bdf8a2bfc07623ff67621aa4a332 Author: Axel Lin Date: Fri Jul 23 05:53:49 2010 +0000 ASoC: wm8940: fix a memory leak if wm8940_register return error This patch adds checking for wm8940_register return value, and does kfree(wm8940) if wm8940_register() fail. Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 62f5ad6733b872e14d671b615850eb5bd1cd7e30 Author: Axel Lin Date: Fri Jul 23 05:53:48 2010 +0000 ASoC: wm8904: fix resource reclaim in wm8904_register error path This patch includes below fixes: 1. wm8904 need to be kfreed in wm8904_register() error path before return. 2. fix the error path for snd_soc_register_codec() fail and snd_soc_register_dai() fail to properly free resources. Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2c2749de118bd36645b3a4a56f0d8ef6d4fd09cf Author: Axel Lin Date: Fri Jul 23 05:53:47 2010 +0000 ASoC: wm8711: fix a memory leak if another WM8711 is registered wm8711 is allocated in either wm8711_spi_probe() or wm8711_i2c_probe() but is not freed if wm8711_register() return -EINVAL(if another ad1836 is registered). Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit ef99e9b5a10086bcc529e6c0a11c6539caee8cd1 Author: Axel Lin Date: Fri Jul 23 05:53:46 2010 +0000 ASoC: wm8523: fix resource reclaim in wm8523_register error path This patch includes below fixes: 1. If another WM8523 is registered, need to kfree wm8523 before return -EINVAL. 2. If snd_soc_register_codec failed, goto error path to properly free resources. 3. Instead of using mixed in-line and goto style cleanup, use goto style error handling if snd_soc_register_dai failed. Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 085efd28b65582fac459359672421a1c479e7db1 Author: Axel Lin Date: Fri Jul 23 05:53:45 2010 +0000 ASoC: da7210: fix a memory leak if failed to initialise da7210 audio codec da7210 should be kfreed if da7210_init() return error. This patch also fixes the error handing in the case of snd_soc_register_dai() fail by adding snd_soc_unregister_codec() in error path. Signed-off-by: Axel Lin Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 7bcaad919bc7aaa084f5884aa15654fe1fa4c77f Author: Axel Lin Date: Fri Jul 23 05:53:44 2010 +0000 ASoC: ak4642: fix a memory leak if failed to initialise AK4642 ak4642 should be kfreed if ak4642_init() return error. Signed-off-by: Axel Lin Reviewed-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fd3c8ac9cb653f7e3122bba9bc7beaad6062b7f4 Author: Axel Lin Date: Fri Jul 23 05:53:43 2010 +0000 ASoC: ad1836: fix a memory leak if another ad1836 is registered ad1836 is allocated in ad1836_spi_probe() but is not freed if ad1836_register() return -EINVAL (if another ad1836 is registered). Signed-off-by: Axel Lin Acked-by: Barry Song <21cnbao@gmail.com> Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 992bee401c06872175056bc5567cb3ebab098cb5 Author: Ian Lartey Date: Sat Jul 31 00:32:11 2010 +0100 ASoC: Initial WM8741 CODEC driver The WM8741 is a very high performance stereo DAC designed for audio applications such as professional recording systems, A/V receivers and high specification CD, DVD and home theatre systems. The device supports PCM data input word lengths from 16 to 32-bits and sampling rates up to 192kHz. The WM8741 also supports DSD bit-stream data format, in both direct DSD and PCM-converted DSD modes. TODO: Expand wm8741_set_dai_sysclk and rate_constraint members to allow for all supported sample rate / Master Clock frequency combinations. Fully enable control of supplies. Signed-off-by: Ian Lartey Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit c18de72fb3c72fdc5ca883910761af3f14d90d76 Author: Matthieu CASTET Date: Mon Aug 2 11:36:06 2010 +0200 UBIFS: fix a memory leak on error path. In 'mount_ubifs()', in case of 'ubifs_leb_unmap()' falure, free allocated resources. Signed-off-by: Matthieu CASTET Signed-off-by: Artem Bityutskiy commit a427615e0420f179eab801b929111abaadea2ed3 Author: Changli Gao Date: Mon Aug 2 22:45:49 2010 -0700 net: cleanup inclusion Commit ab95bfe01f9872459c8678572ccadbf646badad0 replaces bridge and macvlan hooks in __netif_receive_skb(), so dev.c doesn't need to include their headers. Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit 43d7383bbec1878f838060d6bbd214f6d0485478 Merge: 69e77a8 0a1eae3 Author: Ingo Molnar Date: Tue Aug 3 07:45:00 2010 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core commit 00dad5e479531e379aba7358600cc768725d4f1f Merge: c477d04 3a3dfb0 Author: David S. Miller Date: Mon Aug 2 22:22:46 2010 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/e1000e/hw.h net/bridge/br_device.c net/bridge/br_input.c commit c477d0447db08068a497e7beb892b2b2a7bff64b Author: Cyril Chemparathy Date: Mon Aug 2 09:44:53 2010 +0000 phy/marvell: add 88e1121 interface mode support This patch adds support for RGMII RX/TX delay configuration on marvell 88e1121 and derivatives. With this patch, PHY_INTERFACE_MODE_RGMII_*ID modes are now supported on these devices. Signed-off-by: Cyril Chemparathy Signed-off-by: David S. Miller commit 66d50d25502cd9b7d6e3ebbf4e241259c1283eaf Author: stephen hemminger Date: Mon Aug 2 13:44:13 2010 +0000 u32: negative offset fix It was possible to use a negative offset in a u32 match to reference the ethernet header or other parts of the link layer header. This fixes the regression caused by: commit fbc2e7d9cf49e0bf89b9e91fd60a06851a855c5d Author: Changli Gao Date: Wed Jun 2 07:32:42 2010 -0700 cls_u32: use skb_header_pointer() to dereference data safely Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit eabd8ba9060444cac5b89a3306e607c15ec37418 Author: Henrique Camargo Date: Mon Aug 2 17:10:42 2010 +0000 net: Fix a typo from "dev" to "ndev" The typo was causing compilation errors since "dev" was not defined. Signed-off-by: Henrique Camargo Signed-off-by: David S. Miller commit 2bce64858442149784f6c8803c9095a8556320a2 Author: Christoph Lameter Date: Mon Jul 19 11:39:11 2010 -0500 slub: Allow removal of slab caches during boot Serialize kmem_cache_create and kmem_cache_destroy using the slub_lock. Only possible after the use of the slub_lock during dynamic dma creation has been removed. Then make sure that the setup of the slab sysfs entries does not race with kmem_cache_create and kmem_cache destroy. If a slab cache is removed before we have setup sysfs then simply skip over the sysfs handling. Cc: Benjamin Herrenschmidt Cc: Roland Dreier Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit e438444de82f354563d46ee5d991b5916dd19b01 Author: Pekka Enberg Date: Tue Aug 3 07:28:21 2010 +0300 Revert "slub: Allow removal of slab caches during boot" This reverts commit f5b801ac38a9612b380ee9a75ab1861f0594e79f. commit 81a618595a29af6aec615d093feac65ee7329b74 Author: Emil Tantilov Date: Mon Aug 2 14:40:52 2010 +0000 igb: Use irq_synchronize per vector when using MSI-X Synchronize all IRQs when using MSI-X. Similar to ixgbe. Issue was reported on e1000e, but the patch is also valid for igb. CC: Jean Delvare Signed-off-by: Emil Tantilov Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 3bfacf96abc747e3a4bafa7550deb0372d7d0e20 Author: Alexander Duyck Date: Mon Aug 2 14:59:04 2010 +0000 ixgbevf: fix null pointer dereference due to filter being set for VLAN 0 This change corrects an issue that resulted in a null pointer dereference for the addition of VLAN 0 without any VLANs being registered. Also this code removes some unnecessary checks for defines and the unnecessary setting of VLAN flags since that is now handled within the kernel via the vlan_features. Signed-off-by: Alexander Duyck Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 8e86acd7d5968e08b3e1604e685a8c45f6fd7f40 Author: Jeff Kirsher Date: Mon Aug 2 14:27:23 2010 +0000 e1000e: Fix irq_synchronize in MSI-X case Based on original patch/work from Jean Delvare Synchronize all IRQs when in MSI-X IRQ mode. Jean's original patch hard coded the sync with the 3 possible vectors, this patch incorporates more flexibility for the future and aligns with how igb stores the number of vectors into the adapter structure. CC: Jean Delvare Cc: Jesse Brandeburg Signed-off-by: Jeff Kirsher Tested-by: Jeff Pieper Acked-by: Bruce Allan Signed-off-by: David S. Miller commit c128ec29208d410568469bd8bb373b4cdc10912a Author: Florian Mickler Date: Mon Aug 2 14:27:00 2010 +0000 e1000e: register pm_qos request on hardware activation The pm_qos_add_request call has to register the pm_qos request with the pm_qos susbsystem before first use of the pm_qos request via pm_qos_update_request. As pm_qos changed to use plists there is no benefit in registering and unregistering the pm_qos request on ifup/ifdown and thus we move the registering into e1000_open and the unregistering in e1000_close. This fixes the following warning: [ 1.786060] WARNING: at kernel/pm_qos_params.c:264 pm_qos_update_request+0x28/0x54() [ 1.786088] Hardware name: Latitude E6500 [ 1.787045] pm_qos_update_request() called for unknown object [ 1.787966] Modules linked in: [ 1.788940] Pid: 1, comm: swapper Not tainted 2.6.35-rc5-mmotm0719 #1 [ 1.790035] Call Trace: [ 1.791121] [] warn_slowpath_common+0x80/0x98 [ 1.792205] [] warn_slowpath_fmt+0x41/0x43 [ 1.793279] [] pm_qos_update_request+0x28/0x54 [ 1.794347] [] e1000_configure+0x421/0x459 [ 1.795393] [] e1000_open+0xbd/0x37c [ 1.796436] [] ? raw_notifier_call_chain+0xf/0x11 [ 1.797491] [] __dev_open+0xae/0xe2 [ 1.798547] [] dev_open+0x1b/0x49 [ 1.799612] [] netpoll_setup+0x84/0x259 [ 1.800685] [] init_netconsole+0xbc/0x21f [ 1.801744] [] ? sir_wq_init+0x0/0x35 [ 1.802793] [] ? init_netconsole+0x0/0x21f [ 1.803845] [] do_one_initcall+0x7a/0x12f [ 1.804885] [] kernel_init+0x138/0x1c2 [ 1.805915] [] kernel_thread_helper+0x4/0x10 [ 1.806937] [] ? restore_args+0x0/0x30 [ 1.807955] [] ? kernel_init+0x0/0x1c2 [ 1.808958] [] ? kernel_thread_helper+0x0/0x10 [ 1.809958] ---[ end trace 84b562a00a60539e ]--- Signed-off-by: Florian Mickler Tested-by: Valdis Kletnieks Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 6238b47b58480cd9c092600c05338dbe261b71ce Author: H. Peter Anvin Date: Mon Aug 2 21:03:46 2010 -0700 x86, setup: move isdigit.h to ctype.h, header files on top. It is a subset of functionality, so name it ctype.h. Also, reorganize header files so #include statements are clustered near the top as they should be. Signed-off-by: H. Peter Anvin LKML-Reference: <4C5752F2.8030206@kernel.org> commit ca5a22028d0845dd6bcce0dce12a7beda315baf0 Author: Steve Wise Date: Fri Jul 23 19:12:37 2010 +0000 RDMA/cxgb4: Set/reset the EP timer inside EP lock Endpoint timer manipulation needs to be done inside the lock. Otherwise we can get into a situation where a timer is stopped before it is started, which hits the WARN_ON() in stop_ep_timer(). Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit d4f1a5c6efabccd4b787a8b5907a5df9204ad2f6 Author: Steve Wise Date: Fri Jul 23 19:12:32 2010 +0000 RDMA/cxgb4: Use correct control txq There is only one control txq per tx channel. So use the port number as the queue index when sending. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 73d6fcad2ac84b6fad326d87dc1dd0b29aabbd34 Author: Steve Wise Date: Fri Jul 23 19:12:27 2010 +0000 RDMA/cxgb4: Fix race in fini path There exists a race condition where the app disconnects, which initiates an orderly close (via rdma_fini()), concurrently with an ingress abort condition, which initiates an abortive close operation. Since rdma_fini() must be called without IRQs disabled, the fini can be called after the QP has been transitioned to ERROR. This is ok, but we need to protect against qp->ep getting NULLed. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 8fee13a48e4879fba57725f6d9513df4bfa8e9f3 Author: Yinghai Lu Date: Mon Aug 2 16:21:22 2010 -0700 x86, setup: enable early console output from the decompressor This enables the decompressor output to be seen on the serial console. Most of the code is shared with the regular boot code. We could add printf to the decompressor if needed, but currently there is no sufficiently compelling user. -v2: define BOOT_BOOT_H to avoid include boot.h -v3: early_serial_base need to be static in misc.c ? -v4: create seperate string.c printf.c cmdline.c early_serial_console.c after hpa's patch that allow global variables in compressed/misc stage -v5: remove printf.c related Signed-off-by: Yinghai Lu Signed-off-by: H. Peter Anvin commit d01d0756f75e7a5b4b43764ad45b83c4340f11d6 Merge: b326b85 0d87c72 Author: Dmitry Torokhov Date: Mon Aug 2 18:35:17 2010 -0700 Merge branch 'next' into for-linus commit 0d87c7228a49e8342d60dd552892e470e0b291fa Author: Dmitry Torokhov Date: Mon Aug 2 18:33:26 2010 -0700 Input: adp5588-keypad - fix NULL dereference in adp5588_gpio_add() The kpad structure is assigned to i2c client via i2s_set_clientdata() at the end of adp5588_probe(), but in adp5588_gpio_add() we tried to access it (via dev_get_drvdata! which is not nice at all) causing an oops. Let's pass pointer to kpad directly into adp5588_gpio_add() and adp5588_gpio_remove() to avoid accessing driver data before it is set up. Also split out building of gpiomap into a separate function to clear the logic. Reported-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit b12d1995f650e92f26184afd28e6cf40bf64467a Author: Pavan Savoy Date: Mon Aug 2 02:43:17 2010 -0500 Staging: ti-st: update TODO Removed TODO item 2 : Current UIM/KIM communicate via the rfkill device and identified by the unique idx assisgned by the rfkill sub-system to each of these rfkill entries. Removed TODO item 1 : Since there is no way we can test existance of multiple connectivity devices on platform. However the basic infrastructure as in providing a context to ST driver exist. If multiple devices have to exist on a given platform, multiple ST platform devices need to be registered and each of the protocol drivers have to mention which platform device they want to bind to/make use of. Removed TODO item 3: Locking have been reviewed and commit 36b5aee46b5e4788758409829926c631de0a64a3 documents locking. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 100ca122870844d6c001d5d0532b885c707b6ea9 Author: Javier Martinez Canillas Date: Mon Aug 2 00:43:13 2010 -0400 Staging: wlags49_h2: use common PCI_VENDOR/DEVICE_ID name format There is a common name format for PCI_VENDOR/DEVICE_ID constants. wlags49_h2 names doesn't fit in the standard. This patch change the names and also fix some style issues. Thanks a lot, Signed-off-by: Javier Martinez Canillas Signed-off-by: Greg Kroah-Hartman commit d9811b79d4e13fc82a55ce3ae19dda531cd759f5 Author: Daniele Boncompagni Date: Sun Aug 1 18:41:21 2010 +0200 Staging: comedi : fix brace coding style issue in wwrap.c This is a patch to the wwrap.c file that fixes up a brace warnings and other errors found by the checkpatch.pl tool. Signed-off-by: Daniele Boncompagni Signed-off-by: Greg Kroah-Hartman commit 3457912e0e4d42297aa37fe27a331516b684e91c Author: Javier Martinez Canillas Date: Fri Jul 30 18:51:51 2010 -0400 Staging: quatech_usb2: remove unused qt2_box_flush function In today linux-next I got a compilation warning: drivers/staging/quatech_usb2/quatech_usb2.c:1852: warning: ‘qt2_box_flush’ defined but not used Signed-off-by: Javier Martinez Canillas Signed-off-by: Greg Kroah-Hartman commit 9092de6df330265f0cbfca496386d329ec8c2aa5 Author: Denis Kirjanov Date: Fri Jul 30 13:26:06 2010 +0000 Staging: slicoss: Remove net_device_stats from the driver's private Remove net_device_stats from the driver's private. Signed-off-by: Denis Kirjanov Signed-off-by: Greg Kroah-Hartman commit 0ebdd466f4682608a6b90ef018d36b57925f4d64 Author: Kulikov Vasiliy Date: Fri Jul 30 15:09:02 2010 +0400 staging: rtl8192su: check whether requests succeeded rtl8192_usb_probe() does not check alloc_ieee80211() and register_netdev() return values for errors. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 10f3f5b7f6d1faca62c746d1a4e85f7afba4d7d0 Author: Kulikov Vasiliy Date: Fri Jul 30 15:08:20 2010 +0400 staging: panel: fix error path panel_attach() poorly handles errors. On error unregister everything we have registered. Signed-off-by: Kulikov Vasiliy Acked-by: Willy Tarreau Signed-off-by: Greg Kroah-Hartman commit d49d0e39a09209d0136c7da2a1a52e99af2d4656 Author: Kulikov Vasiliy Date: Fri Jul 30 15:08:00 2010 +0400 staging: otus: check kmalloc() return value kmalloc() may fail, if so return error from zfwUsbSubmitControl(). Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 94f5659cfa4f14ba901fbbb8a57d0145754d0d37 Author: Kulikov Vasiliy Date: Fri Jul 30 15:07:42 2010 +0400 staging: octeon: check request_irq() return value request_irq() may fail, if so propagate error code. Signed-off-by: Kulikov Vasiliy Acked-by: David Daney Signed-off-by: Greg Kroah-Hartman commit 3d049431e08a847a222e20f406332529751b4365 Author: Edgardo Hames Date: Mon Aug 2 17:17:17 2010 -0300 Staging: wlan-ng: remove typedef in p80211hdr.h This patch removes the only typedef in p80211hdr.h. Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit b6bb56e6aa28085550179335247c649752ff2994 Author: Edgardo Hames Date: Mon Aug 2 16:20:39 2010 -0300 Staging: wlan-ng: fix checkpatch issues in headers. This patch fix errors and warnings reported by checkpatch in p80211meta.h and p80211metstruct.h. Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit e5bdbb90299f7b8d2d88994af8541e7804833e2a Author: Edgardo Hames Date: Sat Jul 31 13:29:22 2010 -0300 Staging: wlan-ng: remove typedef in p80211ioctl.h This patches removes the only typedef in p80211ioctl.h Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit 51e4896adad00a066fad65649405c1c9fa108157 Author: Edgardo Hames Date: Sat Jul 31 13:06:52 2010 -0300 Staging: wlan-ng: fix style issues in p80211conv.h This patch removes typedefs in p80211conv.h. Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit 93df38e593d949de83a6447d016cc4b07d392f47 Author: Edgardo Hames Date: Fri Jul 30 22:51:55 2010 -0300 Staging: wlan-ng: fix style issues for p80211hdr.h Removed typedef and other style issues. Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit 6487c49e8a739ae6020ccda9470f5837e792ab53 Author: Andres More Date: Mon Aug 2 20:51:57 2010 -0300 staging: vt6656: removed NTSTATUS definition Replaced NTSTATUS with int, as defined in a couple of places. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 22040bbf84ae5cc39b2b97f064c97592aa425d06 Author: Andres More Date: Mon Aug 2 20:21:44 2010 -0300 staging: vt6656: simplified tests involving both multi/broad-casts By definition the broadcast address is also a multicast address. Lindented the modified section as required by checkpatch.pl. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 7b6a001313a9b11a1f0985de05fff514db41d72d Author: Charles Clément Date: Sun Aug 1 17:15:50 2010 +0200 Staging: vt6655: replace BOOL with in kernel bool Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 5a5a2a6ad4aa2467bcc34fa50e85c2afc90bab05 Author: Charles Clément Date: Sun Aug 1 17:15:49 2010 +0200 Staging: vt6655: replace FALSE with in kernel false Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 1b12068a804711ae2f4fd2876d5706542c1d7ad9 Author: Charles Clément Date: Sun Aug 1 17:15:48 2010 +0200 Staging: vt6655: replace TRUE with in kernel true Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 93a94c42b1b4f455314230e6b343bc6a23f26854 Author: Roel Van Nyen Date: Fri Jul 30 10:22:19 2010 +0200 Staging: vt6656: Remove PUINT from ttype.h Remove PUINT from ttype.h Signed-off-by: Roel Van Nyen Signed-off-by: Greg Kroah-Hartman commit 57778ef92c56b06b76b8ef52fd24dd6a63bec21d Author: Randy Dunlap Date: Wed Jul 28 10:16:07 2010 -0700 Staging: quickstart: depends on INPUT quickstart uses input_*() functions so it should depend on INPUT. ERROR: "input_register_device" [drivers/staging/quickstart/quickstart.ko] undefined! ERROR: "input_allocate_device" [drivers/staging/quickstart/quickstart.ko] undefined! ERROR: "input_event" [drivers/staging/quickstart/quickstart.ko] undefined! ERROR: "input_free_device" [drivers/staging/quickstart/quickstart.ko] undefined! ERROR: "input_unregister_device" [drivers/staging/quickstart/quickstart.ko] undefined! Signed-off-by: Randy Dunlap Cc: Angelo Arrifano Signed-off-by: Greg Kroah-Hartman commit 8c310573fe4fdaedd8963890b2da39f39c01ab34 Author: Greg Kroah-Hartman Date: Mon Aug 2 18:11:34 2010 -0700 Staging: dt3155: remove the driver There is now a proper V4L driver for this device in the tree, so remove this one. Cc: Scott Smedley Cc: H Hartley Sweeten Signed-off-by: Greg Kroah-Hartman commit 69e77a8b0426ded5d924eea7dbe4eca51e09f530 Author: Scott Wood Date: Mon Aug 2 17:17:18 2010 -0500 perf, powerpc: fsl_emb: Restore setting perf_sample_data.period Commit 6b95ed345b9faa4ab3598a82991968f2e9f851bb changed from a struct initializer to perf_sample_data_init(), but the setting of the .period member was left out. Signed-off-by: Scott Wood Cc: stable@kernel.org Signed-off-by: Paul Mackerras commit c893b8066c7bf6156e4d760e5acaf4c148e37190 Author: Changli Gao Date: Sat Jul 31 13:25:08 2010 +0000 ip_fragment: fix subtracting PPPOE_SES_HLEN from mtu twice 6c79bf0f2440fd250c8fce8d9b82fcf03d4e8350 subtracts PPPOE_SES_HLEN from mtu at the front of ip_fragment(). So the later subtraction should be removed. The MTU of 802.1q is also 1500, so MTU should not be changed. Signed-off-by: Changli Gao Signed-off-by: Bart De Schuymer ---- net/ipv4/ip_output.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) Signed-off-by: Bart De Schuymer Signed-off-by: David S. Miller commit 3c0fef0b7d36e5f8d3ea3731a8228102274e3c23 Author: Josh Hunt Date: Fri Jul 30 13:49:35 2010 +0000 net: Add getsockopt support for TCP thin-streams Initial TCP thin-stream commit did not add getsockopt support for the new socket options: TCP_THIN_LINEAR_TIMEOUTS and TCP_THIN_DUPACK. This adds support for them. Signed-off-by: Josh Hunt Tested-by: Andreas Petlund Acked-by: Andreas Petlund Signed-off-by: David S. Miller commit 09f86cd093b76b699656eaa82c37ca6d9a02b892 Author: Peter Zijlstra Date: Fri Jul 9 10:21:22 2010 +0200 perf, powerpc: Convert the FSL driver to use local64_t For some reason the FSL driver got left out when we converted perf to use local64_t instead of atomic64_t. Signed-off-by: Peter Zijlstra Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 9f242dc10e0c3c1eb32d8c83c18650a35fd7f80d Author: Alok Kataria Date: Mon Aug 2 16:10:37 2010 -0700 x86, vmware: Preset lpj values when on VMware. When running on VMware's platform, we have seen situations where the AP's try to calibrate the lpj values and fail to get good calibration runs becasue of timing issues. As a result delays don't work correctly on all cpus. The solutions is to set preset_lpj value based on the current tsc frequency value. This is similar to what KVM does as well. Signed-off-by: Alok N Kataria LKML-Reference: <1280790637.14933.29.camel@ank32.eng.vmware.com> Signed-off-by: H. Peter Anvin commit 084f70ee096d385e363bd5d309cc7ff24fb98c53 Author: Ernesto Ramos Date: Wed Jul 28 16:04:57 2010 -0500 staging: ti dspbridge: avoid errors if stream id is zero As 'zero' can be a perfectly good id, it can be picked up as a NULL from userspace, avoid issues in API and user apps if stream handle is zero. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 4ec09714a0a5861c3e786967024ddfff00b0add6 Author: Ernesto Ramos Date: Wed Jul 28 16:04:56 2010 -0500 staging: ti dspbridge: use stream id instead of kernel address Send stream ids to the user instead of handles, then when the id is coming from user dspbridge can retrive the handle using id and avoid using invalid handles. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 6bcc9beed2d46c0db479a3750af4b2cbd7a92401 Author: Ernesto Ramos Date: Wed Jul 28 16:04:55 2010 -0500 staging: ti dspbridge: use processor handle from context instead of user's Make sure dspbridge driver uses a valid processor handle by using the handle stored in process context. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 8df327c3904d34527b89d4881bd3ce2966f0e07f Author: Ernesto Ramos Date: Wed Jul 28 16:04:54 2010 -0500 staging: ti dspbridge: avoid errors if node handle is zero As 'zero' can be a perfectly good id, it can be picked up as a NULL from userspace, avoid issues in API and user apps if node handle is zero. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 0624f52f77e11a6edfc48827a12190f874d572b8 Author: Ernesto Ramos Date: Wed Jul 28 16:04:53 2010 -0500 staging: ti dspbridge: use node id instead of kernel address Use idr kernel library to send/receive node ids to the user instead of kernel address. This id will be use to access the node handles at the kernel side, if id does not match to any handle error -EFAULT is returned. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 35f338e4f2fcd2614f6fdff33f38920cf9434f86 Author: Ernesto Ramos Date: Wed Jul 28 11:50:36 2010 -0500 staging: ti dspbridge: avoid possible NULL dereference panic When dsp_notifications array is received from user, dspbridge verifies the array has valid pointers and dsp_notification structures. However, these structures contain pointers that need to be checked for valid handles. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 019415ce5e00bcc0287f2ea88042b9fb685cdbcf Author: Jonathan Cameron Date: Thu Jul 29 17:50:51 2010 +0100 staging: iio: ring_sw Fix pointer arithmetic for 64bit arches by using phys_addr_t Signed-off-by: Jonathan Cameron Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit ccea5e1d0f393df38c23034d97e939b2f5c9d6bc Author: Jonathan Cameron Date: Thu Jul 29 17:50:50 2010 +0100 staging: iio: ring_sw remove unnecessary function stub. Signed-off-by: Jonathan Cameron Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit d3bf812e321f2135769b6646f9dc89011a1bb383 Author: Jonathan Cameron Date: Thu Jul 29 17:50:49 2010 +0100 staging: iio: ring_sw Add select of triggers to avoid build issue. Currently all drivers that use ring_sw use triggers and I am yet to see a good reason for any driver not doing so. Signed-off-by: Jonathan Cameron Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 073e5371e253f80fb41cf915a0abd2f1b0e8d410 Author: Jonathan Cameron Date: Thu Jul 29 17:50:48 2010 +0100 staging: iio: adis16350 add dummy ring functions for no ring build case Signed-off-by: Jonathan Cameron Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit b98c9e60a44645737fa2ffef9a2d1ef2243c50d5 Author: Jonathan Cameron Date: Thu Jul 29 17:50:47 2010 +0100 staging: iio: lis3l02dq add a thresh_timestamp field to state for no ring case Signed-off-by: Jonathan Cameron Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 34f57cc7894b7ba124006149a0c7b5f58496b25f Author: Jonathan Cameron Date: Thu Jul 29 17:50:46 2010 +0100 staging: iio: iio_sw_ring_helper_state - add dummy case for no buffer builds. Signed-off-by: Jonathan Cameron Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 99e6d06521f2a522ff5aaa812552f68220507c67 Author: Dimitris Michailidis Date: Mon Aug 2 13:19:24 2010 +0000 cxgb4: update driver version Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit ac50bed3755f96dd3ad3502aa0e0df146aa4ff57 Author: Dimitris Michailidis Date: Mon Aug 2 13:19:23 2010 +0000 cxgb4: add new PCI IDs Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 7a3acb852839fd8c1a590ae396e856d75c5faf7b Author: Dimitris Michailidis Date: Mon Aug 2 13:19:22 2010 +0000 cxgb4: fix wrong shift direction Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 060e0c752b5047ee691120b75df4c16743981e50 Author: Dimitris Michailidis Date: Mon Aug 2 13:19:21 2010 +0000 cxgb4: support running the driver on PCI functions besides 0 Add support for running the driver on any PCI function. Mostly this entails replacing a constant 0 in a number of calls with the variable function number. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 35d35682041686572d5158993dede90bc73dc1d9 Author: Dimitris Michailidis Date: Mon Aug 2 13:19:20 2010 +0000 cxgb4: advertise NETIF_F_TSO_ECN The device supports TSO+ECN. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 1ae970e0c047fbb1050865c6cf3ac68c7ca67dba Author: Dimitris Michailidis Date: Mon Aug 2 13:19:19 2010 +0000 cxgb4: get on-chip queue info from FW and create a memory window for them Get info about the availability of Tx on-chip queues from FW and if they are supported set up a memory window for them. iw_cxgb4 will be using them. Move the existing window setup later in the init sequence, after we have collected the new info. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 625ac6ae5739b4da9bdfd44cbac2f9b6fec17db3 Author: Dimitris Michailidis Date: Mon Aug 2 13:19:18 2010 +0000 cxgb4: fix TSO descriptors Commit 1704d74894912b8ecc3e95cecd7bde336a0b1bf2 ("cxgb4vf: small changes to message processing structures/macros") was incomplete and causes cxgb4 to write bad TSO descriptors. Fix that up by reverting the offending part of that commit and adjusting field accesses now that they are one level deeper. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit ba5d3c66e02c3dac66a386b6af0dc9687a4dba67 Author: Dimitris Michailidis Date: Mon Aug 2 13:19:17 2010 +0000 cxgb4: don't offload Rx checksums for IPv6 fragments The checksum provided by the device doesn't include the L3 headers, as IPv6 expects. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 63bcceec6e3ba8ffe0e2a0bec75afcdf6403165c Author: Dimitris Michailidis Date: Mon Aug 2 13:19:16 2010 +0000 cxgb4: disable an interrupt that is neither used nor serviced Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit a3f2279ea06d8521c2d7abb0f6c0f48c7f5a6508 Author: Dan Carpenter Date: Mon Aug 2 16:08:43 2010 -0700 hp100: unmap memory on error path There was an error path where "mem_ptr_virt" didn't get unmapped. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 71cd03b0044183843318bfac0b6ce5868a96ef34 Author: Julia Lawall Date: Mon Aug 2 16:04:21 2010 -0700 arch/sparc/mm: Use GFP_KERNEL GFP_ATOMIC is not needed here, as evidenced by the other two uses of GFP_KERNEL in the same function. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ identifier f; @@ *f(...,GFP_ATOMIC,...) ... when != spin_unlock(...) when != read_unlock(...) when != write_unlock(...) when != read_unlock_irq(...) when != write_unlock_irq(...) when != read_unlock_irqrestore(...) when != write_unlock_irqrestore(...) when != spin_unlock_irq(...) when != spin_unlock_irqrestore(...) *f(...,GFP_KERNEL,...) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 9292d8f20ff3c034c99c2adfe27496957b3defe3 Author: Krzysztof Hałasa Date: Mon Aug 2 16:03:29 2010 -0700 Tulip: don't initialize SBE xT3E3 WAN ports. SBE 2T3E3 cards use DECchips 21143 but they need a different driver. Don't even try to use a normal tulip driver with them. Signed-off-by: Krzysztof Hałasa Signed-off-by: David S. Miller commit 3f326d40994f922e0a3e468dd7fd9999eaf71574 Author: Joe Perches Date: Mon Aug 2 16:01:35 2010 -0700 drivers/net/wan/farsync.c: Use standard pr_ Remove locally defined equivalents Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 4fc6eb7d35a28d808ff6c77fa36e637e334dceac Merge: 9ed6eda 8dd014a Author: David S. Miller Date: Mon Aug 2 15:54:07 2010 -0700 Merge branch 'vhost-net-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost commit f4ed2877b16e8146427306aea8819adac5c88374 Author: Yinghai Lu Date: Mon Aug 2 02:17:31 2010 -0700 x86, setup: reorganize the early console setup Separate early_serial_console from tty.c This allows for reuse of early_serial_console.c/string.c/printf.c/cmdline.c in boot/compressed/. -v2: according to hpa, don't include string.c etc -v3: compressed/misc.c must have early_serial_base as static, so move it back to tty.c for setup code Signed-off-by: Yinghai Lu LKML-Reference: <4C568D2B.205@kernel.org> Signed-off-by: H. Peter Anvin commit 9ed6eda4fad9ea95e99f1e3cc546bcde049695cf Author: Matt Carlson Date: Mon Aug 2 11:26:08 2010 +0000 tg3: Update version to 3.113 This patch updates the tg3 version to 3.113. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit f07e9af31e6e1bf2a499e1f52cbf0982619fa611 Author: Matt Carlson Date: Mon Aug 2 11:26:07 2010 +0000 tg3: Migrate tg3_flags to phy_flags This patch moves most of the phy related flag definitions over to the phyflags member and changes the code accordingly. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 80096068bc21420ba4d690341a3c70c49017d167 Author: Matt Carlson Date: Mon Aug 2 11:26:06 2010 +0000 tg3: Create phy_flags and migrate phy_is_low_power This patch deletes the link_config.phy_is_low_power flag and creates a new phy_flags device member to store all phy related settings. All the code is converted accordingly. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit f08aa1a8b8ff0738d42936c3ac8c5516848bca02 Author: Matt Carlson Date: Mon Aug 2 11:26:05 2010 +0000 tg3: Add phy-related preprocessor constants This patch replaces some instances of hardcoded phy register values with preprocessor equivalents. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 6ee7c0a0a5003abd4afd724f5c2f654fe7328c0a Author: Matt Carlson Date: Mon Aug 2 11:26:04 2010 +0000 tg3: Add error reporting to tg3_phydsp_write() This patch adds error reporting to the tg3_phydsp_write() function and converts a few more locations to use this function over the inlined equivalent. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit f65aac166fe10b96e64c233980a3522fc50fbecf Author: Matt Carlson Date: Mon Aug 2 11:26:03 2010 +0000 tg3: Improve small packet performance smp_mb() inside tg3_tx_avail() is used twice in the normal tg3_start_xmit() path (see illustration below). The full memory barrier is only necessary during race conditions with tx completion. We can speed up the tx path by replacing smp_mb() in tg3_tx_avail() with a compiler barrier. The compiler barrier is to force the compiler to fetch the tx_prod and tx_cons from memory. In the race condition between tg3_start_xmit() and tg3_tx(), we have the following situation: tg3_start_xmit() tg3_tx() if (!tg3_tx_avail()) BUG(); ... if (!tg3_tx_avail()) netif_tx_stop_queue(); update_tx_index(); smp_mb(); smp_mb(); if (tg3_tx_avail()) if (netif_tx_queue_stopped() && netif_tx_wake_queue(); tg3_tx_avail()) With smp_mb() removed from tg3_tx_avail(), we need to add smp_mb() to tg3_start_xmit() as shown above to properly order netif_tx_stop_queue() and tg3_tx_avail() to check the ring index. If it is not strictly ordered, the tx queue can be stopped forever. This improves performance by about 3% with 2 ports running bi-directional 64-byte packets. Reviewed-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 67b284d476bcb3d100e946da23d6cf9acfd0465c Author: Matt Carlson Date: Mon Aug 2 11:26:02 2010 +0000 tg3: Remove 5720, 5750, and 5750M These devices were never released to the public. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit ecc796486f0a7f4958f8dc7550267570dcacb608 Author: Matt Carlson Date: Mon Aug 2 11:26:01 2010 +0000 tg3: Detect APE firmware types This patch adds code to determine the APE firmware type and report this along with the firmware version. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 8c69b1e702527e39c0b4fbda79d2738d186a3908 Author: Matt Carlson Date: Mon Aug 2 11:26:00 2010 +0000 tg3: Restrict ASPM workaround devlist The ASPM workaround setting obtained from NVRAM only works with devices older than 5717. This patch enforces the restriction. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit f37500d3f66ba82888315838278d56fc27308327 Author: Matt Carlson Date: Mon Aug 2 11:25:59 2010 +0000 tg3: Manage gphy power for CPMU-less devs only This patch changes the code to only manage the PCIe gphy power for CPMU-less devices only. The CPMU takes over management for newer chips. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 88075d915b51d9a17cc7436c868013a3113a849a Author: Matt Carlson Date: Mon Aug 2 11:25:58 2010 +0000 tg3: Don't access phy test ctrl reg for 5717+ The phy test register location has been repurposed for 5717+ devices. This patch changes the code to avoid this location for these devices. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit c885e824699f49bc3758a0dec760e189cd774e79 Author: Matt Carlson Date: Mon Aug 2 11:25:57 2010 +0000 tg3: Create TG3_FLG3_5717_PLUS flag This patch creates a TG3_FLG3_5717_PLUS flag to collectively describe the set of changes in the ASIC that will apply to all future chip revisions. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 774ee7525ff94e597844c9f7f6a48938906df698 Author: Matt Carlson Date: Mon Aug 2 11:25:56 2010 +0000 tg3: Disable TSS also during tg3_close() The TSS flag needs to be turned off during tg3_close(). If the device fails to allocate more than one MSI-X vector the next time the device is brought up, transmits will fail. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 6de34cb963a934953fdd365937b4b75959256602 Author: Matt Carlson Date: Mon Aug 2 11:25:55 2010 +0000 tg3: Add 5784 ASIC rev to earlier PCIe MPS fix tg3 commit e7126997342560533317d8467e8516119ebcbd21 entitled "tg3: Preserve PCIe MPS setting for new devs" attempted to ensure the PCIe link negotiated Maximum Payload Size (MPS) setting was 128 bytes for all devices that didn't support higher speeds. The 5784 device was mistakenly added to this list when it shouldn't have. This patch removes the 5784 ASIC rev devices from that list. Reviewed-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 0a1eae391d0d92b60cff9f55cdaf3861b4e33922 Author: Arnaldo Carvalho de Melo Date: Mon Aug 2 19:45:23 2010 -0300 perf tools: Don't keep unreferenced maps when unmaps are detected For a file with: [root@emilia linux-2.6-tip]# perf report -D -fi allmodconfig-j32.perf.data | grep events: TOTAL events: 36933 MMAP events: 9056 LOST events: 0 COMM events: 1702 EXIT events: 1887 THROTTLE events: 8 UNTHROTTLE events: 8 FORK events: 1894 READ events: 0 SAMPLE events: 22378 ATTR events: 0 EVENT_TYPE events: 0 TRACING_DATA events: 0 BUILD_ID events: 0 [root@emilia linux-2.6-tip]# Testing with valgrind and making perf_session__delete() a nop, so that we can notice how many maps were actually deleted due to not having any samples on it: ==== HEAP SUMMARY: Before: ==10339== in use at exit: 8,909,997 bytes in 68,690 blocks ==10339== total heap usage: 78,696 allocs, 10,007 frees, 11,925,853 bytes allocated After: ==10506== in use at exit: 8,902,605 bytes in 68,606 blocks ==10506== total heap usage: 78,696 allocs, 10,091 frees, 11,925,853 bytes allocated I.e. just 84 detected unmaps with no hits out of 9056 for this workload, not much, but in some other long running workload this may save more bytes. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 22a57f5896df218356bae6203dfaf04bcfd6c88c Author: H. Peter Anvin Date: Mon Aug 2 15:34:44 2010 -0700 x86, setup: Allow global variables and functions in the decompressor In order for global variables and functions to work in the decompressor, we need to fix up the GOT in assembly code. Signed-off-by: H. Peter Anvin LKML-Reference: <4C57382E.8050501@zytor.com> commit be783a47214afc5a0aea9dafcbd9f1535ba05e94 Author: Shaohua Li Date: Mon Aug 2 08:49:34 2010 +0800 x86, vdso: Unmap vdso pages We mapped vdso pages but never unmapped them and the virtual address is lost after exiting from the function, so unmap vdso pages here. Signed-off-by: Shaohua Li LKML-Reference: <20100802004934.GA2505@sli10-desk.sh.intel.com> Signed-off-by: H. Peter Anvin commit 83bf2e4089bebc2c7fd14a79de5954b26fe8d4af Merge: de38483 6661481 Author: David S. Miller Date: Mon Aug 2 15:07:58 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 commit 70597f21f128b7dd6a2490078bea99d704b6f8c3 Author: Arnaldo Carvalho de Melo Date: Mon Aug 2 18:59:28 2010 -0300 perf session: Invalidate last_match when removing threads from rb_tree If we receive two PERF_RECORD_EXIT for the same thread, we can end up reusing session->last_match and trying to remove the thread twice from the rb_tree, causing a segfault, so invalidade last_match in perf_session__remove_thread. Receiving two PERF_RECORD_EXIT for the same thread is a bug, but its a harmless one if we make the tool more robust, like this patch does. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 076c6e45215aea0de1ed34d3d5079fabeaabf5e1 Author: Arnaldo Carvalho de Melo Date: Mon Aug 2 18:18:28 2010 -0300 perf session: Free the ref_reloc_sym memory at the right place Which is at perf_session__destroy_kernel_maps, counterpart to the perf_session__create_kernel_maps where the kmap structure is located, just after the vmlinux_maps. Make it also check if the kernel maps were actually created, which may not be the case if, for instance, perf_session__new can't complete due to permission problems in, for instance, a 'perf report' case, when a segfault will take place, that is how this was noticed. The problem was introduced in d65a458, thus post .35. This also adds code to release guest machines as them are also created in perf_session__create_kernel_maps, so should be deleted on this newly introduced counterpart, perf_session__destroy_kernel_maps. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit af5ab277ded04bd9bc6b048c5a2f0e7d70ef0867 Author: Arjan van de Ven Date: Tue Jul 27 21:02:10 2010 -0700 clockevents: Remove the per cpu tick skew Historically, Linux has tried to make the regular timer tick on the various CPUs not happen at the same time, to avoid contention on xtime_lock. Nowadays, with the tickless kernel, this contention no longer happens since time keeping and updating are done differently. In addition, this skew is actually hurting power consumption in a measurable way on many-core systems. Signed-off-by: Arjan van de Ven LKML-Reference: <20100727210210.58d3118c@infradead.org> Signed-off-by: Thomas Gleixner commit 844a9e93d7fcd910cd94f6eb262e2cc43cacbe56 Author: Mauro Carvalho Chehab Date: Sun Aug 1 17:19:29 2010 -0300 V4L/DVB: sms: Convert IR support to use the Remote Controller core Rewrites the siano IR implementation. The previous implementation were non-standard. As such, it has issues if more than one device registers IR, as there used to have some static constants used during protocol decoding phase. Also, it used to implement its on RAW decoder, and only for RC5. The new code uses RC core subsystem for handling IR. This brings several new features to the driver, including: - Allow to dynamically replace the IR keycodes; - Supports all existing raw decoders (JVC, NEC, RC-5, RC-6, SONY); - Supports lirc dev; - Doesn't have race conditions when more than one sms IR is registered; - The code size for the IR implementation is very small; - it exports the IR features via /sys/class/rc. Signed-off-by: Mauro Carvalho Chehab commit 1722f3b376f10182db85c2f6cf5bd79b857bc9e0 Author: Mauro Carvalho Chehab Date: Sun Aug 1 15:30:50 2010 -0300 V4L/DVB: sms: properly initialize IR phys and IR name sms were using a non-compliant nomenclature for the USB devices. Fix it. Signed-off-by: Mauro Carvalho Chehab commit 4eebfb0a5f55ba7c4af33c2173862493d8845622 Author: Mauro Carvalho Chehab Date: Sun Aug 1 13:48:20 2010 -0300 V4L/DVB: standardize names at rc-dib0700 tables Use a more standard way to name those tables, as they're currently used by the script that coverts those tables to be loaded via userspace. Signed-off-by: Mauro Carvalho Chehab commit 20d64443ecaaedb971193a305c32b672c81fc819 Author: Mauro Carvalho Chehab Date: Sun Aug 1 13:01:40 2010 -0300 V4L/DVB: smsusb: enable IR port for Hauppauge WinTV MiniStick Add the proper gpio port for WinTV MiniStick, with the information provided by Michael. Thanks-to: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit d3c501d1938c56c9998fd51fc8dadb49ddd6110e Author: Mauro Carvalho Chehab Date: Sun Aug 1 10:35:49 2010 -0300 V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5 Simplifies the logic for handling firmware 1.20 RC messages, fixing the logic. While here, I tried to use a RC-6 remote controller from my TV set, but it didn't work with dib0700. Not sure why, but maybe this never worked. Signed-off-by: Mauro Carvalho Chehab commit 0ffd1ab34a00b1e92af50ef11e696839f4cf642b Author: Mauro Carvalho Chehab Date: Sun Aug 1 09:37:23 2010 -0300 V4L/DVB: dib0700: properly implement IR change_protocol This patch implements change_protocol callback. With this change, there's no need for an extra modprobe parameter to specify the protocol. When a table is loaded (either from in-kernel rc-map tables or via ir-keytable program), the driver will automatically change the protocol, in order to work with the given table. Signed-off-by: Mauro Carvalho Chehab commit 5af935cc96a291f90799bf6a2587d87329a91699 Author: Mauro Carvalho Chehab Date: Sun Aug 1 08:02:35 2010 -0300 V4L/DVB: dib0700: break keytable into NEC and RC-5 variants Instead of having one big keytable with 2 protocols inside, break it into two separate tables, being one for NEC and another for RC-5 variants, and properly identify what variant should be used at the boards entries. Signed-off-by: Mauro Carvalho Chehab commit 8dc09004978538d211ccc36b5046919489e30a55 Author: Mauro Carvalho Chehab Date: Sat Jul 31 23:37:19 2010 -0300 V4L/DVB: dib0700: avoid bad repeat a 250ms delay is too low for this device. It ends by producing false repeat events. Increase the delay time to 500 ms to avoid troubles. Signed-off-by: Mauro Carvalho Chehab commit 72b393106bddc9f0a1ab502b4c8c5793a0441a30 Author: Mauro Carvalho Chehab Date: Sat Jul 31 22:56:00 2010 -0300 V4L/DVB: Port dib0700 to rc-core Use the new rc-core handler at dvb-usb-remote for dib0700 driver. Signed-off-by: Mauro Carvalho Chehab commit d700226902a62a3b6f3563782d569c0e2af74397 Author: Mauro Carvalho Chehab Date: Sat Jul 31 19:24:49 2010 -0300 V4L/DVB: Add a keymap file with dib0700 table Signed-off-by: Mauro Carvalho Chehab commit 6520342ba9a8f81f3f0f1e33439462ee60468558 Author: Mauro Carvalho Chehab Date: Sat Jul 31 19:07:55 2010 -0300 V4L/DVB: dvb-usb: add support for rc-core mode Allows dvb-usb drivers to use rc-core, instead of the legacy implementation. No driver were ported yet to rc-core, so, some small adjustments may be needed, when starting to migrate the drivers. Signed-off-by: Mauro Carvalho Chehab commit f72a27b8ed4458bb9f7203408441d27382bc93f4 Author: Mauro Carvalho Chehab Date: Sat Jul 31 18:04:09 2010 -0300 V4L/DVB: dvb-usb: prepare drivers for using rc-core This is a big patch, yet trivial. It just move the RC properties to a separate struct, in order to prepare the dvb-usb drivers to use rc-core. There's no change on the behavior of the drivers. With this change, it is possible to have both legacy and rc-core based code inside the dvb-usb-remote, allowing a gradual migration to rc-core, driver per driver. Signed-off-by: Mauro Carvalho Chehab commit 34abf2194499571b2efa6b4aface8c0ea0c47ce1 Author: Mauro Carvalho Chehab Date: Sat Jul 31 11:24:57 2010 -0300 V4L/DVB: dvb-usb: get rid of struct dvb_usb_rc_key dvb-usb has its own IR handle code. Now that we have a Remote Controller subsystem, we should start using it. So, remove this struct, in favor of the similar struct defined at the RC subsystem. This is a big, but trivial patch. It is a 3 line delect, plus lots of rename on several dvb-usb files. Signed-off-by: Mauro Carvalho Chehab commit 0172fea3c0cf55b61bc94738db3ece513264774c Author: Guennadi Liakhovetski Date: Tue Jul 20 10:08:56 2010 -0300 V4L/DVB: rj54n1cb0c: fix a comment in the driver RJ54N1CB0C is a Sharp camera sensor. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 765fe17c4f018c019f1976455084f528474fc7f8 Author: Guennadi Liakhovetski Date: Thu Jul 29 04:11:42 2010 -0300 V4L/DVB: V4L2: sh_vou: VOU does support the full PAL resolution too SH7724 datasheet specifies 480 pixels as the VOU maximum vertical resolution. This is a bug in the datasheet, VOU also supports the full PAL resolution: 576 lines. Adjust the driver accordingly. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit b3b5020d8c12037f030242aab8e272148bf1f472 Author: Guennadi Liakhovetski Date: Mon Jul 26 12:13:34 2010 -0300 V4L/DVB: V4L2: sh_mobile_camera_ceu: add support for CSI2 Using CEU with CSI2 on SH-Mobile requires some special configuration of the former. We also have to switch from calling only one subdev .s_mbus_fmt and .try_mbus_fmt to calling all subdevices. Take care to increment CSI2 driver use count to prevent it from unloading, while in use. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 077e2c10c9cb618d571bf16475db696610bdb24a Author: Guennadi Liakhovetski Date: Mon Jul 26 11:12:43 2010 -0300 V4L/DVB: V4L2: soc-camera: add a MIPI CSI-2 driver for SH-Mobile platforms Some SH-Mobile SoCs implement a MIPI CSI-2 controller, that can interface to several video clients and send data to the CEU or to the Image Signal Processor. This patch implements a v4l2-subdevice driver for CSI-2 to be used within the soc-camera framework, implementing the second subdevice in addition to the actual video clients. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 52d268a36246ee4156cc719036522616bb4d73fa Author: Guennadi Liakhovetski Date: Mon Jul 26 11:37:13 2010 -0300 V4L/DVB: V4L2: soc-camera: export soc-camera bus type for notifications Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit c6b65ab78bebf5ceaa8de53d8a9c4f5e34e45e57 Author: Guennadi Liakhovetski Date: Mon Jul 26 10:41:55 2010 -0300 V4L/DVB: V4L2: mediabus: add 12-bit Bayer and YUV420 pixel formats These formats belong to the standard format set, defined by the MIPI CSI-2 specification. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit ace6e9799f585994c92ac3c0696bc336e50077e6 Author: Guennadi Liakhovetski Date: Thu Jul 22 16:52:51 2010 -0300 V4L/DVB: mediabus: fix ambiguous pixel code names Endianness notation is meaningless for 8 bit YUYV codes. Switch pixel code names to explicitly state the order of colour components in the data stream. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 0f9313ad068af4156109661fb8e94ee7fcb79001 Author: Mauro Carvalho Chehab Date: Tue Jul 27 18:44:45 2010 -0300 V4L/DVB: staging/lirc: CodingStyle cleanups Signed-off-by: Mauro Carvalho Chehab commit 14f184e6d19855384ec6468d6894a6e48ed3f869 Author: Jarod Wilson Date: Mon Jul 26 20:34:23 2010 -0300 V4L/DVB: staging/lirc: wire up Kconfig and Makefile bits Make the bits under staging/lirc/ buildable, and add a TODO note. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 69b1214c2c9189cd0fae7a79ee266d50261be9c8 Author: Jarod Wilson Date: Mon Jul 26 20:34:04 2010 -0300 V4L/DVB: staging/lirc: add lirc_zilog driver Commonly found on several Hauppauge video capture devices. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 44abf0d9b4de23b94072b389d6e3748832e2ef34 Author: Jarod Wilson Date: Mon Jul 26 20:33:09 2010 -0300 V4L/DVB: staging/lirc: add lirc_ttusbir driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 19770693c35485427e0654af1445698f62d5912b Author: Jarod Wilson Date: Mon Jul 26 20:32:49 2010 -0300 V4L/DVB: staging/lirc: add lirc_streamzap driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 404f3e956bc7ab03ac604fabf136e69607315f60 Author: Jarod Wilson Date: Mon Jul 26 20:32:03 2010 -0300 V4L/DVB: staging/lirc: add lirc_sir driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 1beef3c1c6af76895411691d08630757243984d0 Author: Jarod Wilson Date: Mon Jul 26 20:31:45 2010 -0300 V4L/DVB: staging/lirc: add lirc_serial driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit c5ac4571171cb4db94581e9e7a03b9dc08a7df19 Author: Jarod Wilson Date: Mon Jul 26 20:31:11 2010 -0300 V4L/DVB: staging/lirc: add lirc_sasem driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 805a8966659563df68ea7bbd94241dafd645c725 Author: Jarod Wilson Date: Mon Jul 26 20:30:51 2010 -0300 V4L/DVB: staging/lirc: add lirc_parallel driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit c147f9078a6fca5b43b6e9e4b7b6a99b50c6e2bb Author: Jarod Wilson Date: Mon Jul 26 20:30:02 2010 -0300 V4L/DVB: staging/lirc: add lirc_it87 driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 85cb01afc844f7b4e65df04a96b0c3729db59eba Author: Jarod Wilson Date: Mon Jul 26 20:30:25 2010 -0300 V4L/DVB: staging/lirc: add lirc_ite8709 driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 4cb613aea4b250cbd66d8494f7b34cb9c26f5c0b Author: Jarod Wilson Date: Mon Jul 26 20:29:43 2010 -0300 V4L/DVB: staging/lirc: add lirc_imon driver Nb: this is a very trimmed-down lirc_imon, which only supports the oldest generation of imon devices that don't do onboard signal decoding like the most recent generation imon devices -- those are now supported by the ir-core imon driver. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit eedaf1ae7c365cb150a45cb4857bdef7adc0eb0e Author: Jarod Wilson Date: Mon Jul 26 20:29:00 2010 -0300 V4L/DVB: staging/lirc: add lirc_igorplugusb driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 35f168d10f64aafcee86c984efca8cb6537bfe26 Author: Mauro Carvalho Chehab Date: Tue Jul 27 17:56:24 2010 -0300 V4L/DVB: staging: Add an specific TODO note for lirc_i2c Signed-off-by: Mauro Carvalho Chehab commit 085ffd08aa5bf61131641f84c8e8296176ecfd4b Author: Jarod Wilson Date: Mon Jul 26 20:28:37 2010 -0300 V4L/DVB: staging/lirc: add lirc_i2c driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 9119fddb77bf0d7c1bf6986b3a2c882de6ec2923 Author: Jarod Wilson Date: Mon Jul 26 20:27:55 2010 -0300 V4L/DVB: staging/lirc: add lirc_ene0100 driver [mchehab@redhat.com: fixed a few WARNING: please, no space before tabs] Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit d10d634143780931f92a265e2aa992428ff1af59 Author: Jarod Wilson Date: Mon Jul 26 20:26:53 2010 -0300 V4L/DVB: staging/lirc: add lirc_bt829 driver Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 17f93e1e3b8aabab6f9b6aa783203fa555ad26ca Author: Michael Krufky Date: Mon Jun 21 01:49:42 2010 -0300 V4L/DVB: af9005: use generic_bulk_ctrl_endpoint_response Signed-off-by: Michael Krufky Acked-by: Luca Olivetti Signed-off-by: Mauro Carvalho Chehab commit 7e48b30af033076c85ab48a8306b5588faf5fb4b Author: Jarod Wilson Date: Sun Mar 7 17:55:43 2010 -0300 V4L/DVB: dvb: add support for kworld 340u and ub435-q to em28xx-dvb This adds support for the KWorld PlusTV 340U and KWorld UB345-Q ATSC sticks, which are really the same device. The sticks have an eMPIA em2870 usb bridge chipset, an LG Electronics LGDT3304 ATSC/QAM demodulator and an NXP TDA18271HD tuner -- early versions of the 340U have a a TDA18271HD/C1, later models and the UB435-Q have a C2. The stick has been tested succesfully with both VSB_8 and QAM_256 signals. Its using lgdt3304 support added to the lgdt3305 driver by a prior patch, rather than the current lgdt3304 driver, as its severely lacking in functionality by comparison (see said patch for details). Signed-off-by: Jarod Wilson Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 1c488ea9d52032d07dd320d31e0720239c93dd64 Author: Jiri Slaby Date: Sun Jul 18 15:34:18 2010 -0300 V4L/DVB: DVB: fix dvr node refcounting In dvb_dvr_release, there is a test dvbdev->users==-1, but users are never negative. This error results in hung tasks: task PC stack pid father bash D ffffffffa000c948 0 3264 3170 0x00000000 ffff88003aec5ce8 0000000000000086 0000000000011f80 0000000000011f80 ffff88003aec5fd8 ffff88003aec5fd8 ffff88003b848670 0000000000011f80 ffff88003aec5fd8 0000000000011f80 ffff88003e02a030 ffff88003b848670 Call Trace: [] dvb_dmxdev_release+0xc5/0x130 [] ? autoremove_wake_function+0x0/0x40 [] dvb_usb_adapter_dvb_exit+0x42/0x70 [dvb_usb] [] dvb_usb_exit+0x55/0xd0 [dvb_usb] [] dvb_usb_device_exit+0x4e/0x70 [dvb_usb] [] af9015_usb_device_exit+0x55/0x60 [dvb_usb_af9015] [] usb_unbind_interface+0x55/0x1a0 [] __device_release_driver+0x70/0xe0 ... So check against 1 there instead. BTW why's the TODO there? Adding TODOs to the code without descriptions is like adding nothing. Signed-off-by: Jiri Slaby Signed-off-by: Mauro Carvalho Chehab commit bbafc0cb6c52c40647f561854db5fbac4d608186 Author: Laurent Pinchart Date: Sat Jul 10 15:03:20 2010 -0300 V4L/DVB: uvc: Move constants and structures definitions to linux/usb/video.h The UVC host and gadget drivers both define constants and structures in private header files. Move all those definitions to linux/usb/video.h where they can be shared by the two drivers (and be available for userspace applications). Signed-off-by: Laurent Pinchart Signed-off-by: Greg Kroah-Hartman Signed-off-by: Mauro Carvalho Chehab commit c89f66f629f0e94806e3ec6f8f77b61a8feed39f Author: Antti Palosaari Date: Thu Jun 17 21:19:13 2010 -0300 V4L/DVB: af9013: fix comments Fix comments. It is demodulator driver not DVB USB -bridge. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit ce99efa53ee2e7989b5f44243518f086977760a6 Author: Antti Palosaari Date: Thu Jun 17 21:16:12 2010 -0300 V4L/DVB: af9013: output fw version as four digit long Firmware version is four digit long. Print all four digits instead of three digits used earlier. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 8af5e3813b78e429c1774bfac67033c3948c9c8e Author: Antti Palosaari Date: Thu Jun 17 20:56:27 2010 -0300 V4L/DVB: af9013: af9013_read_status() refactoring Function af9013_read_status() refactoring. Read lock bits in different order to save count of register reads. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 737fabf051e1e438f5cb81db84e559cede94dafb Author: Antti Palosaari Date: Wed Jun 16 16:43:40 2010 -0300 V4L/DVB: af9013: program tuner before demodulator Program tuner before demodulator in case of channel set. Earlier it was programmed during demodulator programming. This seems to resolve weird error where demodulator misses sometimes ability to gain lock. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 2606cfa3f691b844aee64485eda1629f33cbc0ee Author: Antti Palosaari Date: Sun May 23 18:26:37 2010 -0300 V4L/DVB: af9015: support for AverMedia AVerTV Volar M (A815Mac) Add USB ID 07ca:815a for AverMedia AVerTV Volar M (A815Mac). Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 4e9f5677755c8f2eda6a293139084010cbbf2044 Author: Antti Palosaari Date: Fri May 14 15:24:28 2010 -0300 V4L/DVB: get_dvb_firmware: update af9015 New driver contains new firmware 5.1.0.0. Fix script to get that. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 3b11f4e90dd83f99d447e2862f3ecd216221d3f0 Author: Antti Palosaari Date: Fri May 14 13:59:50 2010 -0300 V4L/DVB: af9013: add support for firmware 5.1.0.0 Add support for new firmware version 5.1.0.0. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 76ed0fe75750717042932a49d07f643b98dfdd5b Author: Jean-François Moine Date: Wed Jul 14 07:09:50 2010 -0300 V4L/DVB: gspca - vc032x: Move the first VC0321 settings to sd_init() The first VC0321 settings were done at webcam connection only. They must also be done on resume after suspend. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 19697b546c9bc5b3c44070be1cfc7ce54a97c0d9 Author: Jean-François Moine Date: Wed Jul 14 06:33:51 2010 -0300 V4L/DVB: gspca - sonixj: Do the audio input work for webcams with a microphone The bit 0x04 of the bridge register 02 (GPIO) is used for audio connection in webcams containing the bridge SN9C105. This patch sets it correctly, according to the presence of an audio device. Tested-by: Kyle Baker Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 35680baa6822df98a6ed602e2380aa0a04e18b07 Author: Jean-François Moine Date: Wed Jul 14 06:30:18 2010 -0300 V4L/DVB: gspca - main: Handle the audio device When there is an audio device, use a lower alternate setting. This patch does not fix correctly all audio and bandwidth problems. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit c4dc692ce6212f4513c39dfcde725aab438a2940 Author: Jean-François Moine Date: Wed Jul 14 06:26:54 2010 -0300 V4L/DVB: gspca - main: Adjust and remove some debug messages Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit a4f96eb2b1d3e0013da7b82b3d3ccd361c3b46b9 Author: Jean-François Moine Date: Wed Jul 14 06:25:16 2010 -0300 V4L/DVB: gspca - main: Remove useless audio ioctl's Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit a2ba6f27cd2c66ad1119e0354a828a1be715c2f1 Author: Jean-François Moine Date: Wed Jul 14 06:21:16 2010 -0300 V4L/DVB: gspca - main: Fix a compilation warning Reported-by: Justin P. Mattock Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit b5f5933a6ab63725aedfb92f015007d4ccd33a55 Author: Dan Carpenter Date: Fri Jul 23 07:09:20 2010 -0300 V4L/DVB: au0828: move dereference below sanity checks This function has sanity checks to make sure that "dev" is non-null. I moved the dereference down below the checks. In the current code "dev" is never actually null. Signed-off-by: Dan Carpenter Acked-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 49b7a12c0aa217c9fb163d330b5b80bafe55cb8b Author: Dan Carpenter Date: Fri Jul 23 07:08:26 2010 -0300 V4L/DVB: media/IR: testing the wrong variable There is a typo here. We meant to test "rbuf" instead of "drv". We already tested "drv" earlier. Signed-off-by: Dan Carpenter Acked-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 5c79b496a713dac1a706845bdd047aae15421ef5 Author: Julia Lawall Date: Tue Jul 20 19:22:44 2010 -0300 V4L/DVB: drivers/video/omap2/displays: add missing mutex_unlock Add a mutex_unlock missing on the error paths. The use of the mutex is balanced elsewhere in the file. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression E1; @@ * mutex_lock(E1,...); <+... when != E1 if (...) { ... when != E1 * return ...; } ...+> * mutex_unlock(E1,...); // Signed-off-by: Julia Lawall Acked-by: Mike Isely Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit febe2ea10e041c014b295a0321f7ec62c05b7e3f Author: Andrew Morton Date: Tue Jul 20 19:22:42 2010 -0300 V4L/DVB: "dib3000mc: reduce large stack usage" fix s/ENODEV/ENOMEM, per Andreas. This fix got lost when someone merged "dib3000mc: reduce large stack usage". Please don't lose fixes. Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit 37b58bfe4bb3df303aa9d7f1ccdbfc477b42c5e2 Author: Jiri Slaby Date: Mon Jul 19 14:39:34 2010 -0300 V4L/DVB: VIDEO: ivtvfb, remove unneeded NULL test Stanse found that in ivtvfb_callback_cleanup and ivtvfb_callback_init there are unneeded tests for itv being NULL. But itv is initialized as container_of with non-zero offset in those functions, so it is never NULL (even if v4l2_dev is). This was found because itv is dereferenced earlier than the test. Signed-off-by: Jiri Slaby Reviewed-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 6efb870a115ac223ab578bc76699ba8591250568 Author: Jarod Wilson Date: Fri Jul 16 18:29:54 2010 -0300 V4L/DVB: IR/lirc: use memdup_user instead of copy_from_user Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 5690085e7ba7f3081c6ab6db3a3b543444ad8a21 Author: Jarod Wilson Date: Fri Jul 16 14:25:33 2010 -0300 V4L/DVB: IR/lirc: make lirc userspace and staging modules buildable The lirc userspace needs all the current ioctls defined, and we need to put the header files in places out-of-tree and/or staging lirc drivers (which I plan to prep soon) can easily build with. I've actually tested this in a tree w/all the lirc drivers queued up to be submitted for staging. I'm also reasonably sure that Andy Walls is going to need most of the ioctls anyway for his cx23888 IR driver work. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 1e687528777acab2c73cd12fb35d71088ad73a3c Author: Christian Dietrich Date: Wed Jul 14 10:21:30 2010 -0300 V4L/DVB: drivers/media/video: Remove dead CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE doesn't exist in Kconfig and is never defined anywhere else, therefore removing all references for it from the source code. Signed-off-by: Christian Dietrich Acked-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit abf84383ecadc8ada1963f9976e887c6f0b1bad9 Author: Joe Perches Date: Mon Jul 12 17:50:03 2010 -0300 V4L/DVB: drivers/media: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Acked-by: Jarod Wilson Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 1676e4ab55944d483695f51e46b1e629af59706e Author: Jean-François Moine Date: Tue Jul 6 05:14:57 2010 -0300 V4L/DVB: gspca - sq930x: Add some comments for sensor mt9v111 Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit ef35d34fea38c52a595c30424d332a9dddd2200d Author: Jean-François Moine Date: Tue Jul 6 05:05:05 2010 -0300 V4L/DVB: gspca - vc032x: Add trace of USB exchanges Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit fe854ec07cada95296e882aa795db83409c61eeb Author: Jean-François Moine Date: Tue Jul 6 05:00:07 2010 -0300 V4L/DVB: gspca - vc032x: Stop the USB exchanges on error Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 98475cb642b520a5d50bd6d6abaadfee8688c110 Author: Jean-François Moine Date: Tue Jul 6 04:44:54 2010 -0300 V4L/DVB: gspca - vc032x: Add some comments Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit f7059eaa285c0460569ffd26c43ae07e3f03cd6c Author: Jean-François Moine Date: Tue Jul 6 04:32:27 2010 -0300 V4L/DVB: gspca - main: Don't use the frame buffer flags This patch fixes possible race conditions in queue management with SMP: when a frame was completed, the irq function tried to use the next frame buffer. At this time, it was possible that the application on an other processor updated the frame pointer, making the image to point to a bad buffer. The patch contains two main changes: - the image transfer uses the queue indexes which are protected against simultaneous memory access, - the image pointer which is used for image concatenation is only set at interrupt level. Some subdrivers which used the image pointer have been updated. Reported-by: Hans de Goede Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 02bbcb9d863df10b5a4b91ba5b4c76eaf1340883 Author: Jean-François Moine Date: Tue Jul 6 04:16:40 2010 -0300 V4L/DVB: gspca - main: Possible race condition in queue management The problem may occur with SMP: - a frame is completed at interrupt level (in gspca_frame_add with packet_type == LAST_PACKET, - just after clearing the bit V4L2_BUF_FLAG_QUEUED and before setting the bit V4L2_BUF_FLAG_DONE, on the other processor, the application tries to requeue the same frame buffer, - then, the qbuf function succeeds because ALL_FLAGS are not set. The fix sets and resets the two flags in one instruction. Reported-by: Hans de Goede Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 9059cd44403608f6554b37c3b3d5598ded7a3a92 Author: Christoph Egger Date: Fri Jan 15 08:49:41 2010 -0300 V4L/DVB: remove obsolete conditionalizing on DVB_DIBCOM_DEBUG As pointed by Christoph Egger , The config Option DVB_DIBCOM_DEBUG was dropped while removing the dibusb driver in favor of dvb-usb in 2005. However it remaind existant at some places of the kernel config. Instead of just removing the debug capability, the better is to just remove the bad dependency, making the modprobe function always visible. Thanks-to: Christoph Egger Signed-off-by: Mauro Carvalho Chehab commit 7638699c253620a5745592d229b7e3ba9dbd218d Author: Ben Hutchings Date: Sat Oct 31 23:14:35 2009 -0300 V4L/DVB: lgs8gxx: remove firmware for lgs8g75 The recently added support for lgs8g75 included some 8051 machine code without accompanying source code. Replace this with use of the firmware loader. Compile-tested only. Signed-off-by: Ben Hutchings Signed-off-by: Mauro Carvalho Chehab commit 73c994e4fb69b7bb85663e5175432c307657d207 Author: Tobias Lorenz Date: Sat Jul 10 13:01:33 2010 -0300 V4L/DVB: si470x: -EINVAL overwritten in si470x_vidioc_s_tuner() This patch to the si470x_vidioc_s_tuner function was developed in cooperation with Roel Kluin . It sets the default retval to 0 instead of -EINVAL, identical to what is done in all other set/get functions of v4l2_ioctl_ops. This is just as cosmetic change, as retval is directly overwritten by the si470x_disconnect_check() anyway. Signed-off-by: Tobias Lorenz Signed-off-by: Mauro Carvalho Chehab commit 22b0766b62d517a597d8155d828c5f93e3523cfa Author: Jarod Wilson Date: Thu Jul 8 12:38:57 2010 -0300 V4L/DVB: IR/mceusb: more streamlining of device init Spent a while last night getting device initialization packet captures under Windows for all generations of devices. There are a few places where we were doing things differently, and few things we were doing that we don't need to do, particularly on gen3 hardware, and I *think* one of those things is what was locking up my pinnacle hw from time to time -- at least, its been perfectly well behaved every time its been plugged in since making this change. First up, we're adding a bit more to the gen1 init routine here. Its not absolutely necessary, the hardware works the same both with and without it, but I'd like to be consistent w/Windows here. Second, DEVICE_RESET is never called when initializing either of my gen3 devices, its only called for gen1 and gen2. The bits in the gen3 init after removing that, are safe (and interesting) to run on all hardware, so there's no more gen3-specific init done, there's instead a generic mceusb_get_parameters() that is run for all hardware. Third, the gen3 flag isn't needed. We only care if hardware is gen3 during probe, so I've dropped that from the device flags struct. Successfully tested on all three generations of mceusb hardware. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit ca17a4f0bfc48feb3b4eb3f671a82adfe89530fb Author: Mauro Carvalho Chehab Date: Sat Jul 10 11:19:42 2010 -0300 V4L/DVB: IR/mceusb: remove unused vars from gen1 init Prior init unification/simplification patch made these unused, forgot to remove them, so this silences: drivers/media/IR/mceusb.c: In function ‘mceusb_gen1_init’: drivers/media/IR/mceusb.c:769: warning: unused variable ‘partial’ drivers/media/IR/mceusb.c:768: warning: unused variable ‘i’ Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 044e5878c2158d701e6f47a9604910589a384ee2 Author: Arnd Bergmann Date: Mon Aug 2 15:43:35 2010 -0300 V4L/DVB: lirc: use unlocked_ioctl New code should not rely on the big kernel lock, so use the unlocked_ioctl file operation in lirc. Signed-off-by: Arnd Bergmann Tested-by: Jarod Wilson Acked-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit f933a41e419a954ef90605224e02c3ded78f3372 Author: Matthew McClintock Date: Wed Jul 21 16:14:53 2010 -0500 powerpc/85xx: kexec for SMP 85xx BookE systems Adds support for kexec on 85xx machines for the BookE platform. Including support for SMP machines Based off work from Maxim Uvarov Signed-off-by: Matthew McClintock Signed-off-by: Kumar Gala commit 327aec03ac4c7bbf5e41ff03ac3a84c424589f27 Author: Eric Van Hensbergen Date: Mon Aug 2 11:36:18 2010 -0500 9p: fix sparse warnings in new xattr code fixes: CHECK fs/9p/xattr.c fs/9p/xattr.c:73:6: warning: Using plain integer as NULL pointer fs/9p/xattr.c:135:6: warning: Using plain integer as NULL pointer Signed-off-by: Eric Van Hensbergen commit ea1375333ef58298ba4d3c638f3cba982c76504d Author: Eric Van Hensbergen Date: Tue Jul 27 14:49:43 2010 -0500 fs/9p: remove sparse warning in vfs_inode make v9fs_dentry_from_dir_inode static Signed-off-by: Eric Van Hensbergen commit 0b1208b1aa7a555d5ae4246bab4cd76ba3f32b2d Author: Aneesh Kumar K.V Date: Fri Jul 2 12:21:20 2010 +0530 fs/9p: destroy fid on failed remove 9P spec says: "It is correct to consider remove to be a clunk with the side effect of removing the file if permissions allow. " So even if remove fails we need to destroy the fid. Without this patch an rmdir on a directory with contents leave the new cloned directory fid fid attached to fidlist. On umount we dump the fids on the fidlist ~# rmdir /mnt2/test4/ rmdir: failed to remove `/mnt2/test4/': Directory not empty ~# umount /mnt2/ ~# dmesg [ 228.474323] Found fid 3 not clunked Signed-off-by: Aneesh Kumar K.V Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit a534c8d15b1f1d0f861fc2bb9e0529bd8486ec3f Author: Aneesh Kumar K.V Date: Wed Jun 30 19:18:50 2010 +0530 fs/9p: Prevent parallel rename when doing fid_lookup During fid lookup we need to make sure that the dentry->d_parent doesn't change so that we can safely walk the parent dentries. To ensure that we need to prevent cross directory rename during fid_lookup. Add a per superblock rename_sem rw_semaphore to prevent parallel fid lookup and rename. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit ebf46264a004818fe5b23f0ac18ac7336897d807 Author: Aneesh Kumar K.V Date: Mon May 31 13:22:56 2010 +0530 fs/9p: Add support user. xattr Signed-off-by: Aneesh Kumar K.V Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit eda25e46161527845572131b37706a458d9270ef Author: Aneesh Kumar K.V Date: Mon May 31 13:22:50 2010 +0530 net/9p: Implement TXATTRCREATE 9p call TXATTRCREATE: Prepare a fid for setting xattr value on a file system object. size[4] TXATTRCREATE tag[2] fid[4] name[s] attr_size[8] flags[4] size[4] RXATTRCREATE tag[2] txattrcreate gets a fid pointing to xattr. This fid can later be used to set the xattr value. flag value is derived from set Linux setxattr. The manpage says "The flags parameter can be used to refine the semantics of the operation. XATTR_CREATE specifies a pure create, which fails if the named attribute exists already. XATTR_REPLACE specifies a pure replace operation, which fails if the named attribute does not already exist. By default (no flags), the extended attribute will be created if need be, or will simply replace the value if the attribute exists." The actual setxattr operation happens when the fid is clunked. At that point the written byte count and the attr_size specified in TXATTRCREATE should be same otherwise an error will be returned. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit 0ef63f345c48afe5896c5cffcba57f0457d409b9 Author: Aneesh Kumar K.V Date: Mon May 31 13:22:45 2010 +0530 net/9p: Implement attrwalk 9p call TXATTRWALK: Descend a ATTR namespace size[4] TXATTRWALK tag[2] fid[4] newfid[4] name[s] size[4] RXATTRWALK tag[2] size[8] txattrwalk gets a fid pointing to xattr. This fid can later be used to read the xattr value. If name is NULL the fid returned can be used to get the list of extended attribute associated to the file system object. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit ef56547efa3c88609069e2a91f46e25c31dd536e Author: M. Mohan Kumar Date: Tue Jun 22 19:47:50 2010 +0530 9p: Implement LOPEN Implement 9p2000.L version of open(LOPEN) interface in 9p client. For LOPEN, no need to convert the flags to and from 9p mode to VFS mode. Synopsis: size[4] Tlopen tag[2] fid[4] mode[4] size[4] Rlopen tag[2] qid[13] iounit[4] [Fix mode bit format - jvrao@linux.vnet.ibm.com] Signed-off-by: M. Mohan Kumar Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbegren commit 5643135a28464e7c19d8d23a9e0804697a62c84b Author: Venkateswararao Jujjuri (JV) Date: Thu Jun 17 18:27:46 2010 -0700 fs/9p: This patch implements TLCREATE for 9p2000.L protocol. SYNOPSIS size[4] Tlcreate tag[2] fid[4] name[s] flags[4] mode[4] gid[4] size[4] Rlcreate tag[2] qid[13] iounit[4] DESCRIPTION The Tlreate request asks the file server to create a new regular file with the name supplied, in the directory (dir) represented by fid. The mode argument specifies the permissions to use. New file is created with the uid if the fid and with supplied gid. The flags argument represent Linux access mode flags with which the caller is requesting to open the file with. Protocol allows all the Linux access modes but it is upto the server to allow/disallow any of these acess modes. If the server doesn't support any of the access mode, it is expected to return error. Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit 01a622bd7409bb7af38e784cff814e5e723f7951 Author: M. Mohan Kumar Date: Wed Jun 16 14:27:22 2010 +0530 9p: Implement TMKDIR Implement TMKDIR as part of 2000.L Work Synopsis size[4] Tmkdir tag[2] fid[4] name[s] mode[4] gid[4] size[4] Rmkdir tag[2] qid[13] Description mkdir asks the file server to create a directory with given name, mode and gid. The qid for the new directory is returned with the mkdir reply message. Note: 72 is selected as the opcode for TMKDIR from the reserved list. Signed-off-by: M. Mohan Kumar Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit 4b43516ab19b748b48322937fd9307af17541c4d Author: M. Mohan Kumar Date: Wed Jun 16 14:27:01 2010 +0530 9p: Implement TMKNOD Synopsis size[4] Tmknod tag[2] fid[4] name[s] mode[4] major[4] minor[4] gid[4] size[4] Rmknod tag[2] qid[13] Description mknod asks the file server to create a device node with given major and minor number, mode and gid. The qid for the new device node is returned with the mknod reply message. [sripathik@in.ibm.com: Fix error handling code] Signed-off-by: M. Mohan Kumar Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit 50cc42ff3d7bc48a436c5a0413459ca7841b505f Author: Venkateswararao Jujjuri (JV) Date: Wed Jun 9 15:59:31 2010 -0700 9p: Define and implement TSYMLINK for 9P2000.L Create a symbolic link SYNOPSIS size[4] Tsymlink tag[2] fid[4] name[s] symtgt[s] gid[4] size[4] Rsymlink tag[2] qid[13] DESCRIPTION Create a symbolic link named 'name' pointing to 'symtgt'. gid represents the effective group id of the caller. The permissions of a symbolic link are irrelevant hence it is omitted from the protocol. Signed-off-by: Venkateswararao Jujjuri Reviewed-by: Sripathi Kodi Signed-off-by: Eric Van Hensbergen commit 652df9a7fd03cb47a3f663f0c08a2bd086505e9b Author: Venkateswararao Jujjuri (JV) Date: Thu Jun 3 15:16:59 2010 -0700 9p: Define and implement TLINK for 9P2000.L This patch adds a helper function to get the dentry from inode and uses it in creating a Hardlink SYNOPSIS size[4] Tlink tag[2] dfid[4] oldfid[4] newpath[s] size[4] Rlink tag[2] DESCRIPTION Create a link 'newpath' in directory pointed by dfid linking to oldfid path. [sripathik@in.ibm.com : p9_client_link should not free req structure if p9_client_rpc has returned an error.] Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit 09d34ee5f93b2e53b64ffba27bc18731e31154e1 Author: Eric Van Hensbergen Date: Mon Aug 2 14:28:09 2010 -0500 9p: Define and implement TLINK for 9P2000.L This patch adds a helper function to get the dentry from inode and uses it in creating a Hardlink SYNOPSIS size[4] Tlink tag[2] dfid[4] oldfid[4] newpath[s] size[4] Rlink tag[2] DESCRIPTION Create a link 'newpath' in directory pointed by dfid linking to oldfid path. [sripathik@in.ibm.com : p9_client_link should not free req structure if p9_client_rpc has returned an error.] Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit 87d7845aa0b157a62448dd3e339856f28befe1f4 Author: Sripathi Kodi Date: Fri Jun 18 11:50:10 2010 +0530 9p: Implement client side of setattr for 9P2000.L protocol. SYNOPSIS size[4] Tsetattr tag[2] attr[n] size[4] Rsetattr tag[2] DESCRIPTION The setattr command changes some of the file status information. attr resembles the iattr structure used in Linux kernel. It specifies which status parameter is to be changed and to what value. It is laid out as follows: valid[4] specifies which status information is to be changed. Possible values are: ATTR_MODE (1 << 0) ATTR_UID (1 << 1) ATTR_GID (1 << 2) ATTR_SIZE (1 << 3) ATTR_ATIME (1 << 4) ATTR_MTIME (1 << 5) ATTR_ATIME_SET (1 << 7) ATTR_MTIME_SET (1 << 8) The last two bits represent whether the time information is being sent by the client's user space. In the absense of these bits the server always uses server's time. mode[4] File permission bits uid[4] Owner id of file gid[4] Group id of the file size[8] File size atime_sec[8] Time of last file access, seconds atime_nsec[8] Time of last file access, nanoseconds mtime_sec[8] Time of last file modification, seconds mtime_nsec[8] Time of last file modification, nanoseconds Explanation of the patches: -------------------------- *) The kernel just copies relevent contents of iattr structure to p9_iattr_dotl structure and passes it down to the client. The only check it has is calling inode_change_ok() *) The p9_iattr_dotl structure does not have ctime and ia_file parameters because I don't think these are needed in our case. The client user space can request updating just ctime by calling chown(fd, -1, -1). This is handled on server side without a need for putting ctime on the wire. *) The server currently supports changing mode, time, ownership and size of the file. *) 9P RFC says "Either all the changes in wstat request happen, or none of them does: if the request succeeds, all changes were made; if it fails, none were." I have not done anything to implement this specifically because I don't see a reason. Signed-off-by: Sripathi Kodi Signed-off-by: Venkateswararao Jujjuri Signed-off-by: Eric Van Hensbergen commit f085312204f384a0277a66c3c48ba8f9edcd58f2 Author: Sripathi Kodi Date: Mon Jul 12 20:07:23 2010 +0530 9p: getattr client implementation for 9P2000.L protocol. SYNOPSIS size[4] Tgetattr tag[2] fid[4] request_mask[8] size[4] Rgetattr tag[2] lstat[n] DESCRIPTION The getattr transaction inquires about the file identified by fid. request_mask is a bit mask that specifies which fields of the stat structure is the client interested in. The reply will contain a machine-independent directory entry, laid out as follows: st_result_mask[8] Bit mask that indicates which fields in the stat structure have been populated by the server qid.type[1] the type of the file (directory, etc.), represented as a bit vector corresponding to the high 8 bits of the file's mode word. qid.vers[4] version number for given path qid.path[8] the file server's unique identification for the file st_mode[4] Permission and flags st_uid[4] User id of owner st_gid[4] Group ID of owner st_nlink[8] Number of hard links st_rdev[8] Device ID (if special file) st_size[8] Size, in bytes st_blksize[8] Block size for file system IO st_blocks[8] Number of file system blocks allocated st_atime_sec[8] Time of last access, seconds st_atime_nsec[8] Time of last access, nanoseconds st_mtime_sec[8] Time of last modification, seconds st_mtime_nsec[8] Time of last modification, nanoseconds st_ctime_sec[8] Time of last status change, seconds st_ctime_nsec[8] Time of last status change, nanoseconds st_btime_sec[8] Time of creation (birth) of file, seconds st_btime_nsec[8] Time of creation (birth) of file, nanoseconds st_gen[8] Inode generation st_data_version[8] Data version number request_mask and result_mask bit masks contain the following bits #define P9_STATS_MODE 0x00000001ULL #define P9_STATS_NLINK 0x00000002ULL #define P9_STATS_UID 0x00000004ULL #define P9_STATS_GID 0x00000008ULL #define P9_STATS_RDEV 0x00000010ULL #define P9_STATS_ATIME 0x00000020ULL #define P9_STATS_MTIME 0x00000040ULL #define P9_STATS_CTIME 0x00000080ULL #define P9_STATS_INO 0x00000100ULL #define P9_STATS_SIZE 0x00000200ULL #define P9_STATS_BLOCKS 0x00000400ULL #define P9_STATS_BTIME 0x00000800ULL #define P9_STATS_GEN 0x00001000ULL #define P9_STATS_DATA_VERSION 0x00002000ULL #define P9_STATS_BASIC 0x000007ffULL #define P9_STATS_ALL 0x00003fffULL This patch implements the client side of getattr implementation for 9P2000.L. It introduces a new structure p9_stat_dotl for getting Linux stat information along with QID. The data layout is similar to stat structure in Linux user space with the following major differences: inode (st_ino) is not part of data. Instead qid is. device (st_dev) is not part of data because this doesn't make sense on the client. All time variables are 64 bit wide on the wire. The kernel seems to use 32 bit variables for these variables. However, some of the architectures have used 64 bit variables and glibc exposes 64 bit variables to user space on some architectures. Hence to be on the safer side we have made these 64 bit in the protocol. Refer to the comments in include/asm-generic/stat.h There are some additional fields: st_btime_sec, st_btime_nsec, st_gen, st_data_version apart from the bitmask, st_result_mask. The bit mask is filled by the server to indicate which stat fields have been populated by the server. Currently there is no clean way for the server to obtain these additional fields, so it sends back just the basic fields. Signed-off-by: Sripathi Kodi Signed-off-by: Eric Van Hensbegren commit 9ffaf63e34821ea60b2e1c8593f968d73728f82b Author: Aneesh Kumar K.V Date: Tue Jun 1 09:26:18 2010 +0000 fs/9p: Pass the correct user credentials during attach We need to make sure we pass the right uid value during attach. dotl is similar to dotu in this regard. Without this mapped security model on dotl doesn't work Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 69d4b4436b54c1a850d475697fda5ca117b09a5e Author: Aneesh Kumar K.V Date: Tue Jun 1 09:26:17 2010 +0000 net/9p: Handle the server returned error properly We need to get the negative errno value in the kernel even for dotl. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 7751bdb3a095ad32dd4fcff3443cf8dd4cb1e748 Author: Sripathi Kodi Date: Fri Jun 4 13:41:26 2010 +0000 9p: readdir implementation for 9p2000.L This patch implements the kernel part of readdir() implementation for 9p2000.L Change from V3: Instead of inode, server now sends qids for each dirent SYNOPSIS size[4] Treaddir tag[2] fid[4] offset[8] count[4] size[4] Rreaddir tag[2] count[4] data[count] DESCRIPTION The readdir request asks the server to read the directory specified by 'fid' at an offset specified by 'offset' and return as many dirent structures as possible that fit into count bytes. Each dirent structure is laid out as follows. qid.type[1] the type of the file (directory, etc.), represented as a bit vector corresponding to the high 8 bits of the file's mode word. qid.vers[4] version number for given path qid.path[8] the file server's unique identification for the file offset[8] offset into the next dirent. type[1] type of this directory entry. name[256] name of this directory entry. This patch adds v9fs_dir_readdir_dotl() as the readdir() call for 9p2000.L. This function sends P9_TREADDIR command to the server. In response the server sends a buffer filled with dirent structures. This is different from the existing v9fs_dir_readdir() call which receives stat structures from the server. This results in significant speedup of readdir() on large directories. For example, doing 'ls >/dev/null' on a directory with 10000 files on my laptop takes 1.088 seconds with the existing code, but only takes 0.339 seconds with the new readdir. Signed-off-by: Sripathi Kodi Reviewed-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 97e8442b0971ea6be9a495b3d03402985cfe5d6a Author: M. Mohan Kumar Date: Fri Jun 4 11:59:07 2010 +0000 9p: Make use of iounit for read/write Change the v9fs_file_readn function to limit the maximum transfer size based on the iounit or msize. Also remove the redundant check for limiting the transfer size in v9fs_file_write. This check is done by p9_client_write. Signed-off-by: M. Mohan Kumar Signed-off-by: Eric Van Hensbergen commit f9839da0513b4f13a137a07a9362ea5b02897bd7 Author: Randy Dunlap Date: Wed Jul 7 20:41:15 2010 -0300 V4L/DVB: IR: jvc-decoder needs BITREVERSE ir-jvc-decoder uses bitreverse interfaces, so it should select BITREVERSE. ir-jvc-decoder.c:(.text+0x550bc): undefined reference to `byte_rev_table' ir-jvc-decoder.c:(.text+0x550c6): undefined reference to `byte_rev_table' Signed-off-by: Randy Dunlap Signed-off-by: Mauro Carvalho Chehab commit 69c271f33b949a7b1cbe6f7f39ce3db9e80997a2 Author: Jarod Wilson Date: Wed Jul 7 11:29:44 2010 -0300 V4L/DVB: IR/lirc_dev: fix locking in lirc_dev_fop_read On Wed, Jul 07, 2010 at 02:52:58PM +0200, Jiri Slaby wrote: > Hi, > > stanse found a locking error in lirc_dev_fop_read: > if (mutex_lock_interruptible(&ir->irctl_lock)) > return -ERESTARTSYS; > ... > while (written < length && ret == 0) { > if (mutex_lock_interruptible(&ir->irctl_lock)) { #1 > ret = -ERESTARTSYS; > break; > } > ... > } > > remove_wait_queue(&ir->buf->wait_poll, &wait); > set_current_state(TASK_RUNNING); > mutex_unlock(&ir->irctl_lock); #2 > > If lock at #1 fails, it beaks out of the loop, with the lock unlocked, > but there is another "unlock" at #2. This should do the trick. Completely untested beyond compiling, but its not exactly a complicated fix, and in practice, I'm not aware of anyone ever actually tripping that locking bug, so there's zero functional change in typical use here. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 89d328d5782cb7efebe733fb994aac4bc64c255a Author: Renzo Dani Date: Tue Jul 6 07:23:33 2010 -0300 V4L/DVB: Retrieve firmware for az6027 Signed-off-by: Renzo Dani Signed-off-by: Mauro Carvalho Chehab commit 1bb6419433433e845f7bc47651ad246b2e65c6fa Author: Anatolij Gustschin Date: Thu Jul 1 14:21:39 2010 -0300 V4L/DVB: v4l2-dev: fix memory leak Since commit b4028437876866aba4747a655ede00f892089e14 the 'driver_data' field resides in device's struct device_private which may be allocated by dev_set_drvdata() if device_private struct was not allocated previously. dev_set_drvdata() is used in video_set_drvdata() to set the driver's private data pointer in v4l2 drivers. Setting the private data _before_ registering the v4l2 device results in a memory leak since __video_register_device() also calls video_set_drvdata(), but after zeroing the device structure. Thus, the reference to the previously allocated device_private struct goes lost and a new device_private will be allocated. All v4l drivers which call video_set_drvdata() _before_ calling video_register_device() are affected. The patch fixes __video_register_device() to preserve previously allocated device_private reference. Caught by kmemleak. Signed-off-by: Anatolij Gustschin Signed-off-by: Mauro Carvalho Chehab commit 2030c0325aa3d430b7bb9ec99da0295f49d183ef Author: Guillaume Audirac Date: Thu May 6 09:30:25 2010 -0300 V4L/DVB: dvb_frontend: fix typos in comments and one function Signed-off-by: Guillaume Audirac Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 82751f56791918f205e11ed78d139f043ed3e458 Author: Guillaume Audirac Date: Thu May 6 09:07:04 2010 -0300 V4L/DVB: tda10048: clear the uncorrected packet registers when saturated Use the register CLUNC to reset the CPTU registers (LSB & MSB) when they saturate at 0xFFFF. Fixes as well a few register typos. Signed-off-by: Guillaume Audirac Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 10ea89d03f9850bbfbc9969f5ec79eae879b614f Author: Guillaume Audirac Date: Thu May 6 09:04:56 2010 -0300 V4L/DVB: tda10048: fix bitmask for the transmission mode Add a missing bit for reading the transmission mode (2K/8K) in tda10048_get_tps Signed-off-by: Guillaume Audirac Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 814522394ce1b6385571e3eaf747e99ab189a3c1 Author: Guillaume Audirac Date: Wed May 5 08:34:57 2010 -0300 V4L/DVB: tda10048: fix the uncomplete function tda10048_read_ber Completes the bit-error-rate read function with the CBER register (before Viterbi decoder). The returned value is 1e8*actual_ber to be positive. Also includes some typo mistakes. Signed-off-by: Guillaume Audirac Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit e38030f3ff02684eb9e25e983a03ad318a10a2ea Author: Kusanagi Kouichi Date: Sat Feb 6 02:45:33 2010 -0300 V4L/DVB: cx23885: Enable Message Signaled Interrupts(MSI) Signed-off-by: Kusanagi Kouichi Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit b48592e496e55e4e3e6e7f27d5ba3a229a1db7a6 Author: Jarod Wilson Date: Sat Jul 3 22:42:14 2010 -0300 V4L/DVB: IR/mceusb: unify and simplify different gen device init Started out as an effort to try to tackle the last remaining issue I'm having with this damned pinnacle device getting wedged the first time its plugged in after an indeterminate length of not being plugged in. Didn't get that solved yet, but did streamline the init code a bit more and remove some superfluous gunk. Nukes a completely unneeded call to usb_device_init() and several lines of overly complex crap in the gen1 device init path. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 95c5d605ca6fd6ab5ab0f6d097ff97d5aa2f9235 Author: Anatolij Gustschin Date: Fri Jul 2 10:10:09 2010 -0300 V4L/DVB: v4l: Add MPC5121e VIU video capture driver Adds support for Video-In (VIU) unit of Freescale MPC5121e. The driver supports RGB888/RGB565 formats, capture and overlay on MPC5121e DIU frame buffer. Signed-off-by: Hongjun Chen Signed-off-by: Anatolij Gustschin Signed-off-by: Mauro Carvalho Chehab commit 2bb00fe6336687f08e0a3733bce2343a821af843 Author: Laurent Pinchart Date: Fri Jun 25 04:58:43 2010 -0300 V4L/DVB: uvcvideo: Add support for Manta MM-353 Plako The camera requires the PROBE_MINMAX quirk. Add a corresponding entry in the device IDs list Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit b30ece53946ad2b79304ee5cfdb18b361dc3a3fc Author: Laurent Pinchart Date: Fri Jun 18 11:31:24 2010 -0300 V4L/DVB: uvcvideo: Don't use stack-based buffers for USB transfers Data buffers on the stack are not allowed for USB I/O. Use dynamically allocated buffers instead when querying control length and control capabilities. The control capabilities are now also stored in the uvc_control structure. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 1b4e21c4f62eae6bdcb3e7bfdfc52171a24f3689 Author: Laurent Pinchart Date: Thu Jun 17 11:11:51 2010 -0300 V4L/DVB: uvcvideo: Define control information bits using macros Use the macros instead of hardcoding numerical constants for the controls information bitfield. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 561474c2d2a1e212ea186e0b65cc69fb330e7bd5 Author: Laurent Pinchart Date: Thu Feb 18 16:38:52 2010 -0300 V4L/DVB: uvcvideo: Support menu controls in the control mapping API The UVCIOC_CTRL_MAP ioctl doesn't support menu entries for menu controls. As the uvc_xu_control_mapping structure has no reserved fields, this can't be fixed while keeping ABI compatibility. Modify the UVCIOC_CTRL_MAP ioctl to add menu entries support, and define UVCIOC_CTRL_MAP_OLD that supports the old ABI without any ability to add menu controls. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 3653639e5daf2ac5f4763e4f1b6cb57538184be9 Author: Hans de Goede Date: Wed May 19 20:15:00 2010 -0300 V4L/DVB: uvcvideo: Make button controls work properly According to the v4l2 spec, writing any value to a button control should result in the action belonging to the button control being triggered. UVC cams however want to see a 1 written, this patch fixes this by overriding whatever value user space passed in with -1 (0xffffffff) when the control is a button control. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit e56be916660da811fe4e830dfb958f13af361d59 Author: Martin Rubli Date: Wed May 19 19:51:56 2010 -0300 V4L/DVB: uvcvideo: Add support for absolute pan/tilt controls Signed-off-by: Martin Rubli Signed-off-by: Mauro Carvalho Chehab commit 49da8be59b19c270a5b71b20a6537776760e0dc6 Author: Jarod Wilson Date: Sat Jul 3 22:48:04 2010 -0300 V4L/DVB: IR/imon: auto-configure another 0xffdc device variant Per Pieter Hoekstra: I have a Antec Fusion with a iMON Lcd and I get the following error: imon 6-1:1.0: Unknown 0xffdc device, defaulting to VFD and iMON IR (id 0x9e) The driver is functional if I load it like this: (I do not use a remote for it) modprobe imon display_type=1 (On Mythbuntu 10.04/2.6.32) This device is a lcd-type with support for a MCE remote. Looking at the source code, this device (0x9e) is the same as id 0x9f. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 89c3bc78075042ae1f4452687f626acce06b3b21 Author: Jean Delvare Date: Mon Jun 28 12:59:49 2010 -0300 V4L/DVB: cx88: Let the user disable IR support It might be useful to be able to disable the IR support, either for debugging purposes, or just for users who know they won't use the IR remote control anyway. On many cards, IR support requires expensive polling/sampling which is better avoided if never needed. Signed-off-by: Jean Delvare Signed-off-by: Mauro Carvalho Chehab commit 15ceb6b1c30ea40bdbe6a6246e2468d9bab375f5 Author: Jean Delvare Date: Mon Jun 28 12:55:43 2010 -0300 V4L/DVB: cx88: Move I2C IR initialization Move I2C IR initialization from just after I2C bus setup to right before non-I2C IR initialization. This is the same as was done for the bttv driver several months ago. Might solve bugs which have not yet been reported for some cards. It makes both drivers consistent, and makes it easier to disable IR support (coming soon.) Signed-off-by: Jean Delvare Signed-off-by: Mauro Carvalho Chehab commit 7d7b5284d710f42f4c0c0d376d9a6af544c39afd Author: Michael Krufky Date: Wed Jun 30 18:17:35 2010 -0300 V4L/DVB: cx23885: add support for new model revisions of the HVR12xx board family Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 1cdffda73fb70b211be5b1c2428ddea4f9a223ea Author: Mauro Carvalho Chehab Date: Mon Jul 5 18:38:46 2010 -0300 V4L/DVB: xc5000: Fix a few warnings drivers/media/common/tuners/xc5000.c: In function ‘xc_write_reg’: drivers/media/common/tuners/xc5000.c:298: warning: passing argument 3 of ‘xc5000_readreg’ from incompatible pointer type drivers/media/common/tuners/xc5000.c:235: note: expected ‘u16 *’ but argument is of type ‘u8 *’ drivers/media/common/tuners/xc5000.c: At top level: drivers/media/common/tuners/xc5000.c:223: warning: ‘xc_read_i2c_data’ defined but not used Signed-off-by: Mauro Carvalho Chehab commit 43c2407820d5406bde3c8069583a37fba9c09faf Author: Andy Walls Date: Sun Jun 27 23:15:35 2010 -0300 V4L/DVB: cx23885: Convert cx23885-input to use new in kernel IR pulse decoders Convert the cx23885 driver to use the new in kernel IR pulse decoders for the integrated CX2388[578] IR controllers. Rip out a lot of RC-5 decoding related code in the process and rename some variables for clarity or to more accurately describe their usage. Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit eeefae532e723e8ce62664cb1d299a0baad50f35 Author: Andy Walls Date: Sun Jun 27 17:17:06 2010 -0300 V4L/DVB: cx23885: Convert from struct card_ir to struct cx23885_ir_input for IR Rx Move from the generic, shared card_ir state structure to a cx23885 driver specific IR state structure in anticipation of moving to the new IR pulse decoders in the IR core. Fix up the card name truncation in the dmesg log while we're at it, by avoiding using fixed length string storage in our new IR state structure. Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit b192ca983746585e807259414f8d6f58cb28311f Author: Jean-François Moine Date: Sun Jun 27 03:08:19 2010 -0300 V4L/DVB: gspca - main: Simplify image building The image pointer and its length are now in the main structure instead of in the frame buffer. They are updated on application vidioc_qbuf and in the URB interrupt function when ending an image. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit c6dc725c8e0c3438587e18f918f6da16e7a23539 Author: Jean-François Moine Date: Sat Jun 26 15:35:32 2010 -0300 V4L/DVB: gspca - gl860: Fix a compilation warning Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 2b5e45cdf9ffe53bf49d78414a9b36bb527fafe8 Author: Murali Karicheri Date: Sat Jun 12 09:16:02 2010 -0300 V4L/DVB: vpif: removing VPIF config variables The Kconfig variables are moved to video/davinci/Kconfig through another patch and these are to be therefore removed Signed-off-by: Muralidharan Karicheri Signed-off-by: Mauro Carvalho Chehab commit 540069010decbf1723494fea5e6896debe4b5891 Author: Vaibhav Hiremath Date: Sat Jun 12 09:09:56 2010 -0300 V4L/DVB: vpfe_capture: Create separate Kconfig file for davinci devices Currently VPFE Capture driver and DM6446 CCDC driver is being reused for AM3517. So this patch is preparing the Kconfig/makefile for re-use of such IP's. Signed-off-by: Vaibhav Hiremath Signed-off-by: Muralidharan Karicheri Signed-off-by: Mauro Carvalho Chehab commit a04b75410a15f5e2f136620a08da7ff3ee2dc7d9 Author: Justin P. Mattock Date: Mon Jun 21 13:15:47 2010 -0300 V4L/DVB: tuners:tuner-simple Fix warning: variable 'tun' set but not used Resend due to a whitespace issue I created by mistake. The below patch fixes a warning message create by gcc 4.6.0 CC [M] drivers/media/common/tuners/tuner-simple.o drivers/media/common/tuners/tuner-simple.c: In function 'simple_set_tv_freq': drivers/media/common/tuners/tuner-simple.c:548:20: warning: variable 'tun' set but not used Signed-off-by: Justin P. Mattock Signed-off-by: Mauro Carvalho Chehab commit 02c71055e547e49d974153b46a30eba2cbc8a00c Author: Mauro Carvalho Chehab Date: Mon Jul 5 17:09:11 2010 -0300 V4L/DVB: tm6000-input: Make checkpatch.pl happy Signed-off-by: Mauro Carvalho Chehab commit d064f960650d64e2564cd505a6e40c4ac359b6f3 Author: Stefan Ringel Date: Sun Jun 20 17:16:52 2010 -0300 V4L/DVB: tm6000: add ir support Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit bd0db8c7ad4b9a053e8774f559cb3dae05f73ef6 Author: Julia Lawall Date: Sun Jun 20 10:40:37 2010 -0300 V4L/DVB: drivers/media/dvb/frontends: remove duplicate structure field initialization The read_status field is initialized twice to the same value. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r@ identifier I, s, fld; position p0,p; expression E; @@ struct I s =@p0 { ... .fld@p = E, ...}; @s@ identifier I, s, r.fld; position r.p0,p; expression E; @@ struct I s =@p0 { ... .fld@p = E, ...}; @script:python@ p0 << r.p0; fld << r.fld; ps << s.p; pr << r.p; @@ if int(ps[0].line) Signed-off-by: Julia Lawall Signed-off-by: Mauro Carvalho Chehab commit 4743319fb0d2a808a5e3eeb778a9666daf9da51d Author: Dmitri Belimov Date: Tue May 18 04:30:11 2010 -0300 V4L/DVB: xc5000, rework xc_write_reg Rework xc_write_reg function for correct read register of the xc5000. It is very useful for tm6000. Tested for tm6000 and for saa7134 works well. Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov Acked-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit e252984c5279dde24fbd6d3efe7fe13dc642e714 Author: Dan Carpenter Date: Fri Jun 4 12:39:03 2010 -0300 V4L/DVB: dvb_ca_en50221: return -EFAULT on copy_to_user errors copy_to_user() returns the number of bytes remaining to be copied which isn't the right thing to return here. The comments say that these functions in dvb_ca_en50221.c should return the number of bytes copied or an error return. I've changed it to return -EFAULT. Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit aac870a8770281c6ad619b538df77840b9513a0b Author: Dan Carpenter Date: Fri Jun 4 07:34:40 2010 -0300 V4L/DVB: media/radio: fix copy_to_user to user handling copy_to/from_user() returns the number of bytes remaining to be copied but the code here was testing for negative returns. I modified it to return -EFAULT. These functions are called from si4713_s_ext_ctrls() and that only tests for negative error codes. Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit 398630e4edadac3d21519b8d009e30c3cdd91926 Author: Ben Hutchings Date: Wed Jun 2 22:23:10 2010 -0300 V4L/DVB: mantis: Select correct frontends Update the Kconfig selections to match the code. Add the usual condition of !DVB_FE_CUSTOMISE. Signed-off-by: Ben Hutchings Signed-off-by: Mauro Carvalho Chehab commit 07204aea1454db404141e95fc124536a6e0f6aa0 Author: Perceval Anichini Date: Mon Jul 5 15:11:51 2010 -0300 V4L/DVB: hdpvr: Fixes probing function In the hdpvr_probe () function, when an error occurs while probing the device, the workqueue created by the create_single_thread () call is not properly destroyed. Signed-off-by: Perceval Anichini Signed-off-by: Mauro Carvalho Chehab commit fe85ce90abae7f7876a9ae8f76649586fe73d5a2 Author: Dean Anderson Date: Tue Jun 1 19:12:07 2010 -0300 V4L/DVB: s2255drv: cleanup of device structure s2255drv: cleanup of device structure cleanup of device structure. single channel array instead of multiple arrays in device for each channel property. simplifies open callback by removing search for channel index. Signed-off-by: Dean Anderson Signed-off-by: Mauro Carvalho Chehab commit 2e9157f8ab028ccc5d155320a3f1e49494bcfc18 Author: Dan Carpenter Date: Tue Jun 1 05:17:27 2010 -0300 V4L/DVB: cpia_usb: remove unneeded variable This is just a cleanup patch. We never use the "udev" variable so I have removed it. Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit 8b0d7048dc2f0d2e4344bc8aaf85b4f14196145f Author: Dan Carpenter Date: Mon May 31 16:27:39 2010 -0300 V4L/DVB: remove unneeded null check in anysee_probe() Smatch complained because "d" is dereferenced first and then checked for null later . The only code path where "d" could be a invalid pointer is if this is a cold device in dvb_usb_device_init(). I consulted Antti Palosaari and he explained that anysee is always a warm device. I have added a comment and removed the unneeded null check. Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit 128fe95d77d6c5239ce6af6c3edacafc79eb0a39 Author: Vadim Catana Date: Sat May 29 12:49:16 2010 -0300 V4L/DVB: TechnoTrend TT-budget T-3000 This patch adds support for TechnoTrend TT-budget T-3000 DVB-T card. Signed-off-by: Vadim Catana Signed-off-by: Mauro Carvalho Chehab commit 0d58cef664e01fb1848833455bfdbe1a3d91044c Author: Amerigo Wang Date: Mon May 31 03:16:17 2010 -0300 V4L/DVB: Remove obsolete zc0301 v4l driver On 05/29/10 01:30, Jean-Francois Moine wrote: > On Fri, 28 May 2010 13:03:28 -0400 > Amerigo Wang wrote: > >> Subject: [PATCH 6/6] Remove obsolete zc0301 v4l driver >> >> Duplicate functionality with the gspca_zc3xx driver, zc0301 only >> supports 2 USB-ID's (because it only supports a limited set of >> sensors) wich are also supported by the gspca_zc3xx driver >> (which supports 53 USB-ID's in total). > > You forgot to remove the conditionnal compilation in the gspca_zc3xx > driver (USB_DEVICE(0x046d, 0x08ae) in gspca/zc3xx.c) > Right, thanks for pointing this out! Attached is the updated patch, please use this one instead. Thanks! Duplicate functionality with the gspca_zc3xx driver, zc0301 only supports 2 USB-ID's (because it only supports a limited set of sensors) wich are also supported by the gspca_zc3xx driver (which supports 53 USB-ID's in total). Signed-off-by: Amerigo Wang Signed-off-by: Mauro Carvalho Chehab commit a96076096bca746ddad3a5d8bfd3bbb1d9b96444 Author: Amerigo Wang Date: Fri May 28 06:49:57 2010 -0300 V4L/DVB: Remove obsolete stv680 v4l1 driver obsolete v4l1 driver replaced by gspca_stv0680 Signed-off-by: Amerigo Wang Signed-off-by: Mauro Carvalho Chehab commit 3b23bc5731d476b0913c437626d6a6f51687d1d6 Author: Amerigo Wang Date: Fri May 28 06:45:38 2010 -0300 V4L/DVB: Remove obsolete ovcamchip sensor framework Only used by obsoleted v4l1 driver Signed-off-by: Amerigo Wang Signed-off-by: Mauro Carvalho Chehab commit 51c555690d16d1d1354ee9b5a3c9098766702094 Author: Amerigo Wang Date: Fri May 28 06:41:07 2010 -0300 V4L/DVB: Remove obsolete w9968cf v4l1 driver >From a97df96226e89d3539be93ddb5a8df3a2f7edcb6 Mon Sep 17 00:00:00 2001 obsolete v4l1 driver replaced by gspca_ov519 Signed-off-by: Amerigo Wang Signed-off-by: Mauro Carvalho Chehab commit 7373ab3669aec93f8c8f1ace7845c41d54ed6e3e Author: Amerigo Wang Date: Fri May 28 06:31:39 2010 -0300 V4L/DVB: Remove obsolete ov511 driver obsolete v4l1 driver replaced by gspca_ov519 Signed-off-by: Amerigo Wang Signed-off-by: Mauro Carvalho Chehab commit 566789f6b0b6d4c6ec1618412184f05c7aa85f4d Author: Amerigo Wang Date: Fri May 28 06:26:32 2010 -0300 V4L/DVB: Remove usbvideo quickcam_messenger driver obsolete v4l1 driver replaced by gspca_stv06xx Signed-off-by: Amerigo Wang Signed-off-by: Mauro Carvalho Chehab commit bb6dbe74806a17bcec8396c57ca7fd9a889e3b27 Author: Laurent Pinchart Date: Tue May 11 10:36:34 2010 -0300 V4L/DVB: videobuf: Rename vmalloc fields to vaddr The videobuf_dmabuf and videobuf_vmalloc_memory fields have a vmalloc field to store the kernel virtual address of vmalloc'ed buffers. Rename the field to vaddr. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 959794ddc05ab6fbcd458bc093e7f0b92633d052 Author: Laurent Pinchart Date: Tue May 11 10:36:33 2010 -0300 V4L/DVB: videobuf: Remove videobuf_mapping start and end fields The fields are assigned but never used, remove them. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 7181772d8915e6025ee4f2f6c5b16064689646f0 Author: Laurent Pinchart Date: Tue May 11 10:36:32 2010 -0300 V4L/DVB: videobuf: Don't export videobuf_(vmalloc|pages)_to_sg Those functions are only called inside videobuf-dma-sg.c, make them static. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit fecfedeb27ab9497cbdd2c6fb7972082a7ed9263 Author: Laurent Pinchart Date: Tue May 11 10:36:31 2010 -0300 V4L/DVB: Remove videobuf_sg_alloc abuse The cx88 and cx25821 drivers abuse videobuf_buffer to handle audio data. Remove the abuse by creating private audio buffer structures with a videobuf_dmabuf field. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 952684035a91334dbe33b15063514cab5e7c6907 Author: Laurent Pinchart Date: Tue May 11 10:36:30 2010 -0300 V4L/DVB: videobuf: Remove the videobuf_sg_dma_map/unmap functions Instead of creating dirty wrappers around videobuf_dma_map/unmap that create a dummy videobuf_queue structure, modify videobuf_dma_map/unmap to take a device pointer argument and use it directly. The videobuf_sg_dma_map/unmap then become unused and can be removed. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit a438d6da52b991b6896742a0f9aed80c2f82da87 Author: Pawel Osciak Date: Tue May 11 10:36:29 2010 -0300 V4L/DVB: videobuf: rename videobuf_mmap_free and add sanity checks This function is not specific to mmap, hence the rename. Add a check whether we are not streaming or reading (for read mode that uses the stream queue) before freeing anything. Signed-off-by: Pawel Osciak Signed-off-by: Mauro Carvalho Chehab commit 33c38283f03d8ea0358229fc03c1beebe67aed0e Author: Pawel Osciak Date: Tue May 11 10:36:28 2010 -0300 V4L/DVB: videobuf: rename videobuf_alloc to videobuf_alloc_vb These functions allocate videobuf_buffer structures only. Renaming in order to prevent confusion with functions allocating actual video buffer memory. Rename the functions in videobuf-core.h videobuf-dma-sg.c as well. Signed-off-by: Pawel Osciak Signed-off-by: Laurent Pinchart Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit c6cfe05532cf6e9858d60ee699c51b906842489d Author: Julia Lawall Date: Sat May 22 05:21:02 2010 -0300 V4L/DVB: drivers/media: Use memdup_user Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // Signed-off-by: Julia Lawall Signed-off-by: Mauro Carvalho Chehab commit 3e9442c6f1d50bce083c5870f293647efbd6f828 Author: Mauro Carvalho Chehab Date: Sun Jul 4 15:37:05 2010 -0300 V4L/DVB: cx25821: Fix bad whitespacing Should use tabs for identation, and not whitespace Signed-off-by: Mauro Carvalho Chehab commit e986bf1edfec3e0063d02caa55a4d85d50f28c59 Author: Mauro Carvalho Chehab Date: Sun Jul 4 15:28:09 2010 -0300 V4L/DVB: cx25821: Add a kernel level at printk's Signed-off-by: Mauro Carvalho Chehab commit 1852a1bfcef31b492820265d44fd3ec977da1ff9 Author: Mauro Carvalho Chehab Date: Sun Jul 4 15:21:40 2010 -0300 V4L/DVB: cx25821: Make comments C99 compliant Replace all // comments by /* */ Patch generated with this small script: for i in drivers/staging/cx25821/*.[ch]; do cat $i|perl -ne 's,//\s*(.*)\s*\n,/* $1 */\n,g; print $_;' >a && mv a $i; done Signed-off-by: Mauro Carvalho Chehab commit 6d8c2ba1d154f2a94303fc92691887525065199e Author: Palash Bandyopadhyay Date: Sun Jul 4 14:15:38 2010 -0300 V4L/DVB: cx25821: Removed duplicate code and cleaned up Signed-off-by: Palash Bandyopadhyay Signed-off-by: Mauro Carvalho Chehab commit fab8125919c0fc724e11b184b1c812dfb8990549 Author: Mauro Carvalho Chehab Date: Sun Jul 4 12:23:19 2010 -0300 V4L/DVB: DocBook/media: Add LIRC DocBook to media.html Add LIRC interface into the media.html DocBook, fixing several small XML errors at the original spec. Signed-off-by: Mauro Carvalho Chehab commit f0cae143e113d28ab89a930934c36f619c4367f0 Author: Jarod Wilson Date: Sat Jul 3 01:10:09 2010 -0300 V4L/DVB: IR/lirc: add docbook info covering lirc device interface First ever crack at creating docbook documentation... Contains a bevy of information on the various lirc device interface ioctls, as well as a bit about the read and write interfaces. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 15f135d0cfc1ce762889bb804549da4081087597 Author: Jarod Wilson Date: Sat Jul 3 01:08:52 2010 -0300 V4L/DVB: IR: add empty lirc pseudo-keymap Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 30eb1be718a4753dd1912eb35af4cdaa25cefea9 Author: Jarod Wilson Date: Fri Jul 2 00:38:09 2010 -0300 V4L/DVB: IR TX: incoming IR buffer now an int pointer incoming IR buffer now an int pointer, and not fed from userspace Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit ca4146985db7cbb97816e9b961b8db79e63d9e86 Author: Jarod Wilson Date: Sat Jul 3 01:07:53 2010 -0300 V4L/DVB: IR: add ir-core to lirc userspace decoder bridge driver v2: copy of buffer data from userspace done inside this plugin/driver, keeping the actual drivers minimal, and more flexible in what we can deliver to them later on (they may be fed from within kernelspace later on, by an in-kernel IR encoder). Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 4a62a5ab59742331a4e17ccaa894968d40ed9b16 Author: Jarod Wilson Date: Sat Jul 3 01:06:57 2010 -0300 V4L/DVB: IR: add lirc device interface v2: currently unused ioctls are included, but #if 0'd out Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 7a12f4b50dad4fdffd218c6fba6b9564bf86185e Author: Julia Lawall Date: Thu Jul 1 01:52:33 2010 -0300 V4L/DVB: drivers/media/video/zoran: Use kmemdup Use kmemdup when some other buffer is immediately copied into the allocated region. A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; statement S; @@ - to = \(kmalloc\|kzalloc\)(size,flag); + to = kmemdup(from,size,flag); if (to==NULL || ...) S - memcpy(to, from, size); // Signed-off-by: Julia Lawall Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit cd3172d7dabdac4545d8246da62b570b9acf8058 Author: Dan Carpenter Date: Thu Jul 1 01:50:04 2010 -0300 V4L/DVB: dvb-usb-init.c: white space changes in dvb-usb-init I started fixing one or two lines, but after a while I got into a groove and started changing everything. I left the lines longer than 80 characters because that seemed to be the style in this file. Signed-off-by: Dan Carpenter Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit 2b3c543a839cafeb3edd7e1a2202d86318801fd9 Author: Julia Lawall Date: Thu Jul 1 01:41:44 2010 -0300 V4L/DVB: drivers/media/video/tlg2300: Use kmemdup Use kmemdup when some other buffer is immediately copied into the allocated region. A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; statement S; @@ - to = \(kmalloc\|kzalloc\)(size,flag); + to = kmemdup(from,size,flag); if (to==NULL || ...) S - memcpy(to, from, size); // Signed-off-by: Julia Lawall Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit 1ece36097d0170a41fc129b8b1823a36ec2fb5c6 Author: Mauro Carvalho Chehab Date: Sat Jul 3 18:06:13 2010 -0300 V4L/DVB: Increment DVB API version A new flag were added at the Frontend capabilities. Increment API minor revision. Signed-off-by: Mauro Carvalho Chehab commit 8d3557e21d0b305392ac73a64411dfab0e794960 Author: Mauro Carvalho Chehab Date: Sat Jul 3 17:39:17 2010 -0300 V4L/DVB: DocBook/dvb: Update spec to reflect the current FE capabilities Signed-off-by: Mauro Carvalho Chehab commit f6a20eb1a2d35660240cd1eb8dc2bd6504a0c6c5 Author: Klaus Schmidinger Date: Thu Jul 1 01:37:34 2010 -0300 V4L/DVB: Add FE_CAN_TURBO_FEC Some (North American) providers use a non-standard mode called "8psk turbo fec". Since there is no flag in the driver that would allow an application to determine whether a particular device can handle "turbo fec", the attached patch introduces FE_CAN_TURBO_FEC. Since there is no flag in the SI data that would indicate that a transponder uses "turbo fec", VDR will assume that all 8psk transponders on DVB-S use "turbo fec". Tested-by: Derek Kelly Signed-off-by: Klaus Schmidinger Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit 0b21d55f8904ff3d52262e91867f9eb2c0b472f3 Author: Julia Lawall Date: Thu Jul 1 01:33:15 2010 -0300 V4L/DVB: drivers/media/video/uvc: Use kmemdup Use kmemdup when some other buffer is immediately copied into the allocated region. A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; statement S; @@ - to = \(kmalloc\|kzalloc\)(size,flag); + to = kmemdup(from,size,flag); if (to==NULL || ...) S - memcpy(to, from, size); // Signed-off-by: Julia Lawall Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit feda79bffc19e5e1e442966853f58c3b9c7bac0b Author: Julia Lawall Date: Thu Jul 1 01:30:11 2010 -0300 V4L/DVB: drivers/media/video/gspca: Use kmemdup Use kmemdup when some other buffer is immediately copied into the allocated region. A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; statement S; @@ - to = \(kmalloc\|kzalloc\)(size,flag); + to = kmemdup(from,size,flag); if (to==NULL || ...) S - memcpy(to, from, size); // Signed-off-by: Julia Lawall Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit 230b27cd8e0494ecb463c0f3ae63d752c9d59666 Author: Daniel Mack Date: Thu Jul 1 01:19:31 2010 -0300 V4L/DVB: drivers/media/dvb/dvb-usb/dib0700: CodingStyle fixes Signed-off-by: Daniel Mack Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit 8871c85d86829a2739ec797c4343ebd3664895b9 Author: Daniel Mack Date: Thu Jul 1 01:08:58 2010 -0300 V4L/DVB: drivers/media/dvb/dvb-usb/dib0700: fix return values Propagte correct error values instead of returning -1 which just means -EPERM ("Permission denied") Signed-off-by: Daniel Mack Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit 4c61f678a468768afd45c3d9ac697f8f55aa04eb Author: Julia Lawall Date: Tue Jun 29 01:42:53 2010 -0300 V4L/DVB: drivers/media/video/pvrusb2: Add missing mutex_unlock Add a mutex_unlock missing on the error path. In the other functions in the same file the locks and unlocks of this mutex appear to be balanced, so it would seem that the same should hold in this case. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression E1; @@ * mutex_lock(E1,...); <+... when != E1 if (...) { ... when != E1 * return ...; } ...+> * mutex_unlock(E1,...); // Signed-off-by: Julia Lawall Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit a3b1dc95578fd0b524139689a9e0f148a622eb24 Author: Randy Dunlap Date: Tue Jun 29 01:31:40 2010 -0300 V4L/DVB: vivi: fix depends again My previous patch to depend on FONTS was not sufficient since FONTS is boolean. VIDEO_VIVI needs to depend on a tristate so that it won't be enabled as =y when framebuffer is built as modular, so modify it to depend on the same symbols that FONTS depends on, which are FRAMEBUFFER_CONSOLE || STI_CONSOLE. Fixes this build error when VIDEO_VIVI=y and FRAMEBUFFER_CONSOLE=m: vivi.c:(.init.text+0x7205): undefined reference to `find_font' Signed-off-by: Randy Dunlap Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit 806ec0fb561b0384f1da6932960643786eac8ec6 Author: Joe Perches Date: Tue Jun 29 01:29:29 2010 -0300 V4L/DVB: smscoreapi/w9968cf: drivers/media: Remove unnecesary kmalloc casts Signed-off-by: Joe Perches Signed-off-by: Douglas Schilling Landgraf Signed-off-by: Mauro Carvalho Chehab commit e23fb9643bd440fee9106e6df76f01a57db2613c Author: Jarod Wilson Date: Wed Jun 16 17:55:52 2010 -0300 V4L/DVB: IR/mceusb: add tx callback functions and wire up mchehab: merged with IR/mceusb: userspace buffer copy moved out of driver Userspace buffer copy moved out of driver and into lirc bridge driver [mchehab@redhat.com: merged the patch to avoid compilation errors with allyesconfig ] Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 9b7c54d926284c5277cff3ef3cfe29f26568306a Author: Jarod Wilson Date: Wed Jun 16 17:55:25 2010 -0300 V4L/DVB: IR: add tx callbacks to ir-core Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit d732a72de4f7dfe69eb8028da0f7cfd1852fb7dc Author: Jarod Wilson Date: Wed Jun 16 17:10:46 2010 -0300 V4L/DVB: IR/mceusb: kill pinnacle-device-specific nonsense I have pinnacle hardware now. None of this pinnacle-specific crap is at all necessary (in fact, some of it needed to be removed to actually make it work). The only thing unique about this device is that it often transfers inbound data w/a header of 0x90, meaning 16 bytes of IR data following it, so I had to make adjustments for that, and now its working perfectly fine. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 657290b63efabfbb2862a6089c3fd5dbcc8e9037 Author: Jarod Wilson Date: Wed Jun 16 17:10:05 2010 -0300 V4L/DVB: IR/mceusb: misc cleanups and init fixes The first-gen mceusb device init code, while mostly functional, had a few issues in it. This patch does the following: 1) removes use of magic numbers 2) eliminates mapping of memory from stack 3) makes debug spew translator functional Additionally, this clean-up revealed that we cannot read the proper default tx blaster bitmask from the device, we do actually have to initialize it ourselves, which requires use of a somewhat gross list-based mask inversion check. This patch also removes the entirely unnecessary use of struct ir_input_state. Also supersedes two earlier patches that also touched on first-gen cleanup, but were partially botched. This one actually compiles, works, etc., I swear. ;) Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit bd3881b1cedbe6733097bd87da069bd174cc7052 Author: Jarod Wilson Date: Wed Jun 16 17:08:32 2010 -0300 V4L/DVB: IR/mceusb: use the proper ir-core device unregister function Was using input_unregister_device directly, instead of using ir_input_unregister, which tears down a bunch of other things in addition to eventually calling input_unregister_device. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 8a3fa8129cd90a05b1a79d949e57dcd194520174 Author: Jarod Wilson Date: Wed Jun 16 17:07:39 2010 -0300 V4L/DVB: IR/imon: use the proper ir-core device unregister function Was using input_unregister_device directly, instead of using ir_input_unregister, which tears down a bunch of other things in addition to eventually calling input_unregister_device. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 2135436af139ac3d11645dd77d5c788a045a096f Author: Randy Dunlap Date: Wed May 26 14:08:51 2010 -0300 V4L/DVB: media/IR: nec-decoder needs to select BITREV Fix ir-nec-decoder build: it uses bitrev library code, so select BITREVERSE in its Kconfig. ir-nec-decoder.c:(.text+0x1a2517): undefined reference to `byte_rev_table' ir-nec-decoder.c:(.text+0x1a2526): undefined reference to `byte_rev_table' ir-nec-decoder.c:(.text+0x1a2530): undefined reference to `byte_rev_table' ir-nec-decoder.c:(.text+0x1a2539): undefined reference to `byte_rev_table' Signed-off-by: Randy Dunlap Signed-off-by: Mauro Carvalho Chehab commit c216369e61fae586cd48c0913cca2a37fbfeb912 Author: David Härdeman Date: Sun Jun 13 17:29:36 2010 -0300 V4L/DVB: ir-core: move decoding state to ir_raw_event_ctrl This patch moves the state from each raw decoder into the ir_raw_event_ctrl struct. This allows the removal of code like this: spin_lock(&decoder_lock); list_for_each_entry(data, &decoder_list, list) { if (data->ir_dev == ir_dev) break; } spin_unlock(&decoder_lock); return data; which is currently run for each decoder on each event in order to get the client-specific decoding state data. In addition, ir decoding modules and ir driver module load order is now independent. Centralizing the data also allows for a nice code reduction of about 30% per raw decoder as client lists and client registration callbacks are no longer necessary (but still kept around for the benefit of the lirc decoder). Out-of-tree modules can still use a similar trick to what the raw decoders did before this patch until they are merged. Signed-off-by: David Härdeman Acked-by: Jarod Wilson Tested-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit de8592bd539b2bb8da2b55b1007562eb1abd1fe6 Author: Mauro Carvalho Chehab Date: Mon Jun 28 13:52:07 2010 -0300 V4L/DVB: ir-core: allow specifying multiple protocols at one open/write With this change, it is now possible to do something like: su -c 'echo "none +rc-5 +nec" > /sys/class/rc/rc1/protocols' This prevents the need of multiple opens, one for each protocol change, and makes userspace application easier. Signed-off-by: Mauro Carvalho Chehab commit 5f1247972e0fcce6dd4bce94459a9f3db09ae61d Author: Mauro Carvalho Chehab Date: Mon Jun 28 12:58:48 2010 -0300 V4L/DVB: ir-core: Add support for disabling all protocols Writing "none" to /dev/class/rc/rc*/protocols will disable all protocols. This allows an easier setup, from userspace, as userspace applications don't need to disable protocol per protocol, before enabling a different set of protocols. Signed-off-by: Mauro Carvalho Chehab commit a9e55ea9774cc87434b386a7fba63d96af32792d Author: Mauro Carvalho Chehab Date: Mon Jun 28 12:43:25 2010 -0300 V4L/DVB: ir-core: Rename sysfs protocols nomenclature to rc-5 and rc-6 While rc-5 and rc-6 protocols are generally abreviated as "rc5" and "rc6", previous sysfs nodes uses rc-5 and rc-6 for the Philips protocols. This is consistent with the protocol nomenclature given by the original Philips spec: "Remote control system RC-5" (doc. Nr. 9398 706 23011). Also, rc5 is the name of a widely known cryptography protocol. So, the better is to keep referring to those protocols as "rc-5" and "rc-6". Signed-off-by: Mauro Carvalho Chehab commit 4403b7b4eabd3f307c21bfadebe7a1d951d1478b Author: Mauro Carvalho Chehab Date: Mon Jun 28 12:37:13 2010 -0300 V4L/DVB: ir-core: Remove magic numbers at the sysfs logic Instead of using "magic" sizes for protocol names, replace them by an array, and use strlen(). No functional changes. Signed-off-by: Mauro Carvalho Chehab commit 667c9ebe97f7e5f1e48e7eb321644c6fb1668de5 Author: David Härdeman Date: Sun Jun 13 17:29:31 2010 -0300 V4L/DVB: ir-core: centralize sysfs raw decoder enabling/disabling With the current logic, each raw decoder needs to add a copy of the exact same sysfs code. This is both unnecessary and also means that (re)loading an IR driver after raw decoder modules have been loaded won't work as expected. This patch moves that logic into ir-raw-event and adds a single sysfs file per device. Reading that file returns something like: "rc5 [rc6] nec jvc [sony]" (with enabled protocols in [] brackets) Writing either "+protocol" or "-protocol" to that file will enable or disable the according protocol decoder. An additional benefit is that the disabling of a decoder will be remembered across module removal/insertion so a previously disabled decoder won't suddenly be activated again. The default setting is to enable all decoders. This is also necessary for the next patch which moves even more decoder state into the central raw decoding structs. Signed-off-by: David Härdeman Acked-by: Jarod Wilson Tested-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 0dc50942d6f23989ffb3024aa2271941ec44aea8 Author: David Härdeman Date: Mon Jun 7 16:32:33 2010 -0300 V4L/DVB: ir-core: partially convert ir-kbd-i2c.c to not use ir-functions.c Partially convert drivers/media/video/ir-kbd-i2c.c to not use ir-functions.c Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit 3bbd3f2d09de39fe6c43b118a32ba5155bb3d25e Author: David Härdeman Date: Mon Jun 7 16:32:28 2010 -0300 V4L/DVB: ir-core: partially convert cx88 to not use ir-functions.c Partially convert drivers/media/video/cx88/cx88-input.c to not use ir-functions.c Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit 603044d883d610acdb44daecf94b0fca48880b5c Author: Mauro Carvalho Chehab Date: Sun Jun 27 08:32:11 2010 -0300 V4L/DVB: em28xx-input: Don't generate one debug message for every get_key read Instead of generating one printk for every IR read, prints it only when count is different from the last count. While here, as this code is called on every 100ms during the runtime lifetime, do some performance optimization, assuming that, under normal circumstances, it is unlikely that the driver would get a new key/key repeat on every poll. Signed-off-by: Mauro Carvalho Chehab commit a469585b1cd41e6efd5c2746a655feb840525e5c Author: David Härdeman Date: Mon Jun 7 16:32:23 2010 -0300 V4L/DVB: ir-core: convert em28xx to not use ir-functions.c Convert drivers/media/video/em28xx/em28xx-input.c to not use ir-functions.c Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit f0bdee26a2dc904c463bae1c2ae9ad06f97f100d Author: David Härdeman Date: Mon Jun 7 16:32:18 2010 -0300 V4L/DVB: ir-core: convert mantis to not use ir-functions.c Convert drivers/media/dvb/mantis/mantis_input.c to not use ir-functions.c Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit bee30192feeba6d69db45434e7818d532d1b8d33 Author: Abylay Ospan Date: Fri Jun 25 08:01:28 2010 -0300 V4L/DVB: Fix kernel Oops when number of NetUP Dual DVB-S2-CI cards more than DVB_MAX_ADAPTERS limit Signed-off-by: Abylay Ospan Signed-off-by: Mauro Carvalho Chehab commit 38bff697ac6904af97cb5f7ee5184d2d320e15c2 Author: Jean-François Moine Date: Thu Jun 24 05:19:58 2010 -0300 V4L/DVB: gspca - main: Remove V4L1 compatibility Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit e795d912d71734890759e6341c69d20bebb0d10b Author: Jean-François Moine Date: Thu Jun 24 05:14:22 2010 -0300 V4L/DVB: gspca - main: Don't use the PG_Reserved flag for mmapped buffers Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit a68f723cef2c97c30e84c39a847c0c5feff5f0d5 Author: Jean-François Moine Date: Thu Jun 24 05:02:57 2010 -0300 V4L/DVB: gspca - sq930x: New sensor mt9v111 Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 7d716a36c349bad75e13352d11211c3ae556e92f Author: Jean-François Moine Date: Thu Jun 24 04:57:12 2010 -0300 V4L/DVB: gspca - sq930x: Check the USB read errors Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit a1317135d109f4b6dd89caa1a9b2b6c8d54b09cd Author: Jean-François Moine Date: Thu Jun 24 04:50:26 2010 -0300 V4L/DVB: gspca - pac7302/11: Bad request value in USB write Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 4e6aeefeb822c70d70de4d3b9970939e5de9c647 Author: Márton Németh Date: Mon Jun 14 17:21:37 2010 -0300 V4L/DVB: gspca - pac7302: add Genius iSlim 310 Add Genius iSlim 310 webcam to the supported list of the PAC7302 driver. For more information see http://linuxtv.org/wiki/index.php/PixArt_PAC7301/PAC7302 . Signed-off-by: Márton Németh Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 8bbb1c39056266dd1643532a40293252945f4c2c Author: Olivier Lorin Date: Thu Jun 24 04:33:53 2010 -0300 V4L/DVB: gspca - gl860: text alignment - Extra spaces to align some variable names and a defined value Signed-off-by: Olivier Lorin Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit d398c0eb62d1788726b501329abcc6fd164d1778 Author: Olivier Lorin Date: Thu Jun 24 04:31:43 2010 -0300 V4L/DVB: gspca - gl860: fix for wrong 0V9655 resolution identifier name Signed-off-by: Olivier Lorin Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit bff7e839da4bdc344ec789bf8ae903dfc4db20c1 Author: Olivier Lorin Date: Thu Jun 24 04:30:05 2010 -0300 V4L/DVB: gspca - gl860: use of real resolutions for MI2020 sensor - Change of rounded image resolutions to the real ones for MI2020 sensor in order to discard 2 random lines in the bottom of images Signed-off-by: Olivier Lorin Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit f980f5d2a45ef1812933d52361aefd50f01e2193 Author: Olivier Lorin Date: Thu Jun 24 04:28:24 2010 -0300 V4L/DVB: gspca - gl860: setting changes applied after an EOI - Setting changes applied after an end of image marker reception This is the way MI2020 sensor works. It seems to be logical to wait for a complete image before to change a setting. Signed-off-by: Olivier Lorin Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit ccbc3cf22c8cad16ca3b17084e26e382c4e983f0 Author: Olivier Lorin Date: Thu Jun 24 04:26:20 2010 -0300 V4L/DVB: gspca - gl860: USB control message delay unification - 1 ms "msleep" applied to each sensor after USB control data exchange This was done for two sensors because these exchanges were known to be too quick depending on laptop model. It is fairly logical to apply this delay to each sensor in order to prevent from having errors with untested hardwares. Signed-off-by: Olivier Lorin Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit a13ee1dd5b7aeff73f80a2f6451af2690c901522 Author: Olivier Lorin Date: Thu Jun 24 04:22:37 2010 -0300 V4L/DVB: gspca - gl860: new driver for MI2020 sensor - new MI2020 driver version made from a webcam gift - all previous flavors of this driver removed Signed-off-by: Olivier Lorin Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit be2a9fae7be36864777e4b66f925d7af11578d99 Author: Jean-François Moine Date: Fri Jun 4 06:42:32 2010 -0300 V4L/DVB: gspca: Remove/move useless inclusions of slab.h Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 2584bc4337855382d23b4abfc2e2492df6fdeb41 Author: Devin Heitmueller Date: Sun Jun 13 17:00:23 2010 -0300 V4L/DVB: Fix case where fields were not at the correct start location This patch address an arithmetic error for the case where the only remaining content in the USB packet was the "225Axxxx" start of active video. In cases where that happened to be at the end of the frame, we would inject it into the videobuf (which is incorrect). This caused fields to be intermittently rendered off by two pixels. Thanks to Eugeniy Meshcheryakov for bringing this issue to my attention Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 7f8eacd2162a39ca7fc1240883118a786f147ccb Author: Devin Heitmueller Date: Sat May 29 17:18:45 2010 -0300 V4L/DVB: Add closed captioning support for the HVR-950q Add NTSC closed captioning support for au0828 based products. Note that this also required reworking the locking to support streaming on both the video and VBI devices (the logic for which I copied from my changes made to the em28xx several months ago). This work was sponsored by GetWellNetwork Inc. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit fab9bfbed22f91f271a93a3dfa142179a2278935 Author: Michael Krufky Date: Mon May 3 02:10:15 2010 -0300 V4L/DVB: tda18271: fix error detection during initialization of first instance Fix error detection of failures during initialization of first instance: Dont pass a function into the tda_fail macro. Instead, save the function return value and pass that into the tda_fail macro. This prevents the function from being called twice in cases of failure, for example: [19026.074070] tuner 4-0060: chip found @ 0xc0 (device #0) [19026.087755] tda18271 4-0060: creating new instance [19026.089965] Unknown device detected @ 4-0060, device not supported. [19026.092233] Unknown device detected @ 4-0060, device not supported. [19026.092241] tda18271_attach: [4-0060|M] error -22 on line 1275 [19026.092327] tda18271 4-0060: destroying instance Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 4359e5b5ba3b746cd02bd3a18d576b11c0843419 Author: Andy Walls Date: Sat Jun 12 13:55:33 2010 -0300 V4L/DVB: ivtv: Increment driver version due to firmware loading changes Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 215659d14f9dbc849ccda1655c94d710f8cc6384 Author: Ian Armstrong Date: Sat Jun 12 13:41:57 2010 -0300 V4L/DVB: ivtv: Automatic firmware reload If the firmware has failed, this patch will automatically reload & restart the card. The previous card state will be restored on a successful restart. Firmware reload will only happen if neither the encoder or decoder is active. If the card is busy then behaviour is as before, returning -EIO on device access until the reload can occur. On cards that support video output, coloured bars will be displayed during the reload. Andy Walls (ivtv maintainer and patch committer) made minor tweaks to comments and the logged messages, but nothing substantial otherwise. Signed-off-by: Ian Armstrong Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 914610e8c508224a6fb9fb501ed4bda25b340ba6 Author: Ian Armstrong Date: Sat Jun 12 13:33:21 2010 -0300 V4L/DVB: ivtv: Add firmare monitoring and debug mode to ignore firmware problems >From Ian's e-mail: When a device is opened the firmware state will be checked. If it isn't responding then the open will fail with -EIO. Due to the nature of the hardware, a single failed check will block everything since we don't know exactly what has failed. A side effect of this is the blocking of debug access, so an additional debug level has been created which allows the block to be bypassed. Andy Walls' modifications: I modified Ian's patch to add a separate fw_debug module parameter to change the driver's behavior, as opposed to using the normal debug module parameter. The fw_debug module parameter is only available when CONFIG_VIDEO_ADV_DEBUG is set. I also made some minor whitespace adjustments and changed some warning messages to be a bit more specific. s/happy/glad/g Signed-off-by: Ian Armstrong Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit a5ba334cda924eb0ae4754321ad7fc292c5a5288 Author: Michael Krufky Date: Sat Mar 13 15:22:32 2010 -0300 V4L/DVB: lgdt3305: enable FE_HAS_SIGNAL hack for the lgdt3304 in QAM mode The signal bit is unreliable on the DT3304 in QAM mode, so set FE_HAS_SIGNAL based on 'cr_lock' Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 40ff540f3ec7ce2fd37510cbef495a57a4d1bd56 Author: Michael Krufky Date: Fri Mar 12 00:58:12 2010 -0300 V4L/DVB: lgdt3305: update copyright date and MODULE_VERSION Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 132631d07fb7ba4bac964cbcc16a50ea77dd5f56 Author: Michael Krufky Date: Fri Mar 12 00:56:32 2010 -0300 V4L/DVB: lgdt3305: Jarod Wilson gets the credit for LGDT3304 support Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 10952a716fbf71dfaea979932379d779ea8303b6 Author: Michael Krufky Date: Fri Mar 12 00:54:17 2010 -0300 V4L/DVB: lgdt3305: FIXME: verify & document the LGDT3304 registers Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit d99a21182246bb9c876c0f48ef1201e8df97535a Author: Michael Krufky Date: Fri Mar 12 00:32:27 2010 -0300 V4L/DVB: lgdt3305: consolidate init functions Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 241b0f411193ebcfa86aa41a5ab4f22df2ef4c24 Author: Michael Krufky Date: Fri Mar 12 00:00:55 2010 -0300 V4L/DVB: lgdt3305: re-write lgdt3304 ifbw hack in lgdt3305_rfagc_loop with FIXME Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 5de82faec811e1494966f196354954a6543fdc3a Author: Michael Krufky Date: Thu Mar 11 23:50:51 2010 -0300 V4L/DVB: lgdt3305: update lgdt3305.h header to match the header in lgdt3305.c Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit bf37d1354f8dfb7eb2bf4eac1747ab548f20e834 Author: Michael Krufky Date: Thu Mar 11 23:33:20 2010 -0300 V4L/DVB: lgdt3305: remove pointless function, lgdt3304_sleep Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 804258c95f9b782b1916eeb4fe280b119ad5b152 Author: Jarod Wilson Date: Sun Mar 7 17:20:03 2010 -0300 V4L/DVB: dvb: add lgdt3304 support to lgdt3305 driver There's a currently-unused lgdt3304 demod driver, which leaves a lot to be desired as far as functionality. The 3304 is unsurprisingly quite similar to the 3305, and empirical testing yeilds far better results and more complete functionality by merging 3304 support into the 3305 driver. (For example, the current lgdt3304 driver lacks support for signal strength, snr, ucblocks, etc., which we get w/the lgdt3305). For the moment, not dropping the lgdt3304 driver, and its still up to a given device's config setup to choose which demod driver to use, but I'd suggest dropping the 3304 driver entirely. As a follow-up to this patch, I've got another patch that adds support for the KWorld PlusTV 340U (ATSC) em2870-based tuner stick, driving its lgdt3304 demod via this lgdt3305 driver, which is what I used to successfully test this patch with both VSB_8 and QAM_256 signals. A few pieces are still a touch crude, but I think its a solid start, as well as much cleaner and more feature-complete than the existing lgdt3304 driver. Signed-off-by: Jarod Wilson Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 5b0ff8c43afefbd42a1aa3cd89808eec829bbbb7 Author: Jean-François Moine Date: Sat Jun 5 07:57:56 2010 -0300 V4L/DVB: gspca - spca1528: New subdriver Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 4462864d723fcae990bde5621a19a8dce9231cfa Author: Jean-François Moine Date: Sat Jun 5 07:47:36 2010 -0300 V4L/DVB: gspca - main: Function gspca_dev_probe2 added This function is used when the USB video interface is checked by the subdriver. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 618a864ee7b720aa3560796e0dfad0e674366e60 Author: Jean-François Moine Date: Sat Jun 5 07:45:04 2010 -0300 V4L/DVB: gspca - sq930x: New subdriver Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit e9b156532ec4d3c0a248ec958a8378f769297fcd Author: Jean-François Moine Date: Sat Jun 5 07:07:56 2010 -0300 V4L/DVB: gspca - t613: Change the gain mechanism - variable / function rename - set the gains in one exchange - don't alter the register 80 which contains the AWB flag and other sensor specific values - the global gain is now the average of the R, G and B gains. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit ebb78c5a81e0f4c85f6d9e1b0d11ede7adb530b3 Author: Jean-François Moine Date: Sat Jun 5 06:56:48 2010 -0300 V4L/DVB: gspca - t613: Simplify the scan of isoc packets Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 983882411b1121557c822887a27aeaa874f51577 Author: Jean-François Moine Date: Fri Jun 4 07:30:21 2010 -0300 V4L/DVB: gspca - t613: Remove the RGB gains setting from sensor_polling This patch also renames the last polling message from the closer one of the ms-windows driver. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 79960d3904d1bcc6698ce86ea12ee0e003d4c37d Author: Jean-François Moine Date: Fri Jun 4 07:24:53 2010 -0300 V4L/DVB: gspca - t613: Change the gamma table The new table is sorted and extracted from a clear part of the MS-Windows driver. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 78b98cb9422533ecec32d8d30a23212c9a896ddc Author: Jean-François Moine Date: Sat Jun 5 07:01:46 2010 -0300 V4L/DVB: gspca - t613: Adjust light frequency values per sensor Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit cd8955b85efd7f460339f0ac8117be9e513a6996 Author: Jean-François Moine Date: Fri Jun 4 07:22:57 2010 -0300 V4L/DVB: gspca - t613: Cleanup and clarify the source Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit a9dfc01d206b3bc807814751cb2b4e0704f4a2f7 Author: Jean-François Moine Date: Fri Jun 4 06:21:48 2010 -0300 V4L/DVB: gspca - zc3xx: Add back the brightness control This patch also changes a bit the contrast control. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 93604b0fdde324da0a4581efaa584a036554b36a Author: Jean-François Moine Date: Fri Jun 4 05:54:41 2010 -0300 V4L/DVB: gspca - zc3xx: Don't change the registers 7 and 8 for sensor pas202b These registers seem to act on the JPEG compression whose control is not implemented in the current driver. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit db6cf426a8692bce729341f74a57281ca021f2aa Author: Jean-François Moine Date: Fri Jun 4 05:48:52 2010 -0300 V4L/DVB: gspca - zc3xx: Change the max and default JPEG qualities Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit bf48cc4149df1bc1447068b0247c2364713af66c Author: Jean-François Moine Date: Fri Jun 4 05:46:38 2010 -0300 V4L/DVB: gspca - stk014: Change the min and default values of the JPEG quality Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 9a731a3265a808c806766a28e2b62e9da78f9ac6 Author: Jean-François Moine Date: Fri Jun 4 05:26:42 2010 -0300 V4L/DVB: gspca - JPEG subdrivers: Don't allocate the JPEG header The JPEG header is now included in the subdriver structure instead of being allocated and freed at capture start and stop. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 456c9acb63fa5c3974c72309f831bd0e1f34b6d9 Author: Hans de Goede Date: Tue Jun 1 06:39:14 2010 -0300 V4L/DVB: gspca_ov519: Don't report a saturation control for 7670 sensors setcolors(0 is a no-op for 7670 sensors, so we should not report a saturation control for 7670 sensors. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 74c519cb6c5f23574a4d1d4a71b2b481a7482c85 Author: Hans de Goede Date: Wed May 12 07:01:53 2010 -0300 V4L/DVB: gspca_tv8532: rename brightness control to exposure What we've called brightness so far actually is an exposure control, rename it and fixup the maximum and default values. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 14bff9b8e746cfdb08f852f489a41659ed814c2a Author: Hans de Goede Date: Wed May 12 06:58:00 2010 -0300 V4L/DVB: gspca_tv8532: add gain control gspca_tv8532: add gain control Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit 5e027610eaad08c996ee791a7d7d93294ace2c2a Author: Hans de Goede Date: Wed May 12 06:26:01 2010 -0300 V4L/DVB: gspca_tv8532: remove a whole bunch of unnecessary register writes There is a problem with certain tv8532 cams, where sometimes there hsync/vsync locks one pixel of where it normally locks. While trying to fix this (which I failed to do). I noticed there are lots if duplicate register writes and unnecessary register reads in the tv8532 driver. This patch cleanes these ups (which has no negative effects, but unfortunately also does not help). Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit d6b6d7aef458e1c1ce6997929d38aaa48fe637c2 Author: Hans de Goede Date: Sat May 8 08:55:42 2010 -0300 V4L/DVB: gspca_ovfx2: drop first frames in stream if not synced With the ovfx2 bridge sometimes the first few frames in a stream would be no good, as the bridge and sensor are not in complete hsync / vsync yet. This can easily be detected by checking the framesize. So if the framesize is short and it is one of the 1ste 3 frames after an sd_start, drop it. Signed-off-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab commit ccfb30288228aaaf40a849bffe434bc9eb46b23c Author: Mauro Carvalho Chehab Date: Wed Jun 30 17:24:28 2010 -0300 V4L/DVB: tm6000: Partially revert some copybuf logic Partially revert changeset 0208bef609242a2d50b95edc713a41566cae500b: As pointed by Stefan Ringel , many packets become damaged by this change. That means that the "size" field of Video/VBI is not presenting 180 bytes, as it should be expected. Thanks-to: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 758bb0b3e77d7876b76e48b4ac20f473be004421 Author: Mauro Carvalho Chehab Date: Mon Jun 7 12:32:27 2010 -0300 V4L/DVB: tm6000: Be sure that the new buffer is empty Signed-off-by: Mauro Carvalho Chehab commit d0669c872ff68cac5ab312569e716c12171440a9 Author: Mauro Carvalho Chehab Date: Mon Jun 7 12:10:14 2010 -0300 V4L/DVB: tm6000: Fix copybuf continue logic Signed-off-by: Mauro Carvalho Chehab commit 23ba94633db4311f06f57f0f53d6715feab6a018 Author: Mauro Carvalho Chehab Date: Mon Jun 7 11:57:28 2010 -0300 V4L/DVB: tm6000: audio packet has always 180 bytes Signed-off-by: Mauro Carvalho Chehab commit a59bff3714a0f568f25816772ee939796cc7741d Author: Mauro Carvalho Chehab Date: Mon Jun 7 11:57:01 2010 -0300 V4L/DVB: tm6000: Improve set bitrate routines used by alsa Signed-off-by: Mauro Carvalho Chehab commit e8cbf0357eb7148b41eb2cd4bb37b0b9532042fc Author: Mauro Carvalho Chehab Date: Sat Jun 5 19:21:34 2010 -0300 V4L/DVB: tm6000-alsa: Implement a routine to store data received from URB Implements the fillbuf callback to store data received via URB data transfers. Signed-off-by: Mauro Carvalho Chehab commit 3f23a81a101889711e878240908a2b81b94a268a Author: Mauro Carvalho Chehab Date: Sat Jun 5 15:10:36 2010 -0300 V4L/DVB: tm6000-alsa: Fix several bugs at the driver initialization code There are several missing things at the driver, preventing, for example, the code to start/stop DMA to actually work. Fix them before implementing a routine to store data at the audio buffers. Signed-off-by: Mauro Carvalho Chehab commit faa7c13481a1d73e93456b1e2a0d95c4f89ad518 Author: Mauro Carvalho Chehab Date: Fri Jun 4 21:08:25 2010 -0300 V4L/DVB: tm6000: avoid unknown symbol tm6000_debug Reported by Stefan Ringel. Thanks-to: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit b17b86991a6a17560ddd97ed9a970fc38427217d Author: Mauro Carvalho Chehab Date: Thu Jun 3 17:16:28 2010 -0300 V4L/DVB: tm6000: Add a callback code for buffer fill Implements a callback to be used by tm6000-alsa, in order to allow filling audio data packets. Signed-off-by: Mauro Carvalho Chehab commit 39e1256bc4b85145b9db392e49a71cad43f6903b Author: Mauro Carvalho Chehab Date: Thu Jun 3 16:31:20 2010 -0300 V4L/DVB: tm6000: Use an enum for extension type In order to better document and be sure that the values are used at the proper places, convert extension type into an enum and name it as "type", instead of "id". Signed-off-by: Mauro Carvalho Chehab commit 54b78608c6f4a30b4d64ec17bc36636c2a081506 Author: Mauro Carvalho Chehab Date: Thu Jun 3 16:24:19 2010 -0300 V4L/DVB: tm6000-alsa: rework audio buffer allocation/deallocation Signed-off-by: Mauro Carvalho Chehab commit 0e57ff8d5c3d98abbd2137872a8e663e553a7245 Author: Mauro Carvalho Chehab Date: Thu Jun 3 13:45:41 2010 -0300 V4L/DVB: tm6000: Avoid OOPS when loading tm6000-alsa module Signed-off-by: Mauro Carvalho Chehab commit 66e89522aff70fb2701ba8f6845fdcd365dd2ade Author: Jarod Wilson Date: Tue Jun 1 17:32:08 2010 -0300 V4L/DVB: IR: add mceusb IR receiver driver This is a new driver for the Windows Media Center Edition/eHome Infrared Remote transceiver devices. Its a port of the current lirc_mceusb driver to ir-core, and currently lacks transmit support, but will grow it back soon enough... This driver also differs from lirc_mceusb in that it borrows heavily from a simplified IR buffer decode routine found in Jon Smirl's earlier ir-mceusb port. This driver has been tested on the original first-generation MCE IR device with the MS vendor ID, as well as a current-generation device with a Topseed vendor ID. Every receiver supported by lirc_mceusb should work equally well. Testing was done primarily with RC6 MCE remotes, but also briefly with a Hauppauge RC5 remote, and all works as expected. v2: fix call to ir_raw_event_handle so repeats work as they should. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 0204fe2a20da12ddae1b564712ceeebc55214f97 Author: Jarod Wilson Date: Tue Jun 1 17:30:35 2010 -0300 V4L/DVB: IR: add RC6 keymap for Windows Media Center Ed. remotes This is the RC6 keymap for the Windows Media Center Edition remotes that come bundled with MCE/eHome Infrared Remote transceivers. Tested with 3 different variants of the remote, but its possible there are still some additional keys missing, but its simple enough to add them in later... This patch also adds an IR_TYPE_ALL convenience macro to make life easier for receivers that support all IR protocols. v2: fix an erroneous comment that referred to imon devices Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 7366646e20f8800433333a7102e3ce488215e33f Author: Jarod Wilson Date: Tue Jun 1 17:27:07 2010 -0300 V4L/DVB: IR: only initially registers protocol that matches loaded keymap Rather than registering all IR protocol decoders as enabled when bringing up a new device, only enable the IR protocol decoder that matches the keymap being loaded. Additional decoders can be enabled on the fly by those that need to, either by twiddling sysfs bits or by using the ir-keytable util from v4l-utils. Functional testing done with the mceusb driver, and it behaves as expected, only the rc6 decoder is enabled, keys are all handled properly, etc. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit c2284261113f09bca4d362f5d51c008b65f55b6a Author: Jarod Wilson Date: Sat May 29 14:17:27 2010 -0300 V4L/DVB: IR: let all protocol decoders have a go at raw data On Fri, May 28, 2010 at 3:59 PM, Jarod Wilson wrote: > The mceusb driver I'm about to submit handles just about any raw IR you > can throw at it. The ir-core loads up all protocol decoders, starting > with NEC, then RC5, then RC6. RUN_DECODER() was trying them in the same > order, and exiting if any of the decoders didn't like the data. The > default mceusb remote talks RC6(6A). Well, the RC6 decoder never gets a > chance to run unless you move the RC6 decoder to the front of the list. > > What I believe to be correct is to have RUN_DECODER keep trying all of > the decoders, even when one triggers an error. I don't think the errors > matter so much as it matters that at least one was successful -- i.e., > that _sumrc is > 0. The following works for me w/my mceusb driver and > the default decoder ordering -- NEC and RC5 still fail, but RC6 still > gets a crack at it, and successfully does its job. > > Signed-off-by: Jarod Wilson > > --- >  drivers/media/IR/ir-raw-event.c |    7 ++++--- > > diff --git a/drivers/media/IR/ir-raw-event.c b/drivers/media/IR/ir-raw-event.c > index ea68a3f..44162db 100644 > --- a/drivers/media/IR/ir-raw-event.c > +++ b/drivers/media/IR/ir-raw-event.c > @@ -36,14 +36,15 @@ static DEFINE_SPINLOCK(ir_raw_handler_lock); >  */ >  #define RUN_DECODER(ops, ...) ({                                           \ >        struct ir_raw_handler           *_ir_raw_handler;                   \ > -       int _sumrc = 0, _rc;                                                \ > +       int _sumrc = 0, _rc, _fail;                                         \ >        spin_lock(&ir_raw_handler_lock);                                    \ >        list_for_each_entry(_ir_raw_handler, &ir_raw_handler_list, list) {  \ >                if (_ir_raw_handler->ops) {                                 \ >                        _rc = _ir_raw_handler->ops(__VA_ARGS__);            \ >                        if (_rc < 0)                                        \ > -                               break;                                      \ > -                       _sumrc += _rc;                                      \ > +                               _fail++;                                    \ > +                       else                                                \ > +                               _sumrc += _rc;                              \ Self-NAK. The only place we actually *care* about the retval from a RUN_DECODER() call is in __ir_input_register(), and currently, its looking for retval < 0, which is currently never possible. When we're running the decoders, either they fail and return -EINVAL or they succeed and return 0, and in the register case, we get either a negative error (ex: -ENOMEM from rc6) or 0, so with the above, _sumrc will *always* be 0 in the two cases I'm looking at. The third place where RUN_DECODER gets called (decoder unregister) doesn't care about the retval either. New patch below, including updated comments about the macro. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 52e0a72a0c6f61c26a16b5684f4eb30a6fbf8b83 Author: Timofey Trofimov Date: Sat May 29 13:52:46 2010 -0300 V4L/DVB: Staging: tm6000: Fix coding style issues Fixed coding style issues founded by checkpatch.pl in files: tm6000-alsa.c,tm6000-cards, tm6000-core.c, tm6000-dvb.c, tm6000-i2c.c, tm6000-stds.c, tm6000-usb-isoc.h, tm6000.h [mchehab@redhat.com: Fix some compilation breakages] Signed-off-by: Timofey Trofimov Signed-off-by: Mauro Carvalho Chehab commit cee3926f5f245811ef7172405253815e7f3e15e1 Author: Stefan Ringel Date: Sun May 30 09:19:04 2010 -0300 V4L/DVB: tm6000: move dvb into a separate kern module move dvb into a separate kern module [mchehab@redhat.com: Fix several compilation breakages] Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit d77057f250104120c149904e6d1c85a7bf718ada Author: Stefan Ringel Date: Sun May 30 09:19:02 2010 -0300 V4L/DVB: tm6000: rewrite init and fini rewrite tm6000_audio_init and tm6000_audio_fini Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 53ff4c7900979433e8af56f59e267d06e6744e93 Author: Dmitri Belimov Date: Tue Jun 1 22:07:39 2010 -0300 V4L/DVB: tm6000: Fix Video decoder initialization Fix video decoder overflow and avoid junk audio packets when TV signal is lost. Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov Signed-off-by: Mauro Carvalho Chehab commit 83cb9a504ca8fae519b5b31f7a1c69ea046104b2 Author: Stefan Ringel Date: Tue Jun 1 12:47:42 2010 -0300 V4L/DVB: tm6000: rewrite copy_streams Merge function copy streams() and copy_packets() into a new function copy_streams(), fixing the bugs. Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 3b23db39b4a780219a06e9408e08070461724957 Author: Guennadi Liakhovetski Date: Thu Jul 8 05:12:11 2010 -0300 V4L/DVB: V4L2: fix sh_vou.c compile breakage: #include Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit e53a48053f5612415a04375a6562e63a771d7cc3 Author: Guennadi Liakhovetski Date: Fri Jun 18 04:20:56 2010 -0300 V4L/DVB: sh_mobile_ceu_camera: fix debugging message With enabled debugging sh_mobile_ceu_camera.c dereferences an invalid or a NULL pointer. Thanks to James Wang for reporting. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit e7d403f55675d9153de893345ec155af82fd993c Author: Kuninori Morimoto Date: Tue May 11 06:14:18 2010 -0300 V4L/DVB: soc_camera_platform: Add necessary v4l2_subdev_video_ops method These function are needed to use camera. This patch was tested with sh_mobile_ceu_camera Signed-off-by: Kuninori Morimoto Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit b879743f26cb029e41ffe865fb939cfc6fa9be88 Author: Narendra K Date: Mon Aug 2 07:44:29 2010 -0500 PCI: Fix warnings when CONFIG_DMI unset This patch fixes the below warnings introduced by the commit 911e1c9b05a8e3559a7aa89083930700a0b9e7ee ("PCI: export SMBIOS provided firmware instance and label to sysfs"). drivers/pci/pci.h: In function ‘pci_create_firmware_label_files’: drivers/pci/pci.h:16: warning: ‘return’ with a value, in function returning void drivers/pci/pci.h: In function ‘pci_remove_firmware_label_files’: drivers/pci/pci.h:18: warning: ‘return’ with a value, in function returning void The warnings are seen because of the below code, doing a retun 0 from the functions 'pci_create_firmware_label_files' and 'pci_remove_firmware_label_files' defined as void. +#ifndef CONFIG_DMI +static inline void pci_create_firmware_label_files(struct pci_dev *pdev) +{ return 0; } +static inline void pci_remove_firmware_label_files(struct pci_dev *pdev) +{ return 0; } Signed-off-by: Narendra K Signed-off-by: Jesse Barnes commit 6661481d5a8975657742c7ed40ae16bdaa7d0a6e Author: Changli Gao Date: Mon Aug 2 17:56:28 2010 +0200 netfilter: nf_conntrack_acct: use skb->len for accounting use skb->len for accounting as xt_quota does. Since nf_conntrack works at the network layer, skb_network_offset should always returns ZERO. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit e8c534ec068af1a0845aceda373a9bfd2de62030 Author: Michal Schmidt Date: Tue Jul 27 18:53:35 2010 +0200 x86: Fix keeping track of AMD C1E Accomodate the original C1E-aware idle routine to the different times during boot when the BIOS enables C1E. While at it, remove the synthetic CPUID flag in favor of a single global setting which denotes C1E status on the system. [ hpa: changed c1e_enabled to be a bool; clarified cpu bit 3:21 comment ] Signed-off-by: Michal Schmidt LKML-Reference: <20100727165335.GA11630@aftab> Signed-off-by: Borislav Petkov Signed-off-by: H. Peter Anvin Acked-by: Thomas Gleixner commit cff6b8a9b81b404e8ce0257b26007c3afe625212 Author: Dan Carpenter Date: Sat Jul 10 11:51:54 2010 +0200 9p: strlen() doesn't count the terminator This is an off by one bug because strlen() doesn't count the NULL terminator. We strcpy() addr into a fixed length array of size UNIX_PATH_MAX later on. The addr variable is the name of the device being mounted. Signed-off-by: Dan Carpenter Signed-off-by: Eric Van Hensbergen commit b126468e08d92aaeffa58ef04d70e417241dadc1 Author: Fang Wenqi Date: Tue Jun 1 02:43:06 2010 +0000 virtio_9p.h needs Found with makes headers_check: include/linux/virtio_9p.h:15: found __[us]{8,16,32,64} type without #include Signed-off-by: Fang Wenqi Signed-off-by: Eric Van Hensbergen commit 2452a99dc0496a90abd0090c280671370c0f3e1c Author: Changli Gao Date: Mon Aug 2 17:35:49 2010 +0200 netfilter: nf_nat: don't check if the tuple is unique when there isn't any other choice The tuple got from unique_tuple() doesn't need to be really unique, so the check for the unique tuple isn't necessary, when there isn't any other choice. Eliminating the unnecessary nf_nat_used_tuple() can save some CPU cycles too. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 6b0a2996a0c023d84bc27ec7528a6e54cb5ea264 Merge: 209fb87 9fe6206 Author: Alex Elder Date: Mon Aug 2 10:24:57 2010 -0500 Merge branch 'v2.6.35' commit f43dc98b3be36551143e3bbaf1bb3067835c24f4 Author: Changli Gao Date: Mon Aug 2 17:20:54 2010 +0200 netfilter: nf_nat: make unique_tuple return void The only user of unique_tuple() get_unique_tuple() doesn't care about the return value of unique_tuple(), so make unique_tuple() return void (nothing). Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 794dbc1d712e181a9eb8d1ae799ed7c526963a7c Author: Changli Gao Date: Mon Aug 2 17:15:30 2010 +0200 netfilter: nf_nat: use local variable hdrlen Use local variable hdrlen instead of ip_hdrlen(skb). Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 5c0d2374a16fcb52096df914ee57720987677be5 Author: Simon Horman Date: Mon Aug 2 17:12:44 2010 +0200 ipvs: provide default ip_vs_conn_{in,out}_get_proto This removes duplicate code by providing a default implementation which is used by 3 of the 4 modules that provide these call. Signed-off-by: Simon Horman Signed-off-by: Patrick McHardy commit 2890a1573d1ae859a4d77e2fdbecacf21f96c0db Author: Simon Horman Date: Mon Aug 2 17:08:11 2010 +0200 ipvs: remove EXPERIMENTAL tag IPVS was merged into the kernel quite a long time ago and has been seeing wide-spread production use for even longer. It seems appropriate for it to be no longer tagged as EXPERIMENTAL Signed-off-as: Simon Horman Signed-off-by: Patrick McHardy commit ee92d37861a90b8f14fa621ae5abcfb29a89aaa9 Author: Changli Gao Date: Mon Aug 2 17:06:19 2010 +0200 netfilter: nf_conntrack_extend: introduce __nf_ct_ext_exist() some users of nf_ct_ext_exist() know ct->ext isn't NULL. For these users, the check for ct->ext isn't necessary, the function __nf_ct_ext_exist() can be used instead. the type of the return value of nf_ct_ext_exist() is changed to bool. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 24b36f0193467fa727b85b4c004016a8dae999b9 Author: Eric Dumazet Date: Mon Aug 2 16:49:01 2010 +0200 netfilter: {ip,ip6,arp}_tables: dont block bottom half more than necessary We currently disable BH for the whole duration of get_counters() On machines with a lot of cpus and large tables, this might be too long. We can disable preemption during the whole function, and disable BH only while fetching counters for the current cpu. Signed-off-by: Eric Dumazet Signed-off-by: Patrick McHardy commit 581b7e9fc00789782cb3bdca58db49f6f0f66608 Author: Justin P. Mattock Date: Wed Jul 7 21:42:13 2010 -0700 udf: super.c Fix warning: variable 'sbi' set but not used This fixes this warning when building the kernel: CC fs/udf/super.o fs/udf/super.c: In function 'udf_load_sequence': fs/udf/super.c:1582:22: warning: variable 'sbi' set but not used Please have a look, when you have time and let me know. Signed-off-by: Justin P. Mattock Signed-off-by: Jan Kara commit de67445f0e6009fd1e338eda023857b18b16e647 Author: Huang Weiyi Date: Sun May 23 01:13:09 2010 +0800 udf: remove duplicated #include Remove duplicated #include('s) in fs/udf/file.c Signed-off-by: Huang Weiyi Signed-off-by: Jan Kara commit 7bfb9c031ec2d220d48bf679553d6177c2e66625 Author: David Henningsson Date: Mon Aug 2 13:13:25 2010 +0200 ALSA: hda - Do not try to create speaker NIDs for ALC268 if there aren't any Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit 2430f9df61e2ea47ea468dfe22b7e2db97111fb4 Author: Sukumar Ghorai Date: Fri Jul 9 14:27:51 2010 +0000 omap3: add support for NAND on LDP board patch adds NAND support to LDP board. Signed-off-by: Vimal Singh Signed-off-by: Sukumar Ghorai Signed-off-by: Tony Lindgren commit 7875eea5caf641e36cd9b5755c1d84810469fe30 Author: Sukumar Ghorai Date: Fri Jul 9 14:27:50 2010 +0000 omap-3630-sdp : Add support for Flash add support for NAND, OneNAND, NOR on omap 3630-sdp board. Signed-off-by: Sukumar Ghorai Signed-off-by: Tony Lindgren commit e08b105ecdec0bfc8b9bb4d98bc2fc6cc7526938 Author: Sukumar Ghorai Date: Fri Jul 9 14:27:49 2010 +0000 omap3: add support for NAND on zoom3 board patch adds NAND support to zoom3 board. Signed-off-by: Sukumar Ghorai Signed-off-by: Vimal Singh Signed-off-by: Tony Lindgren commit 7e7eb4263ee1f041a9f1b48738b98ef99ef73995 Author: Sukumar Ghorai Date: Fri Jul 9 14:27:48 2010 +0000 omap3: add support for NAND on zoom2 board This patch adds NAND support to ZOOM2 board. Signed-off-by: Sukumar Ghorai Signed-off-by: Vimal Singh Signed-off-by: Tony Lindgren commit 13d6b73cf189945b7d20e749f9034329d227be6a Author: Sukumar Ghorai Date: Fri Jul 9 14:27:47 2010 +0000 omap3 flash: rename board-sdp-flash.c to be use by other boards rename board-sdp-flash.c(board-flash.c) and board-sdp.h(board-flash.h) to used by other board e.g. zoom Signed-off-by: Sukumar Ghorai Signed-off-by: Tony Lindgren commit a51dca9cd3bb4ec5a05bfb6feabf024a5c808a37 Author: Theodore Ts'o Date: Mon Aug 2 08:43:25 2010 -0400 jbd2: Use atomic variables to avoid taking t_handle_lock in jbd2_journal_stop By using an atomic_t for t_updates and t_outstanding credits, this should allow us to not need to take transaction t_handle_lock in jbd2_journal_stop(). Signed-off-by: "Theodore Ts'o" commit f450d86790ebf72ac93c7ea5addd6fa278aae64c Author: Sukumar Ghorai Date: Fri Jul 9 09:14:46 2010 +0000 omap3 nand: fix issue in board file to detect nand Board file modified for not to provide gpmc phys_base address to nand driver. The gpmc_nand_init funciton is now used to detect the nand and required to adopt _prob function as in nand/omap2.c Signed-off-by: Sukumar Ghorai Signed-off-by: Tony Lindgren commit cb76d5e25008b76fb8e348c861d32659430ac3fa Author: Jeff Layton Date: Mon Jul 26 14:25:08 2010 -0400 cifs: fsc should not default to "on" I'm not sure why this was merged with this flag hardcoded on, but it seems quite dangerous. Turn it off. Also, mount.cifs hands unrecognized options off to the kernel so there should be no need for changes there in order to support this. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit f67909cf80051e8510194a51f88c4de323b92071 Author: Steve French Date: Mon Jul 26 18:20:16 2010 +0000 [CIFS] remove redundant path walking in dfs_do_refmount Reviewed-by: Dave Howells Signed-off-by: Igor Mammedov Signed-off-by: Steve French commit f636a34802e3913415410c6e595df2bf84851cff Author: Jeff Layton Date: Mon Jul 26 10:29:58 2010 -0400 cifs: ignore the "mand", "nomand" and "_netdev" mount options These are all handled by the userspace mount programs, but older versions of mount.cifs also handed them off to the kernel. Ignore them. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 3572d2857f61f720082740cc17e2d99b45e7af7f Author: Jeff Layton Date: Mon Jul 26 10:29:57 2010 -0400 cifs: map NT_STATUS_ERROR_WRITE_PROTECTED to -EROFS Seems like a more sensible mapping than -EIO. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit f30b9c11847cb6bf1f7aa65b5c436800621a07dd Author: Jeff Layton Date: Mon Jul 19 18:00:17 2010 -0400 cifs: don't allow cifs_iget to match inodes of the wrong type If the type is different from what we think it should be, then don't match the existing inode. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 9f841593ff65d2f801c7f80c4ed0955d30103f50 Author: Steve French Date: Fri Jul 23 20:37:53 2010 +0000 [CIFS] relinquish fscache cookie before freeing CIFSTconInfo Doh, fix a use after free bug. Signed-off-by: Suresh Jayaraman Reviewed-and-Tested-by: Jeff Layton Signed-off-by: Steve French commit 3e4b3e1f68c10510ec8d3076cffc5729b88f8de6 Author: Jeff Layton Date: Mon Jul 19 18:00:17 2010 -0400 cifs: add separate cred_uid field to sesInfo Right now, there's no clear separation between the uid that owns the credentials used to do the mount and the overriding owner of the files on that mount. Add a separate cred_uid field that is set to the real uid of the mount user. Unlike the linux_uid, the uid= option does not override this parameter. The parm is sent to cifs.upcall, which can then preferentially use the creduid= parm instead of the uid= parm for finding credentials. This is not the only way to solve this. We could try to do all of this in kernel instead by having a module parameter that affects what gets passed in the uid= field of the upcall. That said, we have a lot more flexibility to change things in userspace so I think it probably makes sense to do it this way. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit f55fdcca6bf1c17e86a270a8c0d81c6677c61222 Author: Kulikov Vasiliy Date: Fri Jul 16 20:15:25 2010 +0400 fs: cifs: check kmalloc() result If kmalloc() fails exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy Acked-by: Dave Kleikamp Acked-by: Jeff Layton Signed-off-by: Steve French commit 0ccd48025fe64cf01782ba3c7037654d25bd1950 Author: Steve French Date: Fri Jul 16 04:31:02 2010 +0000 [CIFS] Missing ifdef Signed-off-by: Steve French commit d0e6f44e6cc3c7059e8717c452f0999aba507a38 Author: Steve French Date: Fri Jul 16 04:24:54 2010 +0000 [CIFS] Missing line from previous commit CC: Suresh Jayaraman Signed-off-by: Steve French commit c5e04a3e4975d11d997528caf5d4880902fa90d8 Author: Steve French Date: Fri Jul 16 04:18:36 2010 +0000 [CIFS] Fix build break when CONFIG_CIFS_FSCACHE disabled CC: Suresh Jayaraman Signed-off-by: Steve French commit fa1df75d4debde6d843e616df656f50a92958737 Author: Suresh Jayaraman Date: Mon Jul 5 18:13:36 2010 +0530 cifs: add mount option to enable local caching Add a mount option 'fsc' to enable local caching on CIFS. I considered adding a separate debug bit for caching, but it appears that debugging would be relatively easier with the normal CIFS_INFO level. As the cifs-utils (userspace) changes are not done yet, this patch enables 'fsc' by default to enable testing. Signed-off-by: Suresh Jayaraman Acked-by: David Howells Signed-off-by: Steve French commit 56698236e1294848c63d4768673865ae5a9c69e0 Author: Suresh Jayaraman Date: Mon Jul 5 18:13:25 2010 +0530 cifs: read pages from FS-Cache Read pages from a FS-Cache data storage object into a CIFS inode. Signed-off-by: Suresh Jayaraman Acked-by: David Howells Signed-off-by: Steve French commit 9dc06558c223bbc08290917ac44c25963bc09e43 Author: Suresh Jayaraman Date: Mon Jul 5 18:13:11 2010 +0530 cifs: store pages into local cache Store pages from an CIFS inode into the data storage object associated with that inode. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit 85f2d6b44d7e83bdeab87df910127c6f296866cf Author: Suresh Jayaraman Date: Mon Jul 5 18:13:00 2010 +0530 cifs: FS-Cache page management Takes care of invalidation and release of FS-Cache marked pages and also invalidation of the FsCache page flag when the inode is removed. Signed-off-by: Suresh Jayaraman Acked-by: David Howells Signed-off-by: Steve French commit 9451a9a52f91a4c171cfaca2f6d7a2ce91867b8d Author: Suresh Jayaraman Date: Mon Jul 5 18:12:45 2010 +0530 cifs: define inode-level cache object and register them Define inode-level data storage objects (managed by cifsInodeInfo structs). Each inode-level object is created in a super-block level object and is itself a data storage object in to which pages from the inode are stored. The inode object is keyed by UniqueId. The coherency data being used is LastWriteTime, LastChangeTime and end of file reported by the server. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit d03382ce9a89dbe27cba25130f0b90c0d631d5c5 Author: Suresh Jayaraman Date: Mon Jul 5 18:12:27 2010 +0530 cifs: define superblock-level cache index objects and register them Define superblock-level cache index objects (managed by cifsTconInfo structs). Each superblock object is created in a server-level index object and in itself an index into which inode-level objects are inserted. The superblock object is keyed by sharename. The UniqueId/IndexNumber is used to validate that the exported share is the same since we accessed it last time. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit 8913007e67106597fed4b9dd3787e8dca6915a83 Author: Jeff Layton Date: Tue Jul 6 20:43:08 2010 -0400 cifs: remove unused cifsUidInfo struct Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 4ff67b720c02c36e54d55b88c2931879b7db1cd2 Author: Jeff Layton Date: Tue Jul 6 20:43:02 2010 -0400 cifs: clean up cifs_find_smb_ses (try #2) This patch replaces the earlier patch by the same name. The only difference is that MAX_PASSWORD_SIZE has been increased to attempt to match the limits that windows enforces. Do a better job of matching sessions by authtype. Matching by username for a Kerberos session is incorrect, and anonymous sessions need special handling. Also, in the case where we do match by username, we also need to match by password. That ensures that someone else doesn't "borrow" an existing session without needing to know the password. Finally, passwords can be longer than 16 bytes. Bump MAX_PASSWORD_SIZE to 512 to match the size that the userspace mount helper allows. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit daf5b0b6f3f6d7b15c2600426cc6c60a0e155218 Author: Jeff Layton Date: Tue Jul 6 20:43:02 2010 -0400 cifs: match secType when searching for existing tcp session The secType is a per-tcp session entity, but the current routine doesn't verify that it is acceptible when attempting to match an existing TCP session. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 4515148ef72bfda4ce3c8754149711d9972867ce Author: Jeff Layton Date: Tue Jul 6 20:43:02 2010 -0400 cifs: move address comparison into separate function Move the address comparator out of cifs_find_tcp_session and into a separate function for cleanliness. Also change the argument to that function to a "struct sockaddr" pointer. Passing pointers to sockaddr_storage is a little odd since that struct is generally for declaring static storage. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 50d971602a6c4bf1abe1f3873686f431d7539dfe Author: Jeff Layton Date: Tue Jul 6 20:43:01 2010 -0400 cifs: set the port in sockaddr in a more clearly defined fashion This patch should replace the patch I sent a couple of weeks ago to set the port in cifs_convert_address. Currently we set this in cifs_find_tcp_session, but that's more of a side effect than anything. Add a new function called cifs_fill_sockaddr. Have it call cifs_convert_address and then set the port. This also allows us to skip passing in the port as a separate parm to cifs_find_tcp_session. Also, change cifs_convert_address take a struct sockaddr * rather than void * to make it clearer how this function should be called. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 488f1d2d6cc9d665c9f09e4b54f77052732e3058 Author: Suresh Jayaraman Date: Mon Jul 5 18:12:15 2010 +0530 cifs: define server-level cache index objects and register them Define server-level cache index objects (as managed by TCP_ServerInfo structs) and register then with FS-Cache. Each server object is created in the CIFS top-level index object and is itself an index into which superblock-level objects are inserted. The server objects are now keyed by {IPaddress,family,port} tuple. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit f579cf3cfd1e19ae5aab6929679d0c04bf1a6284 Author: Suresh Jayaraman Date: Mon Jul 5 18:11:50 2010 +0530 cifs: register CIFS for caching Define CIFS for FS-Cache and register for caching. Upon registration the top-level index object cookie will be stuck to the netfs definition by FS-Cache. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit c21dfb699f35b6b5508fb808bb0ca211a865f2c9 Author: Joe Perches Date: Mon Jul 12 13:50:14 2010 -0700 fs/cifs: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: Steve French commit 3feb41cff8264e32a4d23ed829c3ed5369035f51 Author: Suresh Jayaraman Date: Mon Jul 5 18:11:33 2010 +0530 cifs: add kernel config option for CIFS Client caching support Add a kernel config option to enable local caching for CIFS. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit c6332e237fb2ee54bc9c614291a006e4801e0f66 Author: Suresh Jayaraman Date: Tue Jul 6 17:59:46 2010 +0530 cifs: remove unused ip_address field in struct TCP_Server_Info The ip_address field is not used and seems redundant as there is union addr already and I don't see any future use as well. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit e4317ceca2bdf4bf91112a21e60f73b4c5a1a5da Author: Suresh Jayaraman Date: Tue Jul 6 18:00:10 2010 +0530 cifs: remove an potentially confusing, obsolete comment The recent commit 6ca9f3bae8b1854794dfa63cdd3b88b7dfe24c13 modified the code so that filp is full instantiated whenever the file is created and passed back. The below comment is no longer true, remove it. Cc: Jeff Layton Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit abd2e44dca2c5d65e047224c6ba4b4c8059f97f8 Author: Suresh Jayaraman Date: Tue Jun 22 20:52:50 2010 +0530 cifs: guard cifsglob.h against multiple inclusion Add conditional compile macros to guard the header file against multiple inclusion. Signed-off-by: Suresh Jayaraman Acked-by: Jeff Layton Signed-off-by: Steve French commit 2c01946c6b9ebaa5a89710bc42ca224a7f52f227 Author: Sukumar Ghorai Date: Fri Jul 9 09:14:45 2010 +0000 omap3 nand: cleanup virtual address usages This patch removes direct reference of gpmc address from generic nand platform code. Nand platform code now uses wrapper functions which are implemented in gpmc module. Signed-off-by: Sukumar Ghorai Signed-off-by: Tony Lindgren commit 948d38e799f0ab87cf8ed9113fcdaaee61acf321 Author: Sukumar Ghorai Date: Fri Jul 9 09:14:44 2010 +0000 omap3 gpmc: functionality enhancement few functions added in gpmc module and to be used by other drivers like NAND. Signed-off-by: Sukumar Ghorai Signed-off-by: Tony Lindgren commit 055a1b8c9927bc587f293020a54c6cd8e24dfac0 Merge: 8a6f7e1 f535dae Author: Tony Lindgren Date: Mon Aug 2 14:23:38 2010 +0300 Merge branch 'devel-misc' into omap-for-linus commit 8a6f7e14fc3b3ea911838c3f4ce137cb8a3d134a Author: Grazvydas Ignotas Date: Mon Aug 2 13:18:28 2010 +0300 omap: mux: fix multipath gpio handling OMAP3530 CBB package can have GPIO126 muxed on 2 pins: mmc1_dat4 and cam_strobe. This causes a problem with current multipath GPIO mux handling, which muxes both pins as GPIO126 and makes the GPIO unusable. Fix this by not muxing any pins if multipath GPIO is detected and just print a warning instead. It's up to board files to set correct mux using omap_mux_init_signal and pin name. Signed-off-by: Grazvydas Ignotas Signed-off-by: Tony Lindgren commit f535daed925c2d3c1db06b06a63c4955f2c51988 Author: Kan-Ru Chen Date: Mon Aug 2 14:21:41 2010 +0300 omap: Devkit8000: Use DIE id to initialize dm9000 MAC address The devkit8000 boards often come with empty EEPROM thus without valid ethernet MAC address. The DIE id to MAC formula is copied from u-boot. Signed-off-by: Kan-Ru Chen Signed-off-by: Tony Lindgren commit c46732bbf3477f319083161bfa2fba1fadae7a3e Author: Kan-Ru Chen Date: Mon Aug 2 14:21:41 2010 +0300 omap: Use omap_get_die_id() to get the DIE ids Signed-off-by: Kan-Ru Chen Signed-off-by: Tony Lindgren commit 2e130fc3d4fd5b38ee5d3c0a5c7f9fb85bce698e Author: Kan-Ru Chen Date: Mon Aug 2 14:21:41 2010 +0300 omap: Add new interface omap_get_die_id Allow DIE id to be get and used by others. Signed-off-by: Kan-Ru Chen Signed-off-by: Tony Lindgren commit ad0c63f1d623ea9d3e0c0521d5ce9cd522c4e1f0 Author: stanley.miao Date: Mon Aug 2 14:21:40 2010 +0300 OMAP3: AM3505/3517 do not have IO wakeup capability AM3505/3517 doesn't have IO wakeup capability, so we do not need to set the bit OMAP3430_EN_IO and the bit OMAP3430_EN_IO_CHAIN in the register PM_WKEN_WKUP when the system enters suspend state. Tested on AM3517EVM and OMAP3530EVM. Signed-off-by: Stanley.Miao Acked-by: Kevin Hilman Signed-off-by: Tony Lindgren commit 72a1179ed41e0fc6bd5eb58e02e8d230eba10e24 Author: Samu Onkalo Date: Mon Aug 2 14:21:40 2010 +0300 omap: dma: Support for prefetch in destination synchronizedtransfer Omap DMA controller can prefetch data in advance in case of destination synchronized data transfer. This may increase performance when target HW block doesn't have fifo. Data is waiting for transfer request in DMA fifo instead of read from memory. Signed-off-by: Samu Onkalo Signed-off-by: Tony Lindgren commit 5ebc0d526af51d84b3d6fbf27b69f8d44f277064 Author: Nishanth Menon Date: Mon Aug 2 14:21:40 2010 +0300 omap2/3: id: fix sparse warning omap24xx_check_revision, omap3_check_features, omap3_check_revision, omap4_check_revision, omap3_cpuinfo are not used elsewhere, it should be static Also fixes the following sparse warnings: arch/arm/mach-omap2/id.c:105:13: warning: symbol 'omap24xx_check_revision' was not declared. Should it be static? arch/arm/mach-omap2/id.c:167:13: warning: symbol 'omap3_check_features' was not declared. Should it be static? arch/arm/mach-omap2/id.c:189:13: warning: symbol 'omap3_check_revision' was not declared. Should it be static? arch/arm/mach-omap2/id.c:270:13: warning: symbol 'omap4_check_revision' was not declared. Should it be static? arch/arm/mach-omap2/id.c:300:13: warning: symbol 'omap3_cpuinfo' was not declared. Should it be static? Signed-off-by: Nishanth Menon Signed-off-by: Tony Lindgren commit a5ba7ae2a1b9d4ce0b2ad1cd902af88ac6f7ef33 Author: Steve Sakoman Date: Mon Aug 2 14:21:39 2010 +0300 omap: Overo: Fix support for second ethernet port The original patch got truncated when applied from patchwork.kernel.org as discussed at: http://www.mail-archive.com/linux-omap@vger.kernel.org/msg28953.html This patch supplies the missing chunks. Signed-off-by: Steve Sakoman [tony@atomide.com: added more info to the patch description] Signed-off-by: Tony Lindgren commit 25d6f63093ef5fa596318d7790e6d5029a711a75 Author: Tony Lindgren Date: Mon Aug 2 14:21:39 2010 +0300 omap2: Fix GPIO numbers and smc91x for 2430sdp Fix GPIO numbers and smc91x for 2430sdp. The earlier code had cut and paste errors from 3430sdp code. Also, 2430 has five GPIO banks for a total of 160 GPIO lines. Signed-off-by: Tony Lindgren commit 8b8fbd39e20b5db95f8f4b3bda4c9d3fcf8e3afc Author: Cory Maccarrone Date: Mon Aug 2 14:21:39 2010 +0300 omap1: omap7xx clocks, mux, serial fixes This change adds in the necessary clocks and mux pins for UART control on omap7xx devices. I also made a change in the serial code to only try and initialize two UARTs in omap_serial_init, as these devices don't have three. Signed-off-by: Cory Maccarrone Signed-off-by: Tony Lindgren commit 35ddf7c003f54fc9878a15384beb9a900d40319d Author: Tony Lindgren Date: Mon Aug 2 14:21:39 2010 +0300 omap: Add back UART MDR1 check into uncompress.h Recent DEBUG_LL and uncompress.h changes removed the check_port() as pointed out by Cory Maccarrone . This causes some boards to not boot, so add back the MDR1 register check. The MDR1 register tells the mode of omap uart. Based on an earlier patch by Cory Maccarrone . Tested-by: Cory Maccarrone Signed-off-by: Tony Lindgren commit 7d35b8d09fb0cb0a89c8c265a5bfb52c2867b1d5 Author: Santosh Shilimkar Date: Mon Aug 2 13:18:19 2010 +0300 omap4: hotplug: Add basic CPU hotplug support This patch adds cpu hotplug support for OMAP4430. Only CPU inactive state is supported as a low power state in the basic hot-plug support Signed-off-by: Rajendra Nayak Signed-off-by: Santosh Shilimkar Cc: Kevin Hilman Signed-off-by: Tony Lindgren commit 3f9eaf0984952f69cb2d0c1b0f99b95b74742094 Author: Santosh Shilimkar Date: Mon Aug 2 13:18:18 2010 +0300 omap4: Add smc API to read AuxCoreBoot0 register This patch adds a secure API to read AuxCoreBoot0 register to check the cpu boot status. It also moves the other smc APIs to common omap44xx-smc.S. This APIs should not be marked as __INIT because we need these to be present for CPU hotplug Signed-off-by: Santosh Shilimkar Signed-off-by: Tony Lindgren commit 5643aebbc088332e6722750c45bcd83f61af071e Author: Rajendra Nayak Date: Mon Aug 2 13:18:18 2010 +0300 omap4: suspend: Add basic system suspend support This patch adds support for basic suspend doing a CPUx wfi for OMAP4. All powerdomains are for now are kept programmed in ON state. Signed-off-by: Rajendra Nayak Signed-off-by: Santosh Shilimkar Cc: Kevin Hilman Signed-off-by: Tony Lindgren commit 0003450964357ec85eeeeda2e4bb8b06a6f82ad3 Author: Deepak K Date: Mon Aug 2 13:18:12 2010 +0300 omap2/3/4: serial: errata i202: fix for MDR1 access Errata i202 (OMAP3430 - 1.12, OMAP3630 - 1.6): UART module MDR1 register access can cause a dummy underrun condition which could result in a freeze in the case of IrDA communication or if used as UART, corrupted data. Workaround is as follows for everytime MDR1 register is changed: * setup all required UART registers * setup MDR1.MODE_SELECT bit field * Wait 5 L4 clk cycles + 5 UART functional clock cycles * Clear the Tx and RX fifo using FCR register Note: The following step is not done as I am assuming it is not needed due to reconfiguration being done and there is no halted operation perse. * Read if required, the RESUME register to resume halted operation Based on an earlier patch at: http://git.omapzoom.org/?p=kernel/omap.git;a=commitdiff;h=42d4a342c009bd9727c100abc8a4bc3063c22f0c Signed-off-by: Deepak K Signed-off-by: Nishanth Menon Signed-off-by: Tony Lindgren commit 5a927b36f56c2a937e67f0947f233f723660f690 Author: Nishanth Menon Date: Mon Aug 2 13:18:12 2010 +0300 omap2/3/4: serial: introduce errata handling introduce silicon specific quirks as a errata handling mechanism as a start UART_ERRATA_FIFO_FULL_ABORT is used to handle the override for fifo full condition for rx and tx. Signed-off-by: Nishanth Menon Signed-off-by: Tony Lindgren commit bfe6977ac7b96e5a6665546c0efd733cd290d0ca Author: Nishanth Menon Date: Mon Aug 2 13:18:12 2010 +0300 omap2/3/4: serial: kill dev_attr_sleep_timeout sparse warn Remove the following sparse warnings by declaring attr as static: arch/arm/mach-omap2/serial.c:627:1: warning: symbol 'dev_attr_sleep_timeout' was not declared. Should it be static? Signed-off-by: Nishanth Menon Signed-off-by: Tony Lindgren commit c54bae1f06075e49206e7c327b4213e8b5a9b5fb Author: Nishanth Menon Date: Mon Aug 2 13:18:11 2010 +0300 omap2/3/4: serial: remove initialization sparse warnings Initialization of pointer should be done with NULL. Removes sparse warnings: arch/arm/mach-omap2/serial.c:566:17: warning: Using plain integer as NULL pointer arch/arm/mach-omap2/serial.c:567:17: warning: Using plain integer as NULL pointer Signed-off-by: Nishanth Menon Signed-off-by: Tony Lindgren commit 5ade4ff593c8f91f7e1288c6bc9aff046b62e0d6 Author: Govindraj R Date: Mon Aug 2 13:18:11 2010 +0300 omap3: serial: Add context save and restore for mcr Adds context save/restore for mcr register as state of mcr register is lost after core off. Signed-off-by: Govindraj R Signed-off-by: Nishanth Menon Signed-off-by: Tony Lindgren commit b075f58b2c0f377b4bfbe11b817e003393bcb489 Author: David Anders Date: Mon Aug 2 13:18:05 2010 +0300 omap4: Add OMAP4 Panda Support Add initial support for the OMAP4 based Panda Board. Signed-off-by: David Anders [tony@atomide.com: selected board by default in Kconfig] Signed-off-by: Tony Lindgren commit 509b6d9314eaf227db63a6336d3682f00578c550 Author: Hemanth V Date: Mon Aug 2 13:18:04 2010 +0300 OMAP4: Add GPIO LED support for SDP board This patch adds support for GPIO LEDs present on OMAP4 SDP and Blaze boards. This basically adds platform data required by leds-gpio driver Signed-off-by: Hemanth V Signed-off-by: Tony Lindgren commit 83078f9bdcc3218e769849921ee67820ea125cf4 Author: Shubhrajyoti Datta Date: Mon Aug 2 13:18:04 2010 +0300 omap4: Board changes for 4430sdp tmp105 temperature sensor Adding board configuration for the tmp105 temperature sensor. The interface to the sensor is I2C. Signed-off-by: Shubhrajyoti D Signed-off-by: Tony Lindgren commit 5026391c2ade39cdce93f6d6817ae5782f63a702 Author: Santosh Shilimkar Date: Mon Aug 2 13:18:03 2010 +0300 omap4: mmc: Fix the regulator resource for MMC2 on 4430sdp The MMC1 and MMC2 cards have seperate LDO supplies. Current code assumes that they are powered by same LDO. This patch fixes the same and has VAUX1 as supply to MMC2 card. Signed-off-by: Rajendra Nayak Signed-off-by: Sukumar Ghorai Signed-off-by: Kishore Kadiyala Tested-by: Kishore Kadiyala Signed-off-by: Santosh Shilimkar Signed-off-by: Tony Lindgren commit 70b5d7377ec8640d5e5ff8c70da218fc20bef0c2 Author: Mathias Nyman Date: Mon Aug 2 13:18:03 2010 +0300 omap: tsl2563 ALS support for Nokia N900 This commit will enable usage of tsl2563 ambient light sensor on Nokia N900. Signed-off-by: Ameya Palande Signed-off-by: Mathias Nyman Signed-off-by: Tony Lindgren commit 64d066918272db2a851e4884e38f264fd6b3c07b Author: Jarkko Nikula Date: Mon Aug 2 13:18:03 2010 +0300 omap: rx51: Add supply and data for the tpa6130a2 headphoneamplifier With these and upcoming change to tpa6130a2 driver it's possible to add support for the TPA6130A2 headphone amplifier. Signed-off-by: Jarkko Nikula Signed-off-by: Tony Lindgren commit 5c7d9bbec6415a00860e4ee482a794c940ba8733 Author: Jarkko Nikula Date: Mon Aug 2 13:18:02 2010 +0300 omap: rx51: Use REGULATOR_SUPPLY macro when initializingregulator consumers There is REGULATOR_SUPPLY macro available for initializing the struct regulator_consumer_supply so use it where applicable (all other supplies than vdds_sdi) as it improves the readability. Signed-off-by: Jarkko Nikula Acked-by: Eduardo Valentin Signed-off-by: Tony Lindgren commit 87581fd4a9c038dc18684b9336f2c59eee1710cc Author: Jarkko Nikula Date: Mon Aug 2 13:18:02 2010 +0300 omap: rx51: Add platform_data for tlv320aic3x with reset gpionumber Proper operation of the tlv320aic3x audio codec requires that reset sequencing is done in pair with supply voltages when using the regulator framework. Add the codec reset gpio used in Nokia RX51 to tlv320aic3x data. Signed-off-by: Jarkko Nikula Signed-off-by: Tony Lindgren commit 000d534ed7adf976652921f0bdd1dae14484bce8 Author: Jarkko Nikula Date: Mon Aug 2 13:18:02 2010 +0300 omap: rx51: Set regulator V28 always on It seems that the battery cover sensor in Nokia N900 is powered from the V28 domain. Now if this regulator is disabled it causes that the gpio 160 reads only zero which effectively causes uSD removal detection. Currently the bootloader enabled V28 is kept on but this may change in the future according to comment in drivers/regulator/core.c: regulator_has_full_constraints. Also if there are any consumers on the V28 domain doing regulator_enable regulator_disable cycle the V28 will be disabled after that. Prepare for these by defining the V28 as always_on regulator. Signed-off-by: Jarkko Nikula Cc: Adrian Hunter Signed-off-by: Tony Lindgren commit 79ccf549b33c613b57eebcb03f8b24644c545a88 Author: Grazvydas Ignotas Date: Mon Aug 2 13:18:01 2010 +0300 omap3: pandora: add NAND and wifi support Add platform data for NAND and wifi, also setup all GPIOs needed to use the wifi chip. Signed-off-by: Grazvydas Ignotas Signed-off-by: Tony Lindgren commit ad74db60418fcb5946529816b54b6f3ceeff3d6d Author: Grazvydas Ignotas Date: Mon Aug 2 13:18:01 2010 +0300 omap3: pandora: update gpio-keys data Update gpio-keys setup so it matches what is on default firmware. Also make use of debounce feature in gpio-keys instead of setting it explicitly, as gpio-keys is now capable of using hardware debounce on OMAPs thanks to recent gpiolib changes. Also fix a sparce warning along the way. Signed-off-by: Grazvydas Ignotas Signed-off-by: Tony Lindgren commit c3777c19d26cbd5a3e48c63602ac1a527c3175db Author: Ohad Ben-Cohen Date: Mon Aug 2 13:18:00 2010 +0300 omap: zoom3: wlan board muxing Add board muxing to support the wlan wl1271 chip that is hardwired to mmc2 (third mmc controller) on the ZOOM3. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Tony Lindgren commit 7b2308cfc92f1de95ef942fa8c3faf72dc2476f9 Author: Ohad Ben-Cohen Date: Mon Aug 2 13:18:00 2010 +0300 omap: zoom2: wlan board muxing Add board muxing to support the wlan wl1271 chip that is hardwired to mmc2 (third mmc controller) on the ZOOM2. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Tony Lindgren commit 988b0dc1547f9f6a7c8cae472cad0a55df31818c Merge: 3bc2807 998a8a6 Author: Takashi Iwai Date: Mon Aug 2 12:10:52 2010 +0200 Merge branch 'for-2.6.36' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc commit 998a8a69f3a40f9c82e83730bfdaceb63954d753 Author: Peter Ujfalusi Date: Thu Jul 29 09:51:28 2010 +0300 ASoC: omap-mcbsp: Remove period size constraint in THRESHOLD mode The use of sDMA packet mode in THRESHOLD mode removes the restriction on the period size. With the extended THRESHOLD mode user space can ask for any period size it wishes, and the driver will configure the sDMA and McBSP FIFO accordingly. Replace the hw_rule for the period size with static constraint, which will make sure that the period size will be always even (to avoid prime period size, which could be possible in mono stream) Signed-off-by: Peter Ujfalusi Acked-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit cf80e15860852be5ce38714979db94ec36c5e288 Author: Peter Ujfalusi Date: Thu Jul 29 09:51:27 2010 +0300 ASoC: omap-mcbsp: Support for sDMA packet mode Utilize the sDMA controller's packet syncronization mode, when the McBSP FIFO is in use (by extending the THRESHOLD mode). When the sDMA is configured for packet mode, the sDMA frame size does not need to match with the McBSP threshold configuration. Uppon DMA request the sDMA will transfer packet size number of words, and still trigger interrupt on frame boundary. The patch extends the original THRESHOLD mode by doing the following: if (period_words <= max_threshold) Current THRESHOLD mode configuration Otherwise (period_words > max_threshold) McBSP threshold = sDMA packet size sDMA frame size = period size With the extended THRESHOLD mode we can remove the constraint for the maximum period size, since if the period size is bigger than the maximum allowed threshold, than the driver will switch to packet mode, and picks the best (biggest) threshold value, which can divide evenly the period size. Signed-off-by: Peter Ujfalusi Acked-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 15d0143007b68079aec02918d890c26ed4eaf3b9 Author: Peter Ujfalusi Date: Thu Jul 29 09:51:25 2010 +0300 ASoC: omap-mcbsp: Code cleanup in omap_mcbsp_dai_hw_params To make the code a bit more readable, change the indexed references to the omap_mcbsp_dai_dma_params elements with pointer. Signed-off-by: Peter Ujfalusi Acked-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 81ec027e64f459f06ff20d8871f2867cff4a5e85 Author: Peter Ujfalusi Date: Thu Jul 29 09:51:26 2010 +0300 ASoC: omap-mcbsp: Restructure the code within omap_mcbsp_dai_hw_params In preparation for the extended threshold mode (sDMA packet mode support), the code need to be restructured. Signed-off-by: Peter Ujfalusi Acked-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 0809f6ec18bbce54c996f5c36f4b9d371075c98b Author: Steven Whitehouse Date: Mon Aug 2 10:15:17 2010 +0100 GFS2: Fix recovery stuck bug (try #2) This is a clean up of the code which deals with LM_FLAG_NOEXP which aims to remove any possible race conditions by using gl_spin to cover the gap between testing for the LM_FLAG_NOEXP and the GL_FROZEN flag. Signed-off-by: Steven Whitehouse commit af58ed854bf7d233988ae037e19f5d89335e0ecc Author: Michal Simek Date: Fri Jun 4 12:57:06 2010 +0200 microblaze: Fix comment for TLB There is wrong comment for TLB. Early printk uartlite console uses TLB 63. Signed-off-by: Michal Simek commit 8d7ec6ee59e78140bf01c7d0d009ea39ab6b3b59 Author: Michal Simek Date: Thu May 20 10:56:29 2010 +0200 microblaze: Fix __copy_to/from_user_inatomic macros __copy_to/from_user_inatomic should call __copy_to/from_user because there is not necessary to check access because of kernel function. might_sleep in copy_to/from_user macros is causing problems in debug sessions too (CONFIG_DEBUG_SPINLOCK_SLEEP). BUG: sleeping function called from invalid context at .../arch/microblaze/include/asm/uaccess.h:388 in_atomic(): 1, irqs_disabled(): 0, pid: 1, name: swapper 1 lock held by swapper/1: #0: (&p->cred_guard_mutex){......}, at: [] prepare_bprm_creds+0x2c/0x88 Kernel Stack: ... Call Trace: [] microblaze_unwind+0x7c/0x94 [] show_stack+0xf4/0x190 [] dump_stack+0x10/0x30 [] __might_sleep+0x12c/0x160 [] file_read_actor+0x1d8/0x2a8 [] generic_file_aio_read+0x6b4/0xa64 [] do_sync_read+0xac/0x110 [] vfs_read+0xc8/0x160 [] kernel_read+0x38/0x64 [] prepare_binprm+0xfc/0x130 [] do_execve+0x228/0x370 [] microblaze_execve+0x58/0xa4 caused by file_read_actor (mm/filemap.c) which calls __copy_to_user_inatomic. Signed-off-by: Michal Simek commit e78483c5aeb0d7fbb0e365802145f1045e62957e Merge: 9fe6206 b20d02e 2080222 Author: Stefan Richter Date: Mon Aug 2 09:33:25 2010 +0200 Merge firewire branches to be released post v2.6.35 Conflicts: drivers/firewire/core-card.c drivers/firewire/core-cdev.c and forgotten #include in drivers/firewire/ohci.c Signed-off-by: Stefan Richter commit dd2f8c2f811b14f97a572edb0da4cfe776e20052 Author: John S Gruber Date: Sun Aug 1 09:53:37 2010 -0400 ALSA: usb - Correct audio problem for Hauppage HVR-850 and others rel. to urb data align Match usb ids in usb/quirks-table.h for some Hauppage HVR-950Q models and for the HVR850 model to those ids at the end of au0828-cards.c Thanks to nhJm449 for pointing out the problem. Signed-off-by: John S Gruber Signed-off-by: Takashi Iwai commit 20802224298ce9dfd99a7e26b675fc0c8ae26cac Author: Stefan Richter Date: Sun Aug 1 12:23:14 2010 +0200 firewire: core: add forgotten dummy driver methods, remove unused ones There is an at least theoretic race condition in which .start_iso etc. could still be called between when the dummy driver is bound to the card and when the children devices are being shut down. Add dummy_start_iso and friends. On the other hand, .enable, .set_config_rom, .read_csr, write_csr do not need to be implemented by the dummy driver, as commented. Signed-off-by: Stefan Richter commit 3772b734720e1a3f2dc1d95cfdfaa5332f4ccf01 Merge: 9fc3af4 9fe6206 Author: Ingo Molnar Date: Mon Aug 2 08:29:56 2010 +0200 Merge commit 'v2.6.35' into perf/core Conflicts: tools/perf/Makefile tools/perf/util/hist.c Merge reason: Resolve the conflicts and update to latest upstream. Signed-off-by: Ingo Molnar commit 9fc3af467d0749989518a23f7289a6f44e5cb214 Merge: d65a458 cc05152 Author: Ingo Molnar Date: Mon Aug 2 08:28:08 2010 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core commit 77c80e6b2fd049848bfd1bdab67899ad3ac407a7 Author: James Morris Date: Mon Aug 2 15:49:00 2010 +1000 AppArmor: fix build warnings for non-const use of get_task_cred Fix build warnings for non-const use of get_task_cred. Signed-off-by: James Morris commit 6371dcd36f649d9d07823f31400618155a20dde1 Author: Eric Paris Date: Thu Jul 29 23:02:34 2010 -0400 selinux: convert the policy type_attr_map to flex_array Current selinux policy can have over 3000 types. The type_attr_map in policy is an array sized by the number of types times sizeof(struct ebitmap) (12 on x86_64). Basic math tells us the array is going to be of length 3000 x 12 = 36,000 bytes. The largest 'safe' allocation on a long running system is 16k. Most of the time a 32k allocation will work. But on long running systems a 64k allocation (what we need) can fail quite regularly. In order to deal with this I am converting the type_attr_map to use flex_arrays. Let the library code deal with breaking this into PAGE_SIZE pieces. -v2 rework some of the if(!obj) BUG() to be BUG_ON(!obj) drop flex_array_put() calls and just use a _get() object directly -v3 make apply to James' tree (drop the policydb_write changes) Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 016d825fe02cd20fd8803ca37a1e6d428fe878f6 Author: John Johansen Date: Fri Jul 30 13:46:33 2010 +1000 AppArmor: Enable configuring and building of the AppArmor security module Kconfig and Makefiles to enable configuration and building of AppArmor. Signed-off-by: John Johansen Signed-off-by: James Morris commit 484ca79c653121d3c79fffb86e1deea724f2e20b Author: Tetsuo Handa Date: Thu Jul 29 14:29:55 2010 +0900 TOMOYO: Use pathname specified by policy rather than execve() Commit c9e69318 "TOMOYO: Allow wildcard for execute permission." changed execute permission and domainname to accept wildcards. But tomoyo_find_next_domain() was using pathname passed to execve() rather than pathname specified by the execute permission. As a result, processes were not able to transit to domains which contain wildcards in their domainnames. This patch passes pathname specified by the execute permission back to tomoyo_find_next_domain() so that processes can transit to domains which contain wildcards in their domainnames. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 4d6ec10bb4461fdc9a9ab94ef32934e13564e873 Author: James Morris Date: Fri Jul 30 09:02:04 2010 +1000 AppArmor: update path_truncate method to latest version Remove extraneous path_truncate arguments from the AppArmor hook, as they've been removed from the LSM API. Signed-off-by: James Morris commit c88d4c7b049e87998ac0a9f455aa545cc895ef92 Author: John Johansen Date: Thu Jul 29 14:48:00 2010 -0700 AppArmor: core policy routines The basic routines and defines for AppArmor policy. AppArmor policy is defined by a few basic components. profiles - the basic unit of confinement contain all the information to enforce policy on a task Profiles tend to be named after an executable that they will attach to but this is not required. namespaces - a container for a set of profiles that will be used during attachment and transitions between profiles. sids - which provide a unique id for each profile Signed-off-by: John Johansen Signed-off-by: James Morris commit 736ec752d95e91e77cc0e8c97c057ab076ac2f51 Author: John Johansen Date: Thu Jul 29 14:48:02 2010 -0700 AppArmor: policy routines for loading and unpacking policy AppArmor policy is loaded in a platform independent flattened binary stream. Verify and unpack the data converting it to the internal format needed for enforcement. Signed-off-by: John Johansen Signed-off-by: James Morris commit 0ed3b28ab8bf460a3a026f3f1782bf4c53840184 Author: John Johansen Date: Thu Jul 29 14:48:05 2010 -0700 AppArmor: mediation of non file objects ipc: AppArmor ipc is currently limited to mediation done by file mediation and basic ptrace tests. Improved mediation is a wip. rlimits: AppArmor provides basic abilities to set and control rlimits at a per profile level. Only resources specified in a profile are controled or set. AppArmor rules set the hard limit to a value <= to the current hard limit (ie. they can not currently raise hard limits), and if necessary will lower the soft limit to the new hard limit value. AppArmor does not track resource limits to reset them when a profile is left so that children processes inherit the limits set by the parent even if they are not confined by the same profile. Capabilities: AppArmor provides a per profile mask of capabilities, that will further restrict. Signed-off-by: John Johansen Signed-off-by: James Morris commit b5e95b48685e3481139a5634d14d630d12c7d5ce Author: John Johansen Date: Thu Jul 29 14:48:07 2010 -0700 AppArmor: LSM interface, and security module initialization AppArmor hooks to interface with the LSM, module parameters and module initialization. Signed-off-by: John Johansen Signed-off-by: James Morris commit f9ad1af53d5232a89a1ff1827102843999975dfa Author: John Johansen Date: Thu Jul 29 14:48:08 2010 -0700 AppArmor: Enable configuring and building of the AppArmor security module Kconfig and Makefiles to enable configuration and building of AppArmor. Signed-off-by: John Johansen Signed-off-by: James Morris commit c1c124e91e7c6d5a600c98f6fb5b443c403a14f4 Author: John Johansen Date: Thu Jul 29 14:48:09 2010 -0700 AppArmor: update Maintainer and Documentation Signed-off-by: John Johansen Signed-off-by: James Morris commit 898127c34ec03291c86f4ff3856d79e9e18952bc Author: John Johansen Date: Thu Jul 29 14:48:06 2010 -0700 AppArmor: functions for domain transitions AppArmor routines for controling domain transitions, which can occur at exec or through self directed change_profile/change_hat calls. Unconfined tasks are checked at exec against the profiles in the confining profile namespace to determine if a profile should be attached to the task. Confined tasks execs are controlled by the profile which provides rules determining which execs are allowed and if so which profiles should be transitioned to. Self directed domain transitions allow a task to request transition to a given profile. If the transition is allowed then the profile will be applied, either immeditately or at exec time depending on the request. Immeditate self directed transitions have several security limitations but have uses in setting up stub transition profiles and other limited cases. Signed-off-by: John Johansen Signed-off-by: James Morris commit 6380bd8ddf613b29f478396308b591867d401de4 Author: John Johansen Date: Thu Jul 29 14:48:04 2010 -0700 AppArmor: file enforcement routines AppArmor does files enforcement via pathname matching. Matching is done at file open using a dfa match engine. Permission is against the final file object not parent directories, ie. the traversal of directories as part of the file match is implicitly allowed. In the case of nonexistant files (creation) permissions are checked against the target file not the directory. eg. In case of creating the file /dir/new, permissions are checked against the match /dir/new not against /dir/. The permissions for matches are currently stored in the dfa accept table, but this will change to allow for dfa reuse and also to allow for sharing of wider accept states. Signed-off-by: John Johansen Signed-off-by: James Morris commit 63e2b423771ab0bc7ad4d407f3f6517c6d05cdc0 Author: John Johansen Date: Thu Jul 29 14:48:03 2010 -0700 AppArmor: userspace interfaces The /proc//attr/* interface is used for process introspection and commands. While the apparmorfs interface is used for global introspection and loading and removing policy. The interface currently only contains the files necessary for loading policy, and will be extended in the future to include sysfs style single per file introspection inteface. The old AppArmor 2.4 interface files have been removed into a compatibility patch, that distros can use to maintain backwards compatibility. Signed-off-by: John Johansen Signed-off-by: James Morris commit e06f75a6a2b43bd3a7a197bd21466f9da130e4af Author: John Johansen Date: Thu Jul 29 14:48:01 2010 -0700 AppArmor: dfa match engine A basic dfa matching engine based off the dfa engine in the Dragon Book. It uses simple row comb compression with a check field. This allows AppArmor to do pattern matching in linear time, and also avoids stack issues that an nfa based engine may have. The dfa engine uses a byte based comparison, with all values being valid. Any potential character encoding are handled user side when the dfa tables are created. By convention AppArmor uses \0 to separate two dependent path matches since \0 is not a valid path character (this is done in the link permission check). The dfa tables are generated in user space and are verified at load time to be internally consistent. There are several future improvements planned for the dfa engine: * The dfa engine may be converted to a hybrid nfa-dfa engine, with a fixed size limited stack. This would allow for size time tradeoffs, by inserting limited nfa states to help control state explosion that can occur with dfas. * The dfa engine may pickup the ability to do limited dynamic variable matching, instead of fixing all variables at policy load time. Signed-off-by: John Johansen Signed-off-by: James Morris commit c75afcd153f6147d3b094f45a1d87e5df7f4f053 Author: John Johansen Date: Thu Jul 29 14:47:59 2010 -0700 AppArmor: contexts used in attaching policy to system objects AppArmor contexts attach profiles and state to tasks, files, etc. when a direct profile reference is not sufficient. Signed-off-by: John Johansen Signed-off-by: James Morris commit 67012e8209df95a8290d135753ff5145431a666e Author: John Johansen Date: Thu Jul 29 14:47:58 2010 -0700 AppArmor: basic auditing infrastructure. Update lsm_audit for AppArmor specific data, and add the core routines for AppArmor uses for auditing. Signed-off-by: John Johansen Signed-off-by: James Morris commit cdff264264254e0fabc8107a33f3bb75a95e981f Author: John Johansen Date: Thu Jul 29 14:47:57 2010 -0700 AppArmor: misc. base functions and defines Miscellaneous functions and defines needed by AppArmor, including the base path resolution routines. Signed-off-by: John Johansen Signed-off-by: James Morris commit e6f6a4cc955d626ed26562d98de5766bf1f73526 Author: Tetsuo Handa Date: Tue Jul 27 17:17:06 2010 +0900 TOMOYO: Update version to 2.3.0 Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 7e3d199a4009a4094a955282daf5ecd43f2c8152 Author: Tetsuo Handa Date: Tue Jul 27 10:08:29 2010 +0900 TOMOYO: Fix quota check. Commit d74725b9 "TOMOYO: Use callback for updating entries." broke tomoyo_domain_quota_is_ok() by counting deleted entries. It needs to count non-deleted entries. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit b424485abe2b16580a178b469917a7b6ee0c152a Author: Eric Paris Date: Fri Jul 23 11:44:15 2010 -0400 SELinux: Move execmod to the common perms execmod "could" show up on non regular files and non chr files. The current implementation would actually make these checks against non-existant bits since the code assumes the execmod permission is same for all file types. To make this line up for chr files we had to define execute_no_trans and entrypoint permissions. These permissions are unreachable and only existed to to make FILE__EXECMOD and CHR_FILE__EXECMOD the same. This patch drops those needless perms as well. Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 49b7b8de46d293113a0a0bb026ff7bd833c73367 Author: Eric Paris Date: Fri Jul 23 11:44:09 2010 -0400 selinux: place open in the common file perms kernel can dynamically remap perms. Drop the open lookup table and put open in the common file perms. Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit b782e0a68d17894d9a618ffea55b33639faa6bb4 Author: Eric Paris Date: Fri Jul 23 11:44:03 2010 -0400 SELinux: special dontaudit for access checks Currently there are a number of applications (nautilus being the main one) which calls access() on files in order to determine how they should be displayed. It is normal and expected that nautilus will want to see if files are executable or if they are really read/write-able. access() should return the real permission. SELinux policy checks are done in access() and can result in lots of AVC denials as policy denies RWX on files which DAC allows. Currently SELinux must dontaudit actual attempts to read/write/execute a file in order to silence these messages (and not flood the logs.) But dontaudit rules like that can hide real attacks. This patch addes a new common file permission audit_access. This permission is special in that it is meaningless and should never show up in an allow rule. Instead the only place this permission has meaning is in a dontaudit rule like so: dontaudit nautilus_t sbin_t:file audit_access With such a rule if nautilus just checks access() we will still get denied and thus userspace will still get the correct answer but we will not log the denial. If nautilus attempted to actually perform one of the forbidden actions (rather than just querying access(2) about it) we would still log a denial. This type of dontaudit rule should be used sparingly, as it could be a method for an attacker to probe the system permissions without detection. Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit d09ca73979460b96d5d4684d588b188be9a1f57d Author: Eric Paris Date: Fri Jul 23 11:43:57 2010 -0400 security: make LSMs explicitly mask off permissions SELinux needs to pass the MAY_ACCESS flag so it can handle auditting correctly. Presently the masking of MAY_* flags is done in the VFS. In order to allow LSMs to decide what flags they care about and what flags they don't just pass them all and the each LSM mask off what they don't need. This patch should contain no functional changes to either the VFS or any LSM. Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 9cfcac810e8993fa7a5bfd24b1a21f1dbbb03a7b Author: Eric Paris Date: Fri Jul 23 11:43:51 2010 -0400 vfs: re-introduce MAY_CHDIR Currently MAY_ACCESS means that filesystems must check the permissions right then and not rely on cached results or the results of future operations on the object. This can be because of a call to sys_access() or because of a call to chdir() which needs to check search without relying on any future operations inside that dir. I plan to use MAY_ACCESS for other purposes in the security system, so I split the MAY_ACCESS and the MAY_CHDIR cases. Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 692a8a231b212dfc68f612956d63f34abf098e0f Author: Eric Paris Date: Wed Jul 21 12:51:03 2010 -0400 SELinux: break ocontext reading into a separate function Move the reading of ocontext type data out of policydb_read() in a separate function ocontext_read() Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit d1b43547e56b163bc5c622243c47d8a13626175b Author: Eric Paris Date: Wed Jul 21 12:50:57 2010 -0400 SELinux: move genfs read to a separate function move genfs read functionality out of policydb_read() and into a new function called genfs_read() Signed-off-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 9a7982793c3aee6ce86d8e7e15306215257329f2 Author: Dan Carpenter Date: Sat Jun 12 20:57:39 2010 +0200 selinux: fix error codes in symtab_init() hashtab_create() only returns NULL on allocation failures to -ENOMEM is appropriate here. Signed-off-by: Dan Carpenter Acked-by: Eric Paris Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 338437f6a09861cdf76e1396ed5fa6dee9c7cabe Author: Dan Carpenter Date: Sat Jun 12 20:56:01 2010 +0200 selinux: fix error codes in cond_read_bool() The original code always returned -1 (-EPERM) on error. The new code returns either -ENOMEM, or -EINVAL or it propagates the error codes from lower level functions next_entry() or hashtab_insert(). next_entry() returns -EINVAL. hashtab_insert() returns -EINVAL, -EEXIST, or -ENOMEM. Signed-off-by: Dan Carpenter Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 38184c522249dc377366d4edc41dc500c2c3bb9e Author: Dan Carpenter Date: Sat Jun 12 20:55:01 2010 +0200 selinux: fix error codes in cond_policydb_init() It's better to propagate the error code from avtab_init() instead of returning -1 (-EPERM). It turns out that avtab_init() never fails so this patch doesn't change how the code runs but it's still a clean up. Signed-off-by: Dan Carpenter Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit fc5c126e4733e6fb3080d3d822ca63226e74fc84 Author: Dan Carpenter Date: Sat Jun 12 20:53:46 2010 +0200 selinux: fix error codes in cond_read_node() Originally cond_read_node() returned -1 (-EPERM) on errors which was incorrect. Now it either propagates the error codes from lower level functions next_entry() or cond_read_av_list() or it returns -ENOMEM or -EINVAL. next_entry() returns -EINVAL. cond_read_av_list() returns -EINVAL or -ENOMEM. Signed-off-by: Dan Carpenter Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 9d623b17a740d5a85c12108cdc71c64fb15484fc Author: Dan Carpenter Date: Sat Jun 12 20:52:19 2010 +0200 selinux: fix error codes in cond_read_av_list() After this patch cond_read_av_list() no longer returns -1 for any errors. It just propagates error code back from lower levels. Those can either be -EINVAL or -ENOMEM. I also modified cond_insertf() since cond_read_av_list() passes that as a function pointer to avtab_read_item(). It isn't used anywhere else. Signed-off-by: Dan Carpenter Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 5241c1074f6e2f2276d45d857eb5d19fbdc2e4b2 Author: Dan Carpenter Date: Sat Jun 12 20:51:40 2010 +0200 selinux: propagate error codes in cond_read_list() These are passed back when the security module gets loaded. The original code always returned -1 (-EPERM) on error but after this patch it can return -EINVAL, or -ENOMEM or propagate the error code from cond_read_node(). cond_read_node() still returns -1 all the time, but I fix that in a later patch. Signed-off-by: Dan Carpenter Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit 9e0bd4cba4460bff64fb07cfb07849cdfd4d325a Author: Dan Carpenter Date: Sat Jun 12 20:50:35 2010 +0200 selinux: cleanup return codes in avtab_read_item() The avtab_read_item() function tends to return -1 as a default error code which is wrong (-1 means -EPERM). I modified it to return appropriate error codes which is -EINVAL or the error code from next_entry() or insertf(). next_entry() returns -EINVAL. insertf() is a function pointer to either avtab_insert() or cond_insertf(). avtab_insert() returns -EINVAL, -ENOMEM, and -EEXIST. cond_insertf() currently returns -1, but I will fix it in a later patch. There is code in avtab_read() which translates the -1 returns from avtab_read_item() to -EINVAL. The translation is no longer needed, so I removed it. Signed-off-by: Dan Carpenter Acked-by: Stephen D. Smalley Signed-off-by: James Morris commit dce3a3d2ee038d230323fe06b061dbaace6b8f94 Author: Chihau Chau Date: Fri Jul 16 12:11:54 2010 -0400 Security: capability: code style issue This fix a little code style issue deleting a space between a function name and a open parenthesis. Signed-off-by: Chihau Chau Acked-by: Andrew G. Morgan Signed-off-by: James Morris commit b8bc83ab4dcbc9938b95a90bbb50d89d1904d5ab Author: Tvrtko Ursulin Date: Thu Jul 15 13:25:06 2010 +0100 securityfs: Drop dentry reference count when mknod fails lookup_one_len increments dentry reference count which is not decremented when the create operation fails. This can cause a kernel BUG at fs/dcache.c:676 at unmount time. Also error code returned when new_inode() fails was replaced with more appropriate -ENOMEM. Signed-off-by: Tvrtko Ursulin Acked-by: Serge E. Hallyn Acked-by: Greg Kroah-Hartman Signed-off-by: James Morris commit 57a62c2317d60b21b7761c319a733a894482a6af Author: Arnd Bergmann Date: Wed Jul 7 23:40:10 2010 +0200 selinux: use generic_file_llseek The default for llseek will change to no_llseek, so selinuxfs needs to add explicit .llseek assignments. Since we're dealing with regular files from a VFS perspective, use generic_file_llseek. Signed-off-by: Arnd Bergmann Cc: Stephen Smalley Cc: Eric Paris Signed-off-by: James Morris commit cdcd90f9e450d4edb5fab0490119f9540874e882 Author: Arnd Bergmann Date: Wed Jul 7 23:40:15 2010 +0200 ima: use generic_file_llseek for securityfs The default for llseek will change to no_llseek, so securityfs users need to add explicit .llseek assignments. Since we're dealing with regular files from a VFS perspective, use generic_file_llseek. Signed-off-by: Arnd Bergmann Cc: Mimi Zohar Signed-off-by: James Morris commit 7e2deb7ce8f662bce877dbfd3b0053e9559c25a3 Author: Tetsuo Handa Date: Thu Jul 8 21:57:41 2010 +0900 TOMOYO: Explicitly set file_operations->llseek pointer. TOMOYO does not deal offset pointer. Thus seek operation makes no sense. Changing default seek operation from default_llseek() to no_llseek() might break some applications. Thus, explicitly set noop_llseek(). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit af4f136056c984b0aa67feed7d3170b958370b2f Author: Mimi Zohar Date: Thu Jul 1 15:07:43 2010 -0400 security: move LSM xattrnames to xattr.h Make the security extended attributes names global. Updated to move the remaining Smack xattrs. Signed-off-by: Mimi Zohar Acked-by: Serge Hallyn Signed-off-by: James Morris commit 5ad18a0d59ba9e65b3c8b2b489fd23bc6b3daf94 Author: Justin P. Mattock Date: Wed Jun 30 10:39:11 2010 +0100 KEYS: Reinstate lost passing of process keyring ID in call_sbin_request_key() In commit bb952bb98a7e479262c7eb25d5592545a3af147d there was the accidental deletion of a statement from call_sbin_request_key() to render the process keyring ID to a text string so that it can be passed to /sbin/request-key. With gcc 4.6.0 this causes the following warning: CC security/keys/request_key.o security/keys/request_key.c: In function 'call_sbin_request_key': security/keys/request_key.c:102:15: warning: variable 'prkey' set but not used This patch reinstates that statement. Without this statement, /sbin/request-key will get some random rubbish from the stack as that parameter. Signed-off-by: Justin P. Mattock Signed-off-by: David Howells Signed-off-by: James Morris commit 94fd8405ea62bd2d4a40f3013e8e6935b6643235 Author: David Howells Date: Mon Jun 28 14:05:04 2010 +0100 KEYS: Use the variable 'key' in keyctl_describe_key() keyctl_describe_key() turns the key reference it gets into a usable key pointer and assigns that to a variable called 'key', which it then ignores in favour of recomputing the key pointer each time it needs it. Make it use the precomputed pointer instead. Without this patch, gcc 4.6 reports that the variable key is set but not used: building with gcc 4.6 I'm getting a warning message: CC security/keys/keyctl.o security/keys/keyctl.c: In function 'keyctl_describe_key': security/keys/keyctl.c:472:14: warning: variable 'key' set but not used Reported-by: Justin P. Mattock Signed-off-by: David Howells Signed-off-by: James Morris commit 0849e3ba53c3ef603dffa9758a73e07ed186a937 Author: Tetsuo Handa Date: Fri Jun 25 12:22:09 2010 +0900 TOMOYO: Add missing poll() hook. Commit 1dae08c "TOMOYO: Add interactive enforcing mode." forgot to register poll() hook. As a result, /usr/sbin/tomoyo-queryd was doing busy loop. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit e2bf69077acefee5247bb661faac2552d29ba7ba Author: Tetsuo Handa Date: Fri Jun 25 11:16:00 2010 +0900 TOMOYO: Rename symbols. Use shorter name in order to make it easier to fit 80 columns limit. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 8e5686874bcb882f69d5c04e6b38dc92b97facea Author: Tetsuo Handa Date: Fri Jun 25 09:30:09 2010 +0900 TOMOYO: Small cleanup. Split tomoyo_write_profile() into several functions. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit f23571e866309a2048030ef6a5f0725cf139d4c9 Author: Tetsuo Handa Date: Thu Jun 24 14:57:16 2010 +0900 TOMOYO: Copy directly to userspace buffer. When userspace program reads policy from /sys/kernel/security/tomoyo/ interface, TOMOYO uses line buffered mode. A line has at least one word. Commit 006dacc "TOMOYO: Support longer pathname." changed a word's max length from 4000 bytes to max kmalloc()able bytes. By that commit, a line's max length changed from 8192 bytes to more than max kmalloc()able bytes. Max number of words in a line remains finite. This patch changes the way of buffering so that all words in a line are firstly directly copied to userspace buffer as much as possible and are secondly queued for next read request. Words queued are guaranteed to be valid until /sys/kernel/security/tomoyo/ interface is close()d. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 5db5a39b6462c8360c9178b28f4b07c320dfca1c Author: Tetsuo Handa Date: Thu Jun 24 12:24:19 2010 +0900 TOMOYO: Use common code for policy reading. tomoyo_print_..._acl() are similar. Merge them. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 063821c8160568b3390044390c8328e36c5696ad Author: Tetsuo Handa Date: Thu Jun 24 12:00:25 2010 +0900 TOMOYO: Allow reading only execute permission. Policy editor needs to know allow_execute entries in order to build domain transition tree. Reading all entries is slow. Thus, allow reading only allow_execute entries. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 475e6fa3d340e75a454ea09191a29e52e2ee6e71 Author: Tetsuo Handa Date: Thu Jun 24 11:28:14 2010 +0900 TOMOYO: Change list iterator. Change list_for_each_cookie to (1) start from current position rather than next position (2) remove temporary cursor (3) check that srcu_read_lock() is held Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 5448ec4f5062ef75ce74f8d7784d4cea9c46ad00 Author: Tetsuo Handa Date: Mon Jun 21 11:14:39 2010 +0900 TOMOYO: Use common code for domain transition control. Use common code for "initialize_domain"/"no_initialize_domain"/"keep_domain"/ "no_keep_domain" keywords. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 0617c7ff34dc9b1d641640c3953274bb2dbe21a6 Author: Tetsuo Handa Date: Mon Jun 21 09:58:53 2010 +0900 TOMOYO: Remove alias keyword. Some programs behave differently depending on argv[0] passed to execve(). TOMOYO has "alias" keyword in order to allow administrators to define different domains if requested pathname passed to execve() is a symlink. But "alias" keyword is incomplete because this keyword assumes that requested pathname and argv[0] are identical. Thus, remove "alias" keyword (by this patch) and add syntax for checking argv[0] (by future patches). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 7c2ea22e3c5463627ca98924cd65cb9e480dc29c Author: Tetsuo Handa Date: Thu Jun 17 16:55:58 2010 +0900 TOMOYO: Merge path_group and number_group. Use common code for "path_group" and "number_group". Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 31845e8c6d3f4f26702e567c667277f9fd1f73a3 Author: Tetsuo Handa Date: Thu Jun 17 16:54:33 2010 +0900 TOMOYO: Aggregate reader functions. Now lists are accessible via array index. Aggregate reader functions using index. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit a230f9e7121cbcbfe23bd5a630abf6b53cece555 Author: Tetsuo Handa Date: Thu Jun 17 16:53:24 2010 +0900 TOMOYO: Use array of "struct list_head". Assign list id and make the lists as array of "struct list_head". Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit a98aa4debe2728abb3353e35fc5d110dcc0d7f0d Author: Tetsuo Handa Date: Thu Jun 17 16:52:29 2010 +0900 TOMOYO: Merge tomoyo_path_group and tomoyo_number_group "struct tomoyo_path_group" and "struct tomoyo_number_group" are identical. Rename tomoyo_path_group/tomoyo_number_group to tomoyo_group and tomoyo_path_group_member to tomoyo_path_group and tomoyo_number_group_member to tomoyo_unmber_group. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 5fb49870e6d48d81d8ca0e1ef979073dc9a820f7 Author: Paul Moore Date: Thu Apr 22 14:46:19 2010 -0400 selinux: Use current_security() when possible There were a number of places using the following code pattern: struct cred *cred = current_cred(); struct task_security_struct *tsec = cred->security; ... which were simplified to the following: struct task_security_struct *tsec = current_security(); Signed-off-by: Paul Moore Acked-by: Eric Paris Signed-off-by: James Morris commit 253bfae6e0ad97554799affa0266052968a45808 Author: Paul Moore Date: Thu Apr 22 14:46:19 2010 -0400 selinux: Convert socket related access controls to use socket labels At present, the socket related access controls use a mix of inode and socket labels; while there should be no practical difference (they _should_ always be the same), it makes the code more confusing. This patch attempts to convert all of the socket related access control points (with the exception of some of the inode/fd based controls) to use the socket's own label. In the process, I also converted the socket_has_perm() function to take a 'sock' argument instead of a 'socket' since that was adding a bit more overhead in some cases. Signed-off-by: Paul Moore Acked-by: Eric Paris Signed-off-by: James Morris commit 84914b7ed1c5e0f3199a5a6997022758a70fcaff Author: Paul Moore Date: Thu Apr 22 14:46:18 2010 -0400 selinux: Shuffle the sk_security_struct alloc and free routines The sk_alloc_security() and sk_free_security() functions were only being called by the selinux_sk_alloc_security() and selinux_sk_free_security() functions so we just move the guts of the alloc/free routines to the callers and eliminate a layer of indirection. Signed-off-by: Paul Moore Acked-by: Eric Paris Signed-off-by: James Morris commit d4f2d97841827cb876da8b607df05a3dab812416 Author: Paul Moore Date: Thu Apr 22 14:46:18 2010 -0400 selinux: Consolidate sockcreate_sid logic Consolidate the basic sockcreate_sid logic into a single helper function which allows us to do some cleanups in the related code. Signed-off-by: Paul Moore Acked-by: Eric Paris Signed-off-by: James Morris commit 4d1e24514d80cb266231d0c1b6c02161970ad019 Author: Paul Moore Date: Thu Apr 22 14:46:18 2010 -0400 selinux: Set the peer label correctly on connected UNIX domain sockets Correct a problem where we weren't setting the peer label correctly on the client end of a pair of connected UNIX sockets. Signed-off-by: Paul Moore Acked-by: Eric Paris Signed-off-by: James Morris commit e79acf0ef45e0b54aed47ebea7f25c540d3f527e Author: Tetsuo Handa Date: Wed Jun 16 16:31:50 2010 +0900 TOMOYO: Pass "struct list_head" rather than "void *". Pass "struct list_head" to tomoyo_add_to_gc() and bring list_del_rcu() to tomoyo_add_to_gc(). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 8fbe71f0e0ac28a39e4a93694c34d670c2f31e88 Author: Tetsuo Handa Date: Wed Jun 16 16:29:59 2010 +0900 TOMOYO: Make read function to void. Read functions do not fail. Make them from int to void. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit cb917cf517075a357ce43b74e8a5a57f2c69a734 Author: Tetsuo Handa Date: Wed Jun 16 16:28:21 2010 +0900 TOMOYO: Merge functions. Embed tomoyo_path_number_perm2() into tomoyo_path_number_perm(). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 71c282362d0672235c5205a7db1f3ac3fcf32981 Author: Tetsuo Handa Date: Wed Jun 16 16:26:38 2010 +0900 TOMOYO: Remove wrapper function for reading keyword. Keyword strings are read-only. We can directly access them to reduce code size. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit d795ef9e751b72c94600c91e31bdaef55987a9f6 Author: Tetsuo Handa Date: Wed Jun 16 16:24:58 2010 +0900 TOMOYO: Loosen parameter check for mount operation. If invalid combination of mount flags are given, it will be rejected later. Thus, no need for TOMOYO to reject invalid combination of mount flags. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 75093152a97ee0ec281895b4f6229ff3c481fd64 Author: Tetsuo Handa Date: Wed Jun 16 16:23:55 2010 +0900 TOMOYO: Rename symbols. Use shorter name in order to make it easier to fix 80 columns limit. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 99a852596beb26cc449ca1a79834c107ef4080e1 Author: Tetsuo Handa Date: Wed Jun 16 16:22:51 2010 +0900 TOMOYO: Use callback for permission check. We can use callback function since parameters are passed via "const struct tomoyo_request_info". Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit cf6e9a6468ec82a94cbc707b607452ec4454182c Author: Tetsuo Handa Date: Wed Jun 16 16:21:36 2010 +0900 TOMOYO: Pass parameters via structure. To make it possible to use callback function, pass parameters via "struct tomoyo_request_info". Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 05336dee9f5a23c042e5938b42f996dd35e31ee6 Author: Tetsuo Handa Date: Wed Jun 16 16:20:24 2010 +0900 TOMOYO: Use common code for open and mkdir etc. tomoyo_file_perm() and tomoyo_path_permission() are similar. We can embed tomoyo_file_perm() into tomoyo_path_permission(). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 9ee0c823c18119914283358b35a1c3ebb14c2f90 Author: Eric Paris Date: Fri Jun 11 12:37:05 2010 -0400 SELinux: seperate range transition rules to a seperate function Move the range transition rule to a separate function, range_read(), rather than doing it all in policydb_read() Signed-off-by: Eric Paris Acked-by: Stephen Smalley Signed-off-by: James Morris commit d2f8b2348f3406652ee00ee7221441bd36fe0195 Author: Tetsuo Handa Date: Tue Jun 15 10:10:37 2010 +0900 TOMOYO: Use common code for garbage collection. Use common code for elements using "struct list_head" + "bool" structure. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 36f5e1ffbf2bb951105ae4e261bcc1de3eaf510c Author: Tetsuo Handa Date: Tue Jun 15 09:23:26 2010 +0900 TOMOYO: Use callback for updating entries. Use common code for elements using "struct list_head" + "bool" structure. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 82e0f001a4c1112dcff9cafa9812a33889ad9b8a Author: Tetsuo Handa Date: Tue Jun 15 09:22:42 2010 +0900 TOMOYO: Use common structure for list element. Use common "struct list_head" + "bool" structure. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 237ab459f12cb98eadd3fe7b85343e183a1076a4 Author: Tetsuo Handa Date: Sat Jun 12 20:46:22 2010 +0900 TOMOYO: Use callback for updating entries. Use common "struct list_head" + "bool" + "u8" structure and use common code for elements using that structure. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 927942aabbbe506bf9bc70a16dc5460ecc64c148 Author: David Howells Date: Fri Jun 11 17:31:10 2010 +0100 KEYS: Make /proc/keys check to see if a key is possessed before security check Make /proc/keys check to see if the calling process possesses each key before performing the security check. The possession check can be skipped if the key doesn't have the possessor-view permission bit set. This causes the keys a process possesses to show up in /proc/keys, even if they don't have matching user/group/other view permissions. Signed-off-by: David Howells Signed-off-by: James Morris commit 9156235b3427d6f01c5c95022f72f381f07583f5 Author: David Howells Date: Fri Jun 11 17:31:05 2010 +0100 KEYS: Authorise keyctl_set_timeout() on a key if we have its authorisation key Authorise a process to perform keyctl_set_timeout() on an uninstantiated key if that process has the authorisation key for it. This allows the instantiator to set the timeout on a key it is instantiating - provided it does it before instantiating the key. For instance, the test upcall script provided with the keyutils package could be modified to set the expiry to an hour hence before instantiating the key: [/usr/share/keyutils/request-key-debug.sh] if [ "$3" != "neg" ] then + keyctl timeout $1 3600 keyctl instantiate $1 "Debug $3" $4 || exit 1 else Signed-off-by: David Howells Signed-off-by: James Morris commit 57c2590fb7fd38bd52708ff2716a577d0c2b3c5a Author: Tetsuo Handa Date: Thu Jun 3 20:38:44 2010 +0900 TOMOYO: Update profile structure. This patch allows users to change access control mode for per-operation basis. This feature comes from non LSM version of TOMOYO which is designed for permitting users to use SELinux and TOMOYO at the same time. SELinux does not care filename in a directory whereas TOMOYO does. Change of filename can change how the file is used. For example, renaming index.txt to .htaccess will change how the file is used. Thus, letting SELinux to enforce read()/write()/mmap() etc. restriction and letting TOMOYO to enforce rename() restriction is an example usage of this feature. What is unfortunate for me is that currently LSM does not allow users to use SELinux and LSM version of TOMOYO at the same time... Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 1084307ca097745ed6e40a192329b133a49271ac Author: Tetsuo Handa Date: Thu Jun 3 20:38:03 2010 +0900 TOMOYO: Add pathname aggregation support. This patch allows users to aggregate programs which provide similar functionality (e.g. /usr/bin/vi and /usr/bin/emacs ). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 3f629636320dfa65804779a3fc333f3147f3b064 Author: Tetsuo Handa Date: Thu Jun 3 20:37:26 2010 +0900 TOMOYO: Allow wildcard for execute permission. Some applications create and execute programs dynamically. We need to accept wildcard for execute permission because such programs contain random suffix in their filenames. This patch loosens up regulation of string parameters. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit c8c57e842720d8cc92ac8607f2d1c16d92314573 Author: Tetsuo Handa Date: Thu Jun 3 20:36:43 2010 +0900 TOMOYO: Support longer pathname. Allow pathnames longer than 4000 bytes. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 9b244373da3eab671da6c5125482121528a9ebf3 Author: Tetsuo Handa Date: Thu Jun 3 20:35:53 2010 +0900 TOMOYO: Several fixes for TOMOYO's management programs. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit ea0d3ab239fba48d6e998b19c28d78f765963007 Author: Tetsuo Handa Date: Wed Jun 2 13:24:43 2010 +0900 LSM: Remove unused arguments from security_path_truncate(). When commit be6d3e56a6b9b3a4ee44a0685e39e595073c6f0d "introduce new LSM hooks where vfsmount is available." was proposed, regarding security_path_truncate(), only "struct file *" argument (which AppArmor wanted to use) was removed. But length and time_attrs arguments are not used by TOMOYO nor AppArmor. Thus, let's remove these arguments. Signed-off-by: Tetsuo Handa Acked-by: Nick Piggin Signed-off-by: James Morris commit 3e62cbb8436f6c0cb799c8b7f106de7f662a7b8d Author: Dan Carpenter Date: Tue Jun 1 09:14:04 2010 +0200 smack: opt_dentry is never null in in smack_d_instantiate() This patch removes some unneeded code for if opt_dentry is null because that can never happen. The function dereferences "opt_dentry" earlier when it checks "if (opt_dentry->d_parent == opt_dentry) {". That code was added in 2008. This function called from security_d_instantiate(). I checked all the places which call security_d_instantiate() and dentry is always non-null. I also checked the selinux version of this hook and there is a comment which says that dentry should be non-null if called from d_instantiate(). Signed-off-by: Dan Carpenter Acked-by: Casey Schaufler Signed-off-by: James Morris commit c3ef1500ec833890275172c7d063333404b64d60 Author: Tetsuo Handa Date: Mon May 17 10:12:46 2010 +0900 TOMOYO: Split files into some pieces. security/tomoyo/common.c became too large to read. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 17fcfbd9d45b57f38d40e31f9d28db53f4af5c88 Author: Tetsuo Handa Date: Mon May 17 10:11:36 2010 +0900 TOMOYO: Add interactive enforcing mode. Since the behavior of the system is restricted by policy, we may need to update policy when you update packages. We need to update policy in the following cases. * The pathname of files has changed. * The dependency of files has changed. * The access permissions required has increased. The ideal way to update policy is to rebuild from the scratch using learning mode. But it is not desirable to change from enforcing mode to other mode if the system has once entered in production state. Suppose MAC could support per-application enforcing mode, the MAC becomes useless if an application that is not running in enforcing mode was cracked. For example, the whole system becomes vulnerable if only HTTP server application is running in learning mode to rebuild policy for the application. So, in TOMOYO Linux, updating policy is done while the system is running in enforcing mode. This patch implements "interactive enforcing mode" which allows administrators to judge whether to accept policy violation in enforcing mode or not. A demo movie is available at http://www.youtube.com/watch?v=b9q1Jo25LPA . Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 2106ccd972dcd9fda7df9b181505fac1741b3508 Author: Tetsuo Handa Date: Mon May 17 10:10:31 2010 +0900 TOMOYO: Add mount restriction. mount(2) has three string and one numeric parameters. Split mount restriction code from security/tomoyo/file.c . Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit a1f9bb6a375a8dbf7797ffbd6739c46b338a77f7 Author: Tetsuo Handa Date: Mon May 17 10:09:15 2010 +0900 TOMOYO: Split file access control functions by type of parameters. Check numeric parameters for operations that deal them (e.g. chmod/chown/ioctl). Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit cb0abe6a5b58499bd4bc1403f4987af9ead0642c Author: Tetsuo Handa Date: Mon May 17 10:08:05 2010 +0900 TOMOYO: Use structure for passing common arguments. Use "struct tomoyo_request_info" instead of passing individual arguments. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 4c3e9e2ded48bcf696a45945ea7d25bb15b873fd Author: Tetsuo Handa Date: Mon May 17 10:06:58 2010 +0900 TOMOYO: Add numeric values grouping support. This patch adds numeric values grouping support, which is useful for grouping numeric values such as file's UID, DAC's mode, ioctl()'s cmd number. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit babcd37821fba57048b30151969d28303f2a8b6b Author: Paul E. McKenney Date: Tue May 18 12:11:25 2010 -0700 selinux: remove all rcu head initializations Remove all rcu head inits. We don't care about the RCU head state before passing it to call_rcu() anyway. Only leave the "on_stack" variants so debugobjects can keep track of objects on stack. Signed-off-by: Mathieu Desnoyers Signed-off-by: Paul E. McKenney Cc: Stephen Smalley Reviewed-by: James Morris Cc: Eric Paris Signed-off-by: James Morris commit 3444d7da1839b851eefedd372978d8a982316c36 Author: Avi Kivity Date: Mon Jul 26 18:32:38 2010 +0300 KVM: VMX: Fix host GDT.LIMIT corruption vmx does not restore GDT.LIMIT to the host value, instead it sets it to 64KB. This means host userspace can learn a few bits of host memory. Fix by reloading GDTR when we load other host state. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 2581afccadd347bf97c3a5620ba72c99aca8c355 Author: Alex Deucher Date: Tue Jul 20 03:24:11 2010 -0400 drm/radeon/kms: make sure HPD is set to NONE on analog-only connectors HPD is digital only. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit e0a2ca737597de5068634df2706f4cf1c1e32d84 Author: Alex Deucher Date: Thu Jul 8 12:24:52 2010 -0400 drm/radeon/kms: make sure rio_mem is valid before unmapping it If we were not able to map the io bar in device init, don't attempt to unmap it in device fini. All radeons should have a io bar, so I doubt this would ever trigger, but just to be on the safe side... Pointed out by: Alberto Milone Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 64d4b4c90a876401e503c3a3260e9d0ed066f271 Author: Artem Bityutskiy Date: Fri Jul 30 14:59:50 2010 +0300 UBI: do not warn unnecessarily Currently, when UBI attaches an MTD device and cannot reserve all 1% (by default) of PEBs for bad eraseblocks handling, it prints a warning. However, Matthew L. Creech is not very happy to see this warning, because he did reserve enough of PEB at the beginning, but with time some PEBs became bad. The warning is not necessary in this case. This patch makes UBI print the warning o if this is a new image o of this is used image and the amount of reserved PEBs is only 10% (or less) of the size of the reserved PEB pool. Signed-off-by: Artem Bityutskiy commit 7cdb996ee4d04b5bb2cd544b14e8eb91cfd7fe64 Author: Artem Bityutskiy Date: Fri Jul 30 16:31:38 2010 +0300 UBI: do not print message about corruptes PEBs if we have none of them Currently UBI prints UBI: corrupted PEBs will be formatted even if there are not corrupted PEBs. Fix this. Signed-off-by: Artem Bityutskiy commit 9a3aad70572c3f4d55e7f09ac4eb313d41d0a484 Author: Xiao Guangrong Date: Fri Jul 16 11:30:18 2010 +0800 KVM: MMU: using __xchg_spte more smarter Sometimes, atomically set spte is not needed, this patch call __xchg_spte() more smartly Note: if the old mapping's access bit is already set, we no need atomic operation since the access bit is not lost Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit e4b502ead259fcf70839414abb7c8cdc3b523f01 Author: Xiao Guangrong Date: Fri Jul 16 11:28:09 2010 +0800 KVM: MMU: cleanup spte set and accssed/dirty tracking Introduce set_spte_track_bits() to cleanup current code Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit be233d49ea8c1fde9f4afec378dc2c2f16ab0263 Author: Xiao Guangrong Date: Fri Jul 16 11:27:10 2010 +0800 KVM: MMU: don't atomicly set spte if it's not present If the old mapping is not present, the spte.a is not lost, so no need atomic operation to set it Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 9ed5520dd3c9cb79c25f95fce9c57b87637d0fb7 Author: Xiao Guangrong Date: Fri Jul 16 11:25:17 2010 +0800 KVM: MMU: fix page dirty tracking lost while sync page In sync-page path, if spte.writable is changed, it will lose page dirty tracking, for example: assume spte.writable = 0 in a unsync-page, when it's synced, it map spte to writable(that is spte.writable = 1), later guest write spte.gfn, it means spte.gfn is dirty, then guest changed this mapping to read-only, after it's synced, spte.writable = 0 So, when host release the spte, it detect spte.writable = 0 and not mark page dirty Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit daa3db693ce925a14b7e17ab6f306dc0e6a5342c Author: Xiao Guangrong Date: Fri Jul 16 11:23:04 2010 +0800 KVM: MMU: fix broken page accessed tracking with ept enabled In current code, if ept is enabled(shadow_accessed_mask = 0), the page accessed tracking is lost. Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit fa1de2bfc0feb7245328ad25fb3e6d5cd2c903b4 Author: Xiao Guangrong Date: Fri Jul 16 11:19:51 2010 +0800 KVM: MMU: add missing reserved bits check in speculative path In the speculative path, we should check guest pte's reserved bits just as the real processor does Reported-by: Marcelo Tosatti Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 6e3e243c3b6e0bbd18c6ce0fbc12bc3fe2d77b34 Author: Andrea Arcangeli Date: Fri Jul 16 11:52:55 2010 +0200 KVM: MMU: fix mmu notifier invalidate handler for huge spte The index wasn't calculated correctly (off by one) for huge spte so KVM guest was unstable with transparent hugepages. Signed-off-by: Andrea Arcangeli Reviewed-by: Reviewed-by: Rik van Riel Signed-off-by: Avi Kivity commit c19b8bd60e19308d5583ef200ddcc782d85d9543 Author: Wei Yongjun Date: Thu Jul 15 08:51:58 2010 +0800 KVM: x86 emulator: fix xchg instruction emulation If the destination is a memory operand and the memory cannot map to a valid page, the xchg instruction emulation and locked instruction will not work on io regions and stuck in endless loop. We should emulate exchange as write to fix it. Signed-off-by: Wei Yongjun Acked-by: Gleb Natapov Signed-off-by: Marcelo Tosatti commit 9195c4da26bbf8860e2e7b648dbf4ab465c7933a Author: Gleb Natapov Date: Thu Jul 15 12:24:37 2010 +0300 KVM: x86: Call mask notifiers from pic If pit delivers interrupt while pic is masking it OS will never do EOI and ack notifier will not be called so when pit will be unmasked no pit interrupts will be delivered any more. Calling mask notifiers solves this issue. Signed-off-by: Gleb Natapov Signed-off-by: Marcelo Tosatti commit 68be0803456b3eed33038be5566710ad7648c854 Author: Gleb Natapov Date: Wed Jul 14 19:05:45 2010 +0300 KVM: x86: never re-execute instruction with enabled tdp With tdp enabled we should get into emulator only when emulating io, so reexecution will always bring us back into emulator. Signed-off-by: Gleb Natapov Signed-off-by: Marcelo Tosatti commit d153513ddef5698a292b53790008b2e7660cd08d Author: Avi Kivity Date: Wed Jul 14 09:45:21 2010 +0300 KVM: Document KVM_GET_SUPPORTED_CPUID2 ioctl Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit c0e0608cb902af1a1fd8d413ec0a07ee1e62c652 Author: Gleb Natapov Date: Tue Jul 13 16:40:23 2010 +0300 KVM: x86: emulator: inc/dec can have lock prefix Mark inc (0xfe/0 0xff/0) and dec (0xfe/1 0xff/1) as lock prefix capable. Signed-off-by: Gleb Natapov Signed-off-by: Marcelo Tosatti commit 24157aaf833261e68e5a398fa54bd15e4fa1d0b7 Author: Avi Kivity Date: Tue Jul 13 14:27:11 2010 +0300 KVM: MMU: Eliminate redundant temporaries in FNAME(fetch) 'level' and 'sptep' are aliases for 'interator.level' and 'iterator.sptep', no need for them. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 5991b33237b7fc7dd9f62ae04998c42217d444a7 Author: Avi Kivity Date: Tue Jul 13 14:27:10 2010 +0300 KVM: MMU: Validate all gptes during fetch, not just those used for new pages Currently, when we fetch an spte, we only verify that gptes match those that the walker saw if we build new shadow pages for them. However, this misses the following race: vcpu1 vcpu2 walk change gpte walk instantiate sp fetch existing sp Fix by validating every gpte, regardless of whether it is used for building a new sp or not. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 0b3c933302262d83018dd5f69656bca9f28a0cd3 Author: Avi Kivity Date: Tue Jul 13 14:27:09 2010 +0300 KVM: MMU: Simplify spte fetch() function Partition the function into three sections: - fetching indirect shadow pages (host_level > guest_level) - fetching direct shadow pages (page_level < host_level <= guest_level) - the final spte (page_level == host_level) Instead of the current spaghetti. A slight change from the original code is that we call validate_direct_spte() more often: previously we called it only for gw->level, now we also call it for lower levels. The change should have no effect. [xiao: fix regression caused by validate_direct_spte() called too late] Signed-off-by: Avi Kivity Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 39c8c672a18c52048343d7531dfb2dcf3431ee74 Author: Avi Kivity Date: Tue Jul 13 14:27:08 2010 +0300 KVM: MMU: Add gpte_valid() helper Move the code to check whether a gpte has changed since we fetched it into a helper. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit a357bd229cdaf37a41798d238ab50b34c71dd0d6 Author: Avi Kivity Date: Tue Jul 13 14:27:07 2010 +0300 KVM: MMU: Add validate_direct_spte() helper Add a helper to verify that a direct shadow page is valid wrt the required access permissions; drop the page if it is not valid. Reviewed-by: Xiao Guangrong Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit a3aa51cfaafe9179add88db20506ccb07e030b47 Author: Avi Kivity Date: Tue Jul 13 14:27:06 2010 +0300 KVM: MMU: Add drop_large_spte() helper To clarify spte fetching code, move large spte handling into a helper. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 121eee97a7802acda8b78436cc53196e9885549f Author: Avi Kivity Date: Tue Jul 13 14:27:05 2010 +0300 KVM: MMU: Use __set_spte to link shadow pages To avoid split accesses to 64 bit sptes on i386, use __set_spte() to link shadow pages together. (not technically required since shadow pages are __GFP_KERNEL, so upper 32 bits are always clear) Reviewed-by: Xiao Guangrong Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 32ef26a3598636be520abed90ed0c2f439d36bbe Author: Avi Kivity Date: Tue Jul 13 14:27:04 2010 +0300 KVM: MMU: Add link_shadow_page() helper To simplify the process of fetching an spte, add a helper that links a shadow page to an spte. Reviewed-by: Xiao Guangrong Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 4a994358b919c3b14de61be5e30d9edc9089ba3f Author: Gleb Natapov Date: Sun Jul 11 15:32:23 2010 +0300 KVM: Convert mask notifiers to use irqchip/pin instead of gsi Devices register mask notifier using gsi, but irqchip knows about irqchip/pin, so conversion from irqchip/pin to gsi should be done before looking for mask notifier to call. Signed-off-by: Gleb Natapov Signed-off-by: Marcelo Tosatti commit 2e2602ca5df09e4c4e2b593bc30abead9a8617d4 Author: Avi Kivity Date: Wed Jul 7 14:09:39 2010 +0300 KVM: Document MCE banks non-exposure via KVM_GET_MSR_INDEX_LIST Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 908e75f3e70ca580cc20442cf6780dcc2d0557b7 Author: Avi Kivity Date: Wed Jul 7 14:09:38 2010 +0300 KVM: Expose MCE control MSRs to userspace Userspace needs to reset and save/restore these MSRs. The MCE banks are not exposed since their number varies from vcpu to vcpu. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit aea924f606c309feead37ab5c43f410a08ff3826 Author: Xiao Guangrong Date: Sat Jul 10 17:37:56 2010 +0800 KVM: PIT: stop vpit before freeing irq_routing Fix: general protection fault: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC ...... Call Trace: [] ? kvm_set_irq+0xdd/0x24b [kvm] [] ? trace_hardirqs_off_caller+0x1f/0x10e [] ? sub_preempt_count+0xe/0xb6 [] ? put_lock_stats+0xe/0x27 ... RIP [] kvm_set_irq+0x17e/0x24b [kvm] This bug is triggered when guest is shutdown, is because we freed irq_routing before pit thread stopped Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit a6f177efaa5856e22ed0d3c1e81e65b41654d083 Author: Gleb Natapov Date: Thu Jul 8 12:41:12 2010 +0300 KVM: Reenter guest after emulation failure if due to access to non-mmio address When shadow pages are in use sometimes KVM try to emulate an instruction when it accesses a shadowed page. If emulation fails KVM un-shadows the page and reenter guest to allow vcpu to execute the instruction. If page is not in shadow page hash KVM assumes that this was attempt to do MMIO and reports emulation failure to userspace since there is no way to fix the situation. This logic has a race though. If two vcpus tries to write to the same shadowed page simultaneously both will enter emulator, but only one of them will find the page in shadow page hash since the one who founds it also removes it from there, so another cpu will report failure to userspace and will abort the guest. Fix this by checking (in addition to checking shadowed page hash) that page that caused the emulation belongs to valid memory slot. If it is then reenter the guest to allow vcpu to reexecute the instruction. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit edba23e51578f7cb6781461568489fc1825db4ac Author: Gleb Natapov Date: Wed Jul 7 20:16:45 2010 +0300 KVM: Return EFAULT from kvm ioctl when guest accesses bad area Currently if guest access address that belongs to memory slot but is not backed up by page or page is read only KVM treats it like MMIO access. Remove that capability. It was never part of the interface and should not be relied upon. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit fa7bff8f8a7d3de61c0473d0b6dc5a0f4fdc6ac9 Author: Gleb Natapov Date: Wed Jul 7 20:16:44 2010 +0300 KVM: define hwpoison variables static They are not used outside of the file. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 673813e81d8468e80b6dd0fa839923eb9748dc49 Author: Jiri Slaby Date: Wed Jul 7 15:02:25 2010 +0200 KVM: fix lock imbalance in kvm_create_pit() Stanse found that there is an omitted unlock in kvm_create_pit in one fail path. Add proper unlock there. Signed-off-by: Jiri Slaby Cc: Avi Kivity Cc: Marcelo Tosatti Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: x86@kernel.org Cc: Gleb Natapov Cc: "Michael S. Tsirkin" Cc: Gregory Haskins Cc: kvm@vger.kernel.org Signed-off-by: Avi Kivity commit f59c1d2ded54e4bd7a9126f4a32c9eca8b336457 Author: Avi Kivity Date: Tue Jul 6 16:20:43 2010 +0300 KVM: MMU: Keep going on permission error Real hardware disregards permission errors when computing page fault error code bit 0 (page present). Do the same. Reviewed-by: Xiao Guangrong Signed-off-by: Avi Kivity commit b0eeec29fe7a5b114000f769bd68ffa02652bfb7 Author: Avi Kivity Date: Tue Jul 6 15:40:18 2010 +0300 KVM: MMU: Only indicate a fetch fault in page fault error code if nx is enabled Bit 4 of the page fault error code is set only if EFER.NX is set. Reviewed-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 5d55f299f97769130c6cc67896414c988db309ab Author: Wei Yongjun Date: Wed Jul 7 17:43:35 2010 +0800 KVM: x86 emulator: re-implementing 'mov AL,moffs' instruction decoding This patch change to use DstAcc for decoding 'mov AL, moffs' and introduced SrcAcc for decoding 'mov moffs, AL'. Signed-off-by: Wei Yongjun Signed-off-by: Avi Kivity commit 07cbc6c185aee2c0479776845988242a040c7c93 Author: Wei Yongjun Date: Tue Jul 6 16:54:19 2010 +0800 KVM: x86 emulator: fix cli/sti instruction emulation If IOPL check fail, the cli/sti emulate GP and then we should skip writeback since the default write OP is OP_REG. Signed-off-by: Wei Yongjun Signed-off-by: Avi Kivity commit b16b2b7bb5a78afceb7fe22f2a04476cd70182b7 Author: Wei Yongjun Date: Tue Jul 6 16:52:53 2010 +0800 KVM: x86 emulator: fix 'mov rm,sreg' instruction decoding The source operand of 'mov rm,sreg' is segment register, not general-purpose register, so remove SrcReg from decoding. Signed-off-by: Wei Yongjun Signed-off-by: Avi Kivity commit e97e883f8bfbe02cfc2bfff45e68921dfe590c7e Author: Wei Yongjun Date: Tue Jul 6 16:51:09 2010 +0800 KVM: x86 emulator: fix 'and AL,imm8' instruction decoding 'and AL,imm8' should be mask as ByteOp, otherwise the dest operand length will no correct and we may fill the full EAX when writeback. Signed-off-by: Wei Yongjun Signed-off-by: Avi Kivity commit ce7a0ad3bdcd86e6cf907eb5992fecb1503daa26 Author: Wei Yongjun Date: Tue Jul 6 16:50:21 2010 +0800 KVM: x86 emulator: fix the comment of out instruction Fix the comment of out instruction, using the same style as the other instructions. Signed-off-by: Wei Yongjun Signed-off-by: Avi Kivity commit a5046e6c7d97d6574ffe6367311ea0b0de56aa58 Author: Wei Yongjun Date: Tue Jul 6 16:49:05 2010 +0800 KVM: x86 emulator: fix 'mov sreg,rm16' instruction decoding Memory reads for 'mov sreg,rm16' should be 16 bits only. Signed-off-by: Wei Yongjun Signed-off-by: Avi Kivity commit b79b93f92cb3b66b89d75525fdfd2454b1e1f446 Author: Avi Kivity Date: Sun Jun 6 15:46:44 2010 +0300 KVM: MMU: Don't drop accessed bit while updating an spte __set_spte() will happily replace an spte with the accessed bit set with one that has the accessed bit clear. Add a helper update_spte() which checks for this condition and updates the page flag if needed. Signed-off-by: Avi Kivity commit a9221dd5ec125fbec1702fae016c6d2ea1a9a3da Author: Avi Kivity Date: Sun Jun 6 14:48:06 2010 +0300 KVM: MMU: Atomically check for accessed bit when dropping an spte Currently, in the window between the check for the accessed bit, and actually dropping the spte, a vcpu can access the page through the spte and set the bit, which will be ignored by the mmu. Fix by using an exchange operation to atmoically fetch the spte and drop it. Signed-off-by: Avi Kivity commit ce061867aa2877605cda96fa8ec7dff15f70a983 Author: Avi Kivity Date: Sun Jun 6 14:38:12 2010 +0300 KVM: MMU: Move accessed/dirty bit checks from rmap_remove() to drop_spte() Since we need to make the check atomic, move it to the place that will set the new spte. Signed-off-by: Avi Kivity commit be38d276b0189fa86231fc311428622a1981ad62 Author: Avi Kivity Date: Sun Jun 6 14:31:27 2010 +0300 KVM: MMU: Introduce drop_spte() When we call rmap_remove(), we (almost) always immediately follow it by an __set_spte() to a nonpresent pte. Since we need to perform the two operations atomically, to avoid losing the dirty and accessed bits, introduce a helper drop_spte() and convert all call sites. The operation is still nonatomic at this point. Signed-off-by: Avi Kivity commit dd180b3e90253cb4ca95d603a8c17413f8daec69 Author: Xiao Guangrong Date: Sat Jul 3 16:02:42 2010 +0800 KVM: VMX: fix tlb flush with invalid root Commit 341d9b535b6c simplify reload logic while entry guest mode, it can avoid unnecessary sync-root if KVM_REQ_MMU_RELOAD and KVM_REQ_MMU_SYNC both set. But, it cause a issue that when we handle 'KVM_REQ_TLB_FLUSH', the root is invalid, it is triggered during my test: Kernel BUG at ffffffffa00212b8 [verbose debug info unavailable] ...... Fixed by directly return if the root is not ready. Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 5689cc53fa9d09b5bf41b1b1a7c90bd6c112ab40 Author: Joerg Roedel Date: Thu Jul 1 16:00:12 2010 +0200 KVM: Use u64 for frame data types For 32bit machines where the physical address width is larger than the virtual address width the frame number types in KVM may overflow. Fix this by changing them to u64. [sfr: fix build on 32-bit ppc] Signed-off-by: Joerg Roedel Signed-off-by: Stephen Rothwell Signed-off-by: Marcelo Tosatti commit 8b67f04ab9de5d8f3a71aef72bf02c995a506db5 Author: Theodore Ts'o Date: Sun Aug 1 23:14:20 2010 -0400 ext4: Add mount options in superblock Allow mount options to be stored in the superblock. Also add default mount option bits for nobarrier, block_validity, discard, and nodelalloc. Signed-off-by: "Theodore Ts'o" commit d1d6ca73ef548748e141747e7260798327d6a2c1 Author: Jesse Barnes Date: Thu Jul 8 09:22:46 2010 -0700 drm/agp/i915: trim stolen space to 32M Some BIOSes will claim a large chunk of stolen space. Unless we reclaim it, our aperture for remapping buffer objects will be constrained. So clamp the stolen space to 32M and ignore the rest. Fixes https://bugzilla.kernel.org/show_bug.cgi?id=15469 among others. Adding the ignored stolen memory back into the general pool using the memory hotplug code is left as an exercise for the reader. Signed-off-by: Jesse Barnes Reviewed-by: Simon Farnsworth Tested-by: Artem S. Tashkinov Signed-off-by: Eric Anholt commit cda4b7d3a5b1dcbc0d8e7bad52134347798e9047 Author: Chris Wilson Date: Fri Jul 9 08:45:04 2010 +0100 drm/i915: Unset cursor if out-of-bounds upon mode change (v4) The docs warn that to position the cursor such that no part of it is visible on the pipe is an undefined operation. Avoid such circumstances upon changing the mode, or at any other time, by unsetting the cursor if it moves out of bounds. "For normal high resolution display modes, the cursor must have at least a single pixel positioned over the active screen.” (p143, p148 of the hardware registers docs). Fixes: Bug 24748 - [965G] Graphics crashes when resolution is changed with KMS enabled https://bugs.freedesktop.org/show_bug.cgi?id=24748 v2: Only update the cursor registers if they change. v3: Fix the unsigned comparision of x,y against width,height. v4: Always set CUR.BASE or else the cursor may become corrupt. Signed-off-by: Chris Wilson Reported-by: Christian Eggers Cc: Christopher James Halse Rogers Cc: stable@kernel.org Signed-off-by: Eric Anholt commit 86f100b136626e91f4f66f3776303475e2e58998 Author: Chris Wilson Date: Sat Jul 24 21:03:49 2010 +0100 drm/i915: Unreference object not handle on creation When creating an object, we create the handle by which it is known to the process and which own the reference to the object. That reference to the new handle is what we want to transfer to the process, not the lost reference to the object; so free the local object reference *not* the process's handle reference. This brings i915_gem_object_create_ioctl() into line with drm_gem_open_ioctl() Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 8dc1775dce10d5e47d2805665804fddf39ea3a90 Author: Chris Wilson Date: Fri Jul 23 23:18:51 2010 +0100 drm/i915: Attempt to uncouple object after catastrophic failure in unbind If we fail to flush outstanding GPU writes but return the memory to the system, we risk corrupting memory should the GPU recovery and complete those writes. On the other hand, if we bail early and free the object then we have a definite use-after-free and real memory corruption. Choose the lesser of two evils, since in order to recover from the hung GPU we need to completely reset it, those pending writes should never happen. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit be72615bcf4d5b7b314d836c5e1b4baa4b65dad1 Author: Chris Wilson Date: Fri Jul 23 23:18:50 2010 +0100 drm/i915: Repeat unbinding during free if interrupted (v6) If during the freeing of an object the unbind is interrupted by a system call, which is quite possible if we have outstanding GPU writes that must be flushed, the unbind is silently aborted. This still leaves the AGP region and backing pages allocated, and perhaps more importantly, the object remains upon the various lists exposing us to memory corruption. I think this is the cause behind the use-after-free, such as Bug 15664 - Graphics hang and kernel backtrace when starting Azureus with Compiz enabled https://bugzilla.kernel.org/show_bug.cgi?id=15664 v2: Daniel Vetter reminded me that kernel space programming is never easy. We cannot simply spin to clear the pending signal and so must deferred the freeing of the object until later. v3: Run from the top level retire requests. v4: Tested with P(return -ERESTARTSYS)=.5 from i915_gem_do_wait_request() v5: Rebase against Eric's for-linus tree. v6: Refactor, split and add a comment about avoiding unbounded recursion. Signed-off-by: Chris Wilson Cc: Daniel Vetter Signed-off-by: Eric Anholt commit b09a1feca65764311f8a3e14befb52b98d705f0a Author: Chris Wilson Date: Fri Jul 23 23:18:49 2010 +0100 drm/i915: Refactor i915_gem_retire_requests() Combine the iteration over active render rings into a common function. This is in preparation for reusing the idle function to also retire deferred free requests. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit b9421ae8f30958deea98d71477b4a77a066856b4 Author: Chris Wilson Date: Mon Jul 19 21:46:08 2010 +0100 drm/i915: Warn if we run out of FIFO space for a mode Signed-off-by: Chris Wilson Cc: Jesse Barnes Signed-off-by: Eric Anholt commit 8de9b311bcd117a97998574705829bd48bfa2971 Author: Chris Wilson Date: Mon Jul 19 19:59:52 2010 +0100 drm/i915: Round up the watermark entries (v3) Even though "we have enough padding that it should be ok", round up the watermark entries to the next unit to be on the safe side... v2: Use the DIV_ROUND_UP macro v3: Spotted a few more missing round-ups. Signed-off-by: Chris Wilson Cc: Jesse Barnes Signed-off-by: Eric Anholt commit d79613643b4512962b2be5262a09b6694dd96101 Author: Chris Wilson Date: Tue Jul 13 13:52:17 2010 +0100 drm/i915: Typo in (unused) register mask for overlay. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit a1efd14a99483a4fb9308902397ed86b69454c99 Author: Chris Wilson Date: Mon Jul 12 19:35:38 2010 +0100 drm/i915: Check overlay stride errata for i830 and i845 Apparently i830 and i845 cannot handle any stride that is not a multiple of 256, unlike their brethren which do support 64 byte aligned strides. Signed-off-by: Chris Wilson Cc: stable@kernel.org Signed-off-by: Eric Anholt commit 7de56f43e06ec6e17f548dfb359d395adbfbb87d Author: Zhao Yakui Date: Mon Jul 19 09:43:14 2010 +0100 drm/i915: Validate the mode for eDP by using fixed panel size Signed-off-by: Zhao Yakui Reviewed-by: Chris Wilson Cc: stable@kernel.org Signed-off-by: Eric Anholt commit 0d3a1beecfa54b938edf3ed046902f072e1e180a Author: Zhao Yakui Date: Mon Jul 19 09:43:13 2010 +0100 drm/i915: Always use the fixed panel timing for eDP Signed-off-by: Zhao Yakui Reviewed-by: Chris Wilson Cc: stable@kernel.org Signed-off-by: Eric Anholt commit 1fc7947898e3c407a20e130458e30cc45aa3335c Author: Zhao Yakui Date: Mon Jul 19 09:43:12 2010 +0100 drm/i915: Enable panel fitting for eDP When trying to set other display mode besides the fixed panel mode, the panel fitting should be enabled. This is similar to LVDS. Signed-off-by: Zhao Yakui Reviewed-by: Chris Wilson Cc: stable@kernel.org Signed-off-by: Eric Anholt commit b9efc4804b1e61ee01a0d824c5d27bfdb518fffe Author: Zhao Yakui Date: Mon Jul 19 09:43:11 2010 +0100 drm/i915: Add fixed panel mode parsed from EDID for eDP without fixed mode in VBT Signed-off-by: Zhao Yakui Reviewed-by: Chris Wilson Cc: stable@kernel.org Signed-off-by: Eric Anholt commit 81a14b46846fea0741902e8d8dfcc6c6c78154c8 Author: Adam Jackson Date: Fri Jul 16 14:46:32 2010 -0400 drm/i915/sdvo: Set sync polarity based on actual mode Signed-off-by: Adam Jackson Signed-off-by: Eric Anholt commit b599c0bca1e08a89a7fc4305bc84f4be30ada368 Author: Adam Jackson Date: Fri Jul 16 14:46:31 2010 -0400 drm/i915/hdmi: Set sync polarity based on actual mode Signed-off-by: Adam Jackson Signed-off-by: Eric Anholt commit d6d952689a48375afb97f619f77d548f16d45a92 Author: Adam Jackson Date: Fri Jul 16 14:46:30 2010 -0400 drm/i915/pch: Set transcoder sync polarity for DP based on actual mode Signed-off-by: Adam Jackson Signed-off-by: Eric Anholt commit cb0953d734348e8862d6d7edc666cfb3bf6d8fae Author: Adam Jackson Date: Fri Jul 16 14:46:29 2010 -0400 drm/i915: Initialize LVDS and eDP outputs before anything else This makes them sort to the front in X, which makes them likely to be the primary outputs if you haven't specified a preference in your DE, which is likely to be what you want. Signed-off-by: Adam Jackson Signed-off-by: Eric Anholt commit b329530ca7cdf6bf014f2124efd983e01265d623 Author: Adam Jackson Date: Fri Jul 16 14:46:28 2010 -0400 drm/i915/dp: Correctly report eDP in the core connector type Do this for both real eDP and for PCH_DP_D when used as the eDP connection. Signed-off-by: Adam Jackson Signed-off-by: Eric Anholt commit f091737978251811e34e7813ba4bfae5cae0b810 Author: Adam Jackson Date: Fri Jul 16 14:46:27 2010 -0400 drm/i915/dp: Rename has_edp to is_pch_edp to reflect its real meaning Signed-off-by: Adam Jackson Signed-off-by: Eric Anholt commit 49be663f9952d0fc50bb0a4a75c3fd201e40ec59 Author: Chris Wilson Date: Sun Jul 18 12:05:54 2010 +0100 drm/i915: Refactor panel fitting on the LVDS. (v2) Move the common routines into separate functions to not only increase readability, but also throwaway surplus code. In doing so, we review the calculation of the aspect preserving scaling and avoid the use of fixed-point until we need to calculate the accurate scale factor. v2: Improve comments as suggested by Jesse. 1 files changed, 105 insertions(+), 194 deletions(-) Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Eric Anholt commit 71677043350874c55f60dce06a03ab61e3af6e93 Author: Chris Wilson Date: Sat Jul 17 13:38:43 2010 +0100 drm/i915: Remove the redundant check for a fixed_panel_mode We already checked just a couple of lines above that we have found a fixed_panel_mode for the LVDS, so remove the surplus check. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 4f444071702bf0b76cfb381150cf0fc8cacdc931 Author: Jesse Barnes Date: Wed Jul 21 13:57:47 2010 -0700 drm/i915: apply DP bandwidth workaround for PCH eDP as well Fixes https://bugs.freedesktop.org/show_bug.cgi?id=29141 though the workaround itself is still a bit of a mystery. Tested-by: Adam Hill Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit 831cd4453598b2c8e193f077023910c6b0c39558 Author: Chris Wilson Date: Sat Jul 24 18:29:37 2010 +0100 agp/intel: Destroy the scatterlist on allocation failure A side-effect of being able to use custom page allocations with the sg_table is that it cannot reap the partially constructed scatterlist if fails to allocate a page. So we need to call sg_free_table() ourselves if sg_alloc_table() fails. Signed-off-by: Chris Wilson Cc Dave Airlie Signed-off-by: Eric Anholt commit 2bd34f6ca86b5a5f9b749624f73310820e7a93fd Merge: a2757b6 9fe6206 Author: Eric Anholt Date: Sun Aug 1 19:23:53 2010 -0700 Merge remote branch 'origin/master' into drm-intel-next This resolves the conflict in the EDP code, which has been rather popular to hack on recently. Conflicts: drivers/gpu/drm/i915/intel_dp.c commit a2757b6fab6dee3dbf43bdb7d7226d03747fbdb1 Author: Zhenyu Wang Date: Fri Jul 9 10:45:17 2010 -0700 agp/intel: Add actual definitions of the Sandybridge PTE caching bits. commit 3869d4a8afd3ce97770e66d6a96672af93984cc2 Author: Zhenyu Wang Date: Fri Jul 9 10:40:58 2010 -0700 agp/intel: Support the extended physical addressing bits on Sandybridge. Signed-off-by: Zhenyu Wang [anholt: Split this patch out of a larger patch for Sandybridge fixes] Signed-off-by: Eric Anholt commit 6103da0d03d5f185070be50a0cb8813f6bf30dc1 Author: Chris Wilson Date: Mon Jul 5 18:01:47 2010 +0100 drm/i915: Include any alternate names by which the device is known. When trying to keep track of features between the kernel, the 2D driver, mesa and the specs, it helps to list any other name by which the device is referred to. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 534843dabf79da40561148764916e1b2e6bbcebe Author: Chris Wilson Date: Mon Jul 5 18:01:46 2010 +0100 drm/i915: Use 128k alignment for untiled display surface on i965 (v2) The original i965, including the revised G35 and Q35, requires an alignment of 128K for the display surface with linear memory, so increase the requirement from 64k for these chipsets. For the later chipsets in the i965 family, only a 4k alignment is required. (So long as we do not start performing asynchronous flips.) Note the impact of this should be slight as on i965 we should be using a tiled frontbuffer for anything up to a 4096x4096 display. v2: compilation fixes and note that the docs do not exclude the G35 from the extra alignment. Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Eric Anholt commit e1a4474349997d722e4ae64e40a68feb25307109 Author: Adam Jackson Date: Fri Jun 25 15:32:14 2010 -0400 drm/i915/pch: Cosmetic fix to FDI link training Unmask the bits for link training reporting before starting link training. If stage 1 training finished before we unmask them, then we'd spin around in a loop a few times until smashing on through. Which is harmless, since training _did_ succeed, it just looks ugly in dmesg. Signed-off-by: Adam Jackson Signed-off-by: Eric Anholt commit 2991196fbc19f68206eb81694e9ef338366ebc53 Author: Dan Carpenter Date: Wed Jun 23 19:29:54 2010 +0200 drm/i915: cleanup: use ARRAY_SIZE() NUM_TV_MODES is the same as ARRAY_SIZE(tv_modes). In the end, I decided it was cleaner to remove NUM_TV_MODES and just use ARRAY_SIZE(tv_modes) through out. Signed-off-by: Dan Carpenter Signed-off-by: Eric Anholt commit cbb465e72ae2cf37d252284c28a0d89ddfaaa240 Author: Chris Wilson Date: Sun Jun 6 12:16:24 2010 +0100 drm/i915: Include instdone[1] in hangcheck References: Bug 26691 - Spurious hangcheck whilst executing a long shader over a large vertex buffer https://bugs.freedesktop.org/show_bug.cgi?id=26691 Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 0b3400040d189b129e9770b7ea2e38729e3d75c4 Author: Chris Wilson Date: Sun Jun 6 13:21:26 2010 +0100 drm/i915: Remove the WARN when failing to set tiling. We generally issue an error message at the point of failure, and so this warning with a fairly pointless stacktrace is superfluous and ugly. Needless to say, the common trigger for this WARN happens to be EIO where this is pure noise. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 2377b741abec485449d145e5065dd2b7dd64226f Author: Jesse Barnes Date: Wed Jul 7 14:06:43 2010 -0700 drm/i915: fix FDI frequency check Since mode->clock is in kHz we should be checking against 2700000 instead of just 27000. This patch gets my x201s working again (well working as well as it ever was anyway). When looking for this I also noticed we set link_bw to 270000, but the calculation is different. Does it also need to use kHz or we using 10kHz internally? Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit 3ca87e82831f040986f27aef44fc61c8ddf6ee79 Author: Chris Wilson Date: Sun Jun 6 15:40:23 2010 +0100 drm/i915: Sparse warning about invalid value for burst_ena in tv_modes drivers/gpu/drm/i915/intel_tv.c|479 col 16| warning: cast truncates bits from constant value (8 becomes 0) Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit d312ec251769dc2ad6c9bd9856a756c6097ab63c Author: Chris Wilson Date: Sun Jun 6 15:40:22 2010 +0100 drm/i915: Sparse warns about the incorrect sign for storing bit17 Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit b4b78d12d7c5108b9a71752b59dcc51b11cd9ea6 Author: Chris Wilson Date: Sun Jun 6 15:40:20 2010 +0100 drm/i915: Silence sparse over non-static local structure. drivers/gpu/drm/i915/i915_drv.c|485 col 25| warning: symbol 'i915_pm_ops' was not declared. Should it be static? Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 2d3fa0de689e1a53fdfc3db50732b62e58d0ca6b Author: Chris Wilson Date: Sun Jun 6 15:40:19 2010 +0100 drm/i915: Silence sparse over duplicate members in static initializer drivers/gpu/drm/i915/i915_drv.c|100 col 18| warning: Initializer entry defined twice drivers/gpu/drm/i915/i915_drv.c|101 col 3| also defined here drivers/gpu/drm/i915/i915_drv.c|117 col 18| warning: Initializer entry defined twice drivers/gpu/drm/i915/i915_drv.c|118 col 3| also defined here Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 11824e8c4e8a1279ee209173da777b2295b72e82 Author: Chris Wilson Date: Sun Jun 6 15:40:18 2010 +0100 drm/i915: Silence sparse complaints over insufficient bitfield int types. drivers/gpu/drm/i915/i915_drv.h|676 col 19| warning: dubious bitfield without explicit `signed' or `unsigned' drivers/gpu/drm/i915/i915_drv.h|712 col 19| warning: dubious bitfield without explicit `signed' or `unsigned' Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 2dafb1e082c541d4bc0f275a6ffa9c39da690f01 Author: Chris Wilson Date: Mon Jun 7 14:03:05 2010 +0100 drm/i915: Propagate error from i915_gem_object_flush_gpu_write_domain() Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 96b099fd6d64389e619dbf7ca9059bf16e441f6b Author: Chris Wilson Date: Mon Jun 7 14:03:04 2010 +0100 drm/i915: Propagate error from drm_vblank_get() during page-flipping. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 5f35308bab7efd8c03e4bb4feea07f9b94138c3c Author: Chris Wilson Date: Mon Jun 7 14:03:03 2010 +0100 drm/i915: Propagate error from drm_install_irq() during EnterVT Simple fix for error propagation along the old UMS path. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 7aa69d2ee7e1ecff104fc068585f21af45582982 Author: Nicolas Kaiser Date: Tue Jun 8 21:18:06 2010 +0200 drm/i915: Typo in #define checkpatch complains about this define: WARNING: space prohibited between function name and open parenthesis '(' +#define GEN6_RENDER TIMEOUT_COUNTER_EXPIRED (1 << 6) Signed-off-by: Nicolas Kaiser Acked-by: Zhenyu Wang Signed-off-by: Eric Anholt commit b52eb4dcab23fe0c52a437276258e0afcf913ef5 Author: Zhao Yakui Date: Sat Jun 12 14:32:27 2010 +0800 drm/i915: Add frame buffer compression support on Ironlake mobile About 0.2W power can be saved on one HP laptop. Signed-off-by: Zhao Yakui Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit c936f44d1b2daea2fd1d52300cab792abe01e28c Author: Zhao Yakui Date: Sat Jun 12 14:32:26 2010 +0800 drm/i915: Calculate cursor watermark under non-SR state for Ironlake The hardware team suggest that the "large buffer" method should be used to calculate the cursor watermark under non-SR state as well, which is to avoid the flicker when FBC is enabled on Ironlake. Signed-off-by: Zhao Yakui Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 4fe5e61180d8ea2268d6e64972d90efbe2bab4aa Author: Zhao Yakui Date: Sat Jun 12 14:32:25 2010 +0800 drm/i915: Apply self-refresh watermark calculation for cursor plane In SR mode cursor plane watermark calculation uses same formula like display plane. This one fixes the case for 965G and G45. Signed-off-by: Zhao Yakui Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 1b07e04e9cd443fc333f4036d129ba7c08d340c4 Author: Zhao Yakui Date: Sat Jun 12 14:32:24 2010 +0800 drm/i915: Fix fifo size for self-refresh watermark on 965G The total self-refresh fifo entry size for display plane is 512 instead of 128 for 965G. Also fix WM value mask for 965G. About 1.0W power can be saved on one T61 laptop after the self-refresh watermark is configured correctly. Signed-off-by: Zhao Yakui Signed-off-by: Zhenyu wang Signed-off-by: Eric Anholt commit fa143215b11056b878875f87edac78a1cfb9d1c0 Author: Zhao Yakui Date: Sat Jun 12 14:32:23 2010 +0800 drm/i915: Fix watermark calculation in self-refresh mode For self-refresh mode WM calculation's "line time" should use mode's htotal instead of hdisplay. "surface width" is the hdisplay for display plane and 64 for cursor plane. Signed-off-by: Zhao Yakui Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 36e83a187ca7517e9bdce7148b1c2c27661ef38f Author: Zhao Yakui Date: Sat Jun 12 14:32:21 2010 +0800 drm/i915: Add the support of eDP on DP-D for Ibex/CPT This one adds support for eDP that connected on PCH DP-D port instead of CPU DP-A port, and only DP-D port could be used for eDP. https://bugs.freedesktop.org/show_bug.cgi?id=27220 Signed-off-by: Zhao Yakui Tested-by: Jan-Hendrik Zab Tested-by: Templar Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit d874bcff793d6167c8aa3dd0c2fd00ca40ab12a2 Author: Jesse Barnes Date: Wed Jun 30 13:16:00 2010 -0700 drm/i915: remove duplicate PIPE*STAT bit definitions Having two sets has made me think I caught a bug more than once now. Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit e25e6601099d6d8e5a2221e47cdd142814616b08 Author: Jesse Barnes Date: Wed Jun 30 13:15:19 2010 -0700 drm/i915: remove unused vblank_enable var from i915_driver_irq_handler Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit 8699be3ef1d71d1c5e11eee239f53573d72515a3 Author: Ondrej Zary Date: Wed Jun 16 10:13:52 2010 +0200 intel_agp: Don't oops with zero stolen memory When "onboard video memory" is set do "disabled" in BIOS on Asus P4P800-VM board (i865G), kernel oopses with memory corruption: https://bugs.freedesktop.org/show_bug.cgi?id=28430 Fix that by cleanly aborting the initialization. Signed-off-by: Ondrej Zary Signed-off-by: Eric Anholt commit 43b27f40ebc40758a4acad03ea9fa717ba65d76e Author: Chris Wilson Date: Fri Jul 2 08:57:15 2010 +0100 drm/i915: Explosion following OOM in do_execbuffer. Oops, when merging the extra details following an OOM, I missed that driver_private is now NULL and the correct way to convert from the drm_gem_object into the drm_i915_gem_object is to use to_intel_bo(). BUG: unable to handle kernel NULL pointer dereference at 00000069 IP: [] i915_gem_do_execbuffer+0x71f/0xbb6 *pde = 00000000 Oops: 0000 [#1] SMP last sysfs file: /sys/devices/virtual/vc/vcsa3/uevent Pid: 10993, comm: X Not tainted 2.6.35-rc2+ #67 / EIP: 0060:[] EFLAGS: 00213202 CPU: 0 EIP is at i915_gem_do_execbuffer+0x71f/0xbb6 EAX: f647e8a8 EBX: 00000000 ECX: 00000003 EDX: 00000000 ESI: 00424000 EDI: 00000000 EBP: f6508e48 ESP: f6508dd4 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 Process X (pid: 10993, ti=f6508000 task=f6432880 task.ti=f6508000) Stack: f6508de0 f7130000 00000001 00000000 00000000 f647e8a8 00000000 f64f8480 <0> f7974414 00000000 00000006 00000000 00000000 f6578000 00000008 00000006 <0> f6797880 00400000 00000000 ffffffe4 f7974400 000000d0 000000d0 000001c0 Call Trace: [] ? i915_gem_execbuffer2+0xa1/0xe7 [] ? drm_ioctl+0x22c/0x2fa [] ? i915_gem_execbuffer2+0x0/0xe7 [] ? do_sync_read+0x8f/0xca [] ? vfs_ioctl+0x2c/0x96 [] ? drm_ioctl+0x0/0x2fa [] ? do_vfs_ioctl+0x429/0x45a [] ? fsnotify_access+0x54/0x5f [] ? vfs_read+0x9a/0xae [] ? sys_ioctl+0x33/0x4d [] ? sysenter_do_call+0x12/0x26 Code: d0 89 4d c4 31 c9 89 45 d8 eb 44 8b 45 cc 8b 14 88 8b 42 50 89 45 bc 8b 45 a0 8b 52 38 89 55 d0 31 d2 f6 40 20 01 74 0d 8b 55 bc 42 69 30 0f 95 c2 0f b6 d2 8b 45 d0 c7 45 d4 00 00 00 00 89 EIP: [] i915_gem_do_execbuffer+0x71f/0xbb6 SS:ESP 0068:f6508dd4 CR2: 0000000000000069 ---[ end trace 3f1d514b34d39381 ]--- Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt commit 0544edfdc3b8f172944c26b9961ca120feb04798 Author: Thomas Bächler Date: Fri Jul 2 10:44:23 2010 +0200 gpu/drm/i915: Add a blacklist to omit modeset on LID open On some machines (currently only the Toshiba Tecra A11 is known), the GPU locks up when modeset is forced on LID open. This patch adds a new DMI blacklist and omits modesetting for all matches. Fixes https://bugzilla.kernel.org/show_bug.cgi?id=15550 Signed-off-by: Thomas Bächler Reviewed-by: Jesse Barnes Signed-off-by: Eric Anholt commit ab9e1f5966591dc3e811418e96ba04f284c52458 Author: Dave Airlie Date: Tue Jul 13 11:11:11 2010 +1000 drm/radeon: add basic zmask/hiz support (v4) This interface allows userspace to request hyperz support, it probably needs more locking, and really reporting that you can have hyperz is racy since someone else might get it before you do. v2: modify so we pass 0 valued packets to let DDX/r300c keep working. also fixed incorrect 0x4f1c reference. v3: fixup zb_bw_cntl so older drivers keep working v4: add locking, fixup SC_HYPERZ_EN - patch stream to disable hiz Signed-off-by: Dave Airlie commit d9fdaafbe912a34ef06ed569c6606fe2811f325b Author: Dave Airlie Date: Mon Aug 2 10:42:55 2010 +1000 drm/radeon/kms: move a bunch of modesetting debug to correct debug usage. This migrates a bunch of DRM_DEBUG->DRM_DEBUG_KMS so we can get more modesetting related info without all the other ioctl handling easily. Also the PM code moves to DRM_DEBUG_DRIVER mostly. Signed-off-by: Dave Airlie commit d6486813d2d0658c34f62212ba9a64be4d01c317 Merge: 7827627 0599111 Author: Dave Airlie Date: Mon Aug 2 10:31:47 2010 +1000 Merge remote branch 'nouveau/for-airlied' of ../drm-nouveau-next into drm-core-next * 'nouveau/for-airlied' of ../drm-nouveau-next: (77 commits) drm/nouveau: set TASK_(UN)INTERRUPTIBLE before schedule_timeout() drm/nv50: fix some not-error error messages drm/nouveau: introduce gpio engine drm/nv50: correct wait condition for instmem flush drm/nouveau: Fix TV-out detection on unposted cards lacking a usable DCB table. drm/nouveau: Get rid of the remaining VGA CRTC locking. drm/nouveau: Move display init to a new nouveau_engine. drm/nouveau: Put back the old 2-messages I2C slave test. drm/nouveau: Reset AGP before running the init scripts. drm/nv30: Init the PFB+0x3xx memory timing regs. drm/nouveau: disable hotplug detect around DP link training drm/nv50: add function to control GPIO IRQ reporting drm/nouveau: add nv_mask register accessor drm/nouveau: fix build without CONFIG_ACPI drm/nouveau: Reset CRTC owner to 0 before BIOS init. drm/nouveau: No need to lock/unlock the VGA CRTC regs all the time. drm/nouveau: Remove useless CRTC_OWNER logging. drm/nouveau: Add some generic I2C gadget detection code. drm/i2c/ch7006: Don't assume that the specified config points to static memory. drm/nv04-nv3x: Implement init-compute-mem. ... Conflicts: drivers/gpu/drm/nouveau/nouveau_bios.c commit 7827627107aeb629f1a056cb56b17bd4fb789e03 Merge: e190bfe 219de62 Author: Dave Airlie Date: Mon Aug 2 10:24:46 2010 +1000 Merge branch 'drm-radeon-next' of ../drm-radeon-next into drm-core-next * 'drm-radeon-next' of ../drm-radeon-next: (333 commits) drm/radeon/kms: trivial code style fixes for audio drm/radeon: remove viewport transform from r6xx/r7xx blit emit drm/radeon: group r6xx/r7xx newly sequential blit state drm/radeon: reorder r6xx/r7xx blit state emit to make more regs sequential drm/radeon: r6xx/r7xx move vport clipping to a single packet drm/radeon: group r6xx/r7xx sequential blit state drm/radeon: remove duplicate state emit in r6xx/r7xx blit drm/radeon: add comments to r6xx/r7xx blit state drm/radeon/kms/r7xx: add workaround for hw issue with HDP flush drm/radeon/kms: remove rs4xx gart limit drm: radeon: fix sign bug drm/radeon/kms: check/restore sanity before doing anything else with GPU. drm/radeon: fall back to GTT if bo creation/validation in VRAM fails. drm/radeon/kms: add ioport register access drm/radeon/kms: enable HDMI audio on RS600/RS690/RS740 drm/radeon/kms: track audio engine state, do not use not setup timer drm/radeon/kms/r6xx+: add query for tile config (v2) drm/radeon/kms: fix CS alignment checking for tiling (v2) drm/radeon/kms: add tiling support to the cs checker for r6xx/r7xx drm/radeon/kms: Add crtc tiling setup support for evergreen ... commit e190bfe56841551b1ad5abb42ebd0c4798cc8c01 Author: Francisco Jerez Date: Thu Jul 22 17:06:18 2010 +0200 drm: Import driver for the sil164 I2C TMDS transmitter. sil164 transmitters are used for DVI outputs on Intel/nvidia and ATI setups. So far only nouveau can use this driver. Signed-off-by: Francisco Jerez Tested-by: Patrice Mandin Signed-off-by: Dave Airlie commit a7b98b6748efdddd832b39662801c9f828df1813 Author: Nicolas Kaiser Date: Fri Jul 9 16:47:28 2010 +0200 drm/sis: fixed brace and spacing coding style issues Fixed brace and spacing coding style issues. Signed-off-by: Nicolas Kaiser Signed-off-by: Dave Airlie commit bc5e9d6a22f49fb4a7a5ec385062d1eb473bfec4 Author: Nicolas Kaiser Date: Mon Jul 12 13:44:23 2010 +0200 drm/r128: fixed brace and spacing coding style issues Fixed brace and spacing coding style issues. Signed-off-by: Nicolas Kaiser Signed-off-by: Dave Airlie commit f2b2cb790ee873b6853ec99478d68dd9cd083132 Author: Nicolas Kaiser Date: Mon Jul 12 01:46:57 2010 +0200 drm/mga: fixed brace, macro and spacing coding style issues Fixed brace, macro and spacing coding style issues. Signed-off-by: Nicolas Kaiser Signed-off-by: Dave Airlie commit 58c1e85af3645ac8df021dbf14acd215b5687f54 Author: Nicolas Kaiser Date: Sun Jul 11 15:32:42 2010 +0200 drm/via: fixed coding style issues, simplified return Fixed brace, macro and spacing coding style issues. Simplified -if (ret) return ret; -return 0; +return ret; Signed-off-by: Nicolas Kaiser Signed-off-by: Dave Airlie commit 219de62a1627247fca10789f28902f66cb0b408f Author: Rafał Miłecki Date: Fri Jun 25 21:24:20 2010 +0200 drm/radeon/kms: trivial code style fixes for audio Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 5649911316c89b6cf7963b521ec5e9287f8667a7 Author: Nicolas Kaiser Date: Thu Jul 15 00:14:43 2010 +0200 drm/i830: fixed brace and spacing coding style issues Fixed brace and spacing coding style issues. Signed-off-by: Nicolas Kaiser Signed-off-by: Dave Airlie commit aca791c28a0fb884a020f75c8e4361af58f068ae Author: Nicolas Kaiser Date: Wed Jul 14 21:54:13 2010 +0200 drm/i810: fixed coding style issues Fixed brace, macro and spacing coding style issues, and a C99 comment. Signed-off-by: Nicolas Kaiser Signed-off-by: Dave Airlie commit 6e35023ffad0ee74689710f0e81ee80c1019f93b Author: Chris Wilson Date: Sat Jul 24 18:29:36 2010 +0100 drm: Free devname along with master->unique The device name is tightly coupled and created at the same time as the master->unique address, so we need to free it with the master. Currently we overwrite it each time we create a new master: unreferenced object 0xe32c54b0 (size 32): comm "Xorg", pid 1455, jiffies 4294721798 (age 3196.879s) hex dump (first 32 bytes): 69 39 31 35 40 70 63 69 3a 30 30 30 30 3a 30 30 i915@pci:0000:00 3a 30 32 2e 30 00 6b 6b 6b 6b 6b 6b 6b 6b 6b a5 :02.0.kkkkkkkkk. backtrace: [] create_object+0x124/0x1f1 [] kmemleak_alloc+0x4c/0x90 [] __kmalloc+0x155/0x175 [] drm_setversion+0x11d/0x1b1 [drm] [] drm_ioctl+0x29a/0x356 [drm] [] vfs_ioctl+0x33/0x91 [] do_vfs_ioctl+0x46b/0x496 [] sys_ioctl+0x46/0x66 [] sysenter_do_call+0x12/0x38 [] 0xffffffff Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit ddd3d069c08bb1ba83aa4d522fc1360ce4afc270 Author: Chris Wilson Date: Sat Jul 24 22:28:25 2010 +0100 drm: Free the idr layers before calling idr_destroy() /* A typical clean-up sequence for objects stored in an idr tree, will * use idr_for_each() to free all objects, if necessary, then * idr_remove_all() to remove all ids, and idr_destroy() to free * up the cached idr_layers. */ We were missing the vital idr_rmove_all() step and so were leaking the used layers for every dri client: unreferenced object 0xf32133c0 (size 148): comm "plymouthd", pid 131, jiffies 4294678490 (age 2308.030s) hex dump (first 32 bytes): 04 00 00 00 00 00 00 00 00 00 00 00 00 40 19 f3 .............@.. 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace: [] create_object+0x124/0x1f1 [] kmemleak_alloc+0x4c/0x90 [] kmem_cache_alloc+0xee/0x13c [] idr_pre_get+0x24/0x61 [] drm_gem_handle_create+0x27/0x7f [drm] [] i915_gem_create_ioctl+0x4f/0x71 [i915] [] drm_ioctl+0x272/0x356 [drm] [] vfs_ioctl+0x33/0x91 [] do_vfs_ioctl+0x46b/0x496 [] sys_ioctl+0x46/0x66 [] sysenter_do_call+0x12/0x38 [] 0xffffffff Fixes https://bugzilla.kernel.org/show_bug.cgi?id=15803 Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit 05991110cf94117dd488f6d64dabdea56ff35107 Author: Kulikov Vasiliy Date: Mon Jul 26 12:23:54 2010 +0400 drm/nouveau: set TASK_(UN)INTERRUPTIBLE before schedule_timeout() set_current_state() is called only once before the first iteration. After return from schedule_timeout() current state is TASK_RUNNING. If we are going to wait again, set_current_state() must be called. Signed-off-by: Kulikov Vasiliy Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit c39721c775f7ac20af5ff1cbbd11f80aeec91baa Author: Chris Wilson Date: Sat Jul 24 17:15:11 2010 +0100 drm/vmgfx: operation on ‘par->dirty.y1’ may be undefined Trivial fix to set y1 = y2 = 0. Signed-off-by: Chris Wilson Cc: Jakob Bornecrantz Signed-off-by: Dave Airlie commit b417cc117a104ea457be18cfde9df9d69c21fa62 Author: Alex Deucher Date: Tue Jul 27 11:01:15 2010 -0400 drm/radeon: remove viewport transform from r6xx/r7xx blit emit We aren't using it, so no need. Save additional dwords. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 43a7d2d104f26700c0cc070e5a317a51cd1b46c1 Author: Alex Deucher Date: Tue Jul 27 11:20:54 2010 -0400 drm/radeon: group r6xx/r7xx newly sequential blit state group state that is emitted sequentially into fewer packets. This saves a number of dwords. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d0623a3e74610aff0b984d68bbc027a7e511e686 Author: Alex Deucher Date: Tue Jul 27 11:17:44 2010 -0400 drm/radeon: reorder r6xx/r7xx blit state emit to make more regs sequential Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 363c6a16e30464fddcb8f82b7e8f44109729cc95 Author: Alex Deucher Date: Mon Jul 26 13:47:54 2010 -0400 drm/radeon: r6xx/r7xx move vport clipping to a single packet Saves lots of dwords in blit emit Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit eb544433c368ad95615af168bfb2fedfc5e9ddb1 Author: Alex Deucher Date: Tue Jul 27 18:57:06 2010 -0400 drm/radeon: group r6xx/r7xx sequential blit state group state that is emitted sequentially into fewer packets. This saves a number of dwords. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 7fc8878c3398a71c39e23ae1d9d56ba1f9e8c97d Author: Alex Deucher Date: Tue Jul 27 11:11:19 2010 -0400 drm/radeon: remove duplicate state emit in r6xx/r7xx blit Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 8c119e9c3b85cb61c1b2bfd616061662367e9240 Author: Alex Deucher Date: Mon Jul 26 12:39:00 2010 -0400 drm/radeon: add comments to r6xx/r7xx blit state Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 812d046915f48236657f02c06d7dc47140e9ceda Author: Alex Deucher Date: Mon Jul 26 18:51:53 2010 -0400 drm/radeon/kms/r7xx: add workaround for hw issue with HDP flush Use of HDP_*_COHERENCY_FLUSH_CNTL can cause a hang in certain situations. Add workaround. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 833ee5c4ab36937a99e63935d7f06bc2c1f9343b Author: Alex Deucher Date: Fri Jul 16 10:39:16 2010 -0400 drm/radeon/kms: remove rs4xx gart limit We used to limit the rs4xx gart aperture to 32 MB, but I suspect that was due to not meeting the alignment requirements of the aperture. This patch should only be applied after: "drm/radeon/kms: fix gtt MC base alignment on rs4xx/rs690/rs740 asics" has been applied. This patch should probably soak for a bit in d-r-t. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d656ae53f64cb0f01dac8a02c4d31453d64ef97c Merge: 167ffc4 b37fa16 Author: Dave Airlie Date: Mon Aug 2 10:05:18 2010 +1000 Merge tag 'v2.6.35-rc6' into drm-radeon-next Need this to avoid conflicts with future radeon fixes commit 167ffc44caaee68ea60dadf6931a4d195a4ed1f0 Author: Dan Carpenter Date: Sat Jul 17 12:28:02 2010 +0200 drm: radeon: fix sign bug The "error" variable is unsigned so it's never less than zero. I changed it to check if (freq < current_freq) directly. "best_error" is also unsigned so "best_error - 100" could be a large number instead of a negative. Since "error" is unsigned it is never less than a negative and so the cases where "best_error" is less than or equal to 100 are false. Signed-off-by: Dan Carpenter Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit 4c712e6c7ef19e7e8e1f38b27bb65290def39b40 Author: Dave Airlie Date: Thu Jul 15 12:13:50 2010 +1000 drm/radeon/kms: check/restore sanity before doing anything else with GPU. On systems using kexec, the new kernel is booted straight from the old kernel, without any warning to the graphics driver. So the GPU is basically left as-is in a running state, however the CPU side is completly reset. Without stating the saneness of anyone using kexec on live systems, we should at least try not to crash the GPU. This patch resets 3 registers to 0 that could cause bad things to happen to the running system. This allows kexec to work on a Power6/RN50 system. Signed-off-by: Dave Airlie commit e376573f7267390f4e1bdc552564b6fb913bce76 Author: Michel Dänzer Date: Thu Jul 8 12:43:28 2010 +1000 drm/radeon: fall back to GTT if bo creation/validation in VRAM fails. This fixes a problem where on low VRAM cards we'd run out of space for validation. [airlied: Tested on my M7, Thinkpad T42, compiz works with no problems.] Signed-off-by: Michel Dänzer Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 351a52a2414d2b104269755c86b476863c248034 Author: Alex Deucher Date: Wed Jun 30 11:52:50 2010 -0400 drm/radeon/kms: add ioport register access This is required for the NB_MISC regs on rs780/rs880 which means HDMI/DVI/DP ports using PCIEPHY won't work without it. It might also help with s/r (asic init) issues on other atombios cards. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=28774 and similar issues reported by Alberto Milone. [airlied: Squash io fix patch] Signed-off-by: Alex Deucher Tested-by: Rafał Miłecki Signed-off-by: Dave Airlie commit fe50ac78a6ec20db267b32e27a1d191128eaaa46 Author: Rafał Miłecki Date: Sat Jun 19 12:24:57 2010 +0200 drm/radeon/kms: enable HDMI audio on RS600/RS690/RS740 We will need method of selecting encoder that should receive HDMI block. For now we assign HDMI block to first enabled encoder. Hopefully there are not many RS6x0 chips with two digital encoders. [airlied: add RS740 checks as per Alex suggestion.] Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 7eea7e9eea106a9c49cddf780f590dd8161481fa Author: Rafał Miłecki Date: Sat Jun 19 12:24:56 2010 +0200 drm/radeon/kms: track audio engine state, do not use not setup timer This is needed to enable audio support on devices using polling. In case user decides to disable audio (module parameter) we still will try to use timer in r600_audio_enable_polling. This would lead to BUG in kernel/timer.c. Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit e7aeeba6a8fb86ac52bcffa0b72942f784f2b37f Author: Alex Deucher Date: Fri Jun 4 13:10:12 2010 -0400 drm/radeon/kms/r6xx+: add query for tile config (v2) Userspace needs this information to access tiled buffers via the CPU. v2: rebased on evergreen accel changes Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 40e2a5c15d09e02a71711735564151c789f95032 Author: Alex Deucher Date: Fri Jun 4 18:41:42 2010 -0400 drm/radeon/kms: fix CS alignment checking for tiling (v2) Covers depth, cb, and textures. Hopefully I got this right. v2: - fix bugs: https://bugs.freedesktop.org/show_bug.cgi?id=28327 https://bugs.freedesktop.org/show_bug.cgi?id=28381 - use ALIGNED(), IS_ALIGNED() macros Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 7f813377203a60be01a3354664edc5d3c746100d Author: Alex Deucher Date: Thu May 20 12:43:52 2010 -0400 drm/radeon/kms: add tiling support to the cs checker for r6xx/r7xx Check for relocs for DB_DEPTH_INFO, CB_COLOR*_INFO, and texture resources. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 97d663285322b3db05613d274b1eb3f9806f37ca Author: Alex Deucher Date: Thu May 20 12:12:48 2010 -0400 drm/radeon/kms: Add crtc tiling setup support for evergreen Needed for scanning out of a tiled buffer. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 40c4ac1c1931eb48ca0cf5e9ec464d13c5921994 Author: Alex Deucher Date: Thu May 20 12:04:59 2010 -0400 drm/radeon/kms: Add crtc tiling setup support for r6xx/r7xx Needed for scanning out of a tiled buffer. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 21a8122ad38c60d73fe5dc51051414c3564d174a Author: Alex Deucher Date: Fri Jul 2 12:58:16 2010 -0400 drm/radeon/kms: add support for internal thermal sensors (v3) rv6xx/rv7xx/evergreen families supported; older asics did not have an internal thermal sensor. Note, not all oems use the internal thermal sensor, so it's only exposed in cases where it is used. Note also, that most laptops use an oem specific ACPI solution for GPU thermal information rather than using the internal thermal sensor directly. v2: export millidegrees celsius, use hwmon device properly. v3: fix Kconfig Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d7a2952f1adec32018a78ec0c2f504dd72f38e25 Author: Alberto Milone Date: Tue Jul 6 11:40:24 2010 -0400 drm/radeon: Add support for the ATIF ACPI method to the radeon driver By calling the ATIF method in the radeon driver we can make sure that hotkeys such as the video switch key emit ACPI events when pressed. agd5f: fix warning Signed-off-by: Alberto Milone Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 9bd7ef5f5a5ab6088029ad95a435f03e1314275d Author: Alex Deucher Date: Wed Jun 30 14:58:59 2010 -0400 drm/radeon/kms/atom: bump atom loop timeout from 1 sec to 5 secs Some tables have delays that can cause the timeout to hit even when not intended. Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=27744 and related bugs. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 4ce9198ecf73739104b274c7c6377ef3659b3ca5 Author: Alex Deucher Date: Wed Jun 30 12:13:55 2010 -0400 drm/radeon/kms: minor driver cleanups - Make the logic in r100_pll_errata_after_index() match the other errata functions - Use rdev->family rather than rdev->flags & RADEON_FAMILY_MASK for kms - replace rn50 check using ids with ASIC_IS_RN50 convenience macro Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 752e386c247664152f2cce37915d1f50631d7f42 Author: Tejun Heo Date: Fri Jun 25 15:02:59 2010 +0200 sata_fsl,mv,nv: prepare for NCQ command completion update Make the following changes to prepare for NCQ command completion update. Changes made by this patch don't cause any functional difference. * sata_fsl_host_intr(): rename the local variable qc_active to done_mask as that's what it is. * mv_process_crpb_response(): restructure if clause for easier update. * nv_adma_interrupt(): drop unnecessary error variable. * nv_swncq_sdbfis(): drop unnecessary nr_done and return 0 on success. Typo fix. * nv_swncq_dmafis(): drop unused return value and return void. * nv_swncq_host_interrupt(): drop unnecessary return value handling. Signed-off-by: Tejun Heo Cc: Ashish Kalra Cc: Saeed Bishara Cc: Mark Lord Cc: Robert Hancock Signed-off-by: Jeff Garzik commit af4d6e257dc36646bb62adececdd10ad83323788 Author: Peter Huewe Date: Thu Jul 15 20:39:43 2010 +0200 ata: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: Jeff Garzik commit 5b6ae5ba0c45c4d04721537308728688414c9e6b Author: Tejun Heo Date: Fri Jul 30 11:42:42 2010 +0200 libata: more PCI IDs for jmicron controllers Add support for JMB364 and 369. Patch-originally-from: Aries Lee Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 213373cf974fe69e78ec894b07f45ae2f5a3a078 Author: Tejun Heo Date: Tue Jul 20 16:20:01 2010 +0200 ata_piix: fix locking around SIDPR access SIDPR window registers are shared across ports and as each access is done in two steps, accesses to different ports under EH may race. This primarily is caused by incorrect host locking in EH context and should be fixed by defining locking requirements for each EH operation which can be used during EH and enforcing them but for now work around the problem by adding a dedicated SIDPR lock and grabbing it for each SIDPR access. Signed-off-by: Tejun Heo Reported-by: Mark Knecht Reported-by: Paul Check Cc: stable@kernel.org Signed-off-by: Jeff Garzik commit 4d1f9082251a835ea387b47bb9dd26980bf8e0d0 Author: Mark Lord Date: Mon Jul 5 18:53:37 2010 -0400 [libata] update blacklist for new hyphenated pattern ranges (v2) Take further advantage of the new glob_match() function to reduce the blacklist size, this time making use of "character ranges" in the patterns. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 2f9e4d16c5b6f627670f1641b3f288d16d84b202 Author: Mark Lord Date: Mon Jul 5 10:25:45 2010 -0400 libata: allow hyphenated pattern ranges Enable use of hyphenated pattern ranges in glob_match(), similar to how shell globbing works, and how developers might expect things to work. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 728e0eaf99631d197e5158e21b4a8c4335a39231 Author: Tejun Heo Date: Fri Jul 2 14:41:24 2010 +0200 ata_generic: drop hard coded DMA force logic for CENATEK Commit 1529c69adc (ata_generic: implement ATA_GEN_* flags and force enable DMA on MBP 7,1) implemented ATA_GEN_FORCE_DMA for forcing DMA mode and applied it to CENATEK but forgot to remove the original hard coded logic. This is removal of redundant logic and doesn't affect correctness. Signed-off-by: Tejun Heo Reported-by: Andy Whitcroft Signed-off-by: Jeff Garzik commit b429dd5998d6037e0057564f3894f56aff64d661 Author: Justin P. Mattock Date: Sat Jul 3 07:29:25 2010 -0700 [libata] ahci: Fix warning: comparison between 'enum ' and 'enum ' The below patch casts ATA_MAX_QUEUE to int because GCC will give a warning message about the two different enum blocks: CC drivers/ata/ahci.o drivers/ata/ahci.c: In function 'ahci_init_one': drivers/ata/ahci.c:1045:2: warning: comparison between 'enum ' and 'enum ' Signed-off-by: Justin P. Mattock Signed-off-by: Jeff Garzik commit acad76272c6df8ea1900da334764c05a528598c3 Author: FUJITA Tomonori Date: Mon Jul 5 15:45:20 2010 +0900 [libata] add ATA_CMD_DSM to ata_get_cmd_descript Signed-off-by: FUJITA Tomonori Signed-off-by: Jeff Garzik commit 155bf48f10fc3c8e0e3125e221981328cd925cf4 Author: Abhilash Kesavan Date: Tue Jul 13 13:23:05 2010 +0900 [libata] Add Samsung PATA controller driver, pata_samsung_cf Adds support for the Samsung PATA controller. This driver is based on the Libata subsystem and references the earlier patches sent for IDE subsystem. Signed-off-by: Abhilash Kesavan Signed-off-by: Kukjin Kim Cc: Ben Dooks Acked-by: Sergei Shtylyov Signed-off-by: Jeff Garzik commit 62936009f35a6659cc3ebe0d90c754182d60da73 Author: Rupjyoti Sarmah Date: Tue Jul 6 16:36:03 2010 +0530 [libata] Add 460EX on-chip SATA driver, sata_dwc_460ex This patch enables the on-chip DWC SATA controller of the AppliedMicro processor 460EX. Signed-off-by: Rupjyoti Sarmah Signed-off-by: Mark Miesfeld Signed-off-by: Prodyut Hazarika Signed-off-by: Jeff Garzik commit 7da4c935a2a2e3a6e86458d11b06a90a3649dc81 Author: Mark Lord Date: Thu Jul 1 18:18:12 2010 -0400 libata: reduce blacklist size even more (v2) Take further advantage of the new glob_match() function to reduce the blacklist size. There are even more savings possible, but how far do we want to go with this? Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit dbaf5083bf07a1c14b15828a3aac92f0ce11543c Author: Mark Lord Date: Thu Jul 1 18:17:21 2010 -0400 libata: reduce blacklist size (v2) Take advantage of the new glob_match() function to reduce the blacklist size somewhat. There are further savings possible, but these are the most obvious biggies. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit bce036cea10a8dd21eb8c9bf1b641d8790429c8e Author: Mark Lord Date: Thu Jul 1 18:16:14 2010 -0400 libata: glob_match for ata_device_blacklist (v2) Replace rudimentry pattern matching with more capable shell-style globbing. This will enable shrinking ata_device_blacklist[] table in subsequent patches, and helps with future editions to the table, such as matching only the end of a firmware revision string etc.. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit da10a2002cf25a11f18fa1b5e327b9ed717f819c Author: Anton Vorontsov Date: Fri Jun 25 16:20:53 2010 +0400 ahci_platform: Remove unneeded ahci_driver.probe assignment The driver is using platform_driver_probe() during initialization, so ahci_driver.probe hook is never used. But it causes the following (harmless, luckily) section mismatch: WARNING: vmlinux.o(.data+0x2fb20): Section mismatch in reference from the variable ahci_driver to the function .init.text:ahci_probe() This patch removes the ahci_driver.probe assignment, thus fixes the warning. p.s. Note that there's another patch[1] from Rene Bolldorf that tried to solve the same issue by __refdata annotation. __refdata says that this reference is actually OK, but in fact it is not OK, because dereferencing .probe() will cause problems. So the proper fix is to remove the assignment. [1] http://kerneltrap.org/mailarchive/linux-kernel/2010/3/18/4549547 Signed-off-by: Anton Vorontsov Signed-off-by: Jeff Garzik commit 08354809d6c73eb73973e132502a0a4e53250971 Author: Jassi Brar Date: Fri Jun 25 18:21:19 2010 +0900 ahci_platform: Provide for vendor specific init Some AHCI implementations may use Vendor Specific HBA[A0h, FFh] and/or Port[70h, 7Fh] registers to 'prepare' for initialization. For that, the platform needs memory mapped address of AHCI registers. This patch adds the 'mmio' argument and reorders the call to platform init function. Signed-off-by: Jassi Brar Signed-off-by: Jeff Garzik commit cc05152ab72d7a65e6ea97d286af4f878c8f7371 Author: Marcin Slusarz Date: Sat Jul 31 22:51:01 2010 +0200 x86,mmiotrace: Add support for tracing STOS instruction Add support for stos access tracing with mmiotrace. Signed-off-by: Marcin Slusarz Acked-by: Pekka Paalanen Cc: Nouveau Cc: Thomas Gleixner Cc: H. Peter Anvin Cc: Ingo Molnar Cc: Steven Rostedt LKML-Reference: <20100731205101.GA5860@joi.lan> Signed-off-by: Frederic Weisbecker commit 1b0ff06e68155de606f86e7e69eb238f14e05ba0 Author: Frederic Weisbecker Date: Sun Aug 1 14:55:45 2010 +0200 perf, sched migration: Librarize task states and event headers helpers Librarize the task state and event headers helpers as they can be generally useful. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Nikhil Rao Cc: Tom Zanussi commit df92b40848616596c50b3b9e6d6ce8252af606ee Author: Frederic Weisbecker Date: Mon Jul 26 02:29:44 2010 +0200 perf, sched migration: Librarize the GUI class Export the GUI facility in the common library path. It is going to be useful for other scheduler views. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Nikhil Rao Cc: Tom Zanussi commit 699b6d922c7d07f0c1c9041b489e884b5dd5fee5 Author: Frederic Weisbecker Date: Mon Jul 26 02:02:39 2010 +0200 perf, sched migration: Make the GUI class client agnostic Make the perf migration GUI generic so that it can be reused for other kinds of trace painting. No more notion of CPUs or runqueue from the GUI class, it's now used as a library by the trace parser. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Nikhil Rao Cc: Tom Zanussi commit 70d815a3decc57c482e5384a623a859e3371e680 Author: Frederic Weisbecker Date: Sun Jul 25 23:11:51 2010 +0200 perf, sched migration: Make it vertically scrollable With scheduler traces covering more than two cpus, rectangles of the CPUs 3 and more are not visibles. This makes the vertical navigation scrollable so that all of the CPUs rectangles are available. We also want to be able to zoom vertically, so that we can fit at best the screen with CPU rectangles, but that's for later. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Nikhil Rao Cc: Tom Zanussi commit 0cddf56aa841713b37c10c5ab673d6164fce9833 Author: Nikhil Rao Date: Wed Jul 21 19:46:27 2010 -0700 perf, sched migration: Parameterize cpu height and spacing Without vertical zoom, it is not possible to see all CPUs in a trace taken on a larger machine. This patch parameterizes the height and spacing of CPUs so that you can fit more cpus into the screen. Ideally we should dynamically size/space the CPU rectangles with some minimum threshold. Until then, this patch is a stop-gap. Signed-off-by: Nikhil Rao Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Tom Zanussi Signed-off-by: Frederic Weisbecker commit be6d947691376218e788418e2656fc9a3e43b9bc Author: Nikhil Rao Date: Wed Jul 21 19:46:11 2010 -0700 perf, sched migration: Fix key bindings EVT_KEY_DOWN and EVT_LEFT_DOWN events are not bound to the RootFrame event handler. As a result, zoom/scroll via keyboard events do not work. This patch adds the missing bindings. Signed-off-by: Nikhil Rao Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Tom Zanussi Signed-off-by: Frederic Weisbecker commit 207f90fc4757adc732d5ac23ad11bb90dd078754 Author: Frederic Weisbecker Date: Wed Jul 21 23:10:38 2010 +0200 perf, sched migration: Ignore unhandled task states Stop printing an error message when we don't have the letter for a given task state. All we need to know is if the task is in the TASK_RUNNING state. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Nikhil Rao Cc: Tom Zanussi commit 749e507411b17ad686783b6d1183befd846fb81b Author: Frederic Weisbecker Date: Wed Jul 21 22:45:51 2010 +0200 perf, sched migration: Handle ignored migrate out events Migrate out events may happen on tasks that are not in the runqueue, for example this is the case for tasks that are sleeping. In this case, we don't want to log the migrate out event in the source runqueue because the task is not eventually in the runqueue and we have already logged its sleep event. This fixes timeslices that spuriously propagate a sleep event from the previous timeslice. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Nikhil Rao Cc: Tom Zanussi commit 880d22f2470af6037715b7f6eb083b6ec5561d92 Author: Frederic Weisbecker Date: Tue Jul 20 21:55:33 2010 +0200 perf: New migration tool overview This brings a GUI tool that displays an overview of the load of tasks proportion in each CPUs. The CPUs forward progress is cut in timeslices. A new timeslice is created for every runqueue event: a task gets pushed out or pulled in the runqueue. For each timeslice, every CPUs rectangle is colored with a red power that describes the local load against the total load. This more red is the rectangle, the higher is the given CPU load. This load is the number of tasks running on the CPU, without any distinction against the scheduler policy of the tasks, for now. Also for each timeslice, the event origin is depicted on the CPUs that triggered it using a thin colored line on top of the rectangle timeslice. These events are: * sleep: a task went to sleep and has then been pulled out the runqueue. The origin color in the thin line is dark blue. * wake up: a task woke up and has then been pushed in the runqueue. The origin color is yellow. * wake up new: a new task woke up and has then been pushed in the runqueue. The origin color is green. * migrate in: a task migrated in the runqueue due to a load balancing operation. The origin color is violet. * migrate out: reverse of the previous one. Migrate in events usually have paired migrate out events in another runqueue. The origin color is light blue. Clicking on a timeslice provides the runqueue event details and the runqueue state. The CPU rectangles can be navigated using the usual arrow controls. Horizontal zooming in/out is possible with the "+" and "-" buttons. Signed-off-by: Frederic Weisbecker Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Li Zefan Cc: Steven Rostedt Cc: Tom Zanussi Cc: Mike Galbraith Cc: Venkatesh Pallipadi Cc: Pierre Tardy Cc: Nikhil Rao Cc: Li Zefan commit 819ce45afebd77a9de736fa5304ba8352d11dff9 Author: Frederic Weisbecker Date: Tue Jul 20 18:41:24 2010 +0200 tracing: Drop cpparg() macro Drop the cpparg() macro that wraps CPP parameters. We already have the PARAM() macro for that, no need to have several versions. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Steven Rostedt Cc: Li Zefan commit 669336e4cf3e1cb95800f3f5924558a76d723c21 Author: Frederic Weisbecker Date: Tue Jul 20 17:29:54 2010 +0200 perf: Use tracepoint_synchronize_unregister() to flush any pending tracepoint call We use synchronize_sched() to ensure a tracepoint won't be called while/after we release the perf buffers it references. But the tracepoint API has its own API for that: tracepoint_synchronize_unregister(). Use it instead as it's self-explanatory and eases maintainance. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Mathieu Desnoyers Cc: Steven Rostedt Cc: Li Zefan commit 0c2daaafcdec726e89cbccca61d576de8429c537 Author: Albrecht Dreß Date: Wed Feb 17 08:59:14 2010 +0000 powerpc/5200/i2c: improve i2c bus error recovery This patch improves the recovery of the MPC's I2C bus from errors like bus hangs resulting in timeouts: 1. make the bus timeout configurable, as it depends on the bus clock and the attached slave chip(s); default is still 1 second; 2. detect any of the cases indicated by the CF, BB and RXAK MSR flags if a timeout occurs, and add a missing (required) MAL reset; 3. use a more reliable method to fixup the bus if a hang has been detected. The sequence is sent 9 times which seems to be necessary if a slave "misses" more than one clock cycle. For 400 kHz bus speed, the fixup is also ~70us (81us vs. 150us) faster. Tested on a custom Lite5200b derived board, with a Dallas RTC, AD sensors and NXP IO expander chips attached to the i2c. Changes vs. v1: - use improved bus fixup sequence for all chips (not only the 5200) - calculate real clock from defaults if no clock is given in the device tree - better description (I hope) of the changes. I didn't split the changes in this file into three parts as recommended by Grant, as they actually belong together (i.e. they address one single problem, just in three places of one single source file). Signed-off-by: Albrecht Dreß [grant.likely@secretlab.ca: fixup for ->node to ->dev.of_node transition] Signed-off-by: Grant Likely commit 652078bac5f206c628a85a9a6598e6b8076bd8e6 Author: Adrian Alonso Date: Tue Jul 27 11:24:13 2010 +0000 of/xilinxfb: update tft compatible versions * Add tft display module compatibility for new hardware modules Signed-off-by: Adrian Alonso Signed-off-by: Grant Likely commit 8b856f040c09024aa9d1f363c1a5cf2d3db73ebd Author: Anatolij Gustschin Date: Fri Jul 23 04:00:39 2010 +0000 powerpc/fsl-diu-fb: Support setting display mode using EDID Adds support for encoding display mode information in the device tree using verbatim EDID block. If the EDID entry in the DIU node is present, the driver will build mode database using EDID data and allow setting the display modes from this database. Otherwise display mode will be set using mode entries from driver's internal database as usual. This patch also updates device tree bindings. Signed-off-by: Anatolij Gustschin Acked-by: Timur Tabi Signed-off-by: Grant Likely commit a027b33348df3512d7680eed29bada1247f01ad7 Author: Anatolij Gustschin Date: Fri Jul 23 04:00:38 2010 +0000 powerpc/5121: doc/dts-bindings: update doc of FSL DIU bindings Update compatible and interrupt properties description. Furthermore an example for the MPC5121 has been added. Signed-off-by: Anatolij Gustschin Acked-by: Timur Tabi Signed-off-by: Grant Likely commit 4b5006ec7bb73cd9d4c8a723d484b4c87fad4123 Author: Anatolij Gustschin Date: Fri Jul 23 04:00:37 2010 +0000 powerpc/5121: shared DIU framebuffer support MPC5121 DIU configuration/setup as initialized by the boot loader currently will get lost while booting Linux. As a result displaying the boot splash is not possible through the boot process. To prevent this we reserve configured DIU frame buffer address range while booting and preserve AOI descriptor and gamma table so that DIU continues displaying through the whole boot process. On first open from user space DIU frame buffer driver releases the reserved frame buffer area and continues to operate as usual. Signed-off-by: John Rigby Signed-off-by: Anatolij Gustschin Acked-by: Timur Tabi Signed-off-by: Grant Likely commit 0814a979a64a5ae61c7567496d090e204ecabd2b Author: Anatolij Gustschin Date: Fri Jul 23 04:00:36 2010 +0000 powerpc/5121: move fsl-diu-fb.h to include/linux Some DIU structures will be used in platform code in subsequent MPC5121 DIU patch, so we move this header to be able to include it elsewhere. Signed-off-by: Anatolij Gustschin Acked-by: Timur Tabi Signed-off-by: Grant Likely commit 0d9dab39fbbecfa8f78a4573a2e8eaf982f1207e Author: Anatolij Gustschin Date: Fri Jul 23 04:00:35 2010 +0000 powerpc/5121: fsl-diu-fb: fix issue with re-enabling DIU area descriptor On MPC5121e Rev 2.0 re-configuring the DIU area descriptor by writing new descriptor address doesn't always work. As a result, DIU continues to display using old area descriptor even if the new one has been written to the descriptor register of the plane. Add the code from Freescale MPC5121EADS BSP for writing descriptor addresses properly. This fixes the problem for Rev 2.0 silicon. Signed-off-by: Anatolij Gustschin Signed-off-by: Grant Likely commit 9e2089cbed7441a21d72a510897f0336afb06492 Author: Anatolij Gustschin Date: Fri Jul 23 03:50:18 2010 +0000 powerpc/512x: add clock structure for Video-IN (VIU) unit Allows using clk_get()/clk_enable()/clk_disable() for VIU clock in the v4l2 video driver. Signed-off-by: Hongjun Chen Signed-off-by: Anatolij Gustschin Signed-off-by: Grant Likely commit 12fb0eb4c963452f727752aae03bbef192abed40 Author: Anatolij Gustschin Date: Tue Jul 27 11:26:02 2010 +0000 powerpc/5121: add initial support for PDM360NG board Adds IFM PDM360NG device tree and platform code. Currently following is supported: - Spansion S29GL512P 256 MB NOR flash - ST Micro NAND 1 GiB flash - DIU, please use "fbcon=map:5 video=fslfb:800x480-32@60" at the kernel command line to enable PrimeView PM070WL3 Display support. - FEC - I2C - RTC, EEPROM - MSCAN - PSC UART, please pass "console=tty0 console=ttyPSC5,115200" on the kernel command line. - SPI, ADS7845 Touchscreen - USB0/1 Host - USB0 OTG Host/Device - VIU, Overlay/Capture support Signed-off-by: Markus Fischer Signed-off-by: Wolfgang Grandegger Signed-off-by: Michael Weiss Signed-off-by: Detlev Zundel Signed-off-by: Anatolij Gustschin Signed-off-by: Grant Likely commit 1044ea8cfd67dc70f87999906bc2849eef7b053a Author: Anatolij Gustschin Date: Fri Apr 30 10:30:47 2010 +0000 powerpc/512x: Group mpc512x board's selection menu Allow board selection in a drop-down board sub-menu like many other platforms do. Before the patch: ... [ ] Freescale MPC5121E ADS [ ] Generic support for simple MPC5121 based boards [ ] 52xx-based boards ... Patched: ... [*] 512x-based boards [ ] Freescale MPC5121E ADS [ ] Generic support for simple MPC5121 based boards [ ] 52xx-based boards ... This is a cleanup before adding new board selection entry. Signed-off-by: Anatolij Gustschin Signed-off-by: Grant Likely commit 72c511dd596cff88d6523f231a0fbb8f73006d51 Author: Brian Gerst Date: Sat Jul 31 12:48:23 2010 -0400 x86-32, asm: Directly access per-cpu GDT Use a direct per-cpu reference for the GDT instead of using a scratch register. Signed-off-by: Brian Gerst LKML-Reference: <1280594903-6341-2-git-send-email-brgerst@gmail.com> Signed-off-by: H. Peter Anvin commit c15a5958a0b6dbf06b3c05972694f04a0c50a4cf Author: Brian Gerst Date: Sat Jul 31 12:48:22 2010 -0400 x86-64, asm: Directly access per-cpu IST Use a direct per-cpu reference for the IST instead of using a scratch register. Signed-off-by: Brian Gerst LKML-Reference: <1280594903-6341-1-git-send-email-brgerst@gmail.com> Signed-off-by: H. Peter Anvin commit ca0e05e4b15193aeba72b995e90de990db7f8304 Author: Dmitry Monakhov Date: Sun Aug 1 17:48:36 2010 -0400 ext4: force block allocation on quota_off Perform full sync procedure so that any delayed allocation blocks are allocated so quota will be consistent. Signed-off-by: Dmitry Monakhov Signed-off-by: "Theodore Ts'o" commit 437f88cc031ffe7f37f3e705367f4fe1f4be8b0f Author: Eric Sandeen Date: Sun Aug 1 17:33:29 2010 -0400 ext4: fix freeze deadlock under IO Commit 6b0310fbf087ad6 caused a regression resulting in deadlocks when freezing a filesystem which had active IO; the vfs_check_frozen level (SB_FREEZE_WRITE) did not let the freeze-related IO syncing through. Duh. Changing the test to FREEZE_TRANS should let the normal freeze syncing get through the fs, but still block any transactions from starting once the fs is completely frozen. I tested this by running fsstress in the background while periodically snapshotting the fs and running fsck on the result. I ran into occasional deadlocks, but different ones. I think this is a fine fix for the problem at hand, and the other deadlocky things will need more investigation. Reported-by: Phillip Susi Signed-off-by: Eric Sandeen Signed-off-by: "Theodore Ts'o" commit 6ee0578b4daaea01c96b172c6aacca43fd9807a6 Author: Suresh Siddha Date: Fri Jul 30 14:57:37 2010 -0700 workqueue: mark init_workqueues() as early_initcall() Mark init_workqueues() as early_initcall() and thus it will be initialized before smp bringup. init_workqueues() registers for the hotcpu notifier and thus it should cope with the processors that are brought online after the workqueues are initialized. x86 smp bringup code uses workqueues and uses a workaround for the cold boot process (as the workqueues are initialized post smp_init()). Marking init_workqueues() as early_initcall() will pave the way for cleaning up this code. Signed-off-by: Suresh Siddha Signed-off-by: Tejun Heo Cc: Oleg Nesterov Cc: Andrew Morton commit 098849516dd522a343e659740c8f1394a5b7fa69 Author: Tejun Heo Date: Sun Aug 1 11:50:12 2010 +0200 workqueue: explain for_each_*cwq_cpu() iterators for_each_*cwq_cpu() are similar to regular CPU iterators except that it also considers the pseudo CPU number used for unbound workqueues. Explain them. Signed-off-by: Tejun Heo Cc: Andrew Morton commit 828554136bbacae6e39fc31b9cd7e7c660ad7530 Author: Joerg Roedel Date: Thu Jul 1 16:00:11 2010 +0200 KVM: Remove unnecessary divide operations This patch converts unnecessary divide and modulo operations in the KVM large page related code into logical operations. This allows to convert gfn_t to u64 while not breaking 32 bit builds. Signed-off-by: Joerg Roedel Signed-off-by: Marcelo Tosatti commit 95c87e2b4460a488ec7ce42f273893e410ab385a Author: Sheng Yang Date: Thu Jul 1 15:00:50 2010 +0800 KVM: Fix IOMMU memslot reference warning This patch fixes the following warning. =================================================== [ INFO: suspicious rcu_dereference_check() usage. ] --------------------------------------------------- include/linux/kvm_host.h:259 invoked rcu_dereference_check() without protection! other info that might help us debug this: rcu_scheduler_active = 1, debug_locks = 0 no locks held by qemu-system-x86/29679. stack backtrace: Pid: 29679, comm: qemu-system-x86 Not tainted 2.6.35-rc3+ #200 Call Trace: [] lockdep_rcu_dereference+0xa8/0xb1 [] kvm_iommu_unmap_memslots+0xc9/0xde [kvm] [] kvm_iommu_unmap_guest+0x40/0x4e [kvm] [] kvm_arch_destroy_vm+0x1a/0x186 [kvm] [] kvm_put_kvm+0x110/0x167 [kvm] [] kvm_vcpu_release+0x18/0x1c [kvm] [] fput+0x22a/0x3a0 [] filp_close+0xb4/0xcd [] put_files_struct+0x1b7/0x36b [] ? put_files_struct+0x48/0x36b [] ? do_raw_spin_unlock+0x118/0x160 [] exit_files+0x6d/0x75 [] do_exit+0x47d/0xc60 [] ? _raw_spin_unlock_irq+0x30/0x36 [] do_group_exit+0xcf/0x134 [] get_signal_to_deliver+0x732/0x81d [] ? cpu_clock+0x4e/0x60 [] do_notify_resume+0x117/0xc43 [] ? trace_hardirqs_on+0xd/0xf [] ? sys_rt_sigtimedwait+0x2b5/0x3bf [] ? trace_hardirqs_off_thunk+0x3a/0x3c [] ? sysret_signal+0x5/0x3d [] int_signal+0x12/0x17 Signed-off-by: Sheng Yang Signed-off-by: Marcelo Tosatti commit fef093bec0364ff5e6fd488cd81637f6bb3a2d0d Author: Alexander Graf Date: Wed Jun 30 15:18:46 2010 +0200 KVM: PPC: Make use of hash based Shadow MMU We just introduced generic functions to handle shadow pages on PPC. This patch makes the respective backends make use of them, getting rid of a lot of duplicate code along the way. Signed-off-by: Alexander Graf Signed-off-by: Marcelo Tosatti commit 7741909bf19d9437a6aa3559c0470a640f637dce Author: Alexander Graf Date: Wed Jun 30 15:18:45 2010 +0200 KVM: PPC: Add generic hpte management functions Currently the shadow paging code keeps an array of entries it knows about. Whenever the guest invalidates an entry, we loop through that entry, trying to invalidate matching parts. While this is a really simple implementation, it is probably the most ineffective one possible. So instead, let's keep an array of lists around that are indexed by a hash. This way each PTE can be added by 4 list_add, removed by 4 list_del invocations and the search only needs to loop through entries that share the same hash. This patch implements said lookup and exports generic functions that both the 32-bit and 64-bit backend can use. Signed-off-by: Alexander Graf Signed-off-by: Marcelo Tosatti commit 84754cd8fca66ed476585eabad68cacf42834199 Author: Xiao Guangrong Date: Wed Jun 30 16:05:00 2010 +0800 KVM: MMU: cleanup FNAME(fetch)() functions Cleanup this function that we are already get the direct sp's access Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 9e7b0e7fba45ca3c6357aeb7091ebc281f1de365 Author: Xiao Guangrong Date: Wed Jun 30 16:03:28 2010 +0800 KVM: MMU: fix direct sp's access corrupted If the mapping is writable but the dirty flag is not set, we will find the read-only direct sp and setup the mapping, then if the write #PF occur, we will mark this mapping writable in the read-only direct sp, now, other real read-only mapping will happily write it without #PF. It may hurt guest's COW Fixed by re-install the mapping when write #PF occur. Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 5fd5387c89ec99ff6cb82d2477ffeb7211b781c2 Author: Xiao Guangrong Date: Wed Jun 30 16:02:45 2010 +0800 KVM: MMU: fix conflict access permissions in direct sp In no-direct mapping, we mark sp is 'direct' when we mapping the guest's larger page, but its access is encoded form upper page-struct entire not include the last mapping, it will cause access conflict. For example, have this mapping: [W] / PDE1 -> |---| P[W] | | LPA \ PDE2 -> |---| [R] P have two children, PDE1 and PDE2, both PDE1 and PDE2 mapping the same lage page(LPA). The P's access is WR, PDE1's access is WR, PDE2's access is RO(just consider read-write permissions here) When guest access PDE1, we will create a direct sp for LPA, the sp's access is from P, is W, then we will mark the ptes is W in this sp. Then, guest access PDE2, we will find LPA's shadow page, is the same as PDE's, and mark the ptes is RO. So, if guest access PDE1, the incorrect #PF is occured. Fixed by encode the last mapping access into direct shadow page Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 36a2e6774bfb5f32a0f23bb155f1f960321f291b Author: Xiao Guangrong Date: Wed Jun 30 16:02:02 2010 +0800 KVM: MMU: fix writable sync sp mapping While we sync many unsync sp at one time(in mmu_sync_children()), we may mapping the spte writable, it's dangerous, if one unsync sp's mapping gfn is another unsync page's gfn. For example: SP1.pte[0] = P SP2.gfn's pfn = P [SP1.pte[0] = SP2.gfn's pfn] First, we write protected SP1 and SP2, but SP1 and SP2 are still the unsync sp. Then, sync SP1 first, it will detect SP1.pte[0].gfn only has one unsync-sp, that is SP2, so it will mapping it writable, but we plan to sync SP2 soon, at this point, the SP2->unsync is not reliable since later we sync SP2 but SP2->gfn is already writable. So the final result is: SP2 is the sync page but SP2.gfn is writable. This bug will corrupt guest's page table, fixed by mark read-only mapping if the mapped gfn has shadow pages. Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit f5f48ee15c2ee3e44cf429e34b16c6fa9b900246 Author: Sheng Yang Date: Wed Jun 30 12:25:15 2010 +0800 KVM: VMX: Execute WBINVD to keep data consistency with assigned devices Some guest device driver may leverage the "Non-Snoop" I/O, and explicitly WBINVD or CLFLUSH to a RAM space. Since migration may occur before WBINVD or CLFLUSH, we need to maintain data consistency either by: 1: flushing cache (wbinvd) when the guest is scheduled out if there is no wbinvd exit, or 2: execute wbinvd on all dirty physical CPUs when guest wbinvd exits. Signed-off-by: Yaozu (Eddie) Dong Signed-off-by: Sheng Yang Signed-off-by: Marcelo Tosatti commit cf3e3d3e19868ca01da163200bbfc687523df0fc Author: Avi Kivity Date: Thu Jun 24 14:10:09 2010 +0300 KVM: Document KVM specific review items Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 3e0075094734de122e4cb09f930fa853a3c59f09 Author: Avi Kivity Date: Wed Jun 23 14:26:18 2010 +0300 KVM: Simplify vcpu_enter_guest() mmu reload logic slightly No need to reload the mmu in between two different vcpu->requests checks. kvm_mmu_reload() may trigger KVM_REQ_TRIPLE_FAULT, but that will be caught during atomic guest entry later. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 529df65e394e30a78f2633b575fd81fa5b973e30 Author: Chris Lalancette Date: Mon Jun 21 11:29:40 2010 -0400 KVM: Search the LAPIC's for one that will accept a PIC interrupt Older versions of 32-bit linux have a "Checking 'hlt' instruction" test where they repeatedly call the 'hlt' instruction, and then expect a timer interrupt to kick the CPU out of halt. This happens before any LAPIC or IOAPIC setup happens, which means that all of the APIC's are in virtual wire mode at this point. Unfortunately, the current implementation of virtual wire mode is hardcoded to only kick the BSP, so if a crash+kexec occurs on a different vcpu, it will never get kicked. This patch makes pic_unlock() do the equivalent of kvm_irq_delivery_to_apic() for the IOAPIC code. That is, it runs through all of the vcpus looking for one that is in virtual wire mode. In the normal case where LAPICs and IOAPICs are configured, this won't be used at all. In the bootstrap phase of a modern OS, before the LAPICs and IOAPICs are configured, this will have exactly the same behavior as today; VCPU0 is always looked at first, so it will always get out of the loop after the first iteration. This will only go through the loop more than once during a kexec/kdump, in which case it will only do it a few times until the kexec'ed kernel programs the LAPIC and IOAPIC. Signed-off-by: Chris Lalancette Signed-off-by: Avi Kivity commit 979586e0b5809c46ebe5d784794a9f6d859b665e Author: Takuya Yoshikawa Date: Wed Jun 23 15:00:29 2010 +0900 KVM: ia64: cleanup kvm_ia64_sync_dirty_log() kvm_ia64_sync_dirty_log() is a helper function for kvm_vm_ioctl_get_dirty_log() which copies ia64's arch specific dirty bitmap to general one in memslot. So doing sanity checks in this function is unnatural. We move these checks outside of this and change the prototype appropriately. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 4482b06c0459469c101a1da3f4b24594da557f99 Author: Takuya Yoshikawa Date: Wed Jun 23 14:59:29 2010 +0900 KVM: ia64: fix dirty_log_lock spin_lock section not to include get_dirty_log() kvm_get_dirty_log() calls copy_to_user(). So we need to narrow the dirty_log_lock spin_lock section not to include this. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 4d29bdbf12f35f7e7816d67e99c150630684604f Author: Alexander Graf Date: Mon Jun 21 15:24:55 2010 +0200 KVM: PPC: Make BAT only guest segments work When a guest sets its SR entry to invalid, we may still find a corresponding entry in a BAT. So we need to make sure we're not faulting on invalid SR entries, but instead just claim them to be BAT resolved. This resolves breakage experienced when using libogc based guests. Signed-off-by: Alexander Graf Signed-off-by: Avi Kivity commit 3b249157c03154109d31ec95a3c80203adcf8b70 Author: Alexander Graf Date: Mon Jun 21 15:25:19 2010 +0200 KVM: PPC: Use kernel hash function The linux kernel already provides a hash function. Let's reuse that instead of reinventing the wheel! Signed-off-by: Alexander Graf Signed-off-by: Avi Kivity commit a576f7a29481438db0fa6f3d9ed6939019c441d3 Author: Alexander Graf Date: Mon Jun 21 15:25:40 2010 +0200 KVM: PPC: Remove obsolete kvmppc_mmu_find_pte Initially we had to search for pte entries to invalidate them. Since the logic has improved since then, we can just get rid of the search function. Signed-off-by: Alexander Graf Signed-off-by: Avi Kivity commit bbeb34062fbad287c949a945a516a0c15b179993 Author: Huang Ying Date: Tue Jun 22 14:23:11 2010 +0800 KVM: Fix a race condition for usage of is_hwpoison_address() is_hwpoison_address accesses the page table, so the caller must hold current->mm->mmap_sem in read mode. So fix its usage in hva_to_pfn of kvm accordingly. Comment is_hwpoison_address to remind other users. Reported-by: Avi Kivity Signed-off-by: Huang Ying Signed-off-by: Avi Kivity commit 6c3f6041172b78d5532c6bf3680d304e92ec2e66 Author: Sheng Yang Date: Tue Jun 22 13:49:21 2010 +0800 KVM: x86: Enable AVX for guest Enable Intel(R) Advanced Vector Extension(AVX) for guest. The detection of AVX feature includes OSXSAVE bit testing. When OSXSAVE bit is not set, even if AVX is supported, the AVX instruction would result in UD as well. So we're safe to expose AVX bits to guest directly. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 7ac77099ce88a0c31b75acd0ec5ef3da4415a6d8 Author: Avi Kivity Date: Mon Jun 21 10:57:45 2010 +0300 KVM: Prevent internal slots from being COWed If a process with a memory slot is COWed, the page will change its address (despite having an elevated reference count). This breaks internal memory slots which have their physical addresses loaded into vmcs registers (see the APIC access memory slot). Signed-off-by: Avi Kivity commit e36d96f7cfaa71870c407131eb4fbd38ea285c01 Author: Avi Kivity Date: Mon Jun 21 10:56:36 2010 +0300 KVM: Keep slot ID in memory slot structure May be used for distinguishing between internal and user slots, or for sorting slots in size order. Signed-off-by: Avi Kivity commit 0719837c0832a7b305e42327caa7d330462360ea Author: Avi Kivity Date: Mon May 10 13:08:26 2010 +0300 KVM: Reduce atomic operations on vcpu->requests Usually the vcpu->requests bitmap is sparse, so a test_and_clear_bit() for each request generates a large number of unneeded atomics if a bit is set. Replace with a separate test/clear sequence. This is safe since there is no clear_bit() outside the vcpu thread. Signed-off-by: Avi Kivity commit a8eeb04a44dd6dc4c8158953d9bae48849c9a188 Author: Avi Kivity Date: Mon May 10 12:34:53 2010 +0300 KVM: Add mini-API for vcpu->requests Makes it a little more readable and hackable. Signed-off-by: Avi Kivity commit 36633f32ba4c238403d19584754b30fe469d6dcb Author: Avi Kivity Date: Mon May 3 17:38:06 2010 +0300 KVM: i8259: simplify pic_irq_request() calling sequence Signed-off-by: Avi Kivity commit 073d46133ab0b42154f6b8429f4f66dbe2760bda Author: Avi Kivity Date: Mon May 3 17:34:34 2010 +0300 KVM: i8259: reduce excessive abstraction for pic_irq_request() Part of the i8259 code pretends it isn't part of kvm, but we know better. Reduce excessive abstraction, eliminating callbacks and void pointers. Signed-off-by: Avi Kivity commit b74a07beed0e64bfba413dcb70dd6749c57f43dc Author: Avi Kivity Date: Mon Jun 21 11:48:05 2010 +0300 KVM: Remove kernel-allocated memory regions Equivalent (and better) functionality is provided by user-allocated memory regions. Signed-off-by: Avi Kivity commit a1f4d39500ad8ed61825eff061debff42386ab5b Author: Avi Kivity Date: Mon Jun 21 11:44:20 2010 +0300 KVM: Remove memory alias support As advertised in feature-removal-schedule.txt. Equivalent support is provided by overlapping memory regions. Signed-off-by: Avi Kivity commit fc34531db3cf8c422f2ff7cf4ef507a3ca672cd2 Author: Christian Borntraeger Date: Thu Jun 17 23:16:20 2010 +0200 KVM: s390: Don't exit SIE on SIGP sense running Newer (guest) kernels use sigp sense running in their spinlock implementation to check if the other cpu is running before yielding the processor. This revealed some wrong guest settings, causing unnecessary exits for every sigp sense running. Signed-off-by: Christian Borntraeger Signed-off-by: Avi Kivity commit 971eb77f87bfd352a56a24651922d0383db76219 Author: Christian Borntraeger Date: Sat Jun 12 08:54:13 2010 +0200 KVM: s390: Fix build failure due to centralized vcpu locking patches This patch fixes ERROR: "__kvm_s390_vcpu_store_status" [arch/s390/kvm/kvm.ko] undefined! triggered by commit 3268c56840dcee78c3e928336550f4e1861504c4 (kvm.git) Author: Avi Kivity Date: Thu May 13 12:21:46 2010 +0300 KVM: s390: Centrally lock arch specific vcpu ioctls Reported-by: Sachin Sant Signed-off-by: Christian Borntraeger Signed-off-by: Avi Kivity commit d1ac91d8a2f00dc6a3954f7e8971339b0893edc4 Author: Avi Kivity Date: Sun Jun 20 15:54:43 2010 +0300 KVM: Consolidate load/save temporary buffer allocation and freeing Instead of three temporary variables and three free calls, have one temporary variable (with four names) and one free call. Signed-off-by: Avi Kivity commit a1a005f36e0defea7c5490772c318c6af2261d31 Author: Avi Kivity Date: Sun Jun 20 15:47:34 2010 +0300 KVM: Fix xsave and xcr save/restore memory leak We allocate temporary kernel buffers for these structures, but never free them. Signed-off-by: Avi Kivity commit 7d5993d63f2bac75b89e171a7098044ec4bc701f Author: Wei Yongjun Date: Thu Jun 17 17:33:55 2010 +0800 KVM: x86 emulator: fix group3 instruction decoding Group 3 instruction with ModRM reg field as 001 is defined as test instruction under AMD arch, and emulate_grp3() is ready for emulate it, so fix the decoding. static inline int emulate_grp3(...) { ... switch (c->modrm_reg) { case 0 ... 1: /* test */ emulate_2op_SrcV("test", c->src, c->dst, ctxt->eflags); ... } Signed-off-by: Wei Yongjun Signed-off-by: Avi Kivity commit 6045be5dea7f7905433585e524f884b711e3796a Author: Asias He Date: Sat Jun 19 16:52:12 2010 +0800 KVM: PPC: fix uninitialized variable warning in kvm_ppc_core_deliver_interrupts Fixes: arch/powerpc/kvm/booke.c: In function 'kvmppc_core_deliver_interrupts': arch/powerpc/kvm/booke.c:147: warning: 'msr_mask' may be used uninitialized in this function Signed-off-by: Asias He Signed-off-by: Avi Kivity commit 21bbe18b2d53e0941cbd1621400ba7b4028972cb Author: Jason Wang Date: Thu Jun 17 16:49:22 2010 +0800 KVM: Fix typos in Documentation/kvm/mmu.txt Signed-off-by: Jason Wang Signed-off-by: Marcelo Tosatti commit aefd18f01ee848448d834c80e601ccff61515811 Author: Chris Lalancette Date: Wed Jun 16 17:11:13 2010 -0400 KVM: x86: In DM_LOWEST, only deliver interrupts to vcpus with enabled LAPIC's Otherwise we might try to deliver a timer interrupt to a cpu that can't possibly handle it. Signed-off-by: Chris Lalancette Signed-off-by: Marcelo Tosatti commit e7dca5c0eba63e4ba8e3586c4b37863fd7fadb5a Author: Chris Lalancette Date: Wed Jun 16 17:11:12 2010 -0400 KVM: x86: Allow any LAPIC to accept PIC interrupts If the guest wants to accept timer interrupts on a CPU other than the BSP, we need to remove this gate. Signed-off-by: Chris Lalancette Signed-off-by: Marcelo Tosatti commit 33572ac0ad5ba5016da72e6654e607726568f9c0 Author: Chris Lalancette Date: Wed Jun 16 17:11:11 2010 -0400 KVM: x86: Introduce a workqueue to deliver PIT timer interrupts We really want to "kvm_set_irq" during the hrtimer callback, but that is risky because that is during interrupt context. Instead, offload the work to a workqueue, which is a bit safer and should provide most of the same functionality. Signed-off-by: Chris Lalancette Signed-off-by: Marcelo Tosatti commit c37eda138473f8c843f2b4aa8da252fdfdaaafa3 Author: Wei Yongjun Date: Tue Jun 15 09:03:33 2010 +0800 KVM: x86 emulator: fix pusha instruction emulation emulate pusha instruction only writeback the last EDI register, but the other registers which need to be writeback is ignored. This patch fixed it. Signed-off-by: Wei Yongjun Signed-off-by: Marcelo Tosatti commit bd371396b38ffc4bd6444b0203f33b99d18cedd0 Author: Zachary Amsden Date: Mon Jun 14 11:42:15 2010 -1000 KVM: x86: fix -DDEBUG oops Fix a slight error with assertion in local APIC code. Signed-off-by: Zachary Amsden Signed-off-by: Marcelo Tosatti commit 1047df1fb682a41eb9885d6b3f2d04d6c8fd3756 Author: Xiao Guangrong Date: Fri Jun 11 21:35:15 2010 +0800 KVM: MMU: don't walk every parent pages while mark unsync While we mark the parent's unsync_child_bitmap, if the parent is already unsynced, it no need walk it's parent, it can reduce some unnecessary workload Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 7a8f1a74e4193d21e55b35928197486f2c047efb Author: Xiao Guangrong Date: Fri Jun 11 21:34:04 2010 +0800 KVM: MMU: clear unsync_child_bitmap completely In current code, some page's unsync_child_bitmap is not cleared completely in mmu_sync_children(), for example, if two PDPEs shard one PDT, one of PDPE's unsync_child_bitmap is not cleared. Currently, it not harm anything just little overload, but it's the prepare work for the later patch Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit ebdea638df04ae6293a9a5414d98ad843c69e82f Author: Xiao Guangrong Date: Fri Jun 11 21:32:34 2010 +0800 KVM: MMU: cleanup for __mmu_unsync_walk() Decrease sp->unsync_children after clear unsync_child_bitmap bit Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit be71e061d15c0aad4f8c2606f76c57b8a19792fd Author: Xiao Guangrong Date: Fri Jun 11 21:31:38 2010 +0800 KVM: MMU: don't mark pte notrap if it's just sync transient If the sync-sp just sync transient, don't mark its pte notrap Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit f918b443527e98476c8cc45683152106b9e4bedc Author: Xiao Guangrong Date: Fri Jun 11 21:30:36 2010 +0800 KVM: MMU: avoid double write protected in sync page path The sync page is already write protected in mmu_sync_children(), don't write protected it again Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit cb83cad2e7e1cdedb2abb9cef2ac076defa679d4 Author: Xiao Guangrong Date: Fri Jun 11 21:29:42 2010 +0800 KVM: MMU: cleanup for dirty page judgment Using wrap function to cleanup page dirty judgment Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit ac3cd03cca91d481b41e8236aaa41a7f9fafa62f Author: Xiao Guangrong Date: Fri Jun 11 21:28:14 2010 +0800 KVM: MMU: rename 'page' and 'shadow_page' to 'sp' Rename 'page' and 'shadow_page' to 'sp' to better fit the context Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 2d5b5a665508c60577c1088e0405850a965b6795 Author: Sheng Yang Date: Sun Jun 13 17:29:39 2010 +0800 KVM: x86: XSAVE/XRSTOR live migration support This patch enable save/restore of xsave state. Signed-off-by: Sheng Yang Signed-off-by: Marcelo Tosatti commit 69b61833f7ce6e61e196c8a724e4d1278b24ac02 Author: Denis Kirjanov Date: Fri Jun 11 11:23:26 2010 +0000 KVM: PPC: fix build warning in kvm_arch_vcpu_ioctl_run Fix compile warning: CC [M] arch/powerpc/kvm/powerpc.o arch/powerpc/kvm/powerpc.c: In function 'kvm_arch_vcpu_ioctl_run': arch/powerpc/kvm/powerpc.c:290: warning: 'gpr' may be used uninitialized in this function arch/powerpc/kvm/powerpc.c:290: note: 'gpr' was declared here Signed-off-by: Denis Kirjanov Signed-off-by: Marcelo Tosatti commit 2390218b6aa2eb3784b0a82fa811c19097dc793a Author: Avi Kivity Date: Thu Jun 10 17:02:16 2010 +0300 KVM: Fix mov cr3 #GP at wrong instruction On Intel, we call skip_emulated_instruction() even if we injected a #GP, resulting in the #GP pointing at the wrong address. Fix by injecting the exception and skipping the instruction at the same place, so we can do just one or the other. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit a83b29c6ad6d6497e569edbc29e556a384cebddd Author: Avi Kivity Date: Thu Jun 10 17:02:15 2010 +0300 KVM: Fix mov cr4 #GP at wrong instruction On Intel, we call skip_emulated_instruction() even if we injected a #GP, resulting in the #GP pointing at the wrong address. Fix by injecting the exception and skipping the instruction at the same place, so we can do just one or the other. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 49a9b07edcf4aff159c1f3d3a27e58cf38bc27cd Author: Avi Kivity Date: Thu Jun 10 17:02:14 2010 +0300 KVM: Fix mov cr0 #GP at wrong instruction On Intel, we call skip_emulated_instruction() even if we injected a #GP, resulting in the #GP pointing at the wrong address. Fix by injecting the exception and skipping the instruction at the same place, so we can do just one or the other. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 2acf923e38fb6a4ce0c57115decbb38d334902ac Author: Dexuan Cui Date: Thu Jun 10 11:27:12 2010 +0800 KVM: VMX: Enable XSAVE/XRSTOR for guest This patch enable guest to use XSAVE/XRSTOR instructions. We assume that host_xcr0 would use all possible bits that OS supported. And we loaded xcr0 in the same way we handled fpu - do it as late as we can. Signed-off-by: Dexuan Cui Signed-off-by: Sheng Yang Reviewed-by: Marcelo Tosatti Signed-off-by: Avi Kivity commit f495c6e5e8fdc972162241df5bdff5bcebb4dc33 Author: Avi Kivity Date: Thu Jun 10 17:21:29 2010 +0300 KVM: VMX: Fix incorrect rcu deref in rmode_tss_base() Signed-off-by: Avi Kivity commit a24e809902339458416900869abdcc51a44bfd48 Author: Andi Kleen Date: Thu Jun 10 13:10:55 2010 +0200 KVM: Fix unused but set warnings No real bugs in this one. Signed-off-by: Andi Kleen Signed-off-by: Avi Kivity commit 376d41ff2669617a1ef828466ad07a1be99d24d3 Author: Andi Kleen Date: Thu Jun 10 13:10:47 2010 +0200 KVM: Fix KVM_SET_SIGNAL_MASK with arg == NULL When the user passed in a NULL mask pass this on from the ioctl handler. Found by gcc 4.6's new warnings. Signed-off-by: Andi Kleen Signed-off-by: Avi Kivity commit 3b5d13218667b3ca52efa52cec1d322163bf5465 Author: Xiao Guangrong Date: Tue Jun 8 20:07:01 2010 +0800 KVM: MMU: delay local tlb flush delay local tlb flush until enter guest moden, it can reduce vpid flush frequency and reduce remote tlb flush IPI(if KVM_REQ_TLB_FLUSH bit is already set, IPI is not sent) Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 5304efde6ae27deeeae79b97af709d4ceecc336e Author: Xiao Guangrong Date: Tue Jun 8 20:05:57 2010 +0800 KVM: MMU: use wrapper function to flush local tlb Use kvm_mmu_flush_tlb() function instead of calling kvm_x86_ops->tlb_flush(vcpu) directly. Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 4f78fd08e91c52f097d64a42d903b76fe52a3a0f Author: Xiao Guangrong Date: Tue Jun 8 20:05:05 2010 +0800 KVM: MMU: remove unnecessary remote tlb flush This remote tlb flush is no necessary since we have synced while sp is zapped Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 4b9d3a04519fb508ad3b7ce8a7962929b2614185 Author: Xiao Guangrong Date: Tue Jun 8 10:15:51 2010 +0800 KVM: VMX: fix rcu usage warning in init_rmode() fix: [ INFO: suspicious rcu_dereference_check() usage. ] --------------------------------------------------- include/linux/kvm_host.h:258 invoked rcu_dereference_check() without protection! other info that might help us debug this: rcu_scheduler_active = 1, debug_locks = 1 1 lock held by qemu-system-x86/3796: #0: (&vcpu->mutex){+.+.+.}, at: [] vcpu_load+0x1a/0x66 [kvm] stack backtrace: Pid: 3796, comm: qemu-system-x86 Not tainted 2.6.34 #25 Call Trace: [] lockdep_rcu_dereference+0x9d/0xa5 [] gfn_to_memslot_unaliased+0x65/0xa0 [kvm] [] gfn_to_hva+0x22/0x4c [kvm] [] kvm_write_guest_page+0x2a/0x7f [kvm] [] kvm_clear_guest_page+0x1a/0x1c [kvm] [] init_rmode+0x3b/0x180 [kvm_intel] [] vmx_set_cr0+0x350/0x4d3 [kvm_intel] [] kvm_arch_vcpu_ioctl_set_sregs+0x122/0x31a [kvm] [] kvm_vcpu_ioctl+0x578/0xa3d [kvm] [] ? cpu_clock+0x2d/0x40 [] ? fget_light+0x244/0x28e [] ? trace_hardirqs_off_caller+0x1f/0x10e [] vfs_ioctl+0x32/0xa6 [] do_vfs_ioctl+0x47f/0x4b8 [] ? sub_preempt_count+0xa3/0xb7 [] ? fget_light+0x266/0x28e [] ? fget_light+0x111/0x28e [] sys_ioctl+0x47/0x6a [] system_call_fastpath+0x16/0x1b Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 1760dd4939a62591e492971858fac8cce1e4539e Author: Gui Jianfeng Date: Mon Jun 7 10:33:27 2010 +0800 KVM: VMX: rename vpid_sync_vcpu_all() to vpid_sync_vcpu_single() The name "pid_sync_vcpu_all" isn't appropriate since it just affect a single vpid, so rename it to vpid_sync_vcpu_single(). Signed-off-by: Gui Jianfeng Signed-off-by: Avi Kivity commit b9d762fa79f541ab480cdb733b46fdb0b4471c2d Author: Gui Jianfeng Date: Mon Jun 7 10:32:29 2010 +0800 KVM: VMX: Add all-context INVVPID type support Add all-context INVVPID type support. Signed-off-by: Gui Jianfeng Signed-off-by: Avi Kivity commit 7fb8f881c54beb05dd4d2c947dada1c636581d87 Author: Grant Likely Date: Thu Jul 29 17:55:50 2010 -0600 of/platform: Register of_platform_drivers with an "of:" prefix Currently there are some drivers in tree which register both a platform_driver and an of_platform_driver with the same name. This is a temporary situation until all the relevant of_platform_drivers are converted to be normal platform_drivers. Until then, this patch gives all the of_platform_drivers an "of:" prefix to protect against bogus matches and namespace conflicts. commit 22ae782f86b726f9cea752c0f269ff6dcdf2f6e1 Author: Grant Likely Date: Thu Jul 29 11:49:01 2010 -0600 of/address: Clean up function declarations This patch moves the declaration of of_get_address(), of_get_pci_address(), and of_pci_address_to_resource() out of arch code and into the common linux/of_address header file. This patch also fixes some of the asm/prom.h ordering issues. It still includes some header files that it ideally shouldn't be, but at least the ordering is consistent now so that of_* overrides work. Signed-off-by: Grant Likely commit 0671a8e75d8aeb33e15c5152147abb0d2fa0c1e6 Author: Xiao Guangrong Date: Fri Jun 4 21:56:59 2010 +0800 KVM: MMU: reduce remote tlb flush in kvm_mmu_pte_write() collect remote tlb flush in kvm_mmu_pte_write() path Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit f41d335a02d5132c14ec0459d3b2790eeb16fb11 Author: Xiao Guangrong Date: Fri Jun 4 21:56:11 2010 +0800 KVM: MMU: traverse sp hlish safely Now, we can safely to traverse sp hlish Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit d98ba053656c033180781007241f2c9d54606d56 Author: Xiao Guangrong Date: Fri Jun 4 21:55:29 2010 +0800 KVM: MMU: gather remote tlb flush which occurs during page zapped Using kvm_mmu_prepare_zap_page() and kvm_mmu_zap_page() instead of kvm_mmu_zap_page() that can reduce remote tlb flush IPI Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 103ad25a86a6ec5418b3dca6a0d2bf2ba01a8318 Author: Xiao Guangrong Date: Fri Jun 4 21:54:38 2010 +0800 KVM: MMU: don't get free page number in the loop In the later patch, we will modify sp's zapping way like below: kvm_mmu_prepare_zap_page A kvm_mmu_prepare_zap_page B kvm_mmu_prepare_zap_page C .... kvm_mmu_commit_zap_page [ zaped multiple sps only need to call kvm_mmu_commit_zap_page once ] In __kvm_mmu_free_some_pages() function, the free page number is getted form 'vcpu->kvm->arch.n_free_mmu_pages' in loop, it will hinders us to apply kvm_mmu_prepare_zap_page() and kvm_mmu_commit_zap_page() since kvm_mmu_prepare_zap_page() not free sp. Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 7775834a233478ec855b97e30727248f12eafe76 Author: Xiao Guangrong Date: Fri Jun 4 21:53:54 2010 +0800 KVM: MMU: split the operations of kvm_mmu_zap_page() Using kvm_mmu_prepare_zap_page() and kvm_mmu_commit_zap_page() to split kvm_mmu_zap_page() function, then we can: - traverse hlist safely - easily to gather remote tlb flush which occurs during page zapped Those feature can be used in the later patches Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 7ae680eb2d5f0cb10ca0e6d1ff5ecb145befe8e4 Author: Xiao Guangrong Date: Fri Jun 4 21:53:07 2010 +0800 KVM: MMU: introduce some macros to cleanup hlist traverseing Introduce for_each_gfn_sp() and for_each_gfn_indirect_valid_sp() to cleanup hlist traverseing Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 03116aa57e75b1bbe8b5e04f3cd21cdb6588c4ba Author: Xiao Guangrong Date: Fri Jun 4 21:52:17 2010 +0800 KVM: MMU: skip invalid sp when unprotect page In kvm_mmu_unprotect_page(), the invalid sp can be skipped Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 518c8aee5ca74fc03273fc6b4893cf456d65d545 Author: Gui Jianfeng Date: Fri Jun 4 08:51:39 2010 +0800 KVM: VMX: Make sure single type invvpid is supported before issuing invvpid instruction According to SDM, we need check whether single-context INVVPID type is supported before issuing invvpid instruction. Signed-off-by: Gui Jianfeng Reviewed-by: Sheng Yang Signed-off-by: Marcelo Tosatti commit 7bee342a9e994cce7122cb187b4f3ded9d871165 Author: Lai Jiangshan Date: Wed Jun 2 17:06:03 2010 +0800 KVM: x86: use linux/uaccess.h instead of asm/uaccess.h Should use linux/uaccess.h instead of asm/uaccess.h Signed-off-by: Lai Jiangshan Signed-off-by: Marcelo Tosatti commit 3bd89007ab4243b36bc30f5fc4aa8b4f75ff8fc2 Author: Lai Jiangshan Date: Wed Jun 2 17:01:23 2010 +0800 KVM: cleanup "*new.rmap" type The type of '*new.rmap' is not 'struct page *', fix it Signed-off-by: Lai Jiangshan Signed-off-by: Marcelo Tosatti commit 4bc9b9828150747386130ab172f7e868e1a0fc2a Author: Sheng Yang Date: Wed Jun 2 14:05:24 2010 +0800 KVM: VMX: Enforce EPT pagetable level checking We only support 4 levels EPT pagetable now. Signed-off-by: Sheng Yang Signed-off-by: Marcelo Tosatti commit d2d7a61127ced8ce9ec7666991aad1d846932212 Author: Glauber Costa Date: Tue Jun 1 08:22:48 2010 -0400 KVM: Add Documentation/kvm/msr.txt This patch adds a file that documents the usage of KVM-specific MSRs. Signed-off-by: Glauber Costa Reviewed-by: Randy Dunlap Signed-off-by: Marcelo Tosatti commit 49f6be8ea1bd74713c1a48e42db06a3808dfa2cd Author: Andreas Schwab Date: Mon May 31 21:59:13 2010 +0200 KVM: PPC: elide struct thread_struct instances from stack Instead of instantiating a whole thread_struct on the stack use only the required parts of it. Signed-off-by: Andreas Schwab Tested-by: Alexander Graf Signed-off-by: Marcelo Tosatti commit 5120702e732ed72c7055f511f8dd01de36424569 Author: Mohammed Gamal Date: Mon May 31 22:40:54 2010 +0300 KVM: VMX: Properly return error to userspace on vmentry failure The vmexit handler returns KVM_EXIT_UNKNOWN since there is no handler for vmentry failures. This intercepts vmentry failures and returns KVM_FAIL_ENTRY to userspace instead. Signed-off-by: Mohammed Gamal Signed-off-by: Marcelo Tosatti commit b66d80006e415ee083e59c9429911eab78047f8f Author: Gui Jianfeng Date: Mon May 31 17:11:39 2010 +0800 KVM: MMU: Don't calculate quadrant if tdp_enabled There's no need to calculate quadrant if tdp is enabled. Signed-off-by: Gui Jianfeng Signed-off-by: Marcelo Tosatti commit 316b95216e277cdb22bd65346f9b9d9e10d0f53d Author: Avi Kivity Date: Thu May 27 16:44:12 2010 +0300 KVM: MMU: Document large pages Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit ec87fe2afcbcc4f430554980ec3e408bae34229d Author: Avi Kivity Date: Thu May 27 14:46:04 2010 +0300 KVM: MMU: Document cr0.wp emulation Signed-off-by: Avi Kivity commit 8184dd38e22fcaec664c2b98c382b85c26780e26 Author: Avi Kivity Date: Thu May 27 14:22:51 2010 +0300 KVM: MMU: Allow spte.w=1 for gpte.w=0 and cr0.wp=0 only in shadow mode When tdp is enabled, the guest's cr0.wp shouldn't have any effect on spte permissions. Signed-off-by: Avi Kivity commit 10ab25cd6bf7ee4e5a55d81f203f7dc1a855c27e Author: Jan Kiszka Date: Tue May 25 16:01:50 2010 +0200 KVM: x86: Propagate fpu_alloc errors Memory allocation may fail. Propagate such errors. Signed-off-by: Jan Kiszka Reviewed-by: Sheng Yang Signed-off-by: Avi Kivity commit 6dc696d4ddf2181eefee361e1d24a49351aef1f6 Author: Zachary Amsden Date: Wed May 26 15:09:43 2010 -1000 KVM: SVM: Fix EFER.LME being stripped Must set VCPU register to be the guest notion of EFER even if that setting is not valid on hardware. This was masked by the set in set_efer until 7657fd5ace88e8092f5f3a84117e093d7b893f26 broke that. Fix is simply to set the VCPU register before stripping bits. Signed-off-by: Zachary Amsden Signed-off-by: Avi Kivity commit 01c168ac3d6568fed0373d82bd2db2b9339aab16 Author: Gui Jianfeng Date: Thu May 27 16:09:48 2010 +0800 KVM: MMU: don't check PT_WRITABLE_MASK directly Since we have is_writable_pte(), make use of it. Signed-off-by: Gui Jianfeng Signed-off-by: Avi Kivity commit 3af1817a0d65e8c1317e8d23cfe8a91aa1d4a065 Author: Lai Jiangshan Date: Wed May 26 16:48:19 2010 +0800 KVM: MMU: calculate correct gfn for small host pages backing large guest pages In Documentation/kvm/mmu.txt: gfn: Either the guest page table containing the translations shadowed by this page, or the base page frame for linear translations. See role.direct. But in function FNAME(fetch)(), sp->gfn is incorrect when one of following situations occurred: 1) guest is 32bit paging and the guest PDE maps a 4-MByte page (backed by 4k host pages), FNAME(fetch)() miss handling the quadrant. And if guest use pse-36, "table_gfn = gpte_to_gfn(gw->ptes[level - delta]);" is incorrect. 2) guest is long mode paging and the guest PDPTE maps a 1-GByte page (backed by 4k or 2M host pages). So we fix it to suit to the document and suit to the code which requires sp->gfn correct when sp->role.direct=1. We use the goal mapping gfn(gw->gfn) to calculate the base page frame for linear translations, it is simple and easy to be understood. Reported-by: Marcelo Tosatti Reported-by: Gui Jianfeng Signed-off-by: Lai Jiangshan Signed-off-by: Avi Kivity commit c9fa0b3bef9a0b117b3c3f958ec553c21f609a9f Author: Lai Jiangshan Date: Wed May 26 16:48:25 2010 +0800 KVM: MMU: Calculate correct base gfn for direct non-DIR level In Document/kvm/mmu.txt: gfn: Either the guest page table containing the translations shadowed by this page, or the base page frame for linear translations. See role.direct. But in __direct_map(), the base gfn calculation is incorrect, it does not calculate correctly when level=3 or 4. Fix by using PT64_LVL_ADDR_MASK() which accounts for all levels correctly. Reported-by: Marcelo Tosatti Signed-off-by: Lai Jiangshan Signed-off-by: Avi Kivity commit 2032a93d66fa282ba0f2ea9152eeff9511fa9a96 Author: Lai Jiangshan Date: Wed May 26 16:49:59 2010 +0800 KVM: MMU: Don't allocate gfns page for direct mmu pages When sp->role.direct is set, sp->gfns does not contain any essential information, leaf sptes reachable from this sp are for a continuous guest physical memory range (a linear range). So sp->gfns[i] (if it was set) equals to sp->gfn + i. (PT_PAGE_TABLE_LEVEL) Obviously, it is not essential information, we can calculate it when need. It means we don't need sp->gfns when sp->role.direct=1, Thus we can save one page usage for every kvm_mmu_page. Note: Access to sp->gfns must be wrapped by kvm_mmu_page_get_gfn() or kvm_mmu_page_set_gfn(). It is only exposed in FNAME(sync_page). Signed-off-by: Lai Jiangshan Signed-off-by: Avi Kivity commit c8174f7b35b3018c4c7b3237ed1c792e454fd5c3 Author: Mohammed Gamal Date: Mon May 24 01:01:04 2010 +0300 KVM: VMX: Add constant for invalid guest state exit reason For the sake of completeness, this patch adds a symbolic constant for VMX exit reason 0x21 (invalid guest state). Signed-off-by: Mohammed Gamal Signed-off-by: Avi Kivity commit 9f1a122f970dbef5ba3496587f39df5c1853083f Author: Xiao Guangrong Date: Mon May 24 15:41:33 2010 +0800 KVM: MMU: allow more page become unsync at getting sp time Allow more page become asynchronous at getting sp time, if need create new shadow page for gfn but it not allow unsync(level > 1), we should unsync all gfn's unsync page Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 9cf5cf5ad43b293581e5b87678ea5783c06d1a41 Author: Xiao Guangrong Date: Mon May 24 15:40:07 2010 +0800 KVM: MMU: allow more page become unsync at gfn mapping time In current code, shadow page can become asynchronous only if one shadow page for a gfn, this rule is too strict, in fact, we can let all last mapping page(i.e, it's the pte page) become unsync, and sync them at invlpg or flush tlb time. This patch allow more page become asynchronous at gfn mapping time Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 221d059d15f1c8bd070a63fd45cd8d2598af5f99 Author: Avi Kivity Date: Sun May 23 18:37:00 2010 +0300 KVM: Update Red Hat copyrights Signed-off-by: Avi Kivity commit 9fb2d2b4ff292a01ae30da003d1dc097917b0988 Author: Gleb Natapov Date: Sun May 23 14:28:26 2010 +0300 KVM: SVM: correctly trace irq injection On SVM interrupts are injected by svm_set_irq() not svm_inject_irq(). The later is used only to wait for irq window. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit f78978aa3a8222f7822f15fba5dbaea990ef0887 Author: Xiao Guangrong Date: Sat May 15 18:53:35 2010 +0800 KVM: MMU: only update unsync page in invlpg path Only unsync pages need updated at invlpg time since other shadow pages are write-protected Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit e02aa901b1aa41fb541521800cc2a4774c162485 Author: Xiao Guangrong Date: Sat May 15 18:52:34 2010 +0800 KVM: MMU: don't write-protect if have new mapping to unsync page Two cases maybe happen in kvm_mmu_get_page() function: - one case is, the goal sp is already in cache, if the sp is unsync, we only need update it to assure this mapping is valid, but not mark it sync and not write-protect sp->gfn since it not broke unsync rule(one shadow page for a gfn) - another case is, the goal sp not existed, we need create a new sp for gfn, i.e, gfn (may)has another shadow page, to keep unsync rule, we should sync(mark sync and write-protect) gfn's unsync shadow page. After enabling multiple unsync shadows, we sync those shadow pages only when the new sp not allow to become unsync(also for the unsyc rule, the new rule is: allow all pte page become unsync) Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 1d9dc7e000915b9607b480e34fcb4238b789fbb1 Author: Xiao Guangrong Date: Sat May 15 18:51:24 2010 +0800 KVM: MMU: split kvm_sync_page() function Split kvm_sync_page() into kvm_sync_page() and kvm_sync_page_transient() to clarify the code address Avi's suggestion kvm_sync_page_transient() function only update shadow page but not mark it sync and not write protect sp->gfn. it will be used by later patch Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 98918833a3e21ffc5619535955e7a003cb788163 Author: Sheng Yang Date: Mon May 17 17:08:28 2010 +0800 KVM: x86: Use FPU API Convert KVM to use generic FPU API. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 7cf30855e02be7a207ffebb8b9350986f2ba83e9 Author: Sheng Yang Date: Mon May 17 17:08:27 2010 +0800 KVM: x86: Use unlazy_fpu() for host FPU We can avoid unnecessary fpu load when userspace process didn't use FPU frequently. Derived from Avi's idea. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 5ee481da7b62a992b91f958bf26aaaa92354c170 Author: Sheng Yang Date: Mon May 17 17:22:23 2010 +0800 x86: Export FPU API for KVM use Also add some constants. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 93736624635235cc5372ffca6d62816d02170724 Author: Avi Kivity Date: Thu May 13 12:35:17 2010 +0300 KVM: Consolidate arch specific vcpu ioctl locking Now that all arch specific ioctls have centralized locking, it is easy to move it to the central dispatcher. Signed-off-by: Avi Kivity commit 19483d144023f7f4817dedafe26d5fe9ff2e7087 Author: Avi Kivity Date: Thu May 13 12:30:43 2010 +0300 KVM: PPC: Centralize locking of arch specific vcpu ioctls Signed-off-by: Avi Kivity commit bc923cc93b7719576f20687e4cb07751601fbbb3 Author: Avi Kivity Date: Thu May 13 12:21:46 2010 +0300 KVM: s390: Centrally lock arch specific vcpu ioctls Signed-off-by: Avi Kivity commit 526b78ad1a9e66ef240ad7c757988de039e42229 Author: Avi Kivity Date: Thu May 13 11:53:06 2010 +0300 KVM: x86: Lock arch specific vcpu ioctls centrally Signed-off-by: Avi Kivity commit 2122ff5eab8faec853e43f6de886e8dc8f31e317 Author: Avi Kivity Date: Thu May 13 11:25:04 2010 +0300 KVM: move vcpu locking to dispatcher for generic vcpu ioctls All vcpu ioctls need to be locked, so instead of locking each one specifically we lock at the generic dispatcher. This patch only updates generic ioctls and leaves arch specific ioctls alone. Signed-off-by: Avi Kivity commit 1683b2416e4c514d30ff5844a06733d0444ee000 Author: Xiao Guangrong Date: Thu May 13 10:09:57 2010 +0800 KVM: x86: cleanup unused local variable fix: arch/x86/kvm/x86.c: In function ‘handle_emulation_failure’: arch/x86/kvm/x86.c:3844: warning: unused variable ‘ctxt’ Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit f55c3f419ab1f0a9d66f44ceeefe752975ae4233 Author: Xiao Guangrong Date: Thu May 13 10:08:08 2010 +0800 KVM: MMU: unalias gfn before sp->gfns[] comparison in sync_page sp->gfns[] contain unaliased gfns, but gpte might contain pointer to aliased region. Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 6d74229f013ed8e4a00d74cfa7a3fa6a2315c467 Author: Xiao Guangrong Date: Thu May 13 10:07:00 2010 +0800 KVM: MMU: remove rmap before clear spte Remove rmap before clear spte otherwise it will trigger BUG_ON() in some functions such as rmap_write_protect(). Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit e8ad9a707496c163312bcdd6aa3b90603d45dc9b Author: Xiao Guangrong Date: Thu May 13 10:06:02 2010 +0800 KVM: MMU: use proper cache object freeing function Use kmem_cache_free to free objects allocated by kmem_cache_alloc. Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti commit 48bb09eee4e102544808c00f43bc40a4a2e43e50 Author: Alex Williamson Date: Wed May 12 09:46:31 2010 -0400 KVM: remove CAP_SYS_RAWIO requirement from kvm_vm_ioctl_assign_irq Remove this check in an effort to allow kvm guests to run without root privileges. This capability check doesn't seem to add any security since the device needs to have already been added via the assign device ioctl and the io actually occurs through the pci sysfs interface. Signed-off-by: Alex Williamson Signed-off-by: Marcelo Tosatti commit aad827034e419fa8c5ec39e6455266f0b942d856 Author: Sheng Yang Date: Wed May 12 16:40:42 2010 +0800 KVM: VMX: Only reset MMU when necessary Only modifying some bits of CR0/CR4 needs paging mode switch. Modify EFER.NXE bit would result in reserved bit updates. Signed-off-by: Sheng Yang Signed-off-by: Marcelo Tosatti commit 62ad07551a2ace89e35604d1c55fdae1dd3359a8 Author: Sheng Yang Date: Wed May 12 16:40:41 2010 +0800 KVM: x86: Clean up duplicate assignment mmu.free() already set root_hpa to INVALID_PAGE, no need to do it again in the destory_kvm_mmu(). kvm_x86_ops->set_cr4() and set_efer() already assign cr4/efer to vcpu->arch.cr4/efer, no need to do it again later. Signed-off-by: Sheng Yang Signed-off-by: Marcelo Tosatti commit 222b7c52c33bdef721248bfeba992af495800d30 Author: Mohammed Gamal Date: Wed May 12 01:39:22 2010 +0300 KVM: x86 emulator: Add missing decoder flags for xor instructions This adds missing decoder flags for xor instructions (opcodes 0x34 - 0x35) Signed-off-by: Mohammed Gamal Signed-off-by: Marcelo Tosatti commit abc190830f28a5bb678eaccb633de02ed2967d55 Author: Mohammed Gamal Date: Wed May 12 01:39:21 2010 +0300 KVM: x86 emulator: Add missing decoder flags for sub instruction This adds missing decoder flags for sub instructions (opcodes 0x2c - 0x2d) Signed-off-by: Mohammed Gamal Signed-off-by: Marcelo Tosatti commit dfb507c41d0d12fc69820abb7f040d31fcf015fe Author: Mohammed Gamal Date: Tue May 11 22:22:40 2010 +0300 KVM: x86 emulator: Add test acc, imm instruction (opcodes 0xA8 - 0xA9) This adds test acc, imm instruction to the x86 emulator Signed-off-by: Mohammed Gamal Signed-off-by: Marcelo Tosatti commit 24955b6c906045382b67f3e6beba7e5df4a4a045 Author: Marcelo Tosatti Date: Wed May 12 21:00:35 2010 -0300 KVM: pass correct parameter to kvm_mmu_free_some_pages Signed-off-by: Marcelo Tosatti commit 4610c9cc6d9c84f7d585583699f04d5f51c83671 Author: Dongxiao Xu Date: Tue May 11 18:29:48 2010 +0800 KVM: VMX: VMXON/VMXOFF usage changes SDM suggests VMXON should be called before VMPTRLD, and VMXOFF should be called after doing VMCLEAR. Therefore in vmm coexistence case, we should firstly call VMXON before any VMCS operation, and then call VMXOFF after the operation is done. Signed-off-by: Dongxiao Xu Signed-off-by: Marcelo Tosatti commit b923e62e4d48bc5242b32a6ef5ba0f886137668a Author: Dongxiao Xu Date: Tue May 11 18:29:45 2010 +0800 KVM: VMX: VMCLEAR/VMPTRLD usage changes Originally VMCLEAR/VMPTRLD is called on vcpu migration. To support hosted VMM coexistance, VMCLEAR is executed on vcpu schedule out, and VMPTRLD is executed on vcpu schedule in. This could also eliminate the IPI when doing VMCLEAR. Signed-off-by: Dongxiao Xu Signed-off-by: Marcelo Tosatti commit 92fe13be74303a7b80dc3c99e22e12a87d41bd5f Author: Dongxiao Xu Date: Tue May 11 18:29:42 2010 +0800 KVM: VMX: Some minor changes to code structure Do some preparations for vmm coexistence support. Signed-off-by: Dongxiao Xu Signed-off-by: Marcelo Tosatti commit 7725b89414836df492d6222b1d3cacb0ca576d77 Author: Dongxiao Xu Date: Tue May 11 18:29:38 2010 +0800 KVM: VMX: Define new functions to wrapper direct call of asm code Define vmcs_load() and kvm_cpu_vmxon() to avoid direct call of asm code. Also move VMXE bit operation out of kvm_cpu_vmxoff(). Signed-off-by: Dongxiao Xu Signed-off-by: Marcelo Tosatti commit 6859762e8ae32ec258a671faf5c9fef07b25b83f Author: Gui Jianfeng Date: Tue May 11 14:36:58 2010 +0800 KVM: update mmu documetation for role.nxe There's no member "cr4_nxe" in struct kvm_mmu_page_role, it names "nxe" now. Update mmu document. Signed-off-by: Gui Jianfeng Signed-off-by: Marcelo Tosatti commit f0f5933a1626c8df7b0bfd227819c66320fb4f0f Author: Avi Kivity Date: Mon May 10 12:09:56 2010 +0300 KVM: MMU: Fix free memory accounting race in mmu_alloc_roots() We drop the mmu lock between freeing memory and allocating the roots; this allows some other vcpu to sneak in and allocate memory. While the race is benign (resulting only in temporary overallocation, not oom) it is simple and easy to fix by moving the freeing close to the allocation. Signed-off-by: Avi Kivity Signed-off-by: Marcelo Tosatti commit 6d77dbfc88e37c9efd5c5dd18445cfe819ae17ea Author: Gleb Natapov Date: Mon May 10 11:16:56 2010 +0300 KVM: inject #UD if instruction emulation fails and exit to userspace Do not kill VM when instruction emulation fails. Inject #UD and report failure to userspace instead. Userspace may choose to reenter guest if vcpu is in userspace (cpl == 3) in which case guest OS will kill offending process and continue running. Signed-off-by: Gleb Natapov Signed-off-by: Marcelo Tosatti commit 57bc24cfd655c912498983130326b312e0404db1 Author: Avi Kivity Date: Thu Apr 29 12:12:57 2010 +0300 KVM: Document KVM_SET_BOOT_CPU_ID Signed-off-by: Avi Kivity commit 47dbb84f9e04e3261585da384d96b8c63f3376e3 Author: Avi Kivity Date: Thu Apr 29 12:08:56 2010 +0300 KVM: Document KVM_SET_IDENTITY_MAP ioctl Signed-off-by: Avi Kivity commit 54a4f0239f2e98bc0842818f611a4cf73bb7dd35 Author: Gui Jianfeng Date: Wed May 5 09:03:49 2010 +0800 KVM: MMU: make kvm_mmu_zap_page() return the number of pages it actually freed Currently, kvm_mmu_zap_page() returning the number of freed children sp. This might confuse the caller, because caller don't know the actual freed number. Let's make kvm_mmu_zap_page() return the number of pages it actually freed. Signed-off-by: Gui Jianfeng Signed-off-by: Avi Kivity commit 518c5a05e89a79e498c95c3e29f29bd236b3c972 Author: Gui Jianfeng Date: Wed May 5 09:58:33 2010 +0800 KVM: MMU: Fix debug output error in walk_addr() Fix a debug output error in walk_addr Signed-off-by: Gui Jianfeng Signed-off-by: Avi Kivity commit f3b8c964a9a6cfef6d3ca778648d53947b9fd257 Author: Gui Jianfeng Date: Wed May 5 09:09:21 2010 +0800 KVM: MMU: mark page table dirty when a pte is actually modified Sometime cmpxchg_gpte doesn't modify gpte, in such case, don't mark page table page as dirty. Signed-off-by: Gui Jianfeng Signed-off-by: Avi Kivity commit eec4b140c924b4c650e9a89e01d223266490e325 Author: Joerg Roedel Date: Wed May 5 16:04:44 2010 +0200 KVM: SVM: Allow EFER.LMSLE to be set with nested svm This patch enables setting of efer bit 13 which is allowed in all SVM capable processors. This is necessary for the SLES11 version of Xen 4.0 to boot with nested svm. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 3f10c846f8f9e6a32bbfeefaf7dda7ff51c7da29 Author: Joerg Roedel Date: Wed May 5 16:04:42 2010 +0200 KVM: SVM: Dump vmcb contents on failed vmrun This patch adds a function to dump the vmcb into the kernel log and calls it after a failed vmrun to ease debugging. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit d94e1dc9af60e3431a586c3edfbe42d8a0d3932b Author: Avi Kivity Date: Mon May 3 16:54:48 2010 +0300 KVM: Get rid of KVM_REQ_KICK KVM_REQ_KICK poisons vcpu->requests by having a bit set during normal operation. This causes the fast path check for a clear vcpu->requests to fail all the time, triggering tons of atomic operations. Fix by replacing KVM_REQ_KICK with a vcpu->guest_mode atomic. Signed-off-by: Avi Kivity commit 54b8486f469475d6c8e8aec917b91239a54eb8c8 Author: Gleb Natapov Date: Wed Apr 28 19:15:44 2010 +0300 KVM: x86 emulator: do not inject exception directly into vcpu Return exception as a result of instruction emulation and handle injection in KVM code. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 95cb229530f329ec8002274891793be9c91385f7 Author: Gleb Natapov Date: Wed Apr 28 19:15:43 2010 +0300 KVM: x86 emulator: move interruptibility state tracking out of emulator Emulator shouldn't access vcpu directly. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 4d2179e1e9cb74b25a8181a506600d96e15504fb Author: Gleb Natapov Date: Wed Apr 28 19:15:42 2010 +0300 KVM: x86 emulator: handle shadowed registers outside emulator Emulator shouldn't access vcpu directly. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit bdb475a323858101f4a5ad6a1a04b1dd8885325a Author: Gleb Natapov Date: Wed Apr 28 19:15:41 2010 +0300 KVM: x86 emulator: use shadowed register in emulate_sysexit() emulate_sysexit() should use shadowed registers copy instead of looking into vcpu state directly. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit ef050dc0390176ec6888f373edb776587c88be3d Author: Gleb Natapov Date: Wed Apr 28 19:15:40 2010 +0300 KVM: x86 emulator: set RFLAGS outside x86 emulator code Removes the need for set_flags() callback. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 95c5588652f7742a21c33d9dcce0e043e057d04f Author: Gleb Natapov Date: Wed Apr 28 19:15:39 2010 +0300 KVM: x86 emulator: advance RIP outside x86 emulator code Return new RIP as part of instruction emulation result instead of updating KVM's RIP from x86 emulator code. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 3457e4192e367fd4e0da5e9f46f9df85fa99cd11 Author: Gleb Natapov Date: Wed Apr 28 19:15:38 2010 +0300 KVM: handle emulation failure case first If emulation failed return immediately. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 8fe681e984b6505d4d12125c0776399304803ec7 Author: Gleb Natapov Date: Wed Apr 28 19:15:37 2010 +0300 KVM: do not inject #PF in (read|write)_emulated() callbacks Return error to x86 emulator instead of injection exception behind its back. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit f181b96d4c769b8915849eb9070c18116fd8d44e Author: Gleb Natapov Date: Wed Apr 28 19:15:36 2010 +0300 KVM: remove export of emulator_write_emulated() It is not called directly outside of the file it's defined in anymore. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit c3cd7ffaf57ae6ead5b394cebaeb76164059a57f Author: Gleb Natapov Date: Wed Apr 28 19:15:35 2010 +0300 KVM: x86 emulator: x86_emulate_insn() return -1 only in case of emulation failure Currently emulator returns -1 when emulation failed or IO is needed. Caller tries to guess whether emulation failed by looking at other variables. Make it easier for caller to recognise error condition by always returning -1 in case of failure. For this new emulator internal return value X86EMUL_IO_NEEDED is introduced. It is used to distinguish between error condition (which returns X86EMUL_UNHANDLEABLE) and condition that requires IO exit to userspace to continue emulation. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 411c35b7ef02aefb91e166ffeffad0891d955fcb Author: Gleb Natapov Date: Wed Apr 28 19:15:34 2010 +0300 KVM: fill in run->mmio details in (read|write)_emulated function Fill in run->mmio details in (read|write)_emulated function just like pio does. There is no point in filling only vcpu fields there just to copy them into vcpu->run a little bit later. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit e680080e653b8c8725ca620bf22a5f8480f40cb5 Author: Gleb Natapov Date: Wed Apr 28 19:15:33 2010 +0300 KVM: x86 emulator: fix X86EMUL_RETRY_INSTR and X86EMUL_CMPXCHG_FAILED values Currently X86EMUL_PROPAGATE_FAULT, X86EMUL_RETRY_INSTR and X86EMUL_CMPXCHG_FAILED have the same value so caller cannot distinguish why function such as emulator_cmpxchg_emulated() (which can return both X86EMUL_PROPAGATE_FAULT and X86EMUL_CMPXCHG_FAILED) failed. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 338dbc9781eb5acd0b12809d95d4006135f29767 Author: Gleb Natapov Date: Wed Apr 28 19:15:32 2010 +0300 KVM: x86 emulator: make (get|set)_dr() callback return error if it fails Make (get|set)_dr() callback return error if it fails instead of injecting exception behind emulator's back. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 0f12244fe70e8a94a491f6cd7ed70a352ab6c26c Author: Gleb Natapov Date: Wed Apr 28 19:15:31 2010 +0300 KVM: x86 emulator: make set_cr() callback return error if it fails Make set_cr() callback return error if it fails instead of injecting #GP behind emulator's back. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 79168fd1a307ffee46ee03b7f8711559241738c7 Author: Gleb Natapov Date: Wed Apr 28 19:15:30 2010 +0300 KVM: x86 emulator: cleanup some direct calls into kvm to use existing callbacks Use callbacks from x86_emulate_ops to access segments instead of calling into kvm directly. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 5951c4423724759906b10a26aa6a8817c4afa615 Author: Gleb Natapov Date: Wed Apr 28 19:15:29 2010 +0300 KVM: x86 emulator: add get_cached_segment_base() callback to x86_emulate_ops On VMX it is expensive to call get_cached_descriptor() just to get segment base since multiple vmcs_reads are done instead of only one. Introduce new call back get_cached_segment_base() for efficiency. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 3fb1b5dbd397d16a855c97c3fb80fe6e9196ce7c Author: Gleb Natapov Date: Wed Apr 28 19:15:28 2010 +0300 KVM: x86 emulator: add (set|get)_msr callbacks to x86_emulate_ops Add (set|get)_msr callbacks to x86_emulate_ops instead of calling them directly. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 35aa5375d407ecadcc3adb5cb31d27044bf7f29f Author: Gleb Natapov Date: Wed Apr 28 19:15:27 2010 +0300 KVM: x86 emulator: add (set|get)_dr callbacks to x86_emulate_ops Add (set|get)_dr callbacks to x86_emulate_ops instead of calling them directly. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 414e6277fd148f6470261cef50a7fed0d88a2825 Author: Gleb Natapov Date: Wed Apr 28 19:15:26 2010 +0300 KVM: x86 emulator: handle "far address" source operand ljmp/lcall instruction operand contains address and segment. It can be 10 bytes long. Currently we decode it as two different operands. Fix it by introducing new kind of operand that can hold entire far address. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit b8a98945ea5b735e083eaf92906aa0ff9ece92e8 Author: Gleb Natapov Date: Wed Apr 28 19:15:25 2010 +0300 KVM: x86 emulator: cleanup nop emulation Make it more explicit what we are checking for. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit f0c13ef1a8f31be08bf1b1244fe4565f11f4b009 Author: Gleb Natapov Date: Wed Apr 28 19:15:24 2010 +0300 KVM: x86 emulator: cleanup xchg emulation Dst operand is already initialized during decoding stage. No need to reinitialize. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 054fe9f6e3b76877516b37ac7d83d58c7f37c1b6 Author: Gleb Natapov Date: Wed Apr 28 19:15:23 2010 +0300 KVM: x86 emulator: fix Move r/m16 to segment register decoding This instruction does not need generic decoding for its dst operand. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 9de41573675cbace09b02ef386f3e9c8739d495c Author: Gleb Natapov Date: Wed Apr 28 19:15:22 2010 +0300 KVM: x86 emulator: introduce read cache Introduce read cache which is needed for instruction that require more then one exit to userspace. After returning from userspace the instruction will be re-executed with cached read value. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 1c11e713576edf33b95669be9c2dc0ff1e0c90d3 Author: Avi Kivity Date: Mon May 3 16:05:44 2010 +0300 KVM: VMX: Avoid writing HOST_CR0 every entry cr0.ts may change between entries, so we copy cr0 to HOST_CR0 before each entry. That is slow, so instead, set HOST_CR0 to have TS set unconditionally (which is a safe value), and issue a clts() just before exiting vcpu context if the task indeed owns the fpu. Saves ~50 cycles/exit. Signed-off-by: Avi Kivity commit 08acfa187117046f8b5044b4a4cdc910f3ceeeb5 Author: Avi Kivity Date: Tue May 4 13:00:55 2010 +0300 KVM: kvm_pdptr_read() may sleep Annotate it thusly. Signed-off-by: Avi Kivity commit 914ebccd2d8fa439e01fe93b5229534b9e179a69 Author: Takuya Yoshikawa Date: Wed Apr 28 18:50:36 2010 +0900 KVM: x86: avoid unnecessary bitmap allocation when memslot is clean Although we always allocate a new dirty bitmap in x86's get_dirty_log(), it is only used as a zero-source of copy_to_user() and freed right after that when memslot is clean. This patch uses clear_user() instead of doing this unnecessary zero-source allocation. Performance improvement: as we can expect easily, the time needed to allocate a bitmap is completely reduced. In my test, the improved ioctl was about 4 to 10 times faster than the original one for clean slots. Furthermore, reducing memory allocations and copies will produce good effects to caches too. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit c332c83ae736c72dcf072e96e98a774fce39e722 Author: Avi Kivity Date: Tue May 4 12:24:12 2010 +0300 KVM: VMX: Simplify vmx_get_nmi_mask() !! is not needed due to the cast to bool. Signed-off-by: Avi Kivity commit bf998156d24bcb127318ad5bf531ac3bdfcd6449 Author: Huang Ying Date: Mon May 31 14:28:19 2010 +0800 KVM: Avoid killing userspace through guest SRAO MCE on unmapped pages In common cases, guest SRAO MCE will cause corresponding poisoned page be un-mapped and SIGBUS be sent to QEMU-KVM, then QEMU-KVM will relay the MCE to guest OS. But it is reported that if the poisoned page is accessed in guest after unmapping and before MCE is relayed to guest OS, userspace will be killed. The reason is as follows. Because poisoned page has been un-mapped, guest access will cause guest exit and kvm_mmu_page_fault will be called. kvm_mmu_page_fault can not get the poisoned page for fault address, so kernel and user space MMIO processing is tried in turn. In user MMIO processing, poisoned page is accessed again, then userspace is killed by force_sig_info. To fix the bug, kvm_mmu_page_fault send HWPOISON signal to QEMU-KVM and do not try kernel and user space MMIO processing for poisoned page. [xiao: fix warning introduced by avi] Reported-by: Max Asbock Signed-off-by: Huang Ying Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti Signed-off-by: Avi Kivity commit de38483010bae523f533bb6bf9f7b7353772f6eb Author: Stephen Hemminger Date: Sun Aug 1 00:33:23 2010 -0700 net: ingress filter message limit If user misconfigures ingress and causes a redirection loop, don't overwhelm the log. This is also a error case so make it unlikely. Found by inspection, luckily not in real system. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit e2e0c7c9ddbe6b79fe647aca5eea3a405d38ada4 Author: Julia Lawall Date: Fri Jul 30 23:56:39 2010 +0000 net/rose: Use GFP_ATOMIC The other calls to kmalloc in the same function use GFP_ATOMIC, and indeed two locks are held within the body of the function. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ identifier f; @@ *f(...,GFP_ATOMIC,...) ... when != spin_unlock(...) when != read_unlock(...) when != write_unlock(...) when != read_unlock_irq(...) when != write_unlock_irq(...) when != read_unlock_irqrestore(...) when != write_unlock_irqrestore(...) when != spin_unlock_irq(...) when != spin_unlock_irqrestore(...) *f(...,GFP_KERNEL,...) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 3a3dfb062c2e086c202d34f09ce29634515ad256 Author: Changli Gao Date: Thu Jul 29 14:04:18 2010 +0000 act_nat: the checksum of ICMP doesn't have pseudo header after updating the value of the ICMP payload, inet_proto_csum_replace4() should be called with zero pseudohdr. Signed-off-by: Changli Gao Acked-by: Herbert Xu Signed-off-by: David S. Miller commit 072d79a31a3b870b49886f4347e23f81b7eca3ac Author: Changli Gao Date: Thu Jul 29 13:41:46 2010 +0000 act_nat: fix wild pointer pskb_may_pull() may change skb pointers, so adjust icmph after pskb_may_pull(). Signed-off-by: Changli Gao Acked-by: Herbert Xu Signed-off-by: David S. Miller commit 28e9509b1270e5cfa8bb3c5ff51f39214aa09262 Author: Gustavo F. Padovan Date: Sat Jul 31 19:57:05 2010 -0300 Bluetooth: Remove __exit from rfcomm_cleanup_ttys() rfcomm_cleanup_ttys() is also called from rfcomm_init(), so it can't have __exit. Reported-by: Mat Martineau Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit ea4bd8ba804dedefa65303b3bd105d6d2808e621 Author: David Miller Date: Fri Jul 30 21:54:49 2010 -0700 Bluetooth: Use list_head for HCI blacklist head The bdaddr in the list root is completely unused and just taking up space. Signed-off-by: David S. Miller Tested-by: Johan Hedberg Signed-off-by: Marcel Holtmann commit 7b70c4275f28702b76b273c8534c38f8313812e9 Merge: ceb0885 a20df56 Author: Russell King Date: Sat Jul 31 14:20:16 2010 +0100 Merge branch 'devel-stable' into devel Conflicts: arch/arm/kernel/entry-armv.S arch/arm/kernel/setup.c arch/arm/mm/init.c commit ceb0885d3b01bb2e2f18765770e212914f2864be Merge: b31fc7a 08458ef Author: Russell King Date: Sat Jul 31 14:20:02 2010 +0100 Merge branch 'misc' into devel Conflicts: arch/arm/mm/init.c commit b31fc7af78e17b0203e1cd5a195c590e8adeae0d Merge: f13b103 4037242 a0fb007 cea0bb1 7d63397 a9deb13 39ae702 f4f5e28 7cfe249 4bd4894 a3e5bb4 Author: Russell King Date: Sat Jul 31 14:19:35 2010 +0100 Merge branches 'at91', 'ep93xx', 'kexec', 'iop', 'lmb', 'nomadik', 'nuc', 'pl', 'spear' and 'versatile' into devel commit f13b1035ce8bbc27d4ce7c281cddd2718f2cf5b0 Merge: e910b63 5da3e71 Author: Russell King Date: Sat Jul 31 14:19:22 2010 +0100 Merge branch 'shmobile' into devel commit 7cfe249475fdd82ad3c2767a9b906cc775dab868 Author: Russell King Date: Thu Jul 15 10:47:14 2010 +0100 ARM: AMBA: Add pclk support to AMBA bus infrastructure Some platforms gate the pclk (APB - the bus - clock) to the peripherals for power saving, along with the functional clock. When devices are accessed without pclk enabled, the kernel will oops. This gives them two options: 1. Leave all clocks on all the time. 2. Attempt to gate pclk along with the functional clock. (With some hardware, pclk and the functional clock are gated by a single bit in a register.) (1) has the disadvantage that it causes increased power usage, which is bad news for battery operated devices. (2) can lead to kernel oops if registers are accessed without the functional clock being enabled. So, introduce the apb_pclk signal in such a way existing drivers don't need to be updated. Essentially, this means we guarantee that: 1. pclk will be enabled whenever the driver is bound to a device - from probe() to remove() time. 2. pclk will also be enabled when reading the primecell IDs from the device. In order to allow drivers to be incrementally updated to achieve greater power savings, we provide two additional calls to allow drivers to manage the pclk - amba_pclk_enable()/amba_pclk_disable(). Signed-off-by: Russell King commit 06385e490996d885c93fa03ce6e5374e4674a5cb Author: Linus Walleij Date: Fri Jul 30 16:36:25 2010 +0100 ARM: 6278/2: fix regression in RealView after the introduction of pclk The patch to add the apb_pclk to the AMBA/PrimeCell bus broke RealView, since the clockdevice is not registered at probe() time. This moves clock initialization to a core_initcall() [rmk:moved before the problematical commit to avoid bisect problems] Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 4015d9a865e3bcc42d88bedc8ce1551000bab664 Author: Richard Kennedy Date: Sat Jul 31 19:58:00 2010 +0800 random: Reorder struct entropy_store to remove padding on 64bits Re-order structure entropy_store to remove 8 bytes of padding on 64 bit builds, so shrinking this structure from 72 to 64 bytes and allowing it to fit into one cache line. Signed-off-by: Richard Kennedy Signed-off-by: Matt Mackall Signed-off-by: Herbert Xu commit 313910d3b98029a867bb4aa3ee552ae573db0458 Author: Steffen Klassert Date: Tue Jul 27 07:20:47 2010 +0200 padata: update API documentation Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 0500e9b3f11ce84fc6ee48a3e29909145e58ba48 Author: Steffen Klassert Date: Tue Jul 27 07:19:27 2010 +0200 padata: Remove padata_get_cpumask A function that copies the padata cpumasks to a user buffer is a bit error prone. The cpumask can change any time so we can't be sure to have the right cpumask when using this function. A user who is interested in the padata cpumasks should register to the padata cpumask notifier chain instead. Users of padata_get_cpumask are already updated, so we can remove it. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit d3f64e46aa21dd86a239274d218ec286461bfa68 Author: Steffen Klassert Date: Tue Jul 27 07:18:46 2010 +0200 crypto: pcrypt - Update pcrypt cpumask according to the padata cpumask notifier The padata cpumask change notifier passes a padata_cpumask to the notifier chain. So we use this cpumask instead of asking padata for the cpumask. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit c57e842eff49b05c4642dd7cfb1e7aa62ab932fa Author: Steffen Klassert Date: Tue Jul 27 07:16:33 2010 +0200 crypto: pcrypt - Rename pcrypt_instance In the crypto-layer an instance refers usually to a crypto instance. The struct pcrypt_instance is not related to a crypto instance. It rather contains the padata informations, so we rename it to padata_pcrypt. The functions that handle this struct are renamed accordingly. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit c635696c7c0fbc720698dbec34bb83e53df6a967 Author: Steffen Klassert Date: Tue Jul 27 07:15:50 2010 +0200 padata: Pass the padata cpumasks to the cpumask_change_notifier chain We pass a pointer to the new padata cpumasks to the cpumask_change_notifier chain. So users can access the cpumasks without the need of an extra padata_get_cpumask function. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 65ff577e6b6e482ee9de3569e058edebdc02f069 Author: Steffen Klassert Date: Tue Jul 27 07:15:06 2010 +0200 padata: Rearrange set_cpumask functions padata_set_cpumask needs to be protected by a lock. We make __padata_set_cpumasks unlocked and static. So this function can be used by the exported and locked padata_set_cpumask and padata_set_cpumasks functions. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit e6cc11707661770ca2bd4db4b0256d28f48e7541 Author: Steffen Klassert Date: Tue Jul 27 07:14:28 2010 +0200 padata: Rename padata_alloc functions We rename padata_alloc to padata_alloc_possible because this function allocates a padata_instance and uses the cpu_possible mask for parallel and serial workers. Also we rename __padata_alloc to padata_alloc to avoid to export underlined functions. Underlined functions are considered to be private to padata. Users are updated accordingly. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 60347c194acec7ff1b4291ac8e62a5345244c2ee Author: Samuli Konttila Date: Fri Jul 30 09:02:43 2010 -0700 Input: cy8ctmg110 - capacitive touchscreen support Add support for the cy8ctmg110 capacitive touchscreen used on some embedded devices. (Some clean up by Alan Cox) Signed-off-by: Alan Cox Signed-off-by: Dmitry Torokhov commit 53c1f764022337d7168b1344d6700b3d98e4acec Author: Samuel Thibault Date: Sat Jul 31 02:28:51 2010 -0700 Input: keyboard - also match braille-only keyboards drivers/char/keyboard.c also handles braille keys, so it should also match braille-only keyboards. Signed-off-by: Samuel Thibault Signed-off-by: Dmitry Torokhov commit 0fc48c37ff3969dde71a43fa7c8f176d4bd90a3e Author: Ajit Khaparde Date: Thu Jul 29 06:18:58 2010 +0000 be2net: fix to avoid sending get_stats request if one is already being processed. GET_STATS request uses the same memory region as the response. If a new request for get stats is fired before the response for the previous get_stats request is received, the response will corrupt the new request, causing the f/w to misbehave. Signed-off-by: Somnath K Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 48e9989e033966fd738d062ea9730fe10085fdd1 Author: Ajit Khaparde Date: Thu Jul 29 06:17:17 2010 +0000 be2net: change to show correct physical link status link status is wrongly displayed under certain circumstances. This change fixes it. Signed-off-by: Somnath K Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 7c185276e8d820fa50a678c61abd611ee599920e Author: Ajit Khaparde Date: Thu Jul 29 06:16:33 2010 +0000 be2net: add code to dump registers for debug when the BE device becomes unresponsive, dump the registers to help debugging Signed-off-by: Somnath K Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 6dedec818ac2a3783581a761b0680e713f78afde Author: Ajit Khaparde Date: Thu Jul 29 06:15:32 2010 +0000 be2net: fix to correctly know if driver needs to run for a VF or a PF Move be_check_sriov_fn_type to appropriate place to correctly determine if the be2net driver needs to work as a VF driver or a PF driver. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 060b946cc28682620667c33cb145094c763078be Author: Mike McCormack Date: Thu Jul 29 03:34:52 2010 +0000 sky2: Code style fixes Fix selected style problems reported by checkpatch. Signed-off-by: Mike McCormack Acked-by: Stephen Hemminger Signed-off-by: David S. Miller commit e994762f7afef242738b220b48c00a6fd2b165a1 Author: Sriram Date: Thu Jul 29 02:34:00 2010 +0000 TI DaVinci EMAC: Fix incorrect reference to EMAC_CTRL registers. The EMAC modules control registers vary as per the version of the EMAC module. EMAC_CTRL_EWCTL,EMAC_CTRL_EWINTTCNT are available only on EMAC_VERSION_1. The emac_dump_regs() function accesses these indiscriminately. This patch fixes the issue. Signed-off-by: Sriramakrishnan Signed-off-by: David S. Miller commit 3725b1fe0b9c7e5ba3c4f6e585cd93a7174c1e07 Author: Sriram Date: Thu Jul 29 02:33:59 2010 +0000 TI DaVinci EMAC: Fix asymmetric handling of packets in NAPI Poll function. The current implementation of NAPI poll function in the driver does not service Rx packets, error condition even if a single Tx packet gets serviced in the napi poll call. This behavior severely affects performance for specific use cases. This patch modifies the poll function implementation to service tx/rx packets in an identical manner. Signed-off-by: Sriramakrishnan Signed-off-by: David S. Miller commit 84da2658a619c2d96fae6741580879cc6d7a4cd1 Author: Sriram Date: Thu Jul 29 02:33:58 2010 +0000 TI DaVinci EMAC : Implement interrupt pacing functionality. DaVinci EMAC module includes an interrupt pacing block that can be programmed to throttle the rate at which interrupts are generated. This patch implements interrupt pacing logic that can be controlled through the ethtool interface(only rx_coalesce_usecs param is honored) Signed-off-by: Sriramakrishnan Signed-off-by: David S. Miller commit 3a7fda06ba48e97650fe44ea8e8a7cc385e1c100 Author: Herbert Xu Date: Thu Jul 29 00:45:30 2010 +0000 bridge: Allow multicast snooping to be disabled before ifup Currently you cannot disable multicast snooping while a device is down. There is no good reason for this restriction and this patch removes it. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 6d1d1d398cb7db7a12c5d652d50f85355345234f Author: Herbert Xu Date: Thu Jul 29 01:12:31 2010 +0000 bridge: Fix skb leak when multicast parsing fails on TX On the bridge TX path we're leaking an skb when br_multicast_rcv returns an error. Reported-by: David Lamparter Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit de140b0d511ad86a5dd0888c9095ae030ada2e86 Author: Dan Carpenter Date: Wed Jul 28 22:27:29 2010 +0000 dnet: fixup error handling in initialization There were two problems here. We returned success if dnet_mii_init() failed and there was a release_mem_region() missing. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit c5cb002fb0c82a0ccaef24e002ab370165b55be7 Author: Andy Gospodarek Date: Wed Jul 28 15:13:56 2010 +0000 bonding: prevent sysfs from allowing arp monitoring with alb/tlb When using module options arp monitoring and balance-alb/balance-tlb are mutually exclusive options. Anytime balance-alb/balance-tlb are enabled mii monitoring is forced to 100ms if not set. When configuring via sysfs no checking is currently done. Handling these cases with sysfs has to be done a bit differently because we do not have all configuration information available at once. This patch will not allow a mode change to balance-alb/balance-tlb if arp_interval is already non-zero. It will also not allow the user to set a non-zero arp_interval value if the mode is already set to balance-alb/balance-tlb. They are still mutually exclusive on a first-come, first serve basis. Tested with initscripts on Fedora and manual setting via sysfs. Signed-off-by: Andy Gospodarek Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 75f5e1c6f6cef2c201da688b2279cf15156db56d Author: Joe Perches Date: Tue Jul 27 11:47:03 2010 +0000 drivers/net/vxge/vxge-main.c: Use pr_ and netdev_ Use pr_fmt, pr_ and netdev_ where appropriate. Signed-off-by: Joe Perches Acked-by: Jon Mason Signed-off-by: David S. Miller commit a3bdb549e30e7a263f7a589747c40e9c50110315 Author: Dmitry Popov Date: Thu Jul 29 01:59:36 2010 +0000 tcp: cookie transactions setsockopt memory leak There is a bug in do_tcp_setsockopt(net/ipv4/tcp.c), TCP_COOKIE_TRANSACTIONS case. In some cases (when tp->cookie_values == NULL) new tcp_cookie_values structure can be allocated (at cvp), but not bound to tp->cookie_values. So a memory leak occurs. Signed-off-by: Dmitry Popov Signed-off-by: David S. Miller commit 19de1e389bddb89c4cc1e4d29bb99194b50cb487 Author: Randy Dunlap Date: Thu Jul 29 07:14:27 2010 +0000 net: ks8842 depends on DMA_ENGINE ks8842 uses dma channel functions, so it should depend on DMA_ENGINE. ERROR: "__dma_request_channel" [drivers/net/ks8842.ko] undefined! ERROR: "dma_release_channel" [drivers/net/ks8842.ko] undefined! Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit 3ac377462938e8ec0a521dba17b2a81b502d8d19 Author: Sergey Matyukevich Date: Wed Jul 28 08:05:21 2010 +0000 ucc_geth: fix UCC device number in debug message This patch contains a fix for UCC device number in verbose debug message. Signed-off-by: Sergey Matyukevich Signed-off-by: David S. Miller commit bee31369ce16fc3898ec9a54161248c9eddb06bc Author: Nolan Leake Date: Tue Jul 27 13:53:43 2010 +0000 tun: keep link (carrier) state up to date Currently, only ethtool can get accurate link state of a tap device. With this patch, IFF_RUNNING and IF_OPER_UP/DOWN are kept up to date as well. Signed-off-by: Nolan Leake Signed-off-by: David S. Miller commit e8e5c2155b0035b6e04f29be67f6444bc914005b Author: Matt Evans Date: Thu Jul 29 18:49:08 2010 +0000 powerpc/kexec: Fix orphaned offline CPUs across kexec When CPU hotplug is used, some CPUs may be offline at the time a kexec is performed. The subsequent kernel may expect these CPUs to be already running, and will declare them stuck. On pseries, there's also a soft-offline (cede) state that CPUs may be in; this can also cause problems as the kexeced kernel may ask RTAS if they're online -- and RTAS would say they are. The CPU will either appear stuck, or will cause a crash as we replace its cede loop beneath it. This patch kicks each present offline CPU awake before the kexec, so that none are forever lost to these assumptions in the subsequent kernel. Now, the behaviour is that all available CPUs that were offlined are now online & usable after the kexec. This mimics the behaviour of a full reboot (on which all CPUs will be restarted). Signed-off-by: Matt Evans Signed-off-by: Benjamin Herrenschmidt commit e2f7f73717c0a2927bbe7551d90b1ec47a094361 Author: Matt Evans Date: Thu Jul 29 18:47:17 2010 +0000 powerpc/kexec: Add to and tidy debug/comments in machine_kexec64.c Tidies some typos, KERN_INFO-ise an info msg, and add a debug msg showing when the final sequence starts. Also adds a comment to kexec_prepare_cpus_wait() to make note of a possible problem; the need for kexec to deal with CPUs that failed to originally start up. Signed-off-by: Matt Evans Signed-off-by: Benjamin Herrenschmidt commit 2c48a7d615b82e030196e8b61ab0c7933be16dff Author: Michael Neuling Date: Tue Jul 27 18:26:21 2010 +0000 powerpc: Print decimal values in prom_init.c Currently we look pretty stupid when printing out a bunch of things in prom_init.c. eg. Max number of cores passed to firmware: 0x0000000000000080 So I've change this to print in decimal: Max number of cores passed to firmware: 128 (NR_CPUS = 256) This required adding a prom_print_dec() function and changing some prom_printk() calls from %x to %lu. Signed-off-by: Michael Neuling Signed-off-by: Benjamin Herrenschmidt commit ceddee23be9fda04b928aa309fd95931bc4efb96 Author: Robert Jennings Date: Thu Jul 22 16:43:44 2010 +0000 powerpc: ONLINE to OFFLINE CPU state transition during removal If a CPU remove is attempted using the 'release' interface on hardware which supports extended cede, the CPU will be put in the INACTIVE state rather than the OFFLINE state due to the default preferred_offline_state in that situation. In the INACTIVE state it will fail to be removed. This patch changes the preferred offline state to OFFLINE when an CPU is in the ONLINE state. After cpu_down() is called in dlpar_offline_cpu() the CPU will be OFFLINE and CPU removal can continue. Signed-off-by: Robert Jennings Signed-off-by: Benjamin Herrenschmidt commit ff4bb7cb9feea3d8851c0e7837dce15822acf11b Author: Benjamin Herrenschmidt Date: Sat Jul 31 15:05:15 2010 +1000 powerpc/powermac: Add PowerMac10,2 machine descriptor This adds support for the Mac Mini's that were quietly rolled out in 2005. Work still needs to be done to support suspend and WakeOnLan. Signed-off-by: Mark Crichton Signed-off-by: Benjamin Herrenschmidt commit 940ce422a367c8e65404a5ef1ff5969527a06410 Author: Benjamin Herrenschmidt Date: Sat Jul 31 15:04:15 2010 +1000 powerpc/pseries: Increase cpu die timeout In testing SMT disable, we have been regularly seeing the following message: Querying DEAD? cpu %i (%i) shows %i This indicates the current delay in pseries_cpu_die where we wait for the specified CPU to die, is insufficient. Usually, this does not cause a problem, but we've seen this result in BUG_ON's going off in the timer code when we try to migrate the timers off the dead cpu while a timer is still running. Increasing this delay, as is done in this patch, seems to resolve this issue. Signed-off-by: Brian King Signed-off-by: Benjamin Herrenschmidt commit d77cb21b578a5428482bc0fd187f7c0518a0b32a Author: Tiejun Chen Date: Thu Jul 15 20:17:11 2010 +0000 powerpc/smp: remove the incorrect decrementer initial codes for AP We already defined start_cpu_decrementer() to invoke decrementer for AP as the following path: start_secondary() -> secondary_cpu_time_init() -> start_cpu_decrementer() So remove these incorrect codes introduced from commit: e7f75ad0 powerpc/47x: Base ppc476 support And actually we really should not enable decrementer before calling set_dec(). Signed-off-by: Tiejun Chen Signed-off-by: Benjamin Herrenschmidt commit 1927445a7376e183072e6147a9641088b9b6a30e Author: Anton Vorontsov Date: Thu Jul 15 07:38:16 2010 +0000 powerpc: Fix GENERIC_ISA_DMA dependency On PowerPC we should always use generic ISA DMA API implementation as there is simply no other implementation exist. Without this patch, the following build error pops up: sound/built-in.o: In function 'snd_dma_pointer': (.text+0x74ae): undefined reference to 'dma_spin_lock' ... make: *** [.tmp_vmlinux1] Error 1 This is PPC_85xx, SMP and some sound drivers set to =y. Signed-off-by: Anton Vorontsov Acked-by: Dave Liu Signed-off-by: Benjamin Herrenschmidt commit e9ae9dabfc1df26d5eff0102c4d359f534e11087 Author: Brian King Date: Wed Jul 14 08:48:13 2010 +0000 powerpc: Remove redundant xics badness warning While testing cpu offlining, we are regularly seeing the WARN_ON go off in xics_ipi_dispatch. It can occur when an IPI gets sent to the CPU while it is going offline. There is already a similar WARN_ON in the handlers for PPC_MSG_CALL_FUNCTION and PPC_MSG_CALL_FUNC_SINGLE, so the warning is not needed in that path. The debugger handler handles this case by simply ignoring IPIs for offline CPUs, so no warning is needed there. And the reschedule IPI, which is what is occurring in our test environment, can be safely ignored, so we can simply remove the WARN_ON from xics_ipi_dispatch. Signed-off-by: Brian King Signed-off-by: Benjamin Herrenschmidt commit 67238fb721639046b5d76488317522af4ece9d61 Author: Neil Horman Date: Tue Jul 13 03:46:09 2010 +0000 powerpc: Add vmcoreinfo symbols to allow makdumpfile to filter core files properly Signed-off-by: Neil Horman machine_kexec.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) Reviewed-by: WANG Cong Signed-off-by: Benjamin Herrenschmidt commit ea01c6b487d53571e2e5f15a0fd41700c1e0486d Author: Joe Perches Date: Mon Jul 12 10:49:55 2010 +0000 powerpc: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: Benjamin Herrenschmidt commit bbc8e30f17077f83fdeeeca0cf70e0f179279282 Author: Matthew McClintock Date: Wed Jul 21 11:14:54 2010 +0000 powerpc/crashdump: Fix issues with kexec and 36bit physical addr Fix sizes of variables so correct values are exported via /proc. Cast variable in comparison to avoid compiler error. Signed-off-by: Matthew McClintock Signed-off-by: Benjamin Herrenschmidt commit fc53b4202e61c7e9008c241933ae282aab8a6082 Author: Matt Evans Date: Wed Jul 7 21:55:37 2010 +0000 powerpc/kexec: Switch to a static PACA on the way out With dynamic PACAs, the kexecing CPU's PACA won't lie within the kernel static data and there is a chance that something may stomp it when preparing to kexec. This patch switches this final CPU to a static PACA just before we pull the switch. Signed-off-by: Matt Evans Signed-off-by: Benjamin Herrenschmidt commit 54e5bc020ce1c959eaa7be18cedb734b6b13745e Author: Andres Salomon Date: Mon Jun 28 22:00:29 2010 -0400 x86, olpc: Constify an olpc_ofw() arg The arguments passed to OFW shouldn't be modified; update the 'args' argument of olpc_ofw to reflect this. This saves us some later casting away of consts. Signed-off-by: Andres Salomon LKML-Reference: <20100628220029.1555ac24@debian> Signed-off-by: H. Peter Anvin commit 25971865d48a8d0ece5307a59dbd3f06d05a7567 Author: Andres Salomon Date: Wed Jun 16 23:19:28 2010 -0400 x86, olpc: Use pr_debug() for EC commands Unconditionally printing EC debug messages was helpful when we were actually debugging the EC, but during normal operation it can get pretty annoying. Using pr_debug allows us finer-grained control. Signed-off-by: Andres Salomon LKML-Reference: <20100616231928.16b539f0@dev.queued.net> Signed-off-by: H. Peter Anvin commit 9792db6174d9927700ed288e6d74b9391bf785d1 Author: Fenghua Yu Date: Thu Jul 29 17:13:42 2010 -0700 x86, cpu: Package Level Thermal Control, Power Limit Notification definitions Add package level thermal and power limit feature support. The two MSRs and features are new starting with Intel's Sandy Bridge processor. Please check Intel 64 and IA-32 Architectures SDMV Vol 3A 14.5.6 Power Limit Notification and 14.6 Package Level Thermal Management. This patch also fixes a bug which defines reverse THERM_INT_LOW_ENABLE bit and THERM_INT_HIGH_ENABLE bit. [ hpa: fixed up against current tip:x86/cpu ] Signed-off-by: Fenghua Yu LKML-Reference: <1280448826-12004-2-git-send-email-fenghua.yu@intel.com> Reviewed-by: Len Brown Signed-off-by: H. Peter Anvin commit 68f202e4e87cfab4439568bf397fcc5c7cf8d729 Author: Suresh Siddha Date: Fri Jul 30 11:46:42 2010 -0700 x86, mtrr: Use stop machine context to rendezvous all the cpu's Use the stop machine context rather than IPI's to rendezvous all the cpus for MTRR initialization that happens during cpu bringup or for MTRR modifications during runtime. This avoids deadlock scenario (reported by Prarit) like: cpu A holds a read_lock (tasklist_lock for example) with irqs enabled cpu B waits for the same lock with irqs disabled using write_lock_irq cpu C doing set_mtrr() (during AP bringup for example), which will try to rendezvous all the cpus using IPI's This will result in C and A come to the rendezvous point and waiting for B. B is stuck forever waiting for the lock and thus not reaching the rendezvous point. Using stop cpu (run in the process context of per cpu based keventd) to do this rendezvous, avoids this deadlock scenario. Also make sure all the cpu's are in the rendezvous handler before we proceed with the local_irq_save() on each cpu. This lock step disabling irqs on all the cpus will avoid other deadlock scenarios (for example involving with the blocking smp_call_function's etc). [ This problem is very old. Marking -stable only for 2.6.35 as the stop_one_cpu_nowait() API is present only in 2.6.35. Any older kernel interested in this fix need to do some more work in backporting this patch. ] Reported-by: Prarit Bhargava Signed-off-by: Suresh Siddha LKML-Reference: <1280515602.2682.10.camel@sbsiddha-MOBL3.sc.intel.com> Acked-by: Prarit Bhargava Cc: stable@kernel.org [2.6.35] Signed-off-by: H. Peter Anvin commit d65a458b348cd458413b3cfec66e43ebd0367646 Author: Arnaldo Carvalho de Melo Date: Fri Jul 30 18:31:28 2010 -0300 perf tools: Release session and symbol resources on exit So that we reduce the noise when looking for leaks using tools such as valgrind. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 591765fdaf7ea1888157f342b67b0461f2e5ed9b Author: Arnaldo Carvalho de Melo Date: Fri Jul 30 18:28:42 2010 -0300 perf tools: Release thread resources on PERF_RECORD_EXIT For long running sessions with many threads with short lifetimes the amount of memory that the buildid process takes is too much. Since we don't have hist_entries that may be pointing to them, we can just release the resources associated with each thread when the exit (PERF_RECORD_EXIT) event is received. For normal processing we need to annotate maps with hits, and thus hist_entries pointing to it and drop the ones that had none. Will be done in a followup patch. Cc: David S. Miller Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit ac8b422838046ffc26be4874a3cbae0d313f4209 Author: Dominik Brodowski Date: Wed Jul 21 22:38:13 2010 +0200 pcmcia: remove cs_types.h Remove cs_types.h which is no longer needed: Most definitions aren't used at all, a few can be made away with, and two remaining definitions (typedefs, unfortunatley) may be moved to more specific places. CC: linux-ide@vger.kernel.org CC: linux-usb@vger.kernel.org CC: laforge@gnumonks.org CC: linux-mtd@lists.infradead.org CC: alsa-devel@alsa-project.org CC: linux-serial@vger.kernel.org Acked-by: Marcel Holtmann (for drivers/bluetooth/) Acked-by: David S. Miller Signed-off-by: Dominik Brodowski commit ce3f9d71bd9c4268698109ad425625a2a8f51e22 Author: Dominik Brodowski Date: Wed Jul 21 14:43:05 2010 +0200 pcmcia: remove unused flag, simplify headers As we only provide one way to set up resources now, we can remove the resource-setup-related bitfield (except resource_setup_done). In addition, pcmcia_state only consisted of one entry, so remove this bitfield as well. Suggested-by: Komuro Signed-off-by: Dominik Brodowski commit 134716f19bc53dc22e8aba34f2af195b805328b5 Author: Dominik Brodowski Date: Sun Jul 11 10:45:02 2010 +0200 pcmcia: remove obsolete CS_EVENT_ definitions Remove some definitions which became obsolete when the central event handler got removed. Signed-off-by: Dominik Brodowski commit 7b24e7988263d3cae25ff35cfeae8a5657d93051 Author: Dominik Brodowski Date: Sun Jul 11 10:26:53 2010 +0200 pcmcia: split up central event handler Split up the central event handler for 16bit cards into three individual functions. Signed-off-by: Dominik Brodowski commit 216d7cdd3b060518a2d4faf584eb15ef5af862b6 Author: Dominik Brodowski Date: Sun Jul 11 10:04:59 2010 +0200 pcmcia: simplify event callback The event callback for handling 16bit PCMCIA cards only needs to be informed about a few events. Furthermore, send_event may already only be called with skt->skt_mutex held, which also protects against the module being removed behind the callback's back. Signed-off-by: Dominik Brodowski commit 5716d415f8c5a17d44f6e1d5a1e4998f7306a93b Author: Dominik Brodowski Date: Sun Jul 11 09:51:14 2010 +0200 pcmcia: remove obsolete ioctl Signed-off-by: Dominik Brodowski commit 77041ed9b49a9e10f374bfa6e482d30ee7a3d46e Author: Trond Myklebust Date: Thu Jul 1 12:49:11 2010 -0400 NFSv4: Ensure the lockowners are labelled using the fl_owner and/or fl_pid flock locks want to be labelled using the process pid, while posix locks want to be labelled using the fl_owner. Signed-off-by: Trond Myklebust commit d3c7b7ccc199ee564177ee914c04771d6bc00295 Author: Trond Myklebust Date: Thu Jul 1 12:49:01 2010 -0400 NFSv4: Add support for the RELEASE_LOCKOWNER operation This is needed by NFSv4.0 servers in order to keep the number of locking stateids at a manageable level. Signed-off-by: Trond Myklebust commit daccbded7f153ec84a3baf3136052e41d0eab555 Author: Trond Myklebust Date: Fri Jun 25 18:11:43 2010 -0400 NFSv4: Clean up for lockowner XDR encoding Signed-off-by: Trond Myklebust commit f11ac8db5d07b6e99d41ff4aa39d878ee5cef1c5 Author: Trond Myklebust Date: Fri Jun 25 16:35:53 2010 -0400 NFSv4: Ensure that we track the NFSv4 lock state in read/write requests. This patch fixes bugzilla entry 14501: https://bugzilla.kernel.org/show_bug.cgi?id=14501 Signed-off-by: Trond Myklebust commit 039a87ca536a85bc169ce092e44bd57adfa1f563 Author: J. Bruce Fields Date: Fri Jul 30 11:33:32 2010 -0400 nfsd: minor nfsd read api cleanup Christoph points that the NFSv2/v3 callers know which case they want here, so we may as well just call the file=NULL case directly instead of making this conditional. Cc: Christoph Hellwig Signed-off-by: J. Bruce Fields commit 3d2a531804d16cd8df6dbbb0429c6f143e756049 Author: Rafael J. Wysocki Date: Fri Jul 23 22:19:55 2010 +0200 PCI: Do not run NVidia quirks related to MSI with MSI disabled There is no reason to run NVidia-specific quirks related to HT MSI mappings with MSI disabled via pci=nomsi, so make __nv_msi_ht_cap_quirk() return immediately in that case. This allows at least one machine to boot 100% of the time with pci=nomsi (it still doesn't boot reliably without that). Addresses https://bugzilla.kernel.org/show_bug.cgi?id=16443 . Cc: stable@kernel.org Signed-off-by: Rafael J. Wysocki Signed-off-by: Jesse Barnes commit 1f7979ac53224b0208e7d3eaeb5fd72ab9687389 Author: Kulikov Vasiliy Date: Sat Jul 3 20:04:03 2010 +0400 x86/PCI: use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: Jesse Barnes commit 4e344b1cc53989e8ecc1140e9346f657d7c8aa9e Author: Kulikov Vasiliy Date: Sat Jul 3 20:04:39 2010 +0400 PCI: use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: Jesse Barnes commit 30da55242818a8ca08583188ebcbaccd283ad4d9 Author: Ben Hutchings Date: Fri Jul 23 14:56:28 2010 +0100 PCI: MSI: Restore read_msi_msg_desc(); add get_cached_msi_msg_desc() commit 2ca1af9aa3285c6a5f103ed31ad09f7399fc65d7 "PCI: MSI: Remove unsafe and unnecessary hardware access" changed read_msi_msg_desc() to return the last MSI message written instead of reading it from the device, since it may be called while the device is in a reduced power state. However, the pSeries platform code really does need to read messages from the device, since they are initially written by firmware. Therefore: - Restore the previous behaviour of read_msi_msg_desc() - Add new functions get_cached_msi_msg{,_desc}() which return the last MSI message written - Use the new functions where appropriate Acked-by: Michael Ellerman Signed-off-by: Ben Hutchings Signed-off-by: Jesse Barnes commit 911e1c9b05a8e3559a7aa89083930700a0b9e7ee Author: Narendra K Date: Mon Jul 26 05:56:50 2010 -0500 PCI: export SMBIOS provided firmware instance and label to sysfs This patch exports SMBIOS provided firmware instance and label of onboard PCI devices to sysfs. New files are: /sys/bus/pci/devices/.../label which contains the firmware name for the device in question, and /sys/bus/pci/devices/.../index which contains the firmware device type instance for the given device. Signed-off-by: Jordan Hargrave Signed-off-by: Narendra K Signed-off-by: Jesse Barnes commit 8633328be242677fdedc42052838dd0608e7f342 Author: Alex Williamson Date: Mon Jul 19 09:45:34 2010 -0600 PCI: Allow read/write access to sysfs I/O port resources PCI sysfs resource files currently only allow mmap'ing. On x86 this works fine for memory backed BARs, but doesn't work at all for I/O port backed BARs. Add read/write to I/O port PCI sysfs resource files to allow userspace access to these device regions. Acked-by: Chris Wright Signed-off-by: Alex Williamson Signed-off-by: Jesse Barnes commit 2491762cfb475dbdfa3db11ebea6de49f58b7fac Author: Bjorn Helgaas Date: Fri Jul 23 12:53:27 2010 -0600 x86/PCI: use host bridge _CRS info on ASRock ALiveSATA2-GLAN This DMI quirk turns on "pci=use_crs" for the ALiveSATA2-GLAN because amd_bus.c doesn't handle this system correctly. The system has a single HyperTransport I/O chain, but has two PCI host bridges to buses 00 and 80. amd_bus.c learns the MMIO range associated with buses 00-ff and that this range is routed to the HT chain hosted at node 0, link 0: bus: [00, ff] on node 0 link 0 bus: 00 index 1 [mem 0x80000000-0xfcffffffff] This includes the address space for both bus 00 and bus 80, and amd_bus.c assumes it's all routed to bus 00. We find device 80:01.0, which BIOS left in the middle of that space, but we don't find a bridge from bus 00 to bus 80, so we conclude that 80:01.0 is unreachable from bus 00, and we move it from the original, working, address to something outside the bus 00 aperture, which does not work: pci 0000:80:01.0: reg 10: [mem 0xfebfc000-0xfebfffff 64bit] pci 0000:80:01.0: BAR 0: assigned [mem 0xfd00000000-0xfd00003fff 64bit] The BIOS told us everything we need to know to handle this correctly, so we're better off if we just pay attention, which lets us leave the 80:01.0 device at the original, working, address: ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-7f]) pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xff37ffff] ACPI: PCI Root Bridge [PCI1] (domain 0000 [bus 80-ff]) pci_root PNP0A08:00: host bridge window [mem 0xfebfc000-0xfebfffff] This was a regression between 2.6.33 and 2.6.34. In 2.6.33, amd_bus.c was used only when we found multiple HT chains. 3e3da00c01d050, which enabled amd_bus.c even on systems with a single HT chain, caused this failure. This quirk was written by Graham. If we ever enable "pci=use_crs" for machines from 2006 or earlir, this quirk should be removed. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=16007 Cc: stable@kernel.org Reported-by: Graham Ramsey Signed-off-by: Bjorn Helgaas Signed-off-by: Jesse Barnes commit bfb51cd01661136bae1dd00c32d504cff6a9f924 Author: FUJITA Tomonori Date: Mon Jul 12 15:59:11 2010 +0900 PCI: remove unused HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_{SIZE|BOUNDARY} In 2.6.34, we transformed the PCI DMA API into the generic device mode. The PCI DMA API is just the wrapper of the DMA API. So we don't need HAVE_ARCH_PCI_SET_DMA_MAX_SEGMENT_SIZE or HAVE_ARCH_PCI_SET_DMA_SEGMENT_BOUNDARY (which enable architectures to have the own implementations). Both haven't been used anyway. Signed-off-by: FUJITA Tomonori Signed-off-by: Jesse Barnes commit 253d2e549818f5a4a52e2db0aba3dacee21e5b38 Author: Jacob Pan Date: Fri Jul 16 10:19:22 2010 -0700 PCI: disable mmio during bar sizing It is a known issue that mmio decoding shall be disabled while doing PCI bar sizing. Host bridge and other devices (PCI PIC) shall be excluded for certain platforms. This patch mainly comes from Mathew Willcox's patch in http://kerneltrap.org/mailarchive/linux-kernel/2007/9/13/258969. A new flag bit "mmio_alway_on" is added to pci_dev with the intention that devices with their mmio decoding cannot be disabled during BAR sizing shall have this bit set, preferrablly in their quirks. Without this patch, Intel Moorestown platform graphics unit will be corrupted during bar sizing activities. Signed-off-by: Jacob Pan Signed-off-by: Jesse Barnes commit fcd097f31a6ee207cc0c3da9cccd2a86d4334785 Author: Ben Hutchings Date: Thu Jun 17 20:16:36 2010 +0100 PCI: MSI: Remove unsafe and unnecessary hardware access During suspend on an SMP system, {read,write}_msi_msg_desc() may be called to mask and unmask interrupts on a device that is already in a reduced power state. At this point memory-mapped registers including MSI-X tables are not accessible, and config space may not be fully functional either. While a device is in a reduced power state its interrupts are effectively masked and its MSI(-X) state will be restored when it is brought back to D0. Therefore these functions can simply read and write msi_desc::msg for devices not in D0. Further, read_msi_msg_desc() should only ever be used to update a previously written message, so it can always read msi_desc::msg and never needs to touch the hardware. Tested-by: "Michael Chan" Signed-off-by: Ben Hutchings Signed-off-by: Jesse Barnes commit ea5f9fc5899660dd26c1ccf3fab183bd041140ee Author: Matthew Garrett Date: Tue Jun 22 17:03:03 2010 -0400 PCI: Default PCIe ASPM control to on and require !EMBEDDED to disable The CONFIG_PCIEASPM option is confusing and potentially dangerous. ASPM is a hardware mediated feature rather than one under direct OS control, and even if the config option is disabled the system firmware may have turned on ASPM on various bits of hardware. This can cause problems later - various hardware that claims to support ASPM does a poor job of it and may hang or cause other difficulties. The kernel is able to recognise this in many cases and disable the ASPM functionality, but only if CONFIG_PCIEASPM is enabled. Given that in its default configuration this option will either leave the hardware as it was originally or disable hardware functionality that may cause problems, it should by default y. The only reason to disable it ought to be to reduce code size, so make it dependent on CONFIG_EMBEDDED. Signed-off-by: Matthew Garrett Cc: lrodriguez@atheros.com Cc: maximlevitsky@gmail.com Signed-off-by: Jesse Barnes commit 8cc2bfd87fdd2f4a31f39c86f59df4b4be2c0adc Author: Kenji Kaneshige Date: Wed Jun 23 16:04:10 2010 +0900 PCI: kernel oops on access to pci proc file while hot-removal I encountered the problem that /proc/bus/pci/XX/YY is not removed even after the corresponding device is hot-removed, if the file is still being opened. In addtion, accessing this file in this situation causes kernel panic (see below). Becasue the pci_proc_detach_device() doesn't call remove_proc_entry() if struct proc_dir_entry->count > 1, access to /proc/bus/pci/XX/YY would refer to struct pci_dev that was already freed. Though I don't know why the check for proc_dir_entry->count was added, I don't think it is needed. Removing this check fixes the problem. Steps to reproduce ------------------ # cd /sys/bus/pci/slots/2/ # PROC_BUS_PCI_FILE=/proc/bus/pci/`awk -F: '{print $2"/"$3}' < address`.0 # sleep 10000 < $PROC_BUS_PCI_FILE & # echo 0 > power # while true; do cat $PROC_BUS_PCI_FILE > /dev/null; done Oops Messages ------------- BUG: unable to handle kernel NULL pointer dereference at 00000042 IP: [] pci_user_read_config_dword+0x65/0xa0 *pdpt = 000000002185e001 *pde = 0000000476a79067 Oops: 0000 [#1] SMP last sysfs file: /sys/devices/pci0000:00/0000:00:1c.0/0000:10:00.0/local_cpus Modules linked in: autofs4 sunrpc cpufreq_ondemand acpi_cpufreq ipv6 dm_mirror dm_region_hash dm_log dm_mod e1000e i2c_i801 i2c_core iTCO_wdt igb sg pcspkr dca iTCO_vendor_support ext4 mbcache jbd2 sd_mod crc_t10dif lpfc mptsas scsi_transport_fc mptscsih mptbase scsi_tgt scsi_transport_sas [last unloaded: microcode] Pid: 2997, comm: cat Not tainted 2.6.34-kk #32 SB/PRIMEQUEST 1800E EIP: 0060:[] EFLAGS: 00010046 CPU: 19 EIP is at pci_user_read_config_dword+0x65/0xa0 EAX: 00000002 EBX: e44f1800 ECX: e144df14 EDX: 155668c7 ESI: 00000087 EDI: 00000000 EBP: e144df40 ESP: e144df0c DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 Process cat (pid: 2997, ti=e144c000 task=e26f2570 task.ti=e144c000) Stack: c09ceac0 c0570f72 ffffffff 08c57000 00000000 00001000 e44f1800 c05d2404 <0> e144df40 00001000 00000000 00001000 08c57000 3093ae50 e420cb40 e358d5c0 <0> c05d2300 fffffffb c054984f e144df9c 00008000 08c57000 e358d5c0 00008000 Call Trace: [] ? security_capable+0x22/0x30 [] ? proc_bus_pci_read+0x104/0x220 [] ? proc_bus_pci_read+0x0/0x220 [] ? proc_reg_read+0x5f/0x90 [] ? proc_reg_read+0x0/0x90 [] ? vfs_read+0x9d/0x190 [] ? audit_syscall_entry+0x204/0x230 [] ? sys_read+0x41/0x70 [] ? sysenter_do_call+0x12/0x28 Code: b4 26 00 00 00 00 b8 20 88 b1 c0 c7 44 24 08 ff ff ff ff e8 3e 52 22 00 f6 83 24 04 00 00 20 75 34 8b 43 08 8d 4c 24 08 8b 53 1c <8b> 70 40 89 4c 24 04 89 f9 c7 04 24 04 00 00 00 ff 16 89 c6 f0 EIP: [] pci_user_read_config_dword+0x65/0xa0 SS:ESP 0068:e144df0c CR2: 0000000000000042 Acked-by: Greg Kroah-Hartman Signed-off-by: Kenji Kaneshige Signed-off-by: Jesse Barnes commit a3f5835a8e0bd25ed15becd65e01aa3d5ac8d771 Author: Kulikov Vasiliy Date: Tue Jun 29 14:15:28 2010 +0400 PCI: pci-sysfs: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Jesse Barnes commit 852972acff8f10f3a15679be2059bb94916cba5d Author: Matthew Garrett Date: Tue Jun 22 11:25:43 2010 -0400 ACPI: Disable ASPM if the platform won't provide _OSC control for PCIe The PCI SIG documentation for the _OSC OS/firmware handshaking interface states: "If the _OSC control method is absent from the scope of a host bridge device, then the operating system must not enable or attempt to use any features defined in this section for the hierarchy originated by the host bridge." The obvious interpretation of this is that the OS should not attempt to use PCIe hotplug, PME or AER - however, the specification also notes that an _OSC method is *required* for PCIe hierarchies, and experimental validation with An Alternative OS indicates that it doesn't use any PCIe functionality if the _OSC method is missing. That arguably means we shouldn't be using MSI or extended config space, but right now our problems seem to be limited to vendors being surprised when ASPM gets enabled on machines when other OSs refuse to do so. So, for now, let's just disable ASPM if the _OSC method doesn't exist or refuses to hand over PCIe capability control. Acked-by: Rafael J. Wysocki Signed-off-by: Matthew Garrett Signed-off-by: Jesse Barnes commit 3f579c340fe6d6bdd8c6f9f144e7c3b85d4174ec Author: Yinghai Lu Date: Fri May 21 14:35:06 2010 -0700 PCI hotplug: make sure child bridges are enabled at hotplug time Found one PCIe Module with several bridges built-in where a "cold" hotadd doesn't work. If we end up reassigning bridge windows at hotadd time, and have to loop through assigning new ranges, we won't end up enabling the child bridges because the first assignment pass already tried to enable them, which prevents __pci_bridge_assign_resource from updating the windows. So try to move enabling of child bridges to the end, and only do it once. Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit 0ba10bc75271e4139eb9ca67d107624d581e3a94 Author: Praveen Kalamegham Date: Thu May 20 12:15:01 2010 -0500 PCI hotplug: shpchp: Removed check for hotplug of display devices Removed check to prevent hotplug of display devices within shpchp. Originally this was thought to have been required within the PCI Hotplug specification for some legacy devices. However there is no such requirement in the most recent revision. The check prevents hotplug of not only display devices but also computational GPUs which require serviceability. Signed-off-by: Praveen Kalamegham Signed-off-by: Jesse Barnes commit 01b666df487b80c956cef3ce3253776ddeebd41e Author: Praveen Kalamegham Date: Thu May 20 15:32:22 2010 -0500 PCI hotplug: pciehp: Fixed return value sign for pciehp_unconfigure_device pciehp_unconfigure_device() should return -EINVAL, not EINVAL. Signed-off-by: Praveen Kalamegham Signed-off-by: Jesse Barnes commit 41cd766b065970ff6f6c89dd1cf55fa706c84a3d Author: Matthew Garrett Date: Wed Jun 9 16:05:07 2010 -0400 PCI: Don't enable aspm before drivers have had a chance to veto it The aspm code will currently set the configured aspm policy before drivers have had an opportunity to indicate that their hardware doesn't support it. Unfortunately, putting some hardware in L0 or L1 can result in the hardware no longer responding to any requests, even after aspm is disabled. It makes more sense to leave aspm policy at the BIOS defaults at initial setup time, reconfiguring it after pci_enable_device() is called. This allows the driver to blacklist individual devices beforehand. Reviewed-by: Kenji Kaneshige Signed-off-by: Matthew Garrett Signed-off-by: Jesse Barnes commit 4302e0fb7fa5b071e30f3cfb68e85155b3d69d9b Author: Kenji Kaneshige Date: Thu Jun 17 10:42:44 2010 +0900 PCI: fix wrong memory address handling in MSI-X Use resource_size_t for MMIO address instead of unsigned long. Otherwise, higher 32-bits of MMIO address are cleared unexpectedly in x86-32 PAE. Acked-by: Matthew Wilcox Signed-off-by: Kenji Kaneshige Signed-off-by: Jesse Barnes commit 2eb5ebd3665a38a4526b45cb3a31a132b2aa9927 Author: Junchang Wang Date: Fri Jun 18 10:02:33 2010 +0800 PCI: check return value of pci_enable_device() when enabling bridges pci_enable_device can fail. In that case, a printed warning would be more appropriate. Signed-off-by: Justin P. Mattock Signed-off-by: Junchang Wang Signed-off-by: Jesse Barnes commit 7736a05a320712c0a9b8f9e1cd0688b2c0848009 Author: Stephen Hemminger Date: Tue Jun 1 09:00:16 2010 -0700 PCI: sparse warning (trivial) Assigning zero where NULL should be used. Signed-off-by: Stephen Hemminger Signed-off-by: Jesse Barnes commit 7bd1c365fd124624191d49dcc1eb9759d6017ec3 Author: Mike Habeck Date: Wed May 12 11:14:32 2010 -0700 x86/PCI: Add option to not assign BAR's if not already assigned The Linux kernel assigns BARs that a BIOS did not assign, most likely to handle broken BIOSes that didn't enumerate the devices correctly. On UV the BIOS purposely doesn't assign I/O BARs for certain devices/ drivers we know don't use them (examples, LSI SAS, Qlogic FC, ...). We purposely don't assign these I/O BARs because I/O Space is a very limited resource. There is only 64k of I/O Space, and in a PCIe topology that space gets divided up into 4k chucks (this is due to the fact that a pci-to-pci bridge's I/O decoder is aligned at 4k)... Thus a system can have at most 16 cards with I/O BARs: (64k / 4k = 16) SGI needs to scale to >16 devices with I/O BARs. So by not assigning I/O BARs on devices we know don't use them, we can do that (iff the kernel doesn't go and assign these BARs that the BIOS purposely didn't assign). This patch will not assign a resource to a device BAR if that BAR was not assigned by the BIOS, and the kernel cmdline option 'pci=nobar' was specified. This patch is closely modeled after the 'pci=norom' option that currently exists in the tree. Signed-off-by: Mike Habeck Signed-off-by: Mike Travis Signed-off-by: Jesse Barnes commit 549e15611b4ac1de51ef0e0a79c2704f50a638a2 Author: Tejun Heo Date: Sun May 23 10:22:55 2010 +0200 PCI: disable MSI on VIA K8M800 MSI delivery from on-board ahci controller doesn't work on K8M800. At this point, it's unclear whether the culprit is with the ahci controller or the host bridge. Given the track record and considering the rather minimal impact of MSI, disabling it seems reasonable. Signed-off-by: Tejun Heo Reported-by: Rainer Hurtado Navarro Cc: stable@kernel.org Signed-off-by: Jesse Barnes commit aff6136974e4ac43574973a5b4de15d97506b16a Author: Clemens Ladisch Date: Wed May 26 12:21:10 2010 +0200 PCI quirk: AMD 780: work around wrong vendor ID on APC bridge In all AMD 780 family northbridges, the vendor ID of the internal graphics PCI/PCI bridge reads not as AMD but as that of the mainboard vendor, because the hardware actually returns the value of the subsystem vendor ID (erratum 18). We currently have additional quirk entries for Asus and Acer, but it is likely that we will encounter more systems with other vendor IDs. Since we do not know in advance all possible vendor IDs, a better way to find the device is to declare the quirk on the host bridge, whose ID is always correct, and use that device as a stepping stone to find the PCI/ PCI bridge, if present. Reviewed-by: Matthew Wilcox Signed-off-by: Clemens Ladisch Signed-off-by: Jesse Barnes commit 3b8fdb759e6ed446433c6dfd5a226d9007925596 Author: Dan Carpenter Date: Wed May 26 12:46:39 2010 +0200 PCI: hotplug/shpchp_hpc: add parenthesis in SLOT_REG_RSVDZ_MASK The SLOT_REG_RSVDZ_MASK macro is normally used like this: slot_reg &= ~SLOT_REG_RSVDZ_MASK; The ~ operator has higher precedence than the | operator from inside the macro, so it needs parenthesis. Reviewed-by: Kenji Kaneshige Signed-off-by: Dan Carpenter Signed-off-by: Jesse Barnes commit f6735590e9f441762ab5afeff64ded99e5b19a68 Author: Linus Torvalds Date: Thu May 27 11:21:11 2010 +0900 PCI aerdrv: fix annoying warnings Some compiler generates following warnings: In function 'aer_isr': warning: 'e_src.id' may be used uninitialized in this function warning: 'e_src.status' may be used uninitialized in this function Avoid status flag "int ret" and return constants instead, so that gcc sees the return value matching "it is initialized" better. Acked-by: Hidetoshi Seto Signed-off-by: Linus Torvalds Signed-off-by: Hidetoshi Seto Signed-off-by: Jesse Barnes commit 73cd3b43f08cc9a9bcb168994b8e9ebd983ff573 Author: Jiri Slaby Date: Tue Jun 15 15:43:19 2010 +0200 x86/PCI: pci, fix section mismatch pcibios_scan_specific_bus calls pci_scan_bus_on_node which is __devinit. Mark pcibios_scan_specific_bus __devinit as well since all users are now __init or __devinit. Signed-off-by: Jiri Slaby Signed-off-by: Jesse Barnes commit f3ec4f87d607f40497afdb5ac03f11e2ea253d52 Author: Alan Stern Date: Tue Jun 8 15:23:51 2010 -0400 PCI: change device runtime PM settings for probe and remove This patch (as1388) changes the way the PCI core handles runtime PM settings when probing or unbinding drivers. Now the core will make sure the device is enabled for runtime PM, with a usage count >= 1, when a driver is probed. It does the same when calling a driver's remove method. If the driver wants to use runtime PM, all it has to do is call pm_runtime_pu_noidle() near the end of its probe routine (to cancel the core's usage increment) and pm_runtime_get_noresume() near the start of its remove routine (to restore the usage count). It does not need to mess around with setting the runtime state to enabled, disabled, active, or suspended. The patch updates e1000e and r8169, the only PCI drivers that already use the existing runtime PM interface. Signed-off-by: Alan Stern Acked-by: Rafael J. Wysocki Signed-off-by: Jesse Barnes commit c639d5d8f69f37e24ed0354373f61fcbde4b9354 Author: Abhijith Das Date: Fri Jul 30 11:34:52 2010 -0400 GFS2: Fix typo in stuffed file data copy handling trunc_start() in bmap.c incorrectly uses sizeof(struct gfs2_inode) instead of sizeof(struct gfs2_dinode). Signed-off-by: Abhi Das Signed-off-by: Steven Whitehouse commit 0e60836bbd392300198c5c2d918c18845428a1fe Author: Srikar Dronamraju Date: Thu Jul 29 19:43:51 2010 +0530 perf probe: Rename common fields/functions from kprobe to probe. As a precursor for perf to support uprobes, rename fields/functions that had kprobe in their name but can be shared across perf-kprobes and perf-uprobes to probe. Cc: Ananth N Mavinakayanahalli Cc: Andrew Morton Cc: Christoph Hellwig Cc: "Frank Ch. Eigler" Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Jim Keniston Cc: Linus Torvalds Cc: Mark Wielaard Cc: Mathieu Desnoyers Cc: Naren A Devaiah Cc: Oleg Nesterov Cc: "Paul E. McKenney" Cc: Peter Zijlstra Cc: Randy Dunlap Cc: Steven Rostedt LKML-Reference: <20100729141351.GG21723@linux.vnet.ibm.com> Signed-off-by: Srikar Dronamraju Signed-off-by: Arnaldo Carvalho de Melo commit 73ae8f85fda49410a59d7b532ce69a0b811ef6d5 Author: Arnaldo Carvalho de Melo Date: Fri Jul 30 10:06:06 2010 -0300 perf tui: Make CTRL+Z suspend perf Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 6da80ce8c43ddda153208cbb46b75290cf566fac Author: Dave Martin Date: Fri Jul 30 09:50:09 2010 -0300 perf symbols: Improve debug image search when loading symbols Changes: * Simplification of the main search loop on dso__load() * Replace the search with a 2-pass search: * First, try to find an image with a proper symtab. * Second, repeat the search, accepting dynsym. A second scan should only ever happen when needed debug images are missing from the buildid cache or stale, i.e., when the cache is out of sync. Currently, the second scan also happens when using separated debug images, since the caching logic doesn't currently know how to cache those. Improvements to the cache behaviour ought to solve that. Signed-off-by: Dave Martin LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 8b1389ef93b36621c6acdeb623bd85aee3c405c9 Author: Dave Martin Date: Fri Jul 30 09:36:08 2010 -0300 perf tools: remove extra build-id check factored into dso__load Signed-off-by: Dave Martin LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 21916c380d93ab59d6d07ee198fb31c8f1338e26 Author: Dave Martin Date: Fri Jul 30 09:08:08 2010 -0300 perf tools: Factor out buildid reading and make it implicit in dso__load If we have a buildid, then we never want to load an image which has no buildid, or which has a different buildid, so it makes sense for the check to be built into dso__load and not done separately. This is fine for old distros which don't use buildid at all since we do no check in that case. This refactoring also alleviates some subtle race condition issues by not opening ELF images twice to check the buildid and then load the symbols, which could lead to weirdness if an image is replaced under our feet. Signed-off-by: Dave Martin LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit c7a9434dd6ea74464b0419a274463c914197bc98 Author: Takashi Iwai Date: Fri Jul 30 14:10:43 2010 +0200 ALSA: hda - Add a warning for ignored pins with ALC259/268/269 The current ALC259/268/269 parser ignores some pins as unhandled, but user won't notice what goes wrong. So, added a warning message for the ignored pins as a hint. Signed-off-by: Takashi Iwai commit b08b1637ce1c0196970348bcabf40f04b6b3d58e Author: Takashi Iwai Date: Fri Jul 30 14:08:25 2010 +0200 ALSA: hda - Handle pin NID 0x1a on ALC259/269 The pin NID 0x1a should be handled as well as NID 0x1b. Also added comments. Signed-off-by: Takashi Iwai commit 697c373e34613609cb5450f98b91fefb6e910588 Author: Takashi Iwai Date: Fri Jul 30 11:28:02 2010 +0200 ALSA: hda - Shut up pins at power-saving mode with Conexnat codecs Call snd_hda_shutup_pins() for power-saving and reboot-notifier in patch_conexant.c as well as other codecs. This will reduce the pop noise in power-save mode. Reference: bnc#624896 https://bugzilla.novell.com/show_bug.cgi?id=624896 Signed-off-by: Takashi Iwai commit 954a29c881bd0c61352af0946f2c39d738d43c1b Author: Takashi Iwai Date: Fri Jul 30 10:55:44 2010 +0200 ALSA: hda - Prefer VREF50 if BIOS sets for Realtek codecs If BIOS sets up the input pin as VREF 50, use the value as is instead of overriding forcibly to VREF 80. This fixes the quality of inputs on some devices like Packard-Bell M5210. Signed-off-by: Takashi Iwai commit 5d4abf93ea3192cc666430225a29a4978c97c57d Author: Takashi Iwai Date: Fri Jul 30 10:51:10 2010 +0200 ALSA: hda - Handle missing NID 0x1b on ALC259 codec Since ALC259/269 use the same parser of ALC268, the pin 0x1b was ignored as an invalid widget. Just add this NID to handle properly. This will add the missing mixer controls for some devices. Signed-off-by: Takashi Iwai commit 757899aceebc33d9f86bbc481be7b7bf861e89ac Author: Takashi Iwai Date: Fri Jul 30 10:48:14 2010 +0200 ALSA: hda - Share digital I/O parser in patch_realtek.c Make a helper function to parse the digital I/Os of all Realtek codecs to simplify the code and to ensure the setups. Also, initialize digital I/O pins properly in init callbacks. Some BIOS seem to leave pins uninitialized. Signed-off-by: Takashi Iwai commit ce503f38bdb59c9175a9076215a3ba579fad4e64 Author: Takashi Iwai Date: Fri Jul 30 10:37:29 2010 +0200 ALSA: hda - Increase the connection list size for ALC662 Some ALC662-compatible codecs like ALC892 may have more than 4 connections for the input source. Use HDA_MAX_CONNECTIONS instead of the fixed magic number 4. Signed-off-by: Takashi Iwai commit 5aacc2186cc075880a9eca42e6b7f9bb3096d0ea Author: Takashi Iwai Date: Fri Jul 30 10:36:29 2010 +0200 ALSA: hda - Make error messages more verbose Add a prefix and more information for error messages regarding the connection-list in hda_codec.c. Signed-off-by: Takashi Iwai commit 12b15e83289bc7cf2ec9a342412e0c955beeb395 Author: Anatolij Gustschin Date: Tue Jul 27 22:35:58 2010 +0200 of/spi: call of_register_spi_devices() from spi core code Move of_register_spi_devices() call from drivers to spi_register_master(). Also change the function to use the struct device_node pointer from master spi device instead of passing it as function argument. Signed-off-by: Anatolij Gustschin Signed-off-by: Grant Likely commit 559e2b7ee7a1c7753d534abcb2742a4775339293 Author: Grant Likely Date: Fri Jul 23 20:11:18 2010 -0600 of: Provide default of_node_to_nid() implementation. of_node_to_nid() is only relevant in a few architectures. Don't force everyone to implement it anyway. Signed-off-by: Grant Likely commit c6601225380088018ae93df2ba7f0bb65334d63b Author: Grant Likely Date: Fri Jul 23 15:04:01 2010 -0600 of/device: Make of_device_make_bus_id() usable by other code. The AMBA bus should also use of_device_make_bus_id() when populating device out of device tree data. This patch makes the function non-static, and adds a suitable prototype in of_device.h Signed-off-by: Grant Likely commit 7e3f36c3e107bd76b6709e358b1e7c703fb6f81a Merge: 1caca37 ff34910 Author: Benjamin Herrenschmidt Date: Fri Jul 30 15:02:32 2010 +1000 Merge commit 'jwb/next' into next commit 69049961014992f50b10d6c3cd3cd172d4aae5ac Author: Andi Kleen Date: Tue Jul 20 15:24:27 2010 -0700 gcc-4.6: nfsd: fix initialized but not read warnings Fixes at least one real minor bug: the nfs4 recovery dir sysctl would not return its status properly. Also I finished Al's 1e41568d7378d ("Take ima_path_check() in nfsd past dentry_open() in nfsd_open()") commit, it moved the IMA code, but left the old path initializer in there. The rest is just dead code removed I think, although I was not fully sure about the "is_borc" stuff. Some more review would be still good. Found by gcc 4.6's new warnings. Signed-off-by: Andi Kleen Cc: Al Viro Cc: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: J. Bruce Fields commit f9d7562fdb9dc0ada3a7aba5dbbe9d965e2a105d Author: J. Bruce Fields Date: Thu Jul 8 11:02:09 2010 -0400 nfsd4: share file descriptors between stateid's The vfs doesn't really allow us to "upgrade" a file descriptor from read-only to read-write, and our attempt to do so in nfs4_upgrade_open is ugly and incomplete. Move to a different scheme where we keep multiple opens, shared between open stateid's, in the nfs4_file struct. Each file will be opened at most 3 times (for read, write, and read-write), and those opens will be shared between all clients and openers. On upgrade we will do another open if necessary instead of attempting to upgrade an existing open. We keep count of the number of readers and writers so we know when to close the shared files. Signed-off-by: J. Bruce Fields commit 5da3e714e30d40145f4dd37d79de6bbbcb9e6137 Author: Magnus Damm Date: Thu Jul 29 14:03:04 2010 +0100 ARM: 6277/1: mach-shmobile: Allow users to select HZ, default to 128 Introduce SHMOBILE_TIMER_HZ for SH-Mobile. Allow users to select HZ on their system to minimize potential timer drift. Use 128 Hz as default to work well with the 32768 Hz RCLK. Signed-off-by: Magnus Damm Signed-off-by: Russell King commit 58c7d9d2e6116ec694a5af5b8a0aca1467673899 Author: Magnus Damm Date: Thu Jul 29 13:09:36 2010 +0100 ARM: 6276/1: mach-shmobile: remove duplicate NR_IRQS_LEGACY NR_IRQS_LEGACY is now defined in asm/irq.h, so drop it in mach/irqs.h. Signed-off-by: Magnus Damm Signed-off-by: Russell King commit a20df564d15bd28e3df24e1c65b885bd74d23f17 Merge: d50f58b e69edc79 Author: Russell King Date: Thu Jul 29 22:27:56 2010 +0100 Merge branch 'arm/booting' of git://git.pengutronix.de/git/ukl/linux-2.6 into devel-stable Conflicts: arch/arm/Kconfig commit 872e330e38806d835bd6c311c93ab998e2fb9058 Author: Stefan Richter Date: Thu Jul 29 18:19:22 2010 +0200 firewire: add isochronous multichannel reception This adds the DMA context programming and userspace ABI for multichannel reception, i.e. for listening on multiple channel numbers by means of a single DMA context. The use case is reception of more streams than there are IR DMA units offered by the link layer. This is already implemented by the older ohci1394 + ieee1394 + raw1394 stack. And as discussed recently on linux1394-devel, this feature is occasionally used in practice. The big drawbacks of this mode are that buffer layout and interrupt generation necessarily differ from single-channel reception: Headers and trailers are not stripped from packets, packets are not aligned with buffer chunks, interrupts are per buffer chunk, not per packet. These drawbacks also cause a rather hefty code footprint to support this rarely used OHCI-1394 feature. (367 lines added, among them 94 lines of added userspace ABI documentation.) This implementation enforces that a multichannel reception context may only listen to channels to which no single-channel context on the same link layer is presently listening to. OHCI-1394 would allow to overlay single-channel contexts by the multi-channel context, but this would be a departure from the present first-come-first-served policy of IR context creation. The implementation is heavily based on an earlier one by Jay Fenlason. Thanks Jay. Signed-off-by: Stefan Richter commit ae2a97661482c1d0f1aa41b837da95054d0e9a1b Author: Stefan Richter Date: Thu Jul 29 09:31:56 2010 +0200 firewire: core: small clarifications in core-cdev Make a note on the seemingly unused linux/sched.h. Rename an irritatingly named variable. Signed-off-by: Stefan Richter commit 69e61d0c07fa28a05f699723a88d49e0014019b6 Author: Stefan Richter Date: Wed Jul 28 23:49:45 2010 +0200 firewire: core: remove unused code ioctl_create_iso_context enforces ctx->header_size >= 4. Signed-off-by: Stefan Richter commit e5b06c077c592e7e1623641520787a3da7b7c6bf Author: Stefan Richter Date: Wed Jul 28 15:50:00 2010 +0200 firewire: ohci: release channel in error path firewire-ohci keeps book of which isochronous channels are occupied by IR DMA contexts, so that there cannot be more than one context listening to a certain channel. If IR context creation failed due to an out-of-memory condition, this bookkeeping leaked a channel. Signed-off-by: Stefan Richter commit 071595ebdc66d70219e2d1ce746016f64b2b19e7 Author: Stefan Richter Date: Tue Jul 27 13:20:33 2010 +0200 firewire: ohci: use memory barriers to order descriptor updates When we append to a DMA program, we need to ensure that the order in which initialization of the new descriptors and update of the branch_address of the old tail descriptor, as seen by the PCI device, happen as intended. Signed-off-by: Stefan Richter commit 02921914170e3b7fea1cd82dac9713685d2de5e2 Author: J. Bruce Fields Date: Thu Jul 29 15:16:59 2010 -0400 nfsd4: fix openmode checking on IO using lock stateid It is legal to perform a write using the lock stateid that was originally associated with a read lock, or with a file that was originally opened for read, but has since been upgraded. So, when checking the openmode, check the mode associated with the open stateid from which the lock was derived. Signed-off-by: J. Bruce Fields commit 21fb4016bd592409bc8f95737e365ac82413b795 Author: J. Bruce Fields Date: Wed Jul 28 12:21:23 2010 -0400 nfsd4: miscellaneous process_open2 cleanup Move more work into helper functions. Signed-off-by: J. Bruce Fields commit c3e480808685dd13f03af1a8fdda581dcb54d92c Author: J. Bruce Fields Date: Wed Jul 28 10:08:57 2010 -0400 nfsd4: don't pretend to support write delegations The delegation code mostly pretends to support either read or write delegations. However, correct support for write delegations would require, for example, breaking of delegations (and/or implementation of cb_getattr) on stat. Currently all that stops us from handing out delegations is a subtle reference-counting issue. Avoid confusion by adding an earlier check that explicitly refuses write delegations. For now, though, I'm not going so far as to rip out existing half-support for write delegations, in case we get around to using that soon. Signed-off-by: J. Bruce Fields commit 4538821993f4486c76090dfb377c60c0a0e71ba3 Author: Theodore Ts'o Date: Thu Jul 29 15:06:10 2010 -0400 ext4: drop inode from orphan list if ext4_delete_inode() fails There were some error paths in ext4_delete_inode() which was not dropping the inode from the orphan list. This could lead to a BUG_ON on umount when the orphan list is discovered to be non-empty. Signed-off-by: "Theodore Ts'o" commit ae3568adf42d5d3bb3cfa505b94351c5d1ce4924 Merge: 7f3e01f b7753c8 Author: John W. Linville Date: Thu Jul 29 14:47:07 2010 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit ca65f9fc0c447da5b270b05c41c21b19c88617c3 Author: Stefano Stabellini Date: Thu Jul 29 14:37:48 2010 +0100 Introduce CONFIG_XEN_PVHVM compile option This patch introduce a CONFIG_XEN_PVHVM compile time option to enable/disable Xen PV on HVM support. Signed-off-by: Stefano Stabellini commit 6e406257b3794009e3b7a6d48b54beb547719565 Author: Arnaldo Carvalho de Melo Date: Thu Jul 29 15:11:30 2010 -0300 perf symbols: Precisely specify if dso->{long,short}_name should be freed Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit b98a409b80ac510c95b4f1bafdef28edaeabd3e7 Author: Stefano Stabellini Date: Thu Jul 29 14:53:16 2010 +0100 blkfront: do not create a PV cdrom device if xen_hvm_guest It is not possible to unplug emulated cdrom devices, and PV cdroms don't handle media insert, eject and stream, so we are better off disabling PV cdroms when running as a Xen HVM guest. Signed-off-by: Stefano Stabellini commit 3bc280708e7b9a84cc6307c1f9acca57e0fafaac Author: Kuninori Morimoto Date: Thu Jul 29 16:48:32 2010 +0900 ASoC: fsi: Add new funtion for SPDIF Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 265c770d03e1e3f9958172d6a7cae59e68b86db2 Author: Kuninori Morimoto Date: Wed Jul 28 11:57:45 2010 +0900 ASoC: fsi: remove device id check Current FSI driver id is not only 0 Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit bced8f5a36dde4ec5b255752433789066084bc85 Author: Kuninori Morimoto Date: Wed Jul 28 11:57:36 2010 +0900 ASoC: fsi: remove unnecessary clock processing Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 39d17dacb3c25df878b56aa80a170d6088e041f9 Author: Arnaldo Carvalho de Melo Date: Thu Jul 29 14:08:55 2010 -0300 perf record: Release resources at exit So that we can reduce the noise on valgrind when looking for memory leaks. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit b7753c8cd51dce67a0b152efb456a21ff1cc241b Author: Christian Lamparter Date: Thu Jul 29 01:28:46 2010 +0200 cfg80211: fix dev <-> wiphy typo Cc: Joe Perches Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit e5b900d228b76d445a4240d9aeb3cd8f79205a91 Author: Johannes Berg Date: Thu Jul 29 16:08:55 2010 +0200 mac80211: allow drivers to request DTIM period Some features require knowing the DTIM period before associating. This implements the ability to wait for a beacon in mac80211 before assoc to provide this value. It is optional since most likely not all drivers will need this. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d28232b461b8d54b09e59325dbac8b0913ce2049 Author: Stanislaw Gruszka Date: Thu Jul 29 11:37:41 2010 +0200 iwlwifi: fix scan abort Fix possible double priv->mutex lock introduced by commit a69b03e941abae00380fc6bc1877fb797a1b31e6 "iwlwifi: cancel scan watchdog in iwl_bg_abort_scan" . We can not call cancel_delayed_work_sync(&priv->scan_check) with priv->mutex locked because workqueue function iwl_bg_scan_check() take that lock internally. We do not need to synchronize when canceling priv->scan_check work. We can avoid races (sending double abort command or send no command at all) using STATUS_SCAN_ABORT bit. Moreover current iwl_bg_scan_check() code seems to be broken, as we should not send abort commands when currently aborting. Signed-off-by: Stanislaw Gruszka CC: stable@kernel.org Signed-off-by: John W. Linville commit 16345910d927556878a82621ebb9a7bcad13e8d8 Author: Lennert Buytenhek Date: Thu Jul 29 01:47:04 2010 +0200 mwl8k: change maintenance status The 8366 AP support in particular is still rather incomplete, but this is unlikely to be addressed any time soon. Signed-off-by: Lennert Buytenhek Signed-off-by: John W. Linville commit ac01e948b1c27059d47249ef601036633249cb2a Author: John W. Linville Date: Wed Jul 28 17:09:41 2010 -0400 wl1271: update hw/fw version info in wiphy struct This makes the information available through ethtool... Signed-off-by: John W. Linville Acked-by: Juuso Oikarinen commit 8b28e82224321d6fdabadd7d6ddc4bd28a3b5490 Author: John W. Linville Date: Wed Jul 28 16:59:41 2010 -0400 wl1251: update hw/fw version info in wiphy struct This makes the information available through ethtool... Signed-off-by: John W. Linville Acked-by: Kalle Valo commit ece550d0e416b4146e1ec3d934f9773dbf8c7242 Author: John W. Linville Date: Wed Jul 28 16:41:06 2010 -0400 wl1271: add get_survey callback in order to get channel noise Signed-off-by: John W. Linville Acked-by: Juuso Oikarinen commit bef9cb589d37c5eb2e3fb9e529fa3933db4dda19 Author: John W. Linville Date: Wed Jul 28 15:03:42 2010 -0400 libertas_tf: add get_survey callback in order to get channel noise Signed-off-by: John W. Linville commit 19434148d16dc231026f37af7c40e81ad9342e75 Author: John W. Linville Date: Wed Jul 28 15:23:30 2010 -0400 wl1251: add get_survey callback in order to get channel noise Signed-off-by: John W. Linville Acked-by: Kalle Valo commit a55427e8284541d43630f10a6c637b28802c21b0 Author: John W. Linville Date: Wed Jul 28 14:47:49 2010 -0400 ar9170: add get_survey callback in order to get channel noise Signed-off-by: John W. Linville Acked-by: Christian Lamparter commit 0d462bbb0e20863b6c796abd779bfdb534d60278 Author: John W. Linville Date: Wed Jul 28 14:04:24 2010 -0400 mwl8k: add get_survey callback in order to get channel noise Signed-off-by: John W. Linville Acked-by: Lennert Buytenhek commit 4c85ab11ca56da1aa59b58c80cc6a356515cc645 Author: John W. Linville Date: Wed Jul 28 10:06:35 2010 -0400 ath9k: enable serialize_regmode for non-PCIE AR9160 https://bugzilla.kernel.org/show_bug.cgi?id=16476 Signed-off-by: John W. Linville Acked-by: Luis R. Rodriguez Cc: stable@kernel.org commit ac1ffde1ba053db0266f886a15ed845a6628fcb0 Author: Ulf Magnusson Date: Tue Jul 27 21:57:43 2010 +0200 kconfig: fix MODULES-related bug in case of no .config There seems to be a kconfig bug due to MODULES not always being evaluated if no .config is found. Take the following Kconfig as an example: config MODULES def_bool y config FOO def_tristate m With no .config, the following configuration is generated: CONFIG_MODULES=y CONFIG_FOO=y With an empty .config, the following: CONFIG_MODULES=y CONFIG_FOO=m Tristate choice statements can also exhibit the problem, due to having an implicit rev_dep (select) containing "m". The problem is that MODULES is never evaluted in conf_read_simple() unless there's a .config. The following patch fixes this. Signed-off-by: Ulf Magnusson Reviewed-by: WANG Cong Signed-off-by: Michal Marek commit d50f58bbd979e86378dfdec982452041f0e604ef Merge: 129961e 79d3c2c Author: Russell King Date: Thu Jul 29 15:48:37 2010 +0100 Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into devel-stable commit 129961ecaf21c9ee899ad9067d917c1aa172fb7a Merge: 392c57a cccf59a Author: Russell King Date: Thu Jul 29 15:48:02 2010 +0100 Merge branch 'wells/lpc32xx-arch_v2' of git://git.lpclinux.com/linux-2.6-lpc into devel-stable commit 08458ef6eede6cf7d5a33c3a7c8bcdc3943012c2 Author: Rabin Vincent Date: Wed Jul 21 12:55:59 2010 +0100 ARM: 6246/1: mmci: support larger MMCIDATALENGTH register The Ux500 variant has a 24-bit MMCIDATALENGTH register, as opposed to the 16-bit one on the ARM version. Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 4380c14fd77338bac9d1da4dc5dd9f6eb4966c82 Author: Rabin Vincent Date: Wed Jul 21 12:55:18 2010 +0100 ARM: 6245/1: mmci: enable hardware flow control on Ux500 variants Although both the U300 and Ux500 use ST variants, the HWFCEN bits are at different positions, so use the variant_data to store the information. Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 4956e10903fd3459306dd9438c1e714ba3068a2a Author: Rabin Vincent Date: Wed Jul 21 12:54:40 2010 +0100 ARM: 6244/1: mmci: add variant data and default MCICLOCK support Add a variant_data structure to handle the differences between the various variants of this peripheral. Add a first quirk for a default MCICLOCK value, required on the Ux500 variant where the enable bit needs to be always set, since it controls access to some registers. Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit bb8f563c848faa113059973f68c24a3bb6a9585e Author: Rabin Vincent Date: Wed Jul 21 12:53:57 2010 +0100 ARM: 6243/1: mmci: pass power_mode to the translate_vdd callback Platforms may have some external power control which need to be controlled from board specific code. Rename the translate_vdd() callback to vdd_handler() and pass it the power mode. Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 7cdee5dbf477409e4afc6c9063492dc2577b41ea Author: Steven Whitehouse Date: Thu Jul 29 14:39:29 2010 +0100 Revert "GFS2: recovery stuck on transaction lock" This reverts commit b7dc2df5725fe7355fd76000ead7e39728e1b8a9. The initial patch didn't quite work since it doesn't cover all the possible routes by which the GLF_FROZEN flag might be set. A revised fix is coming up in the next patch. Signed-off-by: Steven Whitehouse commit 150b432f448281d5518f5229d240923f9a9c5459 Author: David Henningsson Date: Thu Jul 29 14:46:42 2010 +0200 ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763 The non-standard name "iMic" makes PulseAudio ignore the microphone. BugLink: https://launchpad.net/bugs/605101 Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit b0485610d6715fd094703d96cf944fdbe1d30738 Merge: a39afc8 dc1eae2 Author: Takashi Iwai Date: Thu Jul 29 15:32:34 2010 +0200 Merge branch 'fix/hda' into topic/hda commit 3709c857350976408953831f0cf89d19951394a1 Author: Yasuaki Ishimatsu Date: Thu Jul 22 14:57:35 2010 +0900 x86: Ioremap: fix wrong physical address handling in PAT code The following two commits fixed a problem that x86 ioremap() doesn't handle physical address higher than 32-bit properly in X86_32 PAE mode. ffa71f33a820d1ab3f2fc5723819ac60fb76080b (x86, ioremap: Fix incorrect physical address handling in PAE mode) 35be1b716a475717611b2dc04185e9d80b9cb693 (x86, ioremap: Fix normal ram range check) But these fixes are not enough, since pat_pagerange_is_ram() in PAT code also has a same problem. This patch fixes it. Signed-off-by: Yasuaki Ishimatsu Reviewed-by: Kenji Kaneshige LKML-Reference: <4C47DDCF.80300@jp.fujitsu.com> Signed-off-by: Thomas Gleixner commit f4f5e28d2ee02e3b68da4a8b6156f3b4872d03be Author: wanzongshun Date: Thu Jul 29 03:25:19 2010 +0100 ARM: 6274/1: add global control registers definition header file for nuc900 add global control registers definition header file for nuc900 Signed-off-by: Wan ZongShun Signed-off-by: Russell King commit 9c29490246ed80975ab8b87bcd4ebe5b87c1c1d6 Author: Kulikov Vasiliy Date: Thu Jul 29 14:45:50 2010 +0400 sound: oss: msnd: check request_region() return value request_region() may fail, if so return -EBUSY. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit fa95a6471ffaa6f40d71f44fc4d4636ee17280f5 Author: Kulikov Vasiliy Date: Thu Jul 29 14:45:24 2010 +0400 ALSA: msnd: check request_region() return value request_region() may fail, if so return -EBUSY. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit 4877c737283813bdb4bebfa3168c1585f6e3a8ca Author: Ian Campbell Date: Thu Jul 29 11:16:35 2010 +0100 xen: Do not suspend IPI IRQs. In general the semantics of IPIs are that they are are expected to continue functioning after dpm_suspend_noirq(). Specifically I have seen a deadlock between the callfunc IPI and the stop machine used by xen's do_suspend() routine. If one CPU has already called dpm_suspend_noirq() then there is a window where it can be sent a callfunc IPI before all the other CPUs have entered stop_cpu(). If this happens then the first CPU ends up spinning in stop_cpu() waiting for the other to rendezvous in state STOPMACHINE_PREPARE while the other is spinning in csd_lock_wait(). Signed-off-by: Ian Campbell Cc: Jeremy Fitzhardinge Cc: xen-devel@lists.xensource.com LKML-Reference: <1280398595-29708-4-git-send-email-ian.campbell@citrix.com> Signed-off-by: Thomas Gleixner commit ba461f094bab2dc09487816b9dfce845796b259d Author: Ian Campbell Date: Thu Jul 29 11:16:34 2010 +0100 powerpc: Use IRQF_NO_SUSPEND not IRQF_TIMER for non-timer interrupts kw_i2c_irq and via_pmu_interrupt are not timer interrupts and therefore should not use IRQF_TIMER. Use the recently introduced IRQF_NO_SUSPEND instead since that is the actual desired behaviour. Signed-off-by: Ian Campbell Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Grant Likely Cc: linuxppc-dev@ozlabs.org Cc: devicetree-discuss@lists.ozlabs.org LKML-Reference: <1280398595-29708-3-git-send-email-ian.campbell@citrix.com> Signed-off-by: Thomas Gleixner commit 2dd9320305416c171087d5347a6c908ae22c6be1 Author: Ian Campbell Date: Thu Jul 29 11:16:33 2010 +0100 ixp4xx-beeper: Use IRQF_NO_SUSPEND not IRQF_TIMER for non-timer interrupt ixp4xx_spkr_interrupt is not a timer interrupt and therefore should not use IRQF_TIMER. Use the recently introduced IRQF_NO_SUSPEND instead since that is the actual desired behaviour. Signed-off-by: Ian Campbell Cc: Dmitry Torokhov Cc: linux-input@vger.kernel.org LKML-Reference: <1280398595-29708-2-git-send-email-ian.campbell@citrix.com> Signed-off-by: Thomas Gleixner commit 685fd0b4ea3f0f1d5385610b0d5b57775a8d5842 Author: Ian Campbell Date: Thu Jul 29 11:16:32 2010 +0100 irq: Add new IRQ flag IRQF_NO_SUSPEND A small number of users of IRQF_TIMER are using it for the implied no suspend behaviour on interrupts which are not timer interrupts. Therefore add a new IRQF_NO_SUSPEND flag, rename IRQF_TIMER to __IRQF_TIMER and redefine IRQF_TIMER in terms of these new flags. Signed-off-by: Ian Campbell Cc: Jeremy Fitzhardinge Cc: Dmitry Torokhov Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Grant Likely Cc: xen-devel@lists.xensource.com Cc: linux-input@vger.kernel.org Cc: linuxppc-dev@ozlabs.org Cc: devicetree-discuss@lists.ozlabs.org LKML-Reference: <1280398595-29708-1-git-send-email-ian.campbell@citrix.com> Signed-off-by: Thomas Gleixner commit ec9d04b2a8f00b14a3df4714820cb2cda46dc4d6 Author: Kulikov Vasiliy Date: Wed Jul 28 20:41:56 2010 +0400 ALSA: asihpi: check return value of get_user() get_user() may fail, if so return -EFAULT. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit b3390ceab95601afc12213c3ec5551d3bc7b638f Author: Kulikov Vasiliy Date: Wed Jul 28 20:41:17 2010 +0400 sound: oss: midi_synth: check get_user() return value get_user() may fail, if so return -EFAULT. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit 5157cc8113db3de60ab6320965331c63bc77003c Author: Kulikov Vasiliy Date: Wed Jul 28 20:40:51 2010 +0400 ALSA: sb: check get_user() return value get_user() may fail, if so return -EFAULT. [Fixed one missing place by tiwai] Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit bc6488e91078af0b42ee0d8335e0587f64550d7d Author: Christoph Lameter Date: Mon Jul 26 10:41:14 2010 -0500 slub numa: Fix rare allocation from unexpected node The network developers have seen sporadic allocations resulting in objects coming from unexpected NUMA nodes despite asking for objects from a specific node. This is due to get_partial() calling get_any_partial() if partial slabs are exhausted for a node even if a node was specified and therefore one would expect allocations only from the specified node. get_any_partial() sporadically may return a slab from a foreign node to gradually reduce the size of partial lists on remote nodes and thereby reduce total memory use for a slab cache. The behavior is controlled by the remote_defrag_ratio of each cache. Strictly speaking this is permitted behavior since __GFP_THISNODE was not specified for the allocation but it is certain surprising. This patch makes sure that the remote defrag behavior only occurs if no node was specified. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit a577b318fc7cb0c46f9f0cdefb5b267490ff8ce5 Author: Peter Ujfalusi Date: Wed Jul 28 15:26:55 2010 +0300 ASoC: tlv320dac33: Add support for automatic FIFO configuration Platform parameter to enable automatic FIFO configuration when the codec is in Mode1 or Mode7 FIFO mode. When this mode is selected, the controls for changing nSample (in Mode1), and UTHR (in Mode7) are not added. The driver configures the FIFO configuration based on the stream's period size in a way, that every burst will read period size of data from the host. In Mode7 we need to use a formula, which gives close enough aproximation for the burst length from the host point of view. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit f430a27f05d42d26d3e438aa262a92565170573f Author: Peter Ujfalusi Date: Wed Jul 28 15:26:54 2010 +0300 ASoC: tlv320dac33: Revisit the FIFO Mode1 handling Replace the hardwired latency definition with platform data parameter, and simplify the nSample parameter calculation. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit d5341a92416706808dc5cd847826f28c08063c8c Author: Steven Whitehouse Date: Fri Jul 23 14:05:51 2010 +0100 GFS2: Make "try" lock not try quite so hard This looks like a big change, but in reality its only a single line of actual code change, the rest is just moving a function to before its new caller. The "try" flag for glocks is a rather subtle and delicate setting since it requires that the state machine tries just hard enough to ensure that it has a good chance of getting the requested lock, but no so hard that the request can land up blocked behind another. The patch adds in an additional check which will fail any queued try locks if there is another request blocking the try lock request which is not granted and compatible, nor in progress already. The check is made only after all pending locks which may be granted have been granted. I've checked this with the reproducer for the reported flock bug which this is intended to fix, and it now passes. Signed-off-by: Steven Whitehouse commit 4244b52e18be959ced77b984f268e46a0a7654e3 Author: David Rientjes Date: Tue Jul 20 19:45:03 2010 -0700 GFS2: remove dependency on __GFP_NOFAIL The k[mc]allocs in dr_split_leaf() and dir_double_exhash() are failable, so remove __GFP_NOFAIL from their masks. Cc: Bob Peterson Signed-off-by: David Rientjes Signed-off-by: Steven Whitehouse commit 461cb419f074aab16836a660efb8e855b6c1609c Author: Bob Peterson Date: Thu Jun 24 19:21:20 2010 -0400 GFS2: Simplify gfs2_write_alloc_required Function gfs2_write_alloc_required always returned zero as its return code. Therefore, it doesn't need to return a return code at all. Given that, we can use the return value to return whether or not the dinode needs block allocations rather than passing that value in, which in turn simplifies a bunch of error checking. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit ba6e93645f039bd357e04b7b9d18f4e67757725e Author: Steven Whitehouse Date: Mon Jun 14 10:01:30 2010 +0100 GFS2: Wait for journal id on mount if not specified on mount command line This patch implements a wait for the journal id in the case that it has not been specified on the command line. This is to allow the future removal of the mount.gfs2 helper. The journal id would instead be directly communicated by gfs_controld to the file system. Here is a comparison of the two systems: Current: 1. mount calls mount.gfs2 2. mount.gfs2 connects to gfs_controld to retrieve the journal id 3. mount.gfs2 adds the journal id to the mount command line and calls the mount system call 4. gfs_controld receives the status of the mount request via a uevent Proposed: 1. mount calls the mount system call (no mount.gfs2 helper) 2. gfs_controld receives a uevent for a gfs2 fs which it doesn't know about already 3. gfs_controld assigns a journal id to it via sysfs 4. the mount system call then completes as normal (sending a uevent according to status) The advantage of the proposed system is that it is completely backward compatible with the current system both at the kernel and at the userland levels. The "first" parameter can also be set the same way, with the restriction that it must be set before the journal id is assigned. In addition, if mount becomes stuck waiting for a reply from gfs_controld which never arrives, then it is killable and will abort the mount gracefully. Signed-off-by: Steven Whitehouse commit 30116ff6c6d140bc696cc624e6d8e38f018c886e Author: Steven Whitehouse Date: Mon Jun 14 09:58:41 2010 +0100 GFS2: Use nobh_writepage Use nobh_writepage rather than calling mpage_writepage directly. Signed-off-by: Steven Whitehouse Cc: Christoph Hellwig commit 157b1a23856b9fb7cc3d19fa2ddc650b502bab3d Author: Thomas Gleixner Date: Thu Jul 29 10:22:48 2010 +0200 kgdb: Do not access xtime directly The xtime cleanup missed the kgdb access to xtime. Fix it. Signed-off-by: Thomas Gleixner commit 7f3e01fee41a322747db2d7574516d9fbd3785c0 Author: Stephen Rothwell Date: Wed Jul 28 22:20:34 2010 -0700 net: bnx2x_cmn.c needs net/ip6_checksum.h for csum_ipv6_magic Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit a378d9338e8dde78314b3a6ae003de351936c729 Author: H. Peter Anvin Date: Wed Jul 28 17:05:11 2010 -0700 x86, asm: Merge cmpxchg_486_u64() and cmpxchg8b_emu() We have two functions for doing exactly the same thing -- emulating cmpxchg8b on 486 and older hardware -- with different calling conventions, and yet doing the same thing. Drop the C version and use the assembly version, via alternatives, for both the local and non-local versions of cmpxchg8b. Signed-off-by: H. Peter Anvin LKML-Reference: commit 90c8f92f5c807807ca74d5f2f313794925174e6b Author: H. Peter Anvin Date: Wed Jul 28 16:53:49 2010 -0700 x86, asm: Move cmpxchg emulation code to arch/x86/lib Move cmpxchg emulation code from arch/x86/kernel/cpu (which is otherwise CPU identification) to arch/x86/lib, where other emulation code lives already. Signed-off-by: H. Peter Anvin LKML-Reference: commit a5b91606bdc9d0a0d036d2d829a22921c705573e Author: H. Peter Anvin Date: Wed Jul 28 16:23:20 2010 -0700 x86, cpu: Export AMD errata definitions Exprot the AMD errata definitions, since they are needed by kvm_amd.ko if that is built as a module. Doing "make allmodconfig" during testing would have caught this. Signed-off-by: H. Peter Anvin Cc: Hans Rosenfeld LKML-Reference: <1280336972-865982-1-git-send-email-hans.rosenfeld@amd.com> commit 4532b305e8f0c238dd73048068ff8a6dd1380291 Author: H. Peter Anvin Date: Wed Jul 28 15:18:35 2010 -0700 x86, asm: Clean up and simplify Remove the __xg() hack to create a memory barrier near xchg and cmpxchg; it has been there since 1.3.11 but should not be necessary with "asm volatile" and a "memory" clobber, neither of which were there in the original implementation. However, we *should* make this a volatile reference. Signed-off-by: H. Peter Anvin LKML-Reference: commit 50a025c69ee749d822c301f9bf63dee13c113680 Author: Sean Hefty Date: Wed Jul 21 23:36:52 2010 +0000 IB/cm: Check LAP state before sending an MRA NULL pointer dereferences in ib_cm_init_qp_attr() were seen by some users. From a crash dump, I determined that we died in cm_init_qp_rts_attr() (it's inlined, so it doesn't show up in the traceback) on the line labeled below: static int cm_init_qp_rts_attr(struct cm_id_private *cm_id_priv, struct ib_qp_attr *qp_attr, int *qp_attr_mask) { ........ if (cm_id_priv->id.lap_state == IB_CM_LAP_UNINIT) { ..... } else { *qp_attr_mask = IB_QP_ALT_PATH | IB_QP_PATH_MIG_STATE; qp_attr->alt_port_num = cm_id_priv->alt_av.port->port_num; <-die The problem is that the rdma_cm can call ib_send_cm_mra() after a connection has been established. The ib_cm incorrectly assumes that the MRA is in response to a LAP (load alternate path) message, even though no LAP message has been received. The ib_cm needs to check the lap_state before sending an MRA if the cm_id state is established. Reported-by: Arthur Kepner Reported-by: Josh England Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit cd6860eb036ab4320d591fdd056f86172438fae4 Author: Faisal Latif Date: Sun Jul 4 00:17:59 2010 +0000 RDMA/nes: Fix hangs on ifdown When ib_unregister_device() is called from netdev stop during ifdown, it sometimes hangs. Changes made to indicate port_err to ib_dispatch_event() during netdev stop and port_active during netdev open. The ib_unregister_device() is only called during remove of the module. Signed-off-by: Faisal Latif Signed-off-by: Roland Dreier commit 0eec495ee69e3fbbe2ef2b244a0a988a4fe2e887 Author: Chien Tung Date: Wed Jun 9 20:19:53 2010 +0000 RDMA/nes: Store and print eeprom version Read and print eeprom version and save it off for later use. Also delete a tab. Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 4552124543141debf40a94b67155e57aa6bb34d6 Author: Felix Fietkau Date: Wed Jul 28 02:40:49 2010 +0200 mac80211: inform drivers about the off-channel status on channel changes For some drivers it can be useful to know whether the channel they're supposed to switch to is going to be used for short off-channel work or scanning, or whether the hardware is expected to stay on it for a while longer. This is important for various kinds of calibration work, which takes longer to complete and should keep some persistent state, even if the channel temporarily changes. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit a0daa0e7592ada797d6835f11529097aabc27ad2 Author: Luis R. Rodriguez Date: Tue Jul 27 16:33:08 2010 -0400 Revert "mac80211: fix sw scan bracketing" This reverts this commit. While in theory the change is correct the patch does not address current assumptions made by some drivers, one which is definitley affected is ath9k. Prior to this change the scan complete callback would be called after we returned to the home channel and configured the hardware RX filters. After this change we call the scan complete callback prior to both the hw config and the config filter. At least for ath9k this breaks quite a few assumptions on the callback, leading to disconnects to the AP after every scan making the driver pretty useless on STA mode. The goal behind this commit was to address the now understood spurious warnings from ath9k and mac80211_hwsim on scanning on two wiphys at the same time but we have now supressed these and will address this issue in the next kernel release. When fixing this for good next we must first review the other driver's dependence on this logic and perhaps consider removal of the scan complete callback all together. Cc: Johannes Berg Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 308883380c615b8b3d2c0eadb8680a921177c0b3 Author: Luis R. Rodriguez Date: Tue Jul 27 16:33:06 2010 -0400 ath9k: remove the two wiphys scanning at the same time message When issuing two consecutive scans you could often end up getting in the logs: "ath9k: Two wiphys trying to scan at the same time" This message is due to a race in mac80211 but addressing that race requires some more major changes on the driver and perhaps optimizations on mac80211 like removing the scan complete callback alltogether. Its too late to address this this kernel release so supress the complaint and annotate this needs fixing for later. Cc: Johannes Berg Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit c4c322941ce0d7e2b7b8794ad70683123d9cb26a Author: Yuri Ershov Date: Tue Jun 29 15:08:08 2010 +0400 cfg80211: Update of regulatory request initiator handling In some cases there could be possible dereferencing freed pointer. The update is intended to avoid this issue. Signed-off-by: Yuri Ershov Signed-off-by: John W. Linville commit d080e2755d840ede60128cc914a070868ebabc1e Author: Yuri Ershov Date: Tue Jun 29 15:08:07 2010 +0400 nl80211: Fix memory leaks In case of errors during message composing msg should be freed after canceling. Signed-off-by: Yuri Kululin Signed-off-by: Yuri Ershov Signed-off-by: John W. Linville commit e4ab7eb0aecbe56ac280486c61cd3f0f6c42870b Author: Yuri Ershov Date: Tue Jun 29 15:08:06 2010 +0400 mac80211: Put some code under MESH macro In the function ieee80211_subif_start_xmit the logic related with meshdrlen is under CONFIG_MAC80211_MESH macro, but in one place it isn't. This is some update for this Signed-off-by: Yuri Ershov Signed-off-by: John W. Linville commit 099284bdecf6e0af78662371ed3f45b71d796aad Merge: 073730d 4ebaa4e Author: John W. Linville Date: Wed Jul 28 16:17:49 2010 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6 commit 1be85a6d93f4207d8c2c6238c4a96895e28cefba Author: Hans Rosenfeld Date: Wed Jul 28 19:09:32 2010 +0200 x86, cpu: Use AMD errata checking framework for erratum 383 Use the AMD errata checking framework instead of open-coding the test. Signed-off-by: Hans Rosenfeld LKML-Reference: <1280336972-865982-3-git-send-email-hans.rosenfeld@amd.com> Signed-off-by: H. Peter Anvin commit 9d8888c2a214aece2494a49e699a097c2ba9498b Author: Hans Rosenfeld Date: Wed Jul 28 19:09:31 2010 +0200 x86, cpu: Clean up AMD erratum 400 workaround Remove check_c1e_idle() and use the new AMD errata checking framework instead. Signed-off-by: Hans Rosenfeld LKML-Reference: <1280336972-865982-2-git-send-email-hans.rosenfeld@amd.com> Signed-off-by: H. Peter Anvin commit d78d671db478eb8b14c78501c0cee1cc7baf6967 Author: Hans Rosenfeld Date: Wed Jul 28 19:09:30 2010 +0200 x86, cpu: AMD errata checking framework Errata are defined using the AMD_LEGACY_ERRATUM() or AMD_OSVW_ERRATUM() macros. The latter is intended for newer errata that have an OSVW id assigned, which it takes as first argument. Both take a variable number of family-specific model-stepping ranges created by AMD_MODEL_RANGE(). Iff an erratum has an OSVW id, OSVW is available on the CPU, and the OSVW id is known to the hardware, it is used to determine whether an erratum is present. Otherwise, the model-stepping ranges are matched against the current CPU to find out whether the erratum applies. For certain special errata, the code using this framework might have to conduct further checks to make sure an erratum is really (not) present. Signed-off-by: Hans Rosenfeld LKML-Reference: <1280336972-865982-1-git-send-email-hans.rosenfeld@amd.com> Signed-off-by: H. Peter Anvin commit 7d50d07da23995a18ac449636cb42aec2cb2808d Merge: 2decb19 6aa033d Author: H. Peter Anvin Date: Wed Jul 28 13:11:28 2010 -0700 Merge remote branch 'linus/master' into x86/cpu commit 47916be4e28c3d6fdb97dd8fb887d1d9b3145b9d Merge: 852db46 d75d68c Author: Thomas Gleixner Date: Wed Jul 28 21:49:22 2010 +0200 Merge branch 'powerpc.cherry-picks' into timers/clocksource Conflicts: arch/powerpc/kernel/time.c Reason: The powerpc next tree contains two commits which conflict with the timekeeping changes: 8fd63a9e powerpc: Rework VDSO gettimeofday to prevent time going backwards c1aa687d powerpc: Clean up obsolete code relating to decrementer and timebase John Stultz identified them and provided the conflict resolution. Signed-off-by: Thomas Gleixner commit d75d68cfef4936ddf38d2694ae2f7d1f7c45db05 Author: Paul Mackerras Date: Sun Jun 20 19:04:14 2010 +0000 powerpc: Clean up obsolete code relating to decrementer and timebase Since the decrementer and timekeeping code was moved over to using the generic clockevents and timekeeping infrastructure, several variables and functions have been obsolete and effectively unused. This deletes them. In particular, wakeup_decrementer() is no longer needed since the generic code reprograms the decrementer as part of the process of resuming the timekeeping code, which happens during sysdev resume. Thus the wakeup_decrementer calls in the suspend_enter methods for 52xx platforms have been removed. The call in the powermac cpu frequency change code has been replaced by set_dec(1), which will cause a timer interrupt as soon as interrupts are enabled, and the generic code will then reprogram the decrementer with the correct value. This also simplifies the generic_suspend_en/disable_irqs functions and makes them static since they are not referenced outside time.c. The preempt_enable/disable calls are removed because the generic code has disabled all but the boot cpu at the point where these functions are called, so we can't be moved to another cpu. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 0e469db8f70c2645acdc90981c0480a3e19d5e68 Author: Paul Mackerras Date: Sun Jun 20 19:03:08 2010 +0000 powerpc: Rework VDSO gettimeofday to prevent time going backwards Currently it is possible for userspace to see the result of gettimeofday() going backwards by 1 microsecond, assuming that userspace is using the gettimeofday() in the VDSO. The VDSO gettimeofday() algorithm computes the time in "xsecs", which are units of 2^-20 seconds, or approximately 0.954 microseconds, using the algorithm now = (timebase - tb_orig_stamp) * tb_to_xs + stamp_xsec and then converts the time in xsecs to seconds and microseconds. The kernel updates the tb_orig_stamp and stamp_xsec values every tick in update_vsyscall(). If the length of the tick is not an integer number of xsecs, then some precision is lost in converting the current time to xsecs. For example, with CONFIG_HZ=1000, the tick is 1ms long, which is 1048.576 xsecs. That means that stamp_xsec will advance by either 1048 or 1049 on each tick. With the right conditions, it is possible for userspace to get (timebase - tb_orig_stamp) * tb_to_xs being 1049 if the kernel is slightly late in updating the vdso_datapage, and then for stamp_xsec to advance by 1048 when the kernel does update it, and for userspace to then see (timebase - tb_orig_stamp) * tb_to_xs being zero due to integer truncation. The result is that time appears to go backwards by 1 microsecond. To fix this we change the VDSO gettimeofday to use a new field in the VDSO datapage which stores the nanoseconds part of the time as a fractional number of seconds in a 0.32 binary fraction format. (Or put another way, as a 32-bit number in units of 0.23283 ns.) This is convenient because we can use the mulhwu instruction to convert it to either microseconds or nanoseconds. Since it turns out that computing the time of day using this new field is simpler than either using stamp_xsec (as gettimeofday does) or stamp_xtime.tv_nsec (as clock_gettime does), this converts both gettimeofday and clock_gettime to use the new field. The existing __do_get_tspec function is converted to use the new field and take a parameter in r7 that indicates the desired resolution, 1,000,000 for microseconds or 1,000,000,000 for nanoseconds. The __do_get_xsec function is then unused and is deleted. The new algorithm is now = ((timebase - tb_orig_stamp) << 12) * tb_to_xs + (stamp_xtime_seconds << 32) + stamp_sec_fraction with 'now' in units of 2^-32 seconds. That is then converted to seconds and either microseconds or nanoseconds with seconds = now >> 32 partseconds = ((now & 0xffffffff) * resolution) >> 32 The 32-bit VDSO code also makes a further simplification: it ignores the bottom 32 bits of the tb_to_xs value, which is a 0.64 format binary fraction. Doing so gets rid of 4 multiply instructions. Assuming a timebase frequency of 1GHz or less and an update interval of no more than 10ms, the upper 32 bits of tb_to_xs will be at least 4503599, so the error from ignoring the low 32 bits will be at most 2.2ns, which is more than an order of magnitude less than the time taken to do gettimeofday or clock_gettime on our fastest processors, so there is no possibility of seeing inconsistent values due to this. This also moves update_gtod() down next to its only caller, and makes update_vsyscall use the time passed in via the wall_time argument rather than accessing xtime directly. At present, wall_time always points to xtime, but that could change in future. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit eeaf61d8891f9c9ed12c1a667e72bf83f0857954 Author: stephen hemminger Date: Tue Jul 27 08:26:30 2010 +0000 bridge: add rcu_read_lock on transmit Long ago, when bridge was converted to RCU, rcu lock was equivalent to having preempt disabled. RCU has changed a lot since then and bridge code was still assuming the since transmit was called with bottom half disabled, it was RCU safe. Signed-off-by: Stephen Hemminger Tested-by: Johannes Berg Signed-off-by: David S. Miller commit 33085bb8da9c77c2d5572125385efa87627d8b59 Author: Peter Huewe Date: Thu Jul 15 19:01:21 2010 +0000 RDMA/nes: Convert pci_table entries to PCI_VDEVICE This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: Roland Dreier commit 0c4a938ed4a2cd0c2d31c5c616594bae0865d7f3 Author: Ernesto Ramos Date: Wed Jul 28 09:56:01 2010 -0500 staging:ti dspbridge: remove find_gcf from nldr.c Remove find_gcf from nldr.c and use kernel function gcd(). Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 7c9305b80cb81c94d12c7109f8abfe4bc5b08a23 Author: Ernesto Ramos Date: Wed Jul 28 09:54:55 2010 -0500 staging:ti dspbridge: remove bridge_brd_delete function Remove bridge_brd_delete() function since it is doing the same that bridge_brd_stop(). Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit a2205e487eb0a8af0bfc421038f1777ca6603ac4 Author: Ernesto Ramos Date: Wed Jul 28 09:54:54 2010 -0500 staging:ti dspbridge: make sure IVA2 is OFF when dev is created Regardless the IVA2 power state before bridgedriver is installed, the driver must ensure that IVA2 power state is OFF when the device driver is created. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit cfccf244a76778132a59d79f802ff63a22e08f59 Author: Ernesto Ramos Date: Wed Jul 28 09:54:53 2010 -0500 staging:ti dspbridge: proc_load/start should set IVA2 to OFF in case of failure When a base image is being loaded or started and by some reason the process fails, the IVA2 should be switched OFF. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit a2c2272194ac8bfe5ae3ec91e722a766d931d324 Author: Ernesto Ramos Date: Wed Jul 28 09:54:52 2010 -0500 staging:ti dspbridge: fix bridge_brd_stop so IVA2 is set OFF right now, bridge_brd_stop is not changing the IVA2 power state to OFF since PM_PWSTST_IVA2 is not 0 after calling this function. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 3a8965fda925361c291cb03f7aced2e3e51116b9 Author: Ernesto Ramos Date: Wed Jul 28 09:45:33 2010 -0500 staging:ti dspbridge: remove DSP_FAILED macro definition Since status succeeded is now 0 macro DSP_FAILED is not necessary anymore. This patch removes this define. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 82f575e5bb27ca30e3e27b537228610cb7ee26c6 Author: Ernesto Ramos Date: Wed Jul 28 09:45:32 2010 -0500 staging:ti dspbridge: remove DSP_FAILED macro from services Since status succeeded is 0, DSP_FAILED macro is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit b66e0986f900db194f637149e68c00345863195b Author: Ernesto Ramos Date: Wed Jul 28 09:45:31 2010 -0500 staging:ti dspbridge: remove DSP_FAILED macro from rmgr Since status succeeded is 0, DSP_FAILED macro is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 51d5e099cc9a21960e59bcaee6cc5e2620ea6bb2 Author: Ernesto Ramos Date: Wed Jul 28 09:45:30 2010 -0500 staging:ti dspbridge: remove DSP_FAILED macro from pmgr Since status succeeded is 0, DSP_FAILED macro is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit d1b2216d13679557b56c1e4a53e4e3c5683bf3d5 Author: Ernesto Ramos Date: Wed Jul 28 09:45:29 2010 -0500 staging:ti dspbridge: remove DSP_FAILED macro from core Since status succeeded is 0, DSP_FAILED macro is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 54621f031c037d4df9844e5246ce1924c49a703e Author: Ernesto Ramos Date: Wed Jul 28 09:45:28 2010 -0500 staging:ti dspbridge: remove DSP_SUCCEEDED macro definition Since status succeeded is now 0 macro DSP_SUCCEEDED is not necessary anymore. This patch removes this define. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 95bd64a893e036ccc54ceef25d4c55fcfe3a4475 Author: Ernesto Ramos Date: Wed Jul 28 09:45:27 2010 -0500 staging:ti dspbridge: remove DSP_SUCCEEDED macro from services Since status succeeded is now 0 macro DSP_SUCCEEDED is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit a741ea6efc0c78093ef5652c119262004ee7a8c9 Author: Ernesto Ramos Date: Wed Jul 28 09:45:26 2010 -0500 staging:ti dspbridge: remove DSP_SUCCEEDED macro from rmgr Since status succeeded is now 0 macro DSP_SUCCEEDED is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 157990f0d7f70aaa2b0158f959994eb0f65c05c0 Author: Ernesto Ramos Date: Wed Jul 28 09:45:25 2010 -0500 staging:ti dspbridge: remove DSP_SUCCEEDED macro from pmgr Since status succeeded is now 0 macro DSP_SUCCEEDED is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit e6486d8cee8d5be063cc2971ad274eb90f27e18c Author: Ernesto Ramos Date: Wed Jul 28 09:45:24 2010 -0500 staging:ti dspbridge: remove DSP_SUCCEEDED macro from core Since status succeeded is now 0 macro DSP_SUCCEEDED is not necessary anymore. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit ecd3d0ca4006f86a542bfd5ed1277cac6b2df3be Author: Ernesto Ramos Date: Wed Jul 28 09:40:52 2010 -0500 staging:ti dspbridge: replace simple_strtoul by strict_strtoul Replace simple_strtoul by strict_strtoul in atoi function. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit b3c8aef0a2334e088c21757d3143954c774c6da0 Author: Ernesto Ramos Date: Wed Jul 28 09:40:51 2010 -0500 staging:ti dspbridge: remove unnecessary volatile variables Remove unnecessary volatile variables; use accessor functions __raw_readl/__raw_writel instead when applicable. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 74ea8ff93b3759f27e6677076fe80c0c9c3f209d Author: Ernesto Ramos Date: Wed Jul 28 09:40:50 2010 -0500 staging:ti dspbridge: remove function delete_strm_mgr Remove function delete_strm_mgr in strm.c and use kfree instead. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 3448c5481cc4ae8bf19fae5002f0c4e43007da40 Author: Ernesto Ramos Date: Wed Jul 28 09:40:49 2010 -0500 staging:ti dspbridge: remove unnecessary check for NULL pointer in cmm.c Remove unnecessary check for NULL pointer in cmm.c. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 3fee78f6becabffdcc46719e8bf13567cab73beb Author: Ernesto Ramos Date: Wed Jul 28 09:40:48 2010 -0500 staging:ti dspbridge: remove unused typedef REG16 Remove unused typedef REG16 in dspbridge. Signed-off-by: Ernesto Ramos Signed-off-by: Greg Kroah-Hartman commit 9f912212cd005f9a0a514ae982de915ff94bd765 Author: Pavan Savoy Date: Wed Jul 28 02:26:00 2010 -0500 Staging: ti-st: update ABI and TODO update TODO to reflect the items taken care of, update ABI to reflect the new debugfs entries exposed. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit c1afac1502c4e519e6a1df08a5d9a2391d00388b Author: Pavan Savoy Date: Wed Jul 28 02:25:59 2010 -0500 Staging: ti-st: mv sysfs entries to debugfs When the chip is in use, information like the chip's ROM version and the protocols currently making use of the chip needs to be made known to user-space. Earlier the version and the protocol-list were exposed as sysfs entries now cleanup by making them as debugfs entries, also in process remove any unwanted/previously unused sysfs entries. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit e928c077e5cdcd72ee762125b37232aec1ff49f3 Author: Randy Dunlap Date: Tue Jul 27 12:21:19 2010 -0700 Staging: line6: needs to select SND_PCM line6 uses snd_pcm*() functions, so it should select SND_PCM. ERROR: "snd_pcm_period_elapsed" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_set_ops" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_lib_free_pages" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_lib_ioctl" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_lib_malloc_pages" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_hw_constraint_ratdens" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_format_physical_width" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_lib_preallocate_pages_for_all" [drivers/staging/line6/line6usb.ko] undefined! ERROR: "snd_pcm_new" [drivers/staging/line6/line6usb.ko] undefined! Signed-off-by: Randy Dunlap Cc: Markus Grabner Cc: stable Signed-off-by: Greg Kroah-Hartman commit 339f4f4eab80caa6cf0d39fb057ad6ddb84ba91e Author: Christof Schmitt Date: Fri Jul 16 15:37:43 2010 +0200 [SCSI] zfcp: Trigger logging in the FCP channel on qdio error conditions Exploit the cio siosl function to trigger logging in the FCP channel on qdio error conditions. Add a helper function in zfcp_qdio to ensure that tracing is only triggered once before calling qdio_shutdown. Trigger in zfcp for hardware logs are: - timeout for FSF requests to the FCP channel - "no recommendation" status from FCP channel - invalid FSF protocol status - stalled outbound queue - unknown request id on inbound queue - QDIO_ERROR_SLSB_STATE All of the above triggers run from the Linux qdio softirq context, so no additional synchronization is necessary for the handling of the ZFCP_STATUS_ADAPTER_SIOSL_ISSUED flag. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit ef3eb71d8ba4fd9d48c5f9310bc9d90ca00323b4 Author: Felix Beck Date: Fri Jul 16 15:37:42 2010 +0200 [SCSI] zfcp: Introduce experimental support for DIF/DIX Introduce support for DIF/DIX in zfcp: Report the capabilities for the Scsi_host, map the protection data when issuing I/O requests and handle the new error codes. Also add the fsf data_direction field to the hba trace, it is useful information for debugging in that area. This is an EXPERIMENTAL feature for now. Signed-off-by: Felix Beck Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit dcc18f48a2f1a44c5e8848f30d0cf53a8066c62a Author: Christof Schmitt Date: Fri Jul 16 15:37:41 2010 +0200 [SCSI] zfcp: Enable data division support for FCP devices Try to enable data division support for FCP devices and indicate in the adapter status flag if it succeeded. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit d23948ea38c4c6aa13e4df903dfdd71cabd0e6a3 Author: Swen Schillig Date: Fri Jul 16 15:37:40 2010 +0200 [SCSI] zfcp: Prevent access on uninitialized memory. Initialize allocated memory to zero to prevent access on error. This prevents a possible error in the error handling path. Signed-off-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 2d1e547f7523514d1da449bcf08645fe13579378 Author: Sven Schuetz Date: Fri Jul 16 15:37:39 2010 +0200 [SCSI] zfcp: Post events through FC transport class Post FC transport class netlink events for usage in the userspace, e.g. for HBAAPI. Supported events are those required for the polled events in HBAAPI. - link up - link down - incoming RSCN (events related to FC-AL are not supported, as zfcp has no support for FC-AL) Signed-off-by: Sven Schuetz Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 706eca49a044a1ea89352dcc4b96ffc1631b2cb5 Author: Swen Schillig Date: Fri Jul 16 15:37:38 2010 +0200 [SCSI] zfcp: Cleanup QDIO attachment and improve processing. Some definitions and structures in the zfcp QDIO processing are improved by the removal of not required variables and processing steps. I addition the naming of some variables is changed to make their purpose more clear. Signed-off-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 01b047599ade30051bf6c14fbe64181d1fec3dfa Author: Swen Schillig Date: Fri Jul 16 15:37:37 2010 +0200 [SCSI] zfcp: Cleanup function parameters for sbal value. A lot of functions require the amount of SBALs as one of their parameter which is most times invariable. Therefore remove this parameter and set the SBAL value explicitly if a non standard value is required. In addition the warning message "oversized data" is replaced with a BUG_ON() statement assuring the limits defined and requested by zfcp. Signed-off-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit faf4cd854203b26527d81e7e13d66e78774dad44 Author: Christof Schmitt Date: Fri Jul 16 15:37:36 2010 +0200 [SCSI] zfcp: Use correct width for timer_interval field The timer_interval is 14 bits in width. Introduce a define for properly masking the value. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 1bf3ff02ca6247b2d7c9ebda93002392bf60a61d Author: Christof Schmitt Date: Fri Jul 16 15:37:35 2010 +0200 [SCSI] zfcp: Remove SCSI device when removing unit Configuring a LUN in zfcp, also creates a SCSI device. For consistency, it makes sense to remove the SCSI device when the LUN is deconfigured. Replace the flush_work with the call to scsi_remove_device: scsi_remove_device also takes the scan_mutex that synchronizes itself with any long running device discovery. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 674c3a993c278b7469e1cf12bfc13e6838dfd877 Author: Christof Schmitt Date: Fri Jul 16 15:37:34 2010 +0200 [SCSI] zfcp: Use memdup_user and kstrdup Use the functions memdup_user and kstrdup to allocate memory and copy the data in one step, saving some lines of code. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit f7bd7c3627a3cf06bf1c6da55339469ec1853a48 Author: Christof Schmitt Date: Thu Jul 8 09:53:10 2010 +0200 [SCSI] zfcp: Fix retry after failed "open port" erp action Trying to enqueue a port erp action from the port erp strategy will fail in zfcp_erp_required_act. To try the same action again, return ZFCP_ERP_FAILED. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 9c785d944e6fa7eef390c799b93e43243505780c Author: Christof Schmitt Date: Thu Jul 8 09:53:09 2010 +0200 [SCSI] zfcp: Fail erp after timeout After a timeout notification, do not try to run the erp strategy. Return from the erp with "failed" to possibly trigger a retry. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 835dc29887073eec7817559a07558f955383d099 Author: Christof Schmitt Date: Thu Jul 8 09:53:08 2010 +0200 [SCSI] zfcp: Use forced_reopen in terminate_rport_io callback When running in non-NPIV mode, the port_reopen in terminate_rport_io might succeed even though the remote port is not available. If the same port connection is held open from another operating system, the reopen is only a virtual operation and might not hit the SAN. Fix this by changing the call to forced_reopen that forces a logout/login operation in the SAN. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 5a7de559b4e0169ff4cfca654b4e4f0014996e57 Author: Christof Schmitt Date: Thu Jul 8 09:53:07 2010 +0200 [SCSI] zfcp: Register SCSI devices after successful fc_remote_port_add When the successful return of an adisc is the final step to set the port online, the registration of SCSI devices might be omitted. SCSI devices that have been removed before (due to a short dev_loss_tmo setting) might not be attached again. The problem is that the registration of SCSI devices is done only after erp has finished. The correct place would be after the call to fc_remote_port_add to mimick the scan in the FC transport class. Change the registration of SCSI devices to be triggered after the fc_remote_port_add call. For the initial inquiry command to succeed, the unit must also be open. If the unit reopen is still pending, the inquiry command to the LUN will be deferred with DID_IMM_RETRY, so there is no harm from this approach. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 097ef3bd0cd4f156fee039e52855d095b7ba3db4 Author: Christof Schmitt Date: Thu Jul 8 09:53:06 2010 +0200 [SCSI] zfcp: Do not try "forced close" when port is already closed When the port is already "physically closed" try the reopen instead. There is no way to send a "physically close" to an already closed port. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 5767620c383a226e39891e7e654a70ebb8e95e69 Author: Christof Schmitt Date: Thu Jul 8 09:53:05 2010 +0200 [SCSI] zfcp: Do not unblock rport from REOPEN_PORT_FORCED When the REOPEN_PORT_FORCED erp action succeeds, the port has been closed. A REOPEN_PORT will try to open the port after the REPORT_PORT_FORCED. The rport should only be unblocked after the successful completion of the reopen port. Reviewed-by: Swen Schillig Signed-off-by: Christof Schmitt Signed-off-by: James Bottomley commit 8c31a1e049a0c26f78558d7cc5a9ab6956c86694 Author: Arnaldo Carvalho de Melo Date: Wed Jul 28 11:30:10 2010 -0300 perf man pages: Fix cut'n'paste error We remove files _from_ the cache. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 478a8a0543021172220feeb0b39bb1b3e43c988f Author: Alan Stern Date: Wed Jun 16 14:52:17 2010 -0400 [SCSI] sd: add support for runtime PM This patch (as1399) adds runtime-PM support to the sd driver. The support is unsophisticated: If a SCSI disk device is mounted, or if its device file is held open, then the device will not be runtime-suspended; otherwise it will (provided userspace gives permission by writing "auto" to the sysfs power/control attribute). In order to make this work, a dev_set_drvdata() call had to be moved from sd_probe_async() to sd_probe(). Also, a few lines of code were changed to use a local variable instead of recalculating the address of an embedded struct device. Signed-off-by: Alan Stern Signed-off-by: James Bottomley commit bc4f24014de58f045f169742701a6598884d93db Author: Alan Stern Date: Thu Jun 17 10:41:42 2010 -0400 [SCSI] implement runtime Power Management This patch (as1398b) adds runtime PM support to the SCSI layer. Only the machanism is provided; use of it is up to the various high-level drivers, and the patch doesn't change any of them. Except for sg -- the patch expicitly prevents a device from being runtime-suspended while its sg device file is open. The implementation is simplistic. In general, hosts and targets are automatically suspended when all their children are asleep, but for them the runtime-suspend code doesn't actually do anything. (A host's runtime PM status is propagated up the device tree, though, so a runtime-PM-aware lower-level driver could power down the host adapter hardware at the appropriate times.) There are comments indicating where a transport class might be notified or some other hooks added. LUNs are runtime-suspended by calling the drivers' existing suspend handlers (and likewise for runtime-resume). Somewhat arbitrarily, the implementation delays for 100 ms before suspending an eligible LUN. This is because there typically are occasions during bootup when the same device file is opened and closed several times in quick succession. The way this all works is that the SCSI core increments a device's PM-usage count when it is registered. If a high-level driver does nothing then the device will not be eligible for runtime-suspend because of the elevated usage count. If a high-level driver wants to use runtime PM then it can call scsi_autopm_put_device() in its probe routine to decrement the usage count and scsi_autopm_get_device() in its remove routine to restore the original count. Hosts, targets, and LUNs are not suspended while they are being probed or removed, or while the error handler is running. In fact, a fairly large part of the patch consists of code to make sure that things aren't suspended at such times. [jejb: fix up compile issues in PM config variations] Signed-off-by: Alan Stern Signed-off-by: James Bottomley commit db5bd1e0b505c54ff492172ce4abc245cf6cd639 Author: Alan Stern Date: Thu Jun 17 10:36:49 2010 -0400 [SCSI] convert to the new PM framework This patch (as1397b) converts the SCSI midlayer to use the new PM callbacks (struct dev_pm_ops). A new source file, scsi_pm.c, is created to hold the new callback routines, and the existing suspend/resume code is moved there. Signed-off-by: Alan Stern Signed-off-by: James Bottomley commit df64d3caab8db6ae17dacd229a03d7689a10c432 Author: James Bottomley Date: Tue Jul 27 15:51:13 2010 -0500 [SCSI] Unify SAM_ and SAM_STAT_ macros We have two separate definitions for identical constants with nearly the same name. One comes from the generic headers in scsi.h; the other is an enum in libsas.h ... it's causing confusion about which one is correct (fortunately they both are). Fix this by eliminating the libsas.h duplicate Signed-off-by: James Bottomley commit 653c42d552d0fd0b05485442aed45dd2d62269c0 Author: Tomas Henzl Date: Mon Jul 26 16:41:13 2010 +0200 [SCSI] mptfusion: release resources in error return path We should release the resources in error return code path. The requested pci bars should be released under an error condition, when mpt_mapresources fails. Signed-off-by: Tomas Henzl Acked-by: "Desai, Kashyap" Signed-off-by: James Bottomley commit 943a2df8c8fb95a9d4243d4878db1c302ff85725 Author: Kashyap, Desai Date: Mon Jul 26 18:58:44 2010 +0530 [SCSI] mptfusion: Bump version 03.04.17 Version upgrade patch. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 213aaca3e5727f3eb56002b04a1405db34a54ed8 Author: Kashyap, Desai Date: Mon Jul 26 18:57:36 2010 +0530 [SCSI] mptfusion: Extra debug prints added relavent to Device missing delay error handling Adding function name in original debug prints and few more debug prints are added. Signed-off-by: Kashyap Desai Cc: Stable Tree Signed-off-by: James Bottomley commit c9de7dc48307395fb71780b567ae8833b080d1c8 Author: Kashyap, Desai Date: Mon Jul 26 18:56:21 2010 +0530 [SCSI] mptfusion: Block Error handling for deleting devices or Device in DMD Issue description: In multipath topology, when device deletion is in transient state, multipath driver can call blk_flush_queue() as part of path failure. Before device get deleted from OS, Device may go OFFLINE as part of error handling kicked off triggered from multipathing driver. Above condition hits more frequently if device missing delay timer (which is LSI specific firmware parameter) is non zero value. root cause of this issue is Error handling thread is getting kicked off for device which is not really present(in transient state of deleting). This patch has solution for this issue. driver is now using eh_timed_out callback. See below. mptsas_transport_template->eh_timed_out = mptsas_eh_timed_out Using mptsas_eh_timed_out function, driver can decide weather vdevice is under Device missing delay or deleting state. for either of those cases, there is BLK_EH_RESET_TIMER return to scsi mid and error handling thread will not be kicked off for that particular scsi command. Signed-off-by: Kashyap Desai Cc: Stable Tree Signed-off-by: James Bottomley commit b5833cbbd7c2bc3462e684feadd8e6a0ca8e5387 Author: Peter Huewe Date: Tue Jul 20 15:28:41 2010 -0700 [SCSI] ibmvstgt: add __init/__exit macros Add the __init and __exit macros to the module_init / module_exit functions from drivers/scsi/ibmvscsi/ibmvstgt.c Signed-off-by: Peter Huewe Signed-off-by: Andrew Morton Acked-by: Brian King Signed-off-by: James Bottomley commit 0dcae66fd9cb47f4db64aba20a59d26e09e78fe4 Author: Rolf Eike Beer Date: Wed Jul 1 22:43:39 2009 +0200 [SCSI] aacraid: Do not set DMA mask to 32 bit first if adapter only supports 31 Signed-off-by: Rolf Eike Beer Acked-by: Achim Leubner Signed-off-by: James Bottomley commit 0c470874858e0075f420dcfb3c3570b2057de275 Author: Arun Easi Date: Fri Jul 23 15:28:38 2010 +0500 [SCSI] qla2xxx: T10 DIF Type 2 support Signed-off-by: Andrew Vasquez Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 3dbe756a66afbec6487068d4213ecccc3a18807f Author: Andrew Vasquez Date: Fri Jul 23 15:28:37 2010 +0500 [SCSI] qla2xxx: Cleanup some dead-code and make some functions static. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit de7c5d059dbd245ad80011725f9c86f560e61fff Author: Giridhar Malavali Date: Fri Jul 23 15:28:36 2010 +0500 [SCSI] qla2xxx: Update copyright banner. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 4d78c973ef2d21e90ff55f97489d663a0959a93f Author: Giridhar Malavali Date: Fri Jul 23 15:28:35 2010 +0500 [SCSI] qla2xxx: Rearranged and cleaned up the code for processing the pending commands. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 3711333dfbeec1905c2d3521d1ed2ddcdbdbac04 Author: Giridhar Malavali Date: Fri Jul 23 15:28:34 2010 +0500 [SCSI] qla2xxx: Updates for ISP82xx. Re-organized and cleaned up the ISP82xx specific code. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 08f71e090d3f0d8136c3f350e5082f9217fb7d5b Author: Harish Zunjarrao Date: Fri Jul 23 15:28:33 2010 +0500 [SCSI] qla2xxx: Do not allow ELS Passthru commands for ISP23xx adapters Signed-off-by: Harish Zunjarrao Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 9bc4f4fb44d22e5edc9369c87585a3b492073b8b Author: Harish Zunjarrao Date: Fri Jul 23 15:28:32 2010 +0500 [SCSI] qla2xxx: Add CT passthru support for ISP23xx adapters Signed-off-by: Harish Zunjarrao Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 9a15eb4b514c526cf3181ce224967ab5d8dafe77 Author: Madhuranath Iyengar Date: Fri Jul 23 15:28:31 2010 +0500 [SCSI] qla2xxx: Don't issue set or get port param MBC if remote port is not logged in Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 8867048b486a64125b62f93af13a379d6d575ee2 Author: Chad Dupuis Date: Fri Jul 23 15:28:30 2010 +0500 [SCSI] qla2xxx: Add qla2x00_free_fcports() function This function was added to encapsulate freeing the memory for all the fcports associated with a particular vha. Also added a call to qla2x00_free_fcports() to qla2x00_free_device() to free the memory for all the fcports associated with a vha during device removal. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 14e303d98bcfe4a6075407b531b1df2f237deb28 Author: Andrew Vasquez Date: Fri Jul 23 15:28:29 2010 +0500 [SCSI] qla2xxx: Stop firmware before doing init firmware. If BIOS is enabled then drivers init firmware fails since BIOS has done the init once. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 03c3f563c55121292022a6e8e213ea54c20a5980 Author: Duane Grigsby Date: Fri Jul 23 15:28:28 2010 +0500 [SCSI] qla2xxx: Propogate transport disrupted status for cable pull conditions for faster failover. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 5544213be7b4fb693730106a6d70a8cc1aa7cdf6 Author: Andrew Vasquez Date: Fri Jul 23 15:28:27 2010 +0500 [SCSI] qla2xxx: Correct extended sense-data handling. Earlier implementation did not take into account the varying sizes of data buffers returned from structures sts_entry_t and sts_entry_24xx. Sense-data after the 20th byte could be incorrect. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 0f2d962f4d120e93b4d74d13c2e8038e9e4358b9 Author: Madhuranath Iyengar Date: Fri Jul 23 15:28:26 2010 +0500 [SCSI] qla2xxx: Check for golden firmware and show version if available Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit e8c72ba51a159f5d1cb195d3fb47262c782939d9 Author: Chad Dupuis Date: Fri Jul 23 15:28:25 2010 +0500 [SCSI] qla2xxx: Use GFF_ID to check FCP-SCSI FC4 type before logging into Nx_Ports The default method that qla2xxx uses is the GID_PT nameserver command to get a list of Nx_Ports. This patch adds a GFF_ID call for each port returned by GID_PT to get the FC4 type. If the FC4 type is not FCP SCSI then the qla2xxx driver will not record that port in it's port database. For switches that do not support the GFF_ID command, the behavior will be for qla2xxx to store that port anyways. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 2f0f3f4f06f7cfadebf58b70bd9e7f71d8fd96e4 Author: Madhuranath Iyengar Date: Fri Jul 23 15:28:24 2010 +0500 [SCSI] qla2xxx: Appropriately log FCP priority data messages Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit d94d10e7277069801b4e31b40770314a8421f996 Author: Giridhar Malavali Date: Fri Jul 23 15:28:23 2010 +0500 [SCSI] qla2xxx: Removed dependency for SRB structure for Marker processing Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 17cf2c5d76b468ca03e59c7cf60decfcef6c08c4 Author: Madhuranath Iyengar Date: Fri Jul 23 15:28:22 2010 +0500 [SCSI] qla2xxx: Don't issue set or get port param MBC if invalid port loop id Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit c01be6dcb2b5cce4feaf48035be6395e5cd7d47c Author: Mike Christie Date: Thu Jul 22 16:59:49 2010 +0530 [SCSI] iscsi_transport: wait on session in error handler path wait for session to come online in eh_device_reset_handler and eh_target_reset_handler Signed-off-by: Mike Christie Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Signed-off-by: James Bottomley commit fe4f0bdeea788a8ac049c097895cb2e4044f18b1 Author: Vikas Chaudhary Date: Thu Jul 22 16:57:43 2010 +0530 [SCSI] iscsi_transport: Modidify recovery_tmo from sysfs Added support to modify session->recovery_tmo from sysfs Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Acked-by: Mike Christie Signed-off-by: James Bottomley commit caf19d38607108304cd8cc67ed21378017f69e8a Author: FUJITA Tomonori Date: Thu Jul 22 09:36:51 2010 +0900 [SCSI] sg: fix bio leak with a detached device After blk_rq_map_user is successful, if we find that a device is unavailable (was detached), we must call blk_end_request_all to free bio(s) before blk_rq_unmap_user and blk_put_request. Reported-by: "Dailey, Nate" Signed-off-by: FUJITA Tomonori Tested-by: "Dailey, Nate" Signed-off-by: James Bottomley commit 240778e821f596a6954116107c5cc3456df84f81 Author: Vasu Dev Date: Tue Jul 20 15:21:33 2010 -0700 [SCSI] fcoe: remove check for zero fabric name This check prevents FCF selection in NPV mode due to zero fabric name in that case and in turn flogi fails. Though NPV mode should not have this zero and should be fixed there also but spec also does not require initiator to ensure that fabric name must be non-zero, therefore dropping this check to get flogi working in NPV mode. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 7f985231d274ef3e6e4d56a2939a534906299021 Author: Bhanu Prakash Gollapudi Date: Tue Jul 20 15:21:27 2010 -0700 [SCSI] libfc: Add retry logic to lport state machine when receiving LS_RJT Call fc_lport_error to retry upto max retry count when FLOGI/SCR/NS gets rejected. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit cf4aebcafb44a8810af10006dd4a5fcfb07bb810 Author: Vasu Dev Date: Tue Jul 20 15:21:22 2010 -0700 [SCSI] Revert "[SCSI] fcoe: Fix using VLAN ID in creating lport's WWWN/WWPN" This reverts commit cc0136c2e9c10e889cb36e39710c0eb10707b396. That commit introduced vlan id info to WWPN but WWPN needs to remain static as an unique port identifier in the fabric, therefore variable fabric vlan id info doesn't need to be coded inside WWPN. After this revert, port arg to fcoe_wwn_from_mac is always zero but still leaving it as-is okay to later allow users to use NAA 2 scheme with this additional port arg. Note with this patch, existing zoning using WWPN would require re-zoning this time only and later no more re-zoning due to any vlan id changes. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 54a5b21da9d4d3f58770da5d1c244db9724659ee Author: Yi Zou Date: Tue Jul 20 15:21:17 2010 -0700 [SCSI] fcoe: fix offload feature flag change from netdev Currently, when FCoE netdev feature flags are toggled by the LLD, lport's corresponding flags are not updated. This causes the fc_fcp to still try to offload the I/O. This patch adds support of NETDEV_FEAT_CHANGE event in fcoe netdev device notification callback so we can update the lport offload flags appropriately. Signed-off-by: Yi Zou Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 922611569572d3c1aa0ed6491d21583fb3fcca22 Author: Joe Eykholt Date: Tue Jul 20 15:21:12 2010 -0700 [SCSI] libfc: don't require a local exchange for incoming requests Incoming requests shouldn't require a local exchange if we're just going to reply with one or two frames and don't expect anything further. Don't allocate exchanges for such requests until requested by the upper-layer protocol. The sequence is always NULL for new requests, so remove that as an argument to request handlers. Also change the first argument to lport->tt.seq_els_rsp_send from the sequence pointer to the received frame pointer, to supply the exchange IDs and destination ID info. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 239e81048b7dcd27448db40c845f88ac7c68424e Author: Joe Eykholt Date: Tue Jul 20 15:21:07 2010 -0700 [SCSI] libfc: add interface to allocate a sequence for incoming requests For incoming ELS and FCP requests, we often don't require an exchange and sequence, however, sometimes we do. For those cases, (primarily FCP requests for targets) add a function to set up the exchange and sequence. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 24f089e2f2c800f88039e9d536d558ec6e349fad Author: Joe Eykholt Date: Tue Jul 20 15:21:01 2010 -0700 [SCSI] libfc: add fc_fill_reply_hdr() and fc_fill_hdr() Add functions to fill in an FC header given a request header. These reduces code lines in fc_lport and fc_rport and works without an exchange/sequence assigned. fc_fill_reply_hdr() fills a header for a final reply frame. fc_fill_hdr() which is similar but allows specifying the f_ctl parameter. Add defines for F_CTL values FC_FCTL_REQ and FC_FCTL_RESP. These can be used for most request and response sequences. v2 of patch adds a line to copy the frame encapsulation info from the received frame. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 251748a99e631a2c46edcf9e519cfc60fae8153d Author: Joe Eykholt Date: Tue Jul 20 15:20:56 2010 -0700 [SCSI] libfc: add fc_frame_sid() and fc_frame_did() functions To pave the way for eliminating exchanges from incoming requests, add simple inline fc_frame_sid() and fc_frame_did() functions which get the FC_IDs from the frame header. This can be almost as efficient as getting them from the sequence/exchange. Move ntohll, htonll, ntoh24 and hton24 to since we need them there and that's included by Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 079ecd8cfe95dfd28b74f3a00d66fdbcdfc8c611 Author: Joe Eykholt Date: Tue Jul 20 15:20:51 2010 -0700 [SCSI] libfc: eliminate rport LOGO state The LOGO state hasn't been used in a while, except in a brief transition to DELETE state while holding the rport mutex. All port LOGO responses have been ignored as well as any timeout if we don't get a response. So this patch just removes LOGO state and simplifies the response handler. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 1dd454d9e5205f9a61d51fb97159afeffa0a506c Author: Joe Eykholt Date: Tue Jul 20 15:20:46 2010 -0700 [SCSI] fcoe: config via separate create_vn2vn module parameter Add module parameter create_vn2vn that behaves like the create parameter except that the new instance is created in FIP vn2vn mode. This can be replaced once we change create to allow modifying per-instance attributes before starting the instance. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit cd229e42eb8cdfdcbe15dfeec39c3641f62de43a Author: Joe Eykholt Date: Tue Jul 20 15:20:40 2010 -0700 [SCSI] fcoe libfcoe: use correct FC-MAP for VN2VN mode In VN2VN mode, map_dest means to use the default VN2VN OUI. Change code that uses the default FCoE OUI to use the one set in the fcoe_ctlr struct. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 5554345bc5275afed760631277fdab0a5a19472e Author: Joe Eykholt Date: Tue Jul 20 15:20:35 2010 -0700 [SCSI] libfcoe: Fix FIP ELS encapsulation details for FLOGI responses When sending a FLOGI LS_ACC, which we only do in point-to-multipoint mode, the MAC descriptor should have the granted MAC set to 0x0efd00 || D_ID. When sending an LS_RJT, there should be no MAC descriptor. When sending either an LS_ACC or LS_RJT, the subcode should indicate an reply, not a request. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit e10f8c667b874a57512c936089092a3d1ef7ab8a Author: Joe Eykholt Date: Tue Jul 20 15:20:30 2010 -0700 [SCSI] libfcoe: fcoe: fnic: add FIP VN2VN point-to-multipoint support The FC-BB-6 committee is proposing a new FIP usage model called VN_port to VN_port mode. It allows VN_ports to discover each other over a loss-free L2 Ethernet without any FCF or Fibre-channel fabric services. This is point-to-multipoint. There is also a variant of this called point-to-point which provides for making sure there is just one pair of ports operating over the Ethernet fabric. We add these new states: VNMP_START, _PROBE1, _PROBE2, _CLAIM, and _UP. These usually go quickly in that sequence. After waiting a random amount of time up to 100 ms in START, we select a pseudo-random proposed locally-unique port ID and send out probes in states PROBE1 and PROBE2, 100 ms apart. If no probe responses are heard, we proceed to CLAIM state 400 ms later and send a claim notification. We wait another 400 ms to receive claim responses, which give us a list of the other nodes on the network, including their FC-4 capabilities. After another 400 ms we go to VNMP_UP state and should start interoperating with any of the nodes for whic we receivec claim responses. More details are in the spec.j Add the new mode as FIP_MODE_VN2VN. The driver must specify explicitly that it wants to operate in this mode. There is no automatic detection between point-to-multipoint and fabric mode, and the local port initialization is affected, so it isn't anticipated that there will ever be any such automatic switchover. It may eventually be possible to have both fabric and VN2VN modes on the same L2 network, which may be done by two separate local VN_ports (lports). When in VN2VN mode, FIP replaces libfc's fabric-oriented discovery module with its own simple code that adds remote ports as they are discovered from incoming claim notifications and responses. These hooks are placed by fcoe_disc_init(). A linear list of discovered vn_ports is maintained under the fcoe_ctlr struct. It is expected to be short for now, and accessed infrequently. It is kept under RCU for lock-ordering reasons. The lport and/or rport mutexes may be held when we need to lookup a fcoe_vnport during an ELS send. Change fcoe_ctlr_encaps() to lookup the destination vn_port in the list of peers for the destination MAC address of the FIP-encapsulated frame. Add a new function fcoe_disc_init() to initialize just the discovery portion of libfcoe for VN2VN mode. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 9b651da900ccfe5581befb46eb06ef781a1d7e74 Author: Joe Eykholt Date: Tue Jul 20 15:20:24 2010 -0700 [SCSI] libfcoe: add state change debugging Enhancement: add debug messages at all state transitions. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit edcbb4395ecd2f2731fbf38ecbff5be0316513cb Author: Joe Eykholt Date: Tue Jul 20 15:20:19 2010 -0700 [SCSI] libfcoe: add protocol description of FIP VN2VN mode The FC-BB-6 committee is proposing a new FIP usage model called VN_port to VN_port mode. It allows VN_ports to discover each other over a loss-free L2 Ethernet without any FCF or Fibre-channel fabric services. This is point-to-multipoint. There is also a variant of this called point-to-point which provides for making sure there is just one pair of ports operating over the Ethernet fabric. This patch defines the new message type and subtypes as well as one new descriptor type used by VN2VN mode. These are all still at the proposed stage and subject to change. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit f60e12e9c778c8256a646f80603d1b88ba5ce891 Author: Joe Eykholt Date: Tue Jul 20 15:20:14 2010 -0700 [SCSI] libfc: track FIP exchanges When an exchange is received with a FIP encapsulation, we need to know that the response must be sent via FIP and what the original ELS opcode was. This becomes important for VN2VN mode, where we may receive FLOGI or LOGO from several peer VN_ports, and the LS_ACC or LS_RJT must be sent FIP-encapsulated with the correct sub-type. Add a field to the struct fc_frame, fr_encaps, to indicate the encapsulation values. That term is chosen to be neutral and LLD-agnostic in case non-FCoE/FIP LLDs might find it useful. The frame fr_encaps is transferred from the ingress frame to the exchange by fc_exch_recv_req(), and back to the outgoing frame by fc_seq_send(). This is taking the last byte in the skb->cb array. If needed, we could combine the info in sof, eof, flags, and encaps together into one field, but it'd be better to do that if and when its needed. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit a7b12a279faaad26837276065104a1f9cf60e962 Author: Joe Eykholt Date: Tue Jul 20 15:20:08 2010 -0700 [SCSI] libfc: add FLOGI state to rport for VN2VN The FIP proposal for VN_port to VN_port point-to-multipoint operation requires a FLOGI be sent to each remote port. The FLOGI is sent with the assigned S_ID and D_IDs of the local and remote ports. This and the response get FIP-encapsulated for Ethernet. Add FLOGI state to the remote port state machine. This will be skipped if not in point-to-multipoint mode. To reduce a little duplication between PLOGI and FLOGI response handling, added fc_rport_login_complete(), which handles the parameters for the rdata struct. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 3726f3584e113697b68d3d4ff1ecf1042a06f800 Author: Joe Eykholt Date: Tue Jul 20 15:20:03 2010 -0700 [SCSI] libfc: Add local port point-to-multipoint flag For VN_port to VN_port mode, the transport sets the port_id and there's no lport FLOGI. This is similar to FC loop mode. Add a point_to_multipoint flag that indicates the local port is in point-to-multipoint mode. This skips FLOGI and discovery. It also skips resetting the port_id on resets other than link down. Add function fc_lport_set_local_id() that sets the local port_id. This is called by libfcoe on behalf of the low-level driver to set the port_id when the link comes up. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 3d902ac09a2812b359edf633425d1327a18399e9 Author: Joe Eykholt Date: Tue Jul 20 15:19:58 2010 -0700 [SCSI] libfcoe: fcoe: fnic: change fcoe_ctlr_init interface to specify mode There are three modes that libfcoe currently supports, and a new one is coming. Change the fcoe_ctlr_init() interface to add the mode desired. This should not change any functionality. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 0685230c59b5482e04ab50e7afc51119ceaba651 Author: Joe Eykholt Date: Tue Jul 20 15:19:53 2010 -0700 [SCSI] libfc: add discovery-private pointer for LLD For VN_port to VN_port mode, FIP will do discovery and needs a way to find its state from the local port or discovery structure. It seems that any other LLD that implements its own discovery would also need something like this. Replace disc->lport with disc->priv, and use container_of to find the lport. We could use disc->priv for that, but container_of is smaller and faster. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit fdb068c6cd6e30d43664f856d3530715a5742713 Author: Joe Eykholt Date: Tue Jul 20 15:19:47 2010 -0700 [SCSI] libfcoe: convert FIP to lock with mutex instead of spin lock It turns out most of the FIP work is now done from worker threads or process context now, so there's no need to use a spin lock. Change to use mutex instead of spin lock and delayed_work instead of a timer. This will make it nicer for the VN_port to VN_port feature that will interact more with the libfc layers requiring that spinlocks not be held. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit f90377abcab2e305450ee76a0f9042907560c5d8 Author: Joe Eykholt Date: Tue Jul 20 15:19:42 2010 -0700 [SCSI] libfc: provide space for LLD after remote port structure Add pre-zeroed space after the allocation for fc_rport_priv for use by the lower-level driver. This is primarily for VN2VN FIP mode, but could be used in other ways someday. The space required is specified in lport->rport_priv_size. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 42e9041467cf5fd33501b91b27e26807c259c896 Author: Joe Eykholt Date: Tue Jul 20 15:19:37 2010 -0700 [SCSI] libfc: convert rport lookup to be RCU safe To allow LLD to do lookups on rports without grabbing a mutex, make them RCU-safe. The caller of lport->tt.rport_lookup will have the choice of holding disc_mutex or the rcu_read_lock(). Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 519e5135e2537c9dbc1cbcc0891b0a936ff5dcd2 Author: Vasu Dev Date: Tue Jul 20 15:19:32 2010 -0700 [SCSI] fcoe: adds src and dest mac address checking for fcoe frames This is per FC-BB-5 Annex-D recommendation and per that if address checking fails then drop the frame. FIP code paths are already doing this so only needed for fcoe frames. The src address checking is limited to only fip mode since this might break non-fip mode used in p2p due to used OUI based addressing in some p2p code paths, going forward FIP will be the only mode, therefore limited this to only FIP mode so that it won't break non-fip p2p mode for now. -v2 Removes FCOE packet type checking since fcoe_rcv is registered to receive only FCoE type packets from netdev and it is already checked by netdev. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 9d4cbc05f32fc0a1024de2a9d5635bc9d180e4ae Author: Vasu Dev Date: Tue Jul 20 15:19:26 2010 -0700 [SCSI] fcoe: cleans up fcoe_disable and fcoe_enable The fc_fabric_logoff and fc_fabric_login are redundant here after recently added fcoe_ctlr_link_down/up to these functions, therefore this patch removes logoff and login to only use link down and up here. This works best for their current usages with fcoe DCB link down or up. This also works well to avoid EIO errors when fcoe DCB link goes down as lport state moves out of ready quickly from fcoe_ctlr_link_down and that allows re-queuing timed out IOs for this case also. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit e0d93c5bc47ae270ea38192c9a49f660e0406060 Author: Vasu Dev Date: Tue Jul 20 15:19:20 2010 -0700 [SCSI] libfc: IO errors on link down due to cable unplug In this case, sync IO fails with EIO(5) errors as:- "Thread:1 System call error:5 - Input/output error (::pwrite() failed)". This is due to IO time out while libfc doing link down processing to block all rports and if timed out IO was at last retry attempt then it fails to user with EIO error followed by these log messages. [77848.612169] host2: rport bf0015: Delete port [77848.612221] host2: rport e10aef: work delete [77848.612232] host2: rport e10002: work event 3 [77848.612422] sd 2:0:1:1: [sdi] Unhandled error code [77848.612426] sd 2:0:1:1: [sdi] Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK [77848.612431] sd 2:0:1:1: [sdi] CDB: Write(10): 2a 00 00 00 11 20 00 00 20 00 [77848.612445] end_request: I/O error, dev sdi, sector 4384 [77848.612553] sd 2:0:1:2: [sdj] Unhandled error code To fix these EIO errors, such timed out incomplete IOs needs to be re-queued without counting retry attempt and this patch does that using DID_REQUEUE scsi code. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit d058fd31c7f44960b00566bda39c85377f461a7b Author: Bart Van Assche Date: Tue Jul 20 15:19:15 2010 -0700 [SCSI] fcoe: make it possible to verify fcoe with sparse Analyzing fcoe with sparse currently fails. This is because struct fcoe_rcv_info contains two enum members that have been declared with __attribute__((packed)). Apparently gcc honors this attribute while sparse ignores it. The result is that sizeof(struct fcoe_rcv_info) == sizeof(struct sk_buff::cb) == 48 on a 64-bit system according to gcc, but not according to sparse. The patch below modifies the definition of struct fcoe_rcv_info such that gcc and sparse interpret this structure definition in the same way. The current sparse output is as follows: $ cd linux-2.6.34 $ make C=2 M=drivers/scsi/fcoe modules CHECK drivers/scsi/fcoe/fcoe.c include/scsi/fc_frame.h:81:9: error: invalid bitfield width, -1. CC [M] drivers/scsi/fcoe/fcoe.o CHECK drivers/scsi/fcoe/libfcoe.c include/scsi/fc_frame.h:81:9: error: invalid bitfield width, -1. drivers/scsi/fcoe/libfcoe.c:56:37: error: invalid initializer Signed-off-by: Bart Van Assche Cc: jeykholt@cisco.com Signed-off-by: Robert Love Signed-off-by: James Bottomley commit ba402804ac2447ad41f4919603bf3e6f6db63110 Author: Yi Zou Date: Tue Jul 20 15:19:10 2010 -0700 [SCSI] libfc: fix slowpath error from WARN_ON in fc_fcp_send_data This is exposed by a mpio test using EMC CLARiiON targets when LUN tresspassing happens, the burst length from the XFER_READY for the MODE SELECT(10) is 19 bytes, much smaller than FC_MIN_MAX_PAYLOAD as 256 bytes. This patch removes the related two WARN_ON()s. Signed-off-by: Yi Zou Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 2cf75f1c8aa4cab3ace57f9159f1dc85cba69d38 Author: Yanqing_Liu@Dell.com Date: Wed May 19 12:31:36 2010 -0500 [SCSI] scsi_dh_rdac: Add Dell MD36xxi controller into RDAC device list This patch is to add next generation of Dell iSCSI PowerVault controller MD36xxi into RDAC device list. Signed-off-by: Yanqing Liu Signed-off-by: James Bottomley commit e84d96dbb0638186feb526c32810a3400f33d0c8 Author: Dan Carpenter Date: Thu Jul 15 10:20:19 2010 +0200 [SCSI] dpt_i2o: move range check forward The check to test that "bus_no" was valid came after we had already used it as an array offset. This patch moves it forward. Signed-off-by: Dan Carpenter Signed-off-by: James Bottomley commit 32de596074592ee8593416c83347b5a787e825c5 Author: James Smart Date: Wed Jul 14 15:32:40 2010 -0400 [SCSI] lpfc 8.3.15: Update driver version 8.3.15 Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 7dc517df3ace15b5a29b331abe0af86ed4836236 Author: James Smart Date: Wed Jul 14 15:32:10 2010 -0400 [SCSI] lpfc 8.3.15: Add target queue depth throttling Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 3804dc84b8c11038ef75d97fd11e43658f623665 Author: James Smart Date: Wed Jul 14 15:31:37 2010 -0400 [SCSI] lpfc 8.3.15: FCoE Related Fixes FCoE Related Fixes - Correct find-next-FCF routine so that it searches at next FCF rather than current one. - Enhanced round-robin FCF failover algorithm to re-start on "New FCF" async event - Update the manner in which we look at FCFs while they may be in their discovery state. - Use LPFC_FCOE_NULL_VID macro when checkinf for valid vlan_id for FCF Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 589a52d6a97e01c5ff6c244ee6c8ea57726c610f Author: James Smart Date: Wed Jul 14 15:30:54 2010 -0400 [SCSI] lpfc 8.3.15: BSG, Discovery, and Misc fixes - BSG interface related: - Fix node reference count if node is active - Warn if we're overwriting an active CT context - Discovery related: - Clear "Ignore Reg Login" flag when purging mailbox queue - Pay attention to return code for fc_block_scsi_eh() - Stall device loss code if we're almost done when it fires (we're logged in, but PRLI is outstanding) - Bugs - Correct DIF code for endianness issues - Correct where we had missed points to check txq on i/o completion/cleanup Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 75576bb9b208d7c66822f310cdef9ca2d72c879c Author: Wayne Boyer Date: Wed Jul 14 10:50:14 2010 -0700 [SCSI] ipr: fix resource type update and add sdev and shost attributes Setting the resource type in the ipr_update_res_entry function was incorrect in that the top 4 bits were masked off. The assignment has been updated to no longer mask those bits. Then, two new attributes were added to allow the user space utilities to more easily get information. The resource_type sdev attribute is set for all devices in the adapter's configuration table and indicates the type of device. The fw_type shost attribute indicates the firmware type supported by the adapter. Finally, the resource_path attribute was changed to be mode S_IRUGO. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit 1df79ca4223632113f14618833b8bb1727a8ca15 Author: Wayne Boyer Date: Wed Jul 14 10:49:43 2010 -0700 [SCSI] ipr: fix transition to operational for new adapters The method of transitioning to operational for new adapters includes using initialization stages. The current stage is indicated via a register read. The final good stage in the sequence is "operational" but does not necessarily indicate that the driver can proceed. There is another bit that gets set in the adapter->host interrupt register when the adapter has completed enough of its bringup such that it can accept commands. The driver was not checking that bit before proceeding which led to intermittent errors and adapter resets. The fix is to check the "transition to operational" bit in the interrupt register after detecting that the initialization stage is "operational" and only proceed if both are set. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit 82c57028e4bf6e2755de91b36223f57406746fa8 Author: Randy Dunlap Date: Tue May 4 10:29:52 2010 -0700 [SCSI] scsi: add Kconfig dependency on NET be2iscsi driver should #include linux/if_ether.h since it uses sysfs_format_mac(). It should also depend on NET since it selects SCSI_ISCSI_ATTRS, which depends on NET. These changes fix a build error when CONFIG_NET is not enabled: ERROR: "sysfs_format_mac" [drivers/scsi/be2iscsi/be2iscsi.ko] undefined! Signed-off-by: Randy Dunlap Acked-by: Jayamohan Kallickal Signed-off-by: James Bottomley commit b38c1e8bd19340e1a5b712287a8d61da26225d5b Author: Jayamohan Kallickal Date: Thu Jul 22 04:28:13 2010 +0530 [SCSI] be2iscsi: The extended shift must be 16 Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 3cbb7a74a76e45f5e410367259844e8266fba6ec Author: Jayamohan Kallickal Date: Thu Jul 22 04:27:47 2010 +0530 [SCSI] be2iscsi: Fix for premature buffer free This patch fixes a bug where the buffer was being freed as soon as submission to HW is done. Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 0aa094331b19e54f928e2ac083285ff68d91c69b Author: Jayamohan Kallickal Date: Thu Jul 22 04:27:16 2010 +0530 [SCSI] be2iscsi: Remove debug print in IO path This patch removes a Debug Print in the IO path Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 42f43c419e1881b543faf20182cad0f789b73d2f Author: Jayamohan Kallickal Date: Thu Jul 22 04:26:45 2010 +0530 [SCSI] be2iscsi: Limit max_xmit_length This patch limits max_xmit_length to 64K incase older utilities are used Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit d2cecf0dcb2eb066756e0303d9f162ebe20d0591 Author: Jayamohan Kallickal Date: Thu Jul 22 04:25:40 2010 +0530 [SCSI] be2iscsi: Maintain same ITT across login This patch ensures that the same ITT is maintained across all login pdu's Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit e9b911935033ea9e28a2f7a274c9a81db1f8d91a Author: Jayamohan Kallickal Date: Thu Jul 22 04:24:53 2010 +0530 [SCSI] be2iscsi: Adding crashdump support These changes allow the driver to support crashdump. We need to reset the chip incase of a crashdump Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 5db3f33d687c5a4ba589bf3af98c786399c6e213 Author: Jayamohan Kallickal Date: Thu Jul 22 04:24:22 2010 +0530 [SCSI] be2iscsi: Free tags allocated This patch frees tags that are already allocated in case of failure Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 4f5af07e1bc4ae64b7a7ead5bf60f40a3115ceeb Author: Jayamohan Kallickal Date: Thu Jul 22 04:23:55 2010 +0530 [SCSI] be2iscsi: Fix to handle request_irq failure This patch handles request_irq failures by properly cleaning up Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 238f6b7255c68d2774795c97b32701c09fd1e543 Author: Jayamohan Kallickal Date: Thu Jul 22 04:23:22 2010 +0530 [SCSI] be2iscsi: No return value for hwi_enable_intr hwi_enable_intr need not return any value. This patch fixes the that and removes code designed to handle a failure return value Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 1f92638f074f7c6776fb2b565f252573f2b5488c Author: Jayamohan Kallickal Date: Thu Jul 22 04:22:27 2010 +0530 [SCSI] be2iscsi: Fix for freeing cid This patch frees up the allocated cid and returns error if allocation of tag fails. Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit f5ed7bd4c6ca5fcec77d3007779d38f63cbb95f4 Author: Jayamohan Kallickal Date: Thu Jul 22 04:18:01 2010 +0530 [SCSI] be2iscsi: pass the return from beiscsi_open_conn This patch passes on the value returned by beiscsi_open_conn Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 03a1231009927b7168d6d86a7a7f6c7f9b4be85a Author: Jayamohan Kallickal Date: Thu Jul 22 04:17:16 2010 +0530 [SCSI] be2iscsi: Fixing the return type of functions Fixing some functions return values that did not match with the possible return values Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit d3ad2bb31c26d7314fad98da8abb04f4fa24ed16 Author: Jayamohan Kallickal Date: Thu Jul 22 04:16:38 2010 +0530 [SCSI] be2iscsi: Fixing return values This patch fixes the return values as per comment from Mike Christie Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 457ff3b7dc3796d8778286217ad304ff122e948f Author: Jayamohan Kallickal Date: Thu Jul 22 04:16:00 2010 +0530 [SCSI] be2iscsi: Fix warnings from new checkpatch.pl The latest checkpatch.pl throws some new warnings. Fixing it to get rid of a bunch of warnings Signed-off-by: Jayamohan Kallickal Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit bbe56c734cc1ecccd7b2b143e1767bf2b1eafc76 Author: James Bottomley Date: Tue Jul 27 12:30:24 2010 -0500 [SCSI] arcmsr: fix up bin_attr functions Commit commit 2c3c8bea608866d8bd9dcf92657d57fdcac011c5 Author: Chris Wright Date: Wed May 12 18:28:57 2010 -0700 sysfs: add struct file* to bin_attr callbacks Added an extra struct file * parameter at the beginning, which the arcmsr binary attribute additions didn't have. Fix this to prevent nasty crashes. Cc: Nick Cheng Signed-off-by: James Bottomley commit 48813cf989eb8695fe84df30207fc8ff5f15783c Author: Pekka Enberg Date: Wed Jul 14 13:12:57 2010 +0300 [SCSI] aic7xxx: Remove OS utility wrappers This patch removes malloc(), free(), and printf() wrappers from the aic7xxx SCSI driver. I didn't use pr_debug for printf because of some 'clever' uses of printf don't compile with the pr_debug. I didn't fix the overeager uses of GFP_ATOMIC either because I wanted to keep this patch as simple as possible. [jejb:fixed up checkpatch errors and fixed up missed conversion] Signed-off-by: Pekka Enberg Acked-by: Hannes Reinecke Signed-off-by: James Bottomley commit 660bdddb52843d361e47c30294366ae0deac821b Author: Cyril Jayaprakash Date: Mon Jul 12 00:42:00 2010 +0530 [SCSI] pmcraid : Remove unnecessary casts for void * pointers Signed-off-by: Cyril Jayaprakash Acked-by: Anil Ravindranath Signed-off-by: James Bottomley commit 4b6c83f57874c2ac10b450ba0f57db0a0f22db67 Author: Vikas Chaudhary Date: Sat Jul 10 14:51:47 2010 +0530 [SCSI] qla4xxx: Update driver version to 5.02.00-k2 Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Signed-off-by: James Bottomley commit 3b2bef1fc85f127a99ad6b90a94b033fdc57341c Author: Vikas Chaudhary Date: Sat Jul 10 14:51:30 2010 +0530 [SCSI] iscsi_transport: added new iscsi_param to display target alias in sysfs Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit bb6f7d5b71356be560ea84dd5a721f083d3a9e8e Author: Karen Higgins Date: Sat Jul 10 14:51:17 2010 +0530 [SCSI] qla4xxx: wait for device_ready before device discovery Signed-off-by: Karen Higgins Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit c2660df310a3c445194748b54f51b7224639e742 Author: Vikas Chaudhary Date: Sat Jul 10 14:51:02 2010 +0530 [SCSI] qla4xxx: replace all dev_info, dev_warn, dev_err with ql4_printk Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit f4f5df23bf72208d0c2f1d8be629839924c2f4c2 Author: Vikas Chaudhary Date: Wed Jul 28 15:53:44 2010 +0530 [SCSI] qla4xxx: Added support for ISP82XX Signed-off-by: Vikas Chaudhary Signed-off-by: Karen Higgins Signed-off-by: Ravi Anand Signed-off-by: James Bottomley commit 8dd014adfea6f173c1ef6378f7e5e7924866c923 Author: David Stevens Date: Tue Jul 27 18:52:21 2010 +0300 vhost-net: mergeable buffers support This adds support for mergeable buffers in vhost-net: this is needed for older guests without indirect buffer support, as well as for zero copy with some devices. Includes changes by Michael S. Tsirkin to make the patch as low risk as possible (i.e., close to no changes when feature is disabled). Signed-off-by: David Stevens Signed-off-by: Michael S. Tsirkin commit 9e3d195720d1c8b1e09013185ab8c3b749180fc2 Author: Michael S. Tsirkin Date: Tue Jul 27 22:56:50 2010 +0300 vhost: apply cgroup to vhost workers Apply the cgroup of the owner task to the created vhost worker. Based on patches from Sridhar Samudrala's and Tejun Heo. Later we'll need to also apply cpumask and probably priority of the owner process. Discussion on the best way to do this is still ongoing. Signed-off-by: Michael S. Tsirkin Cc: Tejun Heo Cc: Sridhar Samudrala Cc: Li Zefan commit d7926ee38f5c6e0bbebe712304f99a4c67e40f84 Author: Sridhar Samudrala Date: Sun May 30 22:24:39 2010 +0200 cgroups: Add an API to attach a task to current task's cgroup Add a new kernel API to attach a task to current task's cgroup in all the active hierarchies. Signed-off-by: Sridhar Samudrala Signed-off-by: Michael S. Tsirkin Reviewed-by: Paul Menage Acked-by: Li Zefan commit c23f3445e68e1db0e74099f264bc5ff5d55ebdeb Author: Tejun Heo Date: Wed Jun 2 20:40:00 2010 +0200 vhost: replace vhost_workqueue with per-vhost kthread Replace vhost_workqueue with per-vhost kthread. Other than callback argument change from struct work_struct * to struct vhost_work *, there's no visible change to vhost_poll_*() interface. This conversion is to make each vhost use a dedicated kthread so that resource control via cgroup can be applied. Partially based on Sridhar Samudrala's patch. * Updated to use sub structure vhost_work instead of directly using vhost_poll at Michael's suggestion. * Added flusher wake_up() optimization at Michael's suggestion. Changes by MST: * Converted atomics/barrier use to a spinlock. * Create thread on SET_OWNER * Fix flushing Signed-off-by: Tejun Heo Signed-off-by: Michael S. Tsirkin Cc: Sridhar Samudrala commit a39afc8eb47bc0d8b23fbdb930529171d1752203 Merge: 7ccc3ef 38faddb Author: Takashi Iwai Date: Wed Jul 28 14:26:47 2010 +0200 Merge branch 'fix/hda' into topic/hda commit cccf59abea4e1c36322e365d6e61ff7de1f3ee07 Merge: fc0f5ac 4080594 Author: Kevin Wells Date: Wed Jul 28 03:38:52 2010 -0700 Merge branch 'test' of ../test/linux-2.6-lpc2 into wells/lpc32xx-arch_v2 commit 63818c448ac6f4dd75aa42997acaa746f86acb6b Author: Axel Lin Date: Wed Jul 28 16:58:42 2010 +0800 ALSA: hpimsgx: fix wrong sizeof The correct size should be sizeof(gRESP_HPI_SUBSYS_FIND_ADAPTERS), sizeof(&gRESP_HPI_SUBSYS_FIND_ADAPTERS) is incorrect. Signed-off-by: Axel Lin Signed-off-by: Takashi Iwai commit 79d3c2c2395a89a70d25f0c77c11afc87efab89b Author: Baruch Siach Date: Tue Jul 27 08:03:30 2010 +0300 mx2_camera: fix type of dma buffer virtual address pointer Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit 2066930de6296ef7470de11eaa9b8bc9129721e8 Author: Baruch Siach Date: Sun Jul 4 07:55:10 2010 +0300 mx2_camera: Add soc_camera support for i.MX25/i.MX27 This is the soc_camera support developed by Sascha Hauer for the i.MX27. Alan Carvalho de Assis modified the original driver to get it working on more recent kernels. I modified it further to add support for i.MX25. This driver has been tested on i.MX25 and i.MX27 based platforms. Signed-off-by: Baruch Siach Acked-by: Guennadi Liakhovetski Signed-off-by: Sascha Hauer commit 14cb0deb66fcfca8fdbef75da8c84b5405a8c767 Author: Baruch Siach Date: Tue Jul 6 14:03:22 2010 +0300 arm/imx/gpio: add spinlock protection The GPIO registers need protection from concurrent access for operations that are not atomic. Cc: stable@kernel.org Cc: Juergen Beisert Cc: Daniel Mack Reported-by: rpkamiak@rockwellcollins.com Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit 18642a57df02a044b91219d3176128996ddc81a5 Author: H. Peter Anvin Date: Tue Jul 27 23:52:29 2010 -0700 x86, vdso: Don't quote $nm in the script for checking vdso references Don't quote $nm in the script for checking the vdso for external references. Doing so breaks multiword constructs, like using CROSS_COMPILE='ccache '. Reported-by: Stephen Rothwell Signed-off-by: H. Peter Anvin LKML-Reference: <20100728134252.2e4c27cf.sfr@canb.auug.org.au> commit b3c567e474b5ba4447b6e16063a3b0cffc22d205 Author: Vinod Koul Date: Wed Jul 21 13:28:10 2010 +0530 intel_mid: Add Mrst & Mfld DMA Drivers This patch add DMA drivers for DMA controllers in Langwell chipset of Intel(R) Moorestown platform and DMA controllers in Penwell of Intel(R) Medfield platfrom This patch adds support for Moorestown DMAC1 and DMAC2 controllers. It also add support for Medfiled GP DMA and DMAC1 controllers. These controllers supports memory to peripheral and peripheral to memory transfers. It support only single block transfers. This driver is based on Kernel DMA engine Anyone who wishes to use this controller should use DMA engine APIs This controller exposes DMA_SLAVE capabilities and notifies the client drivers of DMA transaction completion Config option required to be enabled CONFIG_INTEL_MID_DMAC=y Signed-off-by: Vinod Koul Signed-off-by: Alan Cox Signed-off-by: Dan Williams commit 69309a05907546fb686b251d4ab041c26afe1e1d Author: H. Peter Anvin Date: Tue Jul 27 23:29:52 2010 -0700 x86, asm: Clean up and simplify set_64bit() Clean up and simplify set_64bit(). This code is quite old (1.3.11) and contains a fair bit of auxilliary machinery that current versions of gcc handle just fine automatically. Worse, the auxilliary machinery can actually cause an unnecessary spill to memory. Furthermore, the loading of the old value inside the loop in the 32-bit case is unnecessary: if the value doesn't match, the CMPXCHG8B instruction will already have loaded the "new previous" value for us. Clean up the comment, too, and remove page references to obsolete versions of the Intel SDM. Signed-off-by: H. Peter Anvin LKML-Reference: commit d3608b5681d238605b7da6be62244e803e24c649 Merge: 650fb43 113fc5a Author: H. Peter Anvin Date: Tue Jul 27 23:28:28 2010 -0700 Merge remote branch 'origin/x86/urgent' into x86/asm commit c7f52cdc2f3e1733d3864e439ac2e92edd99ef31 Author: Jeremy Fitzhardinge Date: Thu Jul 22 22:58:01 2010 -0700 support multiple .discard.* sections to avoid section type conflicts gcc 4.4.4 will complain if you use a .discard section for both text and data ("causes a section type conflict"). Add support for ".discard.*" sections, and use .discard.text for a dummy function in the x86 RESERVE_BRK() macro. Signed-off-by: Jeremy Fitzhardinge commit bd280635825a2b3981da63a54e38de97e87231b3 Author: David S. Miller Date: Tue Jul 27 22:24:37 2010 -0700 ks8842: Fix warnings on 64-bit. drivers/net/ks8842.c:922:26: warning: cast from pointer to integer of different size drivers/net/ks8842.c:940:17: warning: cast to pointer from integer of different size drivers/net/ks8842.c:963:17: warning: cast to pointer from integer of different size Signed-off-by: David S. Miller commit ff847ac2d3e90edd94674c28bade25ae1e6a2e49 Author: Bruce Allan Date: Tue Jul 27 12:28:46 2010 +0000 e1000e: 82577/82578 PHY register access issues The MAC-PHY interconnect on 82577/82578 uses a power management feature (called K1) which must be disabled when in 1Gbps due to a hardware issue on these parts. The #define bit setting used to enable/disable K1 is incorrect and can cause PHY register accesses to stop working altogether until the next device reset. This patch sets the register correctly. This issue is present in kernels since 2.6.32. CC: stable@kernel.org Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit ba01877f56c3244b21746d3f1537f7647ed97984 Author: Sridhar Samudrala Date: Tue Jul 27 09:10:07 2010 +0000 macvlan: Fix rx counters update in macvlan_handle_frame() Fix macvlan_handle_frame() to update the rx counters based on the return value of the vlan->receive call. Updated the patch to not do any packet count drops when the interface is down based on Herber'ts comments. Signed-off-by: Sridhar Samudrala Acked-by: Herbert Xu Signed-off-by: David S. Miller commit bb7e95c8fd859922c6cf3ebbb3a8546007df1748 Merge: b8bc042 5447080 Author: David S. Miller Date: Tue Jul 27 21:01:35 2010 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/bnx2x_main.c Merge bnx2x bug fixes in by hand... :-/ Signed-off-by: David S. Miller commit b8bc0421ab7f83712a0a8ef7eb05fa73ec53c027 Author: Dan Carpenter Date: Tue Jul 27 00:05:56 2010 +0000 ixgbe: potential null dereference The e_dev_err() macro dereferences "adapter" which is NULL here. Signed-off-by: Dan Carpenter Acked-by: Jeff Kirsher Signed-off-by: David S. Miller commit 94fe8c683cea97fe2c59a5f0dc206aa329c5763c Author: Richard Röjfors Date: Tue Jul 27 12:57:01 2010 +0000 ks8842: Support DMA when accessed via timberdale This patch adds support for RX and TX DMA via the DMA API, this is only supported when the KS8842 is accessed via timberdale. There is no support for DMA on the generic bus interface it self, a state machine inside the FPGA is handling RX and TX transfers to/from buffers in the FPGA. The host CPU can do DMA to and from these buffers. The FPGA has to handle the RX interrupts, so these must be enabled in the ks8842 but not in the FPGA. The driver must not disable the RX interrupt that would mean that the data transfers into the FPGA buffers would stop. The host shall not enable TX interrupts since TX is handled by the FPGA, the host is notified by DMA callbacks when transfers are finished. Which DMA channels to use are added as parameters in the platform data struct. Signed-off-by: Richard Röjfors Signed-off-by: David S. Miller commit 3eeb29972b1139f733f7269def527900729f4cc7 Author: Giuseppe CAVALLARO Date: Tue Jul 27 00:09:47 2010 +0000 stmmac: fix automatic PAD/FCS stripping For Simple Ethernet frames (802.2 and 802.3) the GMAC Core never strips pad and fcs. This means the ACS has no effect on IPv4/6 frames. The FL bits, in the RDES0, include the FCS so the driver has to remove it in SW. For 802.3 frame format with LLC or LLC-SNAP, when set the ACS bit, the HW strips both PAD and FCS. The FL bits, in the RDES0, actually represents the frame length already stripped. This patch fixes this logic within the device driver that erroneously removed 4byte from 802.3 frames already stripped corrupting the payload. Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit ca09c9760101b607cd2282c45b342655e26fa683 Author: Giuseppe CAVALLARO Date: Tue Jul 27 00:09:46 2010 +0000 stmmac: fix timer setup when use dual mac Kconfig The driver erroneously sets the tmrate to zero when the TMU initialisation fails. This actually generates problems while using the dual GMAC configuration. With this patch, enabling both the dual gmac and the timer optimisation, the first interface opened will use the tmu channel 2, the second one won't be able to use the timer but will continue to work without mitigating the interrupts by using the external timer (i.e. TMU channel 2). Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 49efec1eaf12d03213f1421094afb4cece109062 Author: Dmitry Kravkov Date: Tue Jul 27 12:37:58 2010 +0000 bnx2x: Update MAINTAINERS according to new location Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 9e672fd449b6877711fb2f032491bef054636b9b Author: Dmitry Kravkov Date: Tue Jul 27 12:37:06 2010 +0000 bnx2x: update driver version to 1.52.53-3 Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 6c719d00bd99113a4af417620d891aeba98b8d03 Author: Dmitry Kravkov Date: Tue Jul 27 12:36:15 2010 +0000 bnx2x: Move statistics handling code to bnx2x_stats.* Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit de0c62dba71389bcf3d9249d6e6edbc5a032c5ce Author: Dmitry Kravkov Date: Tue Jul 27 12:35:24 2010 +0000 bnx2x: Create separate file for ethtool routines Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 9f6c925889ad9204c7d1f5ca116d2e5fd6036c72 Author: Dmitry Kravkov Date: Tue Jul 27 12:34:34 2010 +0000 bnx2x: Create bnx2x_cmn.* files Newly created files have no functionality changes, but includes some functionality from bnx2x_main.c which is common for PF and coming in the future VF driver. Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit b0efbb996e8554ed8fe59e3f79e0bc83218083ab Author: Dmitry Kravkov Date: Tue Jul 27 12:33:43 2010 +0000 bnx2x: move global variable load_count to bnx2x.h This will allow access to this global variable (used in no-mcp mode) from different object files. Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 5d7cd49622af9396643f8d2c5ed17039d89fef14 Author: Dmitry Kravkov Date: Tue Jul 27 12:32:19 2010 +0000 bnx2x: store module parameters in driver main structure Store module parameters during initialization of main driver structure. This will allow access to the parameters from different files. Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 5d1e859c5b600c491336f023a2f2105c24597226 Author: Dmitry Kravkov Date: Tue Jul 27 12:31:10 2010 +0000 bnx2x: Create separate folder for bnx2x driver This commit includes files movement to newly created folder using git-mv command and fixes references in cnic and bnx2x code to each other. files moved using following: #!/bin/bash mkdir drivers/net/bnx2x/ list=$(cd drivers/net/ && ls bnx2x*.[ch]) for f in $list; do git mv -f drivers/net/$f drivers/net/bnx2x/$f done Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 113fc5a6e8c2288619ff7e8187a6f556b7e0d372 Author: H. Peter Anvin Date: Tue Jul 27 17:01:49 2010 -0700 x86: Add memory modify constraints to xchg() and cmpxchg() xchg() and cmpxchg() modify their memory operands, not merely read them. For some versions of gcc the "memory" clobber has apparently dealt with the situation, but not for all. Originally-by: Linus Torvalds Signed-off-by: H. Peter Anvin Cc: Glauber Costa Cc: Avi Kivity Cc: Peter Palfrader Cc: Greg KH Cc: Alan Cox Cc: Zachary Amsden Cc: Marcelo Tosatti Cc: LKML-Reference: <4C4F7277.8050306@zytor.com> commit 4ebaa4edf8799cab19d5a0642dc95f04fd284e06 Author: Dan Carpenter Date: Fri Jul 23 12:11:04 2010 +0200 Bluetooth: Fix kfree() => kfree_skb() in hci_ath.c sk_buffs have to be freed with kfree_skb() instead of kfree(). Signed-off-by: Dan Carpenter Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit fa0a21269f807bb2e95b8b642c4a739714780172 Author: J. Bruce Fields Date: Tue Jul 27 16:48:54 2010 -0400 nfsd: bypass readahead cache when have struct file The readahead cache compensates for the fact that the NFS server currently does an open and close on every IO operation in the NFSv2 and NFSv3 case. In the NFSv4 case we have long-lived struct files associated with client opens, so there's no need for this. In fact, concurrent IO's using trying to modify the same file->f_ra may cause problems. So, don't bother with the readahead cache in that case. Note eventually we'll likely do this in the v2/v3 case as well by keeping a cache of struct files instead of struct file_ra_state's. Signed-off-by: J. Bruce Fields commit a95f9ac27105eba8b529a36d03af4f527aabec94 Author: Tony Luck Date: Tue Jul 27 14:55:12 2010 -0700 [IA64] increase ia64 static per cpu area I've been trying to avoid this for a long time ... but per-cpu space has slowly been growing. Tejun has some patches in linux-next that pre-reserve some space (PERCPU_DYNAMIC_EARLY_SIZE) for use before slab comes online ... and this pushes ia64 above the 64K current limit on static percpu space. I could probably squeeze it back under (we are only over by 512 bytes). But I don't think that I'll be able to squeeze it down enough to build a comfortable breathing space - and I don't want to keep nibbling off a dozen bytes here and there every time some generic code bumps us back over the limit. Next available supported page size is 256K ... so we have to quadruple the available space - a bigger jump than I'd like. But perhaps it will be enough to last a few more years before it needs to be increased again. Acked-by: Tejun Heo Signed-off-by: Tony Luck commit 2c6952dfdda2f266f2f501792b8d6413caf25f7a Author: Stefan Assmann Date: Mon Jul 26 23:24:50 2010 +0000 igbvf, ixgbevf: use dev_hw_addr_random Both igbvf and ixgbevf should set addr_assign_type to NET_ADDR_RANDOM so udev creates persistent net rules by matching the device path. Do this by using the dev_hw_addr_random helper function. Signed-off-by: Stefan Assmann Signed-off-by: David S. Miller commit 56075a98dfb887981ee0e4b6a768cd53f2514f4c Author: John Fastabend Date: Mon Jul 26 20:41:31 2010 +0000 ixgbe: priority tagging FCoE frames without FCoE offload The DCB user priority for FCoE is available regardless of whether FCoE offload is enabled (IXGBE_FLAG_FCOE_ENABLED bit is set). This allows proper DCB user priority tagging for FCoE traffic on both 82598 and 82599 devices. Signed-off-by: Yi Zou Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 2f8362afcd2da8b313ec3cc04a50af19d3592972 Author: Gustavo F. Padovan Date: Sat Jul 24 02:04:45 2010 -0300 Bluetooth: Add __init and __exit marks to RFCOMM Those annotation save memory and space on the binary. __init code is discarded just after execute and __exit code is discarded if the module is built into the kernel image or unload of modules is not allowed. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit f2b94bb9e0b8bd048331a6e9d616e918f4bcbd97 Author: Gustavo F. Padovan Date: Sat Jul 24 02:04:44 2010 -0300 Bluetooth: Add __init and __exit marks to UART drivers Those marks are useful to save space in the binary and in the memory. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit e9da101f6d0c9a8fda9f78a80365ba2a9f75603f Author: Gustavo F. Padovan Date: Sat Jul 24 01:46:57 2010 -0300 Bluetooth: Use hci_recv_stream_fragment() in UART driver Use the new hci_recv_stream_fragment() to reassembly incoming UART streams. Signed-off-by: Gustavo F. Padovan Tested-by: Ville Tervo Signed-off-by: Marcel Holtmann commit da5f6c37eee040775997191d1a1bc91c0c1e51eb Author: Gustavo F. Padovan Date: Sat Jul 24 01:34:54 2010 -0300 Bluetooth: Test 'count' value before enter the loop Testing first we avoid enter the loop when count = 0. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 0bbdf6cba0fb730ae2f2cfd5ead3d1e2e5498ddc Author: Gustavo F. Padovan Date: Sat Jul 24 01:06:05 2010 -0300 Bluetooth: Fix permission of hci_ath.c .c file shall not have the 'x' permission. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit e73439d8c0e4c522c843b8bb98c0eb5700da6b05 Author: Marcel Holtmann Date: Mon Jul 26 10:06:00 2010 -0400 Bluetooth: Defer SCO setup if mode change is pending Certain headsets such as the Motorola H350 will reject SCO and eSCO connection requests while the ACL is transitioning from sniff mode to active mode. Add synchronization so that SCO and eSCO connection requests will wait until the ACL has fully transitioned to active mode. < HCI Command: Exit Sniff Mode (0x02|0x0004) plen 2 handle 12 > HCI Event: Command Status (0x0f) plen 4 Exit Sniff Mode (0x02|0x0004) status 0x00 ncmd 1 < HCI Command: Setup Synchronous Connection (0x01|0x0028) plen 17 handle 12 voice setting 0x0040 > HCI Event: Command Status (0x0f) plen 4 Setup Synchronous Connection (0x01|0x0028) status 0x00 ncmd 1 > HCI Event: Number of Completed Packets (0x13) plen 5 handle 12 packets 1 > HCI Event: Mode Change (0x14) plen 6 status 0x00 handle 12 mode 0x00 interval 0 Mode: Active > HCI Event: Synchronous Connect Complete (0x2c) plen 17 status 0x10 handle 14 bdaddr 00:1A:0E:50:28:A4 type SCO Error: Connection Accept Timeout Exceeded Signed-off-by: Ron Shaffer Signed-off-by: Marcel Holtmann commit 073730d771d97bb5bbef080bd5d6d0a5af7cba7d Author: Joe Perches Date: Mon Jul 26 14:40:00 2010 -0700 wireless: Convert wiphy_debug macro to function Save a few bytes of text (allyesconfig) $ size drivers/net/wireless/built-in.o* text data bss dec hex filename 3924568 100548 871056 4896172 4ab5ac drivers/net/wireless/built-in.o.new 3926520 100548 871464 4898532 4abee4 drivers/net/wireless/built-in.o.old $ size net/wireless/core.o* text data bss dec hex filename 12843 216 3768 16827 41bb net/wireless/core.o.new 12328 216 3656 16200 3f48 net/wireless/core.o Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit 903c99d8d6d055c56e7fdfba4602c05e357fa186 Author: Joe Perches Date: Mon Jul 26 14:39:59 2010 -0700 drivers/net/wireless/at76c50x-usb.c: Neaten macros Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit c96c31e499b70964cfc88744046c998bb710e4b8 Author: Joe Perches Date: Mon Jul 26 14:39:58 2010 -0700 drivers/net/wireless: Use wiphy_ Standardize the logging macros used. Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit e1db74fcc3d95c8a051ec457241b5aa65a01a603 Author: Joe Perches Date: Mon Jul 26 14:39:57 2010 -0700 include/net/cfg80211.h: Add wiphy_ printk equivalents Simplify logging messages for wiphy devices Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit 97c5e2756e3f0711877c5b6f2323151964229260 Author: Dan Williams Date: Tue Jul 27 13:17:03 2010 -0700 libertas: remove unused cmd_pending waitq Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit d06956b535d040c98ce7932fb34f99df8f049ecf Author: Dan Williams Date: Tue Jul 27 13:16:24 2010 -0700 libertas: rename lbs_get_cmd_ctrl_node() to lbs_get_free_cmd_node() Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 77ccdcf2e933d61176f67c4976f7ad4cbb9cb82a Author: Dan Williams Date: Tue Jul 27 13:15:45 2010 -0700 libertas: kill unused lbs_prepare_and_send_command() Remove last bits of indirect command code. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 53800f5dbf4a62126e34605be7db89702d76dec6 Author: Dan Williams Date: Tue Jul 27 13:15:01 2010 -0700 libertas: convert DEEP_SLEEP timer to a direct command Other uses were already used direct command paths. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 0bb6408777227fcf5136e28aec29438606d5ac82 Author: Dan Williams Date: Tue Jul 27 13:08:08 2010 -0700 libertas: convert PS_MODE to a direct command Powersave looks like it got broken at some point but we'll fix that up when the command submission stuff is more understandable, which this series helps to do. That said, this patch should not further break powersave. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 8196112859a6742b9e25ca5fde972a7f41f06cc3 Author: Dan Williams Date: Tue Jul 27 13:05:16 2010 -0700 libertas: remove unused indirect command response handler Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit a6bb1bcebced1eeed6a96f37cda7cbb7cbd6dae6 Author: Dan Williams Date: Tue Jul 27 13:03:46 2010 -0700 libertas: convert CMD_FWT_ACCESS to a direct command Slightly different approach here since there are so many arguments to the firmware command. Just let the caller fill them in before pushing the command to the firmware. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 52148655608b31b7e18325ae7711de3a86466136 Author: Dan Williams Date: Tue Jul 27 13:01:47 2010 -0700 libertas: convert Mesh Blinding Table access to a direct command Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 4c7c6e00f17365633638848197c44552dd353d49 Author: Dan Williams Date: Tue Jul 27 13:01:07 2010 -0700 libertas: convert register access to direct commands Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 85dfbfed34bd6372daf4934256ca7f3b251c2016 Author: Dan Williams Date: Tue Jul 27 12:59:44 2010 -0700 libertas: convert LED_GPIO_CTRL to a direct command Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit d6541c74484a5679a79a1f1df9884fc4da8d8cf6 Author: Dan Williams Date: Tue Jul 27 12:58:08 2010 -0700 libertas: remove Beacon Control For now; it's a pretty easy command to hook up and whenever OLPC figures out how they want the userspace interface to look (ie, not iwpriv commands) we can easily add it back in. Since the cfg80211 conversion it wasn't working anyway. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit db08006fc4e825e632083f2a2de827ca2121c28d Author: Dan Williams Date: Tue Jul 27 12:57:27 2010 -0700 libertas: remove unused Automatic Frequency Control command It hasn't been hooked up to anything in a long time and it's not even listed in any of the firmware documentation I have (and I have v5.1, v8, v9, and v10). Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 49a08af5b9aa91207e3654ca3c88ca4d2596601c Author: Dan Williams Date: Tue Jul 27 12:56:44 2010 -0700 libertas: remove unused indirect TPC_CFG command leftovers These were no longer used but were left around; Transmit Power Control is done through the lbs_set_tpc_cfg() function. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit cc4b9d3928d682c4a15690c2bd9ed11c2eac5921 Author: Dan Williams Date: Tue Jul 27 12:56:05 2010 -0700 libertas: convert 11D_DOMAIN_INFO to a direct command Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 9fb7663d2b832183ec7558a19426666819636a64 Author: Dan Williams Date: Tue Jul 27 12:55:21 2010 -0700 libertas: clean up RSSI command Convert to a full direct command; previous code rolled a direct command by hand but left the original indirect command code intact but disabled. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit a45b6f4f9ef7fde2321da5aaa7db0e1e793a5b1e Author: Dan Williams Date: Tue Jul 27 12:54:34 2010 -0700 libertas: clean up MONITOR_MODE command Convert to a full direct command; previous code rolled a direct command by handle but left the original indirect command code lying around. Signed-off-by: Dan Williams Signed-off-by: John W. Linville commit 98ec62185cd940765a096c88a3f14147dd1d3bd4 Author: Stanislaw Gruszka Date: Tue Jul 27 10:48:24 2010 -0400 rt2500usb: disallow to set WEP key with non zero index On our hardware (050d:7050 Belkin Components F5D7050 Wireless G Adapter), setting any WEP key with non zero index, cause rx frames corruption. Note: perhaps (I did not check) this can be fixed differently - by using hw_key_idx the same as true MAC key index. But according to the comment in rt2x00mac_set_key(): "the hardware requires keys to be assigned in correct order (When key 1 is provided but key 0 is not, then the key is not found by the hardware during RX)" this will be quite problematic. Since WEP should not be used, disabling hardware crypto offload for it will not hurt much. Beside static one key WEP will still be offloaded. Signed-off-by: Stanislaw Gruszka Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit ac59b496d9fd0b7425219e8dc5d4f1f6f0083efc Author: Stanislaw Gruszka Date: Tue Jul 27 10:48:17 2010 -0400 rt2500usb: truly disable encryption when initialize Without cipher part nullify of TXRX_CSR0 register we can receive corrupted frames (removed IV or IVC), after reloading rt2500usb module with nohwcrypt=1 option, if previous some keys were configured into the hardware. Signed-off-by: Stanislaw Gruszka Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 1279f5edb6d25f2a955696fdec1ac96ca5bcb121 Author: Stanislaw Gruszka Date: Tue Jul 27 10:48:10 2010 -0400 rt2500usb: write keys to proper registers Fix rt2500usb hardware encryption broken by commit 96b61bafe22b2f2abcc833d651739edb977f1b1e "rt2x00: Clean up USB vendor request buffer functions" Signed-off-by: Stanislaw Gruszka Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit aaa41ec4257ccd2e972fd505c1791cfabfcd5763 Author: Senthil Balasubramanian Date: Tue Jul 27 19:16:34 2010 +0530 ath9k: remove unused base_index from rate table. base index is not used anymore and so remove it. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 812c7c35a0fb6081e492cfa890947c54fe5844fd Author: Senthil Balasubramanian Date: Tue Jul 27 19:16:33 2010 +0530 ath9k: Fix incorrect user ratekbs of MCS15 ShortGI The user ratekbs of MCS15 ShortGI is incorrect and can not be lesser than MCS15 rate. This incorrect rate may affect switching to higher rates as the rate control algorithm always finds MCS15 is better than MCS15 ShortGI and results in lower throughput. Fix this by feeding the correct user ratekbs for MCS15 ShortGI rate. This issue affects 3 stream case very badly as the 3 stream rates are not used at all once we scale down to MCS15 from 3 stream rates. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 1d9d06a27ae579b330887724201e7ac857c827d1 Author: Senthil Balasubramanian Date: Tue Jul 27 19:16:32 2010 +0530 ath9k: Add three stream rate control support for AR938X. This patch adds 3 stream rate control support for AR938X family chipsets which supports 3 streams. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit f63b340d1bab58aac07ae1b528d58a73b76b0970 Author: Senthil Balasubramanian Date: Tue Jul 27 19:16:31 2010 +0530 ath9k: Introduce bit masks for valid and valid_single_stream. replace valid and valid_single_stream in rate table with bit masks and reorganize the code so adding 3x3 rate control would be easier. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 32162a4dab0e6a4ca7f886a01173b5f9b80843be Author: Jouni Malinen Date: Mon Jul 26 15:52:03 2010 -0700 mac80211: Fix key freeing to handle unlinked keys Key locking simplification removed key->sdata != NULL verification from ieee80211_key_free(). While that is fine for most use cases, there is one path where this function can be called with an unlinked key (i.e., key->sdata == NULL && key->local == NULL). This results in a NULL pointer dereference with the current implementation. This is known to happen at least with FT protocol when wpa_supplicant tries to configure the key before association. Avoid the issue by passing in the local pointer to ieee80211_key_free(). In addition, do not clear the key from hw_accel or debugfs if it has not yet been added. At least the hw_accel one could trigger another NULL pointer dereference. Signed-off-by: Jouni Malinen Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit 1b2fb7dc71c1f8f97663c2da84fa1c8183588474 Author: John W. Linville Date: Mon May 3 16:06:47 2010 -0400 p54: Added get_survey callback in order to get channel noise Signed-off-by: John W. Linville commit 4a1b3acc909ca02bdb286d3dd498262e89875b49 Author: Greg Kroah-Hartman Date: Tue Jul 27 11:47:08 2010 -0700 Staging: hv: remove RING_BUFFER typedef typedefs are bad, kill them. Cc: Hank Janssen Cc: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman commit 8a0e1c5505e8784c0a5f8cb0141ab45bd3de5f57 Author: Greg Kroah-Hartman Date: Tue Jul 27 11:43:11 2010 -0700 Staging: hv: remove RING_BUFFER_INFO typedef typedefs are bad, kill them. Cc: Hank Janssen Cc: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman commit 80682b7a4821b9e4f05bcc2ec855aaafcef33234 Author: Greg Kroah-Hartman Date: Tue Jul 27 11:37:32 2010 -0700 Staging: hv: remove RING_BUFFER_DEBUG_INFO typedef typedefs are bad, kill them. Cc: Hank Janssen Cc: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman commit 3924865f7def7c1b46c0e47f058eb8173c72a16d Author: Greg Kroah-Hartman Date: Tue Jul 27 11:12:21 2010 -0700 Staging: usbip: fix up build error This dma flag is no longer in the kernel. Remove it as it's pointless and it causes a build error. Cc: Endre Kollar Signed-off-by: Greg Kroah-Hartman commit b7a937e90c3631cf3662a518cf2e4bf07f72967c Author: Endre Kollar Date: Tue Jul 27 12:40:00 2010 +0200 Staging: usbip: Filtering illegal flags from remote driver The usb_submit_urb function in debug mode monitors the bogus flags. The client driver errors should not be conveyed to the local USB device. Signed-off-by: Endre Kollar Signed-off-by: Greg Kroah-Hartman commit ab30f12d4ef11cc92fa9a657bf0c9b9951f24011 Author: Endre Kollar Date: Tue Jul 27 12:39:45 2010 +0200 Staging: usbip: simplify get_ep_from_epnum usb_device->ep_in/out includes the necessary endpoints, search is not needed. Signed-off-by: Endre Kollar Signed-off-by: Greg Kroah-Hartman commit aa5873e96271611ae55586f65e49ea1fab90cb88 Author: Endre Kollar Date: Tue Jul 27 12:39:30 2010 +0200 Staging: usbip: fix multiple interfaces The stub_probe function instantiates an stub_dev object for all interfaces. Wich causes a problem. The stub_dev object belongs to their own interfaces. This patch creates the sdev object at the first stub_probe call, the other calls associate the interfaces to this. Signed-off-by: Endre Kollar Signed-off-by: Greg Kroah-Hartman commit dbaf82ece08bf93ae5200f03efd87c4f1fc453f1 Author: Ravi Anand Date: Sat Jul 10 14:50:32 2010 +0530 [SCSI] qla4xxx: Handle one H/W Interrupt at a time Handle one H/W Interrupt at a time to prevent holding off H/W lock for longer period of time. Signed-off-by: Ravi Anand Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit beabe7c18338a5112fbca9a6dbcc921f9cce6325 Author: Prasanna Mumbai Date: Sat Jul 10 14:49:38 2010 +0530 [SCSI] qla4xxx: Fix the freeing of the buffer allocated for DMA Fixed the DMA allocated memory freeing which wasn't taken care in many cases. Signed-off-by: Prasanna Mumbai Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit b966346c344f592c8e6a84c9c274a7dedbc057ad Author: Vikas Chaudhary Date: Sat Jul 10 14:49:19 2010 +0530 [SCSI] qla4xxx: correct return status in function qla4xxx_fw_ready Handle fw_state "auto discovery in progress" correctly to avoid marking adapter as offline. Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 363863256a711819130ea4ac210ee001bc80c3b2 Author: Vikas Chaudhary Date: Sat Jul 10 14:49:01 2010 +0530 [SCSI] qla4xxx: unblock iscsi session after setting ddb state online. Once the device goes *missing*, driver blocks the session ie iscsi_block_session() to stall the I/O. So after device comes back *online*, driver needs to unblock the session ie iscsi_unblock_session(), else I/Os will fail even if ddb_state is ONLINE. Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit e349fa35363fa96f11addecb67e0f8a6edfb0e3a Author: Vikas Chaudhary Date: Sat Jul 10 14:48:36 2010 +0530 [SCSI] qla4xxx: set driver ddb state correctly in process_ddb_changed If fw ddb state is ACTIVE mark driver ddb stat as ONLINE and unblock iscsi session. Signed-off-by: Vikas Chaudhary Signed-off-by: Ravi Anand Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit ab2a9ba189e889b3e8990e52e90d2cd9606b2aa1 Author: Jing Huang Date: Thu Jul 8 20:02:55 2010 -0700 [SCSI] bfa: add debugfs support - Add debugfs support to obtain firmware trace, driver trace and read/write to registers. - debugfs hierarchy: /sys/kernel/debug/bfa/host# where the host number corresponds to the one under /sys/class/scsi_host/host# - Following are the new debugfs entries added: drvtrc: collect current driver trace fwtrc: collect current firmware trace. fwsave: collect last saved fw trace as a result of firmware crash. regwr: write one word to chip register regrd: read one or more words from chip register. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 08a17ced7a78064f4f03de7d68b8cd32581f0510 Author: Jing Huang Date: Thu Jul 8 20:02:31 2010 -0700 [SCSI] bfa: update driver version string Update driver version to 2.2.2.1 Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit c54d557c3f6a7bbf833a8f9cffad88f34513a7c4 Author: Jing Huang Date: Thu Jul 8 20:01:49 2010 -0700 [SCSI] bfa: vport fixes This patch fixes 3 bugs in vport create/delete. 1) Replace scsi_add_host() with scsi_add_host_with_dma() 2) Fix rmmod hang when there are vports configured. This is due to a race condition between the workqueue destroy in pci remove context and the vport delete works being handled. The fix is to use a counter to track the vport delete work, so that workqueue destroy will not be called until all configured vports are deleted from workqueue. 3) Fix rmmmod crash when there are PBC vport configured. PBC is not allowed to be deleted dynamically. However, if someone try to delete it, it leaves the vport is wrong state. The fix is to restore the vport back to original state when the attempt to delete pbc vport delete is failed. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 8a4adf1c906ee07a01cb47297130a71489f2e4f0 Author: Jing Huang Date: Thu Jul 8 20:01:07 2010 -0700 [SCSI] bfa: fix wrong arg to callback This patch fixes the issue of passing wrong argument to callback function. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit ba8345821ac34d1630e99db7d4835db8ab20f50b Author: Jing Huang Date: Thu Jul 8 20:00:24 2010 -0700 [SCSI] bfa: add ioc state checking This patch adds ioc state checking while enabling a port. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 604158ade0d5378622541232a007bf975c8bd03f Author: Jing Huang Date: Thu Jul 8 19:59:49 2010 -0700 [SCSI] bfa: add description for module parameters Add description for bfa driver module parameters. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 07b2838669dc7704e02e079b1a96602656893d78 Author: Jing Huang Date: Thu Jul 8 19:59:24 2010 -0700 [SCSI] bfa: update to support BOFM Update bfa driver API and data structure to support BOFM (IBM BladeCenter Open Fabric Manager). Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 56d218fc93ede28a2a5b71c5db334f193b39988f Author: Jing Huang Date: Thu Jul 8 19:58:45 2010 -0700 [SCSI] bfa: fix possible IO double completion While processing the ioim in callback functions, the ioim is still in io_q. During this time, if the itnim goes offline, the ioim is requeued from itnim->io_q into itnim->delay_comp_q although the request is already completed. This results in requeing the ioim into the callback queue if the ioim is not freed by the time the ioim is requeued. This results in double completion of the ioim. To fix this, whenever a response is received from firmware for an ioim, deque it from io_q and enque to fcpim->comp_q. This will eliminate any possibility of itnim picking any ioim for which the response is already received. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit db954c04cbebd7d719927118c7f58eddd8dd9913 Author: Jing Huang Date: Thu Jul 8 19:58:01 2010 -0700 [SCSI] bfa: fix link state structure When the FCoE Linkup event is sent to the host, the link_state (struct bfa_pport_link_s) structure is copied to the RME buf to be sent to the host. But the size of this structure(164 bytes) is larger than the reserved RME buffer size(128 byes). The following changes reduce the size of the structure to be less than RME buffer size(128 bytes): - Remove the trunk and loop info from link_state structure, because both trunk and loop are not supported. - Combine qos_vc_attr and fcf into an union. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 36d345a703b7b3f80a56ee37abb7908c52d1cd67 Author: Jing Huang Date: Thu Jul 8 19:57:33 2010 -0700 [SCSI] bfa: add dynamic queue selection Add new bfa functionality to support dynamic queue selection (IO redirection). IO redirection can only be enabled when QoS is disabled. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 4b5e759dca9fb26d921c1267283350004dbf197b Author: Jing Huang Date: Thu Jul 8 19:55:41 2010 -0700 [SCSI] bfa: fix uf post and rport fcpim state machine BFA UF module did not hold lock when seding uf post buffer message to firmware causing CPE-Q corruption. Fix is to check present of FCS and if FCS present hold lock while posting UF buffers. Handle PRLO with sending acc to it and relogin with rport. Discard fcxp before any state change. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit df2a52a6c8c4995e0bec0b739ddb2f51664837dd Author: Jing Huang Date: Thu Jul 8 19:54:39 2010 -0700 [SCSI] bfa: fix chip and memory initialization Clear PSS memory reset that is set as part of power-on-reset (pci reset). Complete PMM memory reset before BISTR start. Clear EDRAM BISTR start bit after fixed delay. BISTR DONE bit status is not getting set. Use a fixed 1ms delay for BISTR now. Expose PMM IT memory definitions to host. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 9aeb6802ddc06b66fc1a58a882fa54bba37040b3 Author: Jing Huang Date: Thu Jul 8 19:53:40 2010 -0700 [SCSI] bfa: update to support firmware configuation Update related data structures to support firmeare configuration. Add AEN events related to firmware configuation. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 3e98cc013fc4902df5f9d9defe1856df0f0cb657 Author: Jing Huang Date: Thu Jul 8 19:52:46 2010 -0700 [SCSI] bfa: add PBC port disable handling Add PBC port disable handling in BFA and return the appropriate status from BFA APIs. In bfa_fcs_lport.c, handle OFFLINE event to avoid BFA_ASSERT. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 41188cf5a60a24bf54df5be70142f0928f413788 Author: Jing Huang Date: Thu Jul 8 19:52:00 2010 -0700 [SCSI] bfa: fix prli retry issues Add a max retry limit for PRLI retries. Max retry limit (5) is same as used in rport PLOGI. Once the retries are exhausted, invoke rport offline so that existing logic of rport re-discovery can kick-in. Also fixed a bug in rport.c where one less retry was happening. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit c507341713114e2510ad7621088b359367adf1ce Author: Jing Huang Date: Thu Jul 8 19:51:28 2010 -0700 [SCSI] bfa: fix rport speed setting When a rport goes offline, its speed setting was not reset. Subsequently, if the rport was not deleted due to it coming back online within rport del timeout, previously discovered speed would continue to show up. The fix is to reset the speed when processing rport offline transition. In rport attributes, rport's with unknown speed were indicated as TRL enforced. The right thing do to would be to use TRL default speed to determine if TRL is enforced, when TRL is enabled. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 7c8146510c9cacdaaeb273b5fef6b9201d933bc1 Author: Jing Huang Date: Thu Jul 8 19:50:38 2010 -0700 [SCSI] bfa: fix interrupt coalescing setting Do not update the coalesce flag of the intr_attr struct in driver config area on config response. This is to prevent the coalesce flag being reported as on after an ioc disable/enable even if it was set to off before disable. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 4f1806bc3c409395de4dab5984f7a235dc4a0eda Author: Jing Huang Date: Thu Jul 8 19:50:15 2010 -0700 [SCSI] bfa: use standards defined timeout for ELS/CT Use standards defined 2 * RA_TOV as a timeout for ELS Request retries. And standards defined 3 * RA_TOV as a timeout for FC-CT Request retries. Also, added a check to send RPSC2 to a Brocade Fabric only. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit b85d045ee866011df535565bf12d684e8e5b7a9d Author: Jing Huang Date: Thu Jul 8 19:48:49 2010 -0700 [SCSI] bfa: statistics and typo fix - Added time stamp for fcport stats reset - Added new fileds to the statistics data structures. - Typo removal and minor cleanup. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 15b64a835def4c784c6e62ad762677f5cb56eba2 Author: Jing Huang Date: Thu Jul 8 19:48:12 2010 -0700 [SCSI] bfa: ioc attributes fix This patch fixes the APIs to obtain ioc attributes - fix API to obtain wwpn, wwnn, and mac. - add API to get mfg wwpn, wwnn, and mac. - fix API to obtain wwn of boot target. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 1769f990fc182695bc215ce4369688064addcd1e Author: Jing Huang Date: Thu Jul 8 19:47:08 2010 -0700 [SCSI] bfa: vport state machine fix Vport state machine does not cleanup associated lport in some states: while waiting for fdisc response or fdisc failure state. The fixe is to cleanup lport on vport delete in all states. In fdisc state, discard fdisc response and delete lport and wait for lport deletecompletion. in error state, delete lport and wait for delete completion. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit d9883548a0b0afec4786e6c5cd8d03d43a30b779 Author: Jing Huang Date: Thu Jul 8 19:46:26 2010 -0700 [SCSI] bfa: PBC vport create This patch enables creating PBC vport. During fcs init, fcs will read PBC vport using bfa iocfc API and invoke fcb callback to add the pbc vport entries into a list. The pbc vport list will be traversed in the subsequent pci probe process and vport will be created using fc transport provided vport create function. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit ed96932470e4ca3aab29518a748dc1162853b456 Author: Jing Huang Date: Thu Jul 8 19:45:56 2010 -0700 [SCSI] bfa: enable basic PBC support The patch includes the driver side changes to enable basic PBC (PreBoot Configuration) feature. - Data structure changes and new definitions for PBC. - APIs to access PBC info. - Remove unused code. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 293f82d59ed8b6d61d242e40ee7a6a146fae5eaa Author: Jing Huang Date: Thu Jul 8 19:45:20 2010 -0700 [SCSI] bfa: enable new hardware This patch enables support of new mezzanine cards for HP and IBM blade server. - Add new pciids for HP and IBM mezzanine card. - Add a new firmware image for HP mezzanine card, which is running in FC only mode. Rename firmware image to reflect the difference. Change the firmware download code accordingly for the above changes. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 3cb5469a2ab4b87a7c63dd218fdc1625bc73eccc Author: Eric Moore Date: Thu Jul 8 14:44:34 2010 -0600 [SCSI] mpt2sas: driver fails to recover from injected PCIe bus errors fixes surrounding PCIe enhanced error handling: (1) We need to reject all request generated internaly inside the driver as well as request arriving from the scsi mid layer when PCIe EEH is active. The fix is to add a per adapter flag called pci_error_recovery which is checked thru out the driver when request are generated. (2) We don't need to call the pci_driver->remove directly from the PCIe callbacks becuase its already called from the PCIe EEH code. In its place we are shutting down the watchdog timer, and flushing back all pending IO. (3) We need to save and restore the pci state across PCIe EEH handling. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit a2f1d139df42df6f3a2641591dea9e068b68f68c Author: Eddie Wai Date: Thu Jul 1 15:34:56 2010 -0700 [SCSI] bnx2i: Updated version from 2.1.1 to 2.1.2 Signed-off-by: Eddie Wai Signed-off-by: James Bottomley commit 625986c22e5c122b3e2f4e985680393453d8c5ce Author: Michael Chan Date: Thu Jul 1 15:34:55 2010 -0700 [SCSI] bnx2i: Added host param ISCSI_HOST_PARAM_IPADDRESS This sysfs attribute is proven to be useful during pivot_root. Signed-off-by: Michael Chan Signed-off-by: Eddie Wai Reviewed-by: Benjamin Li Acked-by: Anil Veerabhadrappa Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 2eefb20dbf3032da1ad111c1ce178f899bc4859a Author: Eddie Wai Date: Thu Jul 1 15:34:54 2010 -0700 [SCSI] bnx2i: Fixed the TCP graceful termination initiation In compliance to RFC793, a TCP graceful termination will be used instead of an abortive termination for the case where the remote has initiated the close of the connection. Additionally, a TCP abortive termination will be used to close the connection when a logout response is not received in time after a logout request has been initiated. Signed-off-by: Eddie Wai Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Acked-by: Anil Veerabhadrappa Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit e37d2c4791480e27c2e2e4a556e4d2ba1d353ff8 Author: Eddie Wai Date: Thu Jul 1 15:34:53 2010 -0700 [SCSI] bnx2i: Fine tuned conn destroy and context destroy timeout values Added variables to separate the fine tuned timeout values for connection destroy and context destroy for both 1g and 10g devices. v2: Extended the 5771X disconnect timeout from 10s to 20s as the firmware has a retransmission timeout of 16s. This fixes one of the iscsi_endpoint leak issues when the target is slow or non-responsive to our TCP FIN. Signed-off-by: Eddie Wai Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Acked-by: Anil Veerabhadrappa Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 55e15c975cbf9ef8b765eba9ebadc96f2a2e5752 Author: Eddie Wai Date: Thu Jul 1 15:34:52 2010 -0700 [SCSI] bnx2i: Optimized the bnx2i_stop connection clean up procedure For cases where the iSCSI disconnection procedure times out due to the iSCSI daemon being slow or unresponsive, the bnx2i_stop routine will now perform hardware cleanup via bnx2i_hw_ep_disconnect on all active endpoints so that subsequent operations will perform properly. Also moved the mutex locks inside ep_connect and ep_disconnect so that proper exclusivity can resolve simultaneous calls to the ep_disconnect routine. v2: Removed the unnecessary read lock in the bnx2i_stop Signed-off-by: Eddie Wai Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Acked-by: Anil Veerabhadrappa Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 46012e8b8de325472790d154f4cfb1cf2d4fc49a Author: Eddie Wai Date: Thu Jul 1 15:34:51 2010 -0700 [SCSI] bnx2i: Created an active linklist which holds bnx2i endpoints This introduces a new active linklist which would link up all active bnx2i_endpoints. This will be used by subsequent patches that follows. Signed-off-by: Eddie Wai Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Acked-by: Anil Veerabhadrappa Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 6447f286326690a936c35f9f913499307f869934 Author: Eddie Wai Date: Thu Jul 1 15:34:50 2010 -0700 [SCSI] bnx2i: Separated the hardware's cleanup procedure from ep_disconnect This patch introduces a new bnx2i_hw_ep_disconnect routine which contains all chip related disconnect and clean up procedure of iSCSI offload connections. This separation is intended as a preparation for the subsequent bnx2i_stop patch. Signed-off-by: Eddie Wai Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Reviewed-by: Mike Christie Acked-by: Anil Veerabhadrappa Signed-off-by: James Bottomley commit 9ab98f57b3e1d73cd0720d29c21b687ba609cde9 Author: FUJITA Tomonori Date: Mon Jun 28 01:04:45 2010 +0900 [SCSI] scsi_debug: fix map_region and unmap_region oops map_region and unmap_region could access to invalid memory area since they don't check the size boundary. Signed-off-by: FUJITA Tomonori Acked-by: Douglas Gilbert Signed-off-by: James Bottomley commit 4289a08680d646dcc18e291cb437a292738e504f Author: Wayne Boyer Date: Thu Jun 24 17:00:59 2010 -0700 [SCSI] ipr: change endian swap key to match hardware spec change The value used to change the endian representation on the new adapters has changed. This patch updates that value. Signed-off-by: Wayne Boyer Signed-off-by: James Bottomley commit b0f56d3d6becfb338a41615d6ce43d41547502c3 Author: Wayne Boyer Date: Thu Jun 24 13:34:14 2010 -0700 [SCSI] ipr: add support for new Obsidian-E embedded adapter This patch allows the driver to recognize a new Obsidian-E based adapter that uses a new subsystem ID. This patch also fixes a few tab/space problems. Signed-off-by: Wayne Boyer Signed-off-by: James Bottomley commit 24ae163ed33d2b8a70d2f0b1947b401d0a8e8719 Author: Jiri Slaby Date: Tue Jun 22 13:42:02 2010 +0200 [SCSI] mvsas: fix potential NULL dereference Stanse found that in mvs_abort_task, mvi_dev is dereferenced earlier than tested for being NULL. Move the assignment below the test. Signed-off-by: Jiri Slaby Signed-off-by: James Bottomley commit 97009a29e8c999def2d1e9ef253c226daf9541af Author: Kei Tokunaga Date: Tue Jun 22 19:01:51 2010 +0900 [SCSI] mptfusion: print Doorbell register in a case of hard reset and timeout Printing Doorbell register in a case of hard reset and timeout should be useful for figuring out the state of the system. Signed-off-by: Kei Tokunaga Acked-by: "Desai, Kashyap" Signed-off-by: James Bottomley commit e4bf25fbcc64a87d7dc1d3318ca56c28382757e2 Author: Justin P. Mattock Date: Fri Jun 18 13:16:07 2010 -0700 [SCSI] scsi:hosts.c Fix warning: variable 'rval' set but not used The below patch fixes a warning message generated by gcc 4.6.0 CC drivers/scsi/hosts.o drivers/scsi/hosts.c: In function 'scsi_host_alloc': drivers/scsi/hosts.c:328:6: warning: variable 'rval' set but not used Fix this by removing the rval but placing a printk warning where it would have been set. Signed-off-by: Justin P. Mattock Signed-off-by: James Bottomley commit 6e49949c5e9e04d64e16df3723dd3f5bd25a29e2 Author: Mike Christie Date: Sun Apr 25 07:03:57 2010 -0500 [SCSI] Log msg when getting Unit Attention If the user accidentally changes LUN mappings or it occurs due to a bug, then it can cause data corruption that can take months and months to track down. This patch adds a log message when getting REPORT_LUNS_DATA_CHANGED and it adds a generic message for other Unit Attentions with asc == 0x3f. We are working on adding support for handling of these errors, but I think until then we should at least log a message so tracking down problems as a result of one of these changes is a little easier. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 3e84beba608dee5a7c7711a3503eb2f335c78fca Author: Kei Tokunaga Date: Wed Apr 7 19:17:24 2010 +0900 [SCSI] mptsas: fixed hot-removal processing This patch fixes mptsas disk hot-removal processing. The hot-removal processing doesn't complete because of this condition. drivers/message/fusion/mptsas.c: mptsas_taskmgmt_complete() if ((mptsas_find_vtarget(ioc, channel, id)) && !ioc->fw_events_off) mptsas_queue_device_delete(...); mptsas_queue_device_delete(), which must be called for hot-removal, never gets called because mptsas_find_vtarget() always returns 0 here. At that time, the vtarget has already been freed in mptsas_target_destroy(), and also the scsi_device has been marked as SDEV_DEL. As a result of the issue, port deletion functions won't get called and the device ends up being in an incomplete state. (Some data structures and sysfs entries, which should be removed in hot-removal, remain.) One side effect of this is that a hot-addition of the device (bringing the device back on) fails. This patch just removes mptsas_find_vtarget() from the if-state condition. Signed-off-by: Kei Tokunaga Acked-by: "Desai, Kashyap" Signed-off-by: James Bottomley commit cb237ef7a45f22373575b2d2ad2d06f7d38d6bce Author: Wayne Boyer Date: Thu Jun 17 11:51:40 2010 -0700 [SCSI] ipr: add MMIO write to perform BIST for 64 bit adapters The 64 bit chip used in new adapters does not properly support the BIST register in PCI config space. This patch implements an alternative MMIO write reset method. Signed-off-by: Wayne Boyer Signed-off-by: James Bottomley commit cdd3cb156f190edb37d7066ddbf879354da2b634 Author: Nick Cheng Date: Tue Jul 13 20:03:04 2010 +0800 [SCSI] SCSI: Support Type C RAID controller 1. To support Type C RAID controller, ACB_ADAPTER_TYPE_C, i.e. PCI device ID: 0x1880. Signed-off-by: Nick Cheng< nick.cheng@areca.com.tw > Signed-off-by: James Bottomley commit a91c1be21704113b023919826c6d531da46656ef Author: James Bottomley Date: Fri Mar 12 16:14:42 2010 -0600 [SCSI] enclosure: fix error path - actually return ERR_PTR() on error we also need to clean up and free the cdev. Reported-by: Jani Nikula Cc: Stable Tree Signed-off-by: James Bottomley commit aac3118d33e275a7b1134cb19227c982f4d43877 Author: Brian King Date: Thu Jun 17 13:56:04 2010 -0500 [SCSI] ibmvscsi: Driver version 1.5.9 Bump driver version Signed-off-by: Brian King Signed-off-by: James Bottomley commit f3a9c4d76a955e331e88992cd3b1e1498c231d52 Author: Brian King Date: Thu Jun 17 13:56:03 2010 -0500 [SCSI] ibmvscsi: Fix possible request_limit issue If we encounter an error when sending a management datagram (i.e. non SCSI command, such as virtual adapter initialization command), we end up incrementing the request_limit, even though we don't decrement it for these commands. Fix this up by doing this increment in the error path for SRP commands only. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 1117ef8aed95521f46dae3052c7120baae48c2bb Author: Brian King Date: Thu Jun 17 13:56:02 2010 -0500 [SCSI] ibmvscsi: Fix error path deadlock Fixes a deadlock that can occur if we hit a command timeout during the virtual adapter initialization. The event done functions are written with the assumption that no locks are held, however, when purging requests this is not true. Fix up the purge function to drop the lock so that the done function is not called with the lock held, which can cause a deadlock. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 0f33ece5bc3d5a9567b65cfbc736e8f206ecfc7b Author: Brian King Date: Thu Jun 17 13:56:00 2010 -0500 [SCSI] ibmvscsi: Fix softlockup on resume This fixes a softlockup seen on resume. During resume, the CRQ must be reenabled. However, the H_ENABLE_CRQ hcall used to do this may return H_BUSY or H_LONG_BUSY. When this happens, the caller is expected to retry later. This patch changes a simple loop, which was causing the softlockup, to a loop at task level which sleeps between retries rather than simply spinning. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 06395193b20124663b83b2894da827aec7e9d920 Author: Brian King Date: Thu Jun 17 13:55:16 2010 -0500 [SCSI] ibmvfc: Driver version 1.0.8 Bump driver version. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 3f01424c8128af7a69c824176bff195be457d6ac Author: Brian King Date: Thu Jun 17 13:55:15 2010 -0500 [SCSI] ibmvfc: Add support for fc_block_scsi_eh Adds support for fc_block_scsi_eh to block the EH handlers if the target device is in the blocked state to ensure we don't take devices offline. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 73ee5d8672871bd69077ca71e7208a36bfa6343c Author: Brian King Date: Thu Jun 17 13:55:13 2010 -0500 [SCSI] ibmvfc: Fix soft lockup on resume This fixes a softlockup seen on resume. During resume, the CRQ must be reenabled. However, the H_ENABLE_CRQ hcall used to do this may return H_BUSY or H_LONG_BUSY. When this happens, the caller is expected to retry later. Normally the H_ENABLE_CRQ succeeds relatively soon. However, we have seen cases where this can take long enough to see softlockup warnings. This patch changes a simple loop, which was causing the softlockup, to a loop at task level which sleeps between retries rather than simply spinning. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 15f7fc060a7bf49991c35b23e1e7d73a1535382a Author: Bandan Das Date: Wed Jun 16 13:39:42 2010 -0400 [SCSI] mpt fusion: Cleanup some duplicate calls in mptbase.c In mpt_detach, call to pci_set_drvdata is redundant because it has already been called in mpt_adapter_disable. In mpt_attach, ioc->pcidev is set to pdev two times. Signed-off-by: Bandan Das Acked-by: "Desai, Kashyap" Signed-off-by: James Bottomley commit c817ce842a539d2e536b328b9689e836d48b20e9 Author: Kashyap, Desai Date: Thu Jun 17 14:44:00 2010 +0530 [SCSI] mptfusion: Bump version 03.04.16 Upgrade driver version to 3.4.16 Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit b9a0f872a9ff3b5074c74da98052b5205929b560 Author: Kashyap, Desai Date: Thu Jun 17 14:42:39 2010 +0530 [SCSI] mptfusion: Added missing reset for ioc_reset_in_progress in SoftReset Added missing part which will reset ioc_reset_in_progress before returning from SoftResetHandler. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit cc7e9f5f9999d9c015686ab4a622e1fb529391eb Author: Kashyap, Desai Date: Thu Jun 17 14:41:48 2010 +0530 [SCSI] mptfusion: Added code for occationally SATA hotplug failure. Issue: SATA hotplug does not work sometimes. At the time of ADD device/ADD phys disk, drive may fail to add SATA device due to temporary SAS Address for SATA device generated by firmware. Final SAS address for SATA driver will be generated only after disk spinup is done. This may take some times for slow spining SATA drives. At phy link up driver gets attached device sas address and stores into phyinfo. At the time of ADD event driver will read sas device page0 using channel and FW ID provided in ADD Device event. Here in case of SATA drives, driver will see miss match in phyinfo->sas_address and latest sas address read from SAS DEVICE PAGE0 and eventually device won't be added to OS. Fix: When Driver read SAS DEVICE PAGE0, it can identify Device type looking at device_info. If device is SATA drive and sas address mismatch happens, Driver will do same stuffs which happened at the time of LINK UP to get correct piece of information from Pages. ( Find parent device and refresh parent device phys either HBA refresh/Exp refresh) Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit b68bf096d4211bb6490955f86842d8291e8ae218 Author: Kashyap, Desai Date: Thu Jun 17 14:40:56 2010 +0530 [SCSI] mptfusion: schedule_target_reset from all Reset context Issue: target reset will be queued to driver's internal queue to get schedule later. When driver add target into internal target_reset queue we will block IOs on those target using scsi midlayer API. Now due to some cause driver is not executing those target_reset list and it is always in block state. Changes: now we are clearing target_reset queue from all other Callback context instead of only DeviceReset context.Now wherever driver is clearing taskmgmt_in_progress flag it is considering target_reset queue cleanup also. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 51106ab5306b752cd53d40626f78774276bb1368 Author: Kashyap, Desai Date: Thu Jun 17 14:40:10 2010 +0530 [SCSI] mptfusion: Added sanity to check B_T mapping for device before adding to OS Added sanity check before treating any device is a valid device. It is possible that firmware can have device page0 in its table, but that devicemay not be available in topology. Device will be available in topology only if there is Bus Target mapping is done in firmware. Driver will always check B_T mapping of firmware before reporting device to upper layer. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit aca794ddd688f1bbb7551f569b0620255c052d80 Author: Kashyap, Desai Date: Thu Jun 17 14:39:25 2010 +0530 [SCSI] mptfusion: Corrected declaration of device_missing_delay device missing delay is 8 bit value in io unit pg1. Making correct variable declaration for device_missing_delay. The driver is storing the calculated device missing delay in IOC structure as a u8 instead of a u16. It needs to be a u16 if the delay is > 255. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 4d0695664ed8e168f97cce86289d0c5fab35b067 Author: Kashyap, Desai Date: Thu Jun 17 14:37:25 2010 +0530 [SCSI] mptfusion: Use DID_TRANSPORT_DISRUPTED instead of DID_BUS_BUSY Changed the return value for Nexus Loss IOs to be DID_TRANSPORT_DISRUPTED. What this will allow is the multi-path driver to delay the fail over process. They would like the path to keep up as long as the nexus loss Loginfo is return from firmware. With DID_BUS_BUSY the path fails over immediately. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 8ce13de2ad0df5239340e885e5513d9ad98439e0 Author: Kashyap, Desai Date: Thu Jun 17 14:35:46 2010 +0530 [SCSI] mptfusion: Set fw_events_off to 1 at driver load time. fw_events_off is flag checking for driver to do Event handling or not. Normally it should be OFF at the time of initialization. Only enable it at the time of INTR enable of device first time. This will always occur only after resource allocation. ioc->fw_events_off = 1 is set in mpt_attach() Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit d4572c3dbb00fa47b9e8cd496f12a8ec9e9b66c3 Author: Kashyap, Desai Date: Thu Jun 17 13:50:57 2010 +0530 [SCSI] mpt2sas: Bump version 06.100.00.00 Version upgrade patch Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 1bbfa378afbf8a8bfa6f6523e4965398a578ad10 Author: Kashyap, Desai Date: Thu Jun 17 13:50:11 2010 +0530 [SCSI] mpt2sas: Copy message frame before releasing to free pool to have a local reference. Current driver is not clearing the per device tm_busy flag following the Task Mangement request completion from the IOCTL path. When this flag is set, the IO queues are frozen. The reason the flag didn't get cleared is becuase the driver is referencing memory associated to the mpi request following the completion, when the memory had been reallocated for a new request. When the memory was reallocated, the driver didn't clear the flag becuase it was expecting a task managment reqeust, and the reallocated request was for SCSI_IO. To fix the problem the driver needs to have a cached backup copy of the original reqeust. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 769578ff811e43ccddd96b15640fa7c9df65c374 Author: Kashyap, Desai Date: Thu Jun 17 13:49:28 2010 +0530 [SCSI] mpt2sas: Copy sense buffer instead of working on direct memory location (1) driver was not setting the sense data size prior to sending SCSI_IO, resulting in the 0x31190000 loginfo (2) The driver needs to copy the sense data to local buffer prior to releasing the request message frame. If not, the sense buffer gets overwritten by the next SCSI_IO request. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 8e864a81e30ab996d3245ebd16a741b3614e6581 Author: Kashyap, Desai Date: Thu Jun 17 13:48:46 2010 +0530 [SCSI] mpt2sas: Adding additional message to error escalation callback Adding additional messages to the error escallation callbacks which displays the wwid, sas address, handle, phy number, enclosure logical id, and slot. In the same eh callbacks, routines, the printks were converted to sdev_printks, which displays the bus target mapping. These additional modifications help better identify the device which is in recovery. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit d417d1c3a3c3b4d89a285f82a4e7710372e40a24 Author: Kashyap, Desai Date: Thu Jun 17 13:48:10 2010 +0530 [SCSI] mpt2sas: Add additional check for responding volumes after Host Reset ISSUE DESCRIPTION: This test case involves creating two RAID1 volumes, then simultaneiously issue host reset and pull all the drives associated to the 1st raid volume. The observed behavour is the physical drives are removed, however the volume remains. The expected behavour is the volume as well as physical drives should be removed from OS. FIX: Add support in the post host reset device scan logic for raid volumes where the driver will have an additional check for responding raid volume where the status should be either online, optimal, or degraded. So for voluemes that have a status of missing or failed, the driver will mark them for deletion. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 3e2e833a547cbd0cb3fbe85a5f6ee71a93931fde Author: Kashyap, Desai Date: Thu Jun 17 13:47:29 2010 +0530 [SCSI] mpt2sas: Added -ENOMEM return type when allocation fails In the driver mpt2sas_base_attach subroutine, we need to add support to return the proper error code when there are memory allocation failures, e.g. returning -ENOMEM. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit f3eedd698ebafd0fe8a292672604a2db61c2c00a Author: Kashyap, Desai Date: Thu Jun 17 13:46:13 2010 +0530 [SCSI] mpt2sas: Redesign Raid devices event handling using pd_handles per HBA Actual problem : Driver may receiving the top level expander removal event prior to all the individual PD removal events, hence the driver is breaking down all the PDs in advanced to the actaul PD UNHIDE event. Driver sends multiple Target Resets to the same volume handle for each individual PD removal. FIX DESCRIPTION: To fix this issue, the entire PD device handshake protocal has to be moved to interrupt context so the breakdown occurs immediately after the actual UNHIDE event arrives. The driver will only issue one Target Reset to the volume handle, occurring after the FAILED or MISSING volume status event arrives from interrupt context. For the PD UNHIDE event, the driver will issue target resets to the PD handles, followed by OP_REMOVE. The driver will set the "deteleted" flag during interrupt context. A "pd_handle" bitmask was introduced so the driver has a list of known pds during entire life of the PD; this replaces the "hidden_raid_component" flag handle in the sas_device object. Each bit in the bitmask represents a device handle. The bit in the bitmask would be toggled ON/OFF when the HIDE/UNHIDE events arrive; also this pd_handle bitmask would bould be refreshed across host resets. Here we kept older behavior of sending target reset to volume when there is a single drive pull, wait for the reply, then send target resets to the PDs. We kept this behavior so the driver will behave the same for older versions of firmware. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 7fbae67a3faa90abcbe949f1494769c84e51e189 Author: Kashyap, Desai Date: Thu Jun 17 13:45:17 2010 +0530 [SCSI] mpt2sas: Tie a log info message to a specific PHY. Add support to display additional debug info for SCSI_IO and RAID_SCSI_IO_PASSTHROUGH sent from the normal entry queued entry point, as well as internal generated commands, and IOCTLS. The additional debug info included the phy number, as well as the sas address, enclosure logical id, and slot number. This debug info has to be enabled thru the logging_level command line option, by default this will not be displayed. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit eabb08ad2d3b0257cd2c9aed4f106fb39d14604a Author: Kashyap, Desai Date: Thu Jun 17 13:43:57 2010 +0530 [SCSI] mpt2sas: print level KERN_DEBUG is replaced by KERN_INFO Converting print level from MPT2SAS_DEBUG_FMT to MPT2SAS_INFO_FMT. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 570c67ac443dab5c46e5744e950f0539724cb65d Author: Kashyap, Desai Date: Thu Jun 17 13:43:17 2010 +0530 [SCSI] mpt2sas: Added sysfs support for trace buffer Added support so the diag ring buffer can be pulled via sysfs Added three new shost attributes: host_trace_buffer, host_trace_buffer_enable, and host_trace_buffer_size. The host_trace_buffer_enable attribute is used to either post or release the trace buffers. The host_trace_buffer_size attribute contains the size of the trace buffer. The host_trace_buffer atttribute contains a maximum 4KB window of the buffer. In order to read the entire host buffer, you will need to write the offset to host_trace_buffer prior to reading it. release the host buffer, then write the entire host buffer contents to a file. In addition to this enhancement, we moved the automatic posting of host buffers at driver load time to be called prior to port_enable, instead of after. That way discovery is available in the host buffer. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 203d65b16cfef448dbfb79f66b672be4511fc6a9 Author: Kashyap, Desai Date: Thu Jun 17 13:37:59 2010 +0530 [SCSI] mpt2sas: MPI header version N is updated. Updating MPI header version N. Removed mpi_history.txt. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit d32a8c15e1116e87f0105356eca1afb99842ab49 Author: Kashyap, Desai Date: Thu Jun 17 13:36:53 2010 +0530 [SCSI] mpt2sas: Added sysfs counter for ioc reset Added a new sysfs shost attribute called ioc_reset_count. This will keep count of host resets (both diagnostic and message unit). Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit b8d7d7bb37b5e25ea740369eb12de5279fe6ab30 Author: Kashyap, Desai Date: Thu Jun 17 13:34:31 2010 +0530 [SCSI] mpt2sas: Added expander phy control support Added support to send link resets, hard resets, enable/disable phys, and changing link rates for for expanders. This will be exported to attributes within the sas transport layer. A new wrapper function was added for sending SMP passthru to expanders for phy control. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit d5f491e65851627358b2c1a4e322681b17539550 Author: Kashyap, Desai Date: Thu Jun 17 13:32:54 2010 +0530 [SCSI] mpt2sas: Added expander phy counter support Added support to retrieve the invalid_dword_count, running_disparity_error_count, loss_of_dword_sync_count, and phy_reset_problem_count for expanders. This will be exported to attributes within the sas transport layer. A new wrapper function was added for sending SMP passthru to retrieve the expander phy error log. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit dd5fd3323abcb799d4d81f3c4b3e2a5fcbfce7bf Author: Kashyap, Desai Date: Thu Jun 17 13:31:17 2010 +0530 [SCSI] mpt2sas: staged device discovery. disable_discovery module parameter is added. Added command line option called disable_discovery. When enabled on the command line, the driver will not send a port_enable when loaded for the first time. If port_enable is not called, then there is no discovery of devices, as well as the sas topology. Then later if one desires to invoke discovery, then they will need to issue a diagnostic reset. A diagnostic reset can be issued various ways. One of the way is throught sysfs. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit d274213a1ae59e8abde8d43e1e3a478fe9f28794 Author: Kashyap, Desai Date: Thu Jun 17 13:28:55 2010 +0530 [SCSI] mpt2sas: Hold Controller reset when another reset is in progress Driver should not allow multiple host reset when already host reset is in progress. It is possible that host reset was sent by scsi mid layer while there was already an host reset active, either issued via IOCTL interface or internaly, like a config page timeout. Since there was a host reset active, the driver would return a FAILED response to the scsi mid layer. The solution is make sure pending host resets will wait for the active host reset to complete before returning control back up the call stack. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit ab6ce92541ea24c6a92be8498d7d1b26c14ec62d Author: Kashyap, Desai Date: Thu Jun 17 13:25:13 2010 +0530 [SCSI] mpt2sas: Fix to use sas device list instead of enclosure list for _transpor_get_enclosure_identifier. Enclosure_identifier not being returned by mpt2sas The driver exports callback function to the sas transport layer for obtaining the enclosure logical id. This function is called _transport_get_enclosure_identifier. The driver was searching the wrong list for the enclosure_identifier. The driver should be searching the sas device list instead of enclosure list. The sas address that is passed to the driver is for the end device, not enclosure. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 593d5720745658a4a973952fb74f6d863c531e97 Author: Karen Xie Date: Wed Jun 16 17:10:37 2010 -0700 [SCSI] cxgb3i: zero out reserved or un-used fields. Zero out the reserved or un-used CPL message fields to prevent any garbage value. Signed-off-by: Karen Xie Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit cba3d38b6cf85bd91b7c6f65f43863d1fd19259c Author: Stephen M. Cameron Date: Wed Jun 16 13:51:56 2010 -0500 [SCSI] hpsa: sanitize max commands Some controllers might try to tell us they support 0 commands in performant mode. This is a lie told by buggy firmware. We have to be wary of this lest we try to allocate a negative number of command blocks, which will be treated as unsigned, and get an out of memory condition. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 10f66018088fd0c9fe81b1e328e3264c7b10caa5 Author: Stephen M. Cameron Date: Wed Jun 16 13:51:50 2010 -0500 [SCSI] hpsa: separate intx and msi/msix interrupt handlers There are things which need to be done in the intx interrupt handler which do not need to be done in the msi/msix interrupt handler, like checking that the interrupt is actually for us, and checking that the interrupt pending bit on the hardware is set (which we weren't previously doing at all, which means old controllers wouldn't work), so it makes sense to separate these into two functions. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 1886765906686cdb08c35afae20e4ad8f82367f5 Author: Stephen M. Cameron Date: Wed Jun 16 13:51:45 2010 -0500 [SCSI] hpsa: forbid hard reset of 640x boards The 6402/6404 are two PCI devices -- two Smart Array controllers -- that fit into one slot. It is possible to reset them independently, however, they share a battery backed cache module. One of the pair controls the cache and the 2nd one access the cache through the first one. If you reset the one controlling the cache, the other one will not be a happy camper. So we just forbid resetting this conjoined mess. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 1df8552abf36519ca8b9e2a8d1e204bac2076d51 Author: Stephen M. Cameron Date: Wed Jun 16 13:51:40 2010 -0500 [SCSI] hpsa: Fix hard reset code. Smart Array controllers newer than the P600 do not honor the PCI power state method of resetting the controllers. Instead, in these cases we can get them to reset via the "doorbell" register. This escaped notice until we began using "performant" mode because the fact that the controllers did not reset did not normally impede subsequent operation, and so things generally appeared to "work". Once the performant mode code was added, if the controller does not reset, it remains in performant mode. The code immediately after the reset presumes the controller is in "simple" mode (which previously, it had remained in simple mode the whole time). If the controller remains in performant mode any code which presumes it is in simple mode will not work. So the reset needs to be fixed. Unfortunately there are some controllers which cannot be reset by either method. (eg. p800). We detect these cases by noticing that the controller seems to remain in performant mode even after a reset has been attempted. In those case, we proceed anyway, as if the reset has happened (and skip the step of waiting for the controller to become ready -- which is expecting it to be in "simple" mode.) To sum up, we try to do a better job of resetting the controller if "reset_devices" is set, and if it doesn't work, we print a message and try to continue anyway. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 4c2a8c40d877effc25774f00406a4a7df1967102 Author: Stephen M. Cameron Date: Wed Jun 16 13:51:35 2010 -0500 [SCSI] hpsa: factor out the code to reset controllers on driver load for kdump support Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit a51fd47f1b8f2b9937011c433269d2ec182b9879 Author: Stephen M. Cameron Date: Wed Jun 16 13:51:30 2010 -0500 [SCSI] hpsa: factor out hpsa_find_cfg_addrs. Rationale for this is that I will also need to use this code in fixing kdump host reset code prior to having the hba structure. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 12d2cd4711b9e3ddcf911281ec4fe511b5cfff63 Author: Stephen M. Cameron Date: Wed Jun 16 13:51:25 2010 -0500 [SCSI] hpsa: make hpsa_find_memory_BAR not require the per HBA structure. Rationale for this is that in order to fix the hard reset code used by kdump, we need to use this function before we even have the per HBA structure. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 6798cc0a4964ceabc27de762c41929f8a875e3fd Author: Stephen M. Cameron Date: Wed Jun 16 13:51:20 2010 -0500 [SCSI] hpsa: Make "hpsa_allow_any=1" boot param enable Compaq Smart Arrays. We were previously only accepting HP boards. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 2e931f3176d61c693ace27498fdb823ef605e619 Author: Stephen M. Cameron Date: Wed Jun 16 13:51:15 2010 -0500 [SCSI] hpsa: add new controllers Add 5 CCISSE smart array controllers Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit ae52e7f09ff509df11cd408eabe90132b6be1231 Author: Nick Cheng Date: Fri Jun 18 15:39:12 2010 +0800 [SCSI] arcmsr: Support 1024 scatter-gather list entries and improve AP while FW trapped and behaviors of EHs 1. To support 4M/1024 scatter-gather list entry, reorganize struct ARCMSR_CDB and struct CommandControlBlock 2. To modify arcmsr_probe 3. In order to help fix F/W issue, add the driver mode for type B card 4. To improve AP's behavior while F/W resets 5. To unify struct MessageUnit_B's members' naming in all OS drivers' 6. To improve error handlers, arcmsr_bus_reset(), arcmsr_abort() 7. To fix the arcmsr_queue_command() in bus reset stage, just let the commands pass down to FW, don't block Signed-off-by: Nick Cheng Signed-off-by: James Bottomley commit f034260db330bb3ffc815fcb682b1c84aca09591 Author: Joe Eykholt Date: Fri Jun 11 16:44:57 2010 -0700 [SCSI] libfc: fix indefinite rport restart Remote ports were restarting indefinitely after getting rejects in PRLI. Fix by adding a counter of restarts and limiting that with the port login retry limit as well. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 4b2164d4d212e437c9f080023a67f8f9356d2c4c Author: Joe Eykholt Date: Fri Jun 11 16:44:51 2010 -0700 [SCSI] libfc: Fix remote port restart problem This patch somewhat combines two fixes to remote port handing in libfc. The first problem was that rport work could be queued on a deleted and freed rport. This is handled by not resetting rdata->event ton NONE if the rdata is about to be deleted. However, that fix led to the second problem, described by Bhanu Gollapudi, as follows: > Here is the sequence of events. T1 is first LOGO receive thread, T2 is > fc_rport_work() scheduled by T1 and T3 is second LOGO receive thread and > T4 is fc_rport_work scheduled by T3. > > 1. (T1)Received 1st LOGO in state Ready > 2. (T1)Delete port & enter to RESTART state. > 3. (T1)schdule event_work, since event is RPORT_EV_NONE. > 4. (T1)set event = RPORT_EV_LOGO > 5. (T1)Enter RESTART state as disc_id is set. > 6. (T2)remember to PLOGI, and set event = RPORT_EV_NONE > 6. (T3)Received 2nd LOGO > 7. (T3)Delete Port & enter to RESTART state. > 8. (T3)schedule event_work, since event is RPORT_EV_NONE. > 9. (T3)Enter RESTART state as disc_id is set. > 9. (T3)set event = RPORT_EV_LOGO > 10.(T2)work restart, enter PLOGI state and issues PLOGI > 11.(T4)Since state is not RESTART anymore, restart is not set, and the > event is not reset to RPORT_EV_NONE. (current event is RPORT_EV_LOGO). > 12. Now, PLOGI succeeds and fc_rport_enter_ready() will not schedule > event_work, and hence the rport will never be created, eventually losing > the target after dev_loss_tmo. So, the problem here is that we were tracking the desire for the rport be restarted by state RESTART, which was otherwise equivalent to DELETE. A contributing factor is that we dropped the lock between steps 6 and 10 in thread T2, which allows the state to change, and we didn't completely re-evaluate then. This is hopefully corrected by the following minor redesign: Simplify the rport restart logic by making the decision to restart after deleting the transport rport. That decision is based on a new STARTED flag that indicates fc_rport_login() has been called and fc_rport_logoff() has not been called since then. This replaces the need for the RESTART state. Only restart if the rdata is still in DELETED state and only if it still has the STARTED flag set. Also now, since we clear the event code much later in the work thread, allow for the possibility that the rport may have become READY again via incoming PLOGI, and if so, queue another event to handle that. In the problem scenario, the second LOGO received will cause the LOGO event to occur again. Reported-by: Bhanu Gollapudi Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 0db6f4353d68c0108b5fe0bad8259de0197589c6 Author: Roel Kluin Date: Fri Jun 11 16:44:46 2010 -0700 [SCSI] fnic: fnic_scsi.c: clean up In fnic_abort_cmd() and fnic_device_reset() assign `rport' earlier to make FNIC_SCSI_DBG() calls cleaner. In fnic_clean_pending_aborts() `rport' is not used. Signed-off-by: Roel Kluin Acked-by: Abhijeet Joglekar Signed-off-by: Andrew Morton Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 1c4bfe6305215f09f3e80a14a824e4ae45b2c7ed Author: Yi Zou Date: Fri Jun 11 16:44:41 2010 -0700 [SCSI] libfc: lport state is enum not bit mask lport state is enum not bit mask. Signed-off-by: Yi Zou Signed-off-by: Robert Love Signed-off-by: James Bottomley commit be61331d902e63011138723da3f737d34506f797 Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:44:36 2010 -0700 [SCSI] libfcoe: Check for order and missing critical descriptors for FIP ELS requests As per FC-BB-5 rev.2, section 7.8.7.1, strict ordering of FIP descriptors is required for ELS requests. Also, look for missing and duplicate critical descriptors. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 5550fda73d8bd3bed454e28c46f5a4e5288769bb Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:44:31 2010 -0700 [SCSI] libfcoe: Host doesnt handle CVL to NPIV ports Clear virtual link for NPIV ports is now handled by resetting the matching vnport. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 0a9c5d344dbd983af59865f9880621e5cbbda899 Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:44:25 2010 -0700 [SCSI] libfcoe: Handle duplicate critical descriptors As per FC-BB-5 rev 2, section 7.8.6.2, malformed FIP frame shall be discarded. Drop discovery adv, ELS and CLV's with duplicate critical descriptors. [Resending after incorporating Joe's review comments] Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit c600fea2d813e8734748202970722c3b6a76b9a1 Author: Joe Eykholt Date: Fri Jun 11 16:44:20 2010 -0700 [SCSI] libfcoe: update FIP FCF D flag from advertisments Allow the D flag (indicating that keep-alives are not needed) to be updated dynamically from received FIP advertisements. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit d99ee45b7cb89803b79745dc3014ba64bfd02b7d Author: Joe Eykholt Date: Fri Jun 11 16:44:15 2010 -0700 [SCSI] libfcoe: Use fka_period as periodic timeouts to age out fcf if keep alives are disabled due to fd_flags set and also stop updating keep alive values in that case. Update select fcf time only if fcf is not already selected or select time is not already determined from parse adv, and then have select time cleared only once after fcf is selected. Changed deadline check to time_after_eq() from time_after() since now next timeout will be on exact 2.5 times FKA followed by first advertisement. Signed-off-by: Vasu Dev Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 8690cb8359d8e9f8d7ca12791ef7ea32b709df8b Author: Joe Eykholt Date: Fri Jun 11 16:44:10 2010 -0700 [SCSI] libfcoe: fix lenient aging of FCF advertisements [This patch has several improvements to the code in the fip timers. It hasn't been tested yet. I'm sending it out for review. Vasu, perhaps you can merge this with your patch and test it together.] The current code allows an advertisement to be used even if it has been 3 times the FCF keep-alive advertisement period (FKA) since one was received from that FCF. The spec. calls for 2.5 times FKA. Fix this and make sure we detect missed keep-alives promptly. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit f8fc6c2c99b8085368119d6cf39b997255052826 Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:44:04 2010 -0700 [SCSI] libfc: Handle unsolicited PRLO request Resubmitting after incorporating Joe's review comment. Unsolicited PRLO request is now handled by sending LS_ACC, and then relogin to the remote port if an N-port login session exists for that remote port. Note that this patch should be applied on top of Joe Eykholt's "Fix remote port restart problem" patch. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 5d4a2e29fba5b2bef95b96a46b338ec4d76fa4fd Author: Joe Eykholt Date: Fri Jun 11 16:43:59 2010 -0700 [SCSI] fcoe: clean up TBD comments in FCoE prototype header Some old comments in fc_fcoe.h say TBD long after the standard has been passed by T11. Clean them up. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 618461c02b00a658ec8aa07d409cd496a7e254e2 Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:43:54 2010 -0700 [SCSI] libfc: Honor LS_ACC response codes for PRLI As per FC-LS Rev 1.62 table 46, response codes are handled as follows: 1. If the Req executed is true, PRLI is accepted. 2. If Req executed is not set, if resp code is 5, PRLI is not retried and port is logged out. 3. If resp code is anything apart from 1 or 5, PRLI is retired upto max retry count. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 292e40b956982601dfc61fe8f0470eb18a616d7e Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:43:49 2010 -0700 [SCSI] libfc: Retry a rejected PRLI request Retry upto max_rport_retry_count when a target responds with LS_RJT for a PRLI request. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 516a648631c912e84e0035590f98eef1d716f4ea Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:43:44 2010 -0700 [SCSI] libfcoe: No solicitation if adv is dropped Host does not send discovery solicitation messages if Disc. Adv from FCF are dropped. It restarts sending solicitation only after receiving a Discovery Adv. from FCF. Fix is to restart solicitation immediately after CVL processing. Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 1508f3ecd991ecbf272e08f5ee70d2618f49159e Author: Bhanu Prakash Gollapudi Date: Fri Jun 11 16:43:38 2010 -0700 [SCSI] libfcoe: Avoid hang when receiving non-critical descriptors Avoid infinite loop while processing FIP ELS or discovery advertisement with non-critical descriptors. Signed-off-by: Bhanu Prakash Gollapudi Acked-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 281ae642a6475ede25ff86ec124214e346c25e22 Author: Joe Eykholt Date: Fri Jun 11 16:43:33 2010 -0700 [SCSI] libfcoe: FIP link keep-alive should continue while logged off A check in fcoe_ctlr_send_keep_alive() returns if there's no port_id for the local port. This could miss a keep alive if we just did a host reset and have logged off and will log back in. Return only if we are doing the port keep alive, in which case we need to be logged in. Signed-off-by: Joe Eykholt Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 56115598c571cadd4b465836e1423a452a908c89 Author: Wayne Boyer Date: Thu Jun 10 14:46:34 2010 -0700 [SCSI] ipr: move setting of the allow_restart flag for vsets and disks A problem was found where the call to scsi_add_device() fails intermittently for an adapter. This is caused when __scsi_add_device() returns -ENODEV as a result of not calling scsi_probe_and_add_lun() since the call to scsi_host_scan_allowed() fails. scsi_host_scan_allowed() fails because the adapter state is set to SHOST_RECOVERY instead of SHOST_RUNNING. The state of the adapter is being set to SHOST_RECOVERY by scsi_eh_scmd_add() during error handling. This problem is avoided by moving the setting of the allow_restart flag to later in the device initialization sequence. This prevents further error handling if we get a NOT_READY response from a TUR command by causing scsi_check_sense() to return SUCCESS. Therefore, scsi_eh_scmd_add() will not run and the adapter state will remain as SHOST_RUNNING. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit 82284c09c5dc5c5a5046f3c852f2683dab60109c Author: Dan Carpenter Date: Thu Jun 10 09:53:05 2010 +0200 [SCSI] be2iscsi: fix null dereference on error path "phba" is always null here so we can't dereference it. Signed-off-by: Dan Carpenter Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 1462b8ffd9a9e4798d4e0f9eaadbd1ac0373a11b Author: Dan Carpenter Date: Thu Jun 10 09:52:21 2010 +0200 [SCSI] be2iscsi: fix memory leak on error path I added a kfree(pwrb_arr) in front of the return. Signed-off-by: Dan Carpenter Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit c5f10187965f93ef7ef67da9c7c449b13b6dee1b Author: Wayne Boyer Date: Wed Jun 9 08:24:55 2010 -0700 [SCSI] ipr: add writeq definition if needed Compiling the driver will fail on 32 bit powerpc and other architectures where writeq is not defined. This patch adds a definition for writeq. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit fa95d206e4a4fb549bdb9fe71091417f4912178f Author: Mike Christie Date: Wed Jun 9 03:30:08 2010 -0500 [SCSI] be2iscsi: fix disconnection cleanup This patch fixes 4 bugs in the connection connect/disconnect cleanup path. 1. If beiscsi_open_conn fails beiscsi_free_ep was always being called, and if beiscsi_open_conn failed because beiscsi_get_cid failed then we would free an unallocated cid. 2. If beiscsi_ep_connect failed due to a beiscsi_open_conn failure it was leaking iscsi_endpoints. 3. beiscsi_ep_disconnect was leaking iscsi_endpoints. beiscsi_ep_disconnect should free the iscsi_endpoint. We cannot do it in beiscsi_conn_stop because that is only called for iscsi connection cleanup. If beiscsi_ep_connect returns success, but then the poll function fails or the connect times out then beiscsi_ep_disconnect will be called to clean up the ep. The conn_stop callout will not be called in that path. 4. beiscsi_conn_stop was freeing the iscsi_endpoint then accessing it a couple lines later. Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 2cae179486a356aca2a2617f0399f04c66598d8b Author: James Smart Date: Tue Jun 8 18:32:13 2010 -0400 [SCSI] lpfc 8.3.14: Update Driver version to 8.3.14 Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit d7c479929b6804f4e9d5fb5f721aba31622f3d97 Author: James Smart Date: Tue Jun 8 18:31:54 2010 -0400 [SCSI] lpfc 8.3.14: SCSI and SLI API fixes - Fixed accounting of allocated SCSI buffers when post sgl fails. - Restrict scsi buffer allocation based on LUN count (sdev_cnt). - Create __lpfc_sli_free_rpi that doesn't take out the hbalock. - Modify lpfc_sli_free_rpi to call __lpfc_sli_free_rpi. - Call __lpfc_sli_free_rpi in lpfc_cleanup_pending_mbox. - Do not swap the strings returned in mailbox commands and do not swap byte aligned data in VPD. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit dbb6b3ab10464aa11df74c0d0a14e869a8c6fd1b Author: James Smart Date: Tue Jun 8 18:31:37 2010 -0400 [SCSI] lpfc 8.3.14: FCoE Discovery Fixes - Prevent unregistring of unused FCF when FLOGI is pending. - Prevent point to point discovery on a FCoE HBA. - Fixed FCF discovery failure after swapping FCoE port by switching over to fast failover method when no FCF matches in-use FCF. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 75baf69657ea2107f2c202cd29dada206ae4b7c4 Author: James Smart Date: Tue Jun 8 18:31:21 2010 -0400 [SCSI] lpfc 8.3.14: PCI fixes and enhancements - Allow enabling MSI-X intterupts with fewer vectors than requested by looking at the return value from pci_enable_msix. - Implemented driver PCI AER error handling routines for supporting AER error recovering on SLI4 devices. - Remove redundant SLI_ACTIVE checks Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit c20c426732a5a5d21e99b36286f79c2024115341 Author: Anil Ravindranath Date: Tue Jun 8 10:56:34 2010 -0700 [SCSI] pmcraid: MSI-X support and other changes 1. MSI-X interrupt support 2. Driver changes to support new maxRAID controller FW version. The changes are mainly done to handle async notification changes done in newer controller FW version. 3. Added state change notifications to notify applications of controller states. Signed-off-by: Anil Ravindranath Signed-off-by: James Bottomley commit 18cacc34887df274feb3f1ff420d7592e4ea246f Author: James Smart Date: Mon Jun 7 15:24:54 2010 -0400 [SCSI] lpfc 8.3.13: Update Driver Version to 8.3.13 Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 2a9bf3d011303d8da64cd5e0e7fdd95f0c143984 Author: James Smart Date: Mon Jun 7 15:24:45 2010 -0400 [SCSI] lpfc 8.3.13: Add TX Queue Support for SLI4 ELS commands. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 98fc5dd952ecfd3abff7c06e7a55a5eab4dd95b7 Author: James Smart Date: Mon Jun 7 15:24:29 2010 -0400 [SCSI] lpfc 8.3.13: Misc fixes - Change the Max receive size on CIN FCFs to 0x800 - (From linux community) Check boundary before checking for NULL. - Update last completion time for completed I/O to prevent heartbeat. - Add Balius PCI Device IDs Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit b92938b41ee84b83347b62baa6daa0d06a742e94 Author: James Smart Date: Mon Jun 7 15:24:12 2010 -0400 [SCSI] lpfc 8.3.13: SCSI specific changes - Fix hba_queue_depth to reflect actual available XRIs - Add support for new SLER specific firmware status codes. - Free SCSI buffer when iotag allocation fails. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 6e7288d9a4b6691bf13fb07e3593d70d725d0737 Author: James Smart Date: Mon Jun 7 15:23:35 2010 -0400 [SCSI] lpfc 8.3.13: Initialization code clean up and fixes. - Add poll or wait flag parameter to hba_init_link and hba_down_link. - (From Linux Community) Make return with ENXIO negative. - Remove unused INB code from driver. - Prevent block_magmt_io from returning until mailbox is inactive. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit ffc954936b134cc6d2eba1282cc71084929c3704 Author: James Smart Date: Mon Jun 7 15:23:17 2010 -0400 [SCSI] lpfc 8.3.13: FC Discovery Fixes and enhancements. - Retry PLOGI up to 48 times when LS_RJT reason is "Unable to supply requested data." - When dev loss timeout occures do not change state if there is an outstanding REG_LOGIN. - Add logic to ignore REG_LOGIN completion if discovery is restarted while waiting for REG_LOGIN. - Only change state on REG_LOGIN completion if still in state waiting for REG_LOGIN completion. - Only send ADISCs to FCP-2 Targets (not Initiators). Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 8701f18504751a5b89be3203e28c5ec04c147167 Author: Wayne Boyer Date: Fri Jun 4 10:26:50 2010 -0700 [SCSI] ipr: add endian swap enablement for 64 bit adapters A change in the hardware design of the chip for the new adapters changes the default endianness of MMIO operations. This patch adds a register definition which when written to with a predefined value will change the endianness back to what the driver expects. This patch also fixes two problems found during testing. First, the first reserved field in the ipr_hostrcb64_fabirc_desc structure only reserved one byte. The correct amount to reserve is 2 bytes. Second, the reserved field of the ipr_hostrcb64_error structure only reserved 2 bytes. The correct amount to reserve is 16 bytes. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit da2907ffd08a2d708c829ec171f05fe3ceab1315 Author: Julia Lawall Date: Sun May 30 15:49:22 2010 +0200 [SCSI] dpt_i2o: Use GFP_ATOMIC when a lock is held The function adpt_i2o_post_wait is called from several places, in some of which, such as adpt_abort, a lock may be held. The functions adpt_i2o_reparse_lct and adpt_i2o_lct_get are called from several places, including adpt_rescan where a lock may be held. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @gfp exists@ identifier fn; position p; @@ fn(...) { ... when != spin_unlock_irqrestore when any GFP_KERNEL@p ... when any } @locked@ identifier gfp.fn; @@ spin_lock_irqsave(...) ... when != spin_unlock_irqrestore fn(...) @depends on locked@ position gfp.p; @@ - GFP_KERNEL@p + GFP_ATOMIC // Signed-off-by: Julia Lawall Signed-off-by: James Bottomley commit c0ff2775a1dcbaf2cbe3fb571ae5ea11b63ea590 Author: Giridhar Malavali Date: Fri May 28 15:08:31 2010 -0700 [SCSI] qla2xxx: Updated version number to 8.03.03-k0. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 5b91490e457a88080b4dbc68f4bc2eadd65e30ea Author: Andrew Vasquez Date: Fri May 28 15:08:30 2010 -0700 [SCSI] qla2xxx: For ISP 23xx, select user specified login timeout value if greater than minuimum value(4 secs). Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 6c7ccf7bb96a0ae16d2bcc6155e1d1fc3e728b39 Author: Giridhar Malavali Date: Fri May 28 15:08:29 2010 -0700 [SCSI] qla2xxx: Removed redundant check for ISP 84xx. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 6907869d726c04362122afd92717f86915a69f96 Author: Giridhar Malavali Date: Fri May 28 15:08:28 2010 -0700 [SCSI] qla2xxx: Enable CRB based doorbell posting for request queue as default for ISP 82xx. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit ba77ef53547883b6be06c0657d5dc1642ad43d0c Author: Arun Easi Date: Fri May 28 15:08:27 2010 -0700 [SCSI] qla2xxx: T10 DIF enablement for 81XX Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 0547fb37ca1f8da18e65b7452f99e9784f026be2 Author: Lalit Chandivade Date: Fri May 28 15:08:26 2010 -0700 [SCSI] qla2xxx: Fix flash write failure on ISP82xx. Driver was not unprotecting correctly, use correct bits to unprotect the flash on ISP 82xx. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit cdbb0a4f31c486e4f6fb6e673a892f4f5205f91c Author: Santosh Vernekar Date: Fri May 28 15:08:25 2010 -0700 [SCSI] qla2xxx: Handle outstanding mbx cmds on hung f/w scenarios. Outstanding mailbox commands, have no way to recover on f/w hung, and we timeout on waiting for mbx response. This in turn affects the recovery process as follows: - We might already be in dpc while waiting for mbx to complete, so recovery for that pci function will never get invoked. Reset Timeout (10 sec) is far less than mbx timeout (30 sec). - Other mbx cmds will get stuck due to serial mbx access. Solution is to identify fw-hung scenario and handle outstanding mbx commands to have an early-exit instead of waiting for response. Other mbx commands waiting for access will also do an early-exit if fw-hung is still applicable. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 3f3b6f98cb33043cba04f45a2f2c43b8303c120c Author: Lalit Chandivade Date: Fri May 28 15:08:24 2010 -0700 [SCSI] qla2xxx: Do not enable VP in non fabric topology. After topology change ISP is reset and VPs are re-enabled. If the topology is not fabric, VPs could falsely get enabled. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 9c2b297572bf3cc36d26520cd8f7e7ef4cb857f8 Author: Harish Zunjarrao Date: Fri May 28 15:08:23 2010 -0700 [SCSI] qla2xxx: Support for loading Unified ROM Image (URI) format firmware file. Used bootloder address from FLT while loading FW from flash as well. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit b0cd579cde8ee0c7ed52239531ba09bcbc5b54c2 Author: Andrew Vasquez Date: Fri May 28 15:08:22 2010 -0700 [SCSI] qla2xxx: Make the FC port capability mutual exclusive. In case of both target and initiator capabilities reported by fc port, the fc port port capability is made mutualy exclusive with priority given for target capabilities. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 23f2ebd17a13835c5b34994d2c2e5faacc127947 Author: Sarang Radke Date: Fri May 28 15:08:21 2010 -0700 [SCSI] qla2xxx: Add internal loopback support for ISP81xx. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 3a6478df74c271cb3be5895b39fddf75e9cef89c Author: Giridhar Malavali Date: Fri May 28 15:08:20 2010 -0700 [SCSI] qla2xxx: Limit rport-flaps during link-disruptions. Signed-off-by: Andrew Vasquez Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 6ac5260850841eb4055811a68ff47d658ebe9a59 Author: Andrew Vasquez Date: Fri May 28 15:08:19 2010 -0700 [SCSI] qla2xxx: Correct async-srb issues. * hold the hardware_lock throughout the duration of ctx-sp timeout handling -- could result in use-after-free oops. * retry a timed-out login-request. * done() routines are called with the hardware-lock held, issue qla2x00_mark_device_lost() with proper 'defer' flag. * FCP2 capabilities are only relevant to target devices. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 083a469db4ecf3b286a96b5b722c37fc1affe0be Author: Giridhar Malavali Date: Fri May 28 15:08:18 2010 -0700 [SCSI] qla2xxx: Correct use-after-free oops seen during EH-abort. Hold a reference to the srb (sp) while aborting an I/O -- as the I/O can/will complete from within the interrupt-context. Signed-off-by: Andrew Vasquez Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 7e2b895b93db603ac3462175baa846ebf1be44da Author: Giridhar Malavali Date: Fri May 28 15:08:17 2010 -0700 [SCSI] qla2xxx: Fix cpu-affinity usage for non-capable ISPs. The TMFs used for pre-24xx ISPs incorrectly assumed 'cpu' tag data could be valid. These chips have no multi-q/cpu-affinity support. This corrects an oops seen on ISP23xx parts. Signed-off-by: Andrew Vasquez Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit d3fa9e7d270e3d9b3fda325cdcb2ea77a00ed876 Author: Andrew Vasquez Date: Fri May 28 15:08:16 2010 -0700 [SCSI] qla2xxx: Add portid to async-request messages. This helps to correlate submission/completion messages during triaging. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit b963752f47c54a29c11acee99e6c99b3c6bb35c5 Author: Giridhar Malavali Date: Fri May 28 15:08:15 2010 -0700 [SCSI] qla2xxx: Clear drive active CRB register when not in use. The CRB drive active register is cleared when driver is unloaded or when driver enters failed state. Signed-off-by: Giridhar Malavali Signed-off-by: James Bottomley commit 9257aa4963873dcc3b339e2e3c0aba081c83695f Author: Stephen M. Cameron Date: Thu May 27 15:14:44 2010 -0500 [SCSI] hpsa: add entry to MAINTAINERS Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit def342bd745d88ed73541b9c07cefb13d8c576fd Author: Stephen M. Cameron Date: Thu May 27 15:14:39 2010 -0500 [SCSI] hpsa: fix block fetch table problem. We have 32 (MAXSGENTRIES) scatter gather elements embedded in the command. With all these, the total command size is about 576 bytes. However, the last entry in the block fetch table is 35. (the block fetch table contains the number of 16-byte chunks the firmware needs to fetch for a given number of scatter gather elements.) 35 * 16 = 560 bytes, which isn't enough. It needs to be 36. (36 * 16 == 576) or, MAXSGENTRIES + 4. (plus 4 because there's a bunch of stuff at the front of the command before the first scatter gather element that takes up 4 * 16 bytes.) Without this fix, the controller may have to perform two DMA operations to fetch the command since the first one may not get the whole thing. Signed-off-by: Don Brace Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit d28ce020fb0ef9254fc9e0bd07f5898c69af9f7d Author: Stephen M. Cameron Date: Thu May 27 15:14:34 2010 -0500 [SCSI] hpsa: expose controller firmware revision via /sys. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 992ebcf14f3cf029b8d0da4f479d752c19d8c726 Author: Stephen M. Cameron Date: Thu May 27 15:14:29 2010 -0500 [SCSI] hpsa: Add hpsa.txt to Documentation/scsi Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 873f339fc53750c1e715f5e1d2dfdb9869b7ea3f Author: Stephen M. Cameron Date: Thu May 27 15:14:24 2010 -0500 [SCSI] hpsa: remove unused firm_ver member of the per-hba structure Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 6c311b5725b9500bdd0f527cd97496b11999fbbd Author: Stephen M. Cameron Date: Thu May 27 15:14:19 2010 -0500 [SCSI] hpsa: factor out hpsa_enter_performant_mode Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit ec18d2abad04091c5125b0a37ad80a00099d8ac0 Author: Stephen M. Cameron Date: Thu May 27 15:14:13 2010 -0500 [SCSI] hpsa: remove unused variable trans_offset Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 3f4336f33314e7d3687ff46af1fcaa970e3f4e00 Author: Stephen M. Cameron Date: Thu May 27 15:14:08 2010 -0500 [SCSI] hpsa: factor out hpsa_wait_for_mode_change_ack Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 7136f9a78eece43226dee1a46ec6fc144f561239 Author: Stephen M. Cameron Date: Thu May 27 15:14:03 2010 -0500 [SCSI] hpsa: mark hpsa_mark_hpsa_put_ctlr_into_performant_mode as __devinit Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 58f8665cc369b9633af072afb741b8f0a01622fa Author: Stephen M. Cameron Date: Thu May 27 15:13:58 2010 -0500 [SCSI] hpsa: clean up debug ifdefs Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit cda7612d4b96d51324c6fc4d5e47d629da6cb500 Author: Stephen M. Cameron Date: Thu May 27 15:13:53 2010 -0500 [SCSI] hpsa: check that simple mode is supported before trying to enter simple mode transport method. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit eb6b2ae9058accd183fe8b31f1985312bf333624 Author: Stephen M. Cameron Date: Thu May 27 15:13:48 2010 -0500 [SCSI] hpsa: factor out hpsa_enter_simple_mode Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 3d0eab67cf556db4430a42fbb45dc90ef690d30c Author: Stephen M. Cameron Date: Thu May 27 15:13:43 2010 -0500 [SCSI] hpsa: factor out hpsa_p600_dma_prefetch_quirk Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit f7c391015ab64c835a9bb403626b38a51d6432cc Author: Stephen M. Cameron Date: Thu May 27 15:13:38 2010 -0500 [SCSI] hpsa: factor out hpsa_enable_scsi_prefetch Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 76c46e4970f7ee6d8c54220a767e93d67b74cd33 Author: Stephen M. Cameron Date: Thu May 27 15:13:32 2010 -0500 [SCSI] hpsa: factor out hpsa-CISS-signature-present Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit b93d7536eaa1206ad4a00ad8ea700ff0bd75a0da Author: Stephen M. Cameron Date: Thu May 27 15:13:27 2010 -0500 [SCSI] hpsa: hpsa factor out hpsa_find_board_params Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 204892e9717790cd17689aaebf2790a477492734 Author: Stephen M. Cameron Date: Thu May 27 15:13:22 2010 -0500 [SCSI] hpsa: fix leak of ioremapped memory in hpsa_pci_init error path. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 77c4495c17d7508bdef1cfd2c3c933ff5379908b Author: Stephen M. Cameron Date: Thu May 27 15:13:17 2010 -0500 [SCSI] hpsa: factor out hpsa_find_cfgtables Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 2c4c8c8b662286230a798c60408d217aeab55f7f Author: Stephen M. Cameron Date: Thu May 27 15:13:12 2010 -0500 [SCSI] hpsa: factor out hpsa_wait_for_board_ready Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 3a7774ceb89f02f78e269b5c900096b066b66c3c Author: Stephen M. Cameron Date: Thu May 27 15:13:07 2010 -0500 [SCSI] hpsa: factor out hpsa_find_memory_BAR Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 6b3f4c52b29eee17285a6cd57071c9ac7736d172 Author: Stephen M. Cameron Date: Thu May 27 15:13:02 2010 -0500 [SCSI] hpsa: remove redundant board_id parameter from hpsa_interrupt_mode and delete duplicated comment Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 85bdbabbd97ff797f91e6ec839ab053776bc72b4 Author: Stephen M. Cameron Date: Thu May 27 15:12:57 2010 -0500 [SCSI] hpsa: factor out hpsa_board_disabled Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit e5c880d1d5923c341ac7ba537fb1e6b73c5977a2 Author: Stephen M. Cameron Date: Thu May 27 15:12:52 2010 -0500 [SCSI] hpsa: factor out hpsa_lookup_board_id Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 55c06c7171f63aaac1f9009729d1cb5107fa0626 Author: Stephen M. Cameron Date: Thu May 27 15:12:46 2010 -0500 [SCSI] hpsa: save pdev pointer in per hba structure early to avoid passing it around so much. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 1db90ea239b85479daedb978ea2f0a61776f074f Author: Julia Lawall Date: Thu May 27 14:33:47 2010 +0200 [SCSI] hptiop: Eliminate a NULL pointer dereference The end of the function is reachable both when host is and is not NULL. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression E,E1; identifier f; statement S1,S2,S3; @@ if ((E == NULL && ...) || ...) { ... when != if (...) S1 else S2 when != E = E1 * E->f ... when any return ...; } else S3 // Signed-off-by: Julia Lawall Signed-off-by: James Bottomley commit 2a1b7e575b80ceb19ea50bfa86ce0053ea57181d Author: Ryan Kuester Date: Mon Apr 26 18:11:54 2010 -0500 [SCSI] mptsas: fix hangs caused by ATA pass-through I may have an explanation for the LSI 1068 HBA hangs provoked by ATA pass-through commands, in particular by smartctl. First, my version of the symptoms. On an LSI SAS1068E B3 HBA running 01.29.00.00 firmware, with SATA disks, and with smartd running, I'm seeing occasional task, bus, and host resets, some of which lead to hard faults of the HBA requiring a reboot. Abusively looping the smartctl command, # while true; do smartctl -a /dev/sdb > /dev/null; done dramatically increases the frequency of these failures to nearly one per minute. A high IO load through the HBA while looping smartctl seems to improve the chance of a full scsi host reset or a non-recoverable hang. I reduced what smartctl was doing down to a simple test case which causes the hang with a single IO when pointed at the sd interface. See the code at the bottom of this e-mail. It uses an SG_IO ioctl to issue a single pass-through ATA identify device command. If the buffer userspace gives for the read data has certain alignments, the task is issued to the HBA but the HBA fails to respond. If run against the sg interface, neither the test code nor smartctl causes a hang. sd and sg handle the SG_IO ioctl slightly differently. Unless you specifically set a flag to do direct IO, sg passes a buffer of its own, which is page-aligned, to the block layer and later copies the result into the userspace buffer regardless of its alignment. sd, on the other hand, always does direct IO unless the userspace buffer fails an alignment test at block/blk-map.c line 57, in which case a page-aligned buffer is created and used for the transfer. The alignment test currently checks for word-alignment, the default setup by scsi_lib.c; therefore, userspace buffers of almost any alignment are given directly to the HBA as DMA targets. The LSI 1068 hardware doesn't seem to like at least a couple of the alignments which cross a page boundary (see the test code below). Curiously, many page-boundary-crossing alignments do work just fine. So, either the hardware has an bug handling certain alignments or the hardware has a stricter alignment requirement than the driver is advertising. If stricter alignment is required, then in no case should misaligned buffers from userspace be allowed through without being bounced or at least causing an error to be returned. It seems the mptsas driver could use blk_queue_dma_alignment() to advertise a stricter alignment requirement. If it does, sd does the right thing and bounces misaligned buffers (see block/blk-map.c line 57). The following patch to 2.6.34-rc5 makes my symptoms go away. I'm sure this is the wrong place for this code, but it gets my idea across. Acked-by: "Desai, Kashyap" Signed-off-by: James Bottomley commit d334aa79786a878e90af5b5c1b14109c1df85820 Author: Eric Moore Date: Thu Apr 22 10:47:40 2010 -0600 [SCSI] mpt2sas: DIF Type 2 Protection Support Adding DIF Type 2 protection support, as well as turning on 32 byte cdb's, and setting the cdb length for > 16 byte in the SCSI_IO->control parameter. Signed-off-by: Martin Petersen Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 7a42c4ff02d1bd764804a4ba36c2b839070c5e7d Merge: b37fa16 323f99c 80a506b Author: Joerg Roedel Date: Tue Jul 27 18:19:32 2010 +0200 Merge branches 'iommu-api/2.6.36' and 'amd-iommu/2.6.36' into iommu/2.6.36 commit 800f65bba8d2030b3fef62850e203f9f176625a8 Merge: 06b3cda b3190df Author: John W. Linville Date: Tue Jul 27 11:59:19 2010 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-commands.h commit f613dfcb3345dacb8cf99b7bb359acc1c18a1157 Author: Theodore Ts'o Date: Tue Jul 27 11:56:08 2010 -0400 ext4: check to make make sure bd_dev is set before dereferencing it There are some drivers which may not set bdev->bd_dev. So make sure it is non-NULL before dereferencing it. Google-Bug-Id: 1773557 Signed-off-by: "Theodore Ts'o" commit cc937db74bd5fe75f4cfebbfc4a04c1da10f0695 Author: Eric Sandeen Date: Tue Jul 27 11:56:08 2010 -0400 jbd2: Make barrier messages less scary Saying things like "sync failed" when a device does not support barriers makes users slightly more worried than they need to be; rather than talking about sync failures, let's just state the barrier-based facts. Signed-off-by: Eric Sandeen Signed-off-by: "Theodore Ts'o" commit e3570639c8b5f2c6a5018a2649c2b7c276af76d7 Author: Eric Sandeen Date: Tue Jul 27 11:56:08 2010 -0400 ext4: don't print scary messages for allocation failures post-abort I often get emails containing the "This should not happen!!" message, conveniently trimmed to remove things like: sd 0:0:0:0: [sda] Unhandled error code sd 0:0:0:0: [sda] Result: hostbyte=DID_OK driverbyte=DRIVER_TIMEOUT sd 0:0:0:0: [sda] CDB: Write(10): 2a 00 03 13 c9 70 00 00 28 00 end_request: I/O error, dev sda, sector 51628400 Aborting journal on device dm-0-8. EXT4-fs error (device dm-0): ext4_journal_start_sb: Detected aborted journal EXT4-fs (dm-0): Remounting filesystem read-only I don't think there is any value to the verbosity if the reason is due to a filesystem abort; it just obfuscates the root cause. Signed-off-by: Eric Sandeen Signed-off-by: "Theodore Ts'o" commit d889dc8382c4d71b6d538b7b13777bc1ec51df10 Author: Toshiyuki Okajima Date: Tue Jul 27 11:56:07 2010 -0400 ext4: fix EFBIG edge case when writing to large non-extent file By running the following reproducer, we can confirm that the write system call returns with 0 when it should return the error EFBIG. #!/bin/sh /bin/dd if=/dev/zero of=./img bs=1k count=1 seek=1024k > /dev/null 2>&1 /sbin/mkfs.ext3 -Fq ./img /bin/mount -o loop -t ext4 ./img /mnt /bin/touch /mnt/file strace /bin/dd if=/dev/zero of=/mnt/file conv=notrunc bs=1k count=1 seek=$((2194719883264/1024)) 2>&1 | /bin/egrep "write.* 1024\) = " /bin/umount /mnt exit Signed-off-by: Toshiyuki Okajima Signed-off-by: "Theodore Ts'o" Cc: Eric Sandeen commit 79e8303677fc15f508b9877e0fea1925c4add6f3 Author: Eric Sandeen Date: Tue Jul 27 11:56:07 2010 -0400 ext4: fix ext4_get_blocks references ext4_get_blocks got renamed to ext4_map_blocks, but left stale comments and a prototype littered around. Signed-off-by: Eric Sandeen Signed-off-by: "Theodore Ts'o" commit 62d2b5f2dcd3707b070efb16bbfdf6947c38c194 Author: Jan Kara Date: Tue Jul 27 11:56:07 2010 -0400 ext4: Always journal quota file modifications When journaled quota options are not specified, we do writes to quota files just in data=ordered mode. This actually causes warnings from JBD2 about dirty journaled buffer because ext4_getblk unconditionally treats a block allocated by it as metadata. Since quota actually is filesystem metadata, the easiest way to get rid of the warning is to always treat quota writes as metadata... Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit dcc7dae3cb21184a317f10a12250bd8d6f458077 Author: Cyrill Gorcunov Date: Tue Jul 27 11:56:07 2010 -0400 ext4: Fix potential memory leak in ext4_fill_super Under heavy memory pressure we may hit out of memory situation and as result kstrdup'ed options will not be freed. Fix it. Signed-off-by: Cyrill Gorcunov Signed-off-by: "Theodore Ts'o" commit 0c095c7f113e9fd05913d6e1b2cccbe356be039e Author: Theodore Ts'o Date: Tue Jul 27 11:56:06 2010 -0400 ext4: Don't error out the fs if the user tries to make a file too big If the user attempts to make a non-extent-mapped file to be too large, return EFBIG, but don't call ext4_std_err() which will end up marking the file system as containing an error. Thanks to Toshiyuki Okajima-san at Fujitsu for pointing this out. Signed-off-by: "Theodore Ts'o" commit 506bf2d82165c09b179a5077e01037f6270a4db3 Author: Eric Sandeen Date: Tue Jul 27 11:56:06 2010 -0400 ext4: allocate stripe-multiple IOs on stripe boundaries For some reason, today mballoc only allocates IOs which are exactly stripe-sized on a stripe boundary. If you have a multiple (say, a 128k IO on a 64k stripe) you may end up unaligned. It seems to me that a simple change to align stripe-multiple IOs on stripe boundaries would be a very good idea, unless this breaks some other mballoc heuristic for some reason... Reported-by: Mike Snitzer Signed-off-by: Eric Sandeen Signed-off-by: "Theodore Ts'o" commit 5b3ff237bef43b9e7fb7d1eb858e29b73fd664f9 Author: jiayingz@google.com (Jiaying Zhang) <> Date: Tue Jul 27 11:56:06 2010 -0400 ext4: move aio completion after unwritten extent conversion This patch is to be applied upon Christoph's "direct-io: move aio_complete into ->end_io" patch. It adds iocb and result fields to struct ext4_io_end_t, so that we can call aio_complete from ext4_end_io_nolock() after the extent conversion has finished. I have verified with Christoph's aio-dio test that used to fail after a few runs on an original kernel but now succeeds on the patched kernel. See http://thread.gmane.org/gmane.comp.file-systems.ext4/19659 for details. Signed-off-by: Jiaying Zhang Signed-off-by: "Theodore Ts'o" commit 552ef8024f909d9b3a7442d0ab0d48a22de24e9e Author: Christoph Hellwig Date: Tue Jul 27 11:56:06 2010 -0400 direct-io: move aio_complete into ->end_io Filesystems with unwritten extent support must not complete an AIO request until the transaction to convert the extent has been commited. That means the aio_complete calls needs to be moved into the ->end_io callback so that the filesystem can control when to call it exactly. This makes a bit of a mess out of dio_complete and the ->end_io callback prototype even more complicated. Signed-off-by: Christoph Hellwig Reviewed-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit 5c521830cf3dfcf7638d409d8e02ed21020c064f Author: Jiaying Zhang Date: Tue Jul 27 11:56:05 2010 -0400 ext4: Support discard requests when running in no-journal mode Issue discard request in ext4_free_blocks() when ext4 has no journal and is mounted with discard option. Signed-off-by: Jiaying Zhang Signed-off-by: "Theodore Ts'o" commit 47def82672b3ba4e7c5e9a4fe48a556f8684d0d6 Author: Theodore Ts'o Date: Tue Jul 27 11:56:05 2010 -0400 jbd2: Remove __GFP_NOFAIL from jbd2 layer __GFP_NOFAIL is going away, so add our own retry loop. Also add jbd2__journal_start() and jbd2__journal_restart() which take a gfp mask, so that file systems can optionally (re)start transaction handles using GFP_KERNEL. If they do this, then they need to be prepared to handle receiving an PTR_ERR(-ENOMEM) error, and be ready to reflect that error up to userspace. Signed-off-by: "Theodore Ts'o" commit 40389687382bf0ae71458e7c0f828137a438a956 Author: Amir G Date: Tue Jul 27 11:56:05 2010 -0400 ext4: Fix block bitmap inconsistencies after a crash when deleting files We have experienced bitmap inconsistencies after crash during file delete under heavy load. The crash is not file system related and I the following patch in ext4_free_branches() fixes the recovery problem. If the transaction is restarted and there is a crash before the new transaction is committed, then after recovery, the blocks that this indirect block points to have been freed, but the indirect block itself has not been freed and may still point to some of the free blocks (because of the ext4_forget()). So ext4_forget() should be called inside ext4_free_blocks() to avoid this problem. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit a271fe8527fe9637bdd82c97123b1356940dd84b Author: Joe Perches Date: Tue Jul 27 11:56:04 2010 -0400 ext4: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: "Theodore Ts'o" commit e5880d76aea443b04e07da19830da0f6f7494eef Author: Theodore Ts'o Date: Tue Jul 27 11:56:04 2010 -0400 ext4: fix potential NULL dereference while tracing The allocation_context pointer can be NULL. Signed-off-by: "Theodore Ts'o" commit 89eeddf03327e19cfcbb18efa98e5470e2f5c563 Author: Theodore Ts'o Date: Tue Jul 27 11:56:04 2010 -0400 ext4: Define s_jnl_backup_type in superblock This has been in use by e2fsprogs for a while; define it to keep the super block fields in sync. Signed-off-by: "Theodore Ts'o" commit 66e61a9e9504f61b9a928c9055368c81da613a50 Author: Theodore Ts'o Date: Tue Jul 27 11:56:04 2010 -0400 ext4: Once a day, printk file system error information to dmesg This allows us to grab any file system error messages by scraping /var/log/messages. This will make it easy for us to do error analysis across the very large number of machines as we deploy ext4 across the fleet. Signed-off-by: "Theodore Ts'o" commit 1c13d5c0872870cca3e612aa045d492ead9ab004 Author: Theodore Ts'o Date: Tue Jul 27 11:56:03 2010 -0400 ext4: Save error information to the superblock for analysis Save number of file system errors, and the time function name, line number, block number, and inode number of the first and most recent errors reported on the file system in the superblock. Signed-off-by: "Theodore Ts'o" commit c398eda0e43a791be0fca6f197a1e2bbb9f16070 Author: Theodore Ts'o Date: Tue Jul 27 11:56:40 2010 -0400 ext4: Pass line numbers to ext4_error() and friends Signed-off-by: "Theodore Ts'o" commit 60fd4da34d55a9cc0d857fc76dc12cf8cab4ed02 Author: Theodore Ts'o Date: Tue Jul 27 11:54:40 2010 -0400 ext4: Cleanup ext4_check_dir_entry so __func__ is now implicit Also start passing the line number to ext4_check_dir since we're going to need it in upcoming patch. Signed-off-by: "Theodore Ts'o" commit 408059495a372f1a9845672e58608fb6d8ec0c40 Author: Kevin Wells Date: Tue Jul 27 08:49:04 2010 -0700 ARM: Add support for the LPC32XX arch Add LPC32XX support in arch/arm/Kconfig and arch/arm/Makefile Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit 680b2862bcc7974c87d666529120a1cfe8fe2f8d Author: Kevin Wells Date: Tue Jul 27 08:46:22 2010 -0700 ARM: LPC32XX: Arch config menu supoport and makefiles Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit 19d95e1afae11b1a414491fd62e89a47cceadea9 Author: Kevin Wells Date: Tue Jul 27 08:44:37 2010 -0700 ARM: LPC32XX: Phytec 3250 platform support Platform support file for the PHY3250 mach id Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit fc982e1ceaeb4dea3f3f8ceba5b934cee292944a Author: Kevin Wells Date: Tue Jul 27 08:42:46 2010 -0700 ARM: LPC32XX: Misc support functions Misc support functions and prototypes used in the LPC32XX arch and platforms Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit e6e912c4964ce5976e508881207dfa96d5f856d7 Author: Kevin Wells Date: Tue Jul 27 08:42:07 2010 -0700 ARM: LPC32XX: Serial support code Serial port setup support code Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit 3c0e1947d9c171649f3bde13d1010ac6d7ce09c1 Author: Kevin Wells Date: Tue Jul 27 08:35:56 2010 -0700 ARM: LPC32XX: System suspend support Support for system suspend and resume Signed-off-by: Kevin Wells commit 80a506b8fdcfa868bb53eb740f928217d0966fc1 Author: Joerg Roedel Date: Tue Jul 27 17:14:24 2010 +0200 x86/amd-iommu: Export cache-coherency capability This patch exports the capability of the AMD IOMMU to force cache coherency of DMA transactions through the IOMMU-API. This is required to disable some nasty hacks in KVM when this capability is not available. Signed-off-by: Joerg Roedel commit 88ca895dd4e0e64ebd942adb7925fa60ca5b2a98 Author: Dave Martin Date: Tue Jul 27 11:46:12 2010 -0300 perf tools: Remove unneeded code for tracking the cwd in perf sessions Tidy-up patch to remove some code and struct perf_session data members which are no longer needed due to the previous patch: "perf tools: Don't abbreviate file paths relative to the cwd". LKML-Reference: Signed-off-by: Dave Martin Signed-off-by: Arnaldo Carvalho de Melo commit 361d13462585474267a0c41e956f1a1c19a93f17 Author: Dave Martin Date: Tue Jul 27 16:40:02 2010 +0100 perf report: Don't abbreviate file paths relative to the cwd This avoids around some problems where the full path is executables and DSOs it needed for finding debug symbols on platforms with separated debug symbol files such as Ubuntu. This is simpler than tracking an extra name for each image. The only impact should be that paths in verbose output from the perf tools become absolute, instead of relative to . LKML-Reference: Signed-off-by: Dave Martin Signed-off-by: Arnaldo Carvalho de Melo commit 0f0cbf7aa3d3460a3eb201a772326739a0c0210a Author: Arnaldo Carvalho de Melo Date: Mon Jul 26 17:13:40 2010 -0300 perf ui: New hists tree widget The stock newt checkbox tree widget we were using was not really suitable for hist entry + callchain browsing. The problems with it were manifold: - We needed to traverse the whole hist_entry rb_tree to add each entry + callchains beforehand. - No control over the colors used for each row So a new tree widget, based mostly on slang, was written. It extends the ui_browser class already used for annotate to allow the user to fold/unfold branches in the callchains tree, using extra fields in the symbol_map class that is embedded in hist_entry and callchain_node instances to store the folding state and when changing this state calculates the number of rows that are produced when showing a particular hist_entry instance. This greatly speeds up browsing as we don't have to upfront touch all the entries and only calculate callchain related operations when some callchain branch is actually unfolded. The memory footprint is also reduced as the data structure is not duplicated, just some extra fields for controling callchain state and to simplify the process of seeking thru entries (nr_rows, row_offset) were added. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 8d8c369f3d697e31e04133ca18b516952549ee33 Author: Arnaldo Carvalho de Melo Date: Mon Jul 26 14:08:48 2010 -0300 perf ui: Show the scroll bar over the left window frame So that we gain two columns and look more like classical (at least in TUIs) scroll bars bars. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 63160f73e7baa6618f19d7681bcab5be5c557205 Author: Arnaldo Carvalho de Melo Date: Mon Jul 26 13:47:15 2010 -0300 perf ui: Consider the refreshed dimensions in ui_browser__show When we call ui_browser__show we may have called ui_browser__refresh_dimensions to check if the maximum lenght for the contained entries changed, such as when zooming in and out DSOs or threads in the hist browser. For that to happen we must delete the old form, that will take care of deleting the vertical scrollbar, etc, and then recreate them, with the new dimensions. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 06daaaba7c211ca6a8227b9a54dbc86dd837f034 Author: Arnaldo Carvalho de Melo Date: Wed Jul 21 17:58:25 2010 -0300 perf hist: Introduce routine to measure lenght of formatted entry Will be used to figure out the window width needed in the new tree widget. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit b61b55ed995fd2765cd4ec0b22f0348dee272070 Author: Arnaldo Carvalho de Melo Date: Wed Jul 21 17:55:32 2010 -0300 perf ui: Restore SPACE as an alias to PGDN in annotate Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit b93cc9f19bade9e9ddd41958352168dc0d266f48 Author: Peter Ujfalusi Date: Mon Jul 26 09:59:15 2010 +0300 ASoC: TWL4030: Capture route DAPM event fix There is no need to handle POST_PMU, POST_PMD event with the Capture Route widget. It is enough to handle POST_REG event, since that will come when the user changes the routing, and we will switch the needed bits in the registers. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 852db46d55e85b475a72e665ca08d3317769ceef Author: John Stultz Date: Tue Jul 13 17:56:28 2010 -0700 clocksource: Add __clocksource_updatefreq_hz/khz methods To properly handle clocksources that change frequencies at the clocksource->enable() point, this patch adds a method that will update the clocksource's mult/shift and max_idle_ns values. Signed-off-by: John Stultz LKML-Reference: <1279068988-21864-12-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit f12a15be63d1de9a35971f35f06b73088fa25c3a Author: John Stultz Date: Tue Jul 13 17:56:27 2010 -0700 x86: Convert common clocksources to use clocksource_register_hz/khz This converts the most common of the x86 clocksources over to use clocksource_register_hz/khz. Signed-off-by: John Stultz LKML-Reference: <1279068988-21864-11-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit 0fb86b06298b6cd3205cac2e68a499f269282dac Author: John Stultz Date: Tue Jul 13 17:56:26 2010 -0700 timekeeping: Make xtime and wall_to_monotonic static This patch makes xtime and wall_to_monotonic static, as planned in Documentation/feature-removal-schedule.txt. This will allow for further cleanups to the timekeeping core. Signed-off-by: John Stultz LKML-Reference: <1279068988-21864-10-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit 8ab4351a4c888016620f43bde605b3d0964af339 Author: John Stultz Date: Tue Jul 13 17:56:25 2010 -0700 hrtimer: Cleanup direct access to wall_to_monotonic Provides an accessor function to replace hrtimer.c's direct access of wall_to_monotonic. This will allow wall_to_monotonic to be made static as planned in Documentation/feature-removal-schedule.txt Signed-off-by: John Stultz LKML-Reference: <1279068988-21864-9-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit 9f31f5774961a735687fee17953ab505b3df3abf Author: John Stultz Date: Tue Jul 13 17:56:24 2010 -0700 um: Convert to use read_persistent_clock This patch converts the um arch to use read_persistent_clock(). This allows it to avoid accessing xtime and wall_to_monotonic directly. Signed-off-by: John Stultz Cc: Jeff Dike LKML-Reference: <1279068988-21864-8-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit 7615856ebfee52b080c22d263ca4debbd0df0ac1 Author: John Stultz Date: Tue Jul 13 17:56:23 2010 -0700 timkeeping: Fix update_vsyscall to provide wall_to_monotonic offset update_vsyscall() did not provide the wall_to_monotoinc offset, so arch specific implementations tend to reference wall_to_monotonic directly. This limits future cleanups in the timekeeping core, so this patch fixes the update_vsyscall interface to provide wall_to_monotonic, allowing wall_to_monotonic to be made static as planned in Documentation/feature-removal-schedule.txt Signed-off-by: John Stultz Cc: Martin Schwidefsky Cc: Anton Blanchard Cc: Paul Mackerras Cc: Tony Luck LKML-Reference: <1279068988-21864-7-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit 06d518e3dfb25334282c7e38b4d7a4eada215f6d Author: John Stultz Date: Tue Jul 13 17:56:22 2010 -0700 powerpc: Cleanup xtime usage This removes powerpc's direct xtime usage, allowing for further generic timeekeping cleanups Signed-off-by: John Stultz Cc: Paul Mackerras Cc: Anton Blanchard LKML-Reference: <1279068988-21864-6-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit b0797b60d0067fe437baa97a743c7d9de98fd769 Author: John Stultz Date: Tue Jul 13 17:56:21 2010 -0700 powerpc: Simplify update_vsyscall Currently powerpc's update_vsyscall calls an inline update_gtod. However, both are straightforward, and there are no other users, so this patch merges update_gtod into update_vsyscall. Signed-off-by: John Stultz Cc: Anton Blanchard Cc: Paul Mackerras LKML-Reference: <1279068988-21864-5-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit 592913ecb87a9e06f98ddb55b298f1a66bf94c6b Author: John Stultz Date: Tue Jul 13 17:56:20 2010 -0700 time: Kill off CONFIG_GENERIC_TIME Now that all arches have been converted over to use generic time via clocksources or arch_gettimeoffset(), we can remove the GENERIC_TIME config option and simplify the generic code. Signed-off-by: John Stultz LKML-Reference: <1279068988-21864-4-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit ce3bf7ab22527183634a76512d9854a38615e4d5 Author: John Stultz Date: Tue Jul 13 17:56:19 2010 -0700 time: Implement timespec_add After accidentally misusing timespec_add_safe, I wanted to make sure we don't accidently trip over that issue again, so I created a simple timespec_add() function which we can use to replace the instances of timespec_add_safe() that don't want the overflow detection. Signed-off-by: John Stultz LKML-Reference: <1279068988-21864-3-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit 8c73626ab28527b7eb7f3061c027fbfe530c488c Author: John Stultz Date: Tue Jul 13 17:56:18 2010 -0700 x86: Fix vtime/file timestamp inconsistencies Due to vtime calling vgettimeofday(), its possible that an application could call time();create("stuff",O_RDRW); only to see the file's creation timestamp to be before the value returned by time. A similar way to reproduce the issue is to compare the vsyscall time() with the syscall time(), and observe ordering issues. The modified test case from Oleg Nesterov below can illustrate this: int main(void) { time_t sec1,sec2; do { sec1 = time(&sec2); sec2 = syscall(__NR_time, NULL); } while (sec1 <= sec2); printf("vtime: %d.000000\n", sec1); printf("time: %d.000000\n", sec2); return 0; } The proper fix is to make vtime use the same time value as current_kernel_time() (which is exported via update_vsyscall) instead of vgettime(). Thanks to Jiri Olsa for bringing up the issue and catching bugs in earlier verisons of this fix. Signed-off-by: John Stultz Cc: Jiri Olsa Cc: Oleg Nesterov LKML-Reference: <1279068988-21864-2-git-send-email-johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner commit c4a0208fff6cba5c7e22166ad7209322eab16bb3 Author: Kevin Wells Date: Fri Feb 26 15:53:41 2010 -0800 ARM: LPC32XX: GPIO, timer, and IRQ drivers Common drivers for the LPC32XX used on all platforms Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit b9cc4bf6656d5f349c283e6ac267b852b7a2e42e Author: Kevin Wells Date: Fri Feb 26 15:53:40 2010 -0800 ARM: LPC32XX: Clock driver Clock driver for the LPC32XX architecture Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit 343d3537917bd74648fa2a360b42f64ad5ec551d Author: Kevin Wells Date: Fri Feb 26 15:53:39 2010 -0800 ARM: LPC32XX: Debug and IRQ macros Debug (printascii) and IRQ handler macros for the LPC32XX arch Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit 437db5903653f6a8a736e77ad5c21a296d74299b Author: Kevin Wells Date: Fri Feb 26 15:53:38 2010 -0800 ARM: LPC32XX: Initial arch header files Header files for the LPC32xx arch Signed-off-by: Kevin Wells Signed-off-by: Uwe Kleine-König commit f5e2574e734650bbeb801a31cc99e628f9a027af Author: Rabin Vincent Date: Wed Jul 21 12:50:31 2010 +0100 ARM: 6239/1: mmci: let core poll for card detection Use the MMC core's ability to poll for card detection. This also has the advantage of doing the gpio_get_value from a workqueue instead of timer, allowing the gpio to be on a sleeping gpiochip. Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 528320db013b687c5f0150fd77eb4dc02ca328d1 Author: Rabin Vincent Date: Wed Jul 21 12:49:49 2010 +0100 ARM: 6238/1: mmci: fix multi block transfers Fix the data transfer size to allow multi block transfers to work. Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 4ce1d6cbf07271ab8f7cc47c3e27edeac08b58a7 Author: Rabin Vincent Date: Wed Jul 21 12:44:58 2010 +0100 ARM: 6237/1: mmci: use sg_miter API to fix multi-page sg handling The mmci driver's SG list iteration logic assumes that each SG entry spans only one page, and only maps and flushes one page of the sg. This is not a valid assumption. Fix it by converting the driver to the sg_miter API, which correctly handles sgs which span multiple pages. Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 2c39c9e149f45ec15a6985cb06ec8f6d904bb35e Author: Russell King Date: Tue Jul 27 08:50:16 2010 +0100 ARM: Fix section build warnings for AMBA drivers Found in the Versatile build: WARNING: drivers/built-in.o(.data+0x14c): Section mismatch in reference from the variable pl061_gpio_driver to the (unknown reference) .init.data:(unknown) The variable pl061_gpio_driver references the (unknown reference) __initdata (unknown) WARNING: drivers/built-in.o(.data+0x40f8): Section mismatch in reference from the variable pl011_driver to the (unknown reference) .init.data:(unknown) The variable pl011_driver references the (unknown reference) __initdata (unknown) WARNING: drivers/built-in.o(.data+0x5ab4): Section mismatch in reference from the variable pl031_driver to the (unknown reference) .init.data:(unknown) The variable pl031_driver references the (unknown reference) __initdata (unknown) Basically, amba_id structures must not be __initdata. Also fix: WARNING: drivers/built-in.o(.data+0x138): Section mismatch in reference from the variable pl061_gpio_driver to the function .init.text:pl061_probe() The variable pl061_gpio_driver references the function __init pl061_probe() which is an incorrectly annotated probe function. Fix it to reflect the other AMBA bus probe functions by removing the __init attributation. Signed-off-by: Russell King commit 3d3f78d752bfada5b6041f2f7bd0833d8bdf7a4a Author: Russell King Date: Mon Jul 26 13:31:27 2010 +0100 ARM: call machine_shutdown() from machine_halt(), etc x86 calls machine_shutdown() from the various machine_*() calls which take the machine down ready for halting, restarting, etc, and uses this to bring the system safely to a point where those actions can be performed. Such actions are stopping the secondary CPUs. So, change the ARM implementation of these to reflect what x86 does. This solves kexec problems on ARM SMP platforms, where the secondary CPUs were left running across the kexec call. Signed-off-by: Russell King commit 5388a6b266e9c3357353332ba0cd5549082887f1 Author: Russell King Date: Mon Jul 26 13:19:43 2010 +0100 ARM: SMP: Always enable clock event broadcast support The TWD local timers are unable to wake up the CPU when it is placed into a low power mode, eg. C3. Therefore, we need to adapt things such that the TWD code can cope with this. We do this by always providing a broadcast tick function, and marking the fact that the TWD local timer will stop in low power modes. This means that when the CPU is placed into a low power mode, the core timer code marks this fact, and allows an IPI to be given to the core. Tested-by: Santosh Shilimkar Signed-off-by: Russell King Cc: Catalin Marinas Cc: Thomas Gleixner commit 9ca03a21e320a6bf44559323527aba704bcc8772 Author: Russell King Date: Mon Jul 26 12:22:12 2010 +0100 ARM: Factor out common code from cpu_proc_fin() All implementations of cpu_proc_fin() start by disabling interrupts and then flush caches. Rather than have every processors proc_fin() implementation do this, move it out into generic code - and move the cache flush past setup_mm_for_reboot() (so it can benefit from having caches still enabled.) This allows cpu_proc_fin() to become independent of the L1/L2 cache types, and eventually move the L2 cache flushing into the L2 support code. Signed-off-by: Russell King commit b8ab5397bcbd92e3fd4a9770e0bf59315fa38dab Author: Kirill A. Shutemov Date: Mon Jul 26 11:20:41 2010 +0100 ARM: 6268/1: ARMv6K and ARMv7 use fault statuses 3 and 6 as Access Flag fault Statuses 3 (0b00011) and 6 (0x00110) of DFSR are Access Flags faults on ARMv6K and ARMv7. Let's patch fsr_info[] at runtime if we are on ARMv7 or later. Unfortunately, we don't have runtime check for 'K' extension, so we can't check for it. Signed-off-by: Kirill A. Shutemov Signed-off-by: Russell King commit 993bf4ec8c2a2b7979389ab196bf2fe217117158 Author: Kirill A. Shutemov Date: Thu Jul 22 13:23:25 2010 +0100 ARM: 6256/1: Check arch version and modify fsr_info[] depends on it at runtime Signed-off-by: Kirill A. Shutemov Signed-off-by: Russell King commit 33a9c41bf5d8adae9d882513e617c4c645195e71 Author: Kirill A. Shutemov Date: Thu Jul 22 13:20:22 2010 +0100 ARM: 6255/1: Workaround infinity loop in handling of translation faults On ARM one Linux PGD entry contains two hardware entries (see page tables layout in pgtable.h). We normally guarantee that we always fill both L1 entries. But create_mapping() doesn't follow the rule. It can create inidividual L1 entries, so here we have to call pmd_none() check in do_translation_fault() for the entry really corresponded to address, not for the first of pair. Signed-off-by: Kirill A. Shutemov Signed-off-by: Russell King commit 6338a6aa7c082f11d55712251e14178c68bf5869 Author: Kirill A. Shutemov Date: Thu Jul 22 13:18:19 2010 +0100 ARM: 6269/1: Add 'code' parameter for hook_fault_code() Add one more parameter to hook_fault_code() to be able to set 'code' field of struct fsr_info. Signed-off-by: Kirill A. Shutemov Signed-off-by: Russell King commit 3dc91aff9c3ef54b15cdaf32f61f973489fe69eb Author: Kirill A. Shutemov Date: Thu Jul 22 13:16:49 2010 +0100 ARM: 6252/1: Use SIGBUS for unaligned access instead of SIGILL POSIX specify to use signal SIGBUS with code BUS_ADRALN for invalid address alignment. Signed-off-by: Kirill A. Shutemov Signed-off-by: Russell King commit c1ba6ba3dd4c127dd1b14125ac7feed43d974436 Author: eric miao Date: Thu Jul 22 09:55:53 2010 +0100 ARM: 6251/1: Make SPARSE_IRQ a hidden option SPARSE_IRQ doesn't need to be a visible option, only those platforms supporting that will select it. Signed-off-by: Eric Miao Signed-off-by: Russell King commit 5bc23d32d86a132b5636a48dca0fa2528ef69ff9 Author: Russell King Date: Sun Jul 25 08:57:02 2010 +0100 ARM: DMA coherent allocator: align remapped addresses The DMA coherent remap area is used to provide an uncached mapping of memory for coherency with DMA engines. Currently, we look for any free hole which our allocation will fit in with page alignment. However, this can lead to fragmentation of the area, and allows small allocations to cross L1 entry boundaries. This is undesirable as we want to move towards allocating sections of memory. Align allocations according to the size, limiting the alignment between the page and section sizes. Signed-off-by: Russell King commit d746196361c9c635128249bb6cf13e709ae6abe1 Author: Russell King Date: Mon Jul 26 10:29:13 2010 +0100 ARM: use generic ioremap_page_range() We don't need our own implementation of this, use the generic library implementation instead. Signed-off-by: Russell King commit ac3e3fb424d44109dda3b1a3459e1b30fa60ac4a Author: Linus Walleij Date: Wed Jun 2 20:40:22 2010 +0100 ARM: 6158/2: PL011 baudrate extension for ST-Ericssons derivative Implementation of the ST-Ericsson baudrate extension in the PL011 block. In this modified variant it is possible to change the sampling factor from 16 to 8, and thanks to this we can get higher baudrates while still using the same peripheral clock. Also replace the simple division to determine the baud divisor with DIV_ROUND_CLOSEST() rather than a simple integer division. Cc: Alessandro Rubini Cc: Jerzy Kasenberg Signed-off-by: Marcin Mielczarczyk Signed-off-by: Linus Walleij Signed-off-by: Russell King commit ec489aa8f993f8d2ec962ce113071faac482aa27 Author: Linus Walleij Date: Wed Jun 2 08:13:52 2010 +0100 ARM: 6157/2: PL011 TX/RX split of LCR for ST-Ericssons derivative In the ST-Ericsson version of the PL011 the TX and RX have different control registers. Cc: Alessandro Rubini Signed-off-by: Marcin Mielczarczyk Signed-off-by: Linus Walleij Signed-off-by: Russell King commit c58bbd39f876955be6e072748fdfe2b671f9d939 Author: Will Deacon Date: Thu Jul 8 10:59:59 2010 +0100 ARM: 6213/1: atomic64_test: add ARM as supported architecture ARM has support for the atomic64_dec_if_positive operation so ensure that it is tested by the atomic64_test routine. Acked-by: Nicolas Pitre Signed-off-by: Will Deacon Signed-off-by: Russell King commit 4708ac49305bbcd511600d4af71a4c6dca15af65 Merge: 1dbd30e 2f7989e Author: Russell King Date: Tue Jul 27 10:42:48 2010 +0100 Merge branch 'origin' into misc commit 1dbd30e9890fd69e50b17edd70ca583546b0fe4e Author: Linus Walleij Date: Mon Jul 12 21:53:28 2010 +0100 ARM: 6225/1: make TCM allocation static and common for all archs This changes the TCM handling so that a fixed area is reserved at 0xfffe0000-0xfffeffff for TCM. This areas is used by XScale but XScale does not have TCM so the mechanisms are mutually exclusive. This change is needed to make TCM detection more dynamic while still being able to compile code into it, and is a must for the unified ARM goals: the current TCM allocation at different places in memory for each machine would be a nightmare if you want to compile a single image for more than one machine with TCM so it has to be nailed down in one place. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit b20d02e37eeabf34b40c3995c2dbb0af53da3c57 Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: increment program version Since version 0.3 from Kristian's repository, there should actually be no change in functionality except for the x86-64 fix. Nevertheless, make it distinct from the original nosy-dump --- just in case and also because of potential future changes. Signed-off-by: Stefan Richter commit ddbfe74958ec21c3d58d5a46dd6f4048bc7969a4 Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: remove unused code Signed-off-by: Stefan Richter commit 83ef7c75939f45f8da46976cdca4db0727276a2d Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: use linux/firewire-constants.h Signed-off-by: Stefan Richter commit 269fe1023191a338736c71ba4f4db13839747772 Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: break up a deeply nested function Signed-off-by: Stefan Richter commit 468066f771032ad4bef4a906dfe0b0a55593d64d Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: make some symbols static or const Signed-off-by: Stefan Richter commit 92c16f7e9c65f9a271c6bd5020279b3e37989672 Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: change to kernel coding style This changes only - whitespace - C99 initializers - comment style - order of #includes - if { } else { } bracing Signed-off-by: Stefan Richter commit a8461c0f3bfffe752fc62ce3960eb827463e90b5 Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: work around segfault in decode_fcp If I run "nosy-dump --view=transaction" with my camcorder on battery instead of mains, it segfaults very quickly because of !t->request. Perhaps this is because of increased likelyhood of incomplete transactions (ack_busy when host writes to camcorder's FCP_Request) and a bug deeper in nosy-dump's transaction housekeeping. This is a quick workaround to get me going. Signed-off-by: Stefan Richter commit 1bcc69fb6a48edb3ddf2e8c42f1d1c242196bf74 Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: nosy-dump: fix it on x86-64 Replace 'unsigned long' and the (unaffected) 'unsigned int' by uint32_t if they represent quadlets. Signed-off-by: Stefan Richter commit 9f6d3c4b76314c40c866a935d78c80fd284768bd Author: Stefan Richter Date: Thu Jul 22 11:58:05 2010 +0200 tools/firewire: add userspace front-end of nosy This adds nosy-dump, the userspace part of nosy, the IEEE 1394 traffic sniffer for Texas Instruments PCILynx/ PCILynx2 based cards. Author is Kristian Høgsberg. The files added here are taken from git://anongit.freedesktop.org/~krh/nosy commit ee29be97 (2009-11-10) with the following changes by Stefan Richter: - Parts pertaining to the kernel module removed from Makefile. - dist target removed from the Makefile. - Mentioned nosy-dump in the Kconfig help to nosy's kernel component. - Add copyright notice to nosy-dump.c. This is a duplicate of the respective notice in the kernel component nosy.c except for a time span of 2002 - 2006, according to Kristian's git log. "git shortlog decode-fcp.c list.h nosy-dump.[ch]" from nosy's git repository: Jonathan Woithe (1): Save logs on Ctrl-C Kristian Høgsberg (11): Pull over nosy from mercurial repo. Remove some fields from default view, add logging feature. Use infinite time out for poll(), mark more detail fields. Fix byte ordering macro. Add decoding of iso data and lock packets. Add flag to indicate data length field. Add cycle start packet decoding, add --iso and --cycle-start flags. Distinguish between phy-packets and 0-length iso data. Fix transaction and stats view. Add simple AV/C decoder. Don't break down on big payloads. Signed-off-by: Stefan Richter Acked-by: Kristian Høgsberg commit aed69d2b79bb5af008526998e466da6d0eac7ae5 Author: Stefan Richter Date: Thu Jul 22 19:50:32 2010 +0200 firewire: nosy: note ioctls in ioctl-number.txt These are the ioctls for the special-purpose misc device /dev/nosy, the interface to the IEEE 1394 packet sniffer/ protocol analyzer driver. Currently only the numbers 00...02 are in use; let's block a few more for unforeseen use cases. Cc: Randy Dunlap Signed-off-by: Stefan Richter commit 7429b17d30a19fd52a0c07de9d3959746d321e15 Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: use generic printk macros Replace home-grown printk wrapper macros by ones from kernel.h and device.h. Also raise the log level in set_phy_reg() from debug to error because these are really error conditions. Could even be WARN_ON. Lower the log level in the device probe and driver shutdown from notice to info. Signed-off-by: Stefan Richter commit fd8c8d46ca9402c15383d2cf0bc3ee7740de3b62 Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: endianess fixes and annotations 1.) The DMA programs (struct pcl) are PCI-endian = little endian data (except for the 3rd quadlet in a PCL which the controller does not touch). Annotate them as such. Fix all accesses of the PCL to work with big endian CPUs also. Not actually tested, I only have a little endian PC to test with. This includes replacement of a bitfield struct pcl_status by open-coded shift and mask operations. 2.) The two __attribute__ ((packed)) at struct pcl are not really required since it consists of u32/__le32 only, i.e. there will be no padding with or without the attribute. 3.) The received IEEE 1394 data are byteswapped by the controller from IEEE 1394 endian = big endian to PCI endian = little endian because the PCL_BIGENDIAN control bit is set. Therefore annotate the DMA buffer as a __le32 array. Fix the one access of the DMA buffer (the check of the transaction code of link packets) to work with big endian CPUs. Also fix the two accesses of the client bounce buffer (the reading of packet length). 4.) Add a comment to the userspace ABI header that all of the data gets out as little endian data, except for the timestamp which is CPU endian. (We could make it little endian too, but why? Vice versa, an ioctl could be added to dump packet data in big endian byte order...) Signed-off-by: Stefan Richter commit c89db7b8bc88d8288dcfbe7a885b950d2560d564 Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: annotate __user pointers and __iomem pointers Signed-off-by: Stefan Richter commit 424d66cedae8bebb00fdb917fc8430f7b8a655cf Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: fix device shutdown with active client Fix race between nosy_open() and remove_card() by replacing the unprotected array of card pointers by a mutex-protected list of cards. Make card instances reference-counted and let each client hold a reference. Notify clients about card removal via POLLHUP in poll()'s events bitmap; also let read() fail with errno=ENODEV if the card was removed and everything in the buffer was read. Signed-off-by: Stefan Richter commit b6d9c125e6610591c04ca9045f641e35ce1a9226 Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: handle errors in device probe and add a missing pci_disable_device() to device shutdown. Signed-off-by: Stefan Richter commit 165476671f731b4c3d6cf401d0e1886f4a4f4a8e Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: fix IRQ handler for card ejection Untested, I don't have a PCILynx CardBus card. Signed-off-by: Stefan Richter commit 55e77c06c6017a70630cf599770369b8ba07c841 Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: unroll some simple functions nosy_start/stop_snoop() and nosy_add/remove_client() are simple enough to be inlined into their callers. Signed-off-by: Stefan Richter commit 685c3f80b6d88478a6428676f9daab59faf3cd4b Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: use flagless variants of spinlock accessors nosy_start/stop_snoop() are always only called by the ioctl method, i.e. with IRQs enabled. packet_handler() and bus_reset_handler() are always only called by the IRQ handler. Hence neither one needs to track IRQ flags. To underline the call context of packet_handler() and bus_reset_handler(), rename these functions to *_irq_handler(). Signed-off-by: Stefan Richter commit a2d39db9dec0e7e403f54c9cf98b7dbc82b4c44a Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: fix list corruption by NOSY_IOC_STOP nosy_stop_snoop() would blow up the second time it was called without nosy_start_snoop() in between. Signed-off-by: Stefan Richter commit c7b2a99c66e7b40d8843a70f2981e375eeedf062 Author: Stefan Richter Date: Thu Jul 22 11:56:38 2010 +0200 firewire: nosy: convert to unlocked ioctl The required serialization of NOSY_IOC_START and NOSY_IOC_STOP is already provided by the client_list_lock. NOSY_IOC_FILTER does not really require serialization since accesses to tcode_mask are atomic on any sane CPU architecture. Nevertheless, make it explicit that we want this to be atomic by means of client_list_lock (which also surrounds the other tcode_mask access in the IRQ handler). While we are at it, change the type of tcode_mask to u32 for consistency with the user API. NOSY_IOC_GET_STATS does not require serialization against itself. But there is a bug here regarding concurrent updates of the two counters by the IRQ handler. Fix it by taking the client_list_lock in this ioctl too. Signed-off-by: Stefan Richter commit b5e47729043c9224b21ab3dc7c63e8a38dbb4923 Author: Stefan Richter Date: Tue Jul 27 10:28:30 2010 +0200 firewire: nosy: misc cleanups Extend copyright note to 2007, c.f. Kristian's git log. Includes: - replace some by - add required indirectly included - order alphabetically Coding style related changes: - change to utf8 - normalize whitespace - normalize comment style - remove usages of __FUNCTION__ - remove an unnecessary cast from void * Const and static declarations: - driver_name is not const in pci_driver.name, drop const qualifier - driver_name can be taken from KBUILD_MODNAME - the global variable minors[] can and should be static - constify struct file_operations instance Data types: - Remove unused struct member struct packet.code. struct packet is only used for driver-internal bookkeeping; it does not appear on the wire or in DMA programs or the userspace ABI. Hence the unused member .code can be removed without worries. Preprocessor macros: - unroll a preprocessor macro that containd a return - use list_for_each_entry Printk: - add missing terminating \n in some format strings Signed-off-by: Stefan Richter commit 286468210d83ce0ca1e37e346ed9f4457a161650 Author: Stefan Richter Date: Tue Jul 27 10:26:33 2010 +0200 firewire: new driver: nosy - IEEE 1394 traffic sniffer This adds the traffic sniffer driver for Texas Instruments PCILynx/ PCILynx2 based cards. The use cases for nosy are analysis of nonstandard protocols and as an aid in development of drivers, applications, or firmwares. Author of the driver is Kristian Høgsberg. Known contributers are Jody McIntyre and Jonathan Woithe. Nosy programs PCILynx chips to operate in promiscuous mode, which is a feature that is not found in OHCI-1394 controllers. Hence, only special hardware as mentioned in the Kconfig help text is suitable for nosy. This is only the kernelspace part of nosy. There is a userspace interface to it, called nosy-dump, proposed to be added into the tools/ subdirectory of the kernel sources in a subsequent change. Kernelspace and userspave component of nosy communicate via a 'misc' character device file called /dev/nosy with a simple ioctl() and read() based protocol, as described by nosy-user.h. The files added here are taken from git://anongit.freedesktop.org/~krh/nosy commit ee29be97 (2009-11-10) with the following changes by Stefan Richter: - Kconfig and Makefile hunks are written from scratch. - Commented out version printk in nosy.c. - Included missing , reported by Stephen Rothwell. "git shortlog nosy{-user.h,.c,.h}" from nosy's git repository: Jonathan Woithe (2): Nosy updates for recent kernels Fix uninitialised memory (needed for 2.6.31 kernel) Kristian Høgsberg (5): Pull over nosy from mercurial repo. Use a misc device instead. Add simple AV/C decoder. Don't break down on big payloads. Set parent device for misc device. As a low-level IEEE 1394 driver, its files are placed into drivers/firewire/ although nosy is not part of the firewire driver stack. I am aware of the following literature from Texas Instruments about PCILynx programming: SCPA020A - PCILynx 1394 to PCI Bus Interface TSB12LV21BPGF Functional Specification SLLA023 - Initialization and Asynchronous Programming of the TSB12LV21A 1394 Device Signed-off-by: Stefan Richter Acked-by: Kristian Høgsberg commit 7899f81fe4aa76b7ff26293f9ef670b3d53e58aa Merge: e5de3df cd7643b Author: Takashi Iwai Date: Tue Jul 27 10:16:04 2010 +0200 Merge branch 'devel' of git.alsa-project.org:alsa-kernel into topic/misc commit a3e5bb42898d10cff1d054d4b115d4dd608c0566 Author: Russell King Date: Tue Jul 27 08:59:55 2010 +0100 ARM: Versatile: fix section mismatch WARNING: vmlinux.o(.text+0xbf38): Section mismatch in reference from the function pci_versatile_scan_bus() to the function .devinit.text:pci_scan_bus_parented() The function pci_versatile_scan_bus() references the function __devinit pci_scan_bus_parented(). Signed-off-by: Russell King commit a9deb137e4eb94d0a4fa0c3535b2c056d9363bef Author: Russell King Date: Thu Jul 1 18:35:07 2010 +0100 ARM: Remove unnecessary call to find_limits() Signed-off-by: Russell King commit e07b9e08601b400aee7e076e7b31799d3dd48c1e Author: Russell King Date: Thu Jul 1 12:03:29 2010 +0100 ARM: LMB: convert pfn_valid to use LMB Signed-off-by: Russell King commit eda2e5dcc914b4d70f665443efc9780e89a5e5c1 Author: Russell King Date: Thu Jul 1 12:00:57 2010 +0100 ARM: LMB: Convert arm_memory_present() to use LMB memory information Signed-off-by: Russell King commit 98864ff58dd2b8ef9e72b0d2c70f34e7ff24a2ee Author: Russell King Date: Sat May 22 23:59:11 2010 +0100 ARM: OMAP: Convert OMAPFB and VRAM SDRAM reservation to LMB Signed-off-by: Russell King commit 8d717a52d1b0959128be5134dd12608e8e4f2115 Author: Russell King Date: Sat May 22 19:47:18 2010 +0100 ARM: Convert platform reservations to use LMB rather than bootmem Signed-off-by: Russell King commit 2778f62056ada442414392d7ccd41188bb631619 Author: Russell King Date: Fri Jul 9 16:27:52 2010 +0100 ARM: initial LMB trial Acked-by: Tony Lindgren Signed-off-by: Russell King commit 4bb2e27db10abc555dfabd73661485fb75e4e97d Author: Russell King Date: Thu Jul 1 18:33:29 2010 +0100 ARM: early_pte_alloc() Provide a common function for allocating early PTE tables. Signed-off-by: Russell King commit 39ae702cd3b8b9d30693b73ad1a3d74c799b5b1a Author: Rabin Vincent Date: Mon Jul 26 11:12:15 2010 +0100 ARM: 6267/1: mop500: add AB8500 interrupt support Add the platform data to enable AB8500 interrupt support. Acked-by: Linus Walleij Acked-by: Srinidhi Kasagar Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit feb8f47809fcc60250d28a6ddabc0ddbe9360d7c Author: Emil Tantilov Date: Mon Jul 26 23:37:21 2010 -0700 e1000: use netif_ instead of netdev_ This patch restores the ability to set msglvl through ethtool. The issue was introduced by: commit 675ad47375c76a7c3be4ace9554d92cd55518ced Reported-by: Joe Perches Signed-off-by: Emil Tantilov Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit b43275d661baa5f1f72dacd9033d6eda09d9fe87 Author: Jeremy Fitzhardinge Date: Mon Jul 26 10:38:45 2010 -0700 xen/pvhvm: fix build problem when !CONFIG_XEN x86_hyper_xen_hvm is only defined when Xen is enabled in the kernel config. Signed-off-by: Jeremy Fitzhardinge commit 43df95c44e71d009b5a73f104ff183f73af9526f Author: Jeremy Fitzhardinge Date: Wed Jul 21 22:51:39 2010 -0700 xenfs: enable for HVM domains too Signed-off-by: Jeremy Fitzhardinge commit 5915100106b8f14a38053ad6c03a664d208aeaa2 Author: Stefano Stabellini Date: Thu Jun 17 14:22:52 2010 +0100 x86: Call HVMOP_pagetable_dying on exit_mmap. When a pagetable is about to be destroyed, we notify Xen so that the hypervisor can clear the related shadow pagetable. Signed-off-by: Stefano Stabellini Signed-off-by: Jeremy Fitzhardinge commit c1c5413ad58cb73267d328e6020268aa2e50d8ca Author: Stefano Stabellini Date: Fri May 14 12:44:30 2010 +0100 x86: Unplug emulated disks and nics. Add a xen_emul_unplug command line option to the kernel to unplug xen emulated disks and nics. Set the default value of xen_emul_unplug depending on whether or not the Xen PV frontends and the Xen platform PCI driver have been compiled for this kernel (modules or built-in are both OK). The user can specify xen_emul_unplug=ignore to enable PV drivers on HVM even if the host platform doesn't support unplug. Signed-off-by: Stefano Stabellini Signed-off-by: Jeremy Fitzhardinge commit 409771d258e9dd71c30f3c9520fd2b796ffc40f0 Author: Stefano Stabellini Date: Fri May 14 12:48:19 2010 +0100 x86: Use xen_vcpuop_clockevent, xen_clocksource and xen wallclock. Use xen_vcpuop_clockevent instead of hpet and APIC timers as main clockevent device on all vcpus, use the xen wallclock time as wallclock instead of rtc and use xen_clocksource as clocksource. The pv clock algorithm needs to work correctly for the xen_clocksource and xen wallclock to be usable, only modern Xen versions offer a reliable pv clock in HVM guests (XENFEAT_hvm_safe_pvclock). Using the hpet as clocksource means a VMEXIT every time we read/write to the hpet mmio addresses, pvclock give us a better rating without VMEXITs. Same goes for the xen wallclock and xen_vcpuop_clockevent Signed-off-by: Stefano Stabellini Signed-off-by: Don Dutile Signed-off-by: Jeremy Fitzhardinge commit 66cc42a4bc23a5f621407d1c23b9fe29d41c92c6 Author: Kulikov Vasiliy Date: Sun Jul 25 22:25:42 2010 +0000 usbnet: use jiffies in schedule_timeout(), not msecs usbnet_terminate_urbs() uses schedule_timeout() with argument 3 msecs. schedule_timeout() uses jiffies as argument, so convert msecs to jiffies with msecs_to_jiffies(). Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit db5824dd3d632acd79094b81e07288ba05ae2cc1 Author: Richard Röjfors Date: Sun Jul 25 22:51:05 2010 +0000 ks8842: Support 100Mbps when accessed via timberdale This patch removes the code which disables 100Mbps advertising when the ks8842 is accessed via timberdale. At higher speed it's good to be nice to the internal state machine of timberdale by acking interrupts. That is done by a write to the interrupt ack register (IAR). Signed-off-by: Richard Röjfors Signed-off-by: David S. Miller commit 7b7b0b90592a023ac8946b29cca871bf17741fab Author: Dan Carpenter Date: Sun Jul 25 21:23:59 2010 +0000 caif: handle snprintf() return snprintf() returns the number of bytes that would have been written. It can be larger than the size of the buffer. The current code won't overflow, but people cut and paste this stuff so lets do it right and also make the static checkers happy. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 652c6717465dbd0091dbe04ed9be2f7e59c03c7d Author: Changli Gao Date: Sun Jul 25 23:21:05 2010 +0000 genetlink: use genl_register_family_with_ops() Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit a256be70c57d6f8c827d09d645a1f6fe9330af72 Author: Changli Gao Date: Mon Jul 26 20:59:42 2010 -0700 drop_monitor: use genl_register_family_with_ops() [ Fix unused local variable build warnings. -DaveM ] Signed-off-by: Changli Gao Acked-by: Neil Horman Signed-off-by: David S. Miller commit 416c2f9cf5524cb53392cbcf99fef7aa687192ce Author: Changli Gao Date: Sun Jul 25 20:46:01 2010 +0000 genetlink: cleanup code according to CodingStyle If the function is exported, the EXPORT* macro for it should follow immediately after the closing function brace line. Signed-off-by: Changli Gao ---- net/netlink/genetlink.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) Signed-off-by: David S. Miller commit f78f09f76540c9a986bc321a186a291f4bb40925 Author: Jonas Bonn Date: Mon Jul 26 18:45:05 2010 -0700 ethoc: add devinit/devexit section initializers Signed-off-by: Jonas Bonn Signed-off-by: David S. Miller commit 08451e2587dc8d8c34cbbb8edc88a6e4fa8946e6 Author: Nick Nunley Date: Mon Jul 26 13:15:29 2010 +0000 igb: restore EEPROM values of MDICNFG on reset with 82580 On a reset the MDICNFG.Destination and MDICNFG.COM_MDIO register fields are not restored to the EEPROM default. This patch modifies the reset code to read the EEPROM and restore the default values. Signed-off-by: Nicholas Nunley Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 4085f746db1b7d6b292cf27cc713a13a1fcb2681 Author: Nick Nunley Date: Mon Jul 26 13:15:06 2010 +0000 igb: add support for SGMII-based MDIO PHYs This patch adds support for external MDIO PHYs, in addition to the standard SFP support for SGMII PHYs over the I2C interface. Signed-off-by: Nicholas Nunley Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit ea7afd31fb45d2d5d1b1e4cf347a688370feee91 Author: Jean Delvare Date: Mon Jul 26 12:20:43 2010 +0000 e1000e: Drop a useless statement err is set again a few lines below. Cc: Jesse Brandeburg Signed-off-by: Jean Delvare Acked-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 125ed824d3d03f5c470cf98aca757fd9423c49ab Author: Mike McCormack Date: Mon Jul 26 22:58:54 2010 +0900 staging: rtl8192e: Delete some redundant code Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit 5976b94353632cb7ee3fb4a01bd54444efd29b1b Author: Mike McCormack Date: Mon Jul 26 22:58:44 2010 +0900 staging: rtl8192e: Make arrays const Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit f0161757733f924cefe5ae45d012aef1daccebeb Author: Mike McCormack Date: Mon Jul 26 22:58:36 2010 +0900 staging: rtl8192e: Remove useless debug code Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit cf3d3d38e7b42b75689fe895d09f197922c109c5 Author: Mike McCormack Date: Mon Jul 26 22:58:26 2010 +0900 staging: rtl8192e: Remove macro already in the kernel Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit 76e8cd248fe5cdff6bfb2bda970df5bcda3604c2 Author: Mike McCormack Date: Mon Jul 26 22:58:16 2010 +0900 staging: rtl8192e: Delete unused code Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit 881a975b6daeedb9a7962fd7b6ceccca422fe51b Author: Mike McCormack Date: Mon Jul 26 22:58:03 2010 +0900 staging: rtl8192e: Make structs const, move prototypes to top Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit 559fba5e2af3e3f9ff4fcf0a00913c7af4cc16e7 Author: Mike McCormack Date: Mon Jul 26 22:57:52 2010 +0900 staging: rtl8192e: Make functions static Move some function prototypes to the top of the file and make some functions static. Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit 4a533365b477497125204c9e29fa204105093105 Author: Mike McCormack Date: Mon Jul 26 22:57:35 2010 +0900 staging: rtl8192e: Make static variables const Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit ab2161a0a078e7c600b0b6434ec071b72d76608f Author: Mike McCormack Date: Mon Jul 26 22:57:24 2010 +0900 staging: rtl8192e: Make some static structs const Signed-off-by: Mike McCormack Signed-off-by: Greg Kroah-Hartman commit 4d74c86f6ad8bb2c8997027f976ed2e358cd6715 Author: Neil Leeder Date: Mon Jul 26 15:00:23 2010 -0400 staging: msm: remove video drivers for obsolete platforms Start cleaning up the msm framebuffer in preparation for integration with mainline. Remove unused drivers. Signed-off-by: Neil Leeder Signed-off-by: Greg Kroah-Hartman commit 5d92fe3387d086fc2f10426fbdb6b86d6cce5a47 Author: Larry Finger Date: Sun Jul 25 16:14:53 2010 -0500 staging: rt2870: Add USB ID for Belkin F6D4050 v2 Device missing from current tables. Signed-off-by: Larry Finger Tested-by: Rod Huffaker Cc: Stable Signed-off-by: Greg Kroah-Hartman commit 54d2379c20d814ced657cbc2c4ead8d1f8389fa2 Author: Haiyang Zhang Date: Fri Jul 23 21:24:42 2010 +0000 staging: hv: Fix Kconfig dependency of hv_blkvsc LBDAF is not available nor necessary on 64BIT kernel. This patch fixed the dependency for hv_blkvsc module on 64BIT kernel. Thanks vrataj2 [vrataj2@comcast.net] for reporting this problem. Reported-by: vrataj2 Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Cc: stable Signed-off-by: Greg Kroah-Hartman commit 54009058129fd9ccc67c12d7e084aa6eda420132 Author: Matthias Brugger Date: Fri Jul 23 22:28:56 2010 +0200 Staging: IIO: typo in Documentation/overview.txt Signed-off-by: Matthias Brugger Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8dd82ebe7d8e6877b68a09a7580a0c4949a16ba4 Author: Edgardo Hames Date: Sat Jul 24 12:50:15 2010 -0300 Staging: wlan-ng: fix style in cfg80211.c Fixed several errors reported by checkpatch. Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit 09d1485649a46fda2c5f76b9c870d820d4d8d029 Author: H Hartley Sweeten Date: Fri Jul 23 11:49:25 2010 -0700 Staging: dt3155: make local functions static The functions adjust_4MB and allocate_buffers are only called locally in dt3155_isr.c and should be static. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit fb8ce14c7e16bd218decb3e1655c5d4ff08042f2 Author: Paul Walmsley Date: Mon Jul 26 16:34:34 2010 -0600 OMAP: PM constraints: add omap_pm_set_min_clk_rate() Add omap_pm_set_min_clk_rate(). This constraint is meant for use by device drivers to translate a certain device-specific performance constraint (e.g., "minimum polygons per second") to a clock rate for the driver's device, given the driver's intimate knowledge of the device hardware (e.g., device type, device hardware revision, firmware revision, etc.) From a general PM core perspective, clock rate is probably the closest general analog to "performance" that is available, but the exact mapping from a use-case-specific performance constraint to clock rate must be done by the driver. Drivers intended for upstream merging shouldn't hardcode specific clock rates in their code without basing those rates on some performance criteria requested through the driver's subsystem (ideally, from userspace). Imre Deak described the need and use-case for this constraint, and discussed the implementation - thanks, Imre. Signed-off-by: Paul Walmsley Cc: Imre Deak commit 564889c1c02698d66db76764ee4e0a5e86903971 Author: Paul Walmsley Date: Mon Jul 26 16:34:34 2010 -0600 OMAP: PM constraints: add return values; add requesting device param to omap_pm_set_max_dev_wakeup_lat() Add return values to the PM constraint functions. This allows the PM core to provide feedback to the caller if a constraint is not possible. Update the one upstream user of omap_pm_set_max_mpu_wakeup_lat() to add a compatibility wrapper, needed until the driver is changed. Update some of the documentation to conform more closely to kerneldoc style. Add an additional device parameter to omap_pm_set_max_dev_wakeup_lat() to identify the device requesting the constraint. This is so repeated calls to omap_pm_set_max_dev_wakeup_lat() with the same requesting device can override the device's previously-set constraint. Also, it allows the PM core to make a decision as to whether or not the constraint should be satisfied, based on the caller's identity. Signed-off-by: Paul Walmsley commit 887adeac28a3e354ebb3f9aeca6fc2296c105267 Author: Paul Walmsley Date: Mon Jul 26 16:34:33 2010 -0600 OMAP2+: hwmod/device: update documentation and copyright Update some minor documentation issues and update copyright for omap_device/omap_hwmod code. Signed-off-by: Paul Walmsley Cc: Kevin Hilman Cc: Benoît Cousson commit db2a60bf2527209b42e6f512d5892089a835ceaa Author: Paul Walmsley Date: Mon Jul 26 16:34:33 2010 -0600 OMAP: hwmod/device: add omap_{device,hwmod}_get_mpu_rt_va Add omap_device_get_mpu_rt_va(). This is intended to be used by device drivers (currently, via a struct platform_data function pointer) to retrieve their corresponding device's virtual base address that the MPU should use to access the device. This is needed because the omap_hwmod code does its own ioremap(), in order to gain access to the module's OCP_SYSCONFIG register. Add omap_hwmod_get_mpu_rt_va(). omap_device_get_mpu_rt_va() calls this function to do the real work. While here, rename struct omap_hwmod._rt_va to struct omap_hwmod._mpu_rt_va, to reinforce that it refers to the MPU's register target virtual address base (as opposed to, for example, the L3's). In the future, this belongs as a function in an omap_bus, so it is not necessary to call this through a platform_data function pointer. The use-case for this function was originally presented by Santosh Shilimkar . Signed-off-by: Paul Walmsley Cc: Santosh Shilimkar commit 08072acf3a23febd1b676f1d908c6c0b9ddf167c Author: Paul Walmsley Date: Mon Jul 26 16:34:33 2010 -0600 OMAP2: hwmod data: add IVA1 (2420), IVA2 (2430) hwmods Add IVA1 hwmod data for OMAP2420 and IVA2 hwmod data for 2430. The data is based on Benoît Cousson's hwmod data for the OMAP3 IVA blocks. Signed-off-by: Paul Walmsley Cc: Benoît Cousson Cc: Kevin Hilman commit 540064bfdb201c8b4abe248729673991246ebc72 Author: Kevin Hilman Date: Mon Jul 26 16:34:32 2010 -0600 OMAP3: hwmod data: add data for OMAP3 IVA2 Add hwmod data for IVA2 module on OMAP3. Naming of "iva" instead of "iva2" to be aligned with OMAP4 naming done by Benoit Cousson. Cc: Benoit Cousson Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 4a7cf90a01a642969e61879337f6524dbdde05c2 Author: Kevin Hilman Date: Mon Jul 26 16:34:32 2010 -0600 OMAP2&3: hwmod: Replace l3 -> l3_main Replace all the struct that contain l3 with l3_main in order to be consistent with the OMAP4 naming convention. Signed-off-by: Benoit Cousson Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 90709ae91b7492ccf280252f612cd4215b725db9 Author: Kevin Hilman Date: Mon Jul 26 16:34:31 2010 -0600 OMAP: hwmod data: add class for IVA hwmods Add a new hwmod class for IVA devices. To be used when hwmods are created for IVA2 on OMAP3. Signed-off-by: Kevin Hilman Cc: Benoît Cousson Signed-off-by: Paul Walmsley commit 6f88e9bc21746be9b15f1d8dcacf7595807e8828 Author: Kevin Hilman Date: Mon Jul 26 16:34:31 2010 -0600 OMAP: PM: create omap_devices for MPU, DSP, L3 Create simple omap_devices for the main processors and busses. This is required to support the forth-coming device-based OPP approach, where OPPs are managed and tracked at the device level. Also, move these common PM init functions into a common_pm_init call that is called as a device_initcall(). The PM init is done at this level to ensure that the driver core is initialized before initialized. Signed-off-by: Kevin Hilman [paul@pwsan.com: sparse warnings cleaned up; newly-created functions moved from mach-omap2/io.c to mach-omap2/pm.c; newly-created functions renamed to start with "omap2" rather than "omap"] Signed-off-by: Paul Walmsley commit 0656358159d7e26205bb9360840759c7c3c0725f Author: Kevin Hilman Date: Mon Jul 26 16:34:30 2010 -0600 OMAP: omap_device: ensure hwmod tracks attached omap_device pointer The omap_hwmod struct has a field to track the omap_device that is attached to it, but it was not being assigned. Fix by assigning omap_device pointer when omap_device is built. Signed-off-by: Kevin Hilman [paul@pwsan.com: use an array index rather than pointer arithmetic] Signed-off-by: Paul Walmsley commit 681fddc6d087359c1e3f86529973f5bf62afe4c0 Author: Rajendra Nayak Date: Mon Jul 26 16:34:30 2010 -0600 OMAP4: hwmod: Enable omap_device build for OMAP4 Enable omap_device layer support for OMAP4, so that drivers can use them to enable/idle/shutdown devices. Signed-off-by: Rajendra Nayak Signed-off-by: Benoit Cousson Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 97d60162f64ef068b639d8a77ef3bc148baa53ad Author: Paul Walmsley Date: Mon Jul 26 16:34:30 2010 -0600 OMAP: hwmod: allow omap_hwmod_late_init() caller to skip module idle in _setup() On kernels that don't use the omap_device_enable() calls to enable devices, leave all on-chip devices enabled in hwmod _setup(). Otherwise, accesses to those devices are likely to fail, crashing the system. It's expected that kernels built without CONFIG_PM_RUNTIME will be the primary use-case for this. This functionality is controlled by adding an extra parameter to omap_hwmod_late_init(). This patch is based on the patch "OMAP: hwmod: don't auto-disable hwmod when !CONFIG_PM_RUNTIME" by Kevin Hilman . Cc: Kevin Hilman Signed-off-by: Paul Walmsley commit 848240223c35fcc71c424ad51a8e8aef42d3879c Author: Kevin Hilman Date: Mon Jul 26 16:34:29 2010 -0600 OMAP: hwmod: add non-locking versions of enable and idle functions Some hwmods may need to be idled/enabled in atomic context, so non-locking versions of these functions are required. Most users should not need these and usage of theses should be controlled to understand why access is being done in atomic context. For this reason, the non-locking functions are only exposed at the hwmod level and not at the omap-device level. The use-case that led to the need for the non-locking versions is hwmods that are enabled/idled from within the core idle/suspend path. Since interrupts are already disabled here, the mutex-based locking in hwmod can sleep and will cause potential deadlocks. Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit fa98347ebf1c516e49694e1584cd96a63428676a Author: Benoit Cousson Date: Mon Jul 26 16:34:29 2010 -0600 OMAP2&3: hwmod: Remove _hwmod prefix in name string In the lastest OMAP4 hwmod data file, the _hwmod was removed in order to save some memory space and because it does not bring a lot. Align OMAP2420, 2430 and 3430 data files with the same convention. Signed-off-by: Benoit Cousson Cc: Rajendra Nayak Acked-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 2eb1875d2b7560e70c19a11daa00e06e0de9eea1 Author: Kevin Hilman Date: Mon Jul 26 16:34:28 2010 -0600 OMAP2/3: hwmod: L3 and L4 CORE/PER/WKUP hwmods don't have IDLEST Since these hwmods do not have IDLEST, set the HWMOD_NO_IDLEST flag, otherwise _enable() will fail due to failing _wait_target_ready(). Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 6405616754f70a11c5410b321495fcd61e70b240 Author: Kevin Hilman Date: Mon Jul 26 16:34:28 2010 -0600 OMAP24xx: CM: fix mask used for checking IDLEST status On OMAP24xx, the polarity for the IDLEST bits is opposite of OMAP3. The mask used to check this was using the bit position instead of the bit mask. This patch fixes the problem by using the bit mask instead of the bit field. Signed-off-by: Kevin Hilman Signed-off-by: Paul Walmsley commit fb2fc9204f8ce060d239ab41f09cf6fc6de5ad4b Author: Paul Walmsley Date: Mon Jul 26 16:34:28 2010 -0600 OMAP1: clock: some cleanup Convert most of the magic numbers in mach-omap1/clock_data.c to use macros. Clean up a few comments to conform with Documentation/CodingStyle. Mark the current clkops_uart as being OMAP16xx-only, and add some comments to indicate that it does not belong there, for future cleanup. This patch should not cause any functional changes. Signed-off-by: Paul Walmsley commit 936305a96ce1611093ad7a5591a62f9d7142be7c Author: Paul Walmsley Date: Mon Jul 26 16:34:27 2010 -0600 OMAP1: OPP: add KConfig entry for 96MHz ARM rate (using a 12MHz oscillator) Add KConfig entry for one of the OMAP1 DVFS rates that was missing it. Based on the surrounding rate KConfigs and the oscillator frequency, this patch marks it as valid for all OMAP1 platforms -- Richard, Tuukka, Tony, perhaps you can comment if this does not look right? In the long term, all of these CONFIG_OMAP_ARM_*MHZ should be removed. The OPP settings should be associated with the platform information in the structure data (perhaps by extending the omap_chip defines). The selection of which rates to use should be handled at runtime; rates that are impossible due to xtal frequency mismatch or SoC-type mismatch should not be included. If implemented correctly, this should save some CPU time and some memory on OMAP1 kernels. Reported-by: Christoph Egger Reported-by: The VAMOS Research Project Cc: Marek Vasut Cc: Richard Woodruff Cc: Tuukka Tikkanen Cc: Tony Lindgren Signed-off-by: Paul Walmsley commit b3c1cff6985a78dcf2842960f866b07230ccef10 Author: Paul Walmsley Date: Mon Jul 26 16:34:27 2010 -0600 OMAP: clock: add kerneldoc for structures; move flags closer to structs Add kerneldoc for struct clk, struct clksel_rate, struct clksel. Move flag macros for struct clk.flags and struct clksel_rate.flags closer to the structures. Signed-off-by: Paul Walmsley commit 25499d9353e8cc6b0cf205684b3ebc535f8b9372 Author: Anand Gadiyar Date: Mon Jul 26 16:34:27 2010 -0600 OMAP3: wait on IDLEST after enabling USBTLL fclk We need to wait on the IDLEST bit after the clocks are enabled before attempting to access any register. Currently, the USBTLL i-clock ops uses the clkops_omap2_dflt_wait, while the USBTLL f-clock ops uses clkops_omap2_dflt. If the i-clock is enabled first, the clkops_omap2_dflt_wait is short-circuited as the companion f-clock is not enabled. This can cause a data abort if the IDLEST has not transitioned, and we try to access a USBTLL register. Since the USBTLL i-clock and f-clock could be enabled in any order, this is a bug. Fix it by changing the clkops for the f-clock. Signed-off-by: Anand Gadiyar Acked-by: Kevin Hilman Signed-off-by: Paul Walmsley commit 968181ca7e679be70bd50b82665e1f369a856ec7 Author: H Hartley Sweeten Date: Fri Jul 23 11:38:41 2010 -0700 Staging: dt3155: make module_{init/exit} functions static The module_init() and module_exit() functions should be static and marked with __init and __exit. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit 14de72b0aa56e20f24f9ecc1a449da1ed4fd5cda Author: Armando Uribe Date: Thu Jul 22 20:25:34 2010 -0500 staging: tidspbridge: Remove unused macros This patch removes a couple of macros that are not being used Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit bf968b0a521fc5fd3faf66afa315d8183246c72f Author: Armando Uribe Date: Thu Jul 22 20:25:33 2010 -0500 staging: tidspbridge: Change macros to static inline functions This patch changes preprocesing macros to static inline funcions. Also the function is_equal_uuid (IS_EQUAL_UUID) now uses the memcmp function. Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit 803cd75eff2d560d622da69569f0bf66a3ea4ed1 Author: Armando Uribe Date: Thu Jul 22 20:25:32 2010 -0500 staging: tidspbridge: Remove macros used as cast This patch removes those macros that are used to perform casts Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit fe15ea8b86f19bf7c4d1a4ea7452f1bb04b8933a Author: Armando Uribe Date: Thu Jul 22 20:25:31 2010 -0500 staging: tidspbridge: Remove unused magic number This patch removes an unused magic number from the cod_manager structure. Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit 28eeb6a737e17c65119354ef7c149746ca0591c0 Author: Armando Uribe Date: Thu Jul 22 20:25:30 2010 -0500 staging: tidspbridge: Remove redundant macro from cod.c This patch removes a redundant macro from cod.c simply used to verify that a field was not NULL Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit a563510fb2f18f0d7f2fbf815e7d7052f280a61d Author: Armando Uribe Date: Thu Jul 22 20:25:29 2010 -0500 staging: tidspbridge: Change macros to static inline functions used in cload This patch changes the macros to static inline function used in cload as well adds two definition of const to avoid using magic numbers Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit c18c9c910dbcc4cc55a440c38fad300f1ecf8dbb Author: Armando Uribe Date: Thu Jul 22 20:25:28 2010 -0500 staging: tidspbridge: Change macros to static inline functions in io_sm This patch change to macros to static inline functions, these macros are used to perform write/read operations in shared memory Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit 9e342489d7b8a8ac4ba4a728169564e4ab205bbd Author: Armando Uribe Date: Thu Jul 22 20:25:27 2010 -0500 staging: tidspbridge: Remove redundant macros in io_sm.c This patch removes 4 redundant macros used to perform read/write operations in shared memory region from io_sm.c. Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit 8204bd384660b035bf0077f45b6b9635e5cd1c19 Author: Armando Uribe Date: Thu Jul 22 20:25:26 2010 -0500 staging: tidspbridge: Remove Redundant wrappers This patch removes redundant wrappers from io_sm.c file Signed-off-by: Armando Uribe Signed-off-by: Greg Kroah-Hartman commit 209fb87a259ead17e966627b7f053d16a96898da Author: Christoph Hellwig Date: Sun Jul 18 21:17:11 2010 +0000 xfs simplify and speed up direct I/O completions Our current handling of direct I/O completions is rather suboptimal, because we defer it to a workqueue more often than needed, and we perform a much to aggressive flush of the workqueue in case unwritten extent conversions happen. This patch changes the direct I/O reads to not even use a completion handler, as we don't bother to use it at all, and to perform the unwritten extent conversions in caller context for synchronous direct I/O. For a small I/O size direct I/O workload on a consumer grade SSD, such as the untar of a kernel tree inside qemu this patch gives speedups of about 5%. Getting us much closer to the speed of a native block device, or a fully allocated XFS file. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Alex Elder commit fb511f2150174b18b28ad54708c1adda0df39b17 Author: Christoph Hellwig Date: Sun Jul 18 21:17:10 2010 +0000 xfs: move aio completion after unwritten extent conversion If we write into an unwritten extent using AIO we need to complete the AIO request after the extent conversion has finished. Without that a read could race to see see the extent still unwritten and return zeros. For synchronous I/O we already take care of that by flushing the xfsconvertd workqueue (which might be a bit of overkill). To do that add iocb and result fields to struct xfs_ioend, so that we can call aio_complete from xfs_end_io after the extent conversion has happened. Note that we need a new result field as io_error is used for positive errno values, while the AIO code can return negative error values and positive transfer sizes. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Alex Elder commit 40e2e97316af6e62affab7a392e792494b8d9dde Author: Christoph Hellwig Date: Sun Jul 18 21:17:09 2010 +0000 direct-io: move aio_complete into ->end_io Filesystems with unwritten extent support must not complete an AIO request until the transaction to convert the extent has been commited. That means the aio_complete calls needs to be moved into the ->end_io callback so that the filesystem can control when to call it exactly. This makes a bit of a mess out of dio_complete and the ->end_io callback prototype even more complicated. Signed-off-by: Christoph Hellwig Reviewed-by: Jan Kara Signed-off-by: Alex Elder commit 696123fca877905696591829c97a2cef11c8d048 Author: Dave Chinner Date: Mon Jul 26 13:51:46 2010 -0500 xfs: fix big endian build Commit 0fd7275cc42ab734eaa1a2c747e65479bd1e42af ("xfs: fix gcc 4.6 set but not read and unused statement warnings") failed to convert some code inside XFS_NATIVE_HOST (big endian host code only) and hence fails to build on such machines. Fix it. Signed-off-by: Dave Chinner Signed-off-by: Alex Elder commit d7f61777e9ec6951e99fb6fe06ba956b9bc4bbab Author: Joe Perches Date: Thu Jul 22 15:36:17 2010 +0000 drivers/net/qla3xxx.c: Checkpatch cleanups Remove typedefs Indentation and spacing Use a temporary for a very long pointer variable More 80 column compatible Convert a switch to if/else if Compile tested only, depends on patch "Update logging message style" (old) $ scripts/checkpatch.pl -f drivers/net/qla3xxx.c | grep "^total:" total: 209 errors, 82 warnings, 3995 lines checked (new) $ scripts/checkpatch.pl -f drivers/net/qla3xxx.c | grep "^total:" total: 2 errors, 0 warnings, 3970 lines checked $ size drivers/net/qla3xxx.o.* text data bss dec hex filename 50413 212 13864 64489 fbe9 drivers/net/qla3xxx.o.old 49959 212 13728 63899 f99b drivers/net/qla3xxx.o.new Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit eddc5fbd80999444dd32aca3c90290c9d64da396 Author: Joe Perches Date: Thu Jul 22 12:33:31 2010 +0000 drivers/net/qla3xxx.c: Update logging message style Use pr_ Use netdev_ Use netif_ Remove #define PFX Improve a couple of loops to avoid deep indentation. Compile tested only $ size drivers/net/qla3xxx.o.* text data bss dec hex filename 51603 212 13864 65679 1008f drivers/net/qla3xxx.o.old 50413 212 13864 64489 fbe9 drivers/net/qla3xxx.o.new Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 40b53d8a4edca018b8edb2fa99c5326642d450fa Author: David S. Miller Date: Mon Jul 26 13:13:49 2010 -0700 wireless: Make COMPAT_NETLINK_MESSAGES depend upon WEXT_CORE WIRELESS_EXT is not the correct dependency. Signed-off-by: David S. Miller commit 1235f504aaba2ebeabc863fdb3ceac764a317d47 Author: Eric Dumazet Date: Mon Jul 26 13:09:16 2010 -0700 netlink: netlink_recvmsg() fix commit 1dacc76d0014 (net/compat/wext: send different messages to compat tasks) introduced a race condition on netlink, in case MSG_PEEK is used. An skb given by skb_recv_datagram() might be shared, we must copy it before any modification, or risk fatal corruption. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 06b3cda0c12986f5bba578b918b188d731c4e191 Author: Ivo van Doorn Date: Sat Jul 24 19:32:25 2010 +0200 rt2x00: Fix regression for rt2500pci Since commit: commit f1aa4c541e98afa8b770a75ccaa8504d0bff44a7 Author: Ivo van Doorn Date: Tue Jun 29 21:38:55 2010 +0200 rt2x00: Write the BSSID to register when interface is added mananged mode in rt2500pci was broken, due to intf->bssid containing random data rather then the expected 00:00:00:00:00:00 This is corrected by sending the BSSID to rt2x00lib_config_intf only in AP mode where the bssid is set to a valid value. Signed-off-by: Ivo van Doorn Acked-by: Helmut Schaa Signed-off-by: John W. Linville commit d97349797fa76753c747ed8b888414fe78795439 Author: Sujith Date: Fri Jul 23 10:47:11 2010 +0530 mac80211: Don't set per-BSS QoS for monitor interfaces In AP mode, there is no need to notify the driver about QoS changes for the monitor interface that is created. The warning in ieee80211_bss_info_change_notify() would be hit otherwise. Signed-off-by: Sujith Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 487f0e010cf5b6ba504150dfb20c21fd93e3b9e6 Author: Felix Fietkau Date: Fri Jul 23 04:31:56 2010 +0200 ath9k_hw: simplify noisefloor calibration chainmask calculation The noisefloor array index always corresponds to the rx chain number it belongs to (with an offset of 3 for the extension chain). It's much simpler (and actually more correct) to directly use the chainmask to calculate the bitmask for the noisefloor array, instead of using these weird chip revision checks and hardcoded mask values. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit d9292c0db7b4e98ae6d34a662ef49a8bd127fd8f Author: Felix Fietkau Date: Fri Jul 23 04:12:19 2010 +0200 ath9k_hw: fix a small typo in the noisefloor calibration debug code In the noisefloor array, the extension channel values start at index 3 Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 866b7780fce95989dfc85f3e372635f5147e0d90 Author: Felix Fietkau Date: Fri Jul 23 04:07:48 2010 +0200 ath9k_hw: fix invalid extension channel noisefloor readings in HT20 When the hardware is configured in HT20 mode, noise floor readings for the extension channel often return invalid values, which keep the values in the NF history buffer at the hardware-specific maximum limit. Fix this by discarding the extension channel values when in HT20 mode. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 4cee78614cfa046a26c4fbf313d5bbacb3ad8efc Author: Felix Fietkau Date: Fri Jul 23 03:53:16 2010 +0200 ath9k: fix yet another buffer leak in the tx aggregation code When an aggregation session is being cleaned up, while the tx status for some frames is being processed, the TID is flushed and its buffers are sent out. Unfortunately that left the pending un-acked frames unprocessed, thus leaking buffers. Fix this by reordering the code so that those frames are processed first, before the TID is flushed. Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit ec25acc46a62db98baaa9b221f33b66af09a1964 Author: Johannes Berg Date: Thu Jul 22 17:11:28 2010 +0200 mac80211: fix sta assignment I just had the following: WARNING: at drivers/net/wireless/iwlwifi/iwl-agn-tx.c:574 iwlagn_tx_skb+0x1576/0x15f0 [iwlagn]() Call Trace: [] warn_slowpath_common+0x7f/0xc0 [] warn_slowpath_null+0x1a/0x20 [] iwlagn_tx_skb+0x1576/0x15f0 [iwlagn] [] iwl_mac_tx+0x5c/0x260 [iwlagn] [] __ieee80211_tx+0x10b/0x1a0 [mac80211] [] ieee80211_tx_pending+0x186/0x2d0 [mac80211] [] tasklet_action+0x125/0x130 [] __do_softirq+0x106/0x270 [] call_softirq+0x1c/0x30 iwlagn 0000:02:00.0: Attempting to modify non-existing station 107 Note that 107 == 0x6b which is slab poison. The reason is that mac80211 passed a freed station pointer to mac80211, because as it happened iwlwifi reset itself while mac80211 was disconnecting from the network. It turns out that we do take care to look up the station pointer in ieee80211_tx_pending_skb, but then don't use it, which obviously is a bug. Fix this by removing the ieee80211_tx_h_sta handler and assigning the station pointer directly. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit bd75eb854300c7e09eaf067572498abdeb9d3424 Author: Dan Carpenter Date: Thu Jul 22 14:21:02 2010 +0200 libertas: precedence bug Negate has precedence over comparison so the original test was always false. (Neither 0 nor 1 are equal to NL80211_IFTYPE_MONITOR). Signed-off-by: Dan Carpenter Acked-by: Dan Williams Signed-off-by: John W. Linville commit 3be61a3851c458fb4ce394645e26e8e9670c796a Author: Johannes Berg Date: Thu Jul 22 13:59:15 2010 +0200 cfg80211: fix IBSS default management key When wireless extensions are used to control an encrypted IBSS, we erroneously can try to set the default management key. Fix this. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 66c524210ab9217528b01b63c43903545e03a58c Author: Johannes Berg Date: Thu Jul 22 13:58:51 2010 +0200 mac80211: remove bogus rcu_read_lock() Another remnant of the previous key locking scheme needs to be removed -- this causes a warning otherwise as ieee80211_set_default_mgmt_key will acquire a mutex. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit f9f9b6e3e3128e2b4d01a6e5ed0bb73cbb9a0a37 Author: Dan Carpenter Date: Thu Jul 22 13:26:50 2010 +0200 wireless: remove unneeded variable from regulatory_hint_11d() The "rd" variable isn't needed any more since 4f366c5dabcb "wireless: only use alpha2 regulatory information from country IE" Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit 7e988014cd6dec991f095305256f57168b5610e8 Author: Dan Carpenter Date: Thu Jul 22 13:14:19 2010 +0200 mac80211: freeing the wrong variable The intent was to free "msp->ratelist" here. "msp->sample_table" is always NULL at this point. Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit 68e8f2fae03cde0ba841325e2660b55fe49bf4b9 Author: Vasanthakumar Thiagarajan Date: Thu Jul 22 02:24:11 2010 -0700 ath9k: Fix inconsistency between txq->stopped and the actual queue state Sometimes txq state(txq->stopped) can be marked as started but the actual queue may not be started (in ATH_WIPHY_SCAN state, for example). Fix this. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 2189d13f6cfc58627a01d6a91591e59a2fa62902 Author: Dan Carpenter Date: Thu Jul 22 10:52:02 2010 +0200 ath5k: snprintf() returns largish values snprintf() returns the number of characters that would have been written (not counting the NUL character). So we can't use it as the limiter to simple_read_from_buffer() without capping it first at sizeof(buf). Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit 9746010bd3c825d364b783b327990d25962657dd Author: Dan Carpenter Date: Thu Jul 22 10:50:28 2010 +0200 ath9k: snprintf() returns largish values The snprintf() function returns the number of characters that would have been written (not counting the NUL character on the end). It could potentially be larger than the size of the buffer. Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit 929ebd30e4f982a1d2817f70154e7441f5714118 Author: Julia Lawall Date: Sat May 15 23:16:39 2010 +0200 drivers/net/wireless/wl12xx: Use kmemdup Use kmemdup when some other buffer is immediately copied into the allocated region. A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; statement S; @@ - to = \(kmalloc\|kzalloc\)(size,flag); + to = kmemdup(from,size,flag); if (to==NULL || ...) S - memcpy(to, from, size); // Signed-off-by: Julia Lawall Signed-off-by: John W. Linville commit 3289a8368c294726659588d044e354dd3bcf44b3 Author: John W. Linville Date: Thu Jul 22 16:31:48 2010 -0400 lib80211: remove unused host_build_iv option Signed-off-by: John W. Linville commit ea65145da88e9fa04cb15c7a2a550ad1d3fde02a Author: John W. Linville Date: Thu Jul 22 15:43:13 2010 -0400 minstrel: don't complain about feedback for unrequested rates "It's not problematic if minstrel gets feedback for rates that it doesn't have in its list, it should just ignore it. - Felix" Signed-off-by: John W. Linville Cc: Felix Fietkau commit 00fc90c886220efe8b634d3f2a04713fcebbe2c0 Author: John W. Linville Date: Thu Jul 22 15:36:02 2010 -0400 minstrel_ht: remove unnecessary NULL check in minstrel_ht_update_caps If sta is NULL, we will have problems long before we get here... Reported-by: Dan Carpenter Signed-off-by: John W. Linville Cc: Felix Fietkau commit a6e492b9b5d323ca391312b981a5017e450132c0 Author: John W. Linville Date: Thu Jul 22 15:24:56 2010 -0400 iwlwifi: assume vif is NULL for internal scans and non-NULL otherwise The current practice of checking vif for NULL in one place but not another seems to confuse some static checkers, smatch in particular. Since vif will only be NULL in the case of internal scans, adjust the checks accordingly. Reported-by: Dan Carpenter Signed-off-by: John W. Linville commit 6cb8755bbc72634d5df06fc54080812ee50009df Author: John W. Linville Date: Thu Jul 22 14:45:02 2010 -0400 MAINTAINERS: remove entry for wavelan The driver is already removed from drivers/staging. The wireless extensions part is not really valid anymore either, since wext got moved and refactored, etc. Signed-off-by: John W. Linville commit 4086b9cad8f7e24e3737b667a1fbd0bdb976e54a Author: John W. Linville Date: Thu Jul 22 14:41:08 2010 -0400 MAINTAINERS: orphan the zd1201 wireless driver Signed-off-by: John W. Linville commit f52a549082d8ba8da527fe1dfa9bfca84d419ef6 Author: John W. Linville Date: Thu Jul 22 14:36:52 2010 -0400 MAINTAINERS: orphan the raylink wireless driver Signed-off-by: John W. Linville commit 1d89cae1b47d63c554fe4762e57a43e573769853 Author: John W. Linville Date: Thu Jul 22 14:25:40 2010 -0400 MAINTAINERS: mark prism54 obsolete The prism54 driver had an entry in feature-removal-schedule.txt and it sees very little activity other than API-change "bombing runs". The mac80211-based p54 driver should be used instead. Signed-off-by: John W. Linville commit 28eb3e5acfddf1e1c8892df9901e4f32f7f537eb Author: John W. Linville Date: Wed Jul 21 16:36:06 2010 -0400 rtl8180: silence "dubious: x | !y" sparse warning CHECK drivers/net/wireless/rtl818x/rtl8180_rtl8225.c drivers/net/wireless/rtl818x/rtl8180_rtl8225.c:53:33: warning: dubious: x | !y The existing code is clever and works fine, but it's not worth even a single line of Sparse warning SPAM... Signed-off-by: John W. Linville commit 8b73fb8e29e9ae0458d36cc0dc25e2717587dfd4 Author: John W. Linville Date: Wed Jul 21 16:26:40 2010 -0400 rtl8180: improve signal reporting for actual rtl8180 hardware Adapted from Realtek-provided driver... Signed-off-by: John W. Linville Tested-by: Pauli Nieminen commit 1ab36d68e37faa431d99a07cbfb477a48879934e Author: John W. Linville Date: Wed Jul 21 12:25:10 2010 -0400 wl1251: fix sparse-generated warnings CHECK drivers/net/wireless/wl12xx/wl1251_tx.c drivers/net/wireless/wl12xx/wl1251_tx.c:118:32: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_tx.c:118:32: expected unsigned short [unsigned] [usertype] frag_threshold drivers/net/wireless/wl12xx/wl1251_tx.c:118:32: got restricted __le16 [usertype] drivers/net/wireless/wl12xx/wl1251_tx.c:164:24: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_tx.c:164:24: expected unsigned short [unsigned] [usertype] length drivers/net/wireless/wl12xx/wl1251_tx.c:164:24: got restricted __le16 [usertype] drivers/net/wireless/wl12xx/wl1251_tx.c:166:22: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_tx.c:166:22: expected unsigned short [unsigned] [usertype] rate drivers/net/wireless/wl12xx/wl1251_tx.c:166:22: got restricted __le16 [usertype] drivers/net/wireless/wl12xx/wl1251_tx.c:167:29: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_tx.c:167:29: expected unsigned int [unsigned] [usertype] expiry_time drivers/net/wireless/wl12xx/wl1251_tx.c:167:29: got restricted __le32 [usertype] drivers/net/wireless/wl12xx/wl1251_tx.c:200:43: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/wl12xx/wl1251_tx.c:200:43: expected restricted __le16 [usertype] fc drivers/net/wireless/wl12xx/wl1251_tx.c:200:43: got unsigned short [unsigned] [assigned] [usertype] fc CHECK drivers/net/wireless/wl12xx/wl1251_cmd.c drivers/net/wireless/wl12xx/wl1251_cmd.c:428:39: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_cmd.c:428:39: expected unsigned int [unsigned] [usertype] rx_config_options drivers/net/wireless/wl12xx/wl1251_cmd.c:428:39: got restricted __le32 [usertype] drivers/net/wireless/wl12xx/wl1251_cmd.c:429:39: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_cmd.c:429:39: expected unsigned int [unsigned] [usertype] rx_filter_options drivers/net/wireless/wl12xx/wl1251_cmd.c:429:39: got restricted __le32 [usertype] drivers/net/wireless/wl12xx/wl1251_cmd.c:435:29: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_cmd.c:435:29: expected unsigned short [unsigned] [usertype] tx_rate drivers/net/wireless/wl12xx/wl1251_cmd.c:435:29: got restricted __le16 [usertype] drivers/net/wireless/wl12xx/wl1251_cmd.c:439:47: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_cmd.c:439:47: expected unsigned int [unsigned] [usertype] min_duration drivers/net/wireless/wl12xx/wl1251_cmd.c:439:47: got restricted __le32 [usertype] drivers/net/wireless/wl12xx/wl1251_cmd.c:441:47: warning: incorrect type in assignment (different base types) drivers/net/wireless/wl12xx/wl1251_cmd.c:441:47: expected unsigned int [unsigned] [usertype] max_duration drivers/net/wireless/wl12xx/wl1251_cmd.c:441:47: got restricted __le32 [usertype] CHECK drivers/net/wireless/wl12xx/wl1251_boot.c drivers/net/wireless/wl12xx/wl1251_boot.c:228:22: warning: symbol 'interrupt' shadows an earlier one /home/linville/git/wireless-next-2.6/arch/x86/include/asm/hw_irq.h:132:13: originally declared here Signed-off-by: John W. Linville commit da22f795cefb7c9f8a7bc6f22b1c16f1ff15a392 Author: John W. Linville Date: Mon Jul 26 15:04:12 2010 -0400 iwlagn: use __packed on new structure definitions "iwlagn: add statistic notification structure for WiFi/BT devices" added several new '__attribute__ ((packed))' lines. Change them to the generic __packed. Signed-off-by: John W. Linville commit ecd7f082d68d7fb1c96bcf72071aa85db9c00ddf Author: Christoph Hellwig Date: Thu Jul 22 12:52:08 2010 +1000 xfs: clean up xfs_bmap_get_bp Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Dave Chinner commit 5d18898b20dfed5f373f8a9a7cbe01446036f8e9 Author: Christoph Hellwig Date: Tue Jul 20 17:51:31 2010 +1000 xfs: simplify xfs_truncate_file xfs_truncate_file is only used for truncating quota files. Move it to xfs_qm_syscalls.c so it can be marked static and take advatange of the fact by removing the unused page cache validation and taking the iget into the helper. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Dave Chinner commit 939d723b721eef71060201738653a73443ff4510 Author: Christoph Hellwig Date: Tue Jul 20 17:51:16 2010 +1000 xfs: kill the b_strat callback in xfs_buf The b_strat callback is used by xfs_buf_iostrategy to perform additional checks before submitting a buffer. It is used in xfs_bwrite and when writing out delayed buffers. In xfs_bwrite it we can de-virtualize the call easily as b_strat is set a few lines above the call to xfs_buf_iostrategy. For the delayed buffers the rationale is a bit more complicated: - there are three callers of xfs_buf_delwri_queue, which places buffers on the delwri list: (1) xfs_bdwrite - this sets up b_strat, so it's fine (2) xfs_buf_iorequest. None of the callers can have XBF_DELWRI set: - xlog_bdstrat is only used for log buffers, which are never delwri - _xfs_buf_read explicitly clears the delwri flag - xfs_buf_iodone_work retries log buffers only - xfsbdstrat - only used for reads, superblock writes without the delwri flag, log I/O and file zeroing with explicitly allocated buffers. - xfs_buf_iostrategy - only calls xfs_buf_iorequest if b_strat is not set (3) xfs_buf_unlock - only puts the buffer on the delwri list if the DELWRI flag is already set. The DELWRI flag is only ever set in xfs_bwrite, xfs_buf_iodone_callbacks, or xfs_trans_log_buf. For xfs_buf_iodone_callbacks and xfs_trans_log_buf we require an initialized buf item, which means b_strat was set to xfs_bdstrat_cb in xfs_buf_item_init. Conclusion: we can just get rid of the callback and replace it with explicit calls to xfs_bdstrat_cb. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Dave Chinner commit a64afb057b607c04383ab5fb53c51421ba18c434 Author: Christoph Hellwig Date: Tue Jul 20 17:50:52 2010 +1000 xfs: remove obsolete osyncisosync mount option Since Linux 2.6.33 the kernel has support for real O_SYNC, which made the osyncisosync option a no-op. Warn the users about this and remove the mount flag for it. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Dave Chinner commit 0664ce8d0fde731d76fa7e86b3afb54f3a6830ff Author: Christoph Hellwig Date: Tue Jul 20 17:31:01 2010 +1000 xfs: clean up filestreams helpers Move xfs_filestream_peek_ag, xxfs_filestream_get_ag and xfs_filestream_put_ag from xfs_filestream.h to xfs_filestream.c where it's only callers are, and remove the inline marker while we're at it to let the compiler decide on the inlining. Also don't return a value from xfs_filestream_put_ag because we don't need it. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Dave Chinner commit 73523a2ecf03f0bfe7c36c244aff8a2ef2208a4a Author: Christoph Hellwig Date: Tue Jul 20 17:54:45 2010 +1000 xfs: fix gcc 4.6 set but not read and unused statement warnings [hch: dropped a few hunks that need structural changes instead] Signed-off-by: Andi Kleen Reviewed-by: Dave Chinner Signed-off-by: Dave Chinner commit 0f1a932f5d4d6ee71afb141914e2d5f11f27eee1 Author: Tony Luck Date: Tue Jul 20 17:54:41 2010 +1000 xfs: Fix build when CONFIG_XFS_POSIX_ACL=n When CONFIG_XFS_POSIX_ACL is not set "xfs_check_acl" is #defined to NULL - which breaks the code attempting to add a tracepoint on this function. Only define the tracepoint when the function exists. Signed-off-by: Tony Luck Reviewed-by: Christoph Hellwig Signed-off-by: Dave Chinner commit 3f34885cd7c6a3f4deea48e3bbc704d91d5704f4 Author: Kulikov Vasiliy Date: Tue Jul 20 17:54:28 2010 +1000 xfs: fix unsigned underflow in xfs_free_eofblocks map_len is unsigned. Checking map_len <= 0 is buggy when it should be below zero. So, check exact expression instead of map_len. Signed-off-by: Kulikov Vasiliy Reviewed-by: Christoph Hellwig Signed-off-by: Dave Chinner commit aea1b9532143218f8599ecedbbd6bfbf812385e1 Author: Dave Chinner Date: Tue Jul 20 17:54:12 2010 +1000 xfs: use GFP_NOFS for page cache allocation Avoid a lockdep warning by preventing page cache allocation from recursing back into the filesystem during memory reclaim. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder Signed-off-by: Dave Chinner commit 4a7edddcb5b14ddb5962e6906b6fd6b500d7a361 Author: Dave Chinner Date: Tue Jul 20 17:53:59 2010 +1000 xfs: fix memory reclaim recursion deadlock on locked inode buffer Calling into memory reclaim with a locked inode buffer can deadlock if memory reclaim tries to lock the inode buffer during inode teardown. Convert the relevant memory allocations to use KM_NOFS to avoid this deadlock condition. Reported-by: Peter Watkins Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder Signed-off-by: Dave Chinner commit 438697064aaa2f64e0fcc6586582a3e7ec36005b Author: Dave Chinner Date: Tue Jul 20 17:53:44 2010 +1000 xfs: fix xfs_trans_add_item() lockdep warnings xfs_trans_add_item() is called with ip->i_ilock held, which means it is unsafe for memory reclaim to recurse back into the filesystem (ilock is required in writeback). Hence the allocation needs to be KM_NOFS to avoid recursion. Lockdep report indicating memory allocation being called with the ip->i_ilock held is as follows: [ 1749.866796] ================================= [ 1749.867788] [ INFO: inconsistent lock state ] [ 1749.868327] 2.6.35-rc3-dgc+ #25 [ 1749.868741] --------------------------------- [ 1749.868741] inconsistent {IN-RECLAIM_FS-W} -> {RECLAIM_FS-ON-W} usage. [ 1749.868741] dd/2835 [HC0[0]:SC0[0]:HE1:SE1] takes: [ 1749.868741] (&(&ip->i_lock)->mr_lock){++++?.}, at: [] xfs_ilock+0x10b/0x190 [ 1749.868741] {IN-RECLAIM_FS-W} state was registered at: [ 1749.868741] [] __lock_acquire+0x437/0x1450 [ 1749.868741] [] lock_acquire+0xa6/0x160 [ 1749.868741] [] down_write_nested+0x65/0xb0 [ 1749.868741] [] xfs_ilock+0x10b/0x190 [ 1749.868741] [] xfs_reclaim_inode+0x99/0x310 [ 1749.868741] [] xfs_inode_ag_walk+0x8b/0x150 [ 1749.868741] [] xfs_inode_ag_iterator+0x8b/0xf0 [ 1749.868741] [] xfs_reclaim_inode_shrink+0x88/0x90 [ 1749.868741] [] shrink_slab+0x137/0x1a0 [ 1749.868741] [] balance_pgdat+0x421/0x6a0 [ 1749.868741] [] kswapd+0x11d/0x320 [ 1749.868741] [] kthread+0x96/0xa0 [ 1749.868741] [] kernel_thread_helper+0x4/0x10 [ 1749.868741] irq event stamp: 4234335 [ 1749.868741] hardirqs last enabled at (4234335): [] kmem_cache_free+0x115/0x220 [ 1749.868741] hardirqs last disabled at (4234334): [] kmem_cache_free+0x3d/0x220 [ 1749.868741] softirqs last enabled at (4233112): [] __do_softirq+0x142/0x260 [ 1749.868741] softirqs last disabled at (4233095): [] call_softirq+0x1c/0x50 [ 1749.868741] [ 1749.868741] other info that might help us debug this: [ 1749.868741] 2 locks held by dd/2835: [ 1749.868741] #0: (&(&ip->i_iolock)->mr_lock#2){+.+.+.}, at: [] xfs_ilock_nowait+0xed/0x200 [ 1749.868741] #1: (&(&ip->i_lock)->mr_lock){++++?.}, at: [] xfs_ilock+0x10b/0x190 [ 1749.868741] [ 1749.868741] stack backtrace: [ 1749.868741] Pid: 2835, comm: dd Not tainted 2.6.35-rc3-dgc+ #25 [ 1749.868741] Call Trace: [ 1749.868741] [] print_usage_bug+0x18a/0x190 [ 1749.868741] [] ? save_stack_trace+0x2f/0x50 [ 1749.868741] [] ? check_usage_backwards+0x0/0xf0 [ 1749.868741] [] mark_lock+0x331/0x400 [ 1749.868741] [] mark_held_locks+0x67/0x90 [ 1749.868741] [] lockdep_trace_alloc+0xa1/0xe0 [ 1749.868741] [] kmem_cache_alloc+0x39/0x1e0 [ 1749.868741] [] kmem_zone_alloc+0x94/0xe0 [ 1749.868741] [] kmem_zone_zalloc+0x1e/0x50 [ 1749.868741] [] xfs_trans_add_item+0x72/0xb0 [ 1749.868741] [] xfs_trans_ijoin+0xa1/0xd0 [ 1749.868741] [] xfs_itruncate_finish+0x312/0x5d0 [ 1749.868741] [] xfs_free_eofblocks+0x227/0x280 [ 1749.868741] [] xfs_release+0x138/0x190 [ 1749.868741] [] xfs_file_release+0x15/0x20 [ 1749.868741] [] fput+0x13f/0x260 [ 1749.868741] [] filp_close+0x52/0x80 [ 1749.868741] [] sys_close+0xb9/0x120 [ 1749.868741] [] system_call_fastpath+0x16/0x1b Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder Signed-off-by: Dave Chinner commit 2f11feabb19748c0ffa2eb82d438e8a91b9f6ea0 Author: Dave Chinner Date: Tue Jul 20 17:53:25 2010 +1000 xfs: simplify and remove xfs_ireclaim xfs_ireclaim has to get and put te pag structure because it is only called with the inode to reclaim. The one caller of this function already has a reference on the pag and a pointer to is, so move the radix tree delete to the caller and remove xfs_ireclaim completely. This avoids a xfs_perag_get/put on every inode being reclaimed. The overhead was noticed in a bug report at: https://bugzilla.kernel.org/show_bug.cgi?id=16348 Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder Signed-off-by: Dave Chinner commit ec53d1dbb3ca960e7b552397613358ba1dbd12bd Author: Dave Chinner Date: Tue Jul 20 17:52:59 2010 +1000 xfs: don't block on buffer read errors xfs_buf_read() fails to detect dispatch errors before attempting to wait on sychronous IO. If there was an error, it will get stuck forever, waiting for an I/O that was never started. Make sure the error is detected correctly. Further, such a failure can leave locked pages in the page cache which will cause a later operation to hang on the page. Ensure that we correctly process pages in the buffers when we get a dispatch error. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Dave Chinner commit a4190f90b4e22bde8b01b0086e00dd95439e2edd Author: Dave Chinner Date: Mon Jul 12 06:40:58 2010 +0000 xfs: move inode shrinker unregister even earlier I missed Dave Chinner's second revision of this change, and pushed his first version out to the repository instead. commit a476c59ebb279d738718edc0e3fb76aab3687114 Author: Dave Chinner This commit compensates for that by moving a block of code up a bit further, with a result that matches the the effect of Dave's second version. Dave's first version was: Reviewed-by: Eric Sandeen Dave's second version was: Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder Reviewed-by: Eric Sandeen commit fa17b25e9f95375081b43a741cf1c188682ec588 Author: Christoph Hellwig Date: Sat Jul 3 09:21:17 2010 +0000 xfs: remove a dmapi leftover The open_exec file operation is only added by the external dmapi patch. Signed-off-by: Christoph Hellwig Reviewed-by: Alex Elder Signed-off-by: Alex Elder commit 78558fe8d8326b2395da33456cd9eec57ffc081a Author: Christoph Hellwig Date: Mon Jun 28 10:34:57 2010 -0400 xfs: writepage always has buffers These days we always have buffers thanks to ->page_mkwrite. And we already have an assert a few lines above tripping in case that was not true due to a bug. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit d4f7a5cbd5449a3d2097f601f588886ea7b70dc3 Author: Christoph Hellwig Date: Mon Jun 28 10:34:44 2010 -0400 xfs: allow writeback from kswapd We only need disable I/O from direct or memcg reclaim. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 651701d71da4dc0ac607f17a638e77906f0d280e Author: Christoph Hellwig Date: Mon Jun 28 10:34:34 2010 -0400 xfs: remove incorrect log write optimization We do need a barrier for the first buffer of a split log write. Otherwise we might incorrectly stamp the tail LSN into transactions in the first part of the split write, or not flush data I/O before updating the inode size. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 2727ccc950ae17375b15005403e1c35ba8fec1df Author: Dave Chinner Date: Fri Jun 25 11:08:40 2010 +1000 xfs: unregister inode shrinker before freeing filesystem structures Currently we don't remove the XFS mount from the shrinker list until late in the unmount path. By this time, we have already torn down the internals of the filesystem (e.g. the per-ag structures), and hence if the shrinker is executed between the teardown and the unregistering, the shrinker will get NULL per-ag structure pointers and panic trying to dereference them. Fix this by removing the xfs mount from the shrinker list before tearing down it's internal structures. Signed-off-by: Dave Chinner Reviewed-by: Eric Sandeen Signed-off-by: Alex Elder commit cca28fb83d9e60779bb348edc33a62068e5f04a4 Author: Christoph Hellwig Date: Thu Jun 24 11:57:09 2010 +1000 xfs: split xfs_itrace_entry Replace the xfs_itrace_entry catchall with specific trace points. For most simple callers we now use the simple inode class, which used to be the iget class, but add more details tracing for namespace events, which now includes the name of the directory entries manipulated. Remove the xfs_inactive trace point, which is a duplicate of the clear_inode one, and the xfs_change_file_space trace point, which is immediately followed by the more specific alloc/free space trace points. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit f2d6761433d69d94e0b39ac44ef0f0f0b0508065 Author: Christoph Hellwig Date: Thu Jun 24 11:52:50 2010 +1000 xfs: remove xfs_iput xfs_iput is just a small wrapper for xfs_iunlock + IRELE. Having this out of line wrapper means the trace events in those two can't track their caller properly. So just remove the wrapper and opencode the unlock + rele in the few callers. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit ef35e9255d4ed12522e836fbcec861e7306d794a Author: Christoph Hellwig Date: Thu Jun 24 11:51:19 2010 +1000 xfs: remove xfs_iput_new We never get an i_mode of 0 or a locked VFS inode until we pass in the XFS_IGET_CREATE flag to xfs_iget, which makes xfs_iput_new equivalent to xfs_iput for the only caller. In addition to that xfs_nfs_get_inode does not even need to lock the inode given that the generation never changes for a life inode, so just pass a 0 lock_flags to xfs_iget and release the inode using IRELE in the error path. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit d2e078c33c24f97411b0fdd7cd2173e68125e7e3 Author: Christoph Hellwig Date: Thu Jun 24 11:50:22 2010 +1000 xfs: some iget tracing cleanups / fixes The xfs_iget_alloc/found tracepoints are a bit misnamed and misplaced. Rename them to xfs_iget_hit/xfs_iget_miss and move them to the beggining of the xfs_iget_cache_hit/miss functions. Add a new xfs_iget_reclaim_fail tracepoint for the case where we fail to re-initialize a VFS inode, and add a second instance of the xfs_iget_skip tracepoint for the case of a failed igrab() call. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 807cbbdb438d172b87b380eebc1f1c1a5a3549b2 Author: Christoph Hellwig Date: Thu Jun 24 11:49:12 2010 +1000 xfs: do not use emums for flags used in tracing The tracing code can't print flags defined as enums. Most flags that we want to print are defines as macros already, but move the few remaining ones over to make the trace output more useful. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 64c86149410bc62d9ac27a0594b3402a2aca03d8 Author: Christoph Hellwig Date: Thu Jun 24 11:45:34 2010 +1000 xfs: remove explicit xfs_sync_data/xfs_sync_attr calls on umount On the final put of a superblock the VFS already calls sync_filesystem for us to write out all data and wait for it. No need to start another asynchronous writeback inside ->put_super. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit f2bde9b89b4d67c9bc3b963cb996f449ddcd27a4 Author: Christoph Hellwig Date: Thu Jun 24 11:44:35 2010 +1000 xfs: small cleanups for xfs_iomap / __xfs_get_blocks Remove the flags argument to __xfs_get_blocks as we can easily derive it from the direct argument, and remove the unused BMAPI_MMAP flag. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 3070451eea1ed8e3bde0573183c7d8ac25fd5e97 Author: Christoph Hellwig Date: Thu Jun 24 11:42:19 2010 +1000 xfs: reduce stack usage in xfs_iomap xfs_iomap passes a xfs_bmbt_irec pointer to xfs_iomap_write_direct and xfs_iomap_write_allocate to give them the results of our read-only xfs_bmapi query. Instead of allocating a new xfs_bmbt_irec on stack for the next call to xfs_bmapi re use the one we got passed as it's not used after this point. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 7a36c8a98a7dd05756bb147be2ac350325ff5830 Author: Christoph Hellwig Date: Thu Jun 24 11:39:25 2010 +1000 xfs: avoid synchronous transaction in xfs_fs_write_inode We already rely on the fact that the sync code will cause a synchronous log force later on (currently via xfs_fs_sync_fs -> xfs_quiesce_data -> xfs_sync_data), so no need to do this here. This allows us to avoid a lot of synchronous log forces during sync, which pays of especially with delayed logging enabled. Some compilebench numbers that show this: xfs (delayed logging, 256k logbufs) =================================== intial create 25.94 MB/s 25.75 MB/s 25.64 MB/s create 8.54 MB/s 9.12 MB/s 9.15 MB/s patch 2.47 MB/s 2.47 MB/s 3.17 MB/s compile 29.65 MB/s 30.51 MB/s 27.33 MB/s clean 90.92 MB/s 98.83 MB/s 128.87 MB/s read tree 11.90 MB/s 11.84 MB/s 8.56 MB/s read compiled 28.75 MB/s 29.96 MB/s 24.25 MB/s delete tree 8.39 seconds 8.12 seconds 8.46 seconds delete compiled 8.35 seconds 8.44 seconds 5.11 seconds stat tree 6.03 seconds 5.59 seconds 5.19 seconds stat compiled tree 9.00 seconds 9.52 seconds 8.49 seconds xfs + write_inode log_force removal =================================== intial create 25.87 MB/s 25.76 MB/s 25.87 MB/s create 15.18 MB/s 14.80 MB/s 14.94 MB/s patch 3.13 MB/s 3.14 MB/s 3.11 MB/s compile 36.74 MB/s 37.17 MB/s 36.84 MB/s clean 226.02 MB/s 222.58 MB/s 217.94 MB/s read tree 15.14 MB/s 15.02 MB/s 15.14 MB/s read compiled tree 29.30 MB/s 29.31 MB/s 29.32 MB/s delete tree 6.22 seconds 6.14 seconds 6.15 seconds delete compiled tree 5.75 seconds 5.92 seconds 5.81 seconds stat tree 4.60 seconds 4.51 seconds 4.56 seconds stat compiled tree 4.07 seconds 3.87 seconds 3.96 seconds In addition to that also remove the delwri inode flush that is unessecary now that bulkstat is always coherent. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 20cb52ebd1b5ca6fa8a5d9b6b1392292f5ca8a45 Author: Christoph Hellwig Date: Thu Jun 24 09:46:01 2010 +1000 xfs: simplify xfs_vm_writepage The writepage implementation in XFS still tries to deal with dirty but unmapped buffers which used to caused by writes through shared mmaps. Since the introduction of ->page_mkwrite these can't happen anymore, so remove the code dealing with them. Note that the all_bh variable which causes us to start I/O on all buffers on the pages was controlled by the count of unmapped buffers, which also included those not actually dirty. It's now unconditionally initialized to 0 but set to 1 for the case of small file size extensions. It probably can be removed entirely, but that's left for another patch. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 89f3b363967a958e756a549c8747c1fb9c930c1a Author: Christoph Hellwig Date: Thu Jun 24 09:45:48 2010 +1000 xfs: simplify xfs_vm_releasepage Currently the xfs releasepage implementation has code to deal with converting delayed allocated and unwritten space. But we never get called for those as we always convert delayed and unwritten space when cleaning a page, or drop the state from the buffers in block_invalidatepage. We still keep a WARN_ON on those cases for now, but remove all the case dealing with it, which allows to fold xfs_page_state_convert into xfs_vm_writepage and remove the !startio case from the whole writeback path. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 3d9b02e3c76531687ab5314e0edf266256f13c2d Author: Eric Sandeen Date: Thu Jun 24 09:45:30 2010 +1000 xfs: fix corruption case for block size < page size xfstests 194 first truncats a file back and then extends it again by truncating it to a larger size. This causes discard_buffer to drop the mapped, but not the uptodate bit and thus creates something that xfs_page_state_convert takes for unmapped space created by mmap because it doesn't check for the dirty bit, which also gets cleared by discard_buffer and checked by other ->writepage implementations like block_write_full_page. Handle this kind of buffers early, and unlike Eric's first version of the patch simply ASSERT that the buffers is dirty, given that the mmap write case can't happen anymore since the introduction of ->page_mkwrite. The now dead code dealing with that will be deleted in a follow on patch. Signed-off-by: Eric Sandeen Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit b4e9181e772b0c8b9038c5822ead368b96c2b533 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: remove unused delta tracking code in xfs_bmapi This code was introduced four years ago in commit 3e57ecf640428c01ba1ed8c8fc538447ada1715b without any review and has been unused since. Remove it just as the rest of the code introduced in that commit to reduce that stack usage and complexity in this central piece of code. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit cd8b0bb3c49d0691e9e7b4cf19e21ca63b92c053 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: remove unused XFS_BMAPI_ flags Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit a59f55703c3725b2fa582924f51db62b58be05bb Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: remove the unused XFS_TRANS_NOSLEEP/XFS_TRANS_WAIT flags Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 9134c2332ecb9154860669d778ef2808f06503ec Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: remove the unused XFS_LOG_SLEEP and XFS_LOG_NOSLEEP flags Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit dbb2f6529feeee8f4de77849edeee2e60c40c805 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: kill the unused xlog_debug variable Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 4e0d5f926b80b06234a4ed664d6ae8c54fb08c4b Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: fix the xfs_log_iovec i_addr type By making this member a void pointer we can get rid of a lot of pointless casts. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 898621d5a72c6799a9a13fce20443b4b6699899c Author: Christoph Hellwig Date: Thu Jun 24 11:36:58 2010 +1000 xfs: simplify inode to transaction joining Currently we need to either call IHOLD or xfs_trans_ihold on an inode when joining it to a transaction via xfs_trans_ijoin. This patches instead makes xfs_trans_ijoin usable on it's own by doing an implicity xfs_trans_ihold, which also allows us to drop the third argument. For the case where we want to hold a reference on the inode a xfs_trans_ijoin_ref wrapper is added which does the IHOLD and marks the inode for needing an xfs_iput. In addition to the cleaner interface to the caller this also simplifies the implementation. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 4d16e9246fc3b3cf7bc95609eff66929a39daa06 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: simplify buffer pinning Get rid of the xfs_buf_pin/xfs_buf_unpin/xfs_buf_ispin helpers and opencode them in their only callers, just like we did for the inode pinning a while ago. Also remove duplicate trace points - the bufitem tracepoints cover all the information that is present in a buffer tracepoint. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit ca30b2a7b7ac899ac4da6030ccbebf2f137b8e6d Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: give li_cb callbacks the correct prototype Stop the function pointer casting madness and give all the li_cb instances correct prototype. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 7bfa31d8e0f90b65ff23be94fca65ce261b43fc8 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: give xfs_item_ops methods the correct prototypes Stop the function pointer casting madness and give all the xfs_item_ops the correct prototypes. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 9412e3181c0ef82efc3d8e88d73e583ec10c34e9 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: merge iop_unpin_remove into iop_unpin The unpin_remove item operation instances always share most of the implementation with the respective unpin implementation. So instead of keeping two different entry points add a remove flag to the unpin operation and share the code more easily. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit e98c414f9a3134fe7efc56ef8f1d394b54bfd40e Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: simplify log item descriptor tracking Currently we track log item descriptor belonging to a transaction using a complex opencoded chunk allocator. This code has been there since day one and seems to work around the lack of an efficient slab allocator. This patch replaces it with dynamically allocated log item descriptors from a dedicated slab pool, linked to the transaction by a linked list. This allows to greatly simplify the log item descriptor tracking to the point where it's just a couple hundred lines in xfs_trans.c instead of a separate file. The external API has also been simplified while we're at it - the xfs_trans_add_item and xfs_trans_del_item functions to add/ delete items from a transaction have been simplified to the bare minium, and the xfs_trans_find_item function is replaced with a direct dereference of the li_desc field. All debug code walking the list of log items in a transaction is down to a simple list_for_each_entry. Note that we could easily use a singly linked list here instead of the double linked list from list.h as the fastpath only does deletion from sequential traversal. But given that we don't have one available as a library function yet I use the list.h functions for simplicity. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 3400777ff03a3cd4fdbc6cb15676fc7e7ceefc00 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: remove unneeded #include statements Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 288699fecaffa1ef8f75f92020cbb593a772e487 Author: Christoph Hellwig Date: Wed Jun 23 18:11:15 2010 +1000 xfs: drop dmapi hooks Dmapi support was never merged upstream, but we still have a lot of hooks bloating XFS for it, all over the fast pathes of the filesystem. This patch drops over 700 lines of dmapi overhead. If we'll ever get HSM support in mainline at least the namespace events can be done much saner in the VFS instead of the individual filesystem, so it's not like this is much help for future work. Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner commit 6280f190da4dd083f14f704be6b3314311a7eacb Author: Paolo Bonzini Date: Wed Jun 23 18:30:15 2010 +0200 implement O_NONBLOCK for /proc/xen/xenbus This patch implements O_NONBLOCK for /proc/xen/xenbus. It is a simple matter of returning -EAGAIN instead of waiting on a queue. Signed-off-by: Paolo Bonzini Signed-off-by: Jeremy Fitzhardinge commit 7ccc3eface57b6e1773fce009dac8a3da081b8b1 Author: Takashi Iwai Date: Mon Jul 26 17:00:15 2010 +0200 ALSA: hda - Fix max amp cap calculation for IDT/STAC codecs The commit afbd9b8448f4b7d15673c6858012f384f18d28b8 ALSA: hda - Limit the amp value to write introduced a regression for codec setups with amp offsets like IDT/STAC codecs. The limit value should be a raw value without offset calculation. Signed-off-by: Takashi Iwai commit 1244b41d00eb60cb3d05220383bc9d15b9045fb4 Author: Peter Korsgaard Date: Thu Jul 22 14:24:57 2010 +0200 kconfig: make randconfig fair for booleans Give boolean symbols a 50% chance of getting enabled, rather than 67%. Signed-off-by: Peter Korsgaard Acked-by: Sam Ravnborg Signed-off-by: Michal Marek commit ff349103964d43c28b7b80bdecf7ace0113b3dda Author: Lee Nipper Date: Fri Jul 9 01:17:16 2010 +0000 powerpc/40x: Distinguish AMCC PowerPC 405EX and 405EXr correctly The recent AMCC 405EX Rev D without Security uses a PVR value that matches the old 405EXr Rev A/B with Security. The 405EX Rev D without Security would be shown incorrectly as an 405EXr. The pvr_mask of 0xffff0004 is no longer sufficient to distinguish the 405EX from 405EXr. This patch replaces 2 entries in the cpu_specs table and adds 8 more, each using pvr_mask of 0xffff000f and appropriate pvr_value to distinguish the AMCC PowerPC 405EX and 405EXr instances. The cpu_name for these entries now includes the Rev, in similar fashion to the 440GX. Signed-off-by: Lee Nipper Signed-off-by: Josh Boyer commit 9a52e392bd053f1d282488517125c6c1ab77006a Author: Stefan Roese Date: Thu Jun 3 22:29:59 2010 +0000 powerpc/44x: Fix UART2/3 interrupt assignment in PPC460EX/GT dts files UART2 and UART3 on 460EX/GT have incorrect interrupt mappings right now. UART2 should be 28 (0x1c) and UART3 29 (0x1d). This patch fixes this and switches to using decimal number instead of hex, since the AppliedMicro (AMCC) users manuals describe their inerrupt numbers in decimal. Thanks to Fabien Proriol for pointing this out. Signed-off-by: Stefan Roese Cc: Fabien Proriol Cc: Josh Boyer Signed-off-by: Josh Boyer commit c76986cca8379db619de4b6c6b7359125df0e341 Author: Christian Dietrich Date: Fri Jul 16 02:29:02 2010 +0000 Remove REDWOOD_[456] config options and conditional code The config options for REDWOOD_[456] were commented out in the powerpc Kconfig. The ifdefs referencing this options therefore are dead and all references to this can be removed (Also dependencies in other KConfig files). Signed-off-by: Christian Dietrich Signed-off-by: Christoph Egger Acked-by: David S. Miller Acked-by: Benjamin Herrenschmidt Signed-off-by: Josh Boyer commit ef93f1443c014e0d6dd7a5b1e592a02aa266f001 Author: Eric Bénard Date: Fri Jul 23 16:11:19 2010 +0200 i.MX51: add support for cpuimx51 module and its baseboard CPUIMX51 is build around Freescale's i.MX515 and has up to 512MB of RAM, NAND Flash, Ethernet, USB Host with 4 ports hub, USB OTG, ST16554 Quad UART on nCS1, I2C RTC ... MBIMX51 adds LEDS, Keypad, TSC2007 touchscreen controler ... Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 84659ab5851aae05035a41b378c4c9aca2d2aeb4 Author: Jason Wang Date: Tue Jul 13 21:02:42 2010 +0800 imx: move gpio init after to irq init The commit 9a763bf "get rid of mxc_gpio_init" changed gpio_init and irq_init sequence. Usually we will call set_irq_chained_handler in gpio_init functions, this should be called after the irq_init called, otherwise the chained irq can't get propoer irq_chip and this irq will remain masked even we called set_irq_chained_handler. Signed-off-by: Jason Wang Tested-by: Eric Bénard Signed-off-by: Sascha Hauer commit 95afd090752a1f7dab6f4b24b1b0d12593e643bb Author: Eric Bénard Date: Fri Jul 23 14:56:40 2010 +0200 eukrea-baseboards: merge includes in one file as per suggested by Sascha Signed-off-by: Eric Bénard Acked-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 8cd1b5c3d4e686c30404a9a466972e2ee13ada9f Author: Eric Bénard Date: Fri Jul 23 14:56:39 2010 +0200 Fix KConfig warning This patch fixes the following Kconfig warning : "arch/arm/mach-mx25/Kconfig:18:warning: choice value used outside its choice group Signed-off-by: Eric Bénard Acked-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 72fe99f642e09645942ae78539121754b0172ac6 Author: Eric Bénard Date: Fri Jul 23 14:56:38 2010 +0200 mbimxsd baseboards : remove unnecessary include Signed-off-by: Eric Bénard Acked-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit da92e42b11074ec5da8e75fbabcee60c4a50de90 Author: Marc Kleine-Budde Date: Fri Apr 30 00:52:35 2010 +0200 pcm043: register flexcan device Signed-off-by: Marc Kleine-Budde Signed-off-by: Sascha Hauer commit 61c68502321d94a421f9a2a32f6789ecb27f382d Author: Marc Kleine-Budde Date: Thu Jul 22 11:45:34 2010 +0200 imx: dynamically register flexcan devices for mx25 and mx35 In order to make this patch compile, even if the flexcan driver with it's header defining the platform data isn't merged yet, two ifdefs have been added. They effect that the "imx_add_flexcan" function results in a no-op function if the driver hasn't been activated. These ifdefs can be removed after the flexcan driver has been merged. Signed-off-by: Marc Kleine-Budde Signed-off-by: Sascha Hauer commit a7d945a469ee566bde26217362c95f29acfbd14a Author: Marc Kleine-Budde Date: Thu Jul 22 11:41:56 2010 +0200 mx35: add flexcan address Signed-off-by: Marc Kleine-Budde Signed-off-by: Sascha Hauer commit 757e1e4d5831c67f308b42babac5a4b6a693a25d Author: Marc Kleine-Budde Date: Fri Apr 30 01:19:35 2010 +0200 mx35: adjust flexcan clock definition Signed-off-by: Marc Kleine-Budde Signed-off-by: Sascha Hauer commit c3f6a34605db2771886b8eaf1cdf8e8ca3e8350d Author: Marc Kleine-Budde Date: Thu Jul 22 11:41:56 2010 +0200 mx25: add flexcan address and interrupt definition Signed-off-by: Marc Kleine-Budde Signed-off-by: Sascha Hauer commit e993ade18fcc5f81b26ec031c166880789a9723b Author: Sascha Hauer Date: Wed Jul 22 17:33:36 2009 +0200 mx25: flexcan clock support Signed-off-by: Marc Kleine-Budde Signed-off-by: Sascha Hauer commit 6937aabef4dd0ee88fe0e4732f0eb8de612ecbb4 Author: Eric Bénard Date: Tue Jul 20 09:16:13 2010 +0200 iomux-mx51: add 4 pin definitions Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit aa8721431909c9afa611373c7edfb7f514a6ad83 Author: Eric Bénard Date: Wed Jul 21 14:46:11 2010 +0200 i.MX51: handle IRQ for gpio 16..31 The i.MX51 generates 2 IRQ for each GPIO bank : one for gpio 0 to 15 and one for gpio 16 to 31. Actually only the lower IRQ is registered so register the second one. Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 5055d1efc0cb4bd612c78af8fa61316ae49755a9 Author: Eric Bénard Date: Mon Jul 19 09:45:17 2010 +0200 eukrea_mbimx27-baseboard: fix compile when CONFIG_SPI_IMX is disabled the i2c_board_info structure landed into the SPI #if/#endif which is wrong. Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 7a2bb23c149e9f093b2b83c16c25991e32ef4ec3 Author: Eric Bénard Date: Fri Jul 16 15:09:07 2010 +0200 imxfb: add pwmr controlled backlight support Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 7e688f0d77f90c531747afa552d72ea70c2f0803 Author: Eric Bénard Date: Fri Jul 16 15:09:06 2010 +0200 imx25: fix low level debug DEBUG_LL is actually broken on i.MX25, this patch fix it. Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit a7d403cfd1a4c8924874e0f6b600edb7f38684d0 Author: Eric Bénard Date: Thu Jun 17 20:59:07 2010 +0200 mxcmmc: convert to pm_ops and enable/disable clock Signed-off-by: Eric Bénard Cc: s.hauer@pengutronix.de Cc: linux-mmc@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: Sascha Hauer commit d5efe2551e3ea88d9446f0d9d073debbb847f6af Author: Jason Wang Date: Wed Jul 14 21:24:54 2010 +0800 mx51_3ds: add keypad support on 3ds platform Add keymaps and imx_keypad device registration for imx51_3ds board. Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit a7ebd93143bc883b51227457e59ec774b1eb6c03 Author: Jason Wang Date: Wed Jul 14 21:24:53 2010 +0800 mx51: add imx_keypad device definition for mx51 platforms add imx_keypad platform device definition and clocks for mx51 platforms. Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit beaac6f32ce484bf141d550bc0f26005782161fe Author: Jason Wang Date: Wed Jul 14 21:24:52 2010 +0800 mx51_3ds: Add support for the imx51 3-stack board 3-stack is a reference board from Freescale for their i.MX51 SoC. Add board definition, Kconfig and Makefile to enable Freescale 3-stack board. Boot tested on a i.MX51 3-stack Rev2.0 board Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit 3fac6cf35806f099fad956d7b4ca76eebb26297e Author: Rogerio Pimentel Date: Fri Jun 25 10:31:33 2010 -0300 mx27_3ds: add support for the keypad mx27_3ds: add support for the keypad Signed-off-by: Rogerio Pimentel Signed-off-by: Sascha Hauer commit c5d38f08ca05c5253cb491a26225bf16bfa54ab1 Author: Jason Wang Date: Thu Jun 24 21:11:29 2010 +0800 mx31_3ds: revert 3ds debug board relate code Because we add a 3ds debug board support in mxc level, we remove those redundant codes from board level. Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit fa94f8dce1459eef1f0f8d5b1e4f26c3f058dec2 Author: Jason Wang Date: Thu Jun 24 21:11:28 2010 +0800 mxc: add common debug board for 3-stack platforms The debug board is little different for all mxc 3-stack(PDK) platforms, it is possible here to add a common implementation to support this board. Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit 2dcf78c0eeae3bd07082821557014f25f02ca2e9 Merge: 6b63226 5109a45 Author: Uwe Kleine-König Date: Wed Jun 30 12:16:24 2010 +0200 Merge branch 'imx/for-2.6.36' of git://git.pengutronix.de/git/ukl/linux-2.6 into HEAD There are some more conflicts than detected by git, namely support for the newly added cpuimx machines needed to be converted to dynamic device registration. Signed-off-by: Uwe Kleine-König Conflicts: arch/arm/mach-imx/Makefile arch/arm/mach-imx/devices.c arch/arm/mach-imx/devices.h arch/arm/mach-imx/eukrea_mbimx27-baseboard.c arch/arm/mach-mx2/Kconfig arch/arm/mach-mx25/Makefile arch/arm/mach-mx25/devices.c arch/arm/plat-mxc/include/mach/mx25.h arch/arm/plat-mxc/include/mach/mxc_nand.h commit 6b6322676add0fa2713d0ec89a28390fd4d907f5 Author: Baruch Siach Date: Thu Jun 24 11:57:03 2010 +0300 mx25: add PWM4 to iomux Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit b04102bd345ccc8aeeff8b5acf999ce9a567d9b0 Author: Baruch Siach Date: Thu Jun 24 11:57:02 2010 +0300 mx25: add iomux defines for UART4 on KPP pins Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit 41f634758a73ad2e8554382c5b5edaff011975b9 Author: Fabio Estevam Date: Mon Jun 21 13:33:05 2010 -0700 mx31_3ds: Handle USB OTG GPIO Errors Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit f747847e8f0312ddc50fe7cb7ed4f6399ec154e0 Author: Baruch Siach Date: Mon Jun 21 08:16:00 2010 +0300 mx25: add support for the CSI device Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit 94d359586480fd6d22eccec5dc3693d7d0f68928 Author: Baruch Siach Date: Mon Jun 21 08:15:59 2010 +0300 mx27: add support for the CSI device Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit b725abad348d1f4fea8771eb23452eec2b7fe65f Author: Luotao Fu Date: Fri Jun 18 09:23:19 2010 +0200 pca100: clean up GPIO pin multiplexing cleaned up some duplicated mxc_gpio_mode calls and move the correpsonding pin multiplexing either into the initial pin config table or ifdef blocks. Signed-off-by: Luotao Fu Signed-off-by: Sascha Hauer commit 42216fc59db7dada1d622dfed36e7e56b1b68b04 Author: Luotao Fu Date: Fri Jun 18 09:23:18 2010 +0200 pca100: add framebuffer device support and TFT this one adds the frambuffer device and a TFT panel to the PhyCard-S (pca100) board. Signed-off-by: Luotao Fu Signed-off-by: Sascha Hauer commit 426ab49b3361474622e492cff949853584e3451f Author: Jason Wang Date: Sat Jun 12 22:22:39 2010 +0800 mxc/iomux: add GPIO bank offset for iomux v3 platforms These GPIO bank offsets are useful when define a gpio number. E.G. when GPIO PORTC pin 6 is used for irq request pin of external expanding device, we can define it like: #define EXP_PARENT_IRQ_PIN (GPIO_PORTC + 6) Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit b3fb53a81c73a78f31c3bddb6037adcb7d223ce4 Author: Jason Wang Date: Sat Jun 12 22:22:38 2010 +0800 mx51/iomux: add UART and GPIO pad definitions for imx51_3ds board Add UART2 CTS/RTS and UART3 RXD/TXD pad definitons for imx51_3ds board, add GPIO_1_6 definiton because this pin is used as a CPLD parent irq request pin on imx51_3ds board. Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit 310894b72b9c8f816bd516b6dd7a0875baa0d981 Author: Jason Wang Date: Sat Jun 12 22:22:37 2010 +0800 mx51/iomux: Fix mux mode and input path for two pads For pad EIM_D27 to work in UART3_RTS mode, the input path should be 3 instead of 0; for pad USBH1_STP to work in GPIO_1_27 mode, the mux value should be 2 instead of 8. Signed-off-by: Jason Wang Signed-off-by: Sascha Hauer commit 68d03da2ae85280b533205ae447f040fbfe47dd3 Author: Amit Kucheria Date: Wed Jun 16 14:00:15 2010 +0300 [PATCH] mxc: Fix pad names for imx51 The pads capable of being used as GPIOs had their pad-name and mode-name switched. Also, fix the following: - Whitespace fixes - Replace IOMUX_CONFIG_ALTn with 'n' Signed-off-by: Amit Kucheria Signed-off-by: Sascha Hauer commit 21744f193d3ee520c252cd9db0bdfac8ed3cd35f Author: Eric Bénard Date: Thu Jun 10 16:07:50 2010 +0200 i.MX35: add cpuimx35 support and its baseboard * cpuimx35 integrates i.MX35, RAM, NAND, Ethernet, I2C RTC, USB Host, USB OTG and I2C touchscreen controller * mbimxsd provides access to LCD, Audio, LED, Switch button, UART ... Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit ac0eb0f3ca3e3fff6ac083ee3a51b98f87d67843 Author: Baruch Siach Date: Thu Jun 10 12:14:32 2010 +0300 mx25: add a comment documenting undocumented IPG clocks The information in the i.MX25 Reference Manual is lacking. Add information from the Freescale BSP. Signed-off-by: Baruch Siach Acked-by: Wolfram Sang Signed-off-by: Sascha Hauer commit fd3c46b3062ac1ce0aa532c81922f9a0e28a6454 Author: Baruch Siach Date: Wed Jun 9 14:07:01 2010 +0300 mx25pdk: register watchdog device Signed-off-by: Baruch Siach Reviewed-by: Wolfram Sang Signed-off-by: Sascha Hauer commit 30816abc212587f8dc75dcfb4ef6d383fbe2d68c Author: Baruch Siach Date: Thu Jun 10 12:32:15 2010 +0300 mx25: add watchdog clock Signed-off-by: Baruch Siach Reviewed-by: Wolfram Sang Signed-off-by: Sascha Hauer commit 6f1fa706fc06dac9ba088e884ec8110475e42704 Author: Eric Bénard Date: Tue Jun 8 11:03:01 2010 +0200 i.MX25: add cpuimx25 module and its baseboard * cpuimx25 integrates i.MX25, RAM, NAND, Ethernet, I2C RTC, USB Host and USB OTG * mbimxsd provides access to LCD, Audio, LED, Switch button, UART ... Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 8402ed30e16c65ad8560ba3293c7cf9c259712eb Author: Eric Bénard Date: Tue Jun 8 11:03:00 2010 +0200 i.MX25: add AUDMUX and SSI support * add clocks for audmux and ssi 1 & 2 * add irq for ssi 1 & 2 * add devices platform for ssi1 & 2 * update audmux-v2 for i.MX25 * add base addresses for audmux & ssi 1 & 2 * add iomux configuration for GPIO for AUD5 port Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 2518507f727e6bf663fd0f276369cbdeb6a0ccc0 Author: Eric Bénard Date: Tue Jun 8 11:02:59 2010 +0200 i.MX25: fix USB gadget support i.MX25's udc port is the same as i.MX35's one Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 4ea0af0275d7340e5a6823c02e6167b8f3e244fd Author: Eric Bénard Date: Tue Jun 8 11:02:58 2010 +0200 i.MX25: fix EHCI support i.MX25's EHCI is the same as i.MX35's one. Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit a6e92b49ae5ef48e1791e5df8368af1fe8b3bd9a Author: Eric Bénard Date: Tue Jun 8 11:02:57 2010 +0200 i.MX25: fix get_rate_otg to return the correct value usb drivers need to get the right value for otg clock so calculate and return it Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 648beaf5bd7072031bddd84bf7bb482ec459a603 Author: Eric Bénard Date: Tue Jun 8 11:02:56 2010 +0200 plat-mxc/ehci.c: add i.MX25 support i.MX25's OTG has the same USBCTRL registers than i.MX35 so reuse most of the i.MX35's defines. Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 5a36c399234d511a347b2be4382c7a55f28c18ba Author: Eric Bénard Date: Tue Jun 8 11:02:55 2010 +0200 MX25: put define for OTG base address in right include the standard place for this define is include/mach/mx25.h Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit f42ae0e9f4996308860d5cee4803337d3ce3c4ae Author: Eric Bénard Date: Tue Jun 1 21:57:44 2010 +0200 i.MX27: add suspend to RAM support Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit e8c74860a724c714fbf041a779d7cfd147145b6f Author: Eric Bénard Date: Sun Jun 20 21:22:54 2010 +0200 eukrea_mbimx27: fix audio support when SOC is compiled as module Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit cbb052c905367e20c11f3b107cfe07e36dd6c8cd Author: Eric Bénard Date: Fri Jun 18 16:19:55 2010 +0200 mach-cpuimx27: fix USB_ULPI build warnings when CONFIG_USB_ULPI is not defined we actually get : warning: 'otg_pdata' defined but not used warning: 'usbh2_pdata' defined but not used Signed-off-by: Eric Bénard Cc: linux-arm-kernel@lists.infradead.org Cc: s.hauer@pengutronix.de Signed-off-by: Sascha Hauer commit 68ef866170dc92fb29e96e85fb6f438839500681 Author: Eric Bénard Date: Tue Jun 8 18:07:05 2010 +0200 i.MX35: return IPU clock's value for mx3fb without this patch, ipu_clk's value is 0 thus preventing mx3fb from calculating the right divisor for pixel clock generator. Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit f00b771a98f1387fc50a8214fa1803049c50451e Author: Dinh Nguyen Date: Thu May 27 10:45:05 2010 -0500 mx5: Register i2c on Freescale MX51 Babbage HW Add device registration and setup IOMUX pins in the mx51_babbage board feil. Signed-off-by: Dinh Nguyen Signed-off-by: Sascha Hauer commit 71c2e514d5827e4fb5c8f0f16d1e892dbfba3c00 Author: Dinh Nguyen Date: Thu May 27 10:45:04 2010 -0500 mx5: Add i2c to Freescale MX51 Babbage HW This patch adds I2C functionality to the Freescale MX51 Babbage HW. The patch adds device structures, i2c board slave device defines, IOMUX pin defines, and clocks. Signed-off-by: Dinh Nguyen Signed-off-by: Sascha Hauer commit 9b839ec0a880977d05ec4d25028ca4a0c3216c61 Author: Amit Kucheria Date: Fri May 28 11:29:09 2010 +0300 arm: mxc: utilise usecount field in clock operations This patch fixes the clock refcounting when reparenting is used. Boot-tested on imx51 babbage board. Sascha pointed out a good explanation of refcounting here: http://www.spinics.net/lists/arm-kernel/msg85879.html Signed-off-by: Amit Kucheria Signed-off-by: Sascha Hauer commit c45dd814008f8842f854aa6960dfd6c610a01873 Author: Baruch Siach Date: Wed May 26 15:12:11 2010 +0300 mx25pdk: add keypad support The keymap is taken from the Freescale supplied kernel. Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit 49535a952bb7ca41dc1c59d89e36f5ff2ef1bc08 Author: Baruch Siach Date: Wed May 26 15:12:10 2010 +0300 mx25: add platform code for imx-keypad Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit cce02464dd4733e8173d01a9a7a3ff5491c8546b Author: Baruch Siach Date: Mon May 31 08:49:40 2010 +0300 mxc_nand: add support for platform defined partitions Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer commit 5ea32021c173c0c97482a1342a9069733032b647 Author: Sascha Hauer Date: Tue Apr 27 15:24:01 2010 +0200 mxc_nand: Fix OOB handling The OOB handling in the mxc_nand driver is broken for v1 type controllers (i.MX27/31) with 512 byte page size. This perhaps did not show up because ubi does not use OOB. Update the driver to always read/write a whole page even if only OOB is requested. With this patch the driver passes the mtd_oobtest on i.MX27 with 512 byte page size. Also tested with 2048 byte page size and on i.MX35 (v2 type controller) Signed-off-by: Sascha Hauer Reported-by: Wolfram Sang Tested-by: Baruch Siach commit d2195d52aa5c638be74b396da00624a32d1c5a86 Author: Eric Bénard Date: Thu May 27 10:58:56 2010 +0200 eukrea_mbimx27: add audio codec Signed-off-by: Eric Bénard Cc: Mark Brown Cc: Liam Girdwood Signed-off-by: Sascha Hauer commit 5203b99c14fef139e5a61ed7cb1105aaa306df45 Author: Eric Bénard Date: Wed May 19 18:46:07 2010 +0200 eukrea_mbimx27: add support for the keyboard Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 0896a9e5ed2616e2c41d3bd9cbb265251fbc733a Author: Eric Bénard Date: Wed May 19 18:46:06 2010 +0200 MX2X: Add Keypad device definition for MX2X arch Based on work from Alberto Panizzo for MX3X Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit e76a17c2d9c7f91d3ee6469568535189e1c201ca Author: Eric Bénard Date: Wed May 19 18:46:05 2010 +0200 eukrea_mbimx27: use card detect through DAT3 for SDHC1 Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 16b3bf8c85a5dc821eea7f9bb48d13b32f42f7ee Author: Eric Bénard Date: Wed May 19 18:46:04 2010 +0200 mxcmmc: add card detect through DAT3 possibility Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit ebfc7e6e13ea61d6f9b3e5353e63f4d185a516b9 Author: Eric Bénard Date: Wed May 19 18:46:03 2010 +0200 mach-cpuimx27: register wdt and w1_master resources Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 9f2270da95aa0d19889d5511b1bb39465669b6aa Author: Eric Bénard Date: Wed May 19 18:46:02 2010 +0200 mach-cpuimx27: add USB Host2 and OTG support support copied from mach-pca100.c Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 62d725b1d38856c50aebc5542707c6f5ea07a451 Author: Eric Bénard Date: Thu May 20 09:22:28 2010 +0200 eukrea_mbimx27: fix ADS7846 support Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit ebb4fc821d02b356a3685dc03c2948744a84c28e Author: Eric Bénard Date: Wed May 19 18:46:00 2010 +0200 mach-cpuimx27: fix QuadUART's IRQ typo in pins'setup Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 2d66c7803595da0d4bcd949825d598575f5de9e6 Author: Eric Bénard Date: Wed May 19 18:45:59 2010 +0200 cpuimx27 and mbimx27: allow fine control of UART4 and SDHC2 usage Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit a465242eb03906ff3a0c04102c6353080f8e535f Author: Eric Bénard Date: Wed May 19 18:45:58 2010 +0200 eukrea_mbimx27-baseboard: add timings for DVI output Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit fc04ad0e326e82b90506b3cb83ddd58a6fb5b5d2 Author: Eric Bénard Date: Wed May 19 18:45:57 2010 +0200 eukrea_mbimx27-baseboard: add generic-bl and platform-lcd controls Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit 4eaad66adf607ba005e2cf118e9a542899bf0187 Author: Eric Bénard Date: Wed May 19 18:45:56 2010 +0200 eukrea_mbimx27-baseboard: fix typo in display name Signed-off-by: Eric Bénard Signed-off-by: Sascha Hauer commit c18e8fa5e56b07b5c723535c6539850c2ad95a19 Author: Wolfram Sang Date: Fri May 21 06:52:06 2010 +0200 pcm037/pcm043/pca100: fix ULPI-related build warnings Like this one (if CONFIG_USB_ULPI is not set): arch/arm/mach-mx3/mach-pcm043.c:312: warning: 'otg_pdata' defined but not used arch/arm/mach-mx3/mach-pcm043.c:317: warning: 'usbh1_pdata' defined but not used Signed-off-by: Wolfram Sang Signed-off-by: Sascha Hauer commit 21b0734476c3327d5fd3247335da01d5ad3bf103 Author: Daniel Mack Date: Tue May 25 16:46:56 2010 +0200 ARM: mx3: mx31lilly: pass mc13783 SPI IRQ pin This makes the resistive touch interface work. Signed-off-by: Daniel Mack Signed-off-by: Sascha Hauer commit 392c57a2ec811db37ae45adc513704cf92ba3e69 Author: Russell King Date: Mon Jul 26 11:02:31 2010 +0100 ARM: fix build warning in asm/elf.h CC kernel/elfcore.o In file included from include/linux/elf.h:7, from kernel/elfcore.c:1: arch/arm/include/asm/elf.h:124: warning: 'struct mm_struct' declared inside parameter list arch/arm/include/asm/elf.h:124: warning: its scope is only this definition or declaration, which is probably not what you want Signed-off-by: Russell King commit 6055930cba8fdb2c8855b32bae262aaf69c1fdb4 Author: Rabin Vincent Date: Mon Jul 26 11:09:27 2010 +0100 ARM: 6266/1: ux500: add separate irq lists for DB8500 and DB5500 Acked-by: Linus Walleij Acked-by: Srinidhi Kasagar Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit b042245fc2ca8c0326f3f1ea6c4dafc561bb3a82 Author: Linus Walleij Date: Fri Jul 23 11:49:52 2010 +0100 ARM: 6264/1: fix Versatile Express LED oversight My attempt to make the LEDs only compile for RealView and Versatile was futile: I missed the Versatile Express. So invert the logic and explicitly include the platforms to compile for. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit b5417019a6e614f5285f9eb8f9e5b2d62395965b Author: Linus Walleij Date: Tue Jul 20 22:32:00 2010 +0100 ARM: 6235/2: driver for the LEDs found in the later ARM refdesigns This adds a simple driver supporting the new LED framework with triggers and all for the RealView and Versatile platforms. The RealView and Versatile platform drivers were arranged to compile for all-but-integrator as a side effect since the Integrator has a different LED driver. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit ce8962455e902ffa08d59fd2b113942eaaffb0d6 Author: Linus Walleij Date: Sat Jul 17 12:33:48 2010 +0100 ARM: 6214/2: driver for the character LCD found in ARM refdesigns This adds a driver for the character LCD found on the ARM Versatile and RealView Platform Baseboards. It doesn't do very much more than display the text "ARM Linux" on the first line and the linux banner on the second line, but that's still useful. Cc: Andrew Morton Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 729419f0090601406abe714c5f8872a3bd53ff68 Author: Arnd Bergmann Date: Wed Jul 7 17:40:13 2010 -0400 oprofile: make event buffer nonseekable The event buffer cannot deal with seeks, so we should forbid that outright. Signed-off-by: Arnd Bergmann Cc: Robert Richter Cc: oprofile-list@lists.sf.net Signed-off-by: Robert Richter commit e5de3dfc391cceff6a4a3a0bb9c9c349a2e7c275 Author: Kulikov Vasiliy Date: Mon Jul 26 12:29:22 2010 +0400 sound: oss: waveartist: simplify waveartist_sleep() waveartist_sleep() uses loop with schedule_timeout() to unconditionally wait for msec. Use schedule_timeout_uninteruptible() instead. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit 2232e238295d8ea707fe4271ffbfd4f32346aa81 Author: Kulikov Vasiliy Date: Mon Jul 26 12:28:32 2010 +0400 sound: oss: au1550_ac97: simplify au1550_delay() au1550_delay() uses loop with schedule_timeout() to unconditionally wait for msec. Use schedule_timeout_uninteruptible() instead. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit 2385b789f1525542396d8f6b0cc37c1eb2493b4c Author: David Henningsson Date: Wed Jun 2 16:56:41 2010 +0200 ALSA: hda - Ensure codec patch files are checked for the correct codec ID Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit ba9f507a1bea5ca2fc4a19e227c56b60fd5faca3 Author: Xiaolong Chen Date: Mon Jul 26 01:01:11 2010 -0700 Input: adp5588-keys - export unused GPIO pins This patch allows exporting GPIO pins not used by the keypad itself to be accessible from elsewhere. Signed-off-by: Xiaolong Chen Signed-off-by: Yuanbo Ye Signed-off-by: Tao Hu Acked-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit b326b853dca2f410b254198ee89abad71a2f4668 Author: Chris Merrett Date: Mon Jul 26 01:14:59 2010 -0700 Input: xpad - add product ID for Hori Fighting Stick EX2 Signed-off-by: Chris Merrett Signed-off-by: Dmitry Torokhov commit cc74f4bc111e9554bcd6445ad0fe1d90e5d2eb34 Author: Steffen Klassert Date: Tue Jul 20 08:52:20 2010 +0200 crypto: pcrypt - Dont calulate a callback cpu on empty callback cpumask If the callback cpumask is empty, we crash with a division by zero when we try to calculate a callback cpu. So we don't update the callback cpu in pcrypt_do_parallel if the callback cpumask is empty. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 7424713b83587006da72da84d7922471e366faba Author: Steffen Klassert Date: Tue Jul 20 08:51:25 2010 +0200 padata: Check for valid cpumasks Now that we allow to change the cpumasks from userspace, we have to check for valid cpumasks in padata_do_parallel. This patch adds the necessary check. This fixes a division by zero crash if the parallel cpumask contains no active cpu. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit b89661dff525a46edb7ee8a4423b5212068c05c0 Author: Steffen Klassert Date: Tue Jul 20 08:49:20 2010 +0200 padata: Allocate cpumask dependend recources in any case The cpumask separation work assumes the cpumask dependend recources present regardless of valid or invalid cpumasks. With this patch we allocate the cpumask dependend recources in any case. This fixes two NULL pointer dereference crashes in padata_replace and in padata_get_cpumask. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit fad3a906d324c02b3c25ef51f702384154089846 Author: Steffen Klassert Date: Tue Jul 20 08:48:34 2010 +0200 padata: Fix cpu index counting The counting of the cpu index got lost with a recent commit. This patch restores it. This fixes a hang of the parallel worker threads on cpu hotplug. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 7b5e078cf04ea5b8b7ccffaf9a3607097f5c2359 Author: Mike Ditto Date: Sun Jul 25 21:54:28 2010 -0700 forcedeth: Fix different hardware statistics versions. The macros for the values of the bit field describing the four different versions of statistics supported by different hardware variants were being misused. Where the code was trying to test if the hardware implements V3, it was actually testing whether it implements any of V1, V2, or V3, causing the driver to report statistics that don't really exist in the hardware, with bogus values. Signed-off-by: Mike Ditto Signed-off-by: David S. Miller commit 0ccb3a75fe81ec3c4ceb7344c34d0497cbabb369 Author: Ben Skeggs Date: Mon Jul 26 11:35:37 2010 +1000 drm/nv50: fix some not-error error messages Signed-off-by: Ben Skeggs commit ee2e013131dcf6427334663662dbe760ccdba735 Author: Ben Skeggs Date: Mon Jul 26 09:28:25 2010 +1000 drm/nouveau: introduce gpio engine Signed-off-by: Ben Skeggs commit bf563a6b7c7efb283dd4ddf12cc90c2898195c16 Author: Ben Skeggs Date: Mon Jul 26 09:11:04 2010 +1000 drm/nv50: correct wait condition for instmem flush Reported-by: Marcin Kościelnicki Signed-off-by: Ben Skeggs commit c04c5b1da18ec73eaabc7b8a8757545865426fc2 Author: Francisco Jerez Date: Sat Jul 24 17:42:20 2010 +0200 drm/nouveau: Fix TV-out detection on unposted cards lacking a usable DCB table. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 946fd35f88ae7ef910229e7995ab0c32d52517b4 Author: Francisco Jerez Date: Sat Jul 24 17:41:48 2010 +0200 drm/nouveau: Get rid of the remaining VGA CRTC locking. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit c88c2e0631b03ffb1485f8790a5b659beb1ac0be Author: Francisco Jerez Date: Sat Jul 24 17:37:33 2010 +0200 drm/nouveau: Move display init to a new nouveau_engine. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit f1feda70b5dfdbe6a1069efffec099b430467331 Author: Francisco Jerez Date: Fri Jul 23 23:17:57 2010 +0200 drm/nouveau: Put back the old 2-messages I2C slave test. I was hoping we could detect I2C devices at a given address without actually writing data into them, but apparently some DDC slaves get confused with 0-bytes transactions. Put the good old test back. Reported-by: Ben Skeggs Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit e04d8e829d7807e132d8c82c3554b164a803c617 Author: Francisco Jerez Date: Fri Jul 23 20:29:13 2010 +0200 drm/nouveau: Reset AGP before running the init scripts. BIOS scripts usually make an attempt to reset the AGP controller, however on some nv4x cards doing it properly involves switching FW off and on: if we do that without updating the AGP bridge settings accordingly (e.g. with the corresponding calls to agp_enable()) we will be locking ourselves out of the card MMIO space. Do it from nouveau_mem_reset_agp() before the init scripts are executed. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 8bded189552800cae6c333475a54dabe048a74aa Author: Francisco Jerez Date: Wed Jul 21 21:08:11 2010 +0200 drm/nv30: Init the PFB+0x3xx memory timing regs. Fixes the randomly flashing vertical lines seen on some nv3x after a cold-boot. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit b01f06085e62c36659a5b6bde359ed1d98da91d7 Author: Ben Skeggs Date: Fri Jul 23 11:39:03 2010 +1000 drm/nouveau: disable hotplug detect around DP link training Signed-off-by: Ben Skeggs commit d0875edd9374296af8702d850254809e34a809cd Author: Ben Skeggs Date: Fri Jul 23 11:31:08 2010 +1000 drm/nv50: add function to control GPIO IRQ reporting Signed-off-by: Ben Skeggs commit 49eed80ad0cfa5d5d02992e8088463cbf1a5ff85 Author: Ben Skeggs Date: Fri Jul 23 11:17:57 2010 +1000 drm/nouveau: add nv_mask register accessor Signed-off-by: Ben Skeggs commit 5620ba4680db0ba25b89952bdda41a9c8fd11f50 Author: Ben Skeggs Date: Fri Jul 23 10:00:12 2010 +1000 drm/nouveau: fix build without CONFIG_ACPI Signed-off-by: Ben Skeggs commit 45d60d1bfcbaa660a510e3b4be5d857ca8d81088 Author: Francisco Jerez Date: Tue Jul 20 14:17:23 2010 +0200 drm/nouveau: Reset CRTC owner to 0 before BIOS init. Fixes suspend+multihead on some boards that also use BIOS scripts for modesetting. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 03cd06ca9046190e8418749c2c8f636e2625556c Author: Francisco Jerez Date: Tue Jul 20 03:08:25 2010 +0200 drm/nouveau: No need to lock/unlock the VGA CRTC regs all the time. Locking only makes sense in the VBIOS parsing code as it's executed before CRTC init. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit d06ab841d14f3747823e88e5172047367e051a32 Author: Francisco Jerez Date: Tue Jul 20 02:33:16 2010 +0200 drm/nouveau: Remove useless CRTC_OWNER logging. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 6d416d80f720f71e2dfe903d672bcca071822538 Author: Francisco Jerez Date: Mon Jul 19 15:55:08 2010 +0200 drm/nouveau: Add some generic I2C gadget detection code. Clean up and move the external TV encoder detection code to nouveau_i2c.c, it's also going to be useful for external TMDS and DDC detection. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 6d6a413aa23c8bc7a5787596e06f3d6d8d4f11c7 Author: Francisco Jerez Date: Mon Jul 19 15:28:41 2010 +0200 drm/i2c/ch7006: Don't assume that the specified config points to static memory. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 67eda20e6b7a757ed45f6b5a8a4d30c2a0d47c7a Author: Francisco Jerez Date: Tue Jul 13 15:59:50 2010 +0200 drm/nv04-nv3x: Implement init-compute-mem. Init-compute-mem was the last piece missing for nv0x-nv3x card cold-booting. This implementation is somewhat lacking but it's been reported to work on most chipsets it was tested in. Let me know if it breaks suspend to RAM for you. Signed-off-by: Francisco Jerez Tested-by: Patrice Mandin Tested-by: Ben Skeggs Tested-by: Xavier Chantry Tested-by: Marcin Kościelnicki Signed-off-by: Ben Skeggs commit 3c7066bca990a440b512663f89680bd1c1cae6c1 Author: Francisco Jerez Date: Tue Jul 13 15:50:23 2010 +0200 drm/nouveau: Add some PFB register defines. Also collect all the PFB registers in a single place and remove some duplicated definitions. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 20b240059297d1748f6120f432d0db0db9115c32 Author: Francisco Jerez Date: Sun Jul 18 17:07:16 2010 +0200 drm/nouveau: Add another Zotac FX5200 TV-out quirk. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit a5afb7758fcf558d6a8cd2546bc18aeedfc6192a Author: Francisco Jerez Date: Sun Jul 18 16:19:16 2010 +0200 drm/nouveau: Don't pick an interlaced mode as the panel native mode. Rescaling interlaced modes isn't going to work correctly, and even if it did, come on, interlaced flat panels? are you pulling my leg? Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit eae6192a9d0d31f657b50873789175794767bf38 Author: Francisco Jerez Date: Tue Jul 13 16:16:26 2010 +0200 drm/nouveau: Fix a sparse warning. It doesn't like variable length arrays. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit c58754703c7d448c94aebf5e500d4278f6fc0678 Author: Ben Skeggs Date: Fri Jul 16 16:17:27 2010 +1000 drm/nv50: fix regression that break LVDS in some places A previous commit started additionally using the SOR link when trying to match the correct output script. However, we never fill in this field for LVDS so we can never match a script at all. Signed-off-by: Ben Skeggs commit a6ed76d7ffc62ffa474b41d31b011b6853c5de32 Author: Ben Skeggs Date: Mon Jul 12 15:33:07 2010 +1000 drm/nouveau: support fetching LVDS EDID from ACPI Based on a patch from Matthew Garrett. Signed-off-by: Ben Skeggs Acked-by: Matthew Garrett commit 03639b50385810c2153624c0c8cb85de93d31356 Author: Ben Skeggs Date: Thu Jul 15 11:25:55 2010 +1000 drm/nouveau: remove quirk to fabricate DVI-A output on DCB 1.5 boards There's a report of this quirk breaking modesetting on at least one board. After discussion with Francisco Jerez, we've decided to remove it: it's not worth limiting the quirk to just where we know it can work? i'm happy either way really :) hmm, don't think so, most if not all DCB15 cards have just one DAC and with that quirk there's no way to tell if the load comes from the VGA or DVI port Signed-off-by: Ben Skeggs Acked-by: Francisco Jerez commit 734ee8357ac2685a306acd598826d5eb8a3fca30 Author: Ben Skeggs Date: Thu Jul 15 11:02:54 2010 +1000 drm/nv50: use correct PRAMIN flush register on original nv50 Signed-off-by: Ben Skeggs commit 1f4b16128439b225c2986f06d015c848c290d7d9 Author: Bhavesh Davda Date: Sat Jul 24 14:43:29 2010 +0000 net-next: Fix an overflow bug in vmxnet3 Tx descriptor Fix an overflow bug in vmxnet3 Tx descriptor This patch fixes a bug where a 16K buffer on a Tx descriptor was overflowing into the 'gen' bit in the descriptor thereby corrupting the descriptor and stalling the transmit ring. Signed-off-by: Bhavesh Davda Signed-off-by: Shreyas Bhatewara Signed-off-by: Matthew Delco Signed-off-by: Ronghua Zhang Signed-off-by: David S. Miller commit 690a1f2002a3091bd18a501f46c9530f10481463 Author: Andrew O. Shadoura Date: Sat Jul 24 16:24:17 2010 +0000 3c59x: Add ethtool WOL support This patch adds wrappers for ethtool to get or set wake-on-LAN setting without re-inserting the kernel module. Signed-off-by: Andrew O. Shadoura Signed-off-by: David S. Miller commit 57e46248a71bfcafb3937a7a5ed8ad324c9fc4f0 Author: Sony Chacko Date: Sat Jul 24 18:32:18 2010 +0000 qlcnic: fix diag resource allocation netif_device_attach missing from error path in qlcnic_diag_alloc_res Signed-off-by: Sony Chacko Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 36a1898ddfde3e36a6813ac72540e011a3de57ae Author: Amit Kumar Salecha Date: Sat Jul 24 18:32:17 2010 +0000 qlcnic: fix loopback test o Loopback not supported for virtual function. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 89c0fd014d34d409a7b196667c2b9a4813b6c968 Author: Ryusuke Konishi Date: Sun Jul 25 22:44:53 2010 +0900 nilfs2: reject filesystem with unsupported block size This inserts sanity check that refuses to mount a filesystem with unsupported block size. Previously, kernel code of nilfs was looking only limitation of devices though mkfs.nilfs2 limits the range of block sizes; there was no check that prevents rec_len overflow with larger block sizes. With this change, block sizes larger than 64KB or smaller than 1KB will get rejected explicitly by kernel. Signed-off-by: Ryusuke Konishi commit 6cda9fa2575ec0869fe77b0bdf295c0e51868cab Author: Ryusuke Konishi Date: Sun Jul 25 20:39:03 2010 +0900 nilfs2: avoid rec_len overflow with 64KB block size With 64KB blocksize, a directory entry can have size 64KB which does not fit into 16 bits we have for entry length. So this patch stores 0xffff instead and converts value when read from / written to disk. Nilfs derives its directory implementation from ext2 filesystem, and this draws upon the corresponding change on ext2. Signed-off-by: Ryusuke Konishi commit fed66381d65a35198639f564365e61a7f256bf79 Author: Eric Dumazet Date: Thu Jul 22 19:09:08 2010 +0000 net: pskb_expand_head() optimization Move frags[] at the end of struct skb_shared_info, and make pskb_expand_head() copy only the used part of it instead of whole array. This should avoid kmemcheck warnings and speedup pskb_expand_head() as well, avoiding a lot of cache misses. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit c1f79426e2df5ef96fe3e76de6c7606d15bf390b Author: Stefan Assmann Date: Thu Jul 22 02:50:21 2010 +0000 sysfs: add attribute to indicate hw address assignment type Add addr_assign_type to struct net_device and expose it via sysfs. This new attribute has the purpose of giving user-space the ability to distinguish between different assignment types of MAC addresses. For example user-space can treat NICs with randomly generated MAC addresses differently than NICs that have permanent (locally assigned) MAC addresses. For the former udev could write a persistent net rule by matching the device path instead of the MAC address. There's also the case of devices that 'steal' MAC addresses from slave devices. In which it is also be beneficial for user-space to be aware of the fact. This patch also introduces a helper function to assist adoption of drivers that generate MAC addresses randomly. Signed-off-by: Stefan Assmann Signed-off-by: David S. Miller commit 55bad82385f036a844429ff8989732f0ea3bfff9 Author: Eric Dumazet Date: Fri Jul 23 13:44:21 2010 +0000 ixgbe: fix ethtool stats In latest changes about 64bit stats on 32bit arches, [commit 28172739f0a276eb8 (net: fix 64 bit counters on 32 bit arches)], I missed ixgbe uses a bit of magic in its ixgbe_gstrings_stats definition. IXGBE_NETDEV_STAT() must now assume offsets relative to rtnl_link_stats64, not relative do dev->stats. As a bonus, we also get 64bit stats on ethtool -S Signed-off-by: Eric Dumazet Tested-by: Stephen Ko Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 9963a8bde60f3c139b7683e2ec7e0bf83c0d7581 Author: Rajesh Borundia Date: Fri Jul 23 21:24:25 2010 +0000 qlcnic: fix bandwidth check Fix maximum and minmum bandwith value. Signed-off-by: Rajesh Borundia Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 0d1f22e4907fec330ef0e475cb0dad48419498f2 Author: Albrecht Dreß Date: Mon Apr 26 11:18:12 2010 +0000 powerpc/5200: improve uart baud rate calculation (reach high baud rates, better accuracy) On the MPC5200B, make very high baud rates (e.g. 3 MBaud) accessible and achieve a higher precision for high baud rates in general. This is done by selecting the appropriate prescaler (/4 or /32). As to keep the code clean, the getuartclk method has been dropped, and all calculations are done in a new set_baudrate method. Notes: only "fsl,mpc5200b-psc-uart" compatible devices benefit from these improvements. Tested on a custom 5200B based board, from 110 baud up to 3 MBaud, and with both "fsl,mpc5200b-psc-uart" and "fsl,mpc5200-psc-uart" devices. Also tested on the mpc5121ads board. Signed-off-by: Albrecht Dreß [agust: fixed mpc5121 prescaler comment] Signed-off-by: Anatolij Gustschin Signed-off-by: Grant Likely commit d2f718398a21cdb925f12c2b332d206eacd967a6 Author: Grant Likely Date: Fri Jul 23 16:56:19 2010 -0600 of/irq: Fix endian issues in parsing interrupt specifiers This patch fixes some instances where interrupt specifiers are dereferenced directly instead of doing a be32_to_cpu() conversion first. Signed-off-by: Grant Likely commit 9a6b2e588c7809e86161236da3d29581bf5f8402 Author: Grant Likely Date: Fri Jul 23 01:48:25 2010 -0600 of: Fix phandle endian issues The flat tree code wasn't fixing the endianness on phandle values when unflattening the tree, and the code in drivers/of wasn't always doing a be32_to_cpu before trying to dereference the phandle values. This patch fixes them. Signed-off-by: Grant Likely commit 883c2cfc8bcc0fd00c5d9f596fb8870f481b5bda Author: Stuart Yoder Date: Fri Jul 23 13:42:44 2010 -0500 of/flattree: fix of_flat_dt_is_compatible() to match the full compatible string With the current string comparison, a device tree compatible of "foo-bar" would match as compatible with a driver looking for "foo". This patch fixes the function to use the of_compat_cmp() macro so that it does the right thing on all platforms (If sparc ever uses this code, it will still want the strncasecmp() behaviour). Signed-off-by: Stuart Yoder Signed-off-by: Grant Likely commit c0dd394ca5e78649b7013c3ce2d6338af9f228f0 Author: Jonas Bonn Date: Fri Jul 23 20:19:24 2010 +0200 of: remove of_default_bus_ids This list used was by only two platforms with all other platforms defining an own list of valid bus id's to pass to of_platform_bus_probe. This patch: i) copies the default list to the two platforms that depended on it (powerpc) ii) remove the usage of of_default_bus_ids in of_platform_bus_probe iii) removes the definition of the list from all architectures that defined it Passing a NULL 'matches' parameter to of_platform_bus_probe is still valid; the function returns no error in that case as the NULL value is equivalent to an empty list. Signed-off-by: Jonas Bonn [grant.likely@secretlab.ca: added __initdata annotations, warn on and return error on missing match table, and fix whitespace errors] Signed-off-by: Grant Likely commit c608558407aa64d2b98d58bfc116e95c0afb357e Author: Jonas Bonn Date: Fri Jul 23 19:19:35 2010 +0200 of: make of_find_device_by_node generic There's no need for this function to be architecture specific and all four architectures defining it had the same definition. The function has been moved to drivers/of/platform.c. Signed-off-by: Jonas Bonn [grant.likely@secretlab.ca: moved to drivers/of/platform.c, simplified code, and added kerneldoc comment] Signed-off-by: Grant Likely Acked-by: David S. Miller commit de48e369e8ea3a773cb2f959b76fcfad9966f4a0 Author: Grant Likely Date: Thu Jul 22 16:10:32 2010 -0600 microblaze: remove references to of_device and to_of_device of_device is just a #define alias to platform_device. This patch replaces all references to it with platform_device. Signed-off-by: Grant Likely commit cd4cd7306a403f62ef3ca783b9d1cf2a03e595ed Author: Grant Likely Date: Thu Jul 22 16:04:30 2010 -0600 sparc: remove references to of_device and to_of_device of_device is just a #define alias to platform_device. This patch replaces all references to it with platform_device. Signed-off-by: Grant Likely Acked-by: David S. Miller commit a454dc50590c6d758abba016a303a221f2f1b4b8 Author: Grant Likely Date: Thu Jul 22 15:52:34 2010 -0600 powerpc: remove references to of_device and to_of_device of_device is just a #define alias to platform_device. This patch replaces all references to it with platform_device. Signed-off-by: Grant Likely commit 94a0cb1fc61ab7a0d47d268a7764374efeb2160b Author: Grant Likely Date: Thu Jul 22 13:59:23 2010 -0600 of/device: Replace of_device with platform_device in includes and core code of_device is currently just an #define alias to platform_device until it gets removed entirely. This patch removes references to it from the include directories and the core drivers/of code. Signed-off-by: Grant Likely Acked-by: David S. Miller commit c1b6d380b781b5238989a4bfba02450057670804 Author: Grant Likely Date: Thu Jul 22 10:36:28 2010 -0600 of/device: Protect against binding of_platform_drivers to non-OF devices There is an unlikely chance of this situation is occurring, but it is easy to protect against. If a matching entry cannot be found in the of_match_table, then don't bind the driver. Signed-off-by: Grant Likely commit 295960429675e17ec658320ebb24385727032bed Author: Grant Likely Date: Tue Jun 29 11:15:54 2010 -0600 of: remove asm/of_device.h It is mostly unused now. Sparc has a few defines left in it, but they can be moved to other headers. Removing this header means that new architectures adding CONFIG_OF support don't need to also add this header file. Signed-off-by: Grant Likely Acked-by: David S. Miller commit 129ac799ad627b1e08382739f9e8cd75d7477fa3 Author: Grant Likely Date: Tue Jun 29 09:26:53 2010 -0700 of: remove asm/of_platform.h Only thing left in it is of_instantiate_rtc() which can be moved to asm/prom.h on PowerPC and is unused in microblaze. Signed-off-by: Grant Likely Acked-by: David S. Miller commit 1ab1d63a85cee2545272f63a7644e9f855cb65d0 Author: Grant Likely Date: Thu Jun 24 15:14:37 2010 -0600 of/platform: remove all of_bus_type and of_platform_bus_type references Both of_bus_type and of_platform_bus_type are just #define aliases for the platform bus. This patch removes all references to them and switches to the of_register_platform_driver()/of_unregister_platform_driver() API for registering. Subsequent patches will convert each user of of_register_platform_driver() into plain platform_drivers without the of_platform_driver shim. At which point the of_register_platform_driver()/of_unregister_platform_driver() functions can be removed. Signed-off-by: Grant Likely Acked-by: David S. Miller commit eca3930163ba8884060ce9d9ff5ef0d9b7c7b00f Author: Grant Likely Date: Tue Jun 8 07:48:21 2010 -0600 of: Merge of_platform_bus_type with platform_bus_type of_platform_bus was being used in the same manner as the platform_bus. The only difference being that of_platform_bus devices are generated from data in the device tree, and platform_bus devices are usually statically allocated in platform code. Having them separate causes the problem of device drivers having to be registered twice if it was possible for the same device to appear on either bus. This patch removes of_platform_bus_type and registers all of_platform bus devices and drivers on the platform bus instead. A previous patch made the of_device structure an alias for the platform_device structure, and a shim is used to adapt of_platform_drivers to the platform bus. After all of of_platform_bus drivers are converted to be normal platform drivers, the shim code can be removed. Signed-off-by: Grant Likely Acked-by: David S. Miller commit 05212157e94ccf4cf458413bbba509cfa95ff92b Author: Grant Likely Date: Tue Jun 8 07:48:20 2010 -0600 drivercore/of: Add OF style matching to platform bus As part of the merge between platform bus and of_platform bus, add the ability to do of-style matching to the platform bus. Signed-off-by: Grant Likely Acked-by: Greg Kroah-Hartman CC: Michal Simek CC: Grant Likely CC: Benjamin Herrenschmidt CC: Stephen Rothwell CC: linux-kernel@vger.kernel.org CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org CC: devicetree-discuss@lists.ozlabs.org commit 4e4f62bf7396fca48efe61513640ee399a6046e3 Merge: 9e3288d b37fa16 Author: Grant Likely Date: Sat Jul 24 09:49:13 2010 -0600 Merge commit 'v2.6.35-rc6' into devicetree/next Conflicts: arch/sparc/kernel/prom_64.c commit 40f2b6ffe525e975203c1621d4d4abaa7689b674 Author: Tejun Heo Date: Sat Jul 24 11:10:09 2010 +0200 fscache: fix build on !CONFIG_SYSCTL Commit 8b8edefa (fscache: convert object to use workqueue instead of slow-work) made fscache_exit() call unregister_sysctl_table() unconditionally breaking build when sysctl is disabled. Fix it by putting it inside CONFIG_SYSCTL. Signed-off-by: Tejun Heo Reported-by: Randy Dunlap Cc: David Howells commit c28e69d9332aab739920082a0a5677d861390824 Author: Ryusuke Konishi Date: Sat Jul 24 17:09:10 2010 +0900 nilfs2: simplify nilfs_get_page function Implementation of nilfs_get_page() is a bit old as below: - A common read_mapping_page inline function is now available instead of its read_cache_page use. - wait_on_page_locked() use in the function is eliminable since read_cache_page function does the same thing through wait_on_page_read(). - PageUptodate() check is eliminable for the same reason. This renews nilfs_get_page() based on these points. Signed-off-by: Ryusuke Konishi commit 2a88e7e559f2358f4e1422d0b0c0278a74136581 Merge: 344e0f6 7a17a33 Author: David S. Miller Date: Fri Jul 23 14:03:38 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-commands.h commit 344e0f623cec5eba273db06fe57db080988d6b26 Author: Ben Hutchings Date: Thu Jul 22 14:18:28 2010 +0000 3c59x: Fix call to mdio_sync() with the wrong argument commit a095cfc40ec7ebe63e9532383c5b5c2a27b14075 "3c59x: Specify window explicitly for access to windowed registers" changed the first parameter to mdio_sync(), from a pointer to the register mapping, to a pointer to the vortex_private structure, and changed all but one of the call sites. Fix that last one. Reported-by: Luca Falavigna Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 9c1797808996eef47a7954ec580c6db7de1fff76 Author: Kulikov Vasiliy Date: Fri Jul 23 06:36:15 2010 +0000 net: s2io: fix buffer overflow vpd_data[] is allocated as kmalloc(256, GFP_KERNEL), so if cnt = 255 then (cnt + 3) overflows 256. memset() is executed without checking. vpd_data[cnt+2] must be less than 256-cnt-2 as the latter is number of vpd_data[] elements to copy. Do not fill with zero the beginning of nic->serial_num as it will be filled with vpd_data[]. String in product_name[] should be terminated by '\0'. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 50a749c1f2fc8f03232c174c9dbc78a78f9bebfd Author: Dan Carpenter Date: Fri Jul 23 01:05:05 2010 +0000 mv643xx_eth: potential null dereference We assume that "pd" can be null on the previous line, and throughout the function so we should check it here as well. This was introduced by 9b2c2ff7a1c0 "mv643xx_eth: use sw csum for big packets" Signed-off-by: Dan Carpenter Acked-by: Lennert Buytenhek Signed-off-by: David S. Miller commit f89f5d0e94e001e0a09bd433c0c0f089eaf0dea9 Author: Kulikov Vasiliy Date: Fri Jul 23 06:44:44 2010 +0000 net: 3c59x: fix leak of iomaps If vortex_probe1() fails we should unmap ioaddr mapped earlier. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 451e07a26483f3234f1df6b1f60b949dab4e7719 Author: Andy Shevchenko Date: Fri Jul 23 03:18:10 2010 +0000 net: core: don't use own hex_to_bin() method Signed-off-by: Andy Shevchenko Signed-off-by: David S. Miller commit 882d829a23756dd827d8ed30000f73f1b035ad29 Author: Andy Shevchenko Date: Fri Jul 23 03:18:09 2010 +0000 wireless: use newly introduced hex_to_bin() Signed-off-by: Andy Shevchenko Cc: Corey Thomas Cc: "John W. Linville" Cc: linux-wireless@vger.kernel.org Signed-off-by: David S. Miller commit fd1f170dfc9d432061540422ddc97058154d94b9 Author: Andy Shevchenko Date: Fri Jul 23 03:18:08 2010 +0000 usb: usbnet: use newly introduced hex_to_bin() Signed-off-by: Andy Shevchenko Cc: Greg Kroah-Hartman Cc: linux-usb@vger.kernel.org Signed-off-by: David S. Miller commit 5c4ac8c60aba4b2e9549d139586612855b0fea09 Author: Andy Shevchenko Date: Fri Jul 23 03:18:07 2010 +0000 drivers: net: use newly introduced hex_to_bin() Signed-off-by: Andy Shevchenko Signed-off-by: David S. Miller commit 2b27822ff8f257f810761c3d23e8104d1404cf3b Author: Andy Shevchenko Date: Fri Jul 23 03:18:06 2010 +0000 drivers: atm: don't use private copy of hex_to_bin() Signed-off-by: Andy Shevchenko Cc: Chas Williams Cc: linux-atm-general@lists.sourceforge.net Signed-off-by: David S. Miller commit e26198430919927d4c6128b77a35a6a8f735df31 Author: Ajit Khaparde Date: Fri Jul 23 02:05:36 2010 +0000 be2net: bump the driver version number Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 3486be29e63a9e8b0b013a9581879d8a48790d20 Author: Ajit Khaparde Date: Fri Jul 23 02:04:54 2010 +0000 be2net: variable name changes This patch changes names of some variables. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 8943807c214535c079bd30469562d1126b70bc2a Author: Ajit Khaparde Date: Fri Jul 23 12:42:40 2010 -0700 be2net: supress printing error when mac query fails for VF When a virtual function driver in initialized, the network mac query command can fail. Skip display of error message in that case. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit e1d187353fc0597d24cf3169b1bbc1776058e883 Author: Ajit Khaparde Date: Fri Jul 23 01:52:13 2010 +0000 be2net: code to support tx rate configuration on virtual functions Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 1da87b7fafebb7874622602f79a5fec0425aede7 Author: Ajit Khaparde Date: Fri Jul 23 01:51:22 2010 +0000 be2net: add vlan support for sriov virtual functions Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 64600ea5f389858e183d3739776f4667265cc77f Author: Ajit Khaparde Date: Fri Jul 23 01:50:34 2010 +0000 be2net: add support to get vf config Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 9cd9000bdee9131ffd2ce92ca6ef9c86467edd25 Author: Ajit Khaparde Date: Fri Jul 23 01:49:04 2010 +0000 be2net: change to call pmac_del only if necessary If a mac address has not been configured for a VF, there is no need to call be_cmd_pmac_del. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 37773e8b2da813045d79b38e973cb07b5df788dd Author: Ursula Braun Date: Thu Jul 22 23:15:10 2010 +0000 qeth: avoid useless removal of multicast addresses Function qeth_l2_remove_device invokes qeth_l2_del_all_mc at the end. This is needless, because it is already called in the offline function. And even more this is invalid, because multicast addresses cannot be removed in DOWN state. Thus this patch deletes invocation of qeth_l2_del_all_mc in function qeth_l2_remove_device. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 4986f3f01aca9a332fa8e0fc9fdf3338791ee374 Author: Julia Lawall Date: Thu Jul 22 23:15:09 2010 +0000 qeth: Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // Signed-off-by: Julia Lawall Signed-off-by: Andrew Morton Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit bbb822a8c032813148888fcec85e89edb17286d3 Author: Ursula Braun Date: Thu Jul 22 23:15:08 2010 +0000 qeth: return zero from reply callback functions Reply callback functions in qeth should return zero if command response consists of one part only, otherwise qeth continues waiting for further parts of the command response. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit e48d24a6e31556d62bb903a0deea3a4c15900938 Author: Ursula Braun Date: Thu Jul 22 23:15:07 2010 +0000 claw: A claw device is a group of just 2 ccw devices When creating a claw device, just 2 subchannels have to be grouped. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 908abbb5773213288c8ed033c3313440b31cfbf3 Author: Ursula Braun Date: Thu Jul 22 23:15:06 2010 +0000 qeth: avoid loop if ipa command response is missing If qeth issues an ipa command, but for some reasons the response never comes back, qeth reaches a timeout. Reset the irq_pending flag of the write channel in timeout handling code and trigger a recovery to avoid endless looping for the following ipa command. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 9dc48ccc68b9dfc01c2beee2d4317fb3df3fdce9 Author: Ursula Braun Date: Thu Jul 22 23:15:05 2010 +0000 qeth: serialize sysfs-triggered device configurations This patch serializes device removal and other sysfs-triggered configurations by moving removal of sysfs-attributes to the beginning of the remove functions. And it serializes online/offline setting and discipline-switching (causing reestablishing of the net_device) by making use of a new discipline mutex. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 75e0de13631e115768a97131a2d7f5259217512d Author: Carsten Otte Date: Thu Jul 22 23:15:04 2010 +0000 qeth: Clear mac_bits field when switching between Layer 2 and Layer 3 This patch fixes a problem that occurs when switching from layer 3 to layer 2 mode. Resetting this mac_bits makes sure that we retrieve our mac address from the card, otherwise the interface simply would'nt work. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 6298263ac0a9aab94b399d30f67e355edc4c4f49 Author: Klaus-Dieter Wacker Date: Thu Jul 22 23:15:03 2010 +0000 qeth: IP address takeover flag setting The qeth IP address flag setting is possible when device is offline. When setting device online afterwards the current set IP addresses have to be correctly registered with the device regarding the IP address takeover attribute. Signed-off-by: Klaus-Dieter Wacker Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 1bd14eaf9e2e790c79c6060b9c630afddc67dfac Author: Johannes Berg Date: Thu Jul 15 11:48:21 2010 -0700 iwlwifi: remove spurious semicolons defines shouldn't be terminated with a semicolon, the code using them should supply it. Luckily these are not used in a context where it matters. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 6abbe554bab8ab908b3963577e14dc2e716fd485 Author: Johannes Berg Date: Thu Jul 15 05:59:07 2010 -0700 iwlwifi: reduce beacon fill conditions Since the ibss_beacon variable will only be filled in the appropriate modes, there's no reason to be checking the mode again. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit c6fa17ed3fadaf056173c409c0877df428a152ec Author: Wey-Yi Guy Date: Thu Jul 15 05:58:30 2010 -0700 iwlwifi: read multiple MAC addresses Some devices may have multiple MAC addresses in their EEPROM, read them and advertise them to cfg80211. Signed-off-by: Wey-Yi Guy Signed-off-by: Johannes Berg commit 0bc5774f4e1df0204e68bfcd84e122d430dcf35c Author: Johannes Berg Date: Thu Jul 15 05:57:48 2010 -0700 iwlwifi: make iwl_mac_beacon_update static This function is only needed in the same file it is defined in, i.e. iwl-core.c Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 704da534af1e366214f790b381fed73ba6c5d37b Author: Johannes Berg Date: Wed Jul 14 09:34:50 2010 -0700 iwlagn: fix firmware loading TLV error path gcc complains about the firmware loading: iwl-agn.c: In function ‘iwlagn_load_firmware’: iwl-agn.c:1860: warning: ‘tlv_len’ may be used uninitialized in this function iwl-agn.c:1861: warning: ‘tlv_type’ may be used uninitialized in this function iwl-agn.c:1862: warning: ‘tlv_data’ may be used uninitialized in this function This is almost correct but we do do break out of the TLV parsing loop when setting ret. However, the code is hard to follow, and clearly even the compiler is having issues with it too. Additionally, however, the current code is wrong. If there is a TLV length check error, the code will report invalid TLV after parsing: ... because "len" will still be non-zero as we broke out of the loop. So to remove the warning and fix that issue, make the code easier to read by doing length checking with an error label. As a result, we can completely remove the "ret" variable. Also, while at it, remove the "fixed_tlv_size" variable since each TLV type has its own specified length, it just happens that we have only variable length, flags (0 length) and u32 TLVs right now. It should still be checked with more explicit length checks to make it easier to understand. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 6a822d060c439bb700f2369767105f49135b94f8 Author: Wey-Yi Guy Date: Tue Jul 13 17:13:15 2010 -0700 iwlwifi: add TLV to specify the size of phy calibration table Different devices have different size of phy calibration table; add new TLV to specify the size. If the TLV is not part of uCode header, the default table size will be used to make sure the backward compatibilities. Signed-off-by: Wey-Yi Guy commit ffb7d896b3bc21e09d77fed45b52b2ff4ce213e5 Author: Wey-Yi Guy Date: Wed Jul 14 08:09:55 2010 -0700 iwlagn: add bluetooth stats to debugfs For WiFi/BT combo devices, add bluetooth statistics counter read function to debugfs. Signed-off-by: Wey-Yi Guy commit 7980fba54ec42f7c206b2bb469baeb3a0a2e8a93 Author: Wey-Yi Guy Date: Wed Jul 14 08:08:57 2010 -0700 iwlagn: Add support for bluetooth statistics notification WiFi/BT combo devices has different statistics notification structure, adding the support here to make sure the structure align correctly. Signed-off-by: Wey-Yi Guy commit af8ee0553b4ce077319190cde680d74ad18ddfad Author: Wey-Yi Guy Date: Wed Jul 14 08:08:05 2010 -0700 iwlagn: add .cfg flag to idenfity the need for bt statistics Only WiFi/BT combo devices need to use bluetooth version of statistics notification; adding the flag in .cfg file to indicate the need for using different data structure. Signed-off-by: Wey-Yi Guy commit 325322ee34d726bff922853d509e135c8d262e2f Author: Wey-Yi Guy Date: Wed Jul 14 08:07:27 2010 -0700 iwlagn: add statistic notification structure for WiFi/BT devices If its WiFi/BT combo device, the statistics notification sent by uCode will include the additional BT related statistics counters. Adding new data structure to support the new layout. Signed-off-by: Wey-Yi Guy commit af29a5b1781bf642a29b5e9bb6162dccfcd626df Author: Florian Tobias Schandinat Date: Fri Jul 23 11:32:25 2010 +0000 viafb: fix accel_flags check_var bug viafb: fix accel_flags check_var bug In check_var we should check and modify the var given and not the one which is currently active. So this code was obviously wrong. Probably this was doing no harm because all acceleration functions also check whether acceleration is possible. (otherwise I would expect this to lead to a null pointer dereference) Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit cd5899551c48dff5fe05914fc187932111091953 Author: Florian Tobias Schandinat Date: Tue Jul 13 19:44:05 2010 +0000 viafb: probe cleanups viafb: probe cleanups Removal of strange special cases that must not exist as well as a useless check. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit 45f85f4a01b6215a9d75008d0a999cb7795680a3 Author: Florian Tobias Schandinat Date: Tue Jul 13 19:19:17 2010 +0000 viafb: remove ioctls which break the framebuffer interface viafb: remove ioctls which break the framebuffer interface The ioctls VIAFB_SET_DEVICE, VIAFB_SET_DEVICE_INFO and VIAFB_SET_SECOND_MODE are removed because they prevent a clean framebuffer driver because they modify the hardware and/or the internal structures. There are no known applications using these ioctls so no breakage is expected. Additionaly the main functionality was duplicating the framebuffer interface so there really should not exist any user. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit 65123c68d16257e7d21b742e9d80df947c891a6d Author: Florian Tobias Schandinat Date: Tue Jul 13 17:58:06 2010 +0000 viafb: update fix before calculating depth viafb: update fix before calculating depth As the depth calculation depends on information in fix it is saner to do the update first. No runtime change expected as the value visual in fix used never changes to MONO. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit 1f844350909fe249cf6d9722da1735e4076ff7f0 Author: Florian Tobias Schandinat Date: Sun Jul 11 00:57:34 2010 +0000 viafb: PLL value cleanup viafb: PLL value cleanup This is a big change of how PLL values are handled on the road to dynamic PLL value generation. The table was converted automatically in the relevant parameters for frequency generation. Sadly there were some bits set whose meaning is unknown. Those differences are documented but ignored as the unichrome code implies that they are not important (a big thanks to Luc for his amazing work). The PLL values for 31490000 and 133308000 are deleted as they were more than 5% off and not used anyway. The values for CX700@60466000 and VX855@153920000 are corrected as they were wrong and easily correctable as enough correct values was available because CX700 and VX855 support the same values only with a little difference in hardware format. All remaining values are not more than 2% off. Additionally the surrounding code is changed as needed especially the byte order of the values written to hardware to allow nicer conversion functions. This is mostly a change preparing for dynamic PLL generation and the two corrected values aside no runtime change is expected. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit cc3fd679a344468e892a109b8de3e2948ce14e0f Author: Florian Tobias Schandinat Date: Wed Jun 2 19:41:23 2010 +0000 viafb: simplify lcd size "detection" viafb: simplify lcd size "detection" Remove all occurences of get_lcd_size_method as only the values GET_LCD_SIZE_BY_VGA_BIOS and GET_LCD_SIZE_BY_USER_SETTING were used which had the identical code so there is no need to make things look more complicated than they actually are. Just a bit of of cleanup, really no regressions expected. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit ad0676cf81c240e3857dc090c9ce0dde7537ac93 Author: Florian Tobias Schandinat Date: Sat May 22 22:53:06 2010 +0000 viafb: fix PCI table viafb: fix PCI table This patch fixes an oddity in the device table where the P4M890 ID was assigned with the enumeration value of CN700 which itself was missing. This is a regression introduced by "viafb: make viafb a first-class citizen using pci_driver" While at it reorder the table to reflect the order of the enumeration values. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan Cc: Jonathan Corbet Cc: Harald Welte commit 7df0884ce144396fc151f2af7a73d5fb305f9b03 Author: Changli Gao Date: Fri Jul 23 16:25:11 2010 +0200 netfilter: iptables: use skb->len for accounting Use skb->len for accounting as xt_quota does. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 261abc8c964e018256c1bcbd99b8a208c624d7cc Author: Changli Gao Date: Fri Jul 23 16:24:34 2010 +0200 netfilter: ip6tables: use skb->len for accounting ipv6_hdr(skb)->payload_len is ZERO and can't be used for accounting, if the payload is a Jumbo Payload specified in RFC2675. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit f1ad752a096aca76f93cd7f86815af8093366fdc Author: Florian Tobias Schandinat Date: Sat May 22 22:32:57 2010 +0000 viafb: add lcd scaling support for some IGPs viafb: add lcd scaling support for some IGPs These IGPs should also support lcd scaling but likely this switch was missed when adding support for them. Fix it, allowing lcd scaling on CN750, VX800 and VX855. At least this improves the situation for VX855. (there seems to be another scaling unrelated bug somewhere) Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit 119b953a80d28821a56567d84dab860b0edc7940 Author: Florian Tobias Schandinat Date: Sat May 22 21:32:32 2010 +0000 viafb: improve lcd code readability viafb: improve lcd code readability This changes the code to better reflect that we can (currently) only perform upscaling. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit 4a73d70ebe890fb71dcdd1cfcb788e1432ed0034 Author: Florian Tobias Schandinat Date: Sat May 22 21:22:36 2010 +0000 viafb: remove duplicated scaling code viafb: remove duplicated scaling code The code for P4M900 does the same as for all newer IGPs so there is no reason to duplicate it. Just reducing the code to maintain. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan commit c7babebd4de59799be36f084bd3b5c89ca93aaae Author: Florian Tobias Schandinat Date: Thu May 20 14:06:57 2010 +0000 MAINTAINERS: update viafb entry MAINTAINERS: update viafb entry List the files that got recently moved to include/linux. Add myself as a maintainer and remove Scott as his email address is no longer valid and he has shown no interest in maintaining viafb. Signed-off-by: Florian Tobias Schandinat Cc: Joseph Chan Cc: Jonathan Corbet Cc: Harald Welte commit 2b08de0073a5697cf84d6f448d6dbc6cf02fc6b5 Author: Andrey Vagin Date: Tue Jul 20 15:23:14 2010 -0700 posix_timer: Move copy_to_user(created_timer_id) down in timer_create() According to Oleg Nesterov: We can move copy_to_user(created_timer_id) down after "if (timer_event_spec)" block too. (but before CLOCK_DISPATCH(), of course). Signed-off-by: Andrey Vagin Cc: Oleg Nesterov Cc: Pavel Emelyanov Cc: Stanislaw Gruszka Cc: Andrey Vagin Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit 22b8f15c2f7130bb0386f548428df2ffd4e81903 Author: Patrick Pannuto Date: Mon Jul 19 15:09:26 2010 -0700 timer: Added usleep[_range] timer usleep[_range] are finer precision implementations of msleep and are designed to be drop-in replacements for udelay where a precise sleep / busy-wait is unnecessary. They also allow an easy interface to specify slack when a precise (ish) wakeup is unnecessary to help minimize wakeups Signed-off-by: Patrick Pannuto Cc: akinobu.mita@gmail.com Cc: sboyd@codeaurora.org Acked-by: Arjan van de Ven LKML-Reference: <4C44CDD2.1070708@codeaurora.org> Signed-off-by: Thomas Gleixner commit 866e26115cba6b59cec669b6307599e3e4440491 Author: J. Bruce Fields Date: Tue Jul 20 15:23:15 2010 -0700 timers: Document meaning of deferrable timer Steal some text from 6e453a67510 "Add support for deferrable timers". A reader shouldn't have to dig through the git logs for the basic description of a deferrable timer. Signed-off-by: J. Bruce Fields Cc: johnstul@us.ibm.com Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit af4718f3f996925f770e540004ec9224243d1682 Author: J. Bruce Fields Date: Wed Jul 21 18:31:42 2010 -0400 nfsd: minor nfsd_svc() cleanup More idiomatic to put the error case in the if clause. Signed-off-by: J. Bruce Fields commit 59db4a0c102e0de226a3395dbf25ea51bf845937 Author: J. Bruce Fields Date: Wed Jul 21 18:29:25 2010 -0400 nfsd: move more into nfsd_startup() This is just cleanup--it's harmless to call nfsd_rachache_init, nfsd_init_socks, and nfsd_reset_versions more than once. But there's no point to it. Signed-off-by: J. Bruce Fields commit ac77efbe2b4d2a1e571a4f1e5b6e47de72a7d737 Author: Jeff Layton Date: Tue Jul 20 14:10:22 2010 -0400 nfsd: just keep single lockd reference for nfsd Right now, nfsd keeps a lockd reference for each socket that it has open. This is unnecessary and complicates the error handling on startup and shutdown. Change it to just do a lockd_up when starting the first nfsd thread just do a single lockd_down when taking down the last nfsd thread. Because of the strange way the sv_count is handled this requires an extra flag to tell whether the nfsd_serv holds a reference for lockd or not. Signed-off-by: Jeff Layton Signed-off-by: J. Bruce Fields commit 628b368728e23188ac41b3f00411b02be8e697f1 Author: Jeff Layton Date: Wed Jul 21 16:40:08 2010 -0400 nfsd: clean up nfsd_create_serv error handling There doesn't seem to be any need to reset the nfssvc_boot time if the nfsd startup failed. Signed-off-by: Jeff Layton Signed-off-by: J. Bruce Fields commit 0cd14a061e32d4ddaadad24d86d06cc860010591 Author: Jeff Layton Date: Mon Jul 19 16:50:06 2010 -0400 nfsd: fix error handling in __write_ports_addxprt __write_ports_addxprt calls nfsd_create_serv. That increases the refcount of nfsd_serv (which is tracked in sv_nrthreads). The service only decrements the thread count on error, not on success like __write_ports_addfd does, so using this interface leaves the nfsd thread count high. Fix this by having this function call svc_destroy() on error to release the reference (and possibly to tear down the service) and simply decrement the refcount without tearing down the service on success. This makes the sv_threads handling work basically the same in both __write_ports_addxprt and __write_ports_addfd. Signed-off-by: Jeff Layton Signed-off-by: J. Bruce Fields commit 78a8d7c8ca3f0cb5cd2a276c6fc17c8c006d0b3c Author: Jeff Layton Date: Mon Jul 19 16:50:05 2010 -0400 nfsd: fix error handling when starting nfsd with rpcbind down The refcounting for nfsd is a little goofy. What happens is that we create the nfsd RPC service, attach sockets to it but don't actually start the threads until someone writes to the "threads" procfile. To do this, __write_ports_addfd will create the nfsd service and then will decrement the refcount when exiting but won't actually destroy the service. This is fine when there aren't errors, but when there are this can cause later attempts to start nfsd to fail. nfsd_serv will be set, and that causes __write_versions to return EBUSY. Fix this by calling svc_destroy on nfsd_serv when this function is going to return error. Signed-off-by: Jeff Layton Signed-off-by: J. Bruce Fields commit 4ad9a344be2291b1e594a4a5aee25c5a5df34a97 Author: Jeff Layton Date: Mon Jul 19 16:50:04 2010 -0400 nfsd4: fix v4 state shutdown error paths If someone tries to shut down the laundry_wq while it isn't up it'll cause an oops. This can happen because write_ports can create a nfsd_svc before we really start the nfs server, and we may fail before the server is ever started. Also make sure state is shutdown on error paths in nfsd_svc(). Use a common global nfsd_up flag instead of nfs4_init, and create common helper functions for nfsd start/shutdown, as there will be other work that we want done only when we the number of nfsd threads transitions between zero and nonzero. Signed-off-by: J. Bruce Fields commit 55b13354d789dcf0b85db6d86fc3a9e57dca02c1 Author: J. Bruce Fields Date: Mon Jul 19 16:38:24 2010 -0400 nfsd: remove unused assignment from nfsd_link Trivial cleanup, since "dest" is never used. Reported-by: Anshul Madan Signed-off-by: J. Bruce Fields commit 49daf6a22622d4e1619aeaad5f9f0472bf89daff Author: Changli Gao Date: Fri Jul 23 14:07:47 2010 +0200 xt_quota: report initial quota value instead of current value to userspace We should copy the initial value to userspace for iptables-save and to allow removal of specific quota rules. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit b0c81aa566cccbe26bd99237873fb8428827d82f Author: Changli Gao Date: Fri Jul 23 14:04:03 2010 +0200 netfilter: xt_quota: use per-rule spin lock Use per-rule spin lock to improve the scalability. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 8a6c5b261c1188379469807d84bfb1365d0f6823 Author: Arnaldo Carvalho de Melo Date: Tue Jul 20 14:42:52 2010 -0300 perf sort: Make column width code per hists instance They were globals, and since we support multiple hists and sessions at the same time, it doesn't make sense to calculate those values considereing all symbols in all sessions. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 7a007ca90b7c465137de06795ef4d5faa10f459e Author: Arnaldo Carvalho de Melo Date: Wed Jul 21 09:19:41 2010 -0300 perf hists: Mark entries filtered by parent And don't consider them in hists__inc_nr_entries. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian Signed-off-by: Arnaldo Carvalho de Melo commit f667009ecc3304248727236ff88f9070f918355f Author: Changli Gao Date: Fri Jul 23 13:40:53 2010 +0200 netfilter: arptables: use arp_hdr_len() use arp_hdr_len(). Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 8e2b2b46ea4ca5ef790dddf78b360ed736a62d7c Author: Stefan Richter Date: Fri Jul 23 13:05:39 2010 +0200 firewire: cdev: improve FW_CDEV_IOC_ALLOCATE In both the ieee1394 stack and the firewire stack, the core treats kernelspace drivers better than userspace drivers when it comes to CSR address range allocation: The former may request a register to be placed automatically at a free spot anywhere inside a specified address range. The latter may only request a register at a fixed offset. Hence, userspace drivers which do not require a fixed offset potentially need to implement a retry loop with incremented offset in each retry until the kernel does not fail allocation with EBUSY. This awkward procedure is not fundamentally necessary as the core already provides a superior allocation API to kernelspace drivers. Therefore change the ioctl() ABI by addition of a region_end member in the existing struct fw_cdev_allocate. Userspace and kernelspace APIs work the same way now. There is a small cost to pay by clients though: If client source code is required to compile with older kernel headers too, then any use of the new member fw_cdev_allocate.region_end needs to be enclosed by #ifdef/#endif directives. However, any client program that seriously wants to use address range allocations will require a kernel of cdev ABI version >= 4 at runtime and a linux/firewire-cdev.h header of >= 4 anyway. This is because v4 brings FW_CDEV_EVENT_REQUEST2. The only client program in which build-time compatibility with struct fw_cdev_allocate as found in older kernel headers makes sense is libraw1394. (libraw1394 uses the older broken FW_CDEV_EVENT_REQUEST to implement a makeshift, incorrect transaction responder that does at least work somewhat in many simple scenarios, relying on guesswork by libraw1394 and by libraw1394 based applications. Plus, address range allocation and transaction responder is only one of many features that libraw1394 needs to provide, and these other features need to work with kernel and kernel-headers as old as possible. Any new linux/firewire-cdev.h based client that implements a transaction responder should never attempt to do it like libraw1394; instead it should make a header and kernel of v4 or later a hard requirement.) While we are at it, update the struct fw_cdev_allocate documentation to better reflect the recent fw_cdev_event_request2 ABI addition. Signed-off-by: Stefan Richter commit 0c9ae701ae1caf657326db22d61074b40a747c9d Author: Stefan Richter Date: Fri Jul 23 13:02:54 2010 +0200 firewire: core: fix upper bound of possible CSR allocations region->end is defined as an upper bound of the requested address range, exclusive --- i.e. as an address outside of the range in which the requested CSR is to be placed. Hence 0x0001,0000,0000,0000 is the biggest valid region->end, not 0x0000,ffff,ffff,fffc like the current check asserted. For simplicity, the fix drops the region->end & 3 test because there is no actual problem with these bits set in region->end. The allocated address range will be quadlet aligned and of a size of multiple quadlets due to the checks for region->start & 3 and handler->length & 3 alone. Signed-off-by: Stefan Richter commit cc550216ae9a2993ef3973464714dc1a39ab1f86 Author: Stefan Richter Date: Sun Jul 18 13:00:50 2010 +0200 firewire: cdev: add PHY pinging This extends the FW_CDEV_IOC_SEND_PHY_PACKET ioctl() for /dev/fw* to be useful for ping time measurements. One application for it would be gap count optimization in userspace that is based on ping times rather than hop count. (The latter is implemented in firewire-core itself but is not applicable to beta PHYs that act as repeater.) Signed-off-by: Stefan Richter commit bf54e1462b9192fdef7ea9e2bc44fdc16a4b87bc Author: Stefan Richter Date: Fri Jul 16 22:25:51 2010 +0200 firewire: cdev: add PHY packet reception Add an FW_CDEV_IOC_RECEIVE_PHY_PACKETS ioctl() and FW_CDEV_EVENT_PHY_PACKET_RECEIVED poll()/read() event for /dev/fw*. This can be used to get information from remote PHYs by remote access PHY packets. This is also the 2nd half of the functionality (the receive part) to support a userspace implementation of a VersaPHY transaction layer. Safety considerations: - PHY packets are generally broadcasts, hence some kind of elevated privileges should be required of a process to be able to listen in on PHY packets. This implementation assumes that a process that is allowed to open the /dev/fw* of a local node does have this privilege. There was an inconclusive discussion about introducing POSIX capabilities as a means to check for user privileges for these kinds of operations. Other limitations: - PHY packet reception may be switched on by ioctl() but cannot be switched off again. It would be trivial to provide an off switch, but this is not worth the code. The client should simply close() the fd then, or just ignore further events. - For sake of simplicity of API and kernel-side implementation, no filter per packet content is provided. Signed-off-by: Stefan Richter commit 850bb6f23b93c04ce1e4509a87fa607dc17d97c1 Author: Stefan Richter Date: Fri Jul 16 22:25:14 2010 +0200 firewire: cdev: add PHY packet transmission Add an FW_CDEV_IOC_SEND_PHY_PACKET ioctl() for /dev/fw* which can be used to implement bus management related functionality in userspace. This is also half of the functionality (the transmit part) that is needed to support a userspace implementation of a VersaPHY transaction layer. Safety considerations: - PHY packets are generally broadcasts and may have interesting effects on PHYs and the bus, e.g. make asynchronous arbitration impossible due to too low gap count. Hence some kind of elevated privileges should be required of a process to be able to send PHY packets. This implementation assumes that a process that is allowed to open the /dev/fw* of a local node does have this privilege. There was an inconclusive discussion about introducing POSIX capabilities as a means to check for user privileges for these kinds of operations. - The kernel does not check integrity of the supplied packet data. That would be far too much code, considering the many kinds of PHY packets. A process which got the privilege to send these packets is trusted to do it correctly. Just like with the other "send packet" ioctls, a non-blocking API is chosen; i.e. the ioctl may return even before AT DMA started. After transmission, an event for poll()/read() is enqueued. Most users are going to need a blocking API, but a blocking userspace wrapper is easy to implement, and the second of the two existing libraw1394 calls raw1394_phy_packet_write() and raw1394_start_phy_packet_write() can be better supported that way. Signed-off-by: Stefan Richter commit b9dc61cf404165fb77e80c853e9fec9af258f9ce Author: Stefan Richter Date: Fri Jul 16 22:24:29 2010 +0200 firewire: core: use C99 initializer in array of ioctl handlers to make the correspondence of ioctl numbers and handlers more obvious. Signed-off-by: Stefan Richter commit d505e6e87127d4dbdaa5d91561eed810c180ca23 Author: Stefan Richter Date: Sat Jul 17 21:36:02 2010 +0200 firewire: cdev: some clarifications to the API documentation Response events: - are generated on more occasions than their documentation claimed. CSR allocation: - An already occupied CSR can be determined from errno==EBUSY. Bus resets: - Note that FW_CDEV_IOC_INITIATE_BUS_RESET is nonblocking and that the client is not required to observe a grace period since kernels 2.6.36+ will enforce it now (commit 02d37bed). - The possible values of fw_cdev_initiate_bus_reset.type are listed in the kerneldoc comment already. - Clarify that an application that uses FW_CDEV_IOC_ADD_DESCRIPTOR and FW_CDEV_IOC_REMOVE_DESCRIPTOR does not have to issue a bus reset. Isochronous I/O contexts: - At most one can be created per open file descriptor. Signed-off-by: Stefan Richter commit 18d0cdfd1a4cc9028c0ef80f94538b31541f8fe5 Author: Stefan Richter Date: Sun Jul 18 12:44:01 2010 +0200 firewire: normalize status values in packet callbacks core-transaction.c transmit_complete_callback() and close_transaction() expect packet callback status to be an ACK or RCODE, and ACKs get translated to RCODEs for transaction callbacks. An old comment on the packet callback API (been there from the initial submission of the stack) and the dummy_driver implementation of send_request/send_response deviated from this as they also included -ERRNO in the range of status values. Let's narrow status values down to ACK and RCODE to prevent surprises. RCODE_CANCELLED is chosen as the dummy_driver's RCODE as its meaning of "transaction timed out" comes closest to what happens when a transaction coincides with card removal. Signed-off-by: Stefan Richter commit c36952e524b2b898a3c9e9b137f64d72d43cd393 Author: Changli Gao Date: Fri Jul 23 13:27:08 2010 +0200 netfilter: nf_nat_core: merge the same lines proto->unique_tuple() will be called finally, if the previous calls fail. This patch checks the false condition of (range->flags &IP_NAT_RANGE_PROTO_RANDOM) instead to avoid duplicate line of code: proto->unique_tuple(). Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 181a51f6e040d0ac006d6adaf4a031ffa440f41c Author: Tejun Heo Date: Tue Jul 20 22:09:02 2010 +0200 slow-work: kill it slow-work doesn't have any user left. Kill it. Signed-off-by: Tejun Heo Acked-by: David Howells commit 6ecd7c2dd9f5dd4f6e8f65c8027159f9c73b0e4c Author: Tejun Heo Date: Tue Jul 20 22:09:02 2010 +0200 gfs2: use workqueue instead of slow-work Workqueue can now handle high concurrency. Convert gfs to use workqueue instead of slow-work. * Steven pointed out that recovery path might be run from allocation path and thus requires forward progress guarantee without memory allocation. Create and use gfs_recovery_wq with rescuer. Please note that forward progress wasn't guaranteed with slow-work. * Updated to use non-reentrant workqueue. Signed-off-by: Tejun Heo Acked-by: Steven Whitehouse commit e8648a1fdb54da1f683784b36a17aa65ea56e931 Author: Eric Dumazet Date: Fri Jul 23 12:59:36 2010 +0200 netfilter: add xt_cpu match In some situations a CPU match permits a better spreading of connections, or select targets only for a given cpu. With Remote Packet Steering or multiqueue NIC and appropriate IRQ affinities, we can distribute trafic on available cpus, per session. (all RX packets for a given flow is handled by a given cpu) Some legacy applications being not SMP friendly, one way to scale a server is to run multiple copies of them. Instead of randomly choosing an instance, we can use the cpu number as a key so that softirq handler for a whole instance is running on a single cpu, maximizing cache effects in TCP/UDP stacks. Using NAT for example, a four ways machine might run four copies of server application, using a separate listening port for each instance, but still presenting an unique external port : iptables -t nat -A PREROUTING -p tcp --dport 80 -m cpu --cpu 0 \ -j REDIRECT --to-port 8080 iptables -t nat -A PREROUTING -p tcp --dport 80 -m cpu --cpu 1 \ -j REDIRECT --to-port 8081 iptables -t nat -A PREROUTING -p tcp --dport 80 -m cpu --cpu 2 \ -j REDIRECT --to-port 8082 iptables -t nat -A PREROUTING -p tcp --dport 80 -m cpu --cpu 3 \ -j REDIRECT --to-port 8083 Signed-off-by: Eric Dumazet Signed-off-by: Patrick McHardy commit aa32a796389bedbcf1c7714385b18714a0743810 Author: Dave Chinner Date: Fri Jul 23 12:49:41 2010 +0200 ext3: default to ordered mode data=writeback mode is dangerous as it leads to higher data loss and stale data exposure when systems crash. It should not be the default, especially when all major distros ensure their ext3 filesystems default to ordered mode. Change the default mode to the safer data=ordered mode, because we should be caring far more about avoiding stale data exposure than performance. CC: linux-ext4@vger.kernel.org Signed-off-by: Dave Chinner Acked-by: Eric Sandeen Signed-off-by: Jan Kara commit 43d2932d88e4ab776dd388c20b003ebd5e1d1f1f Author: Jan Kara Date: Wed Jul 21 14:22:21 2010 +0200 quota: Use mark_inode_dirty_sync instead of mark_inode_dirty Quota code never touches file data. It just modifies i_blocks + i_bytes of inodes and inode flags of quota files. So use mark_inode_dirty_sync instead of mark_inode_dirty. Signed-off-by: Jan Kara commit 7f1c407579519e71a0dcadc05614fd98acec585e Author: Hannes Eder Date: Fri Jul 23 12:48:52 2010 +0200 IPVS: make FTP work with full NAT support Use nf_conntrack/nf_nat code to do the packet mangling and the TCP sequence adjusting. The function 'ip_vs_skb_replace' is now dead code, so it is removed. To SNAT FTP, use something like: % iptables -t nat -A POSTROUTING -m ipvs --vaddr 192.168.100.30/32 \ --vport 21 -j SNAT --to-source 192.168.10.10 and for the data connections in passive mode: % iptables -t nat -A POSTROUTING -m ipvs --vaddr 192.168.100.30/32 \ --vportctl 21 -j SNAT --to-source 192.168.10.10 using '-m state --state RELATED' would also works. Make sure the kernel modules ip_vs_ftp, nf_conntrack_ftp, and nf_nat_ftp are loaded. [ up-port and minor fixes by Simon Horman ] Signed-off-by: Hannes Eder Signed-off-by: Simon Horman Signed-off-by: Patrick McHardy commit 7b215ffc3885a38182d3d49ceb41d0a81c3e041a Author: Hannes Eder Date: Fri Jul 23 12:46:32 2010 +0200 IPVS: make friends with nf_conntrack Update the nf_conntrack tuple in reply direction, as we will see traffic from the real server (RIP) to the client (CIP). Once this is done we can use netfilters SNAT in POSTROUTING, especially with xt_ipvs, to do source NAT, e.g.: % iptables -t nat -A POSTROUTING -m ipvs --vaddr 192.168.100.30/32 --vport 80 \ -j SNAT --to-source 192.168.10.10 [ minor fixes by Simon Horman ] Signed-off-by: Hannes Eder Signed-off-by: Simon Horman Signed-off-by: Patrick McHardy commit 9c3e1c39679144c250dda95098333ecb5f1f407a Author: Hannes Eder Date: Fri Jul 23 12:42:58 2010 +0200 netfilter: xt_ipvs (netfilter matcher for IPVS) This implements the kernel-space side of the netfilter matcher xt_ipvs. [ minor fixes by Simon Horman ] Signed-off-by: Hannes Eder Signed-off-by: Simon Horman [ Patrick: added xt_ipvs.h to Kbuild ] Signed-off-by: Patrick McHardy commit a7e7cd5bd7d1e0134032b8db5e64ceb9dac8b3ca Author: Kuninori Morimoto Date: Wed Jul 21 14:12:16 2010 +0900 ASoC: da7210: Add HeadPhone Playback Volume control HeadPhone Playback Volume control register of DA7210 has reserved area. This patch considered it as mute. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 3a01736e70a7d629140695ba46a901266b4460cc Merge: 4c21adf 24a461d Author: Ingo Molnar Date: Fri Jul 23 09:10:29 2010 +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 f1cba532e8c1001a39650379aa7e04ad974d0592 Author: Dan Carpenter Date: Thu Jul 22 23:38:45 2010 -0700 Input: adxl34x - fix leak and use after free These are a couple smatch issues. In the original code, if only one of the allocation fails we leak the other variable so we should goto out_free_mem. Also there was a use after free if debugging was enabled and so I moved the kfree() down a line. Signed-off-by: Dan Carpenter Signed-off-by: Dmitry Torokhov commit c5ca48aabe8b11674bf1102abe52d17ecc053f9c Author: Ryusuke Konishi Date: Thu Jul 22 03:22:20 2010 +0900 nilfs2: reject incompatible filesystem This forces nilfs to check compatibility of feature flags so as to reject a filesystem with unknown features when it mounts or remounts the filesystem. Signed-off-by: Ryusuke Konishi commit 1a80a1763fb760b3a84a28df87515f7cdc07a4f4 Author: Ryusuke Konishi Date: Thu Jul 22 03:22:19 2010 +0900 nilfs2: add feature set fields to super block This adds three new fields to nilfs_super_block structure, compatible feature set, readonly-compatible feature set, and incompatible feature set in order to prepare for future disk format modifications. The role of these fields conforms to those of ext3 or other filesystems. Most important flags are the incompatible feature set; it is used to refuse to mount the filesystem which sets an incompatible feature the kernel doesn't know about. Signed-off-by: Ryusuke Konishi commit 2f1b7cd29fa4917f19d2624afc773d941684c5df Author: Ryusuke Konishi Date: Thu Jul 22 03:22:18 2010 +0900 nilfs2: clarify byte offset in super block format This inserts comments indicating hexadecimal offset in declaration of nilfs_super_block structure so that people can know offset of its fields without counting from the head. Signed-off-by: Ryusuke Konishi commit 03bdb5ac58a2144dfe8cfd73347fdb9f57e2e062 Author: Ryusuke Konishi Date: Sun Jul 18 10:42:26 2010 +0900 nilfs2: apply read-ahead for nilfs_btree_lookup_contig This applies read-ahead to nilfs_btree_do_lookup and nilfs_btree_lookup_contig functions and extends them to read ahead siblings of level 1 btree nodes that hold data blocks. At present, the read-ahead is not applied to most btree operations; only get_block() callback function, which is used during read of regular files or directories, receives the benefit. Signed-off-by: Ryusuke Konishi commit 4e13e66bee2d792c1aae21797f16c181024834eb Author: Ryusuke Konishi Date: Sun Jul 18 10:42:25 2010 +0900 nilfs2: introduce check flag to btree node buffer nilfs_btree_get_block() now may return untested buffer due to read-ahead. This adds a new flag for buffer heads so that the btree code can check whether the buffer is already verified or not. Signed-off-by: Ryusuke Konishi commit 464ece88630d0fb715ca942eabb1da825046a534 Author: Ryusuke Konishi Date: Sun Jul 18 10:42:24 2010 +0900 nilfs2: add btree get block function with readahead option This adds __nilfs_btree_get_block() function that can issue a series of read-ahead requests for sibling btree nodes. This read-ahead needs parent node block, so nilfs_btree_readahead_info structure is added to pass the information that __nilfs_btree_get_block() needs. This also replaces the previous nilfs_btree_get_block() implementation with a wrapper function of __nilfs_btree_get_block(). Signed-off-by: Ryusuke Konishi commit 26dfdd8e29f28c08aa67861b3c83d0f3f7d30cee Author: Ryusuke Konishi Date: Sun Jul 18 10:42:23 2010 +0900 nilfs2: add read ahead mode to nilfs_btnode_submit_block This adds mode argument to nilfs_btnode_submit_block() function and allows it to issue a read-ahead request. An optional submit_ptr argument is also added to store the actual block address for which bio is sent. submit_ptr is used for a series of read-ahead requests, and helps to decide if each requested block is continous to the previous one on disk. Signed-off-by: Ryusuke Konishi commit f8e6cc013b896d75d6ce4ec9e168014af1257fd8 Author: Ryusuke Konishi Date: Thu Jul 15 11:39:10 2010 +0900 nilfs2: fix buffer head leak in nilfs_btnode_submit_block nilfs_btnode_submit_block() refers to buffer head just before returning from the function, but it releases the buffer head earlier than that if nilfs_dat_translate() gets an error. This has potential for oops in the erroneous case. This fixes the issue. Signed-off-by: Ryusuke Konishi commit 7c397a81fe90c0445df2873700d14e82cca5fbc8 Author: Ryusuke Konishi Date: Tue Jul 13 23:33:55 2010 +0900 nilfs2: eliminate inline keywords in btree implementation This removes all inline uses from btree.c. Gcc now agressively apply inline expansion even for the functions declared without the keyword; the inline use in btree.c looks excessive. Signed-off-by: Ryusuke Konishi commit 5ad2686e9266f24a0bb76b01d5c3ae29b4e149fe Author: Ryusuke Konishi Date: Tue Jul 13 23:33:54 2010 +0900 nilfs2: get maximum number of child nodes from bmap object The patch "reduce repetitive calculation of max number of child nodes" gathered up the calculation of maximum number of child nodes into nilfs_btree_nchildren_per_block() function. This makes the function get resultant value from a private variable in bmap object instead of calculating it for each call. Signed-off-by: Ryusuke Konishi commit 9b7b265c9ab67fcd1245d6b64fa5ca2eda43ac88 Author: Ryusuke Konishi Date: Tue Jul 13 23:33:53 2010 +0900 nilfs2: reduce repetitive calculation of max number of child nodes The current btree implementation repeats the same calculation on the maximum number of child nodes. This is because a few low level routines use the calculation for index addressing in a btree node block. This reduces the calculation by explicitly passing the maximum number of child nodes (ncmax) through their argument. This changes parameter passing of the following functions: - nilfs_btree_node_dptrs - nilfs_btree_node_get_ptr - nilfs_btree_node_set_ptr - nilfs_btree_node_init - nilfs_btree_node_move_left - nilfs_btree_node_move_right - nilfs_btree_node_insert - nilfs_btree_node_delete, and - nilfs_btree_get_node The following functions are removed: - nilfs_btree_node_nchildren_min - nilfs_btree_node_nchildren_max Most middle level btree operations are rewritten to pass a proper ncmax value depending on whether each occurrence of node is "root" or not. A constant NILFS_BTREE_ROOT_NCHILDREN_MAX is used for the root node, whereas nilfs_btree_nchildren_per_block() function is used for non-root nodes. If a node could be either root or a non-root node, an output argument of nilfs_btree_get_node() is used to set up ncmax. Signed-off-by: Ryusuke Konishi commit ea64ab87cdba9e1172392d247e6526359e301f12 Author: Ryusuke Konishi Date: Tue Jul 13 23:33:52 2010 +0900 nilfs2: optimize calculation of min/max number of btree node children nilfs_btree_node_nchildren_max() and nilfs_btree_node_nchildren_min() functions switch return value depending on whether target node is the root or a node block. In most uses of these functions, however, the node type is fixed, and moreover the same calculation is repeatedly performed in loop. This unfold these functions depending on context and move them outside loops wherever possible. Signed-off-by: Ryusuke Konishi commit 364ec2d700223b965620ff4d5031a3665d195873 Author: Ryusuke Konishi Date: Tue Jul 13 23:33:51 2010 +0900 nilfs2: remove redundant pointer checks in bmap lookup functions nilfs_bmap_lookup and its variants are supposed to take a valid pointer argument to return a block address, thus pointer checks in nilfs_btree_lookup and nilfs_direct_lookup are needless. Signed-off-by: Ryusuke Konishi commit 05d0e94b66dbdf9d90371b39dc7a6b390ba74d41 Author: Ryusuke Konishi Date: Sat Jul 10 20:52:09 2010 +0900 nilfs2: get rid of nilfs_bmap_union This removes nilfs_bmap_union and finally unifies three structures and the union in bmap/btree code into one. Signed-off-by: Ryusuke Konishi commit dc935be2a094087bc561d80f8cf9e66bbc1f7b18 Author: Ryusuke Konishi Date: Sat Jul 10 22:21:54 2010 +0900 nilfs2: unify bmap set_target_v operations This unifies two similar functions nilfs_btree_set_target_v and nilfs_direct_set_target_v into one, nilfs_bmap_set_target_v. Signed-off-by: Ryusuke Konishi commit e7c274f8083793f8f861def63c02a0839b34d26d Author: Ryusuke Konishi Date: Sat Jul 10 19:09:49 2010 +0900 nilfs2: get rid of nilfs_btree uses This replaces all uses of nilfs_btree struct in implementation of btree mapping with nilfs_bmap struct. Name of local variable "btree" is kept not to bloat amount of change. And, a part of local variables "bmap" is renamed to "btree" to uniform naming rule. Signed-off-by: Ryusuke Konishi commit 10ff885ba6f56bf7480ce3b5daf38c07600ecea3 Author: Ryusuke Konishi Date: Sat Jul 10 18:07:04 2010 +0900 nilfs2: get rid of nilfs_direct uses This replaces all uses of nilfs_direct struct in implementation of direct mapping with nilfs_bmap struct. Signed-off-by: Ryusuke Konishi commit 583ada4761e18bb105ce5181b0b13cf55ead6201 Author: Ryusuke Konishi Date: Sat Jul 10 21:37:47 2010 +0900 nilfs2: remove constant qualifier from argument of bmap propagate The first argument of bops->bop_propagate operation takes a constant qualifier, and causes compilation error when removed cast to pointer of nilfs_btree structure type. This fixes the issue to prepare for succesive removal of nilfs_btree struct. Signed-off-by: Ryusuke Konishi commit 25b8d7ded0e4579bf152882249abfd351e65a17d Author: Ryusuke Konishi Date: Sat Jul 10 16:50:41 2010 +0900 nilfs2: get rid of private conversion macros on bmap key and pointer Will remove nilfs_bmap_key_to_dkey(), nilfs_bmap_dkey_to_key(), nilfs_bmap_ptr_to_dptr(), and nilfs_bmap_dptr_to_ptr() for simplicity. Signed-off-by: Ryusuke Konishi commit 1d5385b9f30ae43209459db424416a3e1d8f2bde Author: Ryusuke Konishi Date: Fri Jul 16 23:52:40 2010 +0900 nilfs2: verify btree node after reading This inserts sanity checks soon after read btree node from disk. This allows early detection of broken btree nodes, and helps to narrow down problems due to file system corruption. Signed-off-by: Ryusuke Konishi commit cfa913a5077f7619869b2b4d1bf23ccb4f8b3d7b Author: Ryusuke Konishi Date: Wed Jul 7 17:19:54 2010 +0900 nilfs2: add sanity check in nilfs_btree_add_dirty_buffer According to the report titled "problem with nilfs_cleanerd" from Łukasz Wójcicki, nilfs_btree_lookup_dirty_buffers or nilfs_btree_add_dirty_buffer got memory violation during garbage collection. This could happen if a level field of given btree node buffer is incorrect, which is a crucial internal bug. This inserts a sanity check to figure out the problem. Signed-off-by: Ryusuke Konishi commit 7c01745781177795e39f78b2c2c42c470a13833a Author: Ryusuke Konishi Date: Mon Jul 5 20:08:33 2010 +0900 nilfs2: pass remount flag to parse_options This adds is_remount argument to the parse_options() function that obtains mount options from strings. Previously, parse_options did not distinguish context whether it's called for a new mount or remount, so the caller needed additional verifications outside the function. This allows parse_options to verify options and print messages depending on the context. Signed-off-by: Ryusuke Konishi commit c6b4d57ddf12f3fd4d41d7b3b9181de46748418d Author: Ryusuke Konishi Date: Mon Jul 5 14:40:27 2010 +0900 nilfs2: use seq_puts to print mount options without argument This replaces seq_printf() with seq_puts() in nilfs_show_options for mount options which have no argument. Signed-off-by: Ryusuke Konishi commit 802d31775404ee335ca1e97a82e1e706a4c843be Author: Ryusuke Konishi Date: Mon Jul 5 14:27:04 2010 +0900 nilfs2: add nodiscard mount option Nilfs has "discard" mount option which issues discard/TRIM commands to underlying block device, but it lacks a complementary option and has no way to disable the feature through remount. This adds "nodiscard" option to resolve this imbalance. Signed-off-by: Ryusuke Konishi commit 773bc4f3b6898634a80a41c72a1f34cb89992dcd Author: Ryusuke Konishi Date: Mon Jul 5 13:00:08 2010 +0900 nilfs2: add barrier mount option Nilfs enables write barriers by default and has "nobarrier" mount option to disable this feature. But it lacks the complementary option and has no way to re-enable the feature on remount. This adds "barrier" option to resolve this imbalance. Signed-off-by: Ryusuke Konishi commit 325020477a51ffa849418b3e38189fd266f2ae20 Author: Ryusuke Konishi Date: Tue Jun 29 14:42:13 2010 +0900 nilfs2: do not update log cursor for small change Super blocks of nilfs are periodically overwritten in order to record the recent log position. This shortens recovery time after unclean unmount, but the current implementation performs the update even for a few blocks of change. If the filesystem gets small changes slowly and continually, super blocks may be updated excessively. This moderates the issue by skipping update of log cursor if it does not cross a segment boundary. Signed-off-by: Ryusuke Konishi commit 6c12516083cf51b6e576691ac6e20c4a32f4edb9 Author: Ryusuke Konishi Date: Mon Jun 28 19:15:26 2010 +0900 nilfs2: implement fallback for super root search Although nilfs redundantly uses two super blocks and each may point to different position on log, the current version of nilfs does not try fallback to the spare super block when it doesn't find any valid log at the position that the primary super block points to. This has been a cause of mount failures due to write order reversals on barrier less block devices. This inserts fallback code in error path of nilfs_search_super_root routine to resolve the mount failure problem. Signed-off-by: Ryusuke Konishi commit 2d72b99ecdf8cbb5d9422c54b401d9d590b2faf5 Author: Ryusuke Konishi Date: Mon Jun 28 19:15:25 2010 +0900 nilfs2: add missing error code in comment of nilfs_search_super_root nilfs_search_super_root can return -ENOMEM, but this error code is not described in its kernel-doc comment. This fixes the discrepancy. Signed-off-by: Ryusuke Konishi commit 843d63baa5babf3d8786f6a4377a2448525da7aa Author: Ryusuke Konishi Date: Mon Jun 28 19:15:24 2010 +0900 nilfs2: separate setup of log cursor from init_nilfs This separates a setup routine of log cursor from init_nilfs(). The routine, nilfs_store_log_cursor, reads the last position of the log containing a super root, and initializes relevant state on the nilfs object. Signed-off-by: Ryusuke Konishi commit b2ac86e1a8e3a3b0ab4449d062c582f07a078e7b Author: Jiro SEKIBA Date: Mon Jun 28 17:49:33 2010 +0900 nilfs2: sync super blocks in turns This will sync super blocks in turns instead of syncing duplicate super blocks at the time. This will help searching valid super root when super block is written into disk before log is written, which is happen when barrier-less block devices are unmounted uncleanly. In the situation, old super block likely points to valid log. This patch introduces ns_sbwcount member to the nilfs object and adds nilfs_sb_will_flip() function; ns_sbwcount counts how many times super blocks write back to the disk. And, nilfs_sb_will_flip() decides whether flipping required or not based on the count of ns_sbwcount to sync super blocks asymmetrically. The following functions are also changed: - nilfs_prepare_super(): flips super blocks according to the argument. The argument is calculated by nilfs_sb_will_flip() function. - nilfs_cleanup_super(): sets "clean" flag to both super blocks if they point to the same checkpoint. To update both of super block information, caller of nilfs_commit_super must set the information on both super blocks. Signed-off-by: Jiro SEKIBA Signed-off-by: Ryusuke Konishi commit d26493b6f017c0b0063a15bf893411ddae85eee4 Author: Jiro SEKIBA Date: Mon Jun 28 17:49:32 2010 +0900 nilfs2: introduce nilfs_prepare_super This function checks validity of super block pointers. If first super block is invalid, it will swap the super blocks. The function should be called before any super block information updates. Caller must obtain nilfs->ns_sem. Signed-off-by: Jiro SEKIBA Signed-off-by: Ryusuke Konishi commit 60f46b7efc1d6b980511c2644cb89903062f6e98 Author: Ryusuke Konishi Date: Mon Jun 28 17:49:31 2010 +0900 nilfs2: separate function that updates log position This moves out section that updates information of the recent log position stored in super blocks from nilfs_commit_super to a new routine named nilfs_set_log_cursor. Signed-off-by: Ryusuke Konishi commit c8a11c8a1455c380286cfd3d3442e2b60edee49a Author: Ryusuke Konishi Date: Mon Jun 28 17:49:30 2010 +0900 nilfs2: add nilfs_set_error This function marks error state and write it on super blocks. This is a preparation for making super block writeback alternately. Signed-off-by: Ryusuke Konishi commit 7ecaa46cfea453238a369b3019739d50ff5d7c37 Author: Ryusuke Konishi Date: Mon Jun 28 17:49:29 2010 +0900 nilfs2: add nilfs_cleanup_super This function write out filesystem state to super blocks in order to share the same cleanup work. This is a preparation for making super block writeback alternately. Cc: Jiro SEKIBA Signed-off-by: Ryusuke Konishi commit bde4e696e4a527c3cc579ed77e4844d11ca17e12 Author: Ryusuke Konishi Date: Sun Jun 27 21:38:05 2010 +0900 nilfs2: do not update mount time on rw->ro remount Mount time field in super block is wrongly updated when nilfs remounts the partition from read-write to read-only. This fixes the issue. Signed-off-by: Ryusuke Konishi commit 57a4bfc486727b68e4422031aeba427fb7262668 Author: Ryusuke Konishi Date: Sun Jun 20 03:10:21 2010 +0900 nilfs2: get rid of ns_free_segments_count This counter is unused. Signed-off-by: Ryusuke Konishi commit 4762077c7b93d35e0417f66702deae3ce3a9855e Author: Ryusuke Konishi Date: Sun May 23 21:48:36 2010 +0900 nilfs2: get rid of macros for segment summary information This removes macros to test segment summary flags and redefines a few relevant macros with inline functions. Signed-off-by: Ryusuke Konishi commit 85655484f896d078d310221475b90ea27f76e5f2 Author: Ryusuke Konishi Date: Sun May 23 19:46:44 2010 +0900 nilfs2: do not use nilfs_segsum_info structure in recovery code This will get rid of nilfs_segsum_info use from recovery functions for simplicity. Signed-off-by: Ryusuke Konishi commit 354fa8be280ce81c88b6b236d62d23ebcade2d3f Author: Ryusuke Konishi Date: Sun May 23 19:21:49 2010 +0900 nilfs2: divide load_segment_summary function load_segment_summary function has two distinct roles: getting summary header of a log, and verifying consistencies of the log. This divide it into two corresponding functions, nilfs_read_log_header and nilfs_validate_log to clarify the meaning. Signed-off-by: Ryusuke Konishi commit aee5ce2f578b98eba16e59cb84d39a95682a836b Author: Ryusuke Konishi Date: Sun May 23 12:21:57 2010 +0900 nilfs2: rename nilfs_recover_logical_segments function The function name of nilfs_recover_logical_segments makes no sense. This changes the name into nilfs_salvage_orphan_logs to clarify the role of the function. Signed-off-by: Ryusuke Konishi commit 8b94025c00f9171b41ba9c1696943f5c935b62ef Author: Ryusuke Konishi Date: Sun May 23 01:39:02 2010 +0900 nilfs2: refactor recovery logic routines Most functions in recovery code take an argument of a super block instance or a nilfs_sb_info struct for convenience sake. This replaces them aggressively with a nilfs object by applying __bread and __breadahead against routines using sb_bread and sb_breadahead. Signed-off-by: Ryusuke Konishi commit 92c60ccaf3c15a06d859682b980de1066641b4d0 Author: Ryusuke Konishi Date: Sun May 23 00:17:48 2010 +0900 nilfs2: add blocksize member to nilfs object This stores blocksize in nilfs objects for the successive refactoring of recovery logic. Signed-off-by: Ryusuke Konishi commit 99ad198c4978036bb9f7ebd11618b225b77046da Author: Stefano Stabellini Date: Fri May 14 12:41:20 2010 +0100 xen: Fix find_unbound_irq in presence of ioapic irqs. Don't break the assumption that the first 16 irqs are ISA irqs; make sure that the irq is actually free before using it. Use dynamic_irq_init_keep_chip_data instead of dynamic_irq_init so that chip_data is not NULL (a NULL chip_data breaks setup_vector_irq). Signed-off-by: Stefano Stabellini Signed-off-by: Jeremy Fitzhardinge commit 016b6f5fe8398b0291cece60b749d7c930a2e09c Author: Stefano Stabellini Date: Fri May 14 12:45:07 2010 +0100 xen: Add suspend/resume support for PV on HVM guests. Suspend/resume requires few different things on HVM: the suspend hypercall is different; we don't need to save/restore memory related settings; except the shared info page and the callback mechanism. Signed-off-by: Stefano Stabellini Signed-off-by: Jeremy Fitzhardinge commit 183d03cc4ff39e0f0d952c09aa96d0abfd6e0c3c Author: Stefano Stabellini Date: Mon May 17 17:08:21 2010 +0100 xen: Xen PCI platform device driver. Add the xen pci platform device driver that is responsible for initializing the grant table and xenbus in PV on HVM mode. Few changes to xenbus and grant table are necessary to allow the delayed initialization in HVM mode. Grant table needs few additional modifications to work in HVM mode. The Xen PCI platform device raises an irq every time an event has been delivered to us. However these interrupts are only delivered to vcpu 0. The Xen PCI platform interrupt handler calls xen_hvm_evtchn_do_upcall that is a little wrapper around __xen_evtchn_do_upcall, the traditional Xen upcall handler, the very same used with traditional PV guests. When running on HVM the event channel upcall is never called while in progress because it is a normal Linux irq handler (and we cannot switch the irq chip wholesale to the Xen PV ones as we are running QEMU and might have passed in PCI devices), therefore we cannot be sure that evtchn_upcall_pending is 0 when returning. For this reason if evtchn_upcall_pending is set by Xen we need to loop again on the event channels set pending otherwise we might loose some event channel deliveries. Signed-off-by: Stefano Stabellini Signed-off-by: Sheng Yang Signed-off-by: Jeremy Fitzhardinge commit 38e20b07efd541a959de367dc90a17f92ce2e8a6 Author: Sheng Yang Date: Fri May 14 12:40:51 2010 +0100 x86/xen: event channels delivery on HVM. Set the callback to receive evtchns from Xen, using the callback vector delivery mechanism. The traditional way for receiving event channel notifications from Xen is via the interrupts from the platform PCI device. The callback vector is a newer alternative that allow us to receive notifications on any vcpu and doesn't need any PCI support: we allocate a vector exclusively to receive events, in the vector handler we don't need to interact with the vlapic, therefore we avoid a VMEXIT. Signed-off-by: Stefano Stabellini Signed-off-by: Sheng Yang Signed-off-by: Jeremy Fitzhardinge commit bee6ab53e652a414af20392899879b58cd80d033 Author: Sheng Yang Date: Fri May 14 12:39:33 2010 +0100 x86: early PV on HVM features initialization. Initialize basic pv on hvm features adding a new Xen HVM specific hypervisor_x86 structure. Don't try to initialize xen-kbdfront and xen-fbfront when running on HVM because the backends are not available. Signed-off-by: Stefano Stabellini Signed-off-by: Sheng Yang Signed-off-by: Yaozu (Eddie) Dong Signed-off-by: Jeremy Fitzhardinge commit 18f19aa62a267f2f759e278018f1032adf4c3774 Author: Jeremy Fitzhardinge Date: Fri May 14 12:38:24 2010 +0100 xen: Add support for HVM hypercalls. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Sheng Yang Signed-off-by: Stefano Stabellini commit 83c720ea395c4ee725e1035cbcda809794b46091 Author: Greg Kroah-Hartman Date: Thu Jul 22 15:14:04 2010 -0700 Staging: hv: remove DPRINT_EXIT macro No need for it, use the built-in kernel function tracing instead if you really need something like this. Cc: Hank Janssen Cc: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman commit 2acadc269fa1957438e64684460c27a33e6d2b08 Author: Greg Kroah-Hartman Date: Thu Jul 22 15:00:18 2010 -0700 Staging: hv: remove DPRINT_ENTER macro We have ftrace to look at function traces if its really needed. Don't roll custom macros for this. Cc: Hank Janssen Cc: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman commit 94daa643c144a5f76ac9ee2506084793d608374b Author: Randy Dunlap Date: Mon Jul 19 17:23:10 2010 -0700 Staging: dt3155: don't use default init_module/cleanup_module function names Fromy: Randy Dunlap Fix the dt3155 driver to use module_init()/module_exit() instead of default init_module() and cleanup_module() function names. Signed-off-by: Randy Dunlap Cc: Scott Smedley Cc: Marek Lindner Cc: Simon Wunderlich Cc: Andrew Lunn Signed-off-by: Greg Kroah-Hartman commit 9b8761d2e8a32f3457945a66d5bd8606abbc0e34 Author: Javier Martinez Canillas Date: Tue Jul 20 00:56:54 2010 -0400 Staging: wlags49_h2: remove unused function prototype With today linux-next I got a compile error in staging/wlags49_h2 driver due an unused function prototype that use a data type (event_callback_args_t) that doesn't exist anymore in the pcmcia code. Current patch solves the issue removing the function prototype. Signed-off-by: Javier Martinez Canillas Signed-off-by: Greg Kroah-Hartman commit ba952d84e1d45df80e125d4abc64f3b778ae6dd7 Author: Joe Perches Date: Mon Jul 12 13:50:10 2010 -0700 Staging: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit f69b0d6451679f1466381a46ac7ab671a7b5668c Author: Uwe Kleine-König Date: Mon Jul 12 17:15:46 2010 +0200 Staging: fix typos concerning "address" Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit cfa6b297506c8e19e240016acf4776bb16dc5aa2 Author: Menon, Nishanth Date: Thu Jul 22 16:03:50 2010 -0500 staging: tidspbridge: remove dbdefs.h Remove yet another custom definition header Signed-off-by: Nishanth Menon Signed-off-by: Greg Kroah-Hartman commit e6bf74f06f5178fcccb66acf51d1f6ebc4e6c5d0 Author: Menon, Nishanth Date: Thu Jul 22 16:03:49 2010 -0500 staging: tidspbridge: remove OUT define Remove OUT modifier which makes no sense for linux kernel Signed-off-by: Nishanth Menon Signed-off-by: Greg Kroah-Hartman commit 21aaf42ec990e7e169fff67ffb97b2f13e0b7ed3 Author: Menon, Nishanth Date: Thu Jul 22 16:03:48 2010 -0500 staging: tidspbridge: remove OPTIONAL OPTIONAL modifier makes no sense in linux kernel Signed-off-by: Nishanth Menon Signed-off-by: Greg Kroah-Hartman commit 9d7d0a526193359b5289d933768e7465d9bbd91e Author: Menon, Nishanth Date: Thu Jul 22 16:03:47 2010 -0500 staging: tidspbridge: remove IN modifier IN modifier does not exist. remove it Signed-off-by: Nishanth Menon Signed-off-by: Greg Kroah-Hartman commit cd4f13c02a5d72e1fc367c51cc0fd955f65538e0 Author: Menon, Nishanth Date: Thu Jul 22 16:03:46 2010 -0500 staging: tidspbridge: replace CONST with c standard const Signed-off-by: Nishanth Menon Signed-off-by: Greg Kroah-Hartman commit 38bf20a9b6d6416563f0a261e90fa7081e273dfa Author: Menon, Nishanth Date: Thu Jul 22 16:03:45 2010 -0500 staging: tidspbridge: remove GlobalTypes.h Remove custom globaltypes.h header Signed-off-by: Nishanth Menon Signed-off-by: Greg Kroah-Hartman commit c30d6cb7fb587d3dda068f40c629855dfa141652 Author: Joe Eloff Date: Thu Jul 22 22:00:47 2010 +0200 Staging: dt3155: Fixed all printk warnings found by checkpatch.pl Added all KERN_ levels in printk found by checkpatch.pl Signed-off-by: Joe Eloff Signed-off-by: Greg Kroah-Hartman commit b0c983375df8aafdddf250009a7bb929225e6011 Author: Joe Eloff Date: Thu Jul 22 21:59:10 2010 +0200 Staging: dt3155: Change include to linux header Changed to Signed-off-by: Joe Eloff Signed-off-by: Greg Kroah-Hartman commit cfa548960dace3c437287464a0bf9d6d106e325c Author: Andy Shevchenko Date: Thu Jul 22 19:57:11 2010 +0300 staging: wlan-ng: remove own bin2hex converter In kernel we have hex_asc_hi and hex_asc_lo macroses to do the job. Signed-off-by: Andy Shevchenko Signed-off-by: Greg Kroah-Hartman commit ff290e2307316ccea143ce4a63f4b7394dc36472 Author: Andy Shevchenko Date: Thu Jul 22 19:57:10 2010 +0300 staging: wlags49_h2: remove custom hex_to_bin() method Signed-off-by: Andy Shevchenko Signed-off-by: Greg Kroah-Hartman commit 3cda5bf1df1f336b3ad78a53d92e1106d40fb241 Author: Andy Shevchenko Date: Thu Jul 22 19:57:07 2010 +0300 staging: otus: remove unused methods This is rebased version of the patch [1] which was mysteriously not pushed anywhere but acked. Here are two methods to convert hex value to binary format. These certain methods aren't used anywhere in kernel. [1] http://lkml.org/lkml/2010/2/18/267 Signed-off-by: Andy Shevchenko Signed-off-by: Greg Kroah-Hartman commit e02644184c0e925206f3cf19fd681065a507f05c Author: Edgardo Hames Date: Wed Jul 21 22:31:56 2010 -0300 Staging: wlan-ng: removed typedef from prism2fw.c Removed multiple typedef and fixed long lines. Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit f34e3e7b2c60645c45f3b083abf9a844ea7788b3 Author: Edgardo Hames Date: Wed Jul 21 22:31:55 2010 -0300 Staging: wlan-ng: fix style in p80211netdev.c Signed-off-by: Edgardo Hames Signed-off-by: Greg Kroah-Hartman commit e7d122b55d6031c748a9f264c1f6f28f948852a2 Author: Neil Munro Date: Sun Jul 18 23:09:37 2010 +0100 Staging: RT2860: Cleaned all bar one in chlist.h I have cleaned all errors and all bar one warning in chlist.h. The remaining warning is a line over 80 characters warning. Breaking it doesnt look all that easy. Signed-off-by: Neil Munro Signed-off-by: Greg Kroah-Hartman commit e3eb7cdd111eec56d201c4a2b20b743c746b6d99 Author: Kulikov Vasiliy Date: Fri Jul 16 20:13:51 2010 +0400 staging: hv: check kzalloc() result If kzalloc() fails free allocated resources and exit. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit b99e1943fd416a5889300fe0fe58367aa3e5705f Author: Wu Zhangjin Date: Sun Jul 18 03:16:28 2010 +0800 staging: sm7xx: Fixup of the section mismatch Signed-off-by: Wu Zhangjin Signed-off-by: Greg Kroah-Hartman commit d7a75e190971209b18fbdb06232c25c7b44c31c5 Author: Ossama Othman Date: Mon Jul 19 09:32:39 2010 +0100 memrar: Updated maintainer contact information Signed-off-by: Ossama Othman Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 05e2408d4324ae132eda6530cce0aa24e79f0c41 Author: Ossama Othman Date: Mon Jul 19 09:32:26 2010 +0100 memrar: Address kernel oops during resource cleanup Some delayed initialization is performed in this driver. Make sure resources that are used during driver clean-up (e.g. during driver's release() function) are fully initialized before first use. This is particularly important for the case when the delayed initialization isn't completed, leaving behind a partially initialized driver. Such a scenario can occur when RAR is not available on the platform, and the driver is release()d. Signed-off-by: Ossama Othman Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 4cae2597f5455a3c8ffc6c200b34e15c83184579 Author: Sven Eckelmann Date: Wed Jul 21 00:25:22 2010 +0200 Staging: batman-adv: Update TODO with new points from review David S. Miller provided some new ideas and found problems in his review 20100719.212625.255369607.davem@davemloft.net. These issues must be resolved before it can be merged into net. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit c0cad1e7b81bc9601866586af6dcd6fde8c908ef Author: Randy Dunlap Date: Wed Jul 21 00:25:21 2010 +0200 Staging: batman-adv: don't use default init_module/cleanup_module function names Fix two staging drivers to use module_init()/module_exit() instead of default init_module() and cleanup_module() function names so that there are no name conflicts when both are built-in. drivers/staging/dt3155/built-in.o: In function `cleanup_module': (.text+0xc0): multiple definition of `cleanup_module' drivers/staging/batman-adv/built-in.o:(.text+0x330): first defined here drivers/staging/dt3155/built-in.o: In function `init_module': (.text+0xe60): multiple definition of `init_module' drivers/staging/batman-adv/built-in.o:(.text+0x400): first defined here Signed-off-by: Randy Dunlap [sven.eckelmann@gmx.de: Mark module init and exit functions as static] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit a1a38cad4c71bc08403b204fbe0ba98b4447f8bf Author: Sven Eckelmann Date: Wed Jul 21 00:25:20 2010 +0200 Staging: batman-adv: Don't increment stats of foreign device The receive hook for batman-adv ethernet frames tried to get the last device which processed the skb before us. It only used that information to update the rx_bytes and rx_packets stat of that foreign device which already has updated it using its own receive functions. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit b4e178224cfdc8aae7dda0baab34a4e4110a2e93 Author: Shubhrajyoti D Date: Sat Jul 17 18:32:52 2010 +0530 Staging: iio: add digital compass hmc5843 driver Adding support for the Honeywell HMC5843. The interface to the device is i2c TODO: Adding the documentation Signed-off-by: Shubhrajyoti D Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 991ea75cb1df7188d209274b3d51c105b4f18ffe Author: Tejun Heo Date: Tue Jul 20 22:09:02 2010 +0200 drm: use workqueue instead of slow-work Workqueue can now handle high concurrency. Convert drm_crtc_helper to use system_nrt_wq instead of slow-work. The conversion is mostly straight forward. One difference is that drm_helper_hpd_irq_event() no longer blocks and can be called from any context. Signed-off-by: Tejun Heo Acked-by: David Airlie Cc: dri-devel@lists.freedesktop.org commit 1ff219068c0e032a6fd64c45bd69f3bc7374feb6 Author: Dan Carpenter Date: Thu Jul 22 01:16:48 2010 +0000 stmmac: handle allocation errors in setup functions If the allocations fail in either dwmac1000_setup() or dwmac100_setup() then return NULL. These are called from stmmac_mac_device_setup(). The check for NULL returns in stmmac_mac_device_setup() needed to be moved forward a couple lines. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit b77026b391f4f43ca148cf6c55a93f7487ff6ed8 Author: Dan Carpenter Date: Thu Jul 22 01:11:31 2010 +0000 caif: precedence bug Negate has precedence over comparison so the original assert only checked that "rfml->fragment_size" was larger than 1 or 0. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 03dc2f4c525afb9488edb687c2e1f7057d59b40e Author: Jay Vosburgh Date: Wed Jul 21 12:14:48 2010 +0000 bonding: don't lock when copying/clearing VLAN list on slave When copying VLAN information to or removing from a slave during slave addition or removal, the bonding code currently holds the bond->lock for write to prevent concurrent modification of the vlan_list / vlgrp. This is unnecessary, as all of these operations occur under RTNL. Holding the bond->lock also caused might_sleep issues for some drivers' ndo_vlan_* functions. This patch removes the extra locking. Problem reported by Michael Chan Signed-off-by: Jay Vosburgh Cc: Michael Chan Signed-off-by: David S. Miller commit f35188faa0fbabefac476536994f4b6f3677380f Author: Jay Vosburgh Date: Wed Jul 21 12:14:47 2010 +0000 bonding: change test for presence of VLANs After commit ad1afb00393915a51c21b1ae8704562bf036855f ("vlan_dev: VLAN 0 should be treated as "no vlan tag" (802.1p packet)") it is now regular practice for a VLAN "add vid" for VLAN 0 to arrive prior to any VLAN registration or creation of a vlan_group. This patch updates the bonding code that tests for the presence of VLANs configured above bonding. The new logic tests for bond->vlgrp to determine if a registration has occured, instead of testing that bonding's internal vlan_list is empty. The old code would panic when vlan_list was not empty, but vlgrp was still NULL (because only an "add vid" for VLAN 0 had occured). Bonding still adds VLAN 0 to its internal list so that 802.1p frames are handled correctly on transmit when non-VLAN accelerated slaves are members of the bond. The test against bond->vlan_list remains in bond_dev_queue_xmit for this reason. Modification to the bond->vlgrp now occurs under lock (in addition to RTNL), because not all inspections of it occur under RTNL. Additionally, because 8021q will never issue a "kill vid" for VLAN 0, there is now logic in bond_uninit to release any remaining entries from vlan_list. Signed-off-by: Jay Vosburgh Cc: Pedro Garcia Cc: Patrick McHardy Signed-off-by: David S. Miller commit 4bee1f9ac066ef0350b961eab9fedc4d0bd0a549 Author: Wolfram Sang Date: Wed Jul 21 02:51:13 2010 +0000 net/fec: restore interrupt mask after software-reset in fec_stop() After the change from mdio polling to irq, it became necessary to restore the interrupt mask after resetting the chip in fec_stop(). Otherwise, with all irqs disabled, no communication with the PHY will be possible after e.g. un-/replugging the cable and the device gets stalled. Signed-off-by: Wolfram Sang Signed-off-by: David S. Miller commit 8cd47ea19bf8c6f9d3a41b3c312237d007138ae0 Author: Kulikov Vasiliy Date: Wed Jul 21 02:00:36 2010 +0000 3c59x: handle pci_iomap() errors pci_iomap() can fail, handle this case and return -ENOMEM from probe function. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 9b646972467fb5fdc677f9e4251875db20bdbb64 Author: Tejun Heo Date: Tue Jul 20 22:09:02 2010 +0200 cifs: use workqueue instead of slow-work Workqueue can now handle high concurrency. Use system_nrt_wq instead of slow-work. * Updated is_valid_oplock_break() to not call cifs_oplock_break_put() as advised by Steve French. It might cause deadlock. Instead, reference is increased after queueing succeeded and cifs_oplock_break() briefly grabs GlobalSMBSeslock before putting the cfile to make sure it doesn't put before the matching get is finished. * Anton Blanchard reported that cifs conversion was using now gone system_single_wq. Use system_nrt_wq which provides non-reentrance guarantee which is enough and much better. Signed-off-by: Tejun Heo Acked-by: Steve French Cc: Anton Blanchard commit d098adfb7d281258173a43151483e52e21761021 Author: Tejun Heo Date: Tue Jul 20 22:09:01 2010 +0200 fscache: drop references to slow-work fscache no longer uses slow-work. Drop references to it. Signed-off-by: Tejun Heo Acked-by: David Howells commit 8af7c12436803291c90295259db23d371a7ad9cc Author: Tejun Heo Date: Tue Jul 20 22:09:01 2010 +0200 fscache: convert operation to use workqueue instead of slow-work Make fscache operation to use only workqueue instead of combination of workqueue and slow-work. FSCACHE_OP_SLOW is dropped and FSCACHE_OP_FAST is renamed to FSCACHE_OP_ASYNC and uses newly added fscache_op_wq workqueue to execute op->processor(). fscache_operation_init_slow() is dropped and fscache_operation_init() now takes @processor argument directly. * Unbound workqueue is used. * fscache_retrieval_work() is no longer necessary as OP_ASYNC now does the equivalent thing. * sysctl fscache.operation_max_active added to control concurrency. The default value is nr_cpus clamped between 2 and WQ_UNBOUND_MAX_ACTIVE. * debugfs support is dropped for now. Tracing API based debug facility is planned to be added. Signed-off-by: Tejun Heo Acked-by: David Howells commit 8b8edefa2fffbff97f9eec8b70e78ae23abad1a0 Author: Tejun Heo Date: Tue Jul 20 22:09:01 2010 +0200 fscache: convert object to use workqueue instead of slow-work Make fscache object state transition callbacks use workqueue instead of slow-work. New dedicated unbound CPU workqueue fscache_object_wq is created. get/put callbacks are renamed and modified to take @object and called directly from the enqueue wrapper and the work function. While at it, make all open coded instances of get/put to use fscache_get/put_object(). * Unbound workqueue is used. * work_busy() output is printed instead of slow-work flags in object debugging outputs. They mean basically the same thing bit-for-bit. * sysctl fscache.object_max_active added to control concurrency. The default value is nr_cpus clamped between 4 and WQ_UNBOUND_MAX_ACTIVE. * slow_work_sleep_till_thread_needed() is replaced with fscache private implementation fscache_object_sleep_till_congested() which waits on fscache_object_wq congestion. * debugfs support is dropped for now. Tracing API based debug facility is planned to be added. Signed-off-by: Tejun Heo Acked-by: David Howells commit 963bfeeeec913d135c15dc400f2f86cb62655d81 Author: Eric Dumazet Date: Tue Jul 20 22:03:14 2010 +0000 net: RTA_MARK addition Add a new rt attribute, RTA_MARK, and use it in rt_fill_info()/inet_rtm_getroute() to support following commands : ip route get 192.168.20.110 mark NUMBER ip route get 192.168.20.108 from 192.168.20.110 iif eth1 mark NUMBER ip route list cache [192.168.20.110] mark NUMBER Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit e120153ddf8620fd0a194d301e9c5a8b28483bb5 Author: Tejun Heo Date: Thu Jul 22 14:14:25 2010 +0200 workqueue: fix how cpu number is stored in work->data Once a work starts execution, its data contains the cpu number it was on instead of pointing to cwq. This is added by commit 7a22ad75 (workqueue: carry cpu number in work data once execution starts) to reliably determine the work was last on even if the workqueue itself was destroyed inbetween. Whether data points to a cwq or contains a cpu number was distinguished by comparing the value against PAGE_OFFSET. The assumption was that a cpu number should be below PAGE_OFFSET while a pointer to cwq should be above it. However, on architectures which use separate address spaces for user and kernel spaces, this doesn't hold as PAGE_OFFSET is zero. Fix it by using an explicit flag, WORK_STRUCT_CWQ, to mark what the data field contains. If the flag is set, it's pointing to a cwq; otherwise, it contains a cpu number. Reported on s390 and microblaze during linux-next testing. Signed-off-by: Tejun Heo Reported-by: Sachin Sant Reported-by: Michal Simek Reported-by: Martin Schwidefsky Tested-by: Martin Schwidefsky Tested-by: Michal Simek commit 5fc9e4d527f059a996f4725a596698fa76c0370f Author: Kulikov Vasiliy Date: Wed Jul 14 22:05:17 2010 +0400 staging: comedi: formatting of pointers in printk() Use %p instead of %08x in printk(). Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit fb5206d9c36d85a913a2ae05cb97b2629f345094 Author: Kulikov Vasiliy Date: Wed Jul 14 22:05:58 2010 +0400 staging: msm: formatting of pointers in printk() Use %p instead of %08x in printk(). Signed-off-by: Kulikov Vasiliy Acked-by: David Brown Acked-by: Daniel Walker Signed-off-by: Greg Kroah-Hartman commit bb8f3c061f2e7282730059ae524ff19d47d70b17 Author: Pavan Savoy Date: Thu Jul 22 05:32:07 2010 -0500 Staging: ti-st: give proto drivers context protocol drivers such as BT, FM and GPS when registering to ST now provide their own private data which they expect when their functions namely registration completed & receive are called. Also upon tty_close, set protos_registered count to 0, although all protocols are marked un-registered. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 36b5aee46b5e4788758409829926c631de0a64a3 Author: Pavan Savoy Date: Thu Jul 22 05:32:06 2010 -0500 Staging: ti-st: cleanup code comments cleanup the code commenting in the headers/structures, also cleanup few inline commenting in the function Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit e6d9e64e36fbeddc7d5b640379bd13930075129b Author: Pavan Savoy Date: Thu Jul 22 05:32:05 2010 -0500 Staging: ti-st: smarten, reduce logs Replace looping on the data buffers and printk-ing by print_hex_dump. Also replace most of the pr_info by pr_debug to reduce logging at default loglevels (7 in our case..) Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 320920cba355146258da7de80bed0069c1dff24a Author: Pavan Savoy Date: Wed Jul 14 08:21:12 2010 -0500 Staging: ti-st: make use of linux err codes remove custom error code definitions from the header and make use of the agreed upon linux error codes. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 771dafdc38c9158c2b9d2b05f6ddda0d08c33a17 Author: Andy Shevchenko Date: Thu Jul 22 19:57:09 2010 +0300 staging: rtl8192su: don't use own isxdigit() method Signed-off-by: Andy Shevchenko Signed-off-by: Greg Kroah-Hartman commit 242f5a709c2fb8ee47f708d6066e350ebdbc0b23 Author: Florian Schilhabel Date: Thu Jul 15 19:04:58 2010 +0200 staging: rtl8192su: added ioctl[SIOCSIWPMKSA] implementation errors like: ioctl[SIOCSIWPMKSA]: Invalid argument should now be gone. Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 53faa56b78f1929d3e9d339b8c21541bd355b4eb Author: Florian Schilhabel Date: Thu Jul 15 19:04:46 2010 +0200 staging: rtl8192su: merge changes in rtl819x_HTProc.c; still incomplete Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 8388fd3605a31f15deb6ab5f64d5d0e311e9ce2d Author: Florian Schilhabel Date: Thu Jul 15 19:04:36 2010 +0200 staging: rtl8192su: merge changes into ieee80211_rx_ADDBARsp() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit bb21199a013b13276336bb92012c9e68a0c179b9 Author: Florian Schilhabel Date: Thu Jul 15 19:04:24 2010 +0200 staging: rtl8192su: merge updated ieee80211_crypto_ops() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 353db17dce3d621149aae45aa9f043876fec4dc1 Author: Florian Schilhabel Date: Thu Jul 15 19:04:10 2010 +0200 staging: rtl8192su: merge changes in ieee80211_tkip_data() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit d4dfd8065d0b36b3ff91ff94d7e1ebea20a6bb66 Author: Florian Schilhabel Date: Thu Jul 15 19:04:00 2010 +0200 staging: rtl8192su: merge changes in ieee80211_authentication_req() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 124a27e43ef295ab386005346316b5322990cf58 Author: Florian Schilhabel Date: Thu Jul 15 19:03:49 2010 +0200 staging: rtl8192su: cleanup in ieee80211_softmac.c Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit ab81f74e4a99623f34361043d68741fcd16068c2 Author: Florian Schilhabel Date: Thu Jul 15 19:03:38 2010 +0200 staging: rtl819su: merge changes in softmac_ps_mgmt_xmit() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit e2e864931880d29551288a73fa243dfa5d56af88 Author: Florian Schilhabel Date: Thu Jul 15 19:03:27 2010 +0200 staging: rtl819su: update MgntQuery_MgntFrameTxRate() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit c9b4d3ea110bea625b9f014824d2dc479f3d0d97 Author: Florian Schilhabel Date: Thu Jul 15 19:03:15 2010 +0200 staging: rtl819su: update probe_rq_parse() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 26cc71540ab80714f7635139526b4c0cb6fe465d Author: Florian Schilhabel Date: Thu Jul 15 19:02:59 2010 +0200 staging: rtl819su: ieee80211_associate_procedure_wq() update Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 67db39324f6fcc8dc2a286bc8881be1016c8dc29 Author: Florian Schilhabel Date: Thu Jul 15 19:02:31 2010 +0200 staging: rtl8192su: remove a section mismatch warning Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 1da45703f6d54c29679d32818a9a1588ae090956 Author: Florian Schilhabel Date: Wed Jul 14 14:47:53 2010 +0200 staging: rtl8192su: merge changes in r8192U_wx.c Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit e415f0a14c077389fd5b6b8415d16f2ab4fc2f39 Author: Florian Schilhabel Date: Wed Jul 14 14:47:40 2010 +0200 staging: rtl8192su: update TODO Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 653e99e316a8579fd933386d7d4be40e6c9170e5 Author: Florian Schilhabel Date: Wed Jul 14 14:47:27 2010 +0200 staging: rtl8192su: various updates Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 8280a7abd6ce7329d1be5c2d10b2a29f23bf4038 Author: Florian Schilhabel Date: Wed Jul 14 14:47:15 2010 +0200 staging: rtl819esu: cleanup; r8192S_Efuse.c, r8192S_Efuse.h Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 2de027e51d0f16cf5260efad89419bf9a66d3313 Author: Florian Schilhabel Date: Wed Jul 14 14:47:04 2010 +0200 staging: rtl8192su: updated r8192SU_HWImg.c, r8192SU_HWImg.h Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 5d4d454c30bbd68b61508289389ac2ce762d9842 Author: Florian Schilhabel Date: Wed Jul 14 14:46:48 2010 +0200 staging: rtl8192su: remove some unused code, cleanup Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 47790cb22612290ee6c1c4d9f3e65fa6d2e01845 Author: Florian Schilhabel Date: Wed Jul 14 14:46:35 2010 +0200 staging: rtl8192su: more code cleanup Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 24fa92c5f7545c82d98482c11b474b8c25577c36 Author: Florian Schilhabel Date: Wed Jul 14 14:46:22 2010 +0200 staging: rtl8192su: code cleanup Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit e2e539065f9057163b2532cabccf2ece21c6a47c Author: Florian Schilhabel Date: Wed Jul 14 14:46:09 2010 +0200 staging: rtl8192su: cleanup in ieee80211_tx.c, ieee80211_wx.c Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 5889ef2dac613e84b0df7fe7749ba0c4e6539be4 Author: Florian Schilhabel Date: Wed Jul 14 14:45:57 2010 +0200 staging: rtl8192su: clean ieee80211_crypt.c Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 01ced242f2c54b8ab43f7e5baa6b1cc0150ac3a0 Author: Florian Schilhabel Date: Wed Jul 14 14:45:44 2010 +0200 staging: rtl8192su: clean dot11d.[c|h] Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 56c93a05377104770764d78a35766d248a98d717 Author: Florian Schilhabel Date: Wed Jul 14 14:45:32 2010 +0200 staging: rtl8192su: some work on dm_check_edca_turbo() Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit d9c5cc98876ae825a6232f432f82ad8bb0c232f5 Author: Florian Schilhabel Date: Wed Jul 14 14:45:17 2010 +0200 staging: rtl8192su: update r8192U.h Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 03dff6265d0fa9bccf01c1036f72850d816080aa Author: Florian Schilhabel Date: Wed Jul 14 14:44:34 2010 +0200 staging: rtl8192su: r8192U.h, clean header Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 0825c40f95b8c7b3231b4d82d5afd72d1d61a65c Author: Florian Schilhabel Date: Wed Jul 14 14:44:18 2010 +0200 staging: rtl8192su: r8192S_phy.c, remove unused code; 2nd part Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit dc7bbaa4ffcf4bac497104083712122a5fb26709 Author: Florian Schilhabel Date: Wed Jul 14 14:44:00 2010 +0200 staging: rtl8192su: r8192S_phy.c, remove unused code Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit c681318577f70bda7536daf8be642594f1780aab Author: Florian Schilhabel Date: Wed Jul 14 14:43:44 2010 +0200 staging: rtl819ssu: clean r8192S_hw.h Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit a6f81aaf95166759246ede7b223e094568805370 Author: Florian Schilhabel Date: Wed Jul 14 14:43:26 2010 +0200 staging: rtl8192su: update to r8192S_Efuse.c, r8192xU_cmdpkt.c cosmetics, various updates to reflect realteks upstream changes. Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 4203c5b70db9aedf6769cb89c3485d635dee429b Author: Florian Schilhabel Date: Wed Jul 14 14:43:08 2010 +0200 staging: rtl8192su: cosmetics in r8192S_Efuse.c Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit d54713991107f3f29acb9b579569de9196ab2890 Author: Florian Schilhabel Date: Wed Jul 14 14:42:43 2010 +0200 staging: rtl8192su: update rtl819x_set_channel_map() This function is now on par with the latest realtek drivers. Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 638b5acd4dfe9dd79260a9c824be74b29408ee9a Author: Florian Schilhabel Date: Wed Jul 14 14:42:25 2010 +0200 staging: rtl8192su: fix a compiler warning fix for: drivers/staging/rtl8192su/r8192U_core.c: In function ‘rtl8192SU_MacConfigAfterFwDownload’: drivers/staging/rtl8192su/r8192U_core.c:4403:24: warning: comparison between ‘rtl819xUsb_loopback_e’ and ‘enum _RTL8192SUSB_LOOPBACK’ drivers/staging/rtl8192su/r8192U_core.c:4405:30: warning: comparison between ‘rtl819xUsb_loopback_e’ and ‘enum _RTL8192SUSB_LOOPBACK’ Signed-off-by: Florian Schilhabel Signed-off-by: Greg Kroah-Hartman commit 24a461d537f49f9da6533d83100999ea08c6c755 Author: Dan Carpenter Date: Sat Jul 10 12:06:44 2010 +0200 trace: strlen() return doesn't account for the NULL We need to add one to the strlen() return because of the NULL character. The type->name here generally comes from the kernel and I don't think any of them come close to being MAX_TRACER_SIZE (100) characters long so this is basically a cleanup. Signed-off-by: Dan Carpenter LKML-Reference: <20100710100644.GV19184@bicker> Signed-off-by: Steven Rostedt commit a484e54fae891703cbe1c9ec1b536605f11f5482 Author: David Daney Date: Fri Jul 9 14:52:05 2010 -0700 tracing: Fix $mcount_regex for MIPS in recordmcount.pl I found this issue in a locally patched 2.6.32.x, current kernels have moved the offending code to an __init function which is skipped by recordmcount.pl, so the bug is not currently being exercised. However, I think the patch is still a good idea, to avoid future problems if _mcount were to ever have its address taken in normal code. This is what I originally saw: Although arch/mips/kernel/ftrace.c is built without -pg, and thus contains no calls to _mcount, it does use the address of _mcount in ftrace_make_nop(). This was causing relocations to be emitted for _mcount which recordmcount.pl erronously took to be _mcount call sites. The result was that the text of ftrace_make_nop() would be patched with garbage leading to a system crash. In non-module code, all _mcount call sites will have R_MIPS_26 relocations, so we restrict $mcount_regex to only match on these. Acked-by: Ralf Baechle Acked-by: Wu Zhangjin Signed-off-by: David Daney LKML-Reference: <1278712325-12050-1-git-send-email-ddaney@caviumnetworks.com> Cc: Li Hong Cc: Ingo Molnar Cc: Matt Fleming Signed-off-by: Steven Rostedt commit 7ecac4c38a813021155c4207592693ad1949b9b7 Author: Mark Date: Tue Jul 13 17:24:17 2010 +0100 Staging: comedi: Cleanup style issues in adl_pci9111.c This patch fixes some coding style issues in adl_pci9111.c from checkpatch.pl Signed-off-by: Mark Rankilor Signed-off-by: Greg Kroah-Hartman commit 529e5b32355305d2488363ba7404c6041d73995d Author: Andres More Date: Mon Jul 12 19:28:25 2010 -0300 staging: vt6656: code cleanup in device_netdev_ops' device_xmit() Lindented, cleared checkpatch findings and simplified error handling. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 6d4e807c5a302f10a3b80c7382c9a2a04ed6ec3f Author: Andres More Date: Mon Jul 12 18:28:49 2010 -0300 staging: vt6656: replaced MAX_PACKET_LEN with ETH_FRAME_LEN Replaced custom macro with one from include/linux/if_ether.h. Also removed MAX_LOOKAHEAD_SIZE as it is not used elsewhere. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 5e03f73fe8c01e301fdf38954297a1237be1ab26 Author: Andres More Date: Mon Jul 12 18:17:08 2010 -0300 staging: vt6656: replaced MIN_PACKET_LEN with ETH_ZLEN Removed custom macro with one from include/linux/if_ether.h. Also removed MIN_DATA_LEN as it is not used elsewhere. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 020c0a9a78f8d5215f09164f7e5c5252dea098f9 Author: Andres More Date: Mon Jul 12 16:45:58 2010 -0300 staging: vt6656: replaced MAX_DATA_LEN with ETH_DATA_LEN Removed custom macro with one from include/linux/if_ether.h. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit abad19d07627a8b67b441452b0450e178416d2d0 Author: Andres More Date: Mon Jul 12 16:28:32 2010 -0300 staging: vt6656: replaced U_CRC_LEN with ETH_FCS_LEN Removed custom macro with one from include/linux/if_ether.h. FCS is an Ethernet field that holds the CRC value. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 8efe1ab3a969cdaff4b9aefb9f67efda4e6e979d Author: Andres More Date: Mon Jul 12 14:24:48 2010 -0300 staging: vt6656: removed Calcu_LinkQual definition Removed an always defined macro, perhaps used to patch the driver Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 24fe608a2d4d78cc1a5f5424a4db5c13e3a00983 Author: Andres More Date: Mon Jul 12 14:11:27 2010 -0300 staging: vt6656: removed WPA_SM_Transtatus definition Removed an always defined macro, perhaps used to patch the driver Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit b7526f1460259dd6382135b46ced6dfd508efe5e Author: Andres More Date: Mon Jul 12 14:03:02 2010 -0300 staging: vt6656: removed update_BssList definition Removed an always defined macro, perhaps used to patch the driver Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 5926b9ae320eadc22e33466b560f6ce1890f1780 Author: Andres More Date: Mon Jul 12 13:55:43 2010 -0300 staging: vt6656: removed Adhoc_STA definition Removed an always defined macro, perhaps used to patch the driver Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 68746744b123045228a860bfb9fa21ae4688be01 Author: Andres More Date: Mon Jul 12 13:47:47 2010 -0300 staging: vt6656: removed Safe_Close definition Removed an always defined macro, perhaps used to patch the driver Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit e1669ed0d4424f406120e9d8fad8a9935bce340c Author: Andres More Date: Mon Jul 12 13:10:27 2010 -0300 staging: vt6656: code cleanup in vt6656 DMA TX Lindented, removed unused variables and cleared checkpatch warnings. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 7a8b0055267930bddd7d11e69875576c71dec343 Author: Andres More Date: Mon Jul 12 12:40:01 2010 -0300 staging: vt6656: code cleanup in vt6656_probe() Lindented, cleared checkpatch warnings and removed legacy comments. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 89b28e5db83dc748f37fb7442cc880da49c348ce Author: Andres More Date: Mon Jul 12 12:12:25 2010 -0300 staging: vt6656: removed '#if 1'/'#if 0' definitions Removed code guarded by always false definitions. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 73bce12e445edc228fbfc84d66693601c5744837 Author: Jonathan Cameron Date: Sun Jul 11 16:39:19 2010 +0100 staging: iio: lis3l02dq: use iio_sw_ring_helper_state and funcs Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit 59883ba170bc280787ad9d5decd7677cf6c38ef8 Author: Jonathan Cameron Date: Sun Jul 11 16:39:18 2010 +0100 staging: iio: Add iio_sw_ring_helper_state and functions to cover common case. Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit 43c11b4373f6fcaf8ce02ea5ea95d764edd87040 Author: Jonathan Cameron Date: Sun Jul 11 16:39:17 2010 +0100 staging: iio: Make extensive use of iio_sw_ring_preenable Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit ad577f8da9e469a88d24c37a8ec2314c12162256 Author: Barry Song <21cnbao@gmail.com> Date: Sun Jul 11 16:39:16 2010 +0100 staging: iio: Add a bits per element element to ring_generic allowing a general ring_sw_preenable_function. Signed-off-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 69584bd6d257e008fe4eeebd95c318201dc71d83 Author: Jonathan Cameron Date: Sun Jul 11 16:39:15 2010 +0100 staging: iio: Fix scan_element naming issue The addition of a number to the scan_element names caused an issue in drivers that used either #define or an enum to provide the number. Before this fix names like ADIS16350_ACCEL_X_accel_x_en occur rather than 5_accel_x_en. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 2662051e0868d1bde0abeea19bd54c3c18941afc Author: Jonathan Cameron Date: Sun Jul 11 16:39:14 2010 +0100 staging: iio: Add stubs for iio_ring_buffer_[un]register and equivalent driver stubs Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit e0bcb775e8643816a07bf52c6587bb269695fee9 Author: Jonathan Cameron Date: Sun Jul 11 16:39:13 2010 +0100 staging: iio: imu: allow adis16300 and adis16400 to build without ring buffer support. Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit f4658c898837ed2678422f3e69ee9d050e8e9cf8 Author: Jonathan Cameron Date: Sun Jul 11 16:39:12 2010 +0100 staging: iio: replace combine_8_to_16 with be16_to_cpup where possible. Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit 7b2c33b11ef003d83c87a58201ff42313e13eff4 Author: Jonathan Cameron Date: Sun Jul 11 16:39:11 2010 +0100 staging: iio: remove timestamp field from trigger and pass instead through pollfuncs Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c3db00cc80cf01f9a2033c3f3eb03345d0024761 Author: Jonathan Cameron Date: Sun Jul 11 16:39:10 2010 +0100 staging: iio: Add iio_triggered_ring postenable and predisable + use in drivers Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit 15744090c5ad3ed404a541bdec6f4f9ae1996fc9 Author: Jonathan Cameron Date: Sun Jul 11 16:39:09 2010 +0100 staging: iio: Add and convert drivers to use iio_alloc_pollfunc Signed-off-by: Jonathan Cameron Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman commit 3c9bbf58b2a7e9099343d36a2c0b206f8c2450df Author: Jonathan Cameron Date: Sun Jul 11 16:39:08 2010 +0100 staging: iio: Use kasprintf to allocate and fill trig->name Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit cb46f472cbb08c44ae47a5bea80207c4e4407ee3 Author: Kulikov Vasiliy Date: Mon Jul 12 18:48:24 2010 +0400 Staging: panel: fix memory leak panel_bind_key() must free allocated memory. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit d85170ed30a533ef6832cf11b38488e562c311c8 Author: Andy Shevchenko Date: Thu Jul 22 19:57:08 2010 +0300 staging: panel: change own pieces of code by strtoul() We have nice method simple_strtoul() to convert string to numbers which could be used here. Signed-off-by: Andy Shevchenko Signed-off-by: Greg Kroah-Hartman commit 47c7157f3406e83648dad1c5c4e6e8c0f574dfc3 Author: Kulikov Vasiliy Date: Mon Jul 12 18:48:46 2010 +0400 staging: usbip: fix memory leak sdev should be freed if stub_add_files() failed. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit ab366c1a23183b134eb19c5814f5c9fd3b0c831d Author: Kulikov Vasiliy Date: Tue Jul 13 15:22:46 2010 +0400 Staging: line6: fix leaks in line6_probe() If error occurs line6_probe() must put interface and usbdev that were got before. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 8e2394a981b9258db47f8e223a550d46c6d40cc8 Author: Arnd Bergmann Date: Sun Jul 11 23:18:52 2010 +0200 Staging: autoconvert trivial BKL users to private mutex All these files use the big kernel lock in a trivial way to serialize their private file operations, typically resulting from an earlier semi-automatic pushdown from VFS. None of these drivers appears to want to lock against other code, and they all use the BKL as the top-level lock in their file operations, meaning that there is no lock-order inversion problem. Consequently, we can remove the BKL completely, replacing it with a per-file mutex in every case. Using a scripted approach means we can avoid typos. file=$1 name=$2 if grep -q lock_kernel ${file} ; then if grep -q 'include.*linux.mutex.h' ${file} ; then sed -i '/include.*/d' ${file} else sed -i 's/include.*.*$/include /g' ${file} fi sed -i ${file} \ -e "/^#include.*linux.mutex.h/,$ { 1,/^\(static\|int\|long\)/ { /^\(static\|int\|long\)/istatic DEFINE_MUTEX(${name}_mutex); } }" \ -e "s/\(un\)*lock_kernel\>[ ]*()/mutex_\1lock(\&${name}_mutex)/g" \ -e '/[ ]*cycle_kernel_lock();/d' else sed -i -e '/include.*\/d' ${file} \ -e '/cycle_kernel_lock()/d' fi Signed-off-by: Arnd Bergmann Signed-off-by: Greg Kroah-Hartman commit 7ebc8760b38bb00c35fcf43dad438c2adcd7c328 Author: Mike Thomas Date: Sun Jul 11 10:54:51 2010 +0100 Staging: easycap: Upsample microphone audio Upsampling from 8000 Hz mono to 32000 Hz stereo improves audio/video synchronization when userspace programs adopt default buffering. This is an experimental feature. Signed-off-by: Mike Thomas Signed-off-by: Greg Kroah-Hartman commit 3d423e91b498b71bfdf4bcfac52c3c27e0f2f39f Author: Mike Thomas Date: Sun Jul 11 10:51:13 2010 +0100 Staging: easycap: Replace some global variables New members of struct easycap take the place of undesirable global variables. Signed-off-by: Mike Thomas Signed-off-by: Greg Kroah-Hartman commit 4d6ea9c3223da8d8dc91b369087fa40cc53edd36 Author: Denis Kirjanov Date: Sat Jul 10 07:12:46 2010 +0000 Staging: slicoss: kill functions prototypes and reorder functions Reorder functions to kill their prototypes. Signed-off-by: Denis Kirjanov Signed-off-by: Greg Kroah-Hartman commit 843894ada9433fd7eb3ecd4d0ae24807f1edb622 Author: H Hartley Sweeten Date: Fri Jul 9 10:13:36 2010 -0700 Staging: dt3155: use the fbuffer pointer instead of looking it up Instead of passing the minor number and having to look up the fbuffer, just pass the fbuffer directly to the buffer management code. Also, to make the code more consistent, change the push_empty() call so that the fbuffer is passed as the first parameter. Prototype the printques routine to avoid having to declare it as extern. Cleanup some of the comments in dt3155_isr.h. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit dd85c9911d6eb44f398d07006a3c4ce57d36b7b9 Author: Kulikov Vasiliy Date: Fri Jul 16 20:14:11 2010 +0400 staging: tidspbridge: check kmalloc() result If kmalloc() fails then exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 4018e396518e56a156fd99a2a44a675bc87437dd Author: Nishanth Menon Date: Mon Jul 12 17:56:03 2010 -0500 staging: tidspbridge: remove RET_OK RET_FAIL RET_OK is 0 and RET_FAIL is a -1, replace these custom returns with a standard errno Signed-off-by: Nishanth Menon Reviewed-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 7124cb171108dea386b2c81334605da1d6f4554a Author: Nishanth Menon Date: Mon Jul 12 17:56:02 2010 -0500 staging: tidspbridge: remove custom typedef reg_uword32 use readl, writel to get and set the register instead. Signed-off-by: Nishanth Menon Reviewed-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 2094f12d440c5a9fae032932266fa4a44135194c Author: Nishanth Menon Date: Mon Jul 12 17:56:01 2010 -0500 staging: tidspbridge: remove std.h std.h introduces _TI_ _FLOAT_ _FIXED_ _TARGET_ ARG_TO_INT ARG_TO_PTR which are no longer being used anywhere. we dont really need the custom std.h header. remove it from the repo. where we need types, introduce standard types.h Signed-off-by: Nishanth Menon Reviewed-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 86dd51e4c4d620dfe1aca584a1332b55f3a49c05 Author: Nishanth Menon Date: Mon Jul 12 17:56:00 2010 -0500 staging: tidspbridge: no need for custom NULL kernel has it's own NULL define, we dont need to introduce our own custom NULL type! Signed-off-by: Nishanth Menon Reviewed-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 5e7680679e4ac852db7b03e232f3472f86d4c47f Author: Nishanth Menon Date: Mon Jul 12 17:55:59 2010 -0500 staging: tidspbridge: remove custom TRUE FALSE bool has standard true and false, we dont need to introduce our own TRUE and FALSE macros. Signed-off-by: Nishanth Menon Reviewed-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit c8c1ad8ce317c1e213db47f094d6eee8dec7d280 Author: Rene Sapiens Date: Fri Jul 9 21:24:09 2010 -0500 staging: ti dspbridge: make variables in prototypes match within functions definitions This patch renames the variables in the parameter lists and in the function definitions to make them match. Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 5a09ddeae940ceea68a8b2dada71bc0cc609c894 Author: Rene Sapiens Date: Fri Jul 9 21:24:08 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== validBit to valid_bit victimEntryNum to victim_entry_num virtualAddr to virtual_addr xType to xtype actualValue to actual_value EASIL1_MMUMMU_IRQSTATUSReadRegister32 to easil1_mmummu_irqstatus_read_register32 EASIL1_MMUMMU_LOCKBaseValueWrite32 to easil1_mmummu_lock_base_value_write32 easiNum to easi_num expectedValue to expected_value invalidValue to invalid_value L1_base to l1_base L2_base to l2_base lower16Bits to lower16_bits lower8Bits to lower8_bits lowerMiddle8Bits to lower_middle8_bits lowerUpper8Bits to lower_upper8_bits maxValidValue to max_valid_value minValidValue to min_valid_value newValue to new_value returnCodeIfMismatch to return_code_if_mismatch spyCodeIfMisMatch to spy_code_if_mis_match upper16Bits to upper16_bits upper8Bits to upper8_bits ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 5e2eae576b750c2e40bda5966437dbc6b12d479e Author: Rene Sapiens Date: Fri Jul 9 21:24:07 2010 -0500 staging: ti dspbridge: Rename words with camel case. The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== ulBrdState to brd_state ulChnl to chnl ulDspAddr to dsp_add ulDspDestAddr to dsp_dest_addr ulDspLoadAddr to dsp_load_addr ulDspRunAddr to dsp_run_addr ulDspSrcAddr to dsp_src_addr ulMapAttrs to map_attr ulMemType to mem_type ulRMSFxn to rms_fxn ulStatus to ret ulVirtAddr to virt_addr uNumDesc to num_desc uNumToDSP to num_to_dsp uPaSize to pa_size uPhase to phase uSegId to segm_id uStream1 to stream1 uStream2 to stream2 uZId to zid ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 0cd343a42f60a965cece191efaefe51e01e58f64 Author: Rene Sapiens Date: Fri Jul 9 21:24:06 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== segmentId to segmnt_id SetPageDirty to set_page_dirty sizeInBytes to size_in_bytes sleepCode to sleep_code Status to status symName to sym_name szVar to sz_var Trapped_Args to trapped_args TTBPhysAddr to ttb_phys_addr uChirps to chirps uChnlId to ch_id uChnlID to ch_id uContentSize to cont_size uDDMAChnlId to ddma_chnl_id uEvents to events ulAlign to align_mask ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 318b5df99bbbe58eb9f80105d9534117ac2f25ce Author: Rene Sapiens Date: Fri Jul 9 21:24:05 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== puLen to len pulEntry to entry_pt pulFxnAddr to fxn_addr pulId to chan_id pulSegId to sgmt_id pVaBuf to va_buf pVirtualAddress to virtual_address pwMbVal to mbx_val pWord to word pXlatorAttrs to xlator_attrs registerFxn to register_fxn rootPersistent to root_prstnt sectionData to section_data sectionInfo to section_info sectionName to section_name sectName to sec_name ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 383b834522b11eec607dbe422835dcf5812730c3 Author: Rene Sapiens Date: Fri Jul 9 21:24:04 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== pstrFxn to str_fxn pstrLibName to str_lib_name pstrSect to str_sect pstrSym to str_sym pstrZLFileName to str_zl_file_name pstrZLFile to str_zl_file pszCoffPath to sz_coff_path pszMode to sz_mode pszName to sz_name pszSectName to sz_sect_name pszUuid to sz_uuid pszZlDllName to sz_zl_dll_name puAddr to addr pulAddr to addr pulBufSize to buff_size pulBytes to nbytes ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 13b18c29ec01068dce4b266cc179d4e90e79d0e9 Author: Rene Sapiens Date: Fri Jul 9 21:24:03 2010 -0500 staging: ti dspbridge: Rename words with camel case. The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== pPhysAddr to phys_addr pPhysicalAddress to physical_address ppIntfFxns to if_fxns pProcLoadStat to proc_load_stat pProcStat to proc_lstat ppSym to sym_val pRefData to ref_data pRef to ref preservedBit to preserved_bit pResult to result procID to proc_id pSectInfo to sect_inf pSrc to src pstrContent to str_content pstrDummyFile to str_dummy_file pstrExecFile to str_exec_file ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit fb6aabb7f8b64aef7c4376b6cd4b760a62f75c5b Author: Rene Sapiens Date: Fri Jul 9 21:24:02 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== pMemStatBuf to mem_stat_buf pMgrAttrs to mgr_attrts pMgrInfo to mgr_info pNodeEnv to node_env pNodeId to node_uuid pNodeInfo to node_info pNumLibs to num_libs pNumPersLibs to num_pers_libs pObjDef to obj_def pObjUuid to obj_uuid poolPhysBase to pool_phys_base poolSize to pool_size pPctxt to pctxt ppDevContext to dev_cntxt ppDrvInterface to drv_intf pPersistentDepLibs to prstnt_dep_libs pPhyAddr to phy_addr ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit daa89e6cdf1ad0ba18680f41237b659ef0c27c72 Author: Rene Sapiens Date: Fri Jul 9 21:24:01 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== phNldrObj to nldr_ovlyobj phNldr to nldr phNodeMgr to node_man pHostBuf to host_buf pHostConfig to host_config phRmmMgr to rmm_mgr phStrmMgr to strm_man phStrm to strm_objct phXlator to xlator physicalAddr to physical_addr pInfo to channel_info pIOC to chan_ioc pLib to lib_obj pList to lst pMemBuf to mem_buf ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit e436d07db9db374105daa6c15d853e3f13a37104 Author: Rene Sapiens Date: Fri Jul 9 21:24:00 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== phDevContext to device_ctx phDevNode to dev_nde phDevObject to device_obj phDispObject to dispatch_obj phDmmMgr to dmm_manager phDrvObject to drv_obj phDRVObject to drv_obj phIOMgr to io_man phLoader to loader phManager to manager phMgrObject to mgr_obj phMgr to mgr phMsgMgr to msg_man phMsgQueue to msgq phNldrNode to nldr_nodeobj ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit a5120278008a5f48634085c23a70f1153065765d Author: Rene Sapiens Date: Fri Jul 9 21:23:59 2010 -0500 staging: ti dspbridge: Rename words with camel case. The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== pdwSize to buff_size pdwState to board_state pdwValue to value pdwVersion to version pElemExisting to elem_existing pEntry to entry pExists to exists pfEnablePerf to enable_perf pGenObj to gen_obj phChnlMgr to channel_mgr phChnl to chnl phCodMgr to cod_mgr phDCDHandle to dcd_handle phDcdMgr to dcd_mgr phDehMgr to deh_manager ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit aa09b091267694befb9459f22bed2d6437fb59f8 Author: Rene Sapiens Date: Fri Jul 9 21:23:58 2010 -0500 staging: ti dspbridge: Rename words with camel case The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== pArb to arb pbAlreadyAttached to already_attached pBaseAddr to base_addr pbHostBuf to host_buff pBufVa to buf_va pChnlInfo to channel_info pConfig to config_param pContent to content pContext to context pdcdProps to dcd_prop pDepLibUuids to dep_lib_uuids pDevNodeString to dev_node_strg pDispAttrs to disp_attrs pDsp to dsp pdwAutoStart to auto_start pdwChnl to chnl ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 95870a88ec83be6f10854c9da3bbadf27f3c07c3 Author: Rene Sapiens Date: Fri Jul 9 21:23:57 2010 -0500 staging: ti dspbridge: Rename words with camel case. The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== hStrm to stream_obj iMode to io_mode irqMask to irq_mask lOffset to offset memPtr to mem_ptr moduleId to module_id msgCallback to msg_callback msgList to msg_list nArgc to num_argc nEntryStart to entry_start nMemSpace to mem_space nStatus to node_status nStrms to strms numLibs to num_libs numLockedEntries to num_locked_entries pageSize to page_sz ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit e68906924d742dfb33564d7eb4ea7db0b4e65ae4 Author: Rene Sapiens Date: Fri Jul 9 21:23:56 2010 -0500 staging: ti dspbridge: Rename words with camel case. The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== hDevContext to dev_ctxt hDevExtension to dev_extension hdevObject to device_obj hDispObject to disp_obj hDrVObject to driver_obj hDRVObject to driver_obj hMGRHandle to mgr_handle hNldrObject to nldr hNode1 to node1 hNode2 to node2 hNodeRes to node_resource hPCtxt to process_ctxt hProc to proc hStreamHandle to stream_handle ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit b301c85803376ef997bd7802cd5f0e3e88d10ae8 Author: Rene Sapiens Date: Fri Jul 9 21:23:55 2010 -0500 staging: ti dspbridge: Rename words with camel case. The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== dspAddr to dsp_address dspAdr to dsp_adr dspBaseVirt to dsp_base_virt dwDeviceContext to device_context dwDSPAddrOffset to dsp_addr_offset dwDSPAddr to dsp_addr dwErrInfo to error_info dwGPPBaseBA to gpp_base_ba dwMask to mask dwTimeout to timeout dwTimeOut to timeout dwValue to value entryNum to entry_num execFile to exec_file fFlush to flush_data FlushMemType to flush_mem_type ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 0d9073abb7735dc7005a76835af055f4b6851586 Author: Rene Sapiens Date: Fri Jul 9 17:48:52 2010 -0500 staging: ti dspbridge: fix compilation error This patch fix a compilation error in uuid_hex_to_bin due to the patch "simplify and clean up" Signed-off-by: Rene Sapiens Acked-by: Andy Shevchenko Signed-off-by: Greg Kroah-Hartman commit e955cead031177b083fbf18d04a03c06e330a439 Author: Marc Kleine-Budde Date: Wed Jul 29 10:20:10 2009 +0200 CAN: Add Flexcan CAN controller driver This core is found on some Freescale SoCs and also some Coldfire SoCs. Support for Coldfire is missing though at the moment as they have an older revision of the core which does not have RX FIFO support. Signed-off-by: Sascha Hauer Signed-off-by: Marc Kleine-Budde Acked-by: Wolfgang Grandegger Signed-off-by: Marc Kleine-Budde commit cb86ae95a0168be2acc6c48b1671ffaba1e5e39e Merge: 14764b0 23f5cac Author: Russell King Date: Thu Jul 22 16:00:55 2010 +0100 Merge branch 'master' of git://git.infradead.org/users/cbou/linux-cns3xxx into devel-stable commit 4c21adf26f8fcf86a755b9b9f55c2e9fd241e1fb Author: Thomas Renninger Date: Tue Jul 20 16:59:34 2010 -0700 x86 cpufreq, perf: Make trace_power_frequency cpufreq driver independent and fix the broken case if a core's frequency depends on others. trace_power_frequency was only implemented in a rather ungeneric way in acpi-cpufreq driver's target() function only. -> Move the call to trace_power_frequency to cpufreq.c:cpufreq_notify_transition() where CPUFREQ_POSTCHANGE notifier is triggered. This will support power frequency tracing by all cpufreq drivers. trace_power_frequency did not trace frequency changes correctly when the userspace governor was used or when CPU cores' frequency depend on each other. -> Moving this into the CPUFREQ_POSTCHANGE notifier and pass the cpu which gets switched automatically fixes this. Robert Schoene provided some important fixes on top of my initial quick shot version which are integrated in this patch: - Forgot some changes in power_end trace (TP_printk/variable names) - Variable dummy in power_end must now be cpu_id - Use static 64 bit variable instead of unsigned int for cpu_id [akpm@linux-foundation.org: build fix] Signed-off-by: Thomas Renninger Cc: davej@codemonkey.org.uk Signed-off-by: Ingo Molnar Cc: Dave Jones Acked-by: Arjan van de Ven Cc: Robert Schoene Tested-by: Robert Schoene Signed-off-by: Andrew Morton commit 7d63397574c874a05e071987248c44fcf13eccf1 Author: Linus Walleij Date: Wed Jun 2 09:08:55 2010 +0100 ARM: 6159/1: Move IOP to use common mult/shift calculation code Since the infrastructure for determining shift/mult values from a clock rate and a minimum programmable rate is now in the kernel, lets remove this custom code. Cc: Deepak Saxena Acked-by: Mikael Pettersson Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 3126c7bc4106c572ef47e2c220df5a00e7973379 Author: Russell King Date: Thu Jul 15 11:01:17 2010 +0100 ARM: AMBA: Add pclk definition for platforms using primecells Add a dummy clk definition for the APB pclk signal on all platforms using the AMBA bus infrastructure. This ensures that these platforms continue to work when the core amba bus code controls the APB pclk. Signed-off-by: Russell King commit 4bd48940190a34fe5a78a1595ec7756edf36b18a Author: Linus Walleij Date: Mon Jul 19 20:55:46 2010 +0100 ARM: 6234/1: move SPEAr to use common mult/shift calculation code Since the infrastructure for determining shift/mult values from a clock rate and a minimum programmable rate is now in the kernel, lets remove this custom code. Cc: Viresh KUMAR Tested-by: Shiraz Hashim Signed-off-by: Linus Walleij Signed-off-by: Russell King commit c6ca2e466f22dee01a97f04bcc6bec8062d79847 Author: wanzongshun Date: Thu Jul 22 09:12:30 2010 +0100 ARM: 6250/1: patch for modifying spi flash configuration This patch is to modify spi flash configuration, the previous one can make spi driver work failed. Signed-off-by: Wan ZongShun Signed-off-by: Russell King commit c588e37da8b2e4708397355b26d067450058f804 Author: wanzongshun Date: Thu Jul 22 06:56:50 2010 +0100 ARM: 6249/1: add nuc900 kpi platform_device structure to nuc910_dev Add nuc900 kpi platform_device structure to nuc910_dev Signed-off-by: Wan ZongShun Signed-off-by: Russell King commit 9e3aaac335e93d2f35d41e51b569becd2a43c260 Author: wanzongshun Date: Sun Jul 18 15:17:04 2010 +0100 ARM: 6232/1: add nuc900 keypad arch platform data This patch is to add nuc900 keypad arch platform data. Signed-off-by: Wan ZongShun Signed-off-by: Russell King commit 6a446b906d58420f9282d74d42e28ff7e3b50b5c Author: wanzongshun Date: Sun Jul 18 15:15:11 2010 +0100 ARM: 6231/1: re-organize the nuc900 lcd arch platform data setting The patch re-organizes the nuc900 lcd arch platform data, remove the lcd platform data setting from nuc950.c to dev.c It can maximize the share codes between nuc900 series MCUs. Signed-off-by: Wan ZongShun Signed-off-by: Russell King commit 650fb4393dff543bc980d361555c489fbdeed088 Author: Brian Gerst Date: Sat Jul 17 09:03:28 2010 -0400 x86-64: Simplify loading initial_gs Load initial_gs as two 32-bit values instead of splitting a 64-bit value. Signed-off-by: Brian Gerst LKML-Reference: <1279371808-24804-3-git-send-email-brgerst@gmail.com> Reviewed-by: Pekka Enberg Signed-off-by: H. Peter Anvin commit cfaa71ee9794472598d3966c3315cd6bd8f953d3 Author: Brian Gerst Date: Sat Jul 17 09:03:27 2010 -0400 x86: Use symbolic MSR names Use symbolic MSR names instead of hardcoding the MSR index. Signed-off-by: Brian Gerst LKML-Reference: <1279371808-24804-2-git-send-email-brgerst@gmail.com> Reviewed-by: Pekka Enberg Signed-off-by: H. Peter Anvin commit 8c06585d6431addadd94903843dfbcd315b42d4e Author: Brian Gerst Date: Sat Jul 17 09:03:26 2010 -0400 x86: Remove redundant K6 MSRs MSR_K6_EFER is unused, and MSR_K6_STAR is redundant with MSR_STAR. Signed-off-by: Brian Gerst LKML-Reference: <1279371808-24804-1-git-send-email-brgerst@gmail.com> Reviewed-by: Pekka Enberg Signed-off-by: H. Peter Anvin commit 4cfa580e7eebb8694b875d2caff3b989ada2efac Author: David S. Miller Date: Wed Jul 21 21:10:49 2010 -0700 r6040: Fix args to phy_mii_ioctl(). Reported by Stephen Rothwell. Signed-off-by: David S. Miller commit 4c3e5edf2f33546392fbd9beaae04e9bed7304ff Author: David S. Miller Date: Wed Jul 21 21:09:23 2010 -0700 vhost net: Fix warning. Reported by Stephen Rothwell. Signed-off-by: David S. Miller commit 1cff92d8fdb27684308864d9cdb324bee43b40ab Author: H. Peter Anvin Date: Wed Jul 21 14:23:10 2010 -0700 x86, xsave: Make xstate_enable_boot_cpu() __init, protect on CPU 0 xstate_enable_boot_cpu() is, as the name implies, only used on the boot CPU; furthermore, it invokes alloc_bootmem(), which is __init; hence it needs to be tagged __init rather than __cpuinit. Furthermore, it is *not* safe in the long run to rely on CPU 0 only coming online during the early boot -- at some point we're going to support offlining (and re-onlining) the boot CPU, and at that point we must not call xstate_enable_boot_cpu() again. The code is a fair bit more obscure than one would like, because the __ref overrides aren't quite powerful enough. Signed-off-by: H. Peter Anvin Acked-by: Suresh Siddha Cc: Robert Richter LKML-Reference: <4C476236.1020302@zytor.com> commit 3f30fc1570626f11e8f3efe5ebd41fe96e847ed1 Author: Gustavo F. Padovan Date: Wed Jul 21 10:59:58 2010 +0000 net: remove last uses of __attribute__((packed)) Network code uses the __packed macro instead of __attribute__((packed)). Signed-off-by: Gustavo F. Padovan Signed-off-by: David S. Miller commit 942875ffc102a6b9992120808e4990eda7a618f6 Author: Gustavo F. Padovan Date: Wed Jul 21 10:59:57 2010 +0000 irda: Use __packed annotation instead IRDA_PACKED macro Remove IRDA_PACKED macro, which maps to __attribute__((packed)). IRDA is one of the last users of __attribute__((packet)). Networking code uses __packed now. Signed-off-by: Gustavo F. Padovan Signed-off-by: David S. Miller commit 2e4e7a97edcd58ce6e5be7cbb65fc4263f65e0bf Author: Kulikov Vasiliy Date: Sat Jul 3 06:04:15 2010 +0000 drivers/net/irda: use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 2037d5aa2551267184284188efdec4742f7218fa Author: Joe Perches Date: Wed Jul 21 14:44:18 2010 -0700 drivers/net/qlge: Use pr_, shrink text a bit Add and use a few neatening macros Remove PFX Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Convert printk(KERN_ERR to pr_err( $ size drivers/net/qlge/built-in.o.* text data bss dec hex filename 116456 2312 25712 144480 23460 drivers/net/qlge/built-in.o.old 114909 2312 25728 142949 22e65 drivers/net/qlge/built-in.o.new Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 4995b9dba908436c1611454f9bd2cb3ddf6babee Author: Robert Richter Date: Wed Jul 21 19:03:56 2010 +0200 x86, xsave: Add __init attribute to setup_xstate_features() This is called only from initialization code. Signed-off-by: Robert Richter LKML-Reference: <1279731838-1522-6-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 45c2d7f46211a0b1f6b425c59575c53145afc4b4 Author: Robert Richter Date: Wed Jul 21 19:03:55 2010 +0200 x86, xsave: Make init_xstate_buf static The pointer is only used in xsave.c. Making it static. Signed-off-by: Robert Richter LKML-Reference: <1279731838-1522-5-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit ee813d53a8e980a3a28318efb8935d45723f5211 Author: Robert Richter Date: Wed Jul 21 19:03:54 2010 +0200 x86, xsave: Check cpuid level for XSTATE_CPUID (0x0d) The patch introduces the XSTATE_CPUID macro and adds a check that tests if XSTATE_CPUID exists. Signed-off-by: Robert Richter LKML-Reference: <1279731838-1522-4-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 97e80a70db689fb1e876df9f12305cc72f85ca53 Author: Robert Richter Date: Wed Jul 21 19:03:53 2010 +0200 x86, xsave: Introduce xstate enable functions The patch renames xsave_cntxt_init() and __xsave_init() into xstate_enable_boot_cpu() and xstate_enable() as this names are more meaningful. It also removes the duplicate xcr setup for the boot cpu. Signed-off-by: Robert Richter LKML-Reference: <1279731838-1522-3-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 0e49bf66d2ca649b167428adddbbbe9d9bd4894c Author: Robert Richter Date: Wed Jul 21 19:03:52 2010 +0200 x86, xsave: Separate fpu and xsave initialization As xsave also supports other than fpu features, it should be initialized independently of the fpu. This patch moves this out of fpu initialization. There is also a lot of cross referencing between fpu and xsave code. This patch reduces this by making xsave_cntxt_init() and init_thread_xstate() static functions. The patch moves the cpu_has_xsave check at the beginning of xsave_init(). All other checks may removed then. Signed-off-by: Robert Richter LKML-Reference: <1279731838-1522-2-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 3f8afb77cd8a672f024e4a16763ef177bc16c8f8 Author: Borislav Petkov Date: Wed Jul 21 14:47:05 2010 +0200 x86, tlb: Clean up and correct used type smp_processor_id() returns an int and not an unsigned long. Also, since the function is small enough, there's no need for a local variable caching its value. No functionality change, just cleanup. Signed-off-by: Borislav Petkov LKML-Reference: <20100721124705.GA674@aftab> Signed-off-by: Ingo Molnar commit e675b6db1245649f91bb1bfb10baef9af6d3f8e6 Author: Alexander Schmidt Date: Mon Jul 5 16:19:25 2010 +0000 IB/ehca: Catch failing ioremap() When ioremap() fails with a NULL pointer, catch the error and pass it to the caller of create_qp() or create_cq() instead of trying to dereference the NULL pointer later on. Signed-off-by: Alexander Schmidt Signed-off-by: Roland Dreier commit eebef74695e1498e04e5f85be9c6f84bd2e7358a Author: Josh Hunt Date: Mon Jul 19 12:31:16 2010 -0700 sched: Use correct macro to display sched_child_runs_first in /proc/sched_debug The sched_child_runs_first value in /proc/sched_debug is currently displayed using a macro meant to split ns time values. This patch uses the correct macro to display it as a plain decimal value. Signed-off-by: Josh Hunt Cc: peterz@infradead.org Cc: juhlenko@akamai.com Cc: efault@gmx.de LKML-Reference: <1279567876-25418-1-git-send-email-johunt@akamai.com> Signed-off-by: Ingo Molnar commit dca45ad8af54963c005393a484ad117b8ba6150f Merge: 68c38fc cd5b8f8 Author: Ingo Molnar Date: Wed Jul 21 21:45:02 2010 +0200 Merge branch 'linus' into sched/core Merge reason: Move from the -rc3 to the almost-rc6 base. Signed-off-by: Ingo Molnar commit 23c2875725ebb03e58e598754309e198648f608a Merge: 9dcdbf7 b444786 Author: Ingo Molnar Date: Wed Jul 21 21:44:18 2010 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core commit 9dcdbf7a33d9018ac5d45debcf261be648bdd56a Merge: cc5edb0 cd5b8f8 Author: Ingo Molnar Date: Wed Jul 21 21:43:03 2010 +0200 Merge branch 'linus' into perf/core Merge reason: Pick up the latest perf fixes. Signed-off-by: Ingo Molnar commit 7a17a33c0da37f8d24222c967550d19dabf13617 Author: Johannes Berg Date: Wed Jul 21 11:30:27 2010 +0200 mac80211: proper IBSS locking IBSS has never had locking, instead relying on some memory barriers etc. That's hard to get right, and I think we had it wrong too until the previous patch. Since this is not performance sensitive, it doesn't make sense to have the maintenance overhead of that, so add proper locking. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit bc05d19f4b884b1dbbce48912710ae3f972c89d2 Author: Johannes Berg Date: Wed Jul 21 10:52:40 2010 +0200 mac80211: fix IBSS lockdep complaint Bob reported a lockdep complaint originating in the mac80211 IBSS code due to the common work struct patch. The reason is that the IBSS and station mode code have different locking orders for the cfg80211 wdev lock and the work struct (where "locking" implies running/canceling). Fix this by simply not canceling the work in the IBSS code, it is not necessary since when the REQ_RUN bit is cleared, the work will run without effect if it runs. When the interface is set down, it is flushed anyway, so there's no concern about it running after memory has been invalidated either. This fixes https://bugzilla.kernel.org/show_bug.cgi?id=16419 Additionally, looking into this I noticed that there's a small window while the IBSS is torn down in which the work may be rescheduled and the REQ_RUN bit be set again after leave() has cleared it when a scan finishes at exactly the same time. Avoid that by setting the ssid_len to zero before clearing REQ_RUN which signals to the scan finish code that this interface is not active. Reported-by: Bob Copeland Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 9dca9c490146e787472bc05b264e043311a4c67b Author: Johannes Berg Date: Wed Jul 21 10:09:25 2010 +0200 mac80211: refuse shared key auth when WEP is unavailable When WEP is not available, we should reject shared key authentication because it could never succeed. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 5a652052fedbd7869572c757dd2ffc2ed420c69d Author: Maxime Bizon Date: Wed Jul 21 17:21:38 2010 +0200 cfg80211: fix race between sysfs and cfg80211 device_add() is called before adding the phy to the cfg80211 device list. So if a userspace program uses sysfs uevents to detect new phy devices, and queries nl80211 to get phy info, it can get ENODEV even though the phy exists in sysfs. An easy workaround is to hold the cfg80211 mutex until the phy is present in sysfs/cfg80211/debugfs. Signed-off-by: Maxime Bizon Signed-off-by: John W. Linville commit acd82aa868c2133149370c18d85f8005fbf5611e Author: Larry Finger Date: Wed Jul 21 11:48:05 2010 -0500 b43: silence phy_n sparse warnings drivers/net/wireless/b43/phy_n.c:512:53: warning: cast truncates bits from constant value (ffff0fff becomes fff) drivers/net/wireless/b43/phy_n.c:765:66: warning: cast truncates bits from constant value (ffff7fff becomes 7fff) drivers/net/wireless/b43/phy_n.c:1012:38: warning: cast truncates bits from constant value (ffff00ff becomes ff) drivers/net/wireless/b43/phy_n.c:1119:38: warning: cast truncates bits from constant value (ffff0fff becomes fff) drivers/net/wireless/b43/phy_n.c:2458:56: warning: cast truncates bits from constant value (ffff7fff becomes 7fff) drivers/net/wireless/b43/phy_n.c:2933:38: warning: cast truncates bits from constant value (ffff0fff becomes fff) drivers/net/wireless/b43/phy_n.c:3294:57: warning: cast truncates bits from constant value (ffff3fff becomes 3fff) Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit bdf8edcb5732df554ef53096092e94d22ab5ffc9 Author: Dave Olson Date: Thu Jun 17 23:13:49 2010 +0000 IB/qib: Allow PSM to select from multiple port assignment algorithms We used to allow only full specification, or using all contexts within an HCA before moving to the next HCA. We now allow an additional method -- round-robining through HCAs -- and make that the default. Signed-off-by: Dave Olson Signed-off-by: Roland Dreier commit 2d978a953b874bac418e0b9475edd1b9125281f6 Author: Ralph Campbell Date: Wed Jun 23 15:58:31 2010 +0000 IB/qib: Turn off IB latency mode Turn off IB latency mode. This improves link quality for slower process chips. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit dd378c2102cf4bf81144db70771d09ecead2cd15 Author: Arnd Bergmann Date: Wed Jul 7 21:40:06 2010 +0000 IB/qib: Use generic_file_llseek When the default llseek action gets changed to no_llseek, all file systems relying on the current behaviour need to set explicit .llseek operations. In case of qib_fs, we want the files to be seekable, so generic_file_llseek fits best. Signed-off-by: Arnd Bergmann Signed-off-by: Roland Dreier commit 41950bdfb5c530ba9b67037cc4c836677e750b6e Author: John W. Linville Date: Wed Jul 21 11:37:19 2010 -0400 b43: silence most sparse warnings CHECK drivers/net/wireless/b43/main.c drivers/net/wireless/b43/main.c:111:5: warning: symbol 'b43_modparam_pio' was not declared. Should it be static? CHECK drivers/net/wireless/b43/phy_g.c drivers/net/wireless/b43/phy_g.c:975:56: warning: cast truncates bits from constant value (ffff7fff becomes 7fff) CHECK drivers/net/wireless/b43/phy_lp.c drivers/net/wireless/b43/phy_lp.c:2701:6: warning: symbol 'b43_lpphy_op_switch_analog' was not declared. Should it be static? drivers/net/wireless/b43/phy_lp.c:1148:30: warning: cast truncates bits from constant value (ffff1fff becomes 1fff) drivers/net/wireless/b43/phy_lp.c:1525:30: warning: cast truncates bits from constant value (ffff1fff becomes 1fff) drivers/net/wireless/b43/phy_lp.c:1529:30: warning: cast truncates bits from constant value (ffff1fff becomes 1fff) CHECK drivers/net/wireless/b43/wa.c drivers/net/wireless/b43/wa.c:385:60: warning: cast truncates bits from constant value (ffff00ff becomes ff) drivers/net/wireless/b43/wa.c:403:55: warning: cast truncates bits from constant value (ffff00ff becomes ff) drivers/net/wireless/b43/wa.c:405:55: warning: cast truncates bits from constant value (ffff00ff becomes ff) drivers/net/wireless/b43/wa.c:415:71: warning: cast truncates bits from constant value (ffff0fff becomes fff) AFAICT, none of these amount to real bugs. But this reduces warning spam from sparse w/o significantly affecting readability of the code (IMHO). Signed-off-by: John W. Linville commit d37ac31ddc24c1a0beed134278bc074c98812210 Author: Steve Wise Date: Thu Jun 10 19:03:00 2010 +0000 RDMA/cxgb4: Support variable sized work requests T4 EQ entries are in multiples of 64 bytes. Currently the RDMA SQ and RQ use fixed sized entries composed of 4 EQ entries for the SQ and 2 EQ entries for the RQ. For optimial latency with small IO, we need to change this so the HW only needs to DMA the EQ entries actually used by a given work request. Implementation: - add wq_pidx counter to track where we are in the EQ. cidx/pidx are used for the sw sq/rq tracking and flow control. - the variable part of work requests is the SGL. Add new functions to build the SGL and/or immediate data directly in the EQ memory wrapping when needed. - adjust the min burst size for the EQ contexts to 64B. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit f25c80a4b2bf93c99820f470573626557db35202 Author: Julia Lawall Date: Tue Jul 20 12:25:17 2010 +0000 arch/um/drivers: remove duplicate structure field initialization There are two initializations of ndo_set_mac_address, one to a local function that is not used otherwise and one to a function that is defined elsewhere. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r@ identifier I, s, fld; position p0,p; expression E; @@ struct I s =@p0 { ... .fld@p = E, ...}; @s@ identifier I, s, r.fld; position r.p0,p; expression E; @@ struct I s =@p0 { ... .fld@p = E, ...}; @script:python@ p0 << r.p0; fld << r.fld; ps << s.p; pr << r.p; @@ if int(ps[0].line) akpm: - Use the standard eth_mac_addr() in uml_net_set_mac() - Remove unneeded and racy local set_ether_mac() - Remove duplicated (and incorrect) uml_netdev_ops.ndo_set_mac_address initializer. Fixes 8bb95b39a16ed55226810596f92216c53329d2fe ("uml: convert network device to netdevice ops"). [akpm@linux-foundation.org: rework as above] Signed-off-by: Julia Lawall Cc: Stephen Hemminger Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit df1086fb2e160521eda5b19a37b9e25dbc805c39 Author: Andy Shevchenko Date: Tue Jul 20 12:25:16 2010 +0000 drivers/net/cxgb3/t3_hw.c: use new hex_to_bin() method Get rid of own implementation of hex_to_bin(). Signed-off-by: Andy Shevchenko Acked-by: Divy Le Ray Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 3d4f9a28e0f543e2a633d54f0f37f6e81a7701cd Author: Dan Carpenter Date: Mon Jul 19 20:30:14 2010 +0000 RDMA/cxgb3: Clean up signed check of unsigned variable Q_FREECNT() returns the number of spaces free. This should never be a negative amount. Also the num_wrs is an unsigned int so it can never be less than zero. Signed-off-by: Dan Carpenter Acked-by: Steve Wise Signed-off-by: Roland Dreier commit d3c814e8b2a094dc3bcbe6a0d93ec4824b26e86a Author: David Rientjes Date: Wed Jul 21 02:44:56 2010 +0000 RDMA/cxgb4: Remove dependency on __GFP_NOFAIL The alloc_skb() in various allocations are failable, so remove __GFP_NOFAIL from their masks. Signed-off-by: David Rientjes Acked-by: Steve Wise Signed-off-by: Roland Dreier commit ba6d39256bed87a0e8ee1770b5f7638bb3e0cfe4 Author: Steve Wise Date: Wed Jun 23 15:46:49 2010 +0000 RDMA/cxgb4: Add module option to tweak delayed ack Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit dccb816de38efe72becc5d7f90a5dfedcd6fd053 Author: Ben Hutchings Date: Sat Jun 12 02:25:09 2010 +0000 IB/ipath: Fix probe failure path The failure path in ipath_init_one() does not match the cleanup code in ipath_remove_one() and appears to leave interrupts enabled in some cases. Change it to match. Signed-off-by: Ben Hutchings Signed-off-by: Roland Dreier commit b3190df628617c7a4f188a9465aeabe1f5761933 Author: Suraj Sumangala Date: Mon Jul 19 12:34:07 2010 +0530 Bluetooth: Support for Atheros AR300x serial chip Implements Atheros AR300x serial HCI protocol. This protocol extends H4 serial protocol to implement enhanced power management features supported by Atheros AR300x serial Bluetooth chipsets. Signed-off-by: Suraj Sumangala Signed-off-by: Marcel Holtmann commit 81ca405aee7e4a1a432c3887bc83ae798fd2cccd Author: Gustavo F. Padovan Date: Mon Jul 19 13:54:05 2010 -0300 Bluetooth: Use __packed annotation for drivers Use the __packed annotation instead of the __attribute__((packed)). Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 66c853cc21bd387a9a2109dcf3b3d53cc9ee9edf Author: Gustavo F. Padovan Date: Mon Jul 19 02:00:13 2010 -0300 Bluetooth: Use __packed annotation To make net/ and include/net/ code consistent use __packed instead of __attribute__ ((packed)). Bluetooth subsystem was one of the last net subsys still using __attribute__ ((packed)). Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit d1c4a17d58a6dfacb48935aa430aa986559a885f Author: Gustavo F. Padovan Date: Sun Jul 18 16:25:54 2010 -0300 Bluetooth: Enable L2CAP Extended features by default Change the enable_ertm param to disable_ertm and default value to 0. That means that L2CAP Extended features are enabled by default now. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 893ef9711286d01763f3c175385d70076d5f9546 Author: Gustavo F. Padovan Date: Sun Jul 18 15:13:37 2010 -0300 Bluetooth: Fix typo in hci_event.c memmory -> memory Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 08b8b6c454092ae19cea82787b86ee9596ae1951 Author: Gustavo F. Padovan Date: Fri Jul 16 17:20:33 2010 -0300 Bluetooth: Move bit-field variable in USB driver to data->flags did_iso_resume keeps only a bit-field value, so moving that to a proper flags place. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 5d8868ff3d11e3fc5a5c07477f281a16c71714a3 Author: Gustavo F. Padovan Date: Fri Jul 16 16:18:39 2010 -0300 Bluetooth: Add Google's copyright to L2CAP Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 9981151086385eecc2febf4ba95a14593f834b3d Author: Suraj Sumangala Date: Wed Jul 14 13:02:19 2010 +0530 Bluetooth: Implemented HCI frame reassembly for RX from stream Implemented frame reassembly implementation for reassembling fragments received from stream. Signed-off-by: Suraj Sumangala Signed-off-by: Marcel Holtmann commit f39a3c06404d01ef2ce47e821bc778dfb1836df9 Author: Suraj Sumangala Date: Wed Jul 14 13:02:18 2010 +0530 Bluetooth: Modified hci_recv_fragment() to use hci_reassembly helper Modified packet based reassembly function hci_recv_fragment() to use hci_reassembly() Signed-off-by: Suraj Sumangala Signed-off-by: Marcel Holtmann commit 33e882a5f2301a23a85ef2994e30fd9f48d39d9b Author: Suraj Sumangala Date: Wed Jul 14 13:02:17 2010 +0530 Bluetooth: Implement hci_reassembly helper to reassemble RX packets Implements feature to reassemble received HCI frames from any input stream Signed-off-by: Suraj Sumangala Signed-off-by: Marcel Holtmann commit cd4c53919ed50b0d532f106aeb76e79077bece98 Author: Suraj Sumangala Date: Wed Jul 14 13:02:16 2010 +0530 Bluetooth: Add one more buffer for HCI stream reassembly Additional reassembly buffer to keep track of stream reasembly Signed-off-by: Suraj Sumangala Signed-off-by: Marcel Holtmann commit 0a79f67445de50ca0a8dc1d34f3cc406d89c28b2 Author: Cyril Lacoux Date: Wed Jul 14 10:29:27 2010 +0400 Bluetooth: Added support for controller shipped with iMac i5 Device class is ff(vend.) instead of e0(wlcon). Output from command `usb-devices`: T: Bus=01 Lev=03 Prnt=03 Port=00 Cnt=01 Dev#= 6 Spd=12 MxCh= 0 D: Ver= 2.00 Cls=ff(vend.) Sub=01 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=05ac ProdID=8215 Rev=01.82 S: Manufacturer=Apple Inc. S: Product=Bluetooth USB Host Controller S: SerialNumber=7C6D62936607 C: #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=0mA I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb I: If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb I: If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) I: If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=00 Driver=(none) Signed-off-by: Cyril Lacoux Signed-off-by: Marcel Holtmann commit dd135240e8e10295f7e7cdf347800df6e1841437 Author: Gustavo F. Padovan Date: Tue Jul 13 11:57:12 2010 -0300 Bluetooth: Update L2CAP version information We did some changes on the L2CAP configuration process and its behaviour is bit different now. That justifies a updated on the L2CAP version. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit ce5706bd69be6b25715ed6cd48a210b5080032bc Author: Gustavo F. Padovan Date: Tue Jul 13 11:57:11 2010 -0300 Bluetooth: Add Copyright notice to L2CAP Copyright for the time I worked on L2CAP during the Google Summer of Code program. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit be60b94030339b89c2bcff18c76882f0a4c01ce6 Author: Joe Perches Date: Mon Jul 12 13:49:57 2010 -0700 Bluetooth: Remove unnecessary casts of private_data in drivers Signed-off-by: Joe Perches Signed-off-by: Marcel Holtmann commit 63c7d09cd52fe23ad2baee26bcc10a590944cfa4 Author: Johan Hedberg Date: Mon Jul 12 11:37:04 2010 -0300 Bluetooth: Add HCIUARTSETFLAGS and HCIUARTGETFLAGS ioctls This patch introduces two new ioctls: HCIUARTSETFLAGS and HCIUARTGETFLAGS. The only flag available for now is HCI_UART_RAW_DEVICE which allows to initialize a UART device into RAW mode from userspace. This is particularly useful for experimenting with Bluetooth controllers that don't yet have proper support in BlueZ. Signed-off-by: Johan Hedberg Signed-off-by: Marcel Holtmann commit 47731de789749c9ed3c54751db28fd9c9eeaf019 Author: Gustavo F. Padovan Date: Fri Jul 9 16:38:35 2010 -0300 Bluetooth: Keep code under column 80 Purely a cosmetic change, it doesn't change the code flow. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 89746b856c88af9e5019e84615d88e002fb54dc3 Author: Gustavo F. Padovan Date: Fri Jul 9 16:38:34 2010 -0300 Bluetooth: Fix bug in kzalloc allocation size Probably a typo error. We were using the wrong struct to get size. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 2cdf096fffaa257e7449611295a38c46dc921c8b Author: Johan Hedberg Date: Fri Jul 9 16:28:36 2010 -0300 Bluetooth: Add missing HCIUARTGETDEVICE ioctl to compat_ioctl.c Signed-off-by: Johan Hedberg Signed-off-by: Marcel Holtmann commit e9aeb2ddd441f0c8699ff04c499d7213730a0f04 Author: Gustavo F. Padovan Date: Thu Jul 8 20:08:18 2010 -0300 Bluetooth: Send ConfigReq after send a ConnectionRsp The extended L2CAP features requires that one should initiate a ConfigReq after send the ConnectionRsp. This patch changes the behaviour of the configuration process of our stack. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 963cf687e825f7a59817f145a1ea19bdc224a18f Author: João Paulo Rechi Vita Date: Tue Jun 22 13:56:28 2010 -0300 Bluetooth: Fix error return on L2CAP-HCI interface. L2CAP only deals with ACL links. EINVAL should be returned otherwise. Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 7a560e5c99dc5f03e2c0dbe05ed20008af5d0bcf Author: João Paulo Rechi Vita Date: Tue Jun 22 13:56:27 2010 -0300 Bluetooth: Fix error value for wrong FCS. Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 57d3b22bf56579bb1ab2d6f5020d372c99a7afae Author: João Paulo Rechi Vita Date: Tue Jun 22 13:56:26 2010 -0300 Bluetooth: Fix error return for l2cap_connect_rsp(). Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit bc766db2ef3700ae74bdfc88d74b771b97971a24 Author: João Paulo Rechi Vita Date: Tue Jun 22 13:56:25 2010 -0300 Bluetooth: Fix error return value on sendmsg. When the socket is in a bad state EBADFD is more appropriate then EINVAL. Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit f9dd11b03c5c3cd6bdf2e503400bbc922c898974 Author: João Paulo Rechi Vita Date: Tue Jun 22 13:56:24 2010 -0300 Bluetooth: Fix error return value on sendmsg. When we try to send a message bigger than the outgoing MTU value EMSGSIZE (message too long) should be returned. Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 305682e8377b0f560d4b885c169a72e6a62331e9 Author: João Paulo Rechi Vita Date: Tue Jun 22 13:56:23 2010 -0300 Bluetooth: Make l2cap_streaming_send() void. It doesn't make sense to have a return value since we always set it to 0. Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 8b0dc6dc827fb71efd6c9dfb5c4172b7b5c96cee Author: João Paulo Rechi Vita Date: Tue Jun 22 13:56:22 2010 -0300 Bluetooth: Fix l2cap_sock_connect error return. Return a proper error value if socket is already connected. Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 712132eb541e4a76afad97898dc0ce6b6c0032d8 Author: Gustavo F. Padovan Date: Mon Jun 21 19:39:50 2010 -0300 Bluetooth: Improve ERTM local busy handling Now we also check if can push skb userspace just after receive a new skb instead of only wait the l2cap_busy_work wake up from time to time to check the local busy condition. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 218bb9dfd21472128f86b38ad2eab123205c2991 Author: Gustavo F. Padovan Date: Mon Jun 21 18:53:22 2010 -0300 Bluetooth: Add backlog queue to ERTM code backlog queue is the canonical mechanism to avoid race conditions due interrupts in bottom half context. After the socket lock is released the net core take care of push all skb in its backlog queue. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit e0f66218b3a7d0bcf37ca95186123c257fda0ba5 Author: Gustavo F. Padovan Date: Mon Jun 21 18:50:49 2010 -0300 Bluetooth: Remove the send_lock spinlock from ERTM Using a lock to deal with the ERTM race condition - interruption with new data from the hci layer - is wrong. We should use the native skb backlog queue. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 8cb8e6f1684be13b51f8429b15f39c140326b327 Author: Gustavo F. Padovan Date: Mon Jun 14 02:26:15 2010 -0300 Bluetooth: Don't accept ConfigReq if we aren't in the BT_CONFIG state If such event happens we shall reply with a Command Reject, because we are not expecting any configure request. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit cf6c2c0b9f47ee3cd12684b905725c8376d52135 Author: Gustavo F. Padovan Date: Mon Jun 7 20:54:45 2010 -0300 Bluetooth: Disconnect early if mode is not supported When mode is mandatory we shall not send connect request and report this to the userspace as well. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 2ba13ed678775195e8255b4e503c59d48b615bd8 Author: Gustavo F. Padovan Date: Wed Jun 9 16:39:05 2010 -0300 Bluetooth: Remove check for supported mode Since now we have checks for the supported mode before on l2cap_info_rsp we can remove the check for it here. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 6c2ea7a8f5fea67fa20e5825401b8fce5a78dbf6 Author: Gustavo F. Padovan Date: Tue Jun 8 20:08:49 2010 -0300 Bluetooth: Refuse ConfigRsp with different mode If our mode is Basic Mode we have to refuse any ConfigRsp that proposes a different mode. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 625477523b4e656fbcc5ec2a8ca7a1beb39b1caf Author: Gustavo F. Padovan Date: Tue Jun 8 20:05:31 2010 -0300 Bluetooth: Actively send request for Basic Mode The Profile Tuning Suite requires that we send a RFC containing the Basic Mode configuration when requesting Basic Mode. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit ae12d52efd492ee6634c34322302ac754ff8cde8 Author: Gustavo F. Padovan Date: Tue Jun 8 19:29:00 2010 -0300 Bluetooth: Prefer Basic Mode on receipt of ConfigReq If we choose to use Basic Mode then we have to refuse the received mode and propose Basic Mode again. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 742e519b0db4a470008118b48f0baea6126e2122 Author: Gustavo F. Padovan Date: Tue Jun 8 19:09:48 2010 -0300 Bluetooth: Disconnect the channel if we don't want the proposed mode If the device is a STATE 2 then it should disconnect the channel if the remote device propose a mode different from its mandatory mode. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 85eb53c6f719523dde9e0658823dffd2664d4d1c Author: Gustavo F. Padovan Date: Thu Jun 3 18:43:28 2010 -0300 Bluetooth: Change the way we set ERTM mode as mandatory If the socket type is SOCK_STREAM we set Enhanced Retransmisson Mode or Streaming Mode as mandatory. That means that we will close the channel if the other side doesn't support or request the the mandatory mode. Basic mode can't be set as mandatory. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit 64988868637304330f7df20d08b965592312c531 Author: Gustavo F. Padovan Date: Mon May 10 14:54:14 2010 -0300 Bluetooth: Tweaks to l2cap_send_i_or_rr_or_rnr() flow l2cap_send_sframe() already set the F-bit if we set L2CAP_CONN_SEND_FBIT and unset L2CAP_CONN_SEND_FBIT after send the F-bit. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit 0e98958d4f827f814444757e0376546b462dfe6f Author: Gustavo F. Padovan Date: Mon Apr 19 14:45:38 2010 -0300 Bluetooth: Add debug output to ERTM code Use the dynamic debug to output info about ERTM protocol stuff. The following script can be used to enable debug for ERTM: DEBUGFS="/sys/kernel/debug/dynamic_debug/control" echo -n 'func l2cap_send_disconn_req +p' > $DEBUGFS echo -n 'func l2cap_monitor_timeout +p' > $DEBUGFS echo -n 'func l2cap_retrans_timeout +p' > $DEBUGFS echo -n 'func l2cap_busy_work +p' > $DEBUGFS echo -n 'func l2cap_push_rx_skb +p' > $DEBUGFS echo -n 'func l2cap_data_channel_iframe +p' > $DEBUGFS echo -n 'func l2cap_data_channel_rrframe +p' > $DEBUGFS echo -n 'func l2cap_data_channel_rejframe +p' > $DEBUGFS echo -n 'func l2cap_data_channel_srejframe +p' > $DEBUGFS echo -n 'func l2cap_data_channel_rnrframe +p' > $DEBUGFS Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit 9b108fc0cf4e79c34a7d5626f5c2c4c529ef6d3f Author: Gustavo F. Padovan Date: Thu May 20 16:21:53 2010 -0300 Bluetooth: Fix ERTM error reporting to the userspace If any error occurs during transfers we have to tell userspace that something wrong happened. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit 4ea727ef9d507413f15da0de401d8a50b125649a Author: Gustavo F. Padovan Date: Thu Jun 3 16:34:20 2010 -0300 Bluetooth: Fix missing retransmission action with RR(P=1) The Bluetooth SIG Profile Tuning Suite Software uses the CSA1 spec to run the L2CAP tests. The new 3.0 spec has a missing Retransmit-I-Frames action when the Remote side is Busy. We still start the retransmission timer if Remote is Busy and unacked frames > 0. We do everything we did before this change plus the Retransmission of I-frames. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit 260000896750690b774d4343294ae5cbff1423e5 Author: Gustavo F. Padovan Date: Tue May 11 22:02:00 2010 -0300 Bluetooth: Check packet FCS earlier This way, if FCS is enabled and the packet is corrupted, we just drop it without read it len, which could be corrupted. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 45d65c46acc39945219eeb3752367ee80ed82799 Author: Gustavo F. Padovan Date: Mon Jun 7 19:21:30 2010 -0300 Bluetooth: Check the tx_window size on setsockopt We have to check if the proposed tx_window value is not greater that maximum value supported. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit 3cb123d1c03a0510d3c325bfaa971ce4df1e050d Author: Gustavo F. Padovan Date: Sat May 29 02:24:35 2010 -0300 Bluetooth: Fix handle of received P-bit ERTM spec mandates that after receive a P-bit we shall send an F-bit in response. This patch fixes this for retransmitted packets, on retransmitting we were missing to check for a pending F-bit to be sent. Also we were missing some annotation to send a F-bit. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit 2ece3684b4037ad2394de795d67abbe412ab5e2f Author: Gustavo F. Padovan Date: Wed Jun 16 17:21:44 2010 -0300 Bluetooth: Update buffer_seq before retransmit frames Updating buffer_seq first make us able to ack the last I-frame received. This is also a requirement of the Profile Tuning Suite software. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 7fe9b298c98fdfecf3b0efb4c971b7696d091ae9 Author: Gustavo F. Padovan Date: Wed May 12 18:32:04 2010 -0300 Bluetooth: Stop ack_timer if ERTM enters in Local Busy or SREJ_SENT The ack_timer is implemation specific, disabling it in such situation avoids some potencial errors in the ERTM protocol. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit f8df39f1810b02f877c1ba1eed8e0710019e3b48 Author: Julia Lawall Date: Thu May 13 22:02:03 2010 +0200 Bluetooth: Use kzalloc for drivers Use kzalloc rather than the combination of kmalloc and memset. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression x,size,flags; statement S; @@ -x = kmalloc(size,flags); +x = kzalloc(size,flags); if (x == NULL) S -memset(x, 0, size); // Signed-off-by: Julia Lawall Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 5ee283c063a236b19e4582c675a2d8d615d5809c Author: Julia Lawall Date: Sat May 15 23:19:15 2010 +0200 Bluetooth: Use kmemdup for drivers Use kmemdup when some other buffer is immediately copied into the allocated region. A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; statement S; @@ - to = \(kmalloc\|kzalloc\)(size,flag); + to = kmemdup(from,size,flag); if (to==NULL || ...) S - memcpy(to, from, size); // Signed-off-by: Julia Lawall Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit d1d10d783089cc26a14be92fc12fccda9aa6593a Author: Amitkumar Karwar Date: Thu May 27 16:38:37 2010 -0700 Bluetooth: Process interrupt in main thread of btmrvl driver as well When driver is sending a command or data and the firmware is also sending a sleep event, sometimes it is observed that driver will continue to send the command/data to firmware right after processing sleep event. Once sleep event is processed driver is not supposed to send anything because firmware is in sleep state after that. Previously interrupt processing was done in SDIO interrupt callback handler. Now it is done in btmrvl driver main thread to solve the cross-sending properly. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: Marcel Holtmann commit 2d0a03460a8a0c611843500735096ff799aa8510 Author: Ron Shaffer Date: Fri May 28 11:53:46 2010 -0400 Bluetooth: Reassigned copyright to Code Aurora Forum Qualcomm, Inc. has reassigned rights to Code Aurora Forum. Accordingly, as files are modified by Code Aurora Forum members, the copyright statement will be updated. Signed-off-by: Ron Shaffer Signed-off-by: Marcel Holtmann commit 04fafe4ed76f5547856f4c464bec5bf948afb498 Author: Ron Shaffer Date: Fri May 28 11:53:45 2010 -0400 Bluetooth: Remove extraneous white space Deleted extraneous white space from the end of several lines Signed-off-by: Ron Shaffer Signed-off-by: Marcel Holtmann commit 7452d24cfb91e84f9be61beda5ad68d2a56d0938 Author: Justin P. Mattock Date: Mon Jun 14 18:26:40 2010 -0700 Bluetooth: Fix warning: variable 'tty' set but not used The patch below fixes a warning message when using gcc 4.6.0. CC [M] drivers/bluetooth/hci_ldisc.o drivers/bluetooth/hci_ldisc.c: In function 'hci_uart_send_frame': drivers/bluetooth/hci_ldisc.c:213:21: warning: variable 'tty' set but not used Signed-off-by: Justin P. Mattock Reviewed-By: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 278be27fc401119c985235ee549dc229d85e6bf5 Author: Kulikov Vasiliy Date: Mon Jul 5 12:01:22 2010 +0400 Bluetooth: Silence warning in btmrvl SDIO driver Clone checking of ret to simplify the code. This patch silences a compiler warning: drivers/bluetooth/btmrvl_sdio.c: In function ‘btmrvl_sdio_verify_fw_download’: drivers/bluetooth/btmrvl_sdio.c:80: warning: ‘fws1’ may be used uninitialized in this function drivers/bluetooth/btmrvl_sdio.c:80: note: ‘fws1’ was declared here Signed-off-by: Kulikov Vasiliy Reviewed-by: Dan Carpenter Signed-off-by: Marcel Holtmann commit 32c2ece5eaec296482077dadc3edd5baa7bd1097 Author: Johan Hedberg Date: Tue May 18 13:54:49 2010 +0200 Bluetooth: Add debugfs support for showing the blacklist This patch adds a debugfs blacklist entry for each HCI device which can be used to list the current content of the blacklist. Signed-off-by: Johan Hedberg Signed-off-by: Marcel Holtmann commit f03585689fdff4ae256edd45a35bc2dd83d3684a Author: Johan Hedberg Date: Tue May 18 13:20:32 2010 +0200 Bluetooth: Add blacklist support for incoming connections In some circumstances it could be desirable to reject incoming connections on the baseband level. This patch adds this feature through two new ioctl's: HCIBLOCKADDR and HCIUNBLOCKADDR. Both take a simple Bluetooth address as a parameter. BDADDR_ANY can be used with HCIUNBLOCKADDR to remove all devices from the blacklist. Signed-off-by: Johan Hedberg Signed-off-by: Marcel Holtmann commit 95ffa97827371ede501615d9bd048eb5b49e8fe1 Author: Gustavo F. Padovan Date: Fri Jun 18 20:37:33 2010 -0300 Bluetooth: Fix L2CAP control bit field corruption When resending an I-frame, ERTM was reusing the control bits from the last time it was sent, that was causing a corruption in the new control field due to it dirty fields. This patches extracts only the SAR bits from the old field and reuse it to resend the packet, the others bits should be reset and receive the updated value. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit c13ffa620f15cb28d18268a773464cf51550fa9f Author: Gustavo F. Padovan Date: Thu May 13 20:50:12 2010 -0300 Bluetooth: Proper shutdown ERTM when closing the channel Fix a crash regarding the Monitor Timeout, it was running even after the shutdown of the ACL connection, which doesn't make sense. The same code also fixes another issue, before this patch L2CAP was sending many Disconnections Requests while we have to send only one. The issues are related to each other, a expired Monitor Timeout can trigger a Disconnection Request and then we may have a crash if the link was already deleted. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 51893f88dd916efead5e24a212c907b2cd35e160 Author: Nathan Holstein Date: Wed Jun 9 15:46:25 2010 -0400 Bluetooth: Fix bug with ERTM minimum packet length ERTM and streaming mode L2CAP sockets have no minimum packet length. Only basic mode connections have minimum length. Instead, validate the packet containing all necessary control, FCS, and SAR fields. The patch fixes the drop of valid packets with length lower than 4. Signed-off-by: Nathan Holstein Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit bfbacc11550a785caf082f3ccfcd7ecf882e09a4 Author: João Paulo Rechi Vita Date: Mon May 31 18:35:44 2010 -0300 Bluetooth: Fix SREJ_QUEUE corruption in L2CAP Since all TxSeq values are modulo, we shall not compare them directly. We have to compare their offset inside the TxWindow instead. Signed-off-by: João Paulo Rechi Vita Acked-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 6e2b6722abaa3f6042357e11f465488b7c12f94c Author: Gustavo F. Padovan Date: Tue Jun 1 18:52:58 2010 -0300 Bluetooth: Fix bug in l2cap_ertm_send() behavior This patch makes l2cap_ertm_send() similar to the Send-Data action of the ERTM spec. We shall not check for RemoteBusy or WAIT_F state inside l2cap_ertm_send(). Such checks were causing a bug in the retransmission logic of ERTM and making ERTM stalls until the ACL is dropped. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit bc1b1f8bee63966649dd5ac7d10d31a6556bf19b Author: Gustavo F. Padovan Date: Tue May 11 22:14:00 2010 -0300 Bluetooth: Only check SAR bits if frame is an I-frame The SAR bits doesn't make sense for an S-frame. It doesn't use SAR. Checking SAR for a S-frames can lead to L2CAP errors, it could close the channel with an invalid packet length, since we was removing the 2 of the of any frame that match SAR start bits, without check if it is an I-frame. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 8ff50ec04a7ecdbba6e0a5423cf6f2c5f7fc605e Author: Gustavo F. Padovan Date: Mon May 10 19:34:11 2010 -0300 Bluetooth: Fix bug with ERTM vars increment All ERTM operations regarding the txWindow should be modulo 64, otherwise we confuse the ERTM logic and connections will break. Signed-off-by: Gustavo F. Padovan Reviewed-by: João Paulo Rechi Vita Signed-off-by: Marcel Holtmann commit f6337c771126420c348b702e012262cfb5f0d56e Author: Gustavo F. Padovan Date: Mon May 10 18:32:04 2010 -0300 Bluetooth: Fix drop of packets with invalid req_seq/tx_seq We shall not use an unsigned var since we are expecting negatives value there. Using unsigned causes ERTM connection to close due to invalid ReqSeq numbers. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 0b31c85ce78d3646ac1e90d62969e7cd8cfd8b15 Author: Gustavo F. Padovan Date: Mon May 10 14:26:11 2010 -0300 Bluetooth: Remove L2CAP Extended Features from Kconfig This reverts commit 84fb0a6334af0ccad3544f6972c055d90fbb9fbe which adds the L2CAP Extended Features to the Kconfig, that is actually not needed. One can use other mechanisms to enable L2CAP Extended Features. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit fd059b9bd0af2e217f29d5a34e1c71039d26af8c Author: Gustavo F. Padovan Date: Mon May 10 14:22:56 2010 -0300 Bluetooth: Remove max_tx and tx_window module paramenters from L2CAP We don't need these parameters anymore since we have socket options for them. Signed-off-by: Gustavo F. Padovan Signed-off-by: Marcel Holtmann commit 9849ed4d72251d273524efb8b70be0be9aecb1df Author: Mike Frysinger Date: Tue Jul 20 03:13:35 2010 -0400 tracing/documentation: Document dynamic ftracer internals Add more details to the dynamic function tracing design implementation. Signed-off-by: Mike Frysinger LKML-Reference: <1279610015-10250-1-git-send-email-vapier@gentoo.org> Signed-off-by: Steven Rostedt commit ef710e100c1068d3dd5774d2b34c5485219e06ce Author: KOSAKI Motohiro Date: Thu Jul 1 14:34:35 2010 +0900 tracing: Shrink max latency ringbuffer if unnecessary Documentation/trace/ftrace.txt says buffer_size_kb: This sets or displays the number of kilobytes each CPU buffer can hold. The tracer buffers are the same size for each CPU. The displayed number is the size of the CPU buffer and not total size of all buffers. The trace buffers are allocated in pages (blocks of memory that the kernel uses for allocation, usually 4 KB in size). If the last page allocated has room for more bytes than requested, the rest of the page will be used, making the actual allocation bigger than requested. ( Note, the size may not be a multiple of the page size due to buffer management overhead. ) This can only be updated when the current_tracer is set to "nop". But it's incorrect. currently total memory consumption is 'buffer_size_kb x CPUs x 2'. Why two times difference is there? because ftrace implicitly allocate the buffer for max latency too. That makes sad result when admin want to use large buffer. (If admin want full logging and makes detail analysis). example, If admin have 24 CPUs machine and write 200MB to buffer_size_kb, the system consume ~10GB memory (200MB x 24 x 2). umm.. 5GB memory waste is usually unacceptable. Fortunatelly, almost all users don't use max latency feature. The max latency buffer can be disabled easily. This patch shrink buffer size of the max latency buffer if unnecessary. Signed-off-by: KOSAKI Motohiro LKML-Reference: <20100701104554.DA2D.A69D9226@jp.fujitsu.com> Signed-off-by: Steven Rostedt commit fb5ffb0e160c93c3fe08ab83845eb9a2768af812 Author: Jiaying Zhang Date: Tue Jul 20 16:54:43 2010 +0200 quota: Change quota error message to print out disk and function name The current quota error message doesn't always print the disk name, so it is hard to identify the "bad" disk when quota error happens. This patch changes the standardized quota error message to print out disk name and function name. It also uses a combination of cpp macro and inline function to provide better type checking and to lower the text size of the message. [Jan Kara: Export __quota_error] Signed-off-by: Jiaying Zhang Signed-off-by: Jan Kara commit 01971952582068c4eaaef7410f32d16daa178a0d Author: Jan Kara Date: Mon Jul 19 14:57:11 2010 +0200 MAINTAINERS: Update entries of ext2 and ext3 I often handle ext2 and ext3 patches these days so add myself to MAINTAINERS. CC: Andrew Morton CC: Andreas Dilger CC: linux-ext4@vger.kernel.org Signed-off-by: Jan Kara commit 3c373a5f9395464e2cd27f6d0d3916edee67ec68 Author: Andreas Dilger Date: Mon Jul 19 14:55:38 2010 +0200 MAINTAINERS: Update address of Andreas Dilger Signed-off-by: Andreas Dilger Signed-off-by: Jan Kara commit f25f624263445785b94f39739a6339ba9ed3275d Author: Jan Kara Date: Mon Jul 12 21:04:31 2010 +0200 ext3: Avoid filesystem corruption after a crash under heavy delete load It can happen that ext3_free_branches calls ext3_forget() for an indirect block in an earlier transaction than a transaction in which we clear pointer to this indirect block. Thus if we crash before a transaction clearing the block pointer is committed, we will see indirect block pointing to already freed blocks and complain during orphan list cleanup. The fix is simple: Make sure ext3_forget() is called in the transaction doing block pointer clearing. This is a backport of an ext4 fix by Amir G. Signed-off-by: Jan Kara commit 4c4d3901225518ed1a4c938ba15ba09842a00770 Author: Christoph Hellwig Date: Mon Jun 7 10:20:39 2010 +0200 ext3: remove vestiges of nobh support The nobh option was only supported for writeback mode, but given that all write paths (except mmapped writed) actually create buffer heads, it effectively was a no-op already. Signed-off-by: Christoph Hellwig Signed-off-by: Jan Kara commit 0411ba7902e09111d6f2041b4697a597d2cf7736 Author: Andi Kleen Date: Thu Jun 10 13:10:53 2010 +0200 ext3: Fix set but unused variables [tytso@mit.edu: Fix compilation with CONFIG_JBD_DEBUG enabled] Acked-by: tytso@mit.edu cc: linux-ext4@vger.kernel.org Signed-off-by: Andi Kleen Signed-off-by: Jan Kara commit 189eef59e70e3e56edf726864629f310d114eefb Author: Christoph Hellwig Date: Fri Jun 4 10:56:29 2010 +0200 quota: clean up quota active checks The various quota operations check for any quota beeing active on a superblock, and the inode not having the noquota flag. Merge these two checks into a dquot_active check and move that into dquot.c as that's the only place where it's needed. Signed-off-by: Christoph Hellwig Signed-off-by: Jan Kara commit ade7ce31c22e961dfbe1a6d57fd362c90c187cbd Author: Christoph Hellwig Date: Fri Jun 4 10:56:01 2010 +0200 quota: Clean up the namespace in dqblk_xfs.h Almost all identifiers use the FS_* namespace, so rename the missing few XFS_* ones to FS_* as well. Without this some people might get upset about having too many XFS names in generic code. Acked-by: Steven Whitehouse Signed-off-by: Christoph Hellwig Signed-off-by: Jan Kara commit 7af9cce8ae467bb2fcf3b0b6be3898835bdb984c Author: Dmitry Monakhov Date: Tue Jun 1 11:39:48 2010 +0400 quota: check quota reservation on remove_dquot_ref Reserved space must being claimed before remove_dquot_ref() for a given inode. Filesystem is responsible for performing force blocks allocation in case of dealloc in ->quota_off. Let's add sanity check for that case. Do it similar to add_dquot_ref(). Signed-off-by: Dmitry Monakhov Signed-off-by: Jan Kara commit ff388f270d926d95d70e5b3d373c9cb97b38c8b1 Author: Christian Dietrich Date: Wed Jul 21 14:35:17 2010 +0200 sound/oss: Remove dead CONFIG_SOFTOSS* CONFIG_SOFTOSS* doesn't exist in Kconfig or somewhere else, therefore removing all references for it from the source code. Signed-off-by: Christian Dietrich Signed-off-by: Takashi Iwai commit 49e704279953b652ec6adc7f5dec412ad118a938 Merge: d1ce6b2 01ea6ba Author: Takashi Iwai Date: Wed Jul 21 15:01:07 2010 +0200 Merge branch 'for-2.6.36' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc commit 01ea6ba2bce64112623dbf8c45ce487062b65446 Author: Peter Ujfalusi Date: Tue Jul 20 15:49:09 2010 +0300 ASoC: TWL4030: Add configurable delay after digimic enable When digital microphones are connected to twl, delay is needed after enabling the digimic interface of the codec. Add new parameter for the setup data, which can be used to pass the apropriate delay in ms after the digimic interface has been enabled. Without certain delay (in certain HW configuration) the beggining of the recorded sample contains a glitch, which is generated by the digital microphones. Delaying the micbias1, 2 (which is the bias for the digimic0 or 1) does not help, since the glitch is coming after switching the digimic interface. Reversing the micbias and digimic enable order does not work either (in that case the wait need to be added after the micbias enabled). Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit f4d01439515acd5d9a09de1d1e02ca40403dda49 Author: Takuya Yoshikawa Date: Wed Jul 21 16:05:53 2010 +0900 Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -> Fault The last 't' of 'fault' is missing in the description of FAIL_IO_TIMEOUT. Signed-off-by: Takuya Yoshikawa Signed-off-by: Jiri Kosina commit 14764b01a5576ce23a9d0c95a027049206a19cef Merge: fc4978b 5ccd430 Author: Russell King Date: Wed Jul 21 09:22:45 2010 +0100 Merge git://git.kernel.org/pub/scm/linux/kernel/git/nico/orion into devel-stable commit 0fffed27f92d9d7a34de9fe017b7082b5958bb93 Author: Joonyoung Shim Date: Wed Jul 21 00:45:10 2010 -0700 Input: samsung-keypad - Add samsung keypad driver This patch adds support for keypad driver running on Samsung cpus. This driver is tested on GONI and Aquila board using S5PC110 cpu. [ch.naveen@samsung.com: tested on SMDK6410, SMDKC100, and SMDKV210] Signed-off-by: Joonyoung Shim Signed-off-by: Kyungmin Park Tested-by: Naveen Krishna Ch Acked-by: Kukjin Kim Signed-off-by: Dmitry Torokhov commit 7765b8bbee863c8e388f6a2126280fa5edbfcdf2 Author: David S. Miller Date: Tue Jul 20 23:37:12 2010 -0700 MAINTAINERS: Add trailing slash to SBUS path. Noticed by Joe Perches. Signed-off-by: David S. Miller commit a3108ca2323dec0f6321c3f7706cdaed51f694ea Author: Arnd Bergmann Date: Tue Jul 20 23:36:39 2010 -0700 sbus: autoconvert trivial BKL users to private mutex All these files use the big kernel lock in a trivial way to serialize their private file operations, typically resulting from an earlier semi-automatic pushdown from VFS. None of these drivers appears to want to lock against other code, and they all use the BKL as the top-level lock in their file operations, meaning that there is no lock-order inversion problem. Consequently, we can remove the BKL completely, replacing it with a per-file mutex in every case. Using a scripted approach means we can avoid typos. file=$1 name=$2 if grep -q lock_kernel ${file} ; then if grep -q 'include.*linux.mutex.h' ${file} ; then sed -i '/include.*/d' ${file} else sed -i 's/include.*.*$/include /g' ${file} fi sed -i ${file} \ -e "/^#include.*linux.mutex.h/,$ { 1,/^\(static\|int\|long\)/ { /^\(static\|int\|long\)/istatic DEFINE_MUTEX(${name}_mutex); } }" \ -e "s/\(un\)*lock_kernel\>[ ]*()/mutex_\1lock(\&${name}_mutex)/g" \ -e '/[ ]*cycle_kernel_lock();/d' else sed -i -e '/include.*\/d' ${file} \ -e '/cycle_kernel_lock()/d' fi Signed-off-by: Arnd Bergmann Signed-off-by: David S. Miller commit 1ca56e513a9fd356d5a9e0de45dbe0e189e00386 Author: Dmitry Torokhov Date: Tue Jul 20 20:25:34 2010 -0700 Input: i8042 - reset keyboard controller wehen resuming from S2R Some laptops, such as Lenovo 3000 N100, require keyboard controller reset in order to have touchpad operable after suspend to RAM. Even if box does not need the reset it should be safe to do so, so instead of chasing after misbehaving boxes and grow DMI tables, let's reset the controller unconditionally. Reported-and-tested-by: Jerome Lacoste Signed-off-by: Dmitry Torokhov commit bc289ae98b75d93228d24f521ef02a076e506e94 Author: Lai Jiangshan Date: Thu Jun 3 18:26:24 2010 +0800 tracing: Reduce latency and remove percpu trace_seq __print_flags() and __print_symbolic() use percpu trace_seq: 1) Its memory is allocated at compile time, it wastes memory if we don't use tracing. 2) It is percpu data and it wastes more memory for multi-cpus system. 3) It disables preemption when it executes its core routine "trace_seq_printf(s, "%s: ", #call);" and introduces latency. So we move this trace_seq to struct trace_iterator. Signed-off-by: Lai Jiangshan LKML-Reference: <4C078350.7090106@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit 985023dee6e212493831431ba2e3ce8918f001b2 Author: Richard Kennedy Date: Thu Mar 25 11:27:36 2010 +0000 trace: Reorder struct ring_buffer_per_cpu to remove padding on 64bit Reorder structure to remove 8 bytes of padding on 64 bit builds. This shrinks the size to 128 bytes so allowing allocation from a smaller slab & needed one fewer cache lines. Signed-off-by: Richard Kennedy LKML-Reference: <1269516456.2054.8.camel@localhost> Signed-off-by: Steven Rostedt commit e870e9a1240bcef1157ffaaf71dac63362e71904 Author: Li Zefan Date: Fri Jul 2 11:07:32 2010 +0800 tracing: Allow to disable cmdline recording We found that even enabling a single trace event that will rarely be triggered can add big overhead to context switch. (lmbench context switch test) ------------------------------------------------- 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ------ ------ ------ ------ ------ ------- ------- 2.19 2.3 2.21 2.56 2.13 2.54 2.07 2.39 2.51 2.35 2.75 2.27 2.81 2.24 The overhead is 6% ~ 11%. It's because when a trace event is enabled 3 tracepoints (sched_switch, sched_wakeup, sched_wakeup_new) will be activated to map pid to cmdname. We'd like to avoid this overhead, so add a trace option '(no)record-cmd' to allow to disable cmdline recording. Signed-off-by: Li Zefan LKML-Reference: <4C2D57F4.2050204@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit 37f9003bd355d9109769fff66f7f228aab42155b Author: Alex Deucher Date: Fri Jun 11 17:58:38 2010 -0400 drm/radeon/kms/atom: add crtc disable function Disables the crts as per dpms and also disables the ppll associated with the crtc. This should save additional power. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 90c1efdd121c84ee73e9960667229a662f2315a3 Author: Chris Wilson Date: Sat Jul 17 20:23:26 2010 +0100 drm: Return EBUSY if the framebuffer is unbound when flipping. It looks like there is a race condition between unbinding a framebuffer on a hotplug event and user space trying to flip: BUG: unable to handle kernel NULL pointer dereference at 0000000000000058 IP: [] intel_crtc_page_flip+0xc9/0x39c [i915] PGD 114724067 PUD 1145bd067 PMD 0 Oops: 0000 [#1] SMP Pid: 10954, comm: X Not tainted 2.6.35-rc5_stable_20100714+ #1 P5Q-EM/P5Q-EM RIP: 0010:[] [] intel_crtc_page_flip+0xc9/0x39c [i915] RSP: 0018:ffff880114927cc8 EFLAGS: 00010282 RAX: 0000000000000000 RBX: ffff88012df48320 RCX: ffff88010c945600 RDX: ffff880001a109c8 RSI: ffff88010c945840 RDI: ffff88012df48320 RBP: ffff880114927d18 R08: ffff88012df48280 R09: ffff88012df48320 R10: 0000000003c2e0b0 R11: 0000000000003246 R12: ffff88010c945840 R13: ffff88012df48000 R14: 0000000000000060 R15: ffff88012dbb8000 FS: 00007f9e6078e830(0000) GS:ffff880001a00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000058 CR3: 00000001177a8000 CR4: 00000000000406f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process X (pid: 10954, threadinfo ffff880114926000, task ffff88012a4a1690) Stack: ffff88010c945600 ffff880115b176c0 ffff88012db10000 0000000000000246 <0> fffffff40006101c ffff88010c945600 00000000ffffffea ffff88010c945600 <0> ffff88012df48320 ffff88011b4b6780 ffff880114927d78 ffffffffa003bd0e Call Trace: [] drm_mode_page_flip_ioctl+0x1bc/0x214 [drm] [] drm_ioctl+0x25e/0x35e [drm] [] ? drm_mode_page_flip_ioctl+0x0/0x214 [drm] [] vfs_ioctl+0x2a/0x9e [] do_vfs_ioctl+0x531/0x565 [] sys_ioctl+0x55/0x77 [] ? sys_read+0x47/0x6f [] system_call_fastpath+0x16/0x1b Code: 45 d4 f4 ff ff ff 0f 84 e0 02 00 00 48 8b 4d b0 49 8d 9d 20 03 00 00 48 89 df 49 89 4c 24 38 49 8b 07 49 89 44 24 20 49 8b 47 20 <48> 8b 40 58 49 c7 04 24 00 00 00 00 49 c7 44 24 18 a9 a5 08 a0 RIP [] intel_crtc_page_flip+0xc9/0x39c [i915] RSP CR2: 0000000000000058 References: Bug 28811 - [page-flipping] GPU hang when modeset after unplugging another monitor (under compiz) https://bugs.freedesktop.org/show_bug.cgi?id=28811 Signed-off-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Dave Airlie commit 11fe883936980fe242869d671092a466cf1db3e3 Merge: 70d4bf6 573201f Author: David S. Miller Date: Tue Jul 20 18:25:24 2010 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/vhost/net.c net/bridge/br_device.c Fix merge conflict in drivers/vhost/net.c with guidance from Stephen Rothwell. Revert the effects of net-2.6 commit 573201f36fd9c7c6d5218cdcd9948cee700b277d since net-next-2.6 has fixes that make bridge netpoll work properly thus we don't need it disabled. Signed-off-by: David S. Miller commit 92897b5c669f5e819ff2596fe6228ca2e4904981 Author: Ben Skeggs Date: Fri Jul 16 15:09:17 2010 +1000 drm: add "auto" dithering method There's no convenient/reliable way for drivers to both obey the dithering mode property, and to be able to attempt to provide a good default in all cases. This commit adds an "auto" method to the property which drivers can default to if they wish, whilst still allowing the user to override the choice as they do now. Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit b4bcb4c28c64cc2876b4aef218d992ce806194da Author: Michel Lespinasse Date: Tue Jul 20 15:19:45 2010 -0700 x86, rwsem: Minor cleanups Clarified few comments and made initialization of %edx/%rdx more uniform accross __down_write_nested, __up_read and __up_write functions. Signed-off-by: Michel Lespinasse LKML-Reference: <201007202219.o6KMJkiA021048@imap1.linux-foundation.org> Acked-by: David Howells Cc: Mike Waychison Cc: Suleiman Souhlal Cc: Ying Han Signed-off-by: Andrew Morton Signed-off-by: H. Peter Anvin commit a751bd858b16dce57f3b6b85ba07946df1bd7be4 Author: Michel Lespinasse Date: Tue Jul 20 15:19:45 2010 -0700 x86, rwsem: Stay on fast path when count > 0 in __up_write() When count > 0 there is no need to take the call_rwsem_wake path. If we did take that path, it would just return without doing anything due to the active count not being zero. Signed-off-by: Michel Lespinasse LKML-Reference: <201007202219.o6KMJj9x021042@imap1.linux-foundation.org> Acked-by: David Howells Cc: Mike Waychison Cc: Suleiman Souhlal Cc: Ying Han Signed-off-by: Andrew Morton Signed-off-by: H. Peter Anvin commit 468c30f2bbdf1ba0fbf16667eade23a46eaa8f06 Author: Florian Zumbiehl Date: Tue Jul 20 15:19:47 2010 -0700 x86, iomap: Fix wrong page aligned size calculation in ioremapping code x86 early_iounmap(): fix off-by-one error in page alignment of allocation size for sizes where size%PAGE_SIZE==1. Signed-off-by: Florian Zumbiehl LKML-Reference: <201007202219.o6KMJlES021058@imap1.linux-foundation.org> Signed-off-by: Andrew Morton Signed-off-by: H. Peter Anvin commit 92851e2fca48f1893f899963c13b55b61ac6956c Author: Andres Salomon Date: Tue Jul 20 15:19:46 2010 -0700 x86, mm: Create symbolic index into address_markers array Without this, adding entries into the address_markers array means adding more and more of an #ifdef maze in pt_dump_init(). By using indices, we can keep it a bit saner. Signed-off-by: Andres Salomon LKML-Reference: <201007202219.o6KMJkUs021052@imap1.linux-foundation.org> Cc: Jordan Crouse Signed-off-by: Andrew Morton Signed-off-by: H. Peter Anvin commit 82d4150cec83b9775f84810b39a1c0b91585d429 Author: Robert Richter Date: Tue Jul 20 20:50:51 2010 +0200 x86, xsave: Move boot cpu initialization to xsave_init() This patch moves boot cpu initialization to xsave_init(). Now all cpus are initialized in one single function. Signed-off-by: Robert Richter LKML-Reference: <1279651857-24639-5-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit db10db48b2c530def21bfd76d576702c7df7f620 Author: Robert Richter Date: Tue Jul 20 20:50:49 2010 +0200 x86, xsave: 32/64 bit boot cpu check unification in initialization Boot cpu id is always 0, thus simplifying and unifying boot cpu check. boot_cpu_id is there for historical reasons and was renamed to boot_cpu_physical_apicid in patch: c70dcb7 x86: change boot_cpu_id to boot_cpu_physical_apicid However, there are some remaining occurrences of boot_cpu_id that are never touched in the kernel and thus its value is always 0. Signed-off-by: Robert Richter LKML-Reference: <1279651857-24639-3-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 7aa2b5f8ec60505160df1c25398e8286c8432689 Author: Robert Richter Date: Tue Jul 20 20:50:48 2010 +0200 x86, xsave: Do not include asm/i387.h in asm/xsave.h There are no dependencies to asm/i387.h. Instead, if including only xsave.h the following error occurs: .../arch/x86/include/asm/i387.h:110: error: ‘XSTATE_FP’ undeclared (first use in this function) .../arch/x86/include/asm/i387.h:110: error: (Each undeclared identifier is reported only once .../arch/x86/include/asm/i387.h:110: error: for each function it appears in.) This patch fixes this. Signed-off-by: Robert Richter LKML-Reference: <1279651857-24639-2-git-send-email-robert.richter@amd.com> Acked-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit fa10ba64ac94fec4611b79804023eb087862ffe0 Author: Andi Kleen Date: Tue Jul 20 15:19:49 2010 -0700 x86, gcc-4.6: Fix set but not read variables Just some dead code, no real bugs. Found by gcc 4.6 -Wall Signed-off-by: Andi Kleen LKML-Reference: <201007202219.o6KMJnQ0021072@imap1.linux-foundation.org> Signed-off-by: Andrew Morton Signed-off-by: H. Peter Anvin commit 5f755293ca61520b70b11afe1b1d6e1635cb6c00 Author: Andi Kleen Date: Tue Jul 20 15:19:48 2010 -0700 x86, gcc-4.6: Avoid unused by set variables in rdmsr Avoids quite a lot of warnings with a gcc 4.6 -Wall build because this happens in a commonly used header file (apic.h) Signed-off-by: Andi Kleen LKML-Reference: <201007202219.o6KMJme6021066@imap1.linux-foundation.org> Signed-off-by: Andrew Morton Signed-off-by: H. Peter Anvin commit 8b74964c73ca9eed7078388d871cc7fae973cb63 Author: John W. Linville Date: Mon Jul 19 16:35:20 2010 -0400 rtl8180: improve signal reporting for rtl8185 hardware The existing code seemed to be somewhat based on the datasheet, but varied substantially from the vendor-provided driver. This mirrors the handling of the rtl8185 case from that driver, but still neglects the specifics for the rtl8180 hardware. Those details are a bit muddled... Signed-off-by: John W. Linville commit b603742f49c3ec922522602e18ac22e8f6835132 Author: John W. Linville Date: Tue Jul 20 13:55:00 2010 -0400 mwl8k: correct/silence sparse warnings drivers/net/wireless/mwl8k.c:1541:21: warning: incorrect type in assignment (different base types) drivers/net/wireless/mwl8k.c:1541:21: expected restricted __le16 [usertype] result drivers/net/wireless/mwl8k.c:1541:21: got int drivers/net/wireless/mwl8k.c:1575:42: expected unsigned short [unsigned] [usertype] cmd drivers/net/wireless/mwl8k.c:1575:42: got restricted __le16 [usertype] code drivers/net/wireless/mwl8k.c:1587:50: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1587:50: expected unsigned short [unsigned] [usertype] cmd drivers/net/wireless/mwl8k.c:1587:50: got restricted __le16 [usertype] code drivers/net/wireless/mwl8k.c:1592:50: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1592:50: expected unsigned short [unsigned] [usertype] cmd drivers/net/wireless/mwl8k.c:1592:50: got restricted __le16 [usertype] code drivers/net/wireless/mwl8k.c:1845:27: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1845:27: expected unsigned int [unsigned] [usertype] drivers/net/wireless/mwl8k.c:1845:27: got restricted __le32 [usertype] drivers/net/wireless/mwl8k.c:1848:27: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1848:27: expected unsigned int [unsigned] [usertype] drivers/net/wireless/mwl8k.c:1848:27: got restricted __le32 [usertype] drivers/net/wireless/mwl8k.c:1851:27: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1851:27: expected unsigned int [unsigned] [usertype] drivers/net/wireless/mwl8k.c:1851:27: got restricted __le32 [usertype] drivers/net/wireless/mwl8k.c:1854:27: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1854:27: expected unsigned int [unsigned] [usertype] drivers/net/wireless/mwl8k.c:1854:27: got restricted __le32 [usertype] drivers/net/wireless/mwl8k.c:1857:27: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1857:27: expected unsigned int [unsigned] [usertype] drivers/net/wireless/mwl8k.c:1857:27: got restricted __le32 [usertype] drivers/net/wireless/mwl8k.c:1860:27: warning: incorrect type in argument 1 (different base types) drivers/net/wireless/mwl8k.c:1860:27: expected unsigned int [unsigned] [usertype] drivers/net/wireless/mwl8k.c:1860:27: got restricted __le32 [usertype] drivers/net/wireless/mwl8k.c:3055:20: warning: incorrect type in assignment (different base types) drivers/net/wireless/mwl8k.c:3055:20: expected restricted __le16 [usertype] ht_caps drivers/net/wireless/mwl8k.c:3055:20: got unsigned short [unsigned] [usertype] cap At least the last one looks like a real bug... Signed-off-by: John W. Linville Acked-by: Lennert Buytenhek commit 34782e9e1e58810183f2c1201124e45314b37130 Author: John W. Linville Date: Tue Jul 20 15:12:04 2010 -0400 wireless: remove unnecessary reg_same_country_ie_hint "Might as well remove reg_same_country_ie_hint() completely since we already dealt with suspend/resume through the regulatory hint disconnect." -- Luis Reported-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 16124541321e3c4030973b34b3f013605f052679 Author: John W. Linville Date: Tue Jul 20 14:21:48 2010 -0400 rt2x00: correct sparse warning in rt2x00debug.c CHECK drivers/net/wireless/rt2x00/rt2x00debug.c drivers/net/wireless/rt2x00/rt2x00debug.c:193:28: warning: incorrect type in assignment (different base types) drivers/net/wireless/rt2x00/rt2x00debug.c:193:28: expected restricted __le32 [usertype] chip_rev drivers/net/wireless/rt2x00/rt2x00debug.c:193:28: got restricted __le16 [usertype] Signed-off-by: John W. Linville Acked-by: Ivo van Doorn commit cc40cc56f4e271c51ba5b7cf9d7ae5f955dc7e2d Author: John W. Linville Date: Tue Jul 20 14:14:03 2010 -0400 libipw: correct sparse warnings and mark some variables static CHECK drivers/net/wireless/ipw2x00/libipw_module.c drivers/net/wireless/ipw2x00/libipw_module.c:65:21: warning: symbol 'libipw_config_ops' was not declared. Should it be static? drivers/net/wireless/ipw2x00/libipw_module.c:66:6: warning: symbol 'libipw_wiphy_privid' was not declared. Should it be static? CHECK drivers/net/wireless/ipw2x00/libipw_wx.c drivers/net/wireless/ipw2x00/libipw_wx.c:415:17: warning: symbol 'ssid' shadows an earlier one drivers/net/wireless/ipw2x00/libipw_wx.c:324:9: originally declared here Signed-off-by: John W. Linville commit d267be307a3345ef06889511cad2aa1fecc83db7 Author: John W. Linville Date: Tue Jul 20 14:11:51 2010 -0400 ipw2100: mark ipw2100_pm_qos_req static CHECK drivers/net/wireless/ipw2x00/ipw2100.c drivers/net/wireless/ipw2x00/ipw2100.c:177:28: warning: symbol 'ipw2100_pm_qos_req' was not declared. Should it be static? Signed-off-by: John W. Linville commit a3d3da14fb0c8dcfac374543fd7fedda05e9d4fd Author: John W. Linville Date: Tue Jul 20 13:15:31 2010 -0400 ath9k: correct sparse identified endian bug in ath_paprd_calibrate drivers/net/wireless/ath/ath9k/main.c:282:26: warning: incorrect type in assignment (different base types) drivers/net/wireless/ath/ath9k/main.c:282:26: expected restricted __le16 [usertype] duration_id drivers/net/wireless/ath/ath9k/main.c:282:26: got int Signed-off-by: John W. Linville commit 20925feee9e46c07ffe315b88c5cee61064a3ede Author: John W. Linville Date: Tue Jul 20 12:32:52 2010 -0400 wireless: mark cfg80211_is_all_idle as static CHECK net/wireless/sme.c net/wireless/sme.c:38:6: warning: symbol 'cfg80211_is_all_idle' was not declared. Should it be static? It is not used elsewhere, so mark it static. Signed-off-by: John W. Linville commit 2ea6fb6d1eb4d06af5ad2114d1f1f22a6067adac Author: John W. Linville Date: Tue Jul 20 12:29:14 2010 -0400 wireless: correct sparse warning in generated regdb.c CHECK net/wireless/regdb.c net/wireless/regdb.c:8:34: warning: symbol 'reg_regdb' was not declared. Should it be static? net/wireless/regdb.c:11:5: warning: symbol 'reg_regdb_size' was not declared. Should it be static? Simply include the also generated regdb.h. Signed-off-by: John W. Linville commit c28991a02caec1f3bfe4638ccf4e494c3e9418a3 Author: John W. Linville Date: Tue Jul 20 12:22:40 2010 -0400 wireless: correct sparse warning in wext-compat.c CHECK net/wireless/wext-compat.c net/wireless/wext-compat.c:1434:5: warning: symbol 'cfg80211_wext_siwpmksa' was not declared. Should it be static? Add declaration in cfg80211.h. Also add an EXPORT_SYMBOL_GPL, since all the peer functions have it. Signed-off-by: John W. Linville commit 3f6ff6bacdec217c98a60910c4804d11ce859820 Author: John W. Linville Date: Tue Jul 20 12:09:11 2010 -0400 wireless: correct sparse warning in lib80211_crypt_tkip.c CHECK net/wireless/lib80211_crypt_tkip.c net/wireless/lib80211_crypt_tkip.c:581:27: warning: cast to restricted __le16 Caused by dereferencing a "u8 *" and passing it to le16_to_cpu... Signed-off-by: John W. Linville commit 4f366c5dabcb936dd5754a35188bd699181fe1ce Author: John W. Linville Date: Thu Jul 15 14:57:33 2010 -0400 wireless: only use alpha2 regulatory information from country IE The meaning and/or usage of the country IE is somewhat poorly defined. In practice, this means that regulatory rulesets in a country IE are often incomplete and might be untrustworthy. This removes the code associated with interpreting those rulesets while preserving respect for country "alpha2" codes also contained in the country IE. Signed-off-by: John W. Linville commit 70d4bf6d467a330ccc947df9b2608e329d9e7708 Author: Neil Horman Date: Tue Jul 20 06:45:56 2010 +0000 drop_monitor: convert some kfree_skb call sites to consume_skb Convert a few calls from kfree_skb to consume_skb Noticed while I was working on dropwatch that I was detecting lots of internal skb drops in several places. While some are legitimate, several were not, freeing skbs that were at the end of their life, rather than being discarded due to an error. This patch converts those calls sites from using kfree_skb to consume_skb, which quiets the in-kernel drop_monitor code from detecting them as drops. Tested successfully by myself Signed-off-by: Neil Horman Signed-off-by: David S. Miller commit 4b706372f18de53970e4c6887a96459590fef80a Author: Neil Horman Date: Tue Jul 20 04:52:09 2010 +0000 drop_monitor: Add error code to detect duplicate state changes Patch to add -EAGAIN error to dropwatch netlink message handling code. -EAGAIN will be returned anytime userspace attempts to transition the state of the drop monitor service to a state that its already in. That allows user space to detect this condition, so it doesn't wait for a success ACK that will never arrive. Tested successfully by me Signed-off-by: Neil Horman Signed-off-by: David S. Miller commit d79d991379af35d43f003f162e8650e72965b8ca Author: Nicolas Dichtel Date: Mon Jul 19 23:51:38 2010 +0000 __dst_free(): put EXPORT_SYMBOLS after the fct Signed-off-by: Nicolas Dichtel Signed-off-by: David S. Miller commit dab1086362f0a357e74f45bba48d664a48c294ec Author: Giuseppe Cavallaro Date: Tue Jul 20 13:24:25 2010 -0700 phy: add suspend/resume in the ic+ Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 53e9b1de6840d9047f768878adcbd1d116f72aca Author: David Gnedt Date: Mon Jul 19 20:44:02 2010 +0200 mac80211: set carrier on for monitor interfaces on ieee80211_open If a station interface is reused as monitor interface it is possible that the carrier is still set to off. This breaks packet injection on that monitor interface. Force the carrier on in monitor interface initialisation like it is also done for other interface types (e.g. adhoc, mesh point, ap). Signed-off-by: David Gnedt Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 4ced3f74dae18715920cb680098ec7ff4345d0a3 Author: Johannes Berg Date: Mon Jul 19 16:39:04 2010 +0200 mac80211: move QoS-enable to BSS info Ever since commit e1b3ec1a2a336c328c336cfa5485a5f0484cc90d Author: Stanislaw Gruszka Date: Mon Mar 29 12:18:34 2010 +0200 mac80211: explicitly disable/enable QoS mac80211 is telling drivers, in particular iwlwifi, whether QoS is enabled or not. However, this is only relevant for station mode, since only then will any device send nullfunc frames and need to know whether they should be QoS frames or not. In other modes, there are (currently) no frames the device is supposed to send. When you now consider virtual interfaces, it becomes apparent that the current mechanism is inadequate since it enables/disables QoS on a global scale, where for nullfunc frames it has to be on a per-interface scale. Due to the above considerations, we can change the way mac80211 advertises the QoS state to drivers to only ever advertise it as "off" in station mode, and make it a per-BSS setting. Tested-by: Stanislaw Gruszka Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 875ae5f68883c75aad826e715df8ec0619551a07 Author: Felix Fietkau Date: Sat Jul 17 15:59:07 2010 +0200 mac80211: fix aggregation action frame handling with AP VLANs When aggregation related action frames are enqueued for further work, and they originate from a STA that is part of an AP VLAN, they are currently enqueued for the AP interface. This breaks the sta_info_get() lookup in the actual work function, and because of that, aggregation sessions are not established for this STA. Fix this by replacing the sta_info_get call with a call to sta_info_get_bss. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit f89e048e76da7ac0b4c89e75606ca7a3422886b1 Author: Jeremy Fitzhardinge Date: Wed Sep 16 12:38:33 2009 -0700 xen: make sure pages are really part of domain before freeing Scan the set of pages we're freeing and make sure they're actually owned by the domain before freeing. This generally won't happen on a domU (since Xen gives us contigious memory), but it could happen if there are some hardware mappings passed through. We only bother going up to the highest page Xen actually claimed to give us, since there's definitely nothing of ours above that. Signed-off-by: Jeremy Fitzhardinge commit 093d7b4639951ea3021a6f70d376c3ff31f4740c Author: Miroslav Rezanina Date: Wed Sep 16 03:56:17 2009 -0400 xen: release unused free memory Scan an e820 table and release any memory which lies between e820 entries, as it won't be used and would just be wasted. At present this is just to release any memory beyond the end of the e820 map, but it will also deal with holes being punched in the map. Derived from patch by Miroslav Rezanina Signed-off-by: Jeremy Fitzhardinge commit 5c20a5c7105bd7d5aa8af146598bdb6bc59bb2b8 Author: Casey Leedom Date: Mon Jul 19 17:55:33 2010 -0700 cxgb4vf: add maintainer entry for cxgb4vf Adding myself as the official maintainer of the Chelsio T4 Virtual function Driver (cxgb4vf). Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit c8639a827fa48985432ad2e0e21b1280a1e3a65e Author: Casey Leedom Date: Mon Jul 19 17:53:48 2010 -0700 cxgb4vf: Fix bug where we were only allocating one queue in MSI mode Fix bug in setup_sge_queues() where we were incorrectly only allocating a single "Queue Set" for MSI mode. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 024e6293f959dc86827284bc1d7c93c8baed1ec6 Author: Casey Leedom Date: Mon Jul 19 17:51:46 2010 -0700 cxgb4vf: Fix off-by-one error checking for the end of the mailbox delay array Fix off-by-one error in checking for the end of the mailbox response delay array. We ended up walking off the end and, if we were unlucky, we'd end up pulling in a 0 and never terminate the mailbox response delay loop ... Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit d5e0a06f17a0ffb0eb08a5bd7b18f00af70d9a12 Author: Jiri Kosina Date: Tue Jul 20 17:48:48 2010 +0200 Revert "HID: add support for the Wacom Intuos 4 wireless" This reverts commit ed9eac5b493c679ef5fc52273758fe334de82714. As reported by Bastien Nocera, the device actually uses a completely different protocol, so simply adding VID/PID doesn't work and completely new driver will need to be written. Reported-by: Bastien Nocera Signed-off-by: Jiri Kosina commit 59b48568312a262cbba814c683a320fb4e0dccae Author: Stephen Boyd Date: Fri Jul 16 09:46:44 2010 -0700 fs/Kconfig: Fix typo Userpace -> Userspace Signed-off-by: Stephen Boyd Signed-off-by: Jiri Kosina commit 82400d2c827aa4f70c8b047d6147f50438f4ab87 Author: Christoph Egger Date: Wed Jun 30 18:03:43 2010 +0200 Removing dead MACH_U300_BS26 MACH_U300_BS26 doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Acked-by: Linus Walleij Signed-off-by: Jiri Kosina commit 78e2c6415a50646896d75dedf9f71e54081311fa Author: Joe Perches Date: Mon Jul 12 13:50:01 2010 -0700 drivers/infiniband: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Acked-by: Ralph Campbell Signed-off-by: Jiri Kosina commit 33fa1d909c7357be715aa0e9f9e24c3ef5714493 Author: Joe Perches Date: Mon Jul 12 13:50:19 2010 -0700 fs/ocfs2: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Acked-by: Joel Becker Signed-off-by: Jiri Kosina commit 7156fffaaa15aeb0e0247736eff0a86f75f49f81 Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:12 2010 +0400 libfc: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Jiri Kosina commit 501af8d110f1fca597ff61c8611d018360ff9bf7 Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:04 2010 +0400 scsi: bfa: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Jiri Kosina commit 04ad327f277ec3bc3c05f5a5c19d58600882d38e Author: Kulikov Vasiliy Date: Mon Jun 28 15:54:56 2010 +0400 drm: i915: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Jiri Kosina commit 3c58141165bc2476a5851142f5199d63c39c30c8 Author: Kulikov Vasiliy Date: Mon Jun 28 15:54:52 2010 +0400 drm: drm_edid: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Jiri Kosina commit 7ea7c6d51ecf6010381fcb8ff67b0fcd6f34c255 Author: Kulikov Vasiliy Date: Mon Jun 28 15:54:48 2010 +0400 synclink: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Acked-by: Paul Fulghum Signed-off-by: Jiri Kosina commit 0e4a9d03df0a7ba516bbd94d2ec17d26859e46ba Author: Kulikov Vasiliy Date: Mon Jun 28 15:54:44 2010 +0400 block: cciss: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Acked-by: Mike Miller Signed-off-by: Jiri Kosina commit f2e005aaff4878a8ea93d5fb033a21389b72579a Author: Tejun Heo Date: Tue Jul 20 15:59:09 2010 +0200 workqueue: fix mayday_mask handling on UP All cpumasks are assumed to have cpu 0 permanently set on UP, so it can't be used to signify whether there's something to be done for the CPU. workqueue was using cpumask to track which CPU requested rescuer assistance and this led rescuer thread to think there always are pending mayday requests on UP, which resulted in infinite busy loops. This patch fixes the problem by introducing mayday_mask_t and associated helpers which wrap cpumask on SMP and emulates its behavior using bitops and unsigned long on UP. Signed-off-by: Tejun Heo Cc: Rusty Russell commit b444786f1a797a7f84e2561346a670649f9c7b3c Author: Arnd Bergmann Date: Wed Jul 7 23:40:11 2010 +0200 tracing: Use generic_file_llseek for debugfs The default for llseek will change to no_llseek, so the tracing debugfs files need to add explicit .llseek assignments. Since we're dealing with regular files from a VFS perspective, use generic_file_llseek. Signed-off-by: Arnd Bergmann Cc: Steven Rostedt Cc: Ingo Molnar Cc: John Kacur Cc: Li Zefan LKML-Reference: <1278538820-1392-10-git-send-email-arnd@arndb.de> Signed-off-by: Frederic Weisbecker commit eb7beb5c09af75494234ea6acd09d0a647cf7338 Author: Frederic Weisbecker Date: Fri Jul 16 00:50:03 2010 +0200 tracing: Remove special traces Special traces type was only used by sysprof. Lets remove it now that sysprof ftrace plugin has been dropped. Signed-off-by: Frederic Weisbecker Acked-by: Soeren Sandmann Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Steven Rostedt Cc: Li Zefan commit f376bf5ffbad863d4bc3b2586b7e34cdf756ad17 Author: Frederic Weisbecker Date: Fri Jul 16 00:26:26 2010 +0200 tracing: Remove sysprof ftrace plugin The sysprof ftrace plugin doesn't seem to be seriously used somewhere. There is a branch in the sysprof tree that makes an interface to it, but the real sysprof tool uses either its own module or perf events. Drop the sysprof ftrace plugin then, as it's mostly useless. Signed-off-by: Frederic Weisbecker Acked-by: Soeren Sandmann Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Steven Rostedt Cc: Li Zefan commit cd7643bfb772dc7103ed6fc8dda6b233a8e14178 Author: Jaroslav Kysela Date: Tue Jul 20 12:11:25 2010 +0200 ALSA: hda-intel - fix function_id rework (add missing bitmask) Signed-off-by: Jaroslav Kysela commit d1ce6b200cba6bfd76e17e327b5052aa76a46abf Author: Mark Brown Date: Tue Jul 20 10:13:14 2010 +0100 ASoC: Unconditionally enable WM8994 AIF1ADC TDM mode AIF1ADC TDM mode has no effect other than causing the ADCDAT line to be tristated rather than driven low on clock cycles where there is no data to be transmitted. If the clock cycle is idle then there should be no devices using the data so tristating should have no adverse effects. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 931ac77ef65d2d90ee1def63d2041402ec7c53ab Author: Tejun Heo Date: Tue Jul 20 11:07:48 2010 +0200 workqueue: fix build problem on !CONFIG_SMP Commit f3421797 (workqueue: implement unbound workqueue) incorrectly tested CONFIG_SMP as part of a C expression in alloc/free_cwqs(). As CONFIG_SMP is not defined in UP, this breaks build. Fix it by using Found during linux-next build test. Signed-off-by: Tejun Heo Reported-by: Stephen Rothwell commit 48519f0ae03bc7e86b3dc93e56f1334d53803770 Author: Sekhar Nori Date: Mon Jul 19 12:31:16 2010 +0530 ASoC: davinci: let platform data define edma queue numbers Currently the EDMA queue to be used by for servicing ASP through internal RAM is fixed to EDMAQ_0 and that to service internal RAM from external RAM is fixed to EDMAQ_1. This may not be the desirable configuration on all platforms. For example, on DM365, queue 0 has large fifo size and is more suitable for video transfers. Having audio and video transfers on the same queue may lead to starvation on audio side. platform data as defined currently passes a queue number to the driver but that remains unused inside the driver. Fix this by defining one queue each for ASP and RAM transfers in the platform data and using it inside the driver. Since EDMAQ_0 maps to 0, thats the queue that will be used if the asp queue number is not initialized. None of the platforms currently utilize ping-pong transfers through internal RAM so that functionality remains unchanged too. This patch has been tested on DM644x and OMAP-L138 EVMs. Signed-off-by: Sekhar Nori Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 5c519767b6ec0e54e5c868c0fceebba968f88374 Author: Chanwoo Choi Date: Tue Jul 20 14:28:30 2010 +0900 ASoC:Support Samsung SoC(S5P) in I2Sv2 This patch modify I2Sv2 driver to support Samsung SoC(S5PV210). Signed-off-by: Chanwoo Choi Signed-off-by: Joonyoung Shim Signed-off-by: Kyungmin Park Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 3b89b223586000d361e96c88fbfd68ef5c5ad880 Merge: a3257ba 41f9a31 Author: Mark Brown Date: Tue Jul 20 09:52:25 2010 +0100 Merge branch 'for-2.6.35' into for-2.6.36 commit a3257ba869003ad10f292fea64bf31e2d3e2afff Author: Mark Brown Date: Mon Jul 19 14:02:34 2010 +0100 ASoC: Implement WM8994 AIF1ADC2 paths Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 395e4b7362f4776d357856fdf93cdb2302d8555a Author: Mark Brown Date: Mon May 10 21:06:14 2010 +0100 ASoC: Explicitly disable DC servo on WM hubs headphone powerdown Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 8a0bbbeb588f2b0cbb2f69699926f32d2cda5138 Author: Eric Bénard Date: Mon Jul 19 10:40:32 2010 +0200 ASoC: eukrea-tlv320: add support for cpuimx35sd Signed-off-by: Eric Bénard Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 78b435368fcd615e695a06012cd963a556284e00 Author: Arjan van de Ven Date: Mon Jul 19 10:59:42 2010 -0700 slab: use deferable timers for its periodic housekeeping slab has a "once every 2 second" timer for its housekeeping. As the number of logical processors is growing, its more and more common that this 2 second timer becomes the primary wakeup source. This patch turns this housekeeping timer into a deferable timer, which means that the timer does not interrupt idle, but just runs at the next event that wakes the cpu up. The impact is that the timer likely runs a bit later, but during the delay no code is running so there's not all that much reason for a difference in housekeeping to occur because of this delay. Signed-off-by: Arjan van de Ven Signed-off-by: Pekka Enberg commit e7c38157c61649e66f853d7b9f109119b8361448 Author: David S. Miller Date: Mon Jul 19 22:01:26 2010 -0700 ipv6: Make IP6CB(skb)->nhoff 16-bit. Even with jumbograms I cannot see any way in which we would need to records a larger than 65535 valued next-header offset. The maximum extension header length is (256 << 3) == 2048. There are only a handful of extension headers specified which we'd even accept (say 5 or 6), therefore the largest next-header offset we'd ever have to contend with is something less than say 16k. Therefore make it a u16 instead of a u32. Signed-off-by: David S. Miller commit 58fb021827b7455e05d89371556e6c255e9fb2e1 Author: Chris Bagwell Date: Mon Jul 19 09:06:15 2010 -0700 Input: synaptics - set min/max for finger width Reporting this will allow GUI config apps to correctly scale width sensitive config values (such as palm detect) to correct range. Current user apps are detecting kernels min/max=0/0 and making an assumption that it means 0/16 or 0/15. Synaptics touchpad interface guides show 4/15 are correct values but driver forces to 0 when no fingers on touchpad. Signed-off-by: Chris Bagwell Signed-off-by: Dmitry Torokhov commit 2a8e77102e02dd236ff276a2151073ed551d04f2 Author: Chris Bagwell Date: Mon Jul 19 09:06:15 2010 -0700 Input: synaptics - only report width on hardware that supports it Synaptics devices report fixed value of 5 for finger/palm widths on devices that do not support capability and driver further hardcodes to 5. Stop reporting this fixed value when its not supported since its not useful. This will aid applications so they can better auto-enable support for multi-touch emulation and palm detection logic using finger width only for devices that support width detection. I can find no applications that currently require existence on ABS_TOOL_WIDTH. Since only synaptics and bcm input devices currently support this tool, it seems they must handle it gracefully. Signed-off-by: Chris Bagwell Signed-off-by: Dmitry Torokhov commit 5ae482e01d60bd4e8fc181f78355047e52999ce8 Author: Michael Chan Date: Mon Jul 19 14:15:05 2010 +0000 bnx2: Update version to 2.0.17. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 11848b964777af9c68d9160582628c2eb11f46d5 Author: Michael Chan Date: Mon Jul 19 14:15:04 2010 +0000 bnx2: Remove some unnecessary smp_mb() in tx fast path. smp_mb() inside bnx2_tx_avail() is used twice in the normal bnx2_start_xmit() path (see illustration below). The full memory barrier is only necessary during race conditions with tx completion. We can speed up the tx path by replacing smp_mb() in bnx2_tx_avail() with a compiler barrier. The compiler barrier is to force the compiler to fetch the tx_prod and tx_cons from memory. In the race condition between bnx2_start_xmit() and bnx2_tx_int(), we have the following situation: bnx2_start_xmit() bnx2_tx_int() if (!bnx2_tx_avail()) BUG(); ... if (!bnx2_tx_avail()) netif_tx_stop_queue(); update_tx_index(); smp_mb(); smp_mb(); if (bnx2_tx_avail()) if (netif_tx_queue_stopped() && netif_tx_wake_queue(); bnx2_tx_avail()) With smp_mb() removed from bnx2_tx_avail(), we need to add smp_mb() to bnx2_start_xmit() as shown above to properly order netif_tx_stop_queue() and bnx2_tx_avail() to check the ring index. If it is not strictly ordered, the tx queue can be stopped forever. This improves performance by about 5% with 2 ports running bi-directional 64-byte packets. Reviewed-by: Benjamin Li Reviewed-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 379b39a2ad613745bfbfe80256957d19689b7b94 Author: Michael Chan Date: Mon Jul 19 14:15:03 2010 +0000 bnx2: Call pci_enable_msix() with actual number of vectors. Based on original patch by Breno Leitão . Allocate the actual number of vectors and make use of fewer vectors if pci_enable_msix() returns > 0. We must allocate one additional vector for the cnic driver. Cc: Breno Leitão Reviewed-by: Benjamin Li Reviewed-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 6fdae995557f0ad16320951593d6f8f48f57c14a Author: Michael Chan Date: Mon Jul 19 14:15:02 2010 +0000 bnx2: Use proper counter for net_device_stats->multicast. We were using the wrong tx multicast counter instead of the rx multicast counter. Reported-by: Peter Snellman Reviewed-by: Benjamin Li Reviewed-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 99faf68e2b4e139c63139b83d18c74faeae278ef Author: Don Skidmore Date: Mon Jul 19 14:00:47 2010 +0000 ixgbe: fix version string for ixgbe Bump the version string to better reflect what is in the driver. Signed-off-by: Don Skidmore Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5575044661cfccd8b2f6e244031ef54499aa1dbb Author: Yi Zou Date: Mon Jul 19 14:00:24 2010 +0000 ixgbe: use GFP_ATOMIC when allocating FCoE DDP context from the dma pool The FCoE protocol stack may hold a lock when this gets called. Signed-off-by: Yi Zou Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5e09d7f6305fc9a1141bef116c7c02756d3bfa16 Author: Yi Zou Date: Mon Jul 19 13:59:52 2010 +0000 ixgbe: properly toggling netdev feature flags when disabling FCoE When FCoE is disabled, there is a race condition that FCoE offload is turned off but the FCoE protocol driver is still queuing I/O thinking offload support still exists. This patch toggles off corresponding FCoE netdev feature flags and notify the FCoE stack first, allowing FCoE protocol stack driver to update its flags upon NETDEV_FEAT_CHANGE so no I/O will be using offload. Also, indicate FCoE offload flags in vlan_features in ixgbe_probe once and do not toggle them in ixgbe_fcoe_enable/disable so when FCoE is created on the VLAN interface, vlan_transfer_features() would properly update the VLAN netdev features flag and notify the FCoE protocol driver for NETDEV_FEAT_CHANGE. Signed-off-by: Yi Zou Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d6ea7c9ccc9fd351fa2675304695d1654331fca3 Author: Alexander Duyck Date: Mon Jul 19 13:59:27 2010 +0000 ixgbe: drop support for UDP in RSS hash generation This change removes UDP from the supported protocols for RSS hashing. The reason for removing this protocol is because IP fragmentation was causing a network flow to be broken into two streams, one for fragmented, and one for non-fragmented and this in turn was causing out-of-order issues. Signed-off-by: Alexander Duyck Acked-by: Don Skidmore Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit fca562ad63d12a32a74b40c86dfe61de9a21fd73 Author: John Fastabend Date: Mon Jul 19 13:59:03 2010 +0000 ixgbe: dcb, set DPF bit when PFC is enabled Set the DPF bit when PFC is enabled. This will discard PFC frames so they do not get passed up the stack. The DPF bit is set for flow control, but not priority flow control this brings pfc inline with fc. Signed-off-by: John Fastabend Signed-off-by: Don Skidmore Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit b59544649d6bb5134ab56764836efc29241ae5e0 Author: Alexander Duyck Date: Mon Jul 19 13:43:47 2010 +0000 e1000: allow option to limit number of descriptors down to 48 per ring This change makes it possible to limit the number of descriptors down to 48 per ring. The reason for this change is to address a variation on hardware errata 10 for 82546GB in which descriptors will be lost if more than 32 descriptors are fetched and the PCI-X MRBC is 512. Signed-off-by: Alexander Duyck Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 2decb194e65ab66eaf787512dc572cdc99893b24 Author: H. Peter Anvin Date: Mon Jul 19 18:32:04 2010 -0700 x86, cpu: Split addon_cpuid_features.c addon_cpuid_features.c contains exactly two almost completely unrelated functions, plus has a long and very generic name. Split it into two files, scattered.c for the scattered feature flags, and topology.c for the topology information. Signed-off-by: H. Peter Anvin LKML-Reference: commit 278bc5f6abd69dd868746dbd642266ac09a9c9c6 Author: H. Peter Anvin Date: Mon Jul 19 18:53:51 2010 -0700 x86, cpu: Clean up formatting in cpufeature.h, remove override Clean up the formatting in cpufeature.h, and remove an unnecessary name override. Signed-off-by: H. Peter Anvin Cc: Suresh Siddha LKML-Reference: commit 6bad06b768920e278c7cedfdda56a0b4c6a35ee9 Author: Suresh Siddha Date: Mon Jul 19 16:05:52 2010 -0700 x86, xsave: Use xsaveopt in context-switch path when supported xsaveopt is a more optimized form of xsave specifically designed for the context switch usage. xsaveopt doesn't save the state that's not modified from the prior xrstor. And if a specific feature state gets modified to the init state, then xsaveopt just updates the header bit in the xsave memory layout without updating the corresponding memory layout. Signed-off-by: Suresh Siddha LKML-Reference: <20100719230205.604014179@sbs-t61.sc.intel.com> Signed-off-by: H. Peter Anvin commit 29104e101d710dd152f807978884643a52eca8b7 Author: Suresh Siddha Date: Mon Jul 19 16:05:49 2010 -0700 x86, xsave: Sync xsave memory layout with its header for user handling With xsaveopt, if a processor implementation discern that a processor state component is in its initialized state it may modify the corresponding bit in the xsave_hdr.xstate_bv as '0', with out modifying the corresponding memory layout. Hence wHile presenting the xstate information to the user, we always ensure that the memory layout of a feature will be in the init state if the corresponding header bit is zero. This ensures the consistency and avoids the condition of the user seeing some some stale state in the memory layout during signal handling, debugging etc. Signed-off-by: Suresh Siddha LKML-Reference: <20100719230205.351459480@sbs-t61.sc.intel.com> Signed-off-by: H. Peter Anvin commit a1488f8bf4d72ad724700f6e982469a1240e4264 Author: Suresh Siddha Date: Mon Jul 19 16:05:48 2010 -0700 x86, xsave: Track the offset, size of state in the xsave layout Subleaves of the cpuid vector 0xd provides the offset and size of different feature state that are managed by the xsave/xrstor. Track this for the upcoming usage during signal handling. Signed-off-by: Suresh Siddha LKML-Reference: <20100719230205.262987929@sbs-t61.sc.intel.com> Signed-off-by: H. Peter Anvin commit 5734f62b6601d88fd8ec720cb56b93fd3a030557 Author: Suresh Siddha Date: Mon Jul 19 16:05:52 2010 -0700 x86, cpu: Enumerate xsaveopt Enumerate the xsaveopt feature. Signed-off-by: Suresh Siddha LKML-Reference: <20100719230205.604014179@sbs-t61.sc.intel.com> Signed-off-by: H. Peter Anvin commit 40e1d7a4ffee5cb17f5c36f4c3c4a011ab103ebe Author: Suresh Siddha Date: Mon Jul 19 16:05:51 2010 -0700 x86, cpu: Add xsaveopt cpufeature Add cpu feature bit support for the XSAVEOPT instruction. Signed-off-by: Suresh Siddha LKML-Reference: <20100719230205.523204988@sbs-t61.sc.intel.com> Signed-off-by: H. Peter Anvin commit edb18f8ab02843453306601c4aa697f9691129cd Author: Suresh Siddha Date: Mon Jul 19 16:05:50 2010 -0700 x86, cpu: Make init_scattered_cpuid_features() consider cpuid subleaves Some cpuid features (like xsaveopt) are enumerated using cpuid subleaves. Extend init_scattered_cpuid_features() to take subleaf into account. Signed-off-by: Suresh Siddha LKML-Reference: <20100719230205.439900717@sbs-t61.sc.intel.com> Signed-off-by: H. Peter Anvin commit 653954825dce4015d6418ddb4de7826205f44c87 Author: Andrew Morton Date: Mon Jul 19 15:27:13 2010 -0700 drivers/net/82596.c: fix warning drivers/net/82596.c: In function 'i596_open': drivers/net/82596.c:1044: warning: label 'err_irq_dev' defined but not used Caused by "82596: free resources on error" Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit e2df8b7f6665075f7fe93613897117743c7bf0ba Author: David S. Miller Date: Mon Jul 19 15:25:04 2010 -0700 ks8842: Fix ks8842_tx_frame() for 16bit case. As reported by Andrew: drivers/net/ks8842.c: In function 'ks8842_handle_rx': drivers/net/ks8842.c:428: warning: 'status' may be used uninitialized in this function Just use the 32-bit status for all reads, and delete the useless cast to 'int' when reading a u16 into 'len'. Reported-by: Andrew Morton Signed-off-by: David S. Miller commit d6d9ca0fec6aea0f2e4064474a1c5cdbed873c63 Author: Eric Dumazet Date: Mon Jul 19 10:48:49 2010 +0000 net: this_cpu_xxx conversions Use modern this_cpu_xxx() api, saving few bytes on x86 Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 492c5d943d6a04b124ba3a719dc746dc36b14cfb Author: Catalin Marinas Date: Mon Jul 19 13:36:21 2010 -0700 smsc911x: Add spinlocks around registers access On SMP systems, the SMSC911x registers may be accessed by multiple CPUs and this seems to put the chip in an inconsistent state. The patch adds spinlocks to the smsc911x_reg_read, smsc911x_reg_write, smsc911x_rx_readfifo and smsc911x_tx_writefifo functions. Signed-off-by: Catalin Marinas Signed-off-by: David S. Miller commit 90e1795b9b18ce47e95cd26028a9cfd0f4cc35ba Author: Eric Dumazet Date: Mon Jul 19 06:52:36 2010 +0000 bonding: avoid a warning drivers/net/bonding/bond_main.c:179:12: warning: ‘disable_netpoll’ defined but not used Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit e6e4ec2f98ae3b75cfede011c8794120914e789f Author: Christoph Egger Date: Mon Jul 19 04:37:11 2010 +0000 net: Removing dead ARCH_PNX010X ARCH_PNX010X doesn't exist in Kconfig, therefore removing all references for it from the source code/Kconfig. Signed-off-by: Christoph Egger Signed-off-by: David S. Miller commit 91fb0dd9cb71ab1a90ab1f48c34b935fdbca55b9 Author: Alexander Schmidt Date: Thu Jun 10 09:06:53 2010 +0000 IB/ehca: Fix bitmask handling for lock_hcalls Fix reading hcall locking capability bit from device capabilities. Signed-off-by: Alexander Schmidt Signed-off-by: Roland Dreier commit cc323b2aaa3921c4eeec309ff64256b0c43ca752 Author: Ralph Campbell Date: Thu Jun 3 00:21:07 2010 +0000 IB/qib: Avoid variable-length array Rather than use a variable size array allocation on the stack, define a constant for the maximum array size possible. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 0bdc0d70c535d59c10add461b96340425f0aac7d Author: Shreyas Bhatewara Date: Thu Jul 15 15:21:27 2010 +0000 net-next: vmxnet3 fixes [5/5] Respect the interrupt type in VM configuration Respect the interrupt type set in VM configuration. When interrupt type is not auto, do not ignore the interrupt type set from VM configuration. Signed-off-by: Shreyas Bhatewara Signed-off-by: David S. Miller commit d9a5f210c5ef338295cf1c29d98825722351bed7 Author: Shreyas Bhatewara Date: Mon Jul 19 07:02:13 2010 +0000 net-next: vmxnet3 fixes [4/5] Do not reset when the device is not opened Hold rtnl_lock to get the right link state. While asynchronously resetting the device, hold rtnl_lock to get the right value from netif_running. If a reset is scheduled, and the device goes thru close and open, it may happen that reset and open may run in parallel. Holding rtnl_lock will avoid this. Signed-off-by: Shreyas Bhatewara Signed-off-by: David S. Miller commit 85963e4cbcf11c00b1d27ea0e0fcab8cb3d7a69b Author: Roland Dreier Date: Mon Jul 19 13:13:09 2010 -0700 RDMA/cxgb4: Remove unneeded NULL check The rest of the code seems to assume that ep->com.cm_id can't be NULL, so remove an unneeded test. Reported-by: Dan Carpenter Signed-off-by: Roland Dreier commit c1d7356c8572f3fe0445336d8e75914bdcadad59 Author: Dan Carpenter Date: Mon May 31 14:00:53 2010 +0000 RDMA/cxgb4: Remove unneeded assignment We don't need to assign rpl here, we do that later on. Signed-off-by: Dan Carpenter [ Indeed this assignment makes no sense, since skb is set to NULL a couple of lines before. - Roland ] Signed-off-by: Roland Dreier commit ab85457f0a46b9dab17aaa01ceefc755b124d48d Author: Jerone Young Date: Mon Jul 19 08:30:58 2010 -0500 ALSA: hda - Add conexant quirk for AMD based Lenovo G series machines This is a follow on patch adds support for AMD based Lenovo G series machines, such as the Lenovo G555. Signed-off-by: Jerone Young Signed-off-by: Takashi Iwai commit bd27290a593f80cb99e95287cb29c72c0d57608b Author: Eric Dumazet Date: Mon Jul 19 09:35:40 2010 -0700 net: 64bit stats for netdev_queue Since struct netdev_queue tx_bytes/tx_packets/tx_dropped are already protected by _xmit_lock, its easy to convert these fields to u64 instead of unsigned long. This completes 64bit stats for devices using them (vlan, macvlan, ...) Strictly, we could avoid the locking in dev_txq_stats_fold() on 64bit arches, but its slow path and we prefer keep it simple. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit db5dda905759c931ceb8f3f2fcfd7719009acc98 Author: Eric Dumazet Date: Mon Jul 19 03:24:14 2010 +0000 bonding: fix bond_inet6addr_event() After commit ad1afb0039391 (vlan_dev: VLAN 0 should be treated as "no vlan tag" (802.1p packet)), bond_inet6addr_event() might be called with a NULL bond->vlgrp pointer, and a non empty bond->vlan_list. vlan_group_get_device() is dereferencing a NULL pointer. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit c26875e2e1a07137f6e7a621fa802b03c00535b6 Author: Tobias Klauser Date: Sun Jul 18 22:55:58 2010 +0000 s2io: Remove unnecessary memset of netdev private data The memory for the private data is allocated using kzalloc in alloc_etherdev (or alloc_netdev_mq respectively) so there is no need to set it to 0 again. Signed-off-by: Tobias Klauser Signed-off-by: David S. Miller commit 68bf57001f4995a25ca65f3711ff05b6ea25e8b6 Author: Kulikov Vasiliy Date: Fri Jul 16 20:15:59 2010 +0400 ALSA: riptide: check kzalloc() result If kzalloc() fails exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit 0b6d092c8eeeb43893503afd2f6c1c67ceafc863 Author: Kulikov Vasiliy Date: Fri Jul 16 20:15:43 2010 +0400 ALSA: echoaudio: check kmalloc() result If kmalloc() fails exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy Ack-by: Giuliano Pochini Signed-off-by: Takashi Iwai commit 8d011cc7a9374db9b5ace3b75d34f10fdc3b51c4 Merge: e2768c0 9e216e8 Author: Takashi Iwai Date: Mon Jul 19 17:42:09 2010 +0200 Merge branch 'devel' of git.alsa-project.org:alsa-kernel into topic/misc commit 9e216e8a40428cbf689222148c28d0256fbd0186 Author: Jaroslav Kysela Date: Mon Jul 19 16:37:39 2010 +0200 ALSA: pcm core - add a safe check to the silence filling function In situation when appl_ptr is far greater then hw_ptr, the hw_avail value can be greater than buffer_size. Check for this. Signed-off-by: Jaroslav Kysela commit 79c944ad136c4d14388d803b51113dcaaa1d179d Author: Jaroslav Kysela Date: Mon Jul 19 15:52:39 2010 +0200 ALSA: hda-intel - do not mix audio and modem function IDs The function IDs are different for audio and modem. Do not mix them. Also, show the unsolicited bit in the function_id register. Signed-off-by: Jaroslav Kysela commit 323f99cbc35c52a65dea9d072b3ecf1e662240d2 Author: Tom Lyon Date: Fri Jul 2 16:56:14 2010 -0400 iommu-api: Extension to check for interrupt remapping This patch allows IOMMU users to determine whether the hardware and software support safe, isolated interrupt remapping. Not all Intel IOMMUs have the hardware, and the software for AMD is not there yet. Signed-off-by: Tom Lyon Signed-off-by: Joerg Roedel commit 6c54aabd5e687092557f4881ce2d4013b971f293 Author: Kulikov Vasiliy Date: Sat Jul 3 12:03:51 2010 -0400 x86/amd-iommu: Use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: Joerg Roedel commit 7d3d42a79519df4cd62c3aa5d9ae2d77ebbf8fab Author: Jiri Kosina Date: Mon Jul 19 12:13:57 2010 +0200 HID: fix up Kconfig entry for ACRUX driver Remove 'default !EMBEDDED' from ACRUX force feedback driver entry. See commit message of 73d5e8f77e88 ("HID: fix up 'EMBEDDED' mess in Kconfig") for explanation and reasoning. Signed-off-by: Jiri Kosina commit c0dbcc33c652a0646542560de29a1c3f1ab7169f Author: Sergei Kolzun Date: Mon Jul 19 12:13:23 2010 +0200 HID: add ACRUX game controller force feedback support Adds force feedback support for ACRUX USB game controllers. These devices are mass produced in China by several vendors. Signed-off-by: Sergei Kolzun Signed-off-by: Dmitry Torokhov Signed-off-by: Jiri Kosina commit 70c7c9c4438fc3ca573744c5448df90dbcc5e159 Author: Daniel Mack Date: Mon Jul 12 19:28:28 2010 +0200 HID: Force input registration for "VEC footpedal" These devices report a usage page of type "consumer" and a usage of "Programmable buttons". They are hence ignored by the hid-input layer. Force the registration of an input device by using the new quirk type HID_QUIRK_HIDINPUT_FORCE. Signed-off-by: Daniel Mack Cc: Jiri Kosina Cc: Dmitry Torokhov Signed-off-by: Jiri Kosina commit 3a343ee4509c982552b35fbc99d3213f3bb1acde Author: Daniel Mack Date: Mon Jul 12 19:28:27 2010 +0200 HID: add HID_QUIRK_HIDINPUT_FORCE For devices with exotic HID report descriptors, it might be necessary to make the HID core force the registration of an input device. Make that possible by introducing a new quirk type. Signed-off-by: Daniel Mack Cc: Jiri Kosina Cc: Dmitry Torokhov Signed-off-by: Jiri Kosina commit fc99f22c5de2177431cada350417ac6e353380c7 Author: Daniel Mack Date: Mon Jul 12 19:28:26 2010 +0200 HID: hid-input.c: indentation fixes Signed-off-by: Daniel Mack Cc: Jiri Kosina Cc: Dmitry Torokhov Signed-off-by: Jiri Kosina commit b770ffd4c453068392b16fda8afca548cd7ebe38 Author: Thomas Weber Date: Mon Jul 19 08:22:43 2010 +0200 comment typo fixes: charater => character Fix typo in comments. Replace charater with character. Characteristics too. Signed-off-by: Thomas Weber Signed-off-by: Jiri Kosina commit 25d1fbfdd98e6547f2ba3e36787f20d251019591 Author: Uwe Kleine-König Date: Tue Jul 13 11:27:58 2010 +0200 fix comment typos concerning "challenge" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 9d910c9bcb4c3164d582ec3283fff5000c4f0d75 Author: Davidlohr Bueso Date: Tue Jul 13 05:54:08 2010 -0400 arm: plat-spear: fix typo in kerneldoc Trivial fix in a typo (enalbed for enabled). Signed-off-by: Davidlohr Bueso Signed-off-by: Jiri Kosina commit 7a2e3659b6ffbee4e742cd6f6a60359ad9148720 Author: Davidlohr Bueso Date: Tue Jul 13 05:53:44 2010 -0400 reiserfs: typo comment fix Fix trivial typo in code comment (change adn for and), also change comment style for proper coding style. Signed-off-by: Davidlohr Bueso Signed-off-by: Jiri Kosina commit a2531293dbb7608fa672ff28efe3ab4027917a2f Author: Pavel Machek Date: Sun Jul 18 14:27:13 2010 +0200 update email address pavel@suse.cz no longer works, replace it with working address. Signed-off-by: Pavel Machek Signed-off-by: Jiri Kosina commit 1fb1defbb00eb2954483a7d9a70f8a02edf51753 Author: Peter Huewe Date: Thu Jul 15 21:00:41 2010 +0200 crypto: geode_aes - Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: Herbert Xu commit a3fb1e330dd21d96c2e07dda513ad7e9af8b6ccf Author: Dan Kruchinin Date: Wed Jul 14 14:34:15 2010 +0400 pcrypt: Added sysfs interface to pcrypt Added sysfs interface to pcrypt. Now pcrypt subsystem creates two sysfs directories with corresponding padata sysfs objects: /sys/kernel/pcrypt/[pencrypt|pdecrypt] Signed-off-by: Dan Kruchinin Signed-off-by: Herbert Xu commit 5e017dc3f8bc9e4a28983666e6bc00114a2018bb Author: Dan Kruchinin Date: Wed Jul 14 14:33:08 2010 +0400 padata: Added sysfs primitives to padata subsystem Added sysfs primitives to padata subsystem. Now API user may embedded kobject each padata instance contains into any sysfs hierarchy. For now padata sysfs interface provides only two objects: serial_cpumask [RW] - cpumask for serial workers parallel_cpumask [RW] - cpumask for parallel workers Signed-off-by: Dan Kruchinin Signed-off-by: Herbert Xu commit e15bacbebb9dcc95f148f28dfc83a6d5e48b60b8 Author: Dan Kruchinin Date: Wed Jul 14 14:31:57 2010 +0400 padata: Make two separate cpumasks The aim of this patch is to make two separate cpumasks for padata parallel and serial workers respectively. It allows user to make more thin and sophisticated configurations of padata framework. For example user may bind parallel and serial workers to non-intersecting CPU groups to gain better performance. Also each padata instance has notifiers chain for its cpumasks now. If either parallel or serial or both masks were changed all interested subsystems will get notification about that. It's especially useful if padata user uses algorithm for callback CPU selection according to serial cpumask. Signed-off-by: Dan Kruchinin Signed-off-by: Herbert Xu commit 9e3288dc9a94fab5ea87db42177d3a9e0345a614 Author: Grant Likely Date: Tue Jun 8 07:48:26 2010 -0600 of/device: Fix build errors for non-ppc and non-microblaze Only powerpc and microblaze supply (struct device *)->archdata.dma_mask. This patch stops referencing it on other architectures. Signed-off-by: Grant Likely commit c5f5849bffb36478dd8a1e350860ff18b654bc44 Author: Grant Likely Date: Tue Jun 29 09:19:30 2010 -0700 of: Remove unused of_find_device_by_phandle() Signed-off-by: Grant Likely Acked-by: Benjamin Herrenschmidt commit 60d599133011eaca6073696f6a86cd516854d547 Author: Grant Likely Date: Tue Jun 8 07:48:25 2010 -0600 of/flattree: Fix crash when device tree absent This patch fixes the condition where device tree support is compiled in, but no device tree was proved by firmware. It makes of_platform_bus_probe() explicitly check for a NULL device tree pointer. Signed-off-by: Grant Likely commit 6accec76f6889f85dd62cadefe18afb8343558d1 Author: David S. Miller Date: Sun Jul 18 19:52:55 2010 -0700 sch_atm: Convert to use standard list_head facilities. Signed-off-by: David S. Miller commit c1f19b51d1d87f3e3bb7e6648f43f7d57ed2da6b Author: Richard Cochran Date: Sat Jul 17 08:49:36 2010 +0000 net: support time stamping in phy devices. This patch adds a new networking option to allow hardware time stamps from PHY devices. When enabled, likely candidates among incoming and outgoing network packets are offered to the PHY driver for possible time stamping. When accepted by the PHY driver, incoming packets are deferred for later delivery by the driver. The patch also adds phylib driver methods for the SIOCSHWTSTAMP ioctl and callbacks for transmit and receive time stamping. Drivers may optionally implement these functions. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 15f0127d1d189fda3294b7823e3e654afca54055 Author: Richard Cochran Date: Sat Jul 17 08:49:17 2010 +0000 net: added a BPF to help drivers detect PTP packets. Certain kinds of hardware time stamping units in both MACs and PHYs have the limitation that they can only time stamp PTP packets. Drivers for such hardware are left with the task of correctly matching skbs to time stamps. This patch adds a BPF that drivers can use to classify PTP packets when needed. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 28b041139e344ecd0f144d6205b004ae354cfa1e Author: Richard Cochran Date: Sat Jul 17 08:48:55 2010 +0000 net: preserve ifreq parameter when calling generic phy_mii_ioctl(). The phy_mii_ioctl() function unnecessarily throws away the original ifreq. We need access to the ifreq in order to support PHYs that can perform hardware time stamping. Two maverick drivers filter the ioctl commands passed to phy_mii_ioctl(). This is unnecessary since phylib will check the command in any case. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 4507a71507d4ff37e9a499c4241b7701ed1feab4 Author: Richard Cochran Date: Sat Jul 17 08:48:28 2010 +0000 net: add driver hook for tx time stamping. This patch adds a hook for transmit time stamps. The transmit hook allows a software fallback for transmit time stamps, for MACs lacking time stamping hardware. Using the hook will still require adding an inline function call to each MAC driver. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 8d4b9d1bfef117862a2889dec4dac227068544c9 Author: Arjan van de Ven Date: Mon Jul 19 02:01:06 2010 +0200 PM / Runtime: Add runtime PM statistics (v3) In order for PowerTOP to be able to report how well the new runtime PM is working for the various drivers, the kernel needs to export some basic statistics in sysfs. This patch adds two sysfs files in the runtime PM domain that expose the total time a device has been active, and the time a device has been suspended. With this PowerTOP can compute the activity percentage Active %age = 100 * (delta active) / (delta active + delta suspended) and present the information to the user. I've written the PowerTOP code (slated for version 1.12) already, and the output looks like this: Runtime Device Power Management statistics Active Device name 10.0% 06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller [version 2: fix stat update bugs noticed by Alan Stern] [version 3: rebase to -next and move the sysfs declaration] Signed-off-by: Arjan van de Ven Signed-off-by: Rafael J. Wysocki commit 0fcb4eef8294492c8f1de8236b1ed81f09e42922 Author: Alan Stern Date: Thu Jul 8 00:05:37 2010 +0200 PM / Runtime: Make runtime_status attribute not debug-only (v. 2) This patch (as1404b) makes the runtime_status sysfs attribute available even in the absence of CONFIG_PM_ADVANCED_DEBUG, and it changes the routine to display "unsupported" when runtime PM is disabled for a device. Although not strictly 100% accurate, this will almost always be correct. Signed-off-by: Alan Stern Acked-by: Dominik Brodowski Signed-off-by: Rafael J. Wysocki commit 4eb241e5691363c391aac8a5051d0d013188ec84 Author: Rafael J. Wysocki Date: Wed Jul 7 23:43:51 2010 +0200 PM: Do not use dynamically allocated objects in pm_wakeup_event() Originally, pm_wakeup_event() uses struct delayed_work objects, allocated with GFP_ATOMIC, to schedule the execution of pm_relax() in future. However, as noted by Alan Stern, it is not necessary to do that, because all pm_wakeup_event() calls can use one static timer that will always be set to expire at the latest time passed to pm_wakeup_event(). The modifications are based on the example code posted by Alan. Signed-off-by: Rafael J. Wysocki commit ce4410116c5debfb0e049f5db4b5cd6211e05b80 Author: Rafael J. Wysocki Date: Wed Jul 7 23:43:45 2010 +0200 PM / Suspend: Fix ordering of calls in suspend error paths The ACPI suspend code calls suspend_nvs_free() at a wrong place, which may lead to a memory leak if there's an error executing acpi_pm_prepare(), because acpi_pm_finish() will not be called in that case. However, the root cause of this problem is the apparently confusing ordering of calls in suspend error paths that needs to be fixed. In addition to that, fix a typo in a label name in suspend.c. Signed-off-by: Rafael J. Wysocki Acked-by: Len Brown commit d074ee023fa3a4681b64223c5e636102c39628c4 Author: Rafael J. Wysocki Date: Wed Jul 7 23:43:35 2010 +0200 PM / Hibernate: Fix snapshot error code path There is an inconsistency between hibernation_platform_enter() and hibernation_snapshot(), because the latter calls hibernation_ops->end() after failing hibernation_ops->begin(), while the former doesn't do that. Make hibernation_snapshot() behave in the same way as hibernation_platform_enter() in that respect. Signed-off-by: Rafael J. Wysocki Acked-by: Len Brown commit f6f71f187518477cecc01cd887933b5da19585e6 Author: Rafael J. Wysocki Date: Wed Jul 7 23:43:18 2010 +0200 PM / Hibernate: Fix hibernation_platform_enter() The hibernation_platform_enter() function calls dpm_suspend_noirq() instead of dpm_resume_noirq() by mistake. Fix this. Signed-off-by: Rafael J. Wysocki Acked-by: Len Brown commit 82f682514a5df89ffb3890627eebf0897b7a84ec Author: James Bottomley Date: Mon Jul 5 22:53:06 2010 +0200 pm_qos: Get rid of the allocation in pm_qos_add_request() All current users of pm_qos_add_request() have the ability to supply the memory required by the pm_qos routines, so make them do this and eliminate the kmalloc() with pm_qos_add_request(). This has the double benefit of making the call never fail and allowing it to be called from atomic context. Signed-off-by: James Bottomley Signed-off-by: mark gross Signed-off-by: Rafael J. Wysocki commit 5f279845f9d684661563894d44729a0c706375b4 Author: James Bottomley Date: Mon Jul 19 02:00:18 2010 +0200 pm_qos: Reimplement using plists A lot of the pm_qos extremal value handling is really duplicating what a priority ordered list does, just in a less efficient fashion. Simply redoing the implementation in terms of a plist gets rid of a lot of this junk (although there are several other strange things that could do with tidying up, like pm_qos_request_list has to carry the pm_qos_class with every node, simply because it doesn't get passed in to pm_qos_update_request even though every caller knows full well what parameter it's updating). I think this redo is a win independent of android, so we should do something like this now. Signed-off-by: James Bottomley Signed-off-by: mark gross Signed-off-by: Rafael J. Wysocki commit 12e4d0cc2e0a776a526c93bb2fcb9267abc6e0b1 Author: James Bottomley Date: Thu Jul 1 21:46:36 2010 +0200 plist: Add plist_last plist is currently used by the scheduler, which only needs to know the highest item in the list. This adds plist_last which allows you to find the lowest. This is necessary for using plists to implement a fast search of dynamic ranges in pm_qos which can have both highest and lowest criteria. Signed-off-by: James Bottomley Signed-off-by: Rafael J. Wysocki commit c125e96f044427f38d106fab7bc5e4a5e6a18262 Author: Rafael J. Wysocki Date: Mon Jul 5 22:43:53 2010 +0200 PM: Make it possible to avoid races between wakeup and system sleep One of the arguments during the suspend blockers discussion was that the mainline kernel didn't contain any mechanisms making it possible to avoid races between wakeup and system suspend. Generally, there are two problems in that area. First, if a wakeup event occurs exactly when /sys/power/state is being written to, it may be delivered to user space right before the freezer kicks in, so the user space consumer of the event may not be able to process it before the system is suspended. Second, if a wakeup event occurs after user space has been frozen, it is not generally guaranteed that the ongoing transition of the system into a sleep state will be aborted. To address these issues introduce a new global sysfs attribute, /sys/power/wakeup_count, associated with a running counter of wakeup events and three helper functions, pm_stay_awake(), pm_relax(), and pm_wakeup_event(), that may be used by kernel subsystems to control the behavior of this attribute and to request the PM core to abort system transitions into a sleep state already in progress. The /sys/power/wakeup_count file may be read from or written to by user space. Reads will always succeed (unless interrupted by a signal) and return the current value of the wakeup events counter. Writes, however, will only succeed if the written number is equal to the current value of the wakeup events counter. If a write is successful, it will cause the kernel to save the current value of the wakeup events counter and to abort the subsequent system transition into a sleep state if any wakeup events are reported after the write has returned. [The assumption is that before writing to /sys/power/state user space will first read from /sys/power/wakeup_count. Next, user space consumers of wakeup events will have a chance to acknowledge or veto the upcoming system transition to a sleep state. Finally, if the transition is allowed to proceed, /sys/power/wakeup_count will be written to and if that succeeds, /sys/power/state will be written to as well. Still, if any wakeup events are reported to the PM core by kernel subsystems after that point, the transition will be aborted.] Additionally, put a wakeup events counter into struct dev_pm_info and make these per-device wakeup event counters available via sysfs, so that it's possible to check the activity of various wakeup event sources within the kernel. To illustrate how subsystems can use pm_wakeup_event(), make the low-level PCI runtime PM wakeup-handling code use it. Signed-off-by: Rafael J. Wysocki Acked-by: Jesse Barnes Acked-by: Greg Kroah-Hartman Acked-by: markgross Reviewed-by: Alan Stern commit b14e033e17d0ea0ba12668d0d2f371cd31586994 Author: Alan Stern Date: Tue Jun 29 22:49:24 2010 +0200 PNPACPI: Add support for remote wakeup This patch (as1354) adds remote-wakeup support to the pnpacpi driver. The new can_wakeup method also allows other PNP protocol drivers (pnpbios or iaspnp) to add wakeup support, but I don't know enough about how they work to actually do it. Signed-off-by: Alan Stern Reviewed-by: Bjorn Helgaas Signed-off-by: Rafael J. Wysocki commit 2430d12c94ff2bafcfe4f65edf7ee5f300d2d9c6 Author: Alan Stern Date: Sun Jun 13 00:36:52 2010 +0200 PM: describe kernel policy regarding wakeup defaults (v. 2) This patch (as1381b) updates a comment describing the kernel's policy toward enabling wakeup by default. It also makes device_set_wakeup_capable() actually do something when CONFIG_PM isn't enabled. It's not clear this is necessary; however if it isn't then device_init_wakeup() and device_can_wakeup() should also be do-nothing routines. Furthermore, I don't expect this change to have any noticeable effect -- but if it does then clearly the old behavior was wrong. Signed-off-by: Alan Stern Signed-off-by: Rafael J. Wysocki commit 90133673395849c9d4e66a563f2d0d91d92aa461 Author: Cesar Eduardo Barros Date: Mon Jun 7 22:23:12 2010 +0200 PM / Hibernate: Fix typos in comments in kernel/power/swap.c There are a few typos in kernel/power/swap.c. Fix them. Signed-off-by: Cesar Eduardo Barros Acked-by: Pavel Machek Signed-off-by: Rafael J. Wysocki commit ad1afb00393915a51c21b1ae8704562bf036855f Author: Pedro Garcia Date: Sun Jul 18 15:38:44 2010 -0700 vlan_dev: VLAN 0 should be treated as "no vlan tag" (802.1p packet) - Without the 8021q module loaded in the kernel, all 802.1p packets (VLAN 0 but QoS tagging) are silently discarded (as expected, as the protocol is not loaded). - Without this patch in 8021q module, these packets are forwarded to the module, but they are discarded also if VLAN 0 is not configured, which should not be the default behaviour, as VLAN 0 is not really a VLANed packet but a 802.1p packet. Defining VLAN 0 makes it almost impossible to communicate with mixed 802.1p and non 802.1p devices on the same network due to arp table issues. - Changed logic to skip vlan specific code in vlan_skb_recv if VLAN is 0 and we have not defined a VLAN with ID 0, but we accept the packet with the encapsulated proto and pass it later to netif_rx. - In the vlan device event handler, added some logic to add VLAN 0 to HW filter in devices that support it (this prevented any traffic in VLAN 0 to reach the stack in e1000e with HW filter under 2.6.35, and probably also with other HW filtered cards, so we fix it here). - In the vlan unregister logic, prevent the elimination of VLAN 0 in devices with HW filter. - The default behaviour is to ignore the VLAN 0 tagging and accept the packet as if it was not tagged, but we can still define a VLAN 0 if desired (so it is backwards compatible). Signed-off-by: Pedro Garcia Signed-off-by: David S. Miller commit 01893c82b4e6949f4e3a453c4faea34970359d76 Author: Tetsuo Handa Date: Sun Jul 18 15:29:14 2010 -0700 net: Remove MAX_SOCK_ADDR constant MAX_SOCK_ADDR is no longer used because commit 230b1839 "net: Use standard structures for generic socket address structures." replaced "char address[MAX_SOCK_ADDR];" with "struct sockaddr_storage address;". Signed-off-by: Tetsuo Handa Signed-off-by: David S. Miller commit 0a6efc78c0c22d60040da0dc98a0844e7c0d0647 Author: Dan Carpenter Date: Sat Jul 17 07:21:28 2010 +0000 arcnet: fix signed bug in probe function probe_irq_off() returns the first irq found or if two irqs are found then it returns the negative of the first irq found. We can cast dev->irq to an int so that the test for negative values works. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 8e64159dfb480b30233d947d5a3cd793dfea738f Author: Kulikov Vasiliy Date: Sat Jul 17 05:21:00 2010 +0000 net: dccp: fix sign bug 'gap' is unsigned, so this code is wrong: gap = -new_head; ... if (gap > 0) { ... } Make 'gap' signed. The semantic patch that finds this problem (many false-positive results): (http://coccinelle.lip6.fr/) // @ r1 @ identifier f; @@ int f(...) { ... } @@ identifier r1.f; type T; unsigned T x; @@ *x = f(...) ... *x > 0 Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit bfc978fa5f3005e5dfb39c52393c3339f4f00233 Author: Amit Kumar Salecha Date: Sun Jul 18 14:51:59 2010 -0700 qlcnic: fix pci resource leak pci_get_domain_bus_and_slot: caller must decrement the reference count by calling pci_dev_put(). Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 4a1745fc54e22e9fa928d72f97ee0e91449c9fd0 Author: Shreyas Bhatewara Date: Thu Jul 15 21:51:14 2010 +0000 net-next: vmxnet3 fixes [3/5] Initialize link state at probe time This change initializes the state of link at the time when driver is loaded. The ethtool output for 'link detected' and 'link speed' is thus valid even before the interface is brought up. Signed-off-by: Shreyas Bhatewara Signed-off-by: David S. Miller commit 36227e88c2563de73f748aa7d85fffd7afffc1fb Author: Stanislaw Gruszka Date: Thu Jul 15 04:25:50 2010 +0000 bnx2: use device model DMA API Use DMA API as PCI equivalents will be deprecated. This change also allow to allocate with GFP_KERNEL in some places. Signed-off-by: Stanislaw Gruszka Acked-by: Michael Chan Signed-off-by: David S. Miller commit a2df00aa33f741096e977456573ebb08eece0b6f Author: Stanislaw Gruszka Date: Thu Jul 15 22:55:40 2010 +0000 bnx2: allocate with GFP_KERNEL flag on RX path init Signed-off-by: Stanislaw Gruszka Acked-by: Michael Chan Signed-off-by: David S. Miller commit d161edfbf20597752e315e60e31026393680485a Author: Linus Walleij Date: Sat Jul 17 12:34:25 2010 +0100 ARM: 6215/2: add character LCD platform data for RealView and Versatile This adds some platform data for the character LCD found in the RealView and Versatile reference designs from ARM. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 4037242c4f5ff77afe61bf07ca1e8a99490219e5 Author: Ryan Mallon Date: Tue Jul 13 05:09:16 2010 +0100 ARM: 6209/3: at91_udc: Add vbus polarity and polling mode Allow the vbus signal to optionally use polling. This is required if the vbus signal is connected to an non-interrupting io expander for example. If vbus is in polling mode, then it is assumed that the vbus gpio may sleep. Also add an option to have vbus be an active low signal. Both options are set in the platform data for the device. Signed-off-by: Ryan Mallon Acked-by: Nicolas Ferre Signed-off-by: Russell King commit 07d2a5c721c6aa2bd69812a74c8b3b116abf3e56 Author: Linus Walleij Date: Mon Jul 12 21:52:34 2010 +0100 ARM: 6224/1: print TCM whereabouts in init message If TCM is in use, we should display it in the virtual memory layout along with everything else. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 598509779e5b8037d371df764d7438744a24b61f Author: Linus Walleij Date: Mon Jul 12 21:51:41 2010 +0100 ARM: 6223/1: support multiple TCM banks CPUs v6 and up support multiple TCM banks, for example an ITCM of 8k is supplied in two 4k banks. This makes the TCM work on the 1176JZF-S devchip. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit cb9d7707cd9be57830f31616233f6a872ca8416d Author: Linus Walleij Date: Mon Jul 12 21:50:59 2010 +0100 ARM: 6222/1: add memory types for the TCMs The earlier TCM memory regions were mapped as MT_MEMORY_UNCACHED which doesn't really work on platforms supporting the new v6 features like the NX bit. Add unique MT_MEMORY_[I|D]TCM types instead. Cc: Nicolas Pitre Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 50e8ce14698273d3c493b2e66f323f6b18eac099 Author: Kulikov Vasiliy Date: Fri Jul 16 20:16:54 2010 +0400 ASoC: imx: check kzalloc() result and fix memory leak If kzalloc() fails we must exit with -ENOMEM. Also we must free allocated runtime->private_data on error as it would be lost on next call to snd_imx_open(). Signed-off-by: Kulikov Vasiliy Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 51b6dfb627d785ee92c2bd1e159e2de47cdc29c3 Author: Kulikov Vasiliy Date: Fri Jul 16 20:16:34 2010 +0400 ASoC: imx: check kzalloc() result and fix memory leak If kzalloc() fails we must exit with -ENOMEM. Also we must free allocated runtime->private_data on error as it would be lost on next call to snd_imx_open(). Signed-off-by: Kulikov Vasiliy Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 55938b106ff4028f9e8b23b1bcb16d7cd615bee7 Author: Kulikov Vasiliy Date: Fri Jul 16 20:16:17 2010 +0400 ASoC: davinci: check kzalloc() result (typo) The code checks 'davinci_vc' after kzalloc() and do not checks 'davinci_vcif_dev' that kzalloc() result is assigned to. It seems that it is a typo (autocompletion?). Signed-off-by: Kulikov Vasiliy Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 3c2ef841c0e27f37923ed15dc5d744cd6ba704ae Author: Kuninori Morimoto Date: Fri Jul 16 19:51:06 2010 +0900 ASoC: fsi: Add specified ID for soc-audio Specified ID is necessary, when some codecs are used with FSI. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit cc5edb0eb9ce892b530e34a5d110382483587942 Author: Arnaldo Carvalho de Melo Date: Fri Jul 16 12:35:07 2010 -0300 perf hists: Factor out duplicated code Introducing hists__remove_entry_filter. Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit d9478374106741d539d6b002e5e747d1ca9e4032 Merge: 5164d74 3c07093 Author: Mark Brown Date: Sat Jul 17 19:45:43 2010 +0100 Merge branch 'for-2.6.35' into for-2.6.36 commit b66ecd97c1866f9a869643a5b69a984d5ce8f8f1 Author: Arnaldo Carvalho de Melo Date: Thu Jul 15 07:24:30 2010 -0300 perf ui: Make ui_browser__run exit on unhandled hot keys Right now ENTER doesn't always exits the newt tree widget, as it is used for expanding/collapsing branches, but with the new tree widget being developed we need to regain control to handle it, expanding/collapsing branches. In fact its really up to the ui_browser user to state what extra keys should stop ui_browser__run, and it should handle just the ones needed for basic browsing. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian Signed-off-by: Arnaldo Carvalho de Melo commit 63f20e744a595444f7ab1d47a29c5b74830feb47 Author: Arnaldo Carvalho de Melo Date: Thu Jul 15 07:21:07 2010 -0300 perf ui: Make END go to the last entry, not the top of the last page Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 0fad4ed7b230f593539b2da9cadbb77cb3a3131a Author: Jorge Eduardo Candelaria Date: Thu Jul 15 11:38:01 2010 -0500 ASoC: TWL6040: Correct widget handling for drivers In order to reduce pop-noise at powering up/down of the DACs and Drivers, these components have to be handled in a specific sequence. Headset, Handsfree, and Earphone drivers are now registered as PGA components to ensure DACs are enabled first. Also, add a delay to leave time for DACs to settle before continuing power up/down sequence. Signed-off-by: Jorge Eduardo Candelaria Signed-off-by: Margarita Olaya Cabrera Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit b807b8a16bee27eb93a3393c173ce209a992ef18 Author: Wey-Yi Guy Date: Wed Jul 7 08:26:45 2010 -0700 iwlwifi: "recover_from_tx_stall" function for 4965 "Recover from tx stall" function is available for all devices except 4965, here add the functionality to 4965. Signed-off-by: Wey-Yi Guy commit 9cae611ff2184878daa162b5322e9a9443ae3b47 Author: Wey-Yi Guy Date: Tue Jul 6 10:39:33 2010 -0700 iwlwifi: more statistics counter for agn in debugfs Display "wait_for_silence_timeout_cnt" for _agn devices in debugfs as part of uCode statistics Signed-off-by: Wey-Yi Guy commit 7c094c5cc4d28062abf0d33ca022dbea6c522558 Author: Wey-Yi Guy Date: Tue Jul 6 10:39:32 2010 -0700 iwlwifi: additional statistic debug counter Add wait_for_silence_timeout_cnt to statistics_dbg structure Signed-off-by: Wey-Yi Guy commit 68c38fc3cb4e5a60f502ee9c45f3dfe70e5165ad Author: Pekka Enberg Date: Thu Jul 15 23:18:22 2010 +0300 sched: No need for bootmem special cases As of commit dcce284 ("mm: Extend gfp masking to the page allocator") and commit 7e85ee0 ("slab,slub: don't enable interrupts during early boot"), the slab allocator makes sure we don't attempt to sleep during boot. Therefore, remove bootmem special cases from the scheduler and use plain GFP_KERNEL instead. Signed-off-by: Pekka Enberg Cc: Peter Zijlstra LKML-Reference: <1279225102-2572-1-git-send-email-penberg@cs.helsinki.fi> Signed-off-by: Ingo Molnar commit 396e894d289d69bacf5acd983c97cd6e21a14c08 Author: Peter Zijlstra Date: Fri Jul 9 15:12:27 2010 +0200 sched: Revert nohz_ratelimit() for now Norbert reported that nohz_ratelimit() causes his laptop to burn about 4W (40%) extra. For now back out the change and see if we can adjust the power management code to make better decisions. Reported-by: Norbert Preining Signed-off-by: Peter Zijlstra Acked-by: Mike Galbraith Cc: Arjan van de Ven LKML-Reference: Signed-off-by: Ingo Molnar commit bbc8cb5baead9607309583b20873ab0cc8d89eaf Author: Peter Zijlstra Date: Fri Jul 9 15:15:43 2010 +0200 sched: Reduce update_group_power() calls Currently we update cpu_power() too often, update_group_power() only updates the local group's cpu_power but it gets called for all groups. Furthermore, CPU_NEWLY_IDLE invocations will result in all cpus calling it, even though a slow update of cpu_power is sufficient. Therefore move the update under 'idle != CPU_NEWLY_IDLE && local_group' to reduce superfluous invocations. Reported-by: Venkatesh Pallipadi Signed-off-by: Peter Zijlstra Acked-by: Suresh Siddha LKML-Reference: <1278612989.1900.176.camel@laptop> Signed-off-by: Ingo Molnar commit 5343bdb8fd076f16edc9d113a9e35e2a1d1f4966 Author: Suresh Siddha Date: Fri Jul 9 15:19:54 2010 +0200 sched: Update rq->clock for nohz balanced cpus Suresh spotted that we don't update the rq->clock in the nohz load-balancer path. Signed-off-by: Peter Zijlstra LKML-Reference: <1278626014.2834.74.camel@sbs-t61.sc.intel.com> Signed-off-by: Ingo Molnar commit 31a05a4127c81d5d7f095c609420bf6df892a8b0 Merge: 8217563 eb878b3 Author: Ingo Molnar Date: Sat Jul 17 12:00:25 2010 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core commit 5ccd4302a20bfe56eb72a5e27ad0be046fc820a5 Author: Nicolas Pitre Date: Fri Jul 16 22:51:10 2010 -0400 [ARM] Kirkwood: add missing machine targets to defconfig Signed-off-by: Nicolas Pitre commit 3aa2c8c6a4ee77f1106cfbc537cdf970ee217d2f Author: Martin Michlmayr Date: Fri Jul 16 16:31:51 2010 +0100 [ARM] Orion: DNS-323 C1 requires phylib The code to support the DNS-323 rev C1 added a call to phy_register_fixup_for_uid() and therefore phylib has to be built in. Signed-off-by: Martin Michlmayr Signed-off-by: Nicolas Pitre commit 2641375d6de0885dd26ee0edd0cf00282e3324d5 Author: Simon Guinot Date: Tue Jul 6 16:08:47 2010 +0200 [ARM] Kirkwood: update LED support for Network Space v2 Signed-off-by: Simon Guinot Signed-off-by: Nicolas Pitre commit 11efe71f6564e59ba9acfc636ac6f423e059dc69 Author: Simon Guinot Date: Tue Jul 6 16:08:46 2010 +0200 leds: add LED driver for Network Space v2 LEDs This patch add a LED class driver for the dual-GPIO LEDs found on the Network Space v2 board (and parents). This include Internet Space v2, Network Space (Max) v2 and d2 Network v2 boards. This dual-GPIO LED is wired to a CPLD and can blink in relation with the SATA activity. The driver expose this capability through a "sata" sysfs attribute. Signed-off-by: Simon Guinot Signed-off-by: Nicolas Pitre commit b6a044ff5757b22572ac3f3ccd006fb052b27b77 Author: Simon Guinot Date: Mon Jul 5 12:31:04 2010 +0200 [ARM] Kirkwood: add LaCie Network Space Max v2 support Signed-off-by: Simon Guinot Signed-off-by: Nicolas Pitre commit a87182b3d12e0f6b8cca1731a95bec24269f53ad Author: Nicolas Pitre Date: Mon Jul 5 13:59:56 2010 -0400 [ARM] Kirkwood: more factorization of the PCIe init code Signed-off-by: Nicolas Pitre commit 16bc90af15da228f396b3dcd1f461663b0dde6a3 Author: Saeed Bishara Date: Thu May 6 16:12:06 2010 +0300 [ARM] Dove: platform device registration for the sdio interfaces Signed-off-by: Saeed Bishara Signed-off-by: Nicolas Pitre commit ffd58bd2e45168de21d257d26ee32843b286d3b3 Author: Saeed Bishara Date: Tue Jun 8 14:21:34 2010 +0300 [ARM] Kirkwood: add support for PCIe1 This patch extends the kirkwood's PCIe support up to 2 controllers as in the 6282 devices. Signed-off-by: Saeed Bishara Signed-off-by: Nicolas Pitre commit 35fe2fc44ac4202261317ccce2ef69991bc01c57 Author: Saeed Bishara Date: Thu Jun 3 14:58:46 2010 +0300 [ARM] PCI: add platform private data to pci_sys_data Add private_data pointer to the pci_sys_data, this pointer can be used for holding platform specific data for each pci controller. Signed-off-by: Saeed Bishara Signed-off-by: Nicolas Pitre commit 1e4d2d3da3bd0ccd3b6cb2b77624fd9233ca0a88 Author: Saeed Bishara Date: Tue Jun 1 18:09:27 2010 +0300 [ARM] Kirkwood: Add support for 88f6282 The 6282 SoC is compatible to 6280 and features faster CPU, DDR3, additional PCIe interface, and LCD controller. More information can be found here: http://www.marvell.com/products/processors/embedded/armada_300/armada_310.pdf Signed-off-by: Saeed Bishara Signed-off-by: Nicolas Pitre commit 1c2003a1d6445f939c8628116452c7bbeff6759c Author: Saeed Bishara Date: Tue Jun 1 18:09:26 2010 +0300 [ARM] Kirkwood: add support for rev A1 of the 88f6192 and 88f6180 chips. Signed-off-by: Saeed Bishara Signed-off-by: Nicolas Pitre commit 29333cfae728de0ff0dd09a476b97ea49ce9eedb Author: Saeed Bishara Date: Tue Jun 8 14:30:37 2010 +0300 [ARM] Kirkwood: configure NAND mpp's for db88f6281 In case the board is configured to boot from spi flash, the mpps will not be configured to select the NAND I/Os. This patch makes sure to select the NAND I/O's regardless to the boot device type. Signed-off-by: Saeed Bishara Signed-off-by: Nicolas Pitre commit 445f12dca8f06113caa775315bff574dee72b27d Author: Benjamin Herrenschmidt Date: Mon Jun 21 13:22:08 2010 +1000 [ARM] orion5x: Fix soft-reset for some platforms Some platforms, such as the DNS-323 rev C requires the soft reset line to be toggled on and back off for the reset to work. Note: The choice of 200ms delay comes from the 2.6.12 based vendor kernel. It seems to be a -lot- though and I had my device working fine with much smaller delays but better safe... Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Nicolas Pitre commit 6e2daa49420777190c133d7097dd8d5c05b475ac Author: Benjamin Herrenschmidt Date: Mon Jun 21 13:21:53 2010 +1000 [ARM] orion5x: Base support for DNS-323 rev C1 This patch adds the base support for this new HW revision to the existing dns323-setup.c file. The SoC seems to be the same as rev B1, the GPIOs are all wired differently though and the fan control isn't i2c based anymore. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Nicolas Pitre commit 2f495c398edca50ac251c134f1995a2fb3c06cb7 Author: Benjamin Herrenschmidt Date: Mon Jun 21 13:20:46 2010 +1000 net/phy/marvell: Expose IDs and flags in a .h and add dns323 LEDs setup flag This moves the various known Marvell PHY IDs to include/linux/marvell_phy.h along with dev_flags definitions for use by the driver. I then added a flag that changes the PHY init code to setup the LEDs config to the values needed to operate a dns323 rev C1 NAS. I moved the existing "resistance" flag to the .h as well, though I've been unable to find whoever sets this to convert it to use that constant. Signed-off-by: Benjamin Herrenschmidt Reviewed-by: Wolfram Sang Acked-by: David S. Miller Signed-off-by: Nicolas Pitre commit 43b56074b69f3b6d0296e7986e792c7adb1d89c6 Author: Dmytro Milinevskyy Date: Thu Jun 10 22:12:55 2010 +0300 [ARM] Marvell OpenRD-Ultimate machine support This patch adds support for the OpenRD Ultimate machine (could be found at http://www.arm.linux.org.uk/developer/machines/list.php?id=2884) Signed-off-by: Dmytro Milinevskyy Acked-by: Lennert Buytenhek Signed-off-by: Nicolas Pitre commit 21f0ba90a447090153edeaf2f14f9f7e8bd9bc80 Author: Olaf Rempel Date: Tue Jun 8 22:32:38 2010 +0200 [ARM] orion/kirkwood: reset PCIe unit on boot Patch found in QNAPs vendor source package, with some cleanups (proper defines, shortened max. timeout from 1s to 200ms). Without this patch the PCIe SATA controller (Marvell 88sx7042/sata_mv) in my QNAP TS-419P (Marvell 88f6281/Kirkwood) stops working after a few minutes. The symptomes are described in this thread: http://marc.info/?l=linux-ide&m=124822863706181&w=2 [ Note: this is a workaround in need of a better analysis/solution -- NP ] Acked-by: Saeed Bishara Tested-by: Bernhard R. Link Seconded-by: Martin Michlmayr I'm_not_very_happy_with_it-by: Lennert Buytenhek Signed-off-by: Nicolas Pitre commit 6f2b186a0f1e70be411ca260d4577f1ed35d58e0 Author: Nicolas Pitre Date: Mon Jun 21 23:29:28 2010 -0400 [ARM] Kirkwood: fix HP t5325 after commit 6605742f2a Signed-off-by: Nicolas Pitre commit b529ee4acfc65ecf4517ad4f22023d6a58e671a6 Author: Martin Michlmayr Date: Sun Jun 13 20:00:16 2010 +0100 [ARM] Kirkwood: Add support for HP t5325 Thin Client Add support for the HP t5325 Thin Client. This thin client is based on a Marvell Kirkwood chip at 1.2 GHz and features 512 MB RAM, 512 MB SATA-attached flash and an XGI Volari Z11 GPU. Signed-off-by: Martin Michlmayr Signed-off-by: Nicolas Pitre commit 128190ebe92fee69f26d225036ba857e0fffb2e8 Author: Martin Michlmayr Date: Sun Jun 13 19:37:18 2010 +0100 [ARM] Kirkwood: Add MPP44 (board ID) on TS-219 MPP44 can be used to differentiate between one-bay (TS-11x) and two-bay (TS-21x) devices. According to an engineer from QNAP, the setting of MPP44 depends on the firmware rather than hardware. Presumably, this means that you could fake the MPP44 value by changing the boot loader. Signed-off-by: Martin Michlmayr Signed-off-by: Nicolas Pitre commit 266a2458ceb80d9729cd6da9c1b707f69cff13ad Author: Benjamin Zores Date: Tue Jun 8 10:00:22 2010 +0200 [ARM] Kirkwood: update MPP definition. Add MPP definitions for Marvell Kirkwood 88F6282 revision. Update some defines to reflect datasheet's MPP names. Signed-off-by: Benjamin Zores Signed-off-by: Nicolas Pitre commit f8e00530a04f384f96445cf03f203862caeb507f Author: Martin Michlmayr Date: Fri Mar 26 11:20:00 2010 +0100 [ARM] orion5x: Set links to solid on D-Link DNS-323 Among other changes, commit b2a731aa ("D-link DNS-323 revision A1 power LED") changed the default behaviour of the power LED from solid to blinking. This was done to match the original DNS-323 firmware which blinks during the boot process and sets the LED to solid when booting has completed. However, the downside of this behaviour is that it requires userland code to change the LED, even for those who don't care about the behaviour of the original firmware. Therefore, change it to solid again and let those who care about the original behaviour change the behaviour from userland. Signed-off-by: Martin Michlmayr Signed-off-by: Nicolas Pitre commit 9e1d9345ffaa4e07c326cdb86f50d58bfabe093d Author: Martin Michlmayr Date: Tue May 25 18:20:14 2010 +0100 [ARM] Kirkwood: Fix explanation of MPP45 for QNAP TS41x On the QNAP TS-41x, MPP45 is used to show the setting of jumper JP1. Fix the documentation to explain what the settings really indicate. Signed-off-by: Martin Michlmayr Signed-off-by: Nicolas Pitre commit f9afdd376b297092fa58254309b9c3cb9dfac698 Author: Martin Michlmayr Date: Sat May 22 02:23:10 2010 +0100 [ARM] Kirkwood: Export GPIO indicating jumper setting of JP1 Export GPIO 45 which is used to indicate the setting of the JP1 jumper. This is useful for userland tools, such as qcontrol, to see whether the LCD or a serial console is connected. Signed-off-by: Martin Michlmayr Signed-off-by: Nicolas Pitre commit d9ad1401280c5ca48075b1960b1602037e110cb7 Author: Arnaud Patard Date: Wed May 12 17:37:08 2010 +0200 [ARM] qnap tsx1x: fix section mismatch Fix the following warning : WARNING: vmlinux.o(.text+0x95a0): Section mismatch in reference from the function qnap_tsx1x_register_flash() to the (unknown reference) .init.data:(unknown) The function qnap_tsx1x_register_flash() references the (unknown reference) __initdata (unknown). This is often because qnap_tsx1x_register_flash lacks a __initdata annotation or the annotation of (unknown) is wrong. Signed-off-by: Arnaud Patard Signed-off-by: Martin Michlmayr Signed-off-by: Nicolas Pitre commit 088c87262bbc39a01ebcd70817d35616785908b1 Author: John W. Linville Date: Thu Jul 15 16:16:17 2010 -0400 mac80211: improve error checking if WEP fails to init Do this by poisoning the values of wep_tx_tfm and wep_rx_tfm if either crypto allocation fails. Reported-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 48d5548fc5e5ad79ca98a287b67f403834929739 Author: Dan Carpenter Date: Thu Jul 15 10:23:10 2010 +0200 orinoco_usb: potential null dereference Smatch complains that "upriv->read_urb" gets dereferenced before checking for NULL. It turns out that it's possible for "upriv->read_urb" to be NULL so I added checks around the dereferences. Also I remove an "if (upriv->bap_buf != NULL)" check because "kfree(NULL) is OK. Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit 9171acc7e094b3ca88e624f39891a4f3bf9d083c Author: Luis R. Rodriguez Date: Wed Jul 14 20:08:41 2010 -0400 ath9k_hw: Fix AR9003 MPDU delimeter CRC check for middle subframes An A-MPDU may contain several subframes each containing its own CRC for the data. Each subframe also has a respective CRC for the MPDU length and 4 reserved bits (aka delimeter CRC). AR9003 will ACK frames that have a valid data CRC but have failed to pass the CRC for the MPDU length, if and only if the subframe is not the last subframe in an A-MPDU and if an OFDM phy OFDM reset error has been caught. Discarding those subframes results in packet loss under heavy stress conditions, an example being UDP video. Since the frames are ACK'd by hardware we need to let these frames through and process them as valid frames. Cc: Tushit Jain Cc: Kyungwan Nam Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 15804e3e9de52f1baefad34233424488b5672853 Author: Christian Lamparter Date: Fri Jul 16 13:01:24 2010 +0200 mac80211: skip HT parsing if HW does not support HT This patch will also fix the odd freeze which occurred when minstrel_ht connects to an 802.11n network with legacy hardware. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 9edd9520a2c664c6d72dca68adddd243d00006e8 Author: Luis R. Rodriguez Date: Tue Jul 13 21:27:25 2010 -0400 ath9k_htc: make ath9k_htc_tx_aggr_oper() static This fixes this sparse complaint: CHECK drivers/net/wireless/ath/ath9k/htc_drv_main.c drivers/net/wireless/ath/ath9k/htc_drv_main.c:441:5: warning: symbol 'ath9k_htc_tx_aggr_oper' was not declared. Should it be static? Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 1c689cbcf2c2b7a35cd237abddd9206bb1b6fee1 Author: Kulikov Vasiliy Date: Fri Jul 16 20:13:02 2010 +0400 arch/tile: check kmalloc() result If kmalloc() fails exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy Acked-by: Chris Metcalf commit 8217563359878d11ef03cc76bc935ada89d73efd Author: Masami Hiramatsu Date: Fri Jul 9 18:29:17 2010 +0900 perf probe: Fix the logic of die_compare_name Invert the return value of die_compare_name(), because it returns a 'bool' result which should be expeced true if the die's name is same as compared string. LKML-Reference: <4C36EBED.1000006@hitachi.com> Cc: Arnaldo Carvalho de Melo Cc: Ingo Molnar Signed-off-by: Masami Hiramatsu Signed-off-by: Arnaldo Carvalho de Melo commit 6a330a3c8a648916b3c6bda79a78c38ac093af17 Author: Masami Hiramatsu Date: Fri Jul 9 18:29:11 2010 +0900 perf probe: Support comp_dir to find an absolute source path Gcc generates DW_AT_comp_dir and stores relative source path if building kernel without O= option. In that case, perf probe --line sometimes doesn't work without --source option, because it tries to access relative source path. This adds DW_AT_comp_dir support to perf probe for finding an absolute source path when no --source option. LKML-Reference: <4C36EBE7.3060802@hitachi.com> Cc: Ingo Molnar Signed-off-by: Masami Hiramatsu Signed-off-by: Arnaldo Carvalho de Melo commit 7cf0b79e6ffd04bba5d4e625a0fe2e30a5b383e5 Author: Masami Hiramatsu Date: Fri Jul 9 18:28:59 2010 +0900 perf probe: Fix error message if get_real_path() failed Perf probe -L shows incorrect error message (Dwarf error) if it fails to find source file. This can confuse users. # ./perf probe -s /nowhere -L vfs_read Debuginfo analysis failed. (-2) Error: Failed to show lines. (-2) With this patch, it shows correct message. # ./perf probe -s /nowhere -L vfs_read Failed to find source file. (-2) Error: Failed to show lines. (-2) LKML-Reference: <4C36EBDB.4020308@hitachi.com> Cc: Chase Douglas Cc: Arnaldo Carvalho de Melo Cc: Ingo Molnar Acked-by: Chase Douglas Signed-off-by: Masami Hiramatsu Signed-off-by: Arnaldo Carvalho de Melo commit 22cb516696304a9b85892b18c483a27d97cfa51b Author: Michael S. Tsirkin Date: Fri Jul 16 14:08:20 2010 +0200 netfilter: correct CHECKSUM header and export it Signed-off-by: Michael S. Tsirkin Signed-off-by: Patrick McHardy commit e910b63d009701ad4ebbeb089aba35707fa5d68e Merge: 2f7989e c9c6fe5 Author: Russell King Date: Fri Jul 16 11:08:33 2010 +0100 Merge branch 'l7200' into devel Conflicts: arch/arm/configs/lusl7200_defconfig commit 3abe9d33b382cb9eee7bfee8d90b10078f4baa4d Author: Russell King Date: Thu Mar 25 17:02:59 2010 +0000 ARM: early_alloc() Add a common early allocator function, in preparation for switching over to LMB. When we do, this function will need to do a little more than just allocating memory; we need it zero initialized too. Signed-off-by: Russell King commit 71ee7dad9b69917079f24d42aff796bad7932914 Author: Russell King Date: Sun May 23 10:18:16 2010 +0100 ARM: OMAP: Convert to use ->reserve method to reserve boot time memory Signed-off-by: Russell King commit a1af0fbbbaac595b5bdf5495578d8ddbc6c17e6d Author: Russell King Date: Sat May 22 23:53:45 2010 +0100 ARM: OMAP: Cleanup OMAP FB SDRAM reservation The logic in this file is rather convoluted, but essentially: 1. region type 0 is SDRAM 2. referring to the code fragment if (set_fbmem_region_type(&rg, OMAPFB_MEMTYPE_SDRAM, sdram_start, sdram_size) < 0 || (rg.type != OMAPFB_MEMTYPE_SDRAM)) continue; - if rg.type is not OMAPFB_MEMTYPE_SDRAM, set_fbmem_region_type() returns zero immediately (since rg.type is non-zero), and so we 'continue'. - if rg.type is OMAPFB_MEMTYPE_SDRAM, and rg.paddr is zero, we fall through. - if rg.type is OMAPFB_MEMTYPE_SDRAM, and the region lies within SDRAM, we fall through. - if rg.type is OMAPFB_MEMTYPE_SDRAM, and the region is not within SDRAM, we 'continue'. 3. check_fbmem_region seems unnecessary. - we know rg.type is OMAPFB_MEMTYPE_SDRAM - we can check rg.size independently - bootmem_reserve() can check for overlapping reservations itself - we've already validated that the requested region lies within SDRAM. 4. avoid BUG()ing if the region entry is already set; print an error, and mark the configuration invalid - at least we'll continue booting so the error message has a chance of being logged/visible via serial console. With these changes in place, it makes the code much easier to understand and hence easier to convert to LMB. Signed-off-by: Russell King commit 98c672cf1fa2a56f6f43e3f48b1208b83845582c Author: Russell King Date: Sat May 22 18:18:57 2010 +0100 ARM: Move platform memory reservations out of generic code Move the platform specific bootmem memory reservations out of arch/arm/mm/mmu.c into their respective platform files. Signed-off-by: Russell King commit b65b4781fbd5846a82cdac0c32818af1a7452d1f Author: Russell King Date: Sat May 22 20:58:51 2010 +0100 ARM: Remove 'node' argument form arch_adjust_zones() Since we no longer support discontigmem, node is always zero, so remove this argument. Signed-off-by: Russell King commit be370302742ff9948f2a42b15cb2ba174d97b930 Author: Russell King Date: Fri May 7 17:40:33 2010 +0100 ARM: Remove DISCONTIGMEM support Everything should now be using sparsemem rather than discontigmem, so remove the code supporting discontigmem from ARM. Signed-off-by: Russell King commit 7961239599de71130c852ecfa9a4140f3f60547b Author: Russell King Date: Sat May 22 16:20:14 2010 +0100 ARM: Precalculate vmalloc_min Rather than storing the minimum size of the vmalloc area, store the maximum permitted address of the vmalloc area instead. Signed-off-by: Russell King commit e2768c0c223d86a20ec392528bafd25996ce7585 Author: Eliot Blennerhassett Date: Fri Jul 16 17:51:01 2010 +1200 ALSA: asihpi - Avoid useless assignment of returned index values. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 604a440a9dd08d45570c555d78a17a4602c843d5 Author: Eliot Blennerhassett Date: Fri Jul 16 17:51:00 2010 +1200 ALSA: asihpi - Avoid using c99 uintX types. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 8d4bbee77e63981b91e4af7c569dc6a585ee0eb0 Author: Eliot Blennerhassett Date: Fri Jul 16 17:50:59 2010 +1200 ALSA: asihpi - HPI version 4.04.01 Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit af537b0a6c650ab6ff7104d8163e96866b31c835 Author: Christoph Lameter Date: Fri Jul 9 14:07:14 2010 -0500 slub: Use kmem_cache flags to detect if slab is in debugging mode. The cacheline with the flags is reachable from the hot paths after the percpu allocator changes went in. So there is no need anymore to put a flag into each slab page. Get rid of the SlubDebug flag and use the flags in kmem_cache instead. Acked-by: David Rientjes Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit f5b801ac38a9612b380ee9a75ab1861f0594e79f Author: Christoph Lameter Date: Fri Jul 9 14:07:13 2010 -0500 slub: Allow removal of slab caches during boot If a slab cache is removed before we have setup sysfs then simply skip over the sysfs handling. Cc: Benjamin Herrenschmidt Cc: Roland Dreier Acked-by: David Rientjes Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit d7278bd7d1aab5c6d35fd271eeb860548f0bd0bb Author: Christoph Lameter Date: Fri Jul 9 14:07:12 2010 -0500 slub: Check kasprintf results in kmem_cache_init() Small allocations may fail during slab bringup which is fatal. Add a BUG_ON() so that we fail immediately rather than failing later during sysfs processing. Acked-by: David Rientjes Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit f90ec390148fdbc0db38c477bc6dc94db721e7f1 Author: Christoph Lameter Date: Fri Jul 9 14:07:11 2010 -0500 SLUB: Constants need UL UL suffix is missing in some constants. Conform to how slab.h uses constants. Acked-by: David Rientjes Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 2154a336381f85f5390d9a84c6cf4a7d2847b6ed Author: Christoph Lameter Date: Fri Jul 9 14:07:10 2010 -0500 slub: Use a constant for a unspecified node. kmalloc_node() and friends can be passed a constant -1 to indicate that no choice was made for the node from which the object needs to come. Use NUMA_NO_NODE instead of -1. CC: KAMEZAWA Hiroyuki Signed-off-by: David Rientjes Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit d602dabaeba79df90cc67c32d5fe4ee0d5e2b73a Author: Bob Liu Date: Sat Jul 10 18:05:33 2010 +0800 SLOB: Free objects to their own list SLOB has alloced smaller objects from their own list in reduce overall external fragmentation and increase repeatability, free to their own list also. This is /proc/meminfo result in my test machine: without this patch: === MemTotal: 1030720 kB MemFree: 750012 kB Buffers: 15496 kB Cached: 160396 kB SwapCached: 0 kB Active: 105024 kB Inactive: 145604 kB Active(anon): 74816 kB Inactive(anon): 2180 kB Active(file): 30208 kB Inactive(file): 143424 kB Unevictable: 16 kB .... with this patch: === MemTotal: 1030720 kB MemFree: 751908 kB Buffers: 15492 kB Cached: 160280 kB SwapCached: 0 kB Active: 102720 kB Inactive: 146140 kB Active(anon): 73168 kB Inactive(anon): 2180 kB Active(file): 29552 kB Inactive(file): 143960 kB Unevictable: 16 kB ... The result shows an improvement of 1 MB! And when I tested it on a embeded system with 64 MB, I found this path is never called during kernel bootup. Acked-by: Matt Mackall Signed-off-by: Bob Liu Signed-off-by: Pekka Enberg commit c18fb1396eb809dbc16e51da273a1789f9d799bf Author: Dmitry Torokhov Date: Thu Jul 15 23:28:42 2010 -0700 Input: evdev - signal that device is writable in evdev_poll() Signed-off-by: Dmitry Torokhov commit 4d4bf995ea873cc213c5abc5402af46ef490b8fd Author: Julien Moutinho Date: Thu Jul 15 23:27:56 2010 -0700 Input: mousedev - signal that device is writable in mousedev_poll() The Microsoft ImPS/2 mouse protocol being bidirectionnal (sic) one may have to write in /dev/input/mice; and that works better if select() does not hang. Signed-off-by: Julien Moutinho Signed-off-by: Dmitry Torokhov commit 20da92de8ec3c1d4ba7e5aca322d38b6ce634932 Author: Dmitry Torokhov Date: Thu Jul 15 23:27:36 2010 -0700 Input: change input handlers to use bool when possible Signed-off-by: Dmitry Torokhov commit 72c8a94a585afea1f45aa8c4f6938ed6d05be57a Author: Henrik Rydberg Date: Thu Jul 15 23:22:07 2010 -0700 Input: document the MT event slot protocol This patch adds documentation for the ABS_MT_SLOT event and gives examples of how to use the event slot protocol. Reviewed-by: Ping Cheng Signed-off-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 40d007e7df1dab17bf1ecf91e718218354d963d7 Author: Henrik Rydberg Date: Thu Jul 15 23:10:10 2010 -0700 Input: introduce MT event slots With the rapidly increasing number of intelligent multi-contact and multi-user devices, the need to send digested, filtered information from a set of different sources within the same device is imminent. This patch adds the concept of slots to the MT protocol. The slots enumerate a set of identified sources, such that all MT events can be passed independently and selectively per identified source. The protocol works like this: Instead of sending a SYN_MT_REPORT event immediately after the contact data, one sends an ABS_MT_SLOT event immediately before the contact data. The input core will only emit events for slots with modified MT events. It is assumed that the same slot is used for the duration of an initiated contact. Acked-by: Ping Cheng Acked-by: Chase Douglas Acked-by: Rafi Rubin Signed-off-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 315e8f7501ad929acacfa94c251283e837f281ed Author: Kulikov Vasiliy Date: Thu Jul 15 22:48:19 2010 +0400 ALSA: asihpi: fix sign bug bytes_per_sec is unsigned, so if snd_pcm_format_width() return error we would not see it. Signed-off-by: Kulikov Vasiliy Signed-off-by: Takashi Iwai commit b97d13a53d63c7db1d05d54298c7a12f86c4fbad Author: Casey Leedom Date: Thu Jul 15 22:47:06 2010 -0700 cxgb4vf: fix SGE resource resource deallocation bug Fix SGE resource resource deallocation bug. Forgot to increment the RXQ and TXQ cursors in the loop ... Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 6929fe8a37365148228206eea8577b3524afc463 Author: Ronghua Zang Date: Thu Jul 15 22:18:47 2010 -0700 net-next: vmxnet3 fixes [2/5] Interrupt control bitmap A new bit map 'intrCtrl' is introduced in the DriverShared area. The driver should update VMXNET3_IC_DISABLE_ALL bit before writing IMR. Signed-off-by: Ronghua Zang Signed-off-by: Shreyas Bhatewara Signed-off-by: David S. Miller commit ca802447c0b9dc12a8aa6552c9c7b3c7af31f492 Author: Shreyas Bhatewara Date: Thu Jul 15 22:17:29 2010 -0700 net-next: fix LRO feature update in vmxnet3 Fix LRO feature update. Signed-off-by: Shreyas Bhatewara Signed-off-by: David S. Miller commit f86586fa48a94c7a9c7f36650a2e0e4a947881c9 Author: Eric Dumazet Date: Thu Jul 15 21:41:00 2010 -0700 tcp: sizeof struct tcp_skb_cb is 44 Correct comment stating sizeof(struct tcp_skb_cb) is 36 or 40, since its 44 bytes, since commit 951dbc8ac714b04 ([IPV6]: Move nextheader offset to the IP6CB). Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 6ce28c6f55fe636c322ea909794cf19b20ef4b6b Author: Jon Mason Date: Thu Jul 15 08:47:28 2010 +0000 vxge: Version update Version update Signed-off-by: Jon Mason Signed-off-by: Sreenivasa Honnur Signed-off-by: Ramkrishna Vepa Signed-off-by: David S. Miller commit b2f5a0514cefdbc5c4936373b9a11c1c2026f025 Author: Jon Mason Date: Thu Jul 15 08:47:27 2010 +0000 vxge: Update maintainers information Update and correct maintainers information Signed-off-by: Jon Mason Signed-off-by: Sreenivasa Honnur Signed-off-by: Ramkrishna Vepa Signed-off-by: David S. Miller commit 926bd900b192986ccb742177b1492e8523579a35 Author: Jon Mason Date: Thu Jul 15 08:47:26 2010 +0000 vxge: Update copyright information Update copyright information to reflect the Exar purchase of Neterion Signed-off-by: Jon Mason Signed-off-by: Sreenivasa Honnur Signed-off-by: Ramkrishna Vepa Signed-off-by: David S. Miller commit 98f45da247c5b8023d4f3677d65f21b64692f543 Author: Jon Mason Date: Thu Jul 15 08:47:25 2010 +0000 vxge: NETIF_F_LLTX removal NETIF_F_LLTX and it's usage of local transmit locks are depricated in favor of using the netdev queue's transmit lock. Remove the local lock and all references to it, and use the netdev queue transmit lock in the transmit completion handler. Signed-off-by: Jon Mason Signed-off-by: Ramkrishna Vepa Signed-off-by: David S. Miller commit 7adf7d1b0d50075e252aa82505fb473af38c3f20 Author: Jon Mason Date: Thu Jul 15 08:47:24 2010 +0000 vxge: Fix multicast issues Fix error in multicast flag check, add calls to restore the status of multicast and promiscuous mode settings after change_mtu, and style cleanups to shorten the function calls by using a temporary variable. Signed-off-by: Jon Mason Signed-off-by: Sreenivasa Honnur Signed-off-by: Ramkrishna Vepa Signed-off-by: David S. Miller commit d03848e057cb33ab4261264903b5ebee0738a8dc Author: Jon Mason Date: Thu Jul 15 08:47:23 2010 +0000 vxge: Remove queue_state references Remove queue_state references, as they are no longer necessary. Also, The driver needs to start/stop the queue regardless of which type of steering is enabled. Remove checks for TX_MULTIQ_STEERING only and start/stop for all steering types. Signed-off-by: Jon Mason Signed-off-by: Sreenivasa Honnur Signed-off-by: Ramkrishna Vepa Signed-off-by: David S. Miller commit bb7a0bd600ac2e09a8747ef89e692a2967ed8c97 Author: Kulikov Vasiliy Date: Thu Jul 15 08:47:33 2010 +0000 net: bridge: fix sign bug ipv6_skip_exthdr() can return error code that is below zero. 'offset' is unsigned, so it makes no sense. ipv6_skip_exthdr() returns 'int' so we can painlessly change type of offset to int. Signed-off-by: Kulikov Vasiliy Acked-by: Stephen Hemminger Signed-off-by: David S. Miller commit 2540ddb5124f883bba3d4af5d8920d44dd66e794 Author: Kulikov Vasiliy Date: Thu Jul 15 08:45:57 2010 +0000 drivers: ixgbevf: fix unsigned underflow 'count' is unsigned. It is initialized to zero, then it can be increased multiple times, and finally it is used in such a way: >>>> count--; | | /* clear timestamp and dma mappings for remaining portion of packet */ | while (count >= 0) { | count--; | ... ^ If count is zero here (so, it was never increased), we would have a very long loop :) Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 9f27fb8514d0491f1c12052d78d46946f129b8e1 Author: Kulikov Vasiliy Date: Thu Jul 15 08:45:29 2010 +0000 drivers: irda: fix sign bug platform_get_irq_byname() can return negative results, it is not seen to unsigned irq. Make it signed. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 752ef8b541da2606c5668dcc176e7b16dd68b945 Author: Kulikov Vasiliy Date: Thu Jul 15 08:44:54 2010 +0000 drivers: irda: fix sign bug platform_get_irq_byname() can return negative results, it is not seen to unsigned irq. Make it signed. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit c9741380d32a58d685cfa0aa8d22bdb3bbeeb8aa Author: Andy Shevchenko Date: Thu Jul 15 02:37:20 2010 +0000 drivers: isdn: get rid of custom strtoul() There were two methods isdn_gethex() and isdn_getnum() which are custom implementations of strtoul(). Get rid of them in regard to strict_strtoul() kernel's function. Signed-off-by: Andy Shevchenko Cc: Hansjoerg Lipp Cc: Tilman Schmidt Cc: Karsten Keil Cc: gigaset307x-common@lists.sourceforge.net Cc: netdev@vger.kernel.org Signed-off-by: David S. Miller commit 3944ad6848e7ae15a3402372a2df4ae805008321 Author: Andy Shevchenko Date: Thu Jul 15 02:37:19 2010 +0000 drivers: isdn: remove custom strtoul() In this case we safe to use strict_strtoul(). Signed-off-by: Andy Shevchenko Cc: Karsten Keil Cc: netdev@vger.kernel.org Signed-off-by: David S. Miller commit 735c65ce4a878b55e08821360fdfd42753cdbe14 Author: Andy Shevchenko Date: Thu Jul 15 02:37:18 2010 +0000 drivers: isdn: use kernel macros to convert hex digit Signed-off-by: Andy Shevchenko Cc: Karsten Keil Cc: Tilman Schmidt Cc: netdev@vger.kernel.org Signed-off-by: David S. Miller commit 8f31539dfa36d8cf880576348d149af0cc1d788a Author: Peter Huewe Date: Thu Jul 15 09:07:30 2010 +0000 isdn/hisax: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit 9db9f279be5e663ae0de8b3349f07b38b18e9215 Author: Peter Huewe Date: Thu Jul 15 09:05:38 2010 +0000 mISDN: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit f51307e4aaa1dc233ec852360ea22a2d96ec66dc Author: Peter Huewe Date: Thu Jul 15 09:04:45 2010 +0000 isdn/hardware/eicon: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit d930d1a142af07f25c5cbf33aeea6ebbd25315ce Author: Peter Huewe Date: Thu Jul 15 09:04:07 2010 +0000 mISDN: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit b8176a3f7a4e54a3338535e8c6086713d1c0b804 Author: Peter Huewe Date: Thu Jul 15 09:02:36 2010 +0000 isdn/hardware/mISDN: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit c9634ac1b79bf7b26ceabff16c1fd36943cf5511 Author: Peter Huewe Date: Thu Jul 15 08:49:32 2010 +0000 atm: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit 6df7b80c64a3489782edfdee12c8828bb6a8a317 Author: Peter Huewe Date: Thu Jul 15 08:48:26 2010 +0000 atm: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit e80d3f08e2ff055b060785442a7b47c263d7e978 Author: Peter Huewe Date: Thu Jul 15 08:45:32 2010 +0000 atm: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit fbaab958270f98411fd122b5266627071970c876 Author: Peter Huewe Date: Thu Jul 15 08:44:11 2010 +0000 atm: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit b16170c1ed89c9d1d8872873caea0421cdcf2fd7 Author: Peter Huewe Date: Thu Jul 15 08:42:12 2010 +0000 atm: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit 535222880309ff6861d3aae94c809323d3ca07b1 Author: Peter Huewe Date: Thu Jul 15 08:41:08 2010 +0000 atm: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit 12c8471a1e8af98b7e9a6917c393e0f85b582550 Author: Peter Huewe Date: Thu Jul 15 08:38:20 2010 +0000 atm: Convert pci_table entries to PCI_VDEVICE (if PCI_ANY_ID is used) This patch converts pci_table entries, where .subvendor=PCI_ANY_ID and .subdevice=PCI_ANY_ID, .class=0 and .class_mask=0, to use the PCI_VDEVICE macro, and thus improves readability. Signed-off-by: Peter Huewe Signed-off-by: David S. Miller commit d1853dc8fa8e6478707bf5d8e9d0b949974c2dde Author: Wan ZongShun Date: Tue Jul 13 23:48:45 2010 +0000 net/nuc900: enable Mac driver clock This patch fixed a bug that Mac driver does not work,because I missed the clk enable. I have ever tested the driver when I submitted previous Mac driver patch, and it worked good, since my bootloader has enabled the clock in advance. But when I try to use other bootloader where clock engine was disabled,the Mac driver does not work, so I send this patch to fix this issue. Signed-off-by: Wan ZongShun Signed-off-by: David S. Miller commit 0a645e809759a4b9c876d3e9ca6c139784a97a38 Author: Joe Perches Date: Sat Jul 10 07:22:46 2010 +0000 drivers/net/mlx4: Use %pV, pr_, printk_once Remove near duplication of format string constants by using the newly introduced vsprintf extention %pV to reduce text by 20k or so. $ size drivers/net/mlx4/built-in.o* text data bss dec hex filename 161367 1866 48784 212017 33c31 drivers/net/mlx4/built-in.o 142621 1866 46248 190735 2e90f drivers/net/mlx4/built-in.o.new Use printk_once as appropriate. Convert printks to pr_, some bare printks now use pr_cont. Remove now unused #define PFX. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 9440106b460ddfb7c0ff98beb6a6741f1f67b92b Author: Jerome Glisse Date: Thu Jul 15 15:43:25 2010 -0400 drm: unify crtc,connector,encoder,fb debug printing Unify debug printing so it easier to track what's happening while debugging. Signed-off-by: Jerome Glisse Signed-off-by: Dave Airlie commit eb878b3bc0349344dbf70c51bf01fc734d5cf2d3 Author: Frederic Weisbecker Date: Thu Jul 15 23:52:45 2010 +0200 tracing: Remove letfover markers section Markers have been removed, but we forgot to remove their section. Signed-off-by: Frederic Weisbecker Cc: Steven Rostedt Cc: Ingo Molnar Cc: Mathieu Desnoyers commit 5d550467b9770042e9699690907babc32104a8d4 Author: Frederic Weisbecker Date: Thu Jul 15 23:27:35 2010 +0200 tracing: Remove ksym tracer The ksym (breakpoint) ftrace plugin has been superseded by perf tools that are much more poweful to use the cpu breakpoints. This tracer doesn't bring more feature. It has been deprecated for a while now, lets remove it. Signed-off-by: Frederic Weisbecker Cc: Steven Rostedt Cc: Prasad Cc: Ingo Molnar commit 86a8c63f75a4582c44465e2bf71bc2df175cee77 Author: Frederic Weisbecker Date: Thu Jul 15 23:03:38 2010 +0200 tracing: Update tracing branch url ftrace and perf events now use the same development branch. Don't show a stale branch to developers. Signed-off-by: Frederic Weisbecker Cc: Steven Rostedt Cc: Ingo Molnar commit a8aef622929bbba4d89498fb41dd445c14fae1f7 Author: Oliver Neukum Date: Thu Jul 15 09:21:40 2010 -0700 Input: usbtouchscreen - implement reset_resume This implements reset_resume() by splitting init into allocations of private data structures and device initializations. Device initializations are repeated upon reset_resume. Signed-off-by: Oliver Neukum Tested-by: Petr Štetiar Tested-by: Ondrej Zary Signed-off-by: Dmitry Torokhov commit 5d9efc59e689445f1f8c4eceb125c1a12898e65c Author: Oliver Neukum Date: Thu Jul 15 09:19:51 2010 -0700 Input: usbtouchscreen - implement runtime power management This implement USB autosuspend while the device is opened for devices that do remote wakeup with a fallback to open/close for those devices that don't. Devices that require the host to constantly poll them are never autosuspended. Signed-off-by: Oliver Neukum Tested-by: Petr Štetiar Tested-by: Ondrej Zary Signed-off-by: Dmitry Torokhov commit ed4299e1b173f111ac0c40d6617e47fbff02b52f Author: Oliver Neukum Date: Thu Jul 15 09:16:39 2010 -0700 Input: usbtouchscreen - implement basic suspend/resume This implements basic support for suspend & resume. Signed-off-by: Oliver Neukum Tested-by: Petr Štetiar Tested-by: Ondrej Zary Signed-off-by: Dmitry Torokhov commit b2691085d1f3ccce641dcfdd02722ba5d34db6ba Author: Joe Perches Date: Mon Jun 28 16:46:48 2010 -0700 x86: Clean up arch/x86/kernel/cpu/mtrr/cleanup.c: use ";" not "," to terminate statements Also needed if pr_ becomes a bit more space efficient. Signed-off-by: Joe Perches Acked-by: Thomas Gleixner Cc: "H. Peter Anvin" LKML-Reference: <1277768808.29157.280.camel@Joe-Laptop.home> Signed-off-by: Ingo Molnar commit edf0e1fb0d0910880881523cfaaabcec06a2c0d5 Author: Michael S. Tsirkin Date: Thu Jul 15 17:20:46 2010 +0200 netfilter: add CHECKSUM target This adds a `CHECKSUM' target, which can be used in the iptables mangle table. You can use this target to compute and fill in the checksum in a packet that lacks a checksum. This is particularly useful, if you need to work around old applications such as dhcp clients, that do not work well with checksum offloads, but don't want to disable checksum offload in your device. The problem happens in the field with virtualized applications. For reference, see Red Hat bz 605555, as well as http://www.spinics.net/lists/kvm/msg37660.html Typical expected use (helps old dhclient binary running in a VM): iptables -A POSTROUTING -t mangle -p udp --dport bootpc \ -j CHECKSUM --checksum-fill Includes fixes by Jan Engelhardt Signed-off-by: Michael S. Tsirkin Signed-off-by: Patrick McHardy commit fac42a9a922fe5eb87cac0b597010afb81e7ffe9 Author: Pablo Neira Ayuso Date: Thu Jul 15 17:09:04 2010 +0200 netfilter: nf_ct_tcp: fix flow recovery with TCP window tracking enabled This patch adds the missing bits to support the recovery of TCP flows without disabling window tracking (aka be_liberal). To ensure a successful recovery, we have to inject the window scale factor via ctnetlink. This patch has been tested with a development snapshot of conntrackd and the new clause `TCPWindowTracking' that allows to perform strict TCP window tracking recovery across fail-overs. With this patch, we don't update the receiver's window until it's not initiated. We require this to perform a successful recovery. Jozsef confirmed in a private email that this spotted a real issue since that should not happen. Signed-off-by: Pablo Neira Ayuso Acked-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 1d8c1100fbf956b9c5994077a4d3c6490c23e087 Author: Michael Witten Date: Wed Jul 14 23:54:21 2010 +0000 ALSA: Kconfig: SND_AC97_POWER_SAVE description improvement The description has been expanded to explain the time-out value provided by the power_save module parameter. Signed-off-by: Michael Witten Signed-off-by: Takashi Iwai commit ef6f4b129bbbade7d06b0a9307b605cc78ca4b3b Author: Linus Walleij Date: Wed Jul 14 23:59:27 2010 +0100 ARM: 6228/1: PL022 SSP platform data for the Versatile This adds platform data for the PL022 to the ARM Versatile reference design, and adds the necessary clock definition. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit d6ada8609b8548e528cd91a922338aff7c616820 Author: Linus Walleij Date: Wed Jul 14 23:58:38 2010 +0100 ARM: 6227/1: PL022 SSP platform data for the RealViews This adds platform data for the PL022 to the ARM RealView reference designs, adds the necessary clock definition and fixes a badly defined IRQ line on the PB1176. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit cca5cf91c789f3301cc2541a79c323c53be5a8e1 Author: Pablo Neira Ayuso Date: Thu Jul 15 11:27:41 2010 +0200 nfnetlink_log: do not expose NFULNL_COPY_DISABLED to user-space This patch moves NFULNL_COPY_PACKET definition from linux/netfilter/nfnetlink_log.h to net/netfilter/nfnetlink_log.h since this copy mode is only for internal use. I have also changed the value from 0x03 to 0xff. Thus, we avoid a gap from user-space that may confuse users if we add new copy modes in the future. This change was introduced in: http://www.spinics.net/lists/netfilter-devel/msg13535.html Since this change is not included in any stable Linux kernel, I think it's safe to make this change now. Anyway, this copy mode does not make any sense from user-space, so this patch should not break any existing setup. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 7a53cd16d4d9968d1962e378b14eec2d99aa43e0 Author: Michael Witten Date: Wed Jul 14 23:56:56 2010 +0000 Kconfig: fixo typo in "Xilinx'" Signed-off-by: Michael Witten Signed-off-by: Jiri Kosina commit f1d4c3a76981addcd7669f404f75041435a04e6a Author: Grant Likely Date: Fri Jun 25 12:16:52 2010 -0600 of/flattree: Use common ALIGN() macro instead of arch specific _ALIGN There's no reason to use the powerpc-specific _ALIGN macro in the fdt code. Replace it with ALIGN() from kernel.h Signed-off-by: Grant Likely Acked-By: Jeremy Kerr Acked-by: Benjamin Herrenschmidt commit 596c955c126608b51ac1ca56de9d670c1f6464cb Author: Grant Likely Date: Wed Jul 14 23:51:43 2010 -0600 drivers/of: fix build error when CONFIG_PPC_DCR is set Commit 94c0931983ee9d1cd96c32d52ac64c17464f0bbd (of: Merge of_device_alloc() and of_device_make_bus_id()) moved code that does calls a dcr routine without including the correct header which causes the following build error on some powerpc configurations: drivers/of/platform.c: In function 'of_device_make_bus_id': drivers/of/platform.c:437: error: implicit declaration of function 'of_translate_dcr_address' This patch adds the appropriate header to drivers/of/platform.c Signed-off-by: Grant Likely commit 4cf51c383d7a8d472a6090a0d19c371d40e823c9 Author: Joonyoung Shim Date: Wed Jul 14 21:55:30 2010 -0700 Input: Add ATMEL QT602240 touchscreen driver The chip's full name is AT42QT602240 or ATMXT224. This is a capacitive touchscreen supporting 10-contact multitouch and using I2C interface. Signed-off-by: Joonyoung Shim Acked-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 54874868585ffa5d73d7ab8a5a32ea7dcdec1441 Author: Chihau Chau Date: Wed Jul 14 18:27:09 2010 -0700 Net: ethernet: pe2.c: fix EXPORT_SYMBOL macro code style issue This patch fix a code style issue, if a function is exported, the EXPORT_SYMBOL macro for it should follow immediately after the closing function brace line. Signed-off-by: Chihau Chau Signed-off-by: David S. Miller commit 79236680bde29913dc6bfaf9165973b74223d5f7 Author: Nicolas de Pesloüan Date: Wed Jul 14 18:24:54 2010 -0700 bonding: fix a buffer overflow in bonding_show_queue_id. The test for buffer overflow ensures we have room for 6 more bytes. sprintf, called with %s:%d, slave->dev->name, slave->queue_id may yield far more than 6 bytes. The correct test is res > (PAGE_SIZE - IFNAMSIZ - 6) . Signed-off-by: Nicolas de Pesloüan Signed-off-by: David S. Miller commit 04d5821fa506551afbc072456fecee7b34b2977d Author: Kulikov Vasiliy Date: Wed Jul 14 17:57:19 2010 -0700 eth16i: fix memory leak Free allocated netdev if no probe is expected. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 0eff683f737bf684dc9299e2eaca79cceb80a8c1 Author: Dan Carpenter Date: Wed Jul 14 17:56:37 2010 -0700 net/sched: potential data corruption The reset_policy() does: memset(d->tcfd_defdata, 0, SIMP_MAX_DATA); strlcpy(d->tcfd_defdata, defdata, SIMP_MAX_DATA); In the original code, the size of d->tcfd_defdata wasn't fixed and if strlen(defdata) was less than 31, reset_policy() would cause memory corruption. Please Note: The original alloc_defdata() assumes defdata is 32 characters and a NUL terminator while reset_policy() assumes defdata is 31 characters and a NUL. This patch updates alloc_defdata() to match reset_policy() (ie a shorter string). I'm not very familiar with this code so please review carefully. Signed-off-by: Dan Carpenter Acked-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit f8320f059296eb8cab6e2429c7ec79b43d42cf42 Author: Rajesh Borundia Date: Wed Jul 14 17:55:35 2010 -0700 netxen: fix for kdump When the crash kernel is loaded after crash, the device is in unknown state. So reset the device contexts prior to its creation in case of kdump, depending upon kernel parameter reset_devices. Signed-off-by: Rajesh Borundia Signed-off-by: David S. Miller commit bdb0f8672ff6f601a32df5af40f11526b741985c Author: Kulikov Vasiliy Date: Wed Jul 14 17:53:18 2010 -0700 wd: fix memory leak Unmap mapped IO in wd_probe1() if register_netdev() failed. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 035ebefc737cce56d3938e9b7eaa5ac0e9c28715 Author: Andres Salomon Date: Tue Jul 13 09:42:26 2010 +0000 of/sparc: move is_root_node() to of.h Rename is_root_node() to of_node_is_root() and make it available for all archs to use, as it's not PROM-specific. Signed-off-by: Andres Salomon Acked-by: David S. Miller Signed-off-by: Grant Likely commit 8aa06af4d09b7ca1ca6126b1b8ddec4a9e67fb3a Author: Kulikov Vasiliy Date: Wed Jul 14 08:02:47 2010 +0000 tulip: formatting of pointers in printk() Use %p instead of %08x in printk(). Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit cea8975e84409f01fc4cf92775d2d0028ccc1665 Author: Anirban Chakraborty Date: Tue Jul 13 20:33:35 2010 +0000 qlcnic: restore NPAR config data after recovery o NPAR configuration which is programmed in fw, need to restore after fw recovery. o Update version to 5.0.7 Signed-off-by: Anirban Chakraborty Signed-off-by: Rajesh Borundia Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 451724c821c1fe5af076a0def72362f947e1b6a0 Author: Sucheta Chakraborty Date: Tue Jul 13 20:33:34 2010 +0000 qlcnic: aer support Pci error recovery support added. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 0cf3a14cb2b888a7efa055ff7354e97c59fd48fa Author: Amit Kumar Salecha Date: Tue Jul 13 20:33:33 2010 +0000 qlcnic: fix netdev notifier in error path netdev notifier are not unregistered if pci_register_driver fails. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 0df170b6078c58d1d2118a5f657fe366ecdc1262 Author: Amit Kumar Salecha Date: Tue Jul 13 20:33:32 2010 +0000 qlcnic: disable tx timeout recovery Disable tx timeout recovery, if auto_fw_reset is disable Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 6d181688953465c76c375c665a557c1ff88dcc40 Author: Rajesh Borundia Date: Tue Jul 13 20:33:31 2010 +0000 qlcnic: fix pause params setting Turning off rx pause param and autoneg param is not supported so return error in that case. Signed-off-by: Rajesh Borundia Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 2cb8d9d1da282d4067a9b2dfbf8f7b0bab0c56e7 Author: Christoph Egger Date: Wed Jul 14 13:41:53 2010 -0700 eth_v10: Removing dead ETRAX_NETWORK_RED_ON_NO_CONNECTION ETRAX_NETWORK_RED_ON_NO_CONNECTION doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: David S. Miller commit ef3cf9f2fbef8279a29a027db0d02b56bd0b75f3 Author: Christoph Egger Date: Wed Jul 14 13:40:36 2010 -0700 cs89x0: Removing dead SH_HICOSH4 SH_HICOSH4 doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: David S. Miller commit 7e4ee4d947b8499451705ec8ce419b3321d14edf Author: Christoph Egger Date: Wed Jul 14 13:36:18 2010 -0700 cassini: Removing dead CASSINI_NAPI CASSINI_NAPI doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: David S. Miller commit ff08546b12a6ab3a8a9992627926a03d2176656e Author: Christoph Egger Date: Wed Jul 14 13:35:45 2010 -0700 cassini: Removing dead CASSINI_MULTICAST_REG_WRITE CASSINI_MULTICAST_REG_WRITE doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: David S. Miller commit ea9f3bc6d1d8e2c56225e5be912d035b04740682 Author: Roland Dreier Date: Wed Jul 14 13:29:21 2010 -0700 RDMA/nes: Rewrite expression to avoid undefined semantics Change code like x = expr(++x) that assigns to x twice without a sequence point in between to the intended (and well-defined) x = expr(x + 1) Signed-off-by: Roland Dreier commit f400e5b38a5eeb8a91b481e4f3059611fa4ddce2 Author: Roland Dreier Date: Wed Jul 14 13:25:04 2010 -0700 IB/umad: Remove unused-but-set variable 'already_dead' Signed-off-by: Roland Dreier commit c5f978eddd07aa9e2d4f5b2994ea8c9d4e9109aa Author: Christoph Egger Date: Wed Jul 14 12:18:31 2010 -0700 cassini: Removing dead CASSINI_QGE_DEBUG CASSINI_QGE_DEBUG doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: David S. Miller commit 2a710b59a93d5fa3f02283491084fc37e042fdc1 Author: Christoph Egger Date: Wed Jul 14 12:17:35 2010 -0700 net: Removing dead {AR,WAVE}LAN {AR,WAVE}LAN doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: David S. Miller commit 5164d74d74447895aaa31c094a1b9e666acaa656 Author: Mark Brown Date: Wed Jul 14 16:14:33 2010 +0100 ASoC: Handle read failures in codec_reg When a device is powered down volatile registers can't be read so attempts to display codec_reg will show error values, and obviously it is also possible for there to be hardware errors too. Check for errors from reads and display them more clearly when formatting codec_reg. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 03b0dc02cf54a79d6bc2f49c0005bc07db5120a4 Merge: 0c74a93 cecb66f Author: Mark Brown Date: Wed Jul 14 20:12:57 2010 +0100 Merge branch 'for-2.6.35' into for-2.6.36 commit 70b0d22d581a5deef7b2876b0c3774635b8d846c Author: Yinghai Lu Date: Wed Jul 14 11:26:57 2010 -0700 x86, setup: Only set early_serial_base after port is initialized putchar is using early_serial_base to check if port is initialized. So we only assign it after early_serial_init() is called, in case we need use VGA to debug early serial console. Also add display for port addr and baud. -v2: update to current tip Acked-by: Pekka Enberg Signed-off-by: Yinghai Lu LKML-Reference: <4C3E0171.6050008@kernel.org> Signed-off-by: H. Peter Anvin commit 0e954099b7910524b7fae831fbf2933bd25cb6d0 Author: John W. Linville Date: Wed Jul 14 10:37:32 2010 -0400 iwlwifi: convert new uses of __attribute__ ((packed)) to __packed Signed-off-by: John W. Linville commit beabe91462919efaf4a97b5001d564027a894728 Author: John W. Linville Date: Wed Jul 14 10:37:03 2010 -0400 libertas: convert new uses of __attribute__ ((packed)) to __packed Signed-off-by: John W. Linville commit b3f194e54bdbaa4d508488cab24d23c376e235a2 Author: Bruno Randolf Date: Wed Jul 14 10:53:29 2010 +0900 ath5k: clean up rxlink handling There were a few places where the sc->rxlink pointer was set to NULL "just in case". This helps nothing - quite to the contrary it is problematic since it can create self-linked rx descriptors in the middle of the list of receive buffers. Here is an example how this could happen (thanks Bob!): cpu 0: cpu 1: ath5k_rx_stop ath5k_tasklet_rx sc->rxlink = NULL; /* just in case */ // following doesn't link used // buffer to prev. ath5k_rxbuf_setup() In the case of ath5k_rx_stop() and ath5k_stop_locked() buffers/descriptors are not changed so rxlink should not be changed as well. In ath5k_intr() we seem to try to work around a hardware bug, as the comment (which is copied 1:1 from the HAL) suggests. I don't see how this could help. Also the HAL does not set rxlink in this case (So where does this code come from? It has been there since the first import of ath5k). Changed to just increment a statistics counter. After this patch rxlink is only set to NULL before we initialize rx descriptors and updated when the descriptors are linked together. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 450464def78c94018d997ae6f823578499cdf879 Author: Bob Copeland Date: Tue Jul 13 11:32:41 2010 -0400 ath5k: disable tasklets during reset Based on a patch from Bruno Randolf, attempting useful work while we are resetting the chip just leads to interface lockups and bad descriptor data, and possibly DMAing to freed buffers. Let's suspend all tasklets while reprogramming the registers in the card to avoid such problems. In the future we can convert the tasklets to threaded interrupt handlers to simplify things. Signed-off-by: Bob Copeland Acked-by: Bruno Randolf Signed-off-by: John W. Linville commit 5faaff747710dfb79d5aa72b9faface94ad4b3f3 Author: Bob Copeland Date: Tue Jul 13 11:32:40 2010 -0400 ath5k: move reset to mac80211 workqueue We currently trigger a reset via a tasklet when certain error conditions are detected so that the card will (eventually) restart. Unfortunately this makes locking complicated since reset can also be called in process context (e.g. for channel change). Currently nothing protects against concurrent resets, which can be the source of corruption bugs. Reset takes too long to spinlock the whole thing, so this patch moves deferred resets into the mac80211 workqueue to enable use of sc->lock mutex. Signed-off-by: Bob Copeland Acked-by: Bruno Randolf Signed-off-by: John W. Linville commit da5747eb89eb1511dcfc1d8b32c70370616eac92 Author: Felix Fietkau Date: Tue Jul 13 14:52:30 2010 +0200 ath9k_hw: remove initvals for hardware which was never sold According to documentation, The following chip revisions were never sold: - AR9280 v1.0 - AR9285 v1.0 - AR9285 v1.1 - AR9287 v1.0 Removing initvals specific to these chip revisions saves around 30k in binary size (tested on MIPS). Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit ff4bf917cd4d355f23eea5812a11be5711dcfb8c Author: Kulikov Vasiliy Date: Tue Jul 13 15:23:33 2010 +0400 wireless: airo: delete netdev from list after it is freed We must call del_airo_dev() before free_netdev() since we call add_airo_dev() exactly after alloc_netdev(). Signed-off-by: Kulikov Vasiliy Signed-off-by: John W. Linville commit ccb6c1360f8dd43303c659db718e7e0b24175db5 Author: Johannes Berg Date: Tue Jul 13 10:55:38 2010 +0200 cfg80211: don't get expired BSSes When kernel-internal users use cfg80211_get_bss() to get a reference to a BSS struct, they may end up getting one that would have been removed from the list if there had been any userspace access to the list. This leads to inconsistencies and problems. Fix it by making cfg80211_get_bss() ignore BSSes that cfg80211_bss_expire() would remove. Fixes http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2180 Cc: stable@kernel.org Reported-by: Jiajia Zheng Tested-by: Jiajia Zheng Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 31e79a5954b78fbed15de2c8974d5a2b6019199a Author: Felix Fietkau Date: Mon Jul 12 23:16:34 2010 +0200 ath9k: another fix for the A-MPDU buffer leak The patch 'ath9k: fix a buffer leak in A-MPDU completion' addressed the issue of running out of buffers/descriptors in the tx path if a STA is deleted while tx status feedback is still pending. The remaining issue is that the skbs of the buffers are not reclaimed, leaving a memory leak. This patch fixes this issue by running the buffers through ath_tx_complete_buf(), ensuring that the pending frames counter is also updated. Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit 57674308d00b5ebb639ce53d388e61728e0c7f72 Author: Joe Perches Date: Mon Jul 12 13:50:06 2010 -0700 drivers/net/wireless: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit 447a42c2feb1091f217c1d50000d8cddf39addb5 Author: Rajkumar Manoharan Date: Thu Jul 8 12:12:29 2010 +0530 ath9k: fix panic while cleaning up virtaul wifis num_sec_wiphy means max secondary wifis that the driver can accomudate. So cancelling wiphy work should be based on the presence of secondary wifis. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 6eb90d46c59a75ceeccfef7c6c6705fb64b593dc Author: Pavel Roskin Date: Tue Jul 6 12:51:27 2010 -0400 ath9k: remove unneeded calculation of minimal calibration power Remove tMinCalPower from ath9k_hw_set_def_power_cal_table(), as it's never used. Remove corresponding arguments of the functions calculating that value. Original patch by Prarit Bhargava Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 982723df56ceb6fb0f1e821e4898e58069a1f163 Author: Vivek Natarajan Date: Wed Jun 23 12:08:29 2010 +0530 ath9k: Fix the LED behaviour in idle unassociated state. LED should be ON when the radio is put into FULL SLEEP mode during the idle unassociated state. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit d6f4ceb796ebf1a8c8a9ad4a8ea0d181aaec7de6 Author: Andi Kleen Date: Wed Jul 14 15:43:52 2010 +0200 Kbuild: Add option to set -femit-struct-debug-baseonly Newer gcc has a -femit-struct-debug-baseonly option that dramatically reduces the size of object files with debug info. What it does is to only emit type information for structures when the structures are defined in the same file or in a header file. This means the type information for most headers are not included. This is not good when the type information is actually needed (e.g. with kgdb or systemtap) But often kernel hackers only care about line numbers and don't need all the type information anyways. In this case setting the option can be a big win: A build dir for a specific x86-64 configuration with gcc 4.5 shrunk from 2.3G to 1.2G. The compilation was also nearly a minute faster. Signed-off-by: Andi Kleen [mmarek: reformatted help text] Signed-off-by: Michal Marek commit 992cbf743862916dfbfdd3238fe3fecffbab5dd3 Author: Arnd Bergmann Date: Wed Jul 14 15:11:39 2010 +0200 sound/oss-msnd-pinnacle: ioctl needs the inode This broke in sound/oss: convert to unlocked_ioctl, when I missed one of the ioctl functions still using the inode pointer. Signed-off-by: Arnd Bergmann Signed-off-by: Takashi Iwai commit 2197f9a16df9de94655992941d80953ba47042c2 Author: Steffen Klassert Date: Wed Jul 7 15:34:03 2010 +0200 padata: update documentation This patch updates the padata documentation to the changed API of padata_start/padata_stop and padata_do parallel. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 5f1a8c1bc724498ff32acbd59ed5263275676b9d Author: Steffen Klassert Date: Wed Jul 7 15:32:39 2010 +0200 padata: simplify serialization mechanism We count the number of processed objects on a percpu basis, so we need to go through all the percpu reorder queues to calculate the sequence number of the next object that needs serialization. This patch changes this to count the number of processed objects global. So we can calculate the sequence number and the percpu reorder queue of the next object that needs serialization without searching through the percpu reorder queues. This avoids some accesses to memory of foreign cpus. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 83f619f3c8abb82cac9158cf23c656ec5c184607 Author: Steffen Klassert Date: Wed Jul 7 15:32:02 2010 +0200 padata: make padata_do_parallel to return zero on success To return -EINPROGRESS on success in padata_do_parallel was considered to be odd. This patch changes this to return zero on success. Also the only user of padata, pcrypt is adapted to convert a return of zero to -EINPROGRESS within the crypto layer. This also removes the pcrypt fallback if padata_do_parallel was called on a not running padata instance as we can't handle it anymore. This fallback was unused, so it's save to remove it. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 33e54450683c5e970ac007489d7921ba792d093c Author: Steffen Klassert Date: Wed Jul 7 15:31:26 2010 +0200 padata: Handle empty padata cpumasks This patch fixes a bug when the padata cpumask does not intersect with the active cpumask. In this case we get a division by zero in padata_alloc_pd and we end up with a useless padata instance. Padata can end up with an empty cpumask for two reasons: 1. A user removed the last cpu that belongs to the padata cpumask and the active cpumask. 2. The last cpu that belongs to the padata cpumask and the active cpumask goes offline. We introduce a function padata_validate_cpumask to check if the padata cpumask does intersect with the active cpumask. If the cpumasks do not intersect we mark the instance as invalid, so it can't be used. We do not allocate the cpumask dependend recources in this case. This fixes the division by zero and keeps the padate instance in a consistent state. It's not possible to trigger this bug by now because the only padata user, pcrypt uses always the possible cpumask. Reported-by: Dan Kruchinin Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit ee836555120140f770005b8ce6673c913d1b9a98 Author: Steffen Klassert Date: Wed Jul 7 15:30:47 2010 +0200 padata: Block until the instance is unused on stop This patch makes padata_stop to block until the padata instance is unused. Also we split padata_stop to a locked and a unlocked version. This is in preparation to be able to change the cpumask after a call to patata stop. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 4c879170296174bde05cd1c643dac16594edee77 Author: Steffen Klassert Date: Wed Jul 7 15:30:10 2010 +0200 padata: Check for valid padata instance on start This patch introduces the PADATA_INVALID flag which is checked on padata start. This will be used to mark a padata instance as invalid, if the padata cpumask does not intersect with the active cpumask. we change padata_start to return an error if the PADATA_INVALID is set. Also we adapt the only padata user, pcrypt to this change. Signed-off-by: Steffen Klassert Signed-off-by: Herbert Xu commit 7e3de7b1be6ce0643f60aed697070e2286db32cd Author: Justin P. Mattock Date: Wed Jul 14 20:11:39 2010 +0800 crypto: hifn_795x - Remove unused ctx variable The below patch gets rid of an unused variable ctx reported by GCC when building the kernel. CC [M] drivers/crypto/hifn_795x.o drivers/crypto/hifn_795x.c: In function 'hifn_flush': drivers/crypto/hifn_795x.c:2021:23: warning: variable 'ctx' set but not used drivers/crypto/hifn_795x.c: In function 'hifn_process_queue': drivers/crypto/hifn_795x.c:2142:23: warning: variable 'ctx' set but not used Signed-off-by: Justin P. Mattock Signed-off-by: Herbert Xu commit 9f9c23644b07e7a51f6f39064e61c150be712932 Author: Tejun Heo Date: Wed Jul 14 11:31:20 2010 +0200 workqueue: fix locking in retry path of maybe_create_worker() maybe_create_worker() mismanaged locking when worker creation fails and it has to retry. Fix locking and simplify lock manipulation. Signed-off-by: Tejun Heo Reported-by: Yong Zhang commit 083b804c4d3e1e3d0eace56bdbc0f674946d2847 Author: Tejun Heo Date: Fri Jul 2 10:03:52 2010 +0200 async: use workqueue for worker pool Replace private worker pool with system_unbound_wq. Signed-off-by: Tejun Heo Acked-by: Arjan van de Ven commit fd6cf3dddfb06e8e06d62990c076c25211f79eec Author: Dmitry Torokhov Date: Wed Jul 14 00:25:21 2010 -0700 Input: fix signedness warning in input_set_keycode() The dev->getkeycode() method expects unsigned argument. Signed-off-by: Dmitry Torokhov commit e22739d02a13bb2099084d135f90f4ac6b6d01e1 Author: Lars-Peter Clausen Date: Wed Jul 14 00:25:21 2010 -0700 Input: Add pwm beeper driver This patch adds a simple driver which allows to use pwm based beepers (for example piezo elements) as a pcspkr-like device. Signed-off-by: Lars-Peter Clausen Signed-off-by: Dmitry Torokhov commit 1caca371e80b0d40352512806368f6ff43e2cf52 Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:18:44 2010 +1000 powerpc/oprofile: Don't build server oprofile drivers on 64-bit BookE They will fail to build due to the lack of mtmsrd, and wouldn't be useful anyways Signed-off-by: Benjamin Herrenschmidt commit f2b26c923518e03959142715a2b7615cb161cd16 Author: Benjamin Herrenschmidt Date: Fri Jul 9 14:57:43 2010 +1000 powerpc/book3e: Adjust the page sizes list based on MMU config Use the MMU config registers to scan for available direct and indirect page sizes and print out the result. Will be needed for future hugetlbfs implementation. Signed-off-by: Benjamin Herrenschmidt commit 03247157f73912c98baa918cf46b98ee5483d7f8 Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:34:50 2010 +1000 powerpc/book3e: Add TLB dump in xmon for Book3E Signed-off-by: Benjamin Herrenschmidt commit ff82c319e6327b12cd94c5c57754abff243ab3e4 Author: Benjamin Herrenschmidt Date: Tue Jun 8 10:58:58 2010 +1000 powerpc/book3e: Fix single step when using HW page tables We patch the TLB miss exception vectors to point to alternate functions when using HW page table on BookE. However, we were patching in a new branch in the first instruction of the exception handler instead of the second one, thus overriding the nop that is in the first instruction. This cause problems when single stepping as we rely on that nop for the single step to stop properly within the exception vector range rather than on the target of the branch. Signed-off-by: Benjamin Herrenschmidt commit 34d97e07cc81ab6f1e63696127cc7a5d2c4fce4b Author: Benjamin Herrenschmidt Date: Wed Jul 14 14:12:16 2010 +1000 powerpc/book3e: Add generic 64-bit idle powersave support We use a similar technique to ppc32: We set a thread local flag to indicate that we are about to enter or have entered the stop state, and have fixup code in the async interrupt entry code that reacts to this flag to make us return to a different location (sets NIP to LINK in our case). Signed-off-by: Benjamin Herrenschmidt -- v2. Fix lockdep bug Re-mask interrupts when coming back from idle commit 3b770a2128423a687e6e9c57184a584fb4ba4c77 Author: H. Peter Anvin Date: Tue Jul 13 14:57:50 2010 -0700 x86, alternatives: BUG on encountering an invalid CPU feature number Make the alternatives-patching code BUG on encountering an invalid CPU feature number. Should have done this a long time ago. Signed-off-by: H. Peter Anvin Cc: Yinghai Lu Cc: Suresh Siddha LKML-Reference: commit bd25f4dd6972755579d0ea50d1a5ace2e9b00d1a Author: Arnd Bergmann Date: Sun Jul 11 15:34:05 2010 +0200 HID: hiddev: use usb_find_interface, get rid of BKL This removes the private hiddev_table in the usbhid driver and changes it to use usb_find_interface instead. The advantage is that we can avoid the race between usb_register_dev and usb_open and no longer need the big kernel lock. This doesn't introduce race condition -- the intf pointer could be invalidated only in hiddev_disconnect() through usb_deregister_dev(), but that will block on minor_rwsem and not actually remove the device until usb_open(). Signed-off-by: Arnd Bergmann Cc: Jiri Kosina Cc: "Greg Kroah-Hartman" Signed-off-by: Jiri Kosina commit df378ccfc4dd04e263426ad805516915874774aa Author: H. Peter Anvin Date: Tue Jul 13 14:55:11 2010 -0700 x86, alternatives: Fix one more open-coded 8-bit alternative number Fix a missing case of an 8-bit alternative number, buried inside an assembly macro. Signed-off-by: H. Peter Anvin Reported-by: Yinghai Lu Cc: Suresh Siddha LKML-Reference: <4C3BDDA3.2060900@kernel.org> commit 8c8b01c38a70661d663175d355fdea85ca082272 Author: Forest Bond Date: Tue Jul 13 23:50:57 2010 +0200 HID: ignore digitizer usage Undefined (0x00) SMART Technologies has recommended this change to fix a problem reported with SMART Board series interactive whiteboards. A description of the device-specific symptom follows: When the board is connected my mouse bounces up to the top left corner. Bjorn has tested this fix with model SB680. Tested-by: Bjorn Behrendt Signed-off-by: Forest Bond Signed-off-by: Jiri Kosina commit 540010812179a16d3d00fb8363bb06ee83af25b8 Author: Kees Bakker Date: Tue Jul 13 22:50:51 2010 +0200 HID: Add support for Conceptronic CLLRCMCE There is only one extra button for Conceptronic that wasn't yet present. The button has code 0xffbc0027 and the description is "Toggle between display ratios". So I picked KEY_MODE for this button. Signed-off-by: Kees Bakker Signed-off-by: Jiri Kosina commit fae88f7eedae42c955075aec7a0cd27545f81511 Merge: 1e2cfee e300d95 Author: David S. Miller Date: Tue Jul 13 14:25:13 2010 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 1e2cfeef060fa0270f9a2d66b1218c12c05062e0 Author: David S. Miller Date: Tue Jul 13 14:20:58 2010 -0700 Revert "tc35815: fix iomap leak" This reverts commit b31fb86815153be3bc94e8ffb9dbf6e9d7694b2d. pcim_*() managed drivers do not need explicit resource releasing like this. Signed-off-by: David S. Miller commit ce0aa5dd20e44372f9617dd67c984f41fcdbed88 Author: Yinghai Lu Date: Tue Jul 13 13:35:17 2010 -0700 x86, setup: Make the setup code also accept console=uart8250 Make the boot code also accept the console=uart8250,io,0x2f8,115200n form of early console. Also add back simple_guess_base(), otherwise those simple_strtoull(,,0) are not going to work. Signed-off-by: Yinghai Lu LKML-Reference: <4C3CCE05.4090505@kernel.org> Acked-by: Pekka Enberg Signed-off-by: H. Peter Anvin commit 840b64c08032a86ab39b85ddd342918da0d559c8 Author: Takashi Iwai Date: Tue Jul 13 22:49:01 2010 +0200 ALSA: hda - Add support of dual-ADCs for Realtek ALC275 Some VAIO models with ALC275 have dual ADCs for both internal and external mics, and the driver needs to switch one of them appropriately. This patch adds a basic support for this functionality, dynamic switching between two ADCs per jack plug state. Signed-off-by: Takashi Iwai commit e300d955debdadf599c36e47eb0bc16f5976215c Merge: 242647b 815868e Author: John W. Linville Date: Tue Jul 13 15:57:29 2010 -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/wl12xx/wl1271_cmd.h commit 815868e7b5c207ba42d5b317ccc51f8112732268 Merge: 084cb0f f803696 Author: John W. Linville Date: Tue Jul 13 15:31:51 2010 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 8f72bad1baf19a53459661343e21d6491c3908d3 Author: Tony Luck Date: Tue Jul 13 11:42:54 2010 -0700 [IA64] Put ia64 config files on the Uwe Kleine-König diet arch/arm config files were slimmed down using a python script (See commit c2330e286f68f1c408b4aa6515ba49d57f05beae comment) Do the same for ia64 so we can have sleek & trim looking defconfig files too. Signed-off-by: Tony Luck commit 28bd620c7a1244e59459d6293ca11f162e0a67b9 Author: David J. Choi Date: Tue Jul 13 10:09:19 2010 -0700 drivers/net: Add Micrel KS8841/42 support to ks8842 driver Body of the explanation: -support 16bit and 32bit bus width. -add device reset for ks8842/8841 Micrel device. -set 100Mbps as a default for Micrel device. -set MAC address in both MAC/Switch layer with different sequence for Micrel device, as mentioned in data sheet. -use private data to set options both 16/32bit bus width and Micrel device/ Timberdale(FPGA). -update Kconfig in order to put more information about ks8842 device. Signed-off-by: David J. Choi Signed-off-by: David S. Miller commit 7beae7028acec3bb235fa079fd7e45cc289c0fd7 Author: Christoph Fritz Date: Tue Jul 13 09:42:33 2010 -0700 Input: xpad - remove mouse buttons and axes for dance pads Dance pads don't have any axes/sticks, only buttons for directions. For example buttons like left+right will get triggered at once, an axis can't handle this anyway. So this patch adds a module parameter named "sticks_to_null" for unknown devices. A known dance pad makes use of it by changing to a new mapping-option named DANCEPAD_MAP_CONFIG. Other tested devices may follow by adding this mapping-option too. Some buttons of xpad-devices are addressing mouse-buttons instead of gamepad-buttons. This gets fixed too. Signed-off-by: Christoph Fritz Signed-off-by: Dmitry Torokhov commit bf77499faa1c566ccfb1bbb3a85ae5eb5ca926c6 Author: Dmitry Torokhov Date: Tue Jul 13 09:33:20 2010 -0700 Input: atlas_btns - switch to using pr_err() and friends This ensures consistent prefixes on all messages emitted by the driver. Signed-off-by: Dmitry Torokhov commit 02b5fac1f71c21a84da025973ccb14e4ec6f6d4a Author: Axel Lin Date: Tue Jul 13 09:25:12 2010 -0700 Input: atlas_btns - fix mixing acpi_status and int for return value To improve readability, this patch fixes mixing acpi_status and int for return value. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 07d19ffce54faa5591954bab3644b6f2ff31640c Author: Axel Lin Date: Tue Jul 13 09:13:23 2010 -0700 Input: atlas_btns - adds a missing owner field for atlas_acpi_driver The owner field provides the link between drivers and modules in sysfs. After setting the owner field, we can see which module provides which driver and vice versa by looking at /sys/bus/acpi/drivers/Atlas ACPI/module and /sys/module/atlas_btns/drivers/acpi:Atlas ACPI Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 0c74a939d84730818bc9bf1efa5ad7184bb2f248 Author: Manuel Lauss Date: Mon Jul 12 15:14:59 2010 +0200 ASoC: au1x: fix section mismatch in psc-i2s.c Annotate platform probe callback with __devinit instead of plain __init. Signed-off-by: Manuel Lauss Signed-off-by: Mark Brown commit b424ec953344e0ea612a8cc2d8e59742a0273ac1 Author: arnaud.patard@rtp-net.org Date: Sun Jul 11 23:28:32 2010 +0200 ASoC: kirkwood-i2s: Handle mute/unmute playback/record The controller has mute/unmute capability and some bootloader may mute them at boot. If it's not handled, all things will seem to be working but no sound will come out of the speaker/headphone. Signed-off-by: Arnaud Patard Signed-off-by: Mark Brown commit dfe4c93627c4a1a7fb7e30b15e31f4ccf3ca60f5 Author: arnaud.patard@rtp-net.org Date: Sun Jul 11 23:28:31 2010 +0200 ASoC: Fix kirkwood i2s mono playback Kirkwood controller needs to be informed if the audio stream is mono or not. Failing to do so will result in playing at the wrong speed. Signed-off-by: Arnaud Patard Signed-off-by: Mark Brown commit ccad7b44ccdc8341c1449bc5b864b42b197f8c2e Author: Kuninori Morimoto Date: Tue Jul 13 12:13:14 2010 +0900 ASoC: fsi: Fixup for master mode This patch add hw_params to snd_soc_dai_ops, because board specific set_rate is needed when FSI was used as master mode. This patch remove fsi_clk_ctrl from fsi_dai_startup, because clock should be disabled before set_rate. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d78541473d6c6126616bca2552282660faa41d43 Author: Kuninori Morimoto Date: Tue Jul 13 12:13:09 2010 +0900 ASoC: fsi: Add pr_err for noticing unsupported access This patch didn't use dev_err, because it is difficult to get struct device here. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 73b92c1fc0196e04a31ec190333ed4056a5812cf Author: Kuninori Morimoto Date: Tue Jul 13 12:13:04 2010 +0900 ASoC: fsi: Change struct fsi_regs to fsi_core Many registers which were grouped by category were added in FSI2. To make easy to switch FSI/FSI2, fsi_core was added instead of fsi_regs. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a7ffb52bb31ef5cff1b8bb312d5a3425a983563f Author: Kuninori Morimoto Date: Tue Jul 13 12:13:00 2010 +0900 ASoC: fsi: remove noisy CR_FMT macro Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a09370cb8c8144744cef4d8cc993472f6f8edcb7 Author: Kuninori Morimoto Date: Tue Jul 13 12:12:53 2010 +0900 ASoC: fsi: remove un-used variable on fsi_dai_startup Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 095687c48b2e3b9f849554ab7a65e74988d50269 Author: Kuninori Morimoto Date: Tue Jul 13 18:13:19 2010 +0900 ASoC: fsi: modify format area definition on flags There is no necessity that each bit in this area has the meaning. This patch modify it to sequence number Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4726a57b8c1ba398399fe69b56dc97c196ab4f6b Author: Joe Perches Date: Mon Jul 12 13:50:27 2010 -0700 ASoC: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8ff23610a6c2ec8abaab6ae14d9ed8f59c1f944c Author: Joe Perches Date: Mon Jul 12 13:50:26 2010 -0700 ASoC: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4d53952a396d7fcde295b6eedee1f588dfb8464c Merge: 66b47fd 6377278 Author: Mark Brown Date: Tue Jul 13 12:29:10 2010 +0100 Merge branch 'for-2.6.35' into for-2.6.36 commit 27eeb1feed5c85877f39ff05f6fde0b538b8b9fc Author: Peter Ujfalusi Date: Tue Jul 13 12:07:44 2010 +0300 ASoC: TWL4030: DAC power optimization Restructure the DAPM connections in order to enable only the needed DAC (out of four in twl4030 series). I need to keep the 'AIF Enable' supply connected to the L2/R2 digital path, since the digital loopback needs AIF and APLL running. If no valid route available, than none of the DAC will be powered, but the AIF and APLL is going to be enabled. Furthermore, if only one audio path have valid route, than only the corresponding DAC will be powered. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 8b0d31532e2351db920871b8835425bf1e34de38 Author: Peter Ujfalusi Date: Mon Jul 12 11:50:06 2010 +0300 ASoC: TWL4030: Fix for digital loopback gain range When the gain is configured using dB value it was not possible to use -24dB since the loopback got muted instead of -24dB. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 80792d182e43bee89fce509e64fdea27e600530f Author: Joe Perches Date: Mon Jul 12 13:50:00 2010 -0700 ieee1394: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: Stefan Richter commit 02d37bed188c500ee7afb0a2dc6b65a80704c58e Author: Stefan Richter Date: Thu Jul 8 16:09:06 2010 +0200 firewire: core: integrate software-forced bus resets with bus management Bus resets which are triggered - by the kernel drivers after updates of the local nodes' config ROM, - by userspace software via ioctl shall be deferred until after >=2 seconds after the last bus reset. If multiple modifications of the local nodes' config ROM happen in a row, only a single bus reset should happen after them. When the local node's link goes from inactive to active or vice versa, and at the two occasions of bus resets mentioned above --- and if the current gap count differs from 63 --- the bus reset should be preceded by a PHY configuration packet that reaffirms the gap count. Otherwise a bus manager would have to reset the bus again right after that. This is necessary to promote bus stability, e.g. leave grace periods for allocations and reallocations of isochronous channels and bandwidth, SBP-2 reconnections etc.; see IEEE 1394 clause 8.2.1. This change implements all of the above by moving bus reset initiation into a delayed work (except for bus resets which are triggered by the bus manager workqueue job and are performed there immediately). It comes with a necessary addition to the card driver methods that allows to get the current gap count from PHY registers. Signed-off-by: Stefan Richter commit 8b4f70ba4967cae90d128857af1382026a24230a Author: Stefan Richter Date: Wed Jul 7 15:36:07 2010 +0200 firewire: cdev: fix fw_cdev_event_bus_reset emission after local config ROM changes When a descriptor was added or removed to the local node's config ROM, userspace clients which had a local node's /dev/fw* open did not receive any fw_cdev_event_bus_reset for poll()/read() consumption. The cause was that the core-device.c facility which re-reads the config ROM of the bus reset initiator node missed to call the fw_device update function. The fw_units are destroyed and newly added, but their parent stays and needs to be updated. Reported-by: Jay Fenlason Signed-off-by: Stefan Richter commit eb5b35a560510efc6bb62f05c3c82e9596cdfafe Author: Stefan Richter Date: Wed Jul 7 14:13:14 2010 +0200 firewire: core: ensure some userspace API constants match corresponding kernel API constants The FW_ISO_ constants of the in-kernel API of firewire-core and FW_CDEV_ISO_ constants of the userspace API of firewire-core have nothing to do with each other --- except that the core-cdev.c implementation relies on them having the same values. Hence put some compile-time assertions into core-cdev.c. It's lame but I prefer it over including the userspace API header into the kernelspace API header and defining kernelspace API constants from userspace API constants. Nor do I want to expose the kernelspace constants in one of the two firewire headers that are exported to userland since this only concerns the core-cdev.c implementation. Signed-off-by: Stefan Richter commit 656b7afd40a9f2b0d6cf8ef1972681961b428558 Author: Stefan Richter Date: Wed Jul 7 13:26:18 2010 +0200 firewire: core: fix fw_send_request kerneldoc comment The present inline documentation of the fw_send_request() in-kernel API refers to userland code that is not applicable to kernel drivers at all. Reported-by: Ben Gamari While we are at fixing the whole documentation of fw_send_request(), also improve the rest of firewire-core's kerneldoc comments: - Add a bit of text concerning fw_run_transaction()'s call parameters. - Append () to function names and tab-align parameter descriptions as suggested by the example in Documentation/kernel-doc-nano-HOWTO.txt. - Remove kerneldoc markers from comments on static functions. - Remove outdated parameter descriptions at build_tree(). Signed-off-by: Stefan Richter commit a8e93f3dccc066cd6dd1e9db1e35942914fc57d1 Author: Clemens Ladisch Date: Wed Jul 7 14:37:30 2010 +0200 firewire: cdev: check write quadlet request length to avoid buffer overflow Check that the data length of a write quadlet request actually is large enough for a quadlet. Otherwise, fw_fill_request could access the four bytes after the end of the outbound_transaction_event structure. Signed-off-by: Clemens Ladisch Modification of Clemens' change: Consolidate the check into init_request() which is used by the affected ioctl_send_request() and ioctl_send_broadcast_request() and the unaffected ioctl_send_stream_packet(), to save a few lines of code. Note, since struct outbound_transaction_event *e is slab-allocated, such an out-of-bounds access won't hit unallocated memory but may result in a (virtually impossible to exploit) information disclosure. Signed-off-by: Stefan Richter commit 242647bcf8464860f173f3d4d4ab3490d3558518 Author: Filip Aben Date: Mon Jul 12 21:21:27 2010 -0700 hso: remove driver version This patch removes the driver version from the driver. This version hasn't changed since the driver's inclusion in the kernel and is a source of confusion for some customers. Signed-off-by: Filip Aben Signed-off-by: David S. Miller commit 55a40e243210b72169eaa1cbd9b6edc6097571f8 Author: Joe Perches Date: Mon Jul 12 10:50:24 2010 +0000 net/irda: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 8a994a7180104b305970232e160b18523c1fbd6a Author: Joe Perches Date: Mon Jul 12 10:50:23 2010 +0000 net/core: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit cb8b6a937712cc6c4a23766ddb74171bb19b528c Author: Joe Perches Date: Mon Jul 12 10:50:05 2010 +0000 drivers/net/caif: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 54cbb1cab88ef20c284eef8c24a6d86fad989464 Author: Joe Perches Date: Mon Jul 12 10:50:02 2010 +0000 drivers/isdn: Remove unnecessary casts of private_data Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 6fb4374f6b1b3932f3acfe9d353568d3d8599cad Author: Artem Bityutskiy Date: Sun May 23 15:20:21 2010 +0300 UBIFS: fix GC LEB recovery UBIFS tries to alway have an LEB reserved for GC, and stores it in c->gc_lnum. Besides, there is GC head which points to the current GC head LEB. In case of an unclean power cut, what may happen is that the GC head was switched to the reserved GC LEB (c->gc_lnum), but a new reserved GC LEB was not created yet. So, after an unclean reboot we may have no reserved GC LEB, and we need to find a new LEB for this. To do this, we find a dirty LEB which can fit the current GC head, move the data, unmap this dirty LEB, and it becomes our reserved GC LEB. However, if we cannot find a dirty enough LEB, we return failure, which is wrong, because we still can have free LEBs to use for the reserved GC LEB. This patch fixes the issue. This patch also fixes few typos in comments, which were spotted by aspell. Note, this patch fixes a real issue [ 14.328117] UBIFS: recovery needed [ 53.941378] UBIFS error (pid 462): ubifs_rcvry_gc_commit: could not find a dirty LEB [ 89.606399] UBIFS: recovery completed [ 89.609329] UBIFS assert failed in mount_ubifs at 1358 (pid 462) [ 89.616165] [] (unwind_backtrace+0x0/0xe4) from [] (ubifs_fill_super+0x11d0/0x1c4c) [ 89.625930] [] (ubifs_fill_super+0x11d0/0x1c4c) from [] (ubifs_get_sb+0x1b0/0x354) [ 89.635696] [] (ubifs_get_sb+0x1b0/0x354) from [] (vfs_kern_mount+0x50/0xe0) [ 89.644485] [] (vfs_kern_mount+0x50/0xe0) from [] (do_kern_mount+0x34/0xdc) [ 89.653274] [] (do_kern_mount+0x34/0xdc) from [] (do_mount+0x148/0x7cc) [ 89.662063] [] (do_mount+0x148/0x7cc) from [] (sys_mount+0x98/0xc8) [ 89.670852] [] (sys_mount+0x98/0xc8) from [] (ret_fast_syscall+0x0/0x28) which was reported here: http://article.gmane.org/gmane.linux.drivers.mtd/29923 by Alexander Pazdnikov Reported-by: Alexander Pazdnikov Signed-off-by: Artem Bityutskiy Reviewed-by: Adrian Hunter commit 06df277a670263a073362046855851aad278d988 Author: chas williams - CONTRACTOR Date: Sat Jul 10 03:42:02 2010 +0000 atm: remove IRQF_DISABLED in combination with IRQF_SHARED Signed-off-by: Chas Williams - CONTRACTOR Signed-off-by: David S. Miller commit 97b72e4320a9aaa4a7f1592ee7d2da7e2c9bd349 Author: Baruch Siach Date: Sun Jul 11 21:12:51 2010 +0000 fec: use interrupt for MDIO completion indication With the move to phylib (commit e6b043d) I was seeing sporadic "MDIO write timeout" messages. Measure of the actual time spent showed latency times of more than 1600us. This patch uses the MII event indication of the FEC hardware to detect completion of MDIO transactions. Signed-off-by: Baruch Siach Signed-off-by: David S. Miller commit 15fd0cd9a2ad24a78fbee369dec8ca660979d57e Author: Arnd Bergmann Date: Sun Jul 11 11:18:57 2010 +0000 net: autoconvert trivial BKL users to private mutex All these files use the big kernel lock in a trivial way to serialize their private file operations, typically resulting from an earlier semi-automatic pushdown from VFS. None of these drivers appears to want to lock against other code, and they all use the BKL as the top-level lock in their file operations, meaning that there is no lock-order inversion problem. Consequently, we can remove the BKL completely, replacing it with a per-file mutex in every case. Using a scripted approach means we can avoid typos. file=$1 name=$2 if grep -q lock_kernel ${file} ; then if grep -q 'include.*linux.mutex.h' ${file} ; then sed -i '/include.*/d' ${file} else sed -i 's/include.*.*$/include /g' ${file} fi sed -i ${file} \ -e "/^#include.*linux.mutex.h/,$ { 1,/^\(static\|int\|long\)/ { /^\(static\|int\|long\)/istatic DEFINE_MUTEX(${name}_mutex); } }" \ -e "s/\(un\)*lock_kernel\>[ ]*()/mutex_\1lock(\&${name}_mutex)/g" \ -e '/[ ]*cycle_kernel_lock();/d' else sed -i -e '/include.*\/d' ${file} \ -e '/cycle_kernel_lock()/d' fi Signed-off-by: Arnd Bergmann Cc: "David S. Miller" Cc: netdev@vger.kernel.org Signed-off-by: David S. Miller commit 76a64921dad9acd76270dc74249f0dfe11c84bb8 Author: Arnd Bergmann Date: Sun Jul 11 11:18:53 2010 +0000 isdn: autoconvert trivial BKL users to private mutex All these files use the big kernel lock in a trivial way to serialize their private file operations, typically resulting from an earlier semi-automatic pushdown from VFS. None of these drivers appears to want to lock against other code, and they all use the BKL as the top-level lock in their file operations, meaning that there is no lock-order inversion problem. Consequently, we can remove the BKL completely, replacing it with a per-file mutex in every case. Using a scripted approach means we can avoid typos. file=$1 name=$2 if grep -q lock_kernel ${file} ; then if grep -q 'include.*linux.mutex.h' ${file} ; then sed -i '/include.*/d' ${file} else sed -i 's/include.*.*$/include /g' ${file} fi sed -i ${file} \ -e "/^#include.*linux.mutex.h/,$ { 1,/^\(static\|int\|long\)/ { /^\(static\|int\|long\)/istatic DEFINE_MUTEX(${name}_mutex); } }" \ -e "s/\(un\)*lock_kernel\>[ ]*()/mutex_\1lock(\&${name}_mutex)/g" \ -e '/[ ]*cycle_kernel_lock();/d' else sed -i -e '/include.*\/d' ${file} \ -e '/cycle_kernel_lock()/d' fi Signed-off-by: Arnd Bergmann Cc: Karsten Keil Cc: netdev@vger.kernel.org Signed-off-by: David S. Miller commit d361fd599a991ff6c1d522a599c635b35d61ef30 Author: Eric Dumazet Date: Sat Jul 10 22:45:17 2010 +0000 net: sock_free() optimizations Avoid two extra instructions in sock_free(), to reload skb->truesize and skb->sk Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 7ba42910073f8432934d61a6c08b1023c408fb62 Author: Changli Gao Date: Sat Jul 10 20:41:55 2010 +0000 inet, inet6: make tcp_sendmsg() and tcp_sendpage() through inet_sendmsg() and inet_sendpage() a new boolean flag no_autobind is added to structure proto to avoid the autobind calls when the protocol is TCP. Then sock_rps_record_flow() is called int the TCP's sendmsg() and sendpage() pathes. Signed-off-by: Changli Gao ---- include/net/inet_common.h | 4 ++++ include/net/sock.h | 1 + include/net/tcp.h | 8 ++++---- net/ipv4/af_inet.c | 15 +++++++++------ net/ipv4/tcp.c | 11 +++++------ net/ipv4/tcp_ipv4.c | 3 +++ net/ipv6/af_inet6.c | 8 ++++---- net/ipv6/tcp_ipv6.c | 3 +++ 8 files changed, 33 insertions(+), 20 deletions(-) Signed-off-by: David S. Miller commit 53d3176b282cc105493babb0fef36c8b873f6201 Author: Changli Gao Date: Sat Jul 10 20:41:06 2010 +0000 net: cleanups remove useless blanks. Signed-off-by: Changli Gao ---- include/net/inet_common.h | 55 ++++------- include/net/tcp.h | 222 +++++++++++++++++----------------------------- include/net/udp.h | 38 +++---- 3 files changed, 123 insertions(+), 192 deletions(-) Signed-off-by: David S. Miller commit dbe000ed3f3033e8e6321d79023c827faf649c4d Author: Kulikov Vasiliy Date: Sat Jul 10 01:01:44 2010 +0000 xtsonic: free irq if sonic_open() fails xtsonic_open() doesn't check sonic_open() return code. If it is error we must free requested IRQ. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 546e3abde391ef01ef4690e941611654343ea0bf Author: Kulikov Vasiliy Date: Sat Jul 10 01:39:06 2010 +0000 macsonic: free irqs if sonic_open() fails macsonic_open() doesn't check sonic_open() return code. If it is error we must free requested IRQs. Signed-off-by: Kulikov Vasiliy Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 62cd69a10683bd17a2454213b8c36a4399c533ab Author: Kulikov Vasiliy Date: Sat Jul 10 01:00:35 2010 +0000 jazzsonic: free irq if sonic_open() fails jazzsonic_open() doesn't check sonic_open() return code. If it is error we must free requested IRQ. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 84ce981a076c6b2d3efec66bf92a91d1aa80c983 Author: Dan Carpenter Date: Sat Jul 10 04:31:11 2010 +0000 isdn: fix strlen() usage There was a missing "else" statement so the original code overflowed if ->master->name was too long. Also the ->slave and ->master buffers can hold names with 9 characters and a NULL so I cleaned it up to allow another character. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 5c4bfa17f3ec46becec4b23d12323f7605ebd696 Author: Dan Carpenter Date: Fri Jul 9 23:51:54 2010 +0000 9p: strlen() doesn't count the terminator This is an off by one bug because strlen() doesn't count the NULL terminator. We strcpy() addr into a fixed length array of size UNIX_PATH_MAX later on. The addr variable is the name of the device being mounted. CC: stable@kernel.org Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit b31fb86815153be3bc94e8ffb9dbf6e9d7694b2d Author: Kulikov Vasiliy Date: Sat Jul 10 00:03:18 2010 +0000 tc35815: fix iomap leak If tc35815_init_one() fails we must unmap mapped regions. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 60eb5fd11d1c6050c45a5aab141f42dd396e2a7f Author: Denis Kirjanov Date: Sat Jul 10 11:10:44 2010 +0000 ll_temac: Fix missing validate_addr hook Fix missing validate_addr hook Signed-off-by: Denis Kirjanov Signed-off-by: David S. Miller commit 7f9dd2fa4ac74d35f7e5200b76bd09533afe4e4c Author: Casey Leedom Date: Mon Jul 12 14:39:07 2010 -0700 cxgb4vf: fix TX Queue restart Fix up TX Queue Host Flow Control to cause an Egress Queue Status Update to be generated when we run out of TX Queue Descriptors. This will, in turn, allow us to restart a stopped TX Queue. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 84c3b972f37a735dafc25c4c0d5fb98f99e1157a Author: Kulikov Vasiliy Date: Mon Jul 12 04:52:33 2010 +0000 depca: fix leaks in depca_module_init() Since some of xxx_register_driver() can return error we must unregister already registered drivers. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 0edeb0c024f3af7d4dd8dde44ad1082b265ebc9a Author: Francisco Jerez Date: Sat Jul 10 22:34:13 2010 +0200 drm/i2c/ch7006: Fix up suspend/resume. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 047d1d3cae2c4fc5be4fa20a97c8f5ba4fea1c56 Author: Ben Skeggs Date: Mon May 31 12:00:43 2010 +1000 drm/nouveau: reduce usage of fence spinlock to when absolutely necessary Signed-off-by: Ben Skeggs commit ca6adb8a217fc2a6f20a50b400ba676481a90945 Author: Ben Skeggs Date: Mon Jul 12 13:45:51 2010 +1000 drm/nv50: fix RAMHT size Signed-off-by: Ben Skeggs commit 41090eb4243bef2e90159b2a6acdc671ad0f825b Author: Ben Skeggs Date: Mon Jul 12 13:15:44 2010 +1000 drm/nouveau: fix pcirom vbios shadow breakage from acpi rom patch On nv50 it became impossible to attempt a PCI ROM shadow of the VBIOS, which will break some setups. This patch also removes the different ordering of shadow methods for pre-nv50 chipsets. The reason for the different ordering was paranoia, but it should hopefully be OK to try shadowing PRAMIN first. Signed-off-by: Ben Skeggs commit dad9acff504257d37058d3452c978a4129944d99 Author: Francisco Jerez Date: Sun Jul 11 17:19:15 2010 +0200 drm/nv04: Enable context switching on PFIFO init. Fixes a lockup when coming back from suspend. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 112d20ad5ca06a9ec7237602ee33bef6fa881daa Author: Francisco Jerez Date: Sat Jul 10 18:10:59 2010 +0200 drm/nouveau: Disable PROM access on init. On older cards ( Signed-off-by: Ben Skeggs commit 77144554de9af353795698161af26e36f7cdbbef Author: Francisco Jerez Date: Sat Jul 10 17:37:00 2010 +0200 drm/nouveau: Fix crashes during fbcon init on single head cards. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit e88efe056d308d0a3b6b645d0eec7236b2d8c902 Author: Ben Skeggs Date: Fri Jul 9 10:56:08 2010 +1000 drm/nouveau: initialise display before enabling interrupts In some situations it's possible we can receive a spurious hotplug IRQ before we're ready to handle it, leading to an oops. Calling the display init before enabling interrupts should clear any pending IRQs on the GPU and prevent this from happening. Signed-off-by: Ben Skeggs commit 271f29e7b55278bc2e4bab53448eef9b35778664 Author: Ben Skeggs Date: Fri Jul 9 10:37:42 2010 +1000 drm/nv50: move dp_set_tmds() function to happen in the last display irq It seems on some chipsets that doing this from the 0x20 handler causes the display engine to not ever signal the final 0x40 stage. Signed-off-by: Ben Skeggs commit baf8035edb5d8285cbf0bf2d1895b0a787501f8f Author: Ben Skeggs Date: Fri Jul 9 08:45:57 2010 +1000 drm/nouveau: fix mtrr cleanup path Signed-off-by: Ben Skeggs commit 946cbc825adfa8189a035346d5f7ff31c32b549d Author: Ben Skeggs Date: Fri Jul 9 08:40:49 2010 +1000 drm/nv50: fix dp_set_tmds to work on the right OR Signed-off-by: Ben Skeggs commit c50a5681e7d0ce1dd6de06fd70a7eff56ebfb9e9 Author: Ben Skeggs Date: Thu Jul 8 15:40:18 2010 +1000 drm/nv20-nv30: move context table object out of dev_priv Signed-off-by: Ben Skeggs commit ac94a343c74fe0504663583a7590e89257214f0d Author: Ben Skeggs Date: Thu Jul 8 15:28:48 2010 +1000 drm/nv50: cleanup nv50_fifo.c Signed-off-by: Ben Skeggs commit 3b569e0f2b8f48cd7f9ea37ef7597d1219b87477 Author: Ben Skeggs Date: Thu Jul 8 14:57:18 2010 +1000 drm/nouveau: remove unused fbdev_info Signed-off-by: Ben Skeggs commit 816544b21b020bdb9dcb9a5003fe3e1f109e8698 Author: Ben Skeggs Date: Thu Jul 8 13:15:05 2010 +1000 drm/nouveau: allocate fixed amount of PRAMIN per channel on all chipsets Previously only done on nv50+ This commit also switches unknown NV2x/NV3x chipsets to noaccel mode. Signed-off-by: Ben Skeggs commit ec91db269e6a3c7f45b96169ccf5dbd1fde8fce8 Author: Ben Skeggs Date: Thu Jul 8 11:53:19 2010 +1000 drm/nouveau: remove ability to use external firmware This was always really a developer option, and if it's really necessary we can hack this in ourselves. Signed-off-by: Ben Skeggs commit 631872155f35b907ae3950016d9e72a308449d69 Author: Ben Skeggs Date: Thu Jul 8 11:39:18 2010 +1000 drm/nv50: move tlb flushing to a helper function Signed-off-by: Ben Skeggs commit f56cb86f9abd229418f894a8ffedfb9ff465c181 Author: Ben Skeggs Date: Thu Jul 8 11:29:10 2010 +1000 drm/nouveau: add instmem flush() hook This removes the previous prepare_access() and finish_access() hooks, and replaces it with a much simpler flush() hook. All the chipset-specific code before nv50 has its use removed completely, as it's not required there at all. Signed-off-by: Ben Skeggs commit 2107cce3056dccf37ae5cbfc95df348959b2c717 Author: Ben Skeggs Date: Wed Jul 7 11:05:48 2010 +1000 drm/nv50: implement DAC disconnect fix missed in earlier commit Signed-off-by: Ben Skeggs commit b6d3d8717855c72e541bace5edd0460f2eed6dde Author: Ben Skeggs Date: Mon Jun 7 15:38:27 2010 +1000 drm/nouveau: remove dev_priv->init_state and friends Nouveau will no longer load at all if card initialisation fails, so all these checks are unnecessary. Signed-off-by: Ben Skeggs commit 646bef2d20accc6ed696a98e38d5f2515b0ff35d Author: Ben Skeggs Date: Tue Jul 6 11:27:52 2010 +1000 drm/nouveau: add scaler-only modes for eDP too Signed-off-by: Ben Skeggs commit 1f403d9cca359531e16bc685ed5d619c77762004 Author: Ben Skeggs Date: Tue Jul 6 11:20:17 2010 +1000 drm/nv50: set DP display power state during DPMS Signed-off-by: Ben Skeggs commit ea4718d1dc52c4faef92065ce62fcba6113540bf Author: Ben Skeggs Date: Tue Jul 6 11:00:42 2010 +1000 drm/nouveau: move DP script invocation to nouveau_dp.c Signed-off-by: Ben Skeggs commit 87c0e0e5133e252a6d3d561dd0caeec0244ea9a5 Author: Ben Skeggs Date: Tue Jul 6 08:54:34 2010 +1000 drm/nv50: rewrite display irq handler The previous handler basically worked correctly for a full-blown mode change. However, it did nothing at all when a partial (encoder only) reconfiguation was necessary, leading to the display hanging on certain types of mode switch. Signed-off-by: Ben Skeggs commit 835aadbef3b762bc43eceddfec90c9a5a312d3c1 Author: Ben Skeggs Date: Mon Jul 5 15:19:16 2010 +1000 drm/nv50: send evo "update" command after each disconnect It turns out that the display engine signals an interrupt for disconnects too. In order to make it easier to process the display interrupts correctly, we want to ensure we only get one operation per interrupt sequence - this is what this commit achieves. Signed-off-by: Ben Skeggs commit 4664c67b5d054012562a74414ed3f8619912b3d1 Author: Francisco Jerez Date: Sun Jul 4 16:46:01 2010 +0200 drm/nouveau: Workaround broken TV load detection on a "Zotac FX5200". The blob seems to have the same problem so it's probably a hardware issue (bug 28810). Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 311ab6943fad769a1435bb375d3c821f3b41cdde Author: Francisco Jerez Date: Sun Jul 4 12:54:23 2010 +0200 drm/nouveau: Move the fence wait before migration resource clean-up. Avoids an oops in the fence wait failure path (bug 26521). Signed-off-by: Francisco Jerez Tested-by: Marcin Slusarz Signed-off-by: Ben Skeggs commit d3f12da1c5effa7853bdde31f0ea02f6c604dd04 Author: Francisco Jerez Date: Sun Jul 4 04:03:48 2010 +0200 drm/nv04-nv40: Drop redundant logging. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit ae55321c50434a57fca62aa9b243d575f0de8e6b Author: Francisco Jerez Date: Sat Jul 3 20:47:44 2010 +0200 drm/nouveau: INIT_CONFIGURE_PREINIT/CLK/MEM on newer BIOSes is not an error. No need to spam the logs when they're found, they're equivalent to INIT_DONE. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 6e86e0419471d11ed3d4d46039ee90e8cb85806c Author: Francisco Jerez Date: Sat Jul 3 18:36:39 2010 +0200 drm/nouveau: Fix a couple of sparse warnings. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 2ed06b7d974a750ccb90ff88f5b7a870b89db966 Author: Francisco Jerez Date: Sat Jul 3 15:52:03 2010 +0200 drm/nv04-nv40: Disable connector polling when there're no spare CRTCs left. Load detection needs the connector wired to a CRTC, when there are no inactive CRTCs left that means we need to cut some other head off for a while, causing intermittent flickering. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 8ccfe9e098d5975ef65d17de477f6b7dc0c446db Author: Francisco Jerez Date: Sun Jul 4 16:14:42 2010 +0200 drm/nv04-nv40: Prevent invalid DAC/TVDAC combinations. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit be8860ac0c99c4cd67dfc364c6f57d299f8d7e9d Author: Francisco Jerez Date: Sat Jul 3 12:47:14 2010 +0200 drm/nv17-nv40: Avoid using active CRTCs for load detection. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 044129212eca1c00707f35fc46392d76ced61a94 Author: Ben Skeggs Date: Fri Jul 2 13:47:38 2010 +1000 drm/nv50: when debugging on, log which crtc we connect an encoder to Signed-off-by: Ben Skeggs commit ec7fc4a1a7b322380d053fb04bfc4537be3cdfe5 Author: Ben Skeggs Date: Thu Jul 1 15:33:45 2010 +1000 drm/nv50: supply encoder disable() hook for SOR outputs Allows us to remove a driver hack that used to be necessary to disable encoders in certain situations before setting up a mode. The DRM has better knowledge of when this is needed than the driver does. This fixes a number of display switching issues. Signed-off-by: Ben Skeggs commit df4cf1b72d726d788388858673fa61e42fdb9ad8 Author: Ben Skeggs Date: Thu Jul 1 11:31:45 2010 +1000 drm/nv50: DCB quirk for Dell M6300 Uncertain if this is a weirdo configuration, or a BIOS bug. If it's not a BIOS bug, we still don't know how to make it work anyway so ignore a "conflicting" DCB entry to prevent a display hang. Signed-off-by: Ben Skeggs commit 7149eee87a020cb81c52e9653a44c5f9e7c2a0d9 Author: Ben Skeggs Date: Wed Jun 30 15:25:57 2010 +1000 drm/nv50: fix DP->DVI if output has been programmed for native DP previously Signed-off-by: Ben Skeggs commit 309b8c89c8ddf9dd8e5f253c185d6af1d0358a79 Author: Ben Skeggs Date: Tue Jun 29 16:09:24 2010 +1000 drm/nouveau: downgrade severity of most init table parser errors As long as we know the length of the opcode, we're probably better off trying to parse the remainder of an init table rather than aborting in the middle of it. Signed-off-by: Ben Skeggs commit 8f1a60868f4594bc5576cca8952635f475e8bec6 Author: Ben Skeggs Date: Mon Jun 28 14:35:50 2010 +1000 drm/nouveau: tidy connector/encoder creation a little Create connectors before encoders to avoid having to do another loop across encoder list whenever we create a new connector. This allows us to pass the connector to the encoder creation functions, and avoid using a create_resources() callback since we can now call it directly. This can also potentially modify the connector ordering on nv50. On cards where the DCB connector and encoder tables are in the same order, things will be unchanged. However, there's some cards where the ordering between the tables differ, and in one case, leads us to naming the connectors "wrongly". Signed-off-by: Ben Skeggs commit 3195c5f9784aa8ec27a7bb19a6840dc67e9e90f1 Author: Albert Damen Date: Sun Jun 20 16:57:57 2010 +0200 drm/nouveau: set encoder for lvds fixes oops in nouveau_connector_get_modes with nv_encoder is NULL Signed-off-by: Albert Damen Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 3af76454a70cd09d8e3ede94ee50a35c772ba439 Author: Francisco Jerez Date: Sat Jun 19 13:54:48 2010 +0200 drm/nouveau: Ignore broken legacy I2C entries. The nv05 card in the bug report [1] doesn't have usable I2C port register offsets (they're all filled with zeros). Ignore them and use the defaults. [1] http://bugs.launchpad.net/bugs/569505 Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 190a43783f2c43186180c827444d4eac901b4bcf Author: Francisco Jerez Date: Thu Jun 17 12:42:14 2010 +0200 drm/nouveau: Don't clear AGPCMD completely on INIT_RESET. We just need to clear the SBA and ENABLE bits to reset the AGP controller: If the AGP bridge was configured to use "fast writes", clearing the FW bit would break the subsequent MMIO writes and eventually end with a lockup. Note that all the BIOSes I've seen do the same as we did (it works for them because they don't use MMIO), OTOH the blob leaves FW untouched. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 2fa67f12e71d7f8adade7c4e6bb839156dea2365 Author: Francisco Jerez Date: Wed Jun 16 15:52:44 2010 +0200 drm/nouveau: Put the dithering check back in nouveau_connector_create. a7b9f9e5adef dropped it by accident. Signed-off-by: Francisco Jerez Tested-by: Thibaut Girka Signed-off-by: Ben Skeggs commit 7a2e4e03b77b929b10f3007395128a9870090653 Author: Ben Skeggs Date: Wed Jun 2 10:12:00 2010 +1000 drm/nv50: fix memory detection for cards with >=4GiB VRAM Signed-off-by: Ben Skeggs commit fb4f56214dd632d90b8ac64d7781faeb4dd744c7 Author: Ben Skeggs Date: Wed Jun 2 08:38:19 2010 +1000 drm/nouveau: missed some braces Luckily this had absolutely no effect whatsoever :) Reported-by: Marcin Slusarz Signed-off-by: Ben Skeggs commit cd0b072f95b3dbee5d7b97f52edc40f00d5d28e1 Author: Ben Skeggs Date: Tue Jun 1 15:56:22 2010 +1000 drm/nouveau: remove left-over !DRIVER_MODESET paths It's far preferable to have the driver do nothing at all for "nomodeset". Signed-off-by: Ben Skeggs commit b833ac26f1f1c8e8d9149d83dbdd91432f2807d5 Author: Ben Skeggs Date: Tue Jun 1 15:32:24 2010 +1000 drm/nouveau: use drm_mm in preference to custom code doing the same thing Signed-off-by: Ben Skeggs commit d17f395cdcec39033a481f96d75e8b3d3c41d43a Author: Ben Skeggs Date: Tue Jun 1 13:32:42 2010 +1000 drm/nouveau: move LVDS detection back to connector detect() time Signed-off-by: Ben Skeggs commit 2dfe36b1b6cb51ddfd2358774fd8f097528cfdd0 Author: Ben Skeggs Date: Tue Jun 1 09:47:43 2010 +1000 drm/nouveau: place notifiers in system memory by default Signed-off-by: Ben Skeggs commit 86a1b9d1f175e9e9d022c7674d6ba1ede48ee15f Author: Ben Skeggs Date: Thu Jul 1 16:49:57 2010 +1000 drm: disable encoder rather than dpms off in drm_crtc_prepare_encoders() Original behaviour will be preserved for drivers that don't implement disable() hooks for an encoder. Signed-off-by: Ben Skeggs Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit fa97bdf92709adaaf8b9a5164a895e262a4fcf60 Author: Pekka Enberg Date: Sun Jul 11 11:06:57 2010 +0300 x86, setup: Early-boot serial I/O support This patch adds serial I/O support to the real-mode setup (very early boot) printf(). It's useful for debugging boot code when running Linux under KVM, for example. The actual code was lifted from early printk. Cc: Cyrill Gorcunov Cc: Ingo Molnar Cc: Yinghai Lu Signed-off-by: Pekka Enberg LKML-Reference: <1278835617-11368-1-git-send-email-penberg@cs.helsinki.fi> Signed-off-by: H. Peter Anvin commit d209974cdc36aeeef406fa2019e9e1dacecbb979 Author: Arnd Bergmann Date: Mon Jul 12 19:53:18 2010 +0200 sound/oss: convert to unlocked_ioctl These are the final conversions for the ioctl file operation so we can remove it in the next merge window. Signed-off-by: Arnd Bergmann Signed-off-by: Takashi Iwai commit 084cb0fe773dc3dbe2bb08039dbd0e9e93d103ce Author: Christian Lamparter Date: Mon Jul 12 19:01:41 2010 +0200 p54: update MAINTAINERS Michael has been out of the scene for a while now, but despite Michael's absence, p54 is still maintained. Cc: Michael Wu Cc: Larry Finger Cc: Luis R. Rodriguez Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit bbacee13f4382137db24d5904609c49bbef09d5c Author: Felix Fietkau Date: Sun Jul 11 15:44:42 2010 +0200 ath9k: merge noisefloor load implementations AR5008+ and AR9003 currently use two separate implementations of the ath9k_hw_loadnf function. There are three main differences: - PHY registers for AR9003 are different - AR9003 always uses 3 chains, earlier versions are more selective - The AR9003 variant contains a fix for NF load timeouts This patch merges the two implementations into one, storing the register array in the ath_hw struct. The fix for NF load timeouts is not just relevant for AR9003, but also important for earlier hardware, so it's better to just keep one common implementation. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit b11b160defc48e4daa283f785192ea3a23a51f8e Author: Felix Fietkau Date: Sun Jul 11 12:48:44 2010 +0200 ath9k: validate the TID in the tx status information Occasionally the hardware can send out tx status information with the wrong TID. In that case, the BA status cannot be trusted and the aggregate must be retransmitted. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit e5cbef96cf8bf9967605a1b75b115f4b7efa7bc4 Author: Felix Fietkau Date: Sun Jul 11 12:48:43 2010 +0200 ath9k_hw: report the TID in the tx status on AR5008-AR9002 Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 9cc2f3e881dcda5466c55ffe8dd0a9d1433469cb Author: Felix Fietkau Date: Sun Jul 11 12:48:42 2010 +0200 ath9k_hw: prevent a fast channel change after a rx DMA stuck issue If the receive path gets stuck, a full hardware reset is necessary to recover from it. If this happens during a scan, the whole scan might fail, as each channel change bypasses the full reset sequence. Fix this by resetting the fast channel change flag if stopping the receive path fails. This will reduce the number of error messages that look like this: ath: DMA failed to stop in 10 ms AR_CR=0x00000024 AR_DIAG_SW=0x40000020 Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit 03b4776c408d2f4bf3a5d204e223724d154716d1 Author: Felix Fietkau Date: Sun Jul 11 12:48:41 2010 +0200 ath9k_hw: fix an off-by-one error in the PDADC boundaries calculation PDADC values were only generated for values surrounding the target index, however not for the target index itself, leading to a minor error in the generated curve. Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit 23399016d9583d799ca98ce443a1410b13c3e96e Author: Felix Fietkau Date: Sun Jul 11 12:48:40 2010 +0200 ath9k_hw: fix a sign error in the IQ calibration code Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit 601e0cb165e65dc185b31fe7ebd2c0169ea47306 Author: Felix Fietkau Date: Sun Jul 11 12:48:39 2010 +0200 ath9k_hw: fix antenna diversity on AR9285 On AR9285, the antenna switch configuration register uses more than just 16 bits. Because of an arbitrary mask applied to the EEPROM value that stores this configuration, diversity was broken in some cases, leading to a significant degradation in signal strength. Fix this by changing the callback to return a 32 bit value and remove the arbitrary mask. Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit e796643eaf0889c346e6b69c5afe777c327b1919 Author: Ivo van Doorn Date: Sun Jul 11 12:31:23 2010 +0200 rt2x00: Move driver callback functions into the ops structure All callback functions are gathered in rt2x00dev->ops except for the callback functions which are used in rt2800lib to acces rt2800pci/usb. Move the priv pointer from rt2x00dev to rt2x00dev->ops and rename it to drv to make it obvious that it is the driver callback structure. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit f31c9a8c1380e20e95d06925f2e42baf61af4db7 Author: Ivo van Doorn Date: Sun Jul 11 12:30:37 2010 +0200 rt2x00: Move common firmware loading into rt2800lib Large parts of the firmware initialization are shared between rt2800pci and rt2800usb. Move this code into rt2800lib. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ab8966ddc2f7fa3e631efa7478ea2c76d6c9942f Author: Helmut Schaa Date: Sun Jul 11 12:30:13 2010 +0200 rt2x00: Add missing TSF sync mode for AP operation Currently rt2x00 uses the TSF_SYNC_BEACON mode for all beaconing interface types. However, TSF_SYNC_BEACON is meant for IBSS networks and thus implements TSF merging in the hardware. Rename TSF_SYNC_BEACON to TSF_SYNC_ADHOC to better express its purpose and introduce the missing TSF sync mode TSF_SYNC_AP_NONE which should be used for beaconing modes that don't need TSF merging. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8544df327c4c1c2bc6f2f6bf2997980d0d9a29f0 Author: Helmut Schaa Date: Sun Jul 11 12:29:49 2010 +0200 rt2x00: Don't initialize beacon interval to 0 on rt2800 devices Activating the TBTT interrupt when a beacon interval of 0 is configured results in an interrupt storm causing the machine to hang. Hence, initialize the beacon interval to a reasonable default of 100TUs. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ab0ed4aba80f430fafd842cee8d74f6b40493483 Author: Helmut Schaa Date: Sun Jul 11 12:29:26 2010 +0200 rt2x00: Remove set_tim callback from PCI drivers Using the set_tim callback without managing the DTIM count and the broad- and multicast buffering in hw, fw or the driver results in wrong DTIM count values being sent out in beacons. Since all PCI drivers fetch new beacons periodically and hence get an updated TIM we can just remove the set_tim callback from these. The rt2x00 USB drivers don't update the beacon periodically and thus rely on the set_tim callback to get a correct TIM for beacon transmission. USB devices still suffer from the DTIM count being wrong under some circumstances but removing the set_tim callback from these would cause more harm then good. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit e783619ea8f1fb9fccec4931b0cf956de0ed1019 Author: Helmut Schaa Date: Sun Jul 11 12:28:54 2010 +0200 rt2x00: Use separate mac80211_ops for rt2800pci and rt2800usb Use separate mac80211_ops for rt2800pci and rt2800usb in preparation for further fixes. This shouldn't introduce functional changes. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9f926fb57a2eb14d58ea6d6699544f9ccd0df8c7 Author: Helmut Schaa Date: Sun Jul 11 12:28:23 2010 +0200 rt2x00: Use pretbtt irq for fetching beacons on rt2800pci Updating the beacon on pre tbtt instead of beacondone allows much lower latency in regard to TIM updates. Hence, use the pre tbtt interrupt for updating the beacon in rt2800pci (older devices don't provide a pre tbtt interrupt). Also, add a new driver flag to indicate if a driver has pre tbtt support or not and implement the according behavior in rt2x00lib. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 07896fe2f4df3802a224a2ee1aad1c7345d2513c Author: Helmut Schaa Date: Sun Jul 11 12:27:58 2010 +0200 rt2x00: Implement broad- and multicast buffering Although mac80211 buffers broad- and mutlicast frames for us in AP mode we still have to send them out after a DTIM beacon. Implement this behavior by sending out the buffered frames when the beacondone interrupt is processed. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 4dee32f51b0beba25a70e8011652858c6e55f792 Author: Helmut Schaa Date: Sun Jul 11 12:27:26 2010 +0200 rt2x00: Allow beacon update without scheduling a work Since all rt2x00 PCI drivers use threaded interrupts now we don't need to schedule a work just to update the beacon. The only place where the beacon still gets updated in atomic context is from the set_tim callback. Hence, move the work scheduling there. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 78e256c9a3717bcae2e9ed05c9ec7bed7bf2c55d Author: Helmut Schaa Date: Sun Jul 11 12:26:48 2010 +0200 rt2x00: Convert rt2x00 to use threaded interrupts Use threaded interrupts for all rt2x00 PCI devices. This has several generic advantages: - Reduce the time we spend in hard irq context - Use non-atmic mac80211 functions for rx/tx Furthermore implementing broad- and multicast buffering will be much easier in process context while maintaining low latency and updating the beacon just before transmission (pre tbtt interrupt) can also be done in process context. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 50e888eae23dc062cb52a7538e85a5960ce1d91c Author: Ivo van Doorn Date: Sun Jul 11 12:26:12 2010 +0200 rt2x00: Make rt2800_write_beacon only export to GPL rt2800_write_beacon is the only function which uses EXPORT_SYMBOL instead of EXPORT_SYMBOL_GPL. All symbols in rt2x00 should however use the GPL restricted export. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit c965c74bbc650e5466d2f3e32bd28112ebcdd00c Author: Ivo van Doorn Date: Sun Jul 11 12:25:46 2010 +0200 rt2x00: Implement watchdog monitoring Implement watchdog monitoring for USB devices (PCI support can be added later). This will determine if URBs being uploaded to the hardware are actually returning. Both rt2500usb and rt2800usb have shown that URBs being uploaded can remain hanging without being released by the hardware. By using this watchdog, a queue can be reset when this occurs. For rt2800usb it has been tested that the connection is preserved even though this interruption. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 223dcc26591aa8e4a6bf623164b775b5bd89c9e1 Author: Ivo van Doorn Date: Sun Jul 11 12:25:17 2010 +0200 rt2x00: Fix vgc_level_reg handling Currently vgc_level_reg and vgc_level are equal to eachother, while the purpose of vgc_level_reg is the value last written to the register and is remembered through link tuning resets. The vgc_level is the currently active level, which is reset during link tuning resets. The usage of these variables depends on the drivers, some drivers need both, while others need only one of the two. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit d8147f9d9ed6abfa105234a21f05af4a4839eb80 Author: Ivo van Doorn Date: Sun Jul 11 12:24:47 2010 +0200 rt2x00: Disable link tuning while scanning While scanning the link tuner must be disabled. Otherwise it will interfere with receiving all beacons for each channel due to changing sensitivity levels. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 27df2a9ce9ea6a77b9959cf5cc03ee85324aced9 Author: Ivo van Doorn Date: Sun Jul 11 12:24:22 2010 +0200 rt2x00: Rename CONFIG_DISABLE_LINK_TUNING Rename CONFIG_DISABLE_LINK_TUNING to DRIVER_SUPPORT_LINK_TUNING Link tuning support is not only based on EEPROM decisions, but also if the device actually supports it. Currently only rt2500usb doesn't support link tuning because of hardware problems. But rt2800usb is also suspected of having problems with link tuning. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 748619220651a33c260ed6c0a7648e69324edd74 Author: Ivo van Doorn Date: Sun Jul 11 12:23:50 2010 +0200 rt2x00: Convert AGC value from descriptor to RSSI (dBm) The RSSI values in the RXWI descriptor aren't true RSSI values. Instead they are more like the AGC values similar to rt61pci. And as such, it needs the same conversion before it can be passed to rt2x00lib/mac80211. This requires the struct queue_entry to be passed to rt2800_process_rxwi rather then the skb structure which is contained in the queue_entry. This is required to obtain the lna_gain information from the rt2x00_dev structure. This fixes connection problems when using wpa_supplicant which would try to connect to the worst AP's rather then the best ones. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 5e846004914d2295e020edd48a828b653323f93e Author: Helmut Schaa Date: Sun Jul 11 12:23:09 2010 +0200 rt2x00: Limit txpower by eeprom values Limit the txpower per rate by the approriate values in the eeprom. This avoids too high txpower values resulting in bad tx performance. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8b967e41e0f75328150b7cddf79de4ee57616f01 Author: Dan Carpenter Date: Sun Jul 11 00:10:42 2010 +0200 hostap: fixup strlen() math In hostap_add_interface() we do: sprintf(dev->name, "%s%s", prefix, name); dev->name has IFNAMSIZ (16) characters. prefix is local->dev->name. name is "wds%d" strlen() returns the number of characters in the string not counting the NULL so if we have a string with 11 characters we get "12345678901wds%d" which is 16 characters and a NULL so we're past the end of the array. Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit b85aeb51805265b9f826857e5c5d9c0cd70dda55 Author: Kulikov Vasiliy Date: Sat Jul 10 16:28:57 2010 +0400 adm8211: fix memory leak We must free priv->eeprom allocated in adm8211_read_eeprom(). Signed-off-by: Kulikov Vasiliy Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 4c92831d99827971cf2854cfa7f884213099428f Author: Dan Carpenter Date: Sat Jul 10 10:53:38 2010 +0200 prism54: call BUG_ON() earlier This test is off by one because strlen() doesn't include the NULL terminator. Signed-off-by: Dan Carpenter Signed-off-by: John W. Linville commit 72e93e9161a917017f6c3cac216d813088ec2d1f Author: Luciano Coelho Date: Fri Jul 9 14:10:58 2010 +0300 wl1271: use __packed annotation This patch changes __attribute__ ((packed)) annotations to __packed in wl1271 code that was introduced in a recent patch in wireless-testing. Cc: Stephen Rothwell Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 1311843c58ca606bab8bfe4cf6c0fe50deb9986d Author: Amitkumar Karwar Date: Thu Jul 8 06:43:48 2010 +0530 libertas: Added support for host sleep feature Existing "ethtool -s ethX wol X" command configures hostsleep parameters, but those are activated only during suspend/resume, there is no way to configure host sleep without actual suspend. This patch adds debugfs command to enable/disable host sleep based on already configured host sleep parameters using wol command. Signed-off-by: Amitkumar Karwar Signed-off-by: Kiran Divekar Signed-off-by: John W. Linville commit 643f82e32f14faf0d0944c804203a6681b6b0a1e Author: Johannes Berg Date: Mon Jul 12 14:46:43 2010 +0200 cfg80211: ignore spurious deauth Ever since mac80211/drivers are no longer fully in charge of keeping track of the auth status, trying to make them do so will fail. Instead of warning and reporting the deauthentication to userspace, cfg80211 must simply ignore it so that spurious deauthentications, e.g. before starting authentication, aren't seen by userspace as actual deauthentications. Cc: stable@kernel.org Reported-by: Paul Stewart Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e71bcbd0a149b6baa3419b5822f1ceb2b54e6ff6 Author: John W. Linville Date: Mon Jul 12 16:03:07 2010 -0400 MAINTAINERS: mark adm8211 as an orphan Signed-off-by: John W. Linville commit 9e34a5b51684bc90ac827ec4ba339f3892632eac Author: Eric Dumazet Date: Fri Jul 9 21:22:04 2010 +0000 net/core: EXPORT_SYMBOL cleanups CodingStyle cleanups EXPORT_SYMBOL should immediately follow the symbol declaration. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 4bc2f18ba4f22a90ab593c0a580fc9a19c4777b6 Author: Eric Dumazet Date: Fri Jul 9 21:22:10 2010 +0000 net/ipv4: EXPORT_SYMBOL cleanups CodingStyle cleanups EXPORT_SYMBOL should immediately follow the symbol declaration. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit a0d468718b9049f7396d101075a129a2d683ad66 Author: Rafael J. Wysocki Date: Thu Jul 8 00:44:42 2010 +0200 ACPI / ACPICA: Simplify acpi_ev_initialize_gpe_block() Simplify the main loop in acpi_ev_initialize_gpe_block() by rearranging code and removing the "enabled" label that is not necessary any more. Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit 9ce10df8d83d0528e80cd319b35ac5f6812b4f62 Author: Rafael J. Wysocki Date: Thu Jul 8 00:45:34 2010 +0200 ACPI / ACPICA: Fail acpi_gpe_wakeup() if ACPI_GPE_CAN_WAKE is unset Make acpi_gpe_wakeup() return error code for GPEs whose ACPI_GPE_CAN_WAKE flag is not set. This way acpi_gpe_wakeup() will only wake for the GPEs reported by the host OS as "wakeup" ones with the help of acpi_gpe_can_wake(). Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit 9874647ba1bdf3e1af25e079070a00676f60f2f0 Author: Rafael J. Wysocki Date: Thu Jul 8 00:43:36 2010 +0200 ACPI / ACPICA: Do not execute _PRW methods during initialization Currently, during initialization ACPICA walks the entire ACPI namespace in search of any device objects with assciated _PRW methods. All of the _PRW methods found are executed in the process to extract the GPE information returned by them, so that the GPEs in question can be marked as "able to wakeup" (more precisely, the ACPI_GPE_CAN_WAKE flag is set for them). The only purpose of this exercise is to avoid enabling the CAN_WAKE GPEs automatically, even if there are _Lxx/_Exx methods associated with them. However, it is both costly and unnecessary, because the host OS has to execute the _PRW methods anyway to check which devices can wake up the system from sleep states. Moreover, it then uses full information returned by _PRW, including the GPE information, so it can take care of disabling the GPEs if necessary. Remove the code that walks the namespace and executes _PRW from ACPICA and modify comments to reflect that change. Make acpi_bus_set_run_wake_flags() disable GPEs for wakeup devices so that they don't cause spurious wakeup events to be signaled. This not only reduces the complexity of the ACPICA initialization code, but in some cases it should reduce the kernel boot time as well. Unfortunately, for this purpose we need a new ACPICA function, acpi_gpe_can_wake(), to be called by the host OS in order to disable the GPEs that can wake up the system and were previously enabled by acpi_ev_initialize_gpe_block() or acpi_ev_update_gpes() (such a GPE should be disabled only once, because the initialization code enables it only once, but it may be pointed to by _PRW for multiple devices and that's why the additional function is necessary). Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit e8e18c956152ec9c26c94c6401c174691a8f04e7 Author: Rafael J. Wysocki Date: Thu Jul 8 00:42:51 2010 +0200 ACPI: Fix bogus GPE test in acpi_bus_set_run_wake_flags() When we check if a GPE can be used for runtime signaling, we only search the FADT GPE blocks, which is incorrect, becuase the GPE may be located elsewhere. We really should be using the GPE device information previously returned by _PRW here, so make that happen. Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit a11b3fab94d4fb67297b76d0cb81612ebbff276e Author: Kees Bakker Date: Fri Jul 2 22:20:04 2010 +0200 HID: hid-ids.h: Whitespace fixup, align using TABs Hmmm. There are still people who have their editor setup with tabwidth 4. Some of the entries were added with tabwidth 4, and for these people the lineup looks OK. But in the Linux kernel source we use tabwidth 8. This patch repairs that whitespace so that the number align properly. Signed-off-by: Kees Bakker Signed-off-by: Jiri Kosina commit 225b4590062008c9de22ed6e3a200f832d9bcdc8 Author: Bruno Prémont Date: Mon Jun 28 22:33:27 2010 +0200 HID: picolcd: implement refcounting of framebuffer As our device may be hot-unplugged and framebuffer cannot handle this case by itself we need to keep track of usage count so as to release fb_info and framebuffer memory only after the last user has closed framebuffer. We need to do the freeing in a scheduled work as fb_release() is called with fb_info lock held. Signed-off-by: Bruno Prémont Signed-off-by: Jiri Kosina commit 365f1fcd0d5a40f933bed55e515fce2077c40e9a Author: Bruno Prémont Date: Mon Jun 28 22:31:20 2010 +0200 HID: picolcd: do not reallocate memory on depth change Reallocating memory in depth change does not work well if some userspace application has mmapped() the framebuffer as that mapping does not get adjusted (thus application continues to write to old buffer). In addition doing deferred_io_cleanup() and init() inside of set_par() tends to deadlock with fbcon's flashing cursor. Avoid all this by allocating a buffer that can hold 8bpp framebuffer and just use 1/8 of it while running at 1bpp. Signed-off-by: Bruno Prémont Signed-off-by: Jiri Kosina commit b70884ff3a5314c2eb702f85599e722cccdd2f5b Author: Bruno Prémont Date: Mon Jun 28 22:30:29 2010 +0200 HID: picolcd: Add minimal palette required by fbcon on 8bpp Add a minimal palette so fbcon does not try to dereference a NULL point when fb is set to 8bpp. fbcon stores pixels the other way around in bytes for 1bpp than intially implemented, correct this. Signed-off-by: Bruno Prémont Signed-off-by: Jiri Kosina commit a7ce2e0d04b1a6ee8056e7fea5ea96566d33a6f4 Author: Uwe Kleine-König Date: Mon Jul 12 17:15:44 2010 +0200 fix comnment/printk typos concerning "empty" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 90dc763fef4c869e60b2a7ad92e1a7dab68575ea Author: Arnd Bergmann Date: Sun Jul 11 12:16:36 2010 +0200 sound: push BKL into open functions This moves the lock_kernel() call from soundcore_open to the individual OSS device drivers, where we can deal with it one driver at a time if needed, or just kill off the drivers. All core components in ALSA already provide adequate locking in their open()-functions and do not require the big kernel lock, so there is no need to add the BKL there. Signed-off-by: Arnd Bergmann Signed-off-by: Takashi Iwai commit 32e0191d7909022e5016beb75dda6710a28b3c61 Author: Clemens Ladisch Date: Mon Jul 12 16:28:50 2010 +0200 ALSA: HDA: VT1708S: fix Smart5.1 mode Correctly configure bidirectional pins when resuming; do not power down widgets when they are needed for Smart5.1 output; and on 3-jack boards, create the streams and controls needed for six channels. Signed-off-by: Clemens Ladisch Reported-and-tested-by: Viliam Kubis Signed-off-by: Takashi Iwai commit 395c61d19621e80b763810cc988416dc1b6bfd3e Author: Clemens Ladisch Date: Mon Jul 12 16:27:24 2010 +0200 ALSA: via82xx: allow changing the initial DXS volume As per-stream volume controls, the DXS controls are not intended to adjust the overall sound level and so are initialized every time a stream is opened. However, there are special situations where one wants to reduce the overall volume in the digital domain, i.e., before the AC'97 codec's PCM volume control. To allow this, add a module parameter that sets the initial DXS volume. Signed-off-by: Clemens Ladisch Tested-by: Soeren D. Schulze Signed-off-by: Takashi Iwai commit 0dd9ac63ce26ec87b080ca9c3e6efed33c23ace6 Author: Matt Fleming Date: Sat Jul 10 16:10:39 2010 +0100 perf tools: Add DWARF register lookup for SH Implement get_arch_regstr() for SH so that, given a DWARF register number, the corresponding symbolic name of that register can be looked up. Acked-by: Masami Hiramatsu Cc: Masami Hiramatsu Cc: Peter Zijlstra Cc: Paul Mackerras Cc: Ingo Molnar Cc: Ian Munsie LKML-Reference: Signed-off-by: Matt Fleming Signed-off-by: Arnaldo Carvalho de Melo commit 2d45ba381a74a743eeaa2b06c7c5c0d2bf73ba1a Author: Miklos Szeredi Date: Mon Jul 12 14:41:40 2010 +0200 fuse: add retrieve request Userspace filesystem can request data to be retrieved from the inode's mapping. This request is synchronous and the retrieved data is queued as a new request. If the write to the fuse device returns an error then the retrieve request was not completed and a reply will not be sent. Only present pages are returned in the retrieve reply. Retrieving stops when it finds a non-present page and only data prior to that is returned. This request doesn't change the dirty state of pages. Signed-off-by: Miklos Szeredi commit a1d75f258230b75d46aecdf28b2e732413028863 Author: Miklos Szeredi Date: Mon Jul 12 14:41:40 2010 +0200 fuse: add store request Userspace filesystem can request data to be stored in the inode's mapping. This request is synchronous and has no reply. If the write to the fuse device returns an error then the store request was not fully completed (but may have updated some pages). If the stored data overflows the current file size, then the size is extended, similarly to a write(2) on the filesystem. Pages which have been completely stored are marked uptodate. Signed-off-by: Miklos Szeredi commit 7909b1c64078087ac153fb47a2f50793fe3ee7d0 Author: Miklos Szeredi Date: Mon Jul 12 14:41:40 2010 +0200 fuse: don't use atomic kmap Don't use atomic kmap for mapping userspace buffers in device read/write/splice. This is necessary because the next patch (adding store notify) requires that caller of fuse_copy_page() may sleep between invocations. The simplest way to ensure this is to change the atomic kmaps to non-atomic ones. Thankfully architectures where kmap() is not a no-op are going out of fashion, so we can ignore the (probably negligible) performance impact of this change. Signed-off-by: Miklos Szeredi commit e69edc7939abda1f696c482faa8168d80420f75c Author: Eric Miao Date: Mon Jul 5 15:56:50 2010 +0200 ARM: Auto calculate ZRELADDR and provide option for exceptions As long as the zImage is placed within the 128MB range from the start of memory, ZRELADDR (Address where the decompressed kernel will be placed, usually == PHYS_OFFSET + TEXT_OFFSET) can be determined at run-time by masking PC with 0xf80000000. Running through all the Makefile.boot, all those zreladdr-y addresses == 0x[0-f][08]00_0000 + TEXT_OFFSET can be determined at run-time. Option CONFIG_AUTO_ZRELADDR and CONFIG_ZRELADDR are introduced, CONFIG_ZRELADDR _must_ be explicitly specified if: - ((zreladdr-y - TEXT_OFFSET) & ~0xf8000000) != 0, which means masking PC with 0xf8000000 will result in an incorrect address. Currently this is only a problem on u300. - or the assumption of the zImage being loaded by the bootloader within the first 128MB of RAM is incorrect - or when ZBOOT_ROM is used, where the above assumption is usually wrong. [ukleinek: changed mask from 0xf0000000 to 0xf8000000 for mx1 and shark + some review fixes from the mailing list] Original-Idea-and-Signed-off-by: Nicolas Pitre Signed-off-by: Eric Miao Signed-off-by: Uwe Kleine-König commit ba80a2522899ea71a5b201bae60bdfd99126af95 Author: Kulikov Vasiliy Date: Fri Jul 9 02:28:09 2010 +0000 ac3200: fix error path Do not call free_irq() if request_irq() failed. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 451d33dd223f15451c1b8fb388447d39e1cd955b Author: Kulikov Vasiliy Date: Fri Jul 9 02:31:26 2010 +0000 at1700: fix double free_irq free_irq() is called both in net_close() and cleanup_card(). Since it is requested in at1700_probe1(), leave free_irq() only in cleanup_card() for balance. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 835bb606faffcd761e7abbc6b5de89ea5c409123 Author: Dimitris Michailidis Date: Sun Jul 11 17:33:48 2010 -0700 cxgb4: exclude registers with read side effects from register dumps A few registers have side effects on reads, eg FIFO pointers that auto advance or mailboxes which change ownership when read. They are unsafe to read so exclude them from ethtool register dumps. Bump ethtool_regs.version to indicate the changed register set. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit f796564a5fd7be1a4597b66e2a516c18685641df Author: Dimitris Michailidis Date: Sun Jul 11 12:01:18 2010 +0000 cxgb4: implement the ETHTOOL_GRXFH command Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 671b0060d82984a566f2e75ffd166a9b61c6da7d Author: Dimitris Michailidis Date: Sun Jul 11 12:01:17 2010 +0000 cxgb4: add user manipulation of the RSS table Implement the get_rxnfc, get_rxfh_indir, and set_rxfh_indir ethtool methods for user manipulation of the RSS table. Besides the methods themselves the rest of the changes here store, initialize, and write the table contents. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 065463915c3a2a2ce142f64ed3ed591d72ad88b1 Author: Dimitris Michailidis Date: Sun Jul 11 12:01:16 2010 +0000 cxgb4: avoid duplicating some resource freeing code Currently there are two copies of some resource freeing code, turn it into a function and call it. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit f7cabcdd51480282b58c09e5fe1c4835aaf98a66 Author: Dimitris Michailidis Date: Sun Jul 11 12:01:15 2010 +0000 cxgb4: move the choice of interrupt type before net_device registration We need to settle on the kind of interrupts we'll be using, a choice that also impacts the number of queues, before registering and making visible the net_devices. Move the relevant code up a bit. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 98e32a9ceea8e3a0cd6ea89c9ce8e09a74b03b78 Author: Matt Carlson Date: Sun Jul 11 09:31:47 2010 +0000 tg3: Update version to 3.112 This patch updates the tg3 version to 3.112. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit be98da6a10f3e7f855f36f3fdd67a91366cabc1c Author: Matt Carlson Date: Sun Jul 11 09:31:46 2010 +0000 tg3: Fix some checkpatch errors This patch fixes the following checkpatch errors: ERROR: do not use assignment in if condition + if ((mss = skb_shinfo(skb)->gso_size) != 0) { ERROR: do not use assignment in if condition + if ((mss = skb_shinfo(skb)->gso_size) != 0) { ERROR: space prohibited after that '!' (ctx:BxW) + if (! netif_carrier_ok(tp->dev) && ^ ERROR: space required after that ',' (ctx:VxV) +#define GET_REG32_LOOP(base,len) \ ^ ERROR: "(foo*)" should be "(foo *)" + memcpy(data, ((char*)&val) + b_offset, b_count); ERROR: do not use assignment in if condition + if ((err = tg3_do_mem_test(tp, mem_tbl[i].offset, Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 702e52ccd32164a09ea91aa5896ad7c64cb708cb Author: Matt Carlson Date: Sun Jul 11 09:31:45 2010 +0000 tg3: Revert PCIe tx glitch fix This patch reverts commit 52cdf8526fe24f11d300b75458ddee017f3f4c88, entitled "tg3: Prevent a PCIe tx glitch". The problem does not have any visible side-effects and happens too early for the driver to do anything about it. The proper place for this code is within the device's bootcode. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 6867c843813a801d5f568b6fb006695316714f1b Author: Matt Carlson Date: Sun Jul 11 09:31:44 2010 +0000 tg3: Report driver version to firmware This patch changes the code so that the driver version can be reported to the firmware in addition to the current use. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 2138c002173abe3e439e213e5cc03b385b20508c Author: Matt Carlson Date: Sun Jul 11 09:31:43 2010 +0000 tg3: Relax 5717 serdes restriction tg3 is coded to refuse to attach to 5717 serdes devices. Now that the hardware is better supported, we can relax this restriction. This patch also fixes a recently introduced bug which will cause serdes parallel detection not to work with 5780 class devices. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 34195c3dce84fd0ee47f4131584ff1f6f283b93c Author: Matt Carlson Date: Sun Jul 11 09:31:42 2010 +0000 tg3: Fix IPv6 TSO code in tg3_start_xmit_dma_bug() The tg3_start_xmit_dma_bug() function was missing code to process IPv6 TSO packets. This patch adds the missing support. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 20d7375c1fdf054ca8ab9e5b9fe7fe62b39fa218 Author: Matt Carlson Date: Sun Jul 11 09:31:41 2010 +0000 tg3: Fix single MSI-X vector coalescing The interrupt coalescing setup code used the TG3_FLG2_USING_MSIX flag to determine whether or not to configure the rx coalescing parameters. This is incorrect for the single MSI-X vector case. This patch changes the code to look at the TG3_FLG3_ENABLE_RSS instead. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 5efeeea1cf16b6382e1a9e2e389950024ba17f3e Author: Matt Carlson Date: Sun Jul 11 09:31:40 2010 +0000 tg3: Revert RSS indir tbl setup change This patch reverts commit 2601d8a0049c8b5d29cd5adb844a305a804e505f. A spectacular set of coincidences made it look as though the table was setup incorrectly. The original version was correct. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 7d876c05fa6cf82f0274f27276d981ed325697a5 Author: Michael Poole Date: Mon Jul 5 10:50:09 2010 -0400 HID: magicmouse: Correct parsing of large X and Y motions. The X and Y values have two more significant bits in the same byte that contains click status. Include these in the reported value. Thanks to Iain Hibbert of NetBSD for pointing this out. Signed-off-by: Michael Poole Acked-by: Chase Douglas Signed-off-by: Jiri Kosina commit e3612e8669b8c15278058f8dd52e3dc6e7d26710 Author: Chase Douglas Date: Mon Jul 5 09:57:52 2010 -0400 HID: magicmouse: report last touch up The evdev multitouch protocol requires that a last MT sync event must be sent after all touches are up. This change adds the last MT sync event to the hid-magicmouse driver. Also, don't send events when a touch leaves. Signed-off-by: Chase Douglas Acked-by: Michael Poole Signed-off-by: Jiri Kosina commit a7c9a0aa175aee8a66301264bff2a5ff014ca0e7 Author: Bruno Prémont Date: Wed Jun 30 22:36:31 2010 +0200 HID: picolcd: fix deferred_io init/cleanup to fb ordering Adjust ordering if framebuffer (un)registration and defio init/cleanup to match the correct order (init defio, register FB ... unregister FB, cleanup defio) Acked-by: Jaya Kumar Signed-off-by: Bruno Prémont Signed-off-by: Jiri Kosina commit e3845deeb7b00d04d332219628c28b42b7b42a76 Author: Jiri Kosina Date: Sun Jul 11 22:39:55 2010 +0200 trivial: no changes to ov511 driver This is a partial revert of 421f91d21ad6f799dc7b489bb33cc560ccc56f98 ("fix typos concerning "initiali[zs]e"") for ov511 driver, as it is going to be completely removed in the next release anyway. Fixes conflict in linux-next. Reported-by: Stephen Rothwell Signed-off-by: Jiri Kosina commit 6dc398acf944e768a62aa5eed925633e0a3dad0e Author: Kees Bakker Date: Fri Jul 2 22:15:50 2010 +0200 HID: hid-ids.h: keep vendor ids in alphabetical order The VENDOR_IDs were mostly in alphabetical order, but some of the newer entries were not added as such. Some entries were added just at the end, some were added in the middle. This patch places the entries once again in a properly sorted order. Signed-off-by: Kees Bakker Signed-off-by: Jiri Kosina commit 7778dc3e873b7341e52e82a6ae4c65ed03d57a83 Author: Uwe Kleine-König Date: Thu Jul 8 10:37:26 2010 +0200 remove a duplicated comment line Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 49a3df804bec09b8ee8196f79b81757e95cc6de4 Author: Suresh Jayaraman Date: Tue Jul 6 18:29:45 2010 +0530 fscache: fix missing kerneldoc annotation .. and make kerneldoc scripts happy. Signed-off-by: Suresh Jayaraman Acked-by: David Howells Signed-off-by: Jiri Kosina commit ab0cfb928a3839e21942a28a86ad88e56ea3b136 Author: Suresh Jayaraman Date: Tue Jul 6 18:12:39 2010 +0530 fscache: fix a trivial typo in the comment Signed-off-by: Suresh Jayaraman Acked-by: David Howells Signed-off-by: Jiri Kosina commit fa964e1aab51178d690d1c58d8b831eac434912f Author: Kulikov Vasiliy Date: Sat Jul 10 18:35:43 2010 +0400 Documentation: pci.txt: fix typo Doubled 'not'. Signed-off-by: Kulikov Vasiliy Signed-off-by: Jiri Kosina commit 4d45ada36b36a52383042f86a9c320286550daf1 Author: Kulikov Vasiliy Date: Sat Jul 10 14:07:41 2010 +0400 lib/devres.c: fix comment typo 'Unamp' should be 'Unmap'. Signed-off-by: Kulikov Vasiliy Acked-by: Tejun Heo Signed-off-by: Jiri Kosina commit a6557737584457c8d202cb164585973e8d15a29c Author: Justin P. Mattock Date: Sat Jul 3 15:46:13 2010 -0700 Documentation update broken web addresses I've found some web addresses not responding, giving the cannot connect error when trying to load them. The below patch updates the addresses that are not connecting with the best that I can find, and also fixes a couple of addresses, so people can either choose an older version of the package and/or a newer version(i.e. ppp). Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit 698f93159a735bd29a8767c9f60d9b2d75870f8e Author: Uwe Kleine-König Date: Fri Jul 2 20:41:51 2010 +0200 fix comment/printk typos concerning "already" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit b27d63d8f8d34af57805f56005e217c150187531 Author: Uwe Kleine-König Date: Thu Jul 1 20:48:44 2010 +0200 fix comment typos concerning "sequential" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 69c8f52b3897f2faf8510ea7ede8fffabe26c531 Author: Justin P. Mattock Date: Thu Jul 1 14:28:27 2010 -0700 fix #warning about using kernel headers in userpsace Move the preprocessor #warning message: warning: #warning Attempt to use kernel headers from user space, see http://kernelnewbies.org/KernelHeaders from kernel.h to types.h. And also fixe the #warning message due to the preprocessor not being able to read the web address due to it thinking it was the start of a comment. also remove the extra #ifndef _KERNEL_ since it's already there. Signed-off-by: Justin P. Mattock Cc: Arnd Bergmann Signed-off-by: Jiri Kosina commit a607072b8685c18fde9c34aee8402eb6190b8518 Author: Kulikov Vasiliy Date: Fri Jul 9 02:25:40 2010 +0000 82596: free resources on error IRQ 56 was not freed anywhere (neither in i596_open() on error nor in i596_close()), rx_bufs were not freed if init_i596_mem() fails, netif_stop_queue() was not called. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit f163530407280485034c836d908b49787a8189bc Author: Kulikov Vasiliy Date: Fri Jul 9 02:25:22 2010 +0000 82596: do not panic on out of memory If dev_alloc_skb() failed then free already allocated skbs. remove_rx_bufs() can be called multiple times, so set rbd->skb to NULL to avoid double free. remove_rx_bufs() was moved upwards to be seen by init_rx_bufs(). Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 344dbf1073d1cea179ed0831547cab2b7ea4ea27 Author: Sarveshwar Bandi Date: Fri Jul 9 01:43:55 2010 +0000 be2net: Patch to determine if function is VF while running in guest OS. When driver is loaded in guest OS, the pci variables is_virtfn and is_physfn are both set to 0. This change uses registers in controller to determine the same. Signed-off-by: Sarveshwar Bandi Signed-off-by: David S. Miller commit 1ebed71ae23b0b3c68d2a03e8e1b421efb7f35b0 Author: David S. Miller Date: Sat Jul 10 19:25:50 2010 -0700 macvtap: Use dev_t for macvtap_major. Reported-by: "Robert P. J. Day" Signed-off-by: David S. Miller commit 132ff00a0fdea43708639d84ab3b42bb106410d7 Author: Anirban Chakraborty Date: Fri Jul 9 13:15:05 2010 +0000 qlcnic: Disable admin tools interface for VF driver mode Non privileged (VF) driver will not be able to carry out any of the FW update, etc. operations. Disable the tools interface by not creating the sysfs nodes. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit ac8d0c4feb5577a830bbf1d9a3bb5b1d30298e2c Author: Anirban Chakraborty Date: Fri Jul 9 13:14:58 2010 +0000 qlcnic: Check FW capability for TSO Driver checks TSO capability from FW before enabling it. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit d77535162e736c47978d5c01469c56e1781dc91b Author: Ben Hutchings Date: Fri Jul 9 09:12:41 2010 +0000 net: Document that dev_get_stats() returns the given pointer Document that dev_get_stats() returns the same stats pointer it was given. Remove const qualification from the returned pointer since the caller may do what it likes with that structure. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 3cfde79c6c7c8002375c4a8e5be7f602fbb9675d Author: Ben Hutchings Date: Fri Jul 9 09:11:52 2010 +0000 net: Get rid of rtnl_link_stats64 / net_device_stats union In commit be1f3c2c027cc5ad735df6a45a542ed1db7ec48b "net: Enable 64-bit net device statistics on 32-bit architectures" I redefined struct net_device_stats so that it could be used in a union with struct rtnl_link_stats64, avoiding the need for explicit copying or conversion between the two. However, this is unsafe because there is no locking required and no lock consistently held around calls to dev_get_stats() and use of the statistics structure it returns. In commit 28172739f0a276eb8d6ca917b3974c2edb036da3 "net: fix 64 bit counters on 32 bit arches" Eric Dumazet dealt with that problem by requiring callers of dev_get_stats() to provide storage for the result. This means that the net_device::stats64 field and the padding in struct net_device_stats are now redundant, so remove them. Update the comment on net_device_ops::ndo_get_stats64 to reflect its new usage. Change dev_txq_stats_fold() to use struct rtnl_link_stats64, since that is what all its callers are really using and it is no longer going to be compatible with struct net_device_stats. Eric Dumazet suggested the separate function for the structure conversion. Signed-off-by: Ben Hutchings Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit 5f202bd5ca64132cdd7f186656bc0221f257733d Author: Arnd Bergmann Date: Sun Jul 4 00:02:25 2010 +0200 do_coredump: Do not take BKL core_pattern is not actually protected and hasn't been ever since we introduced procfs support for sysctl -- a _long_ time. Don't take it here either. Also nothing inside do_coredump appears to require bkl protection. Signed-off-by: Arnd Bergmann [ remove smp_lock.h headers ] Signed-off-by: Frederic Weisbecker commit 35be1b716a475717611b2dc04185e9d80b9cb693 Author: Kenji Kaneshige Date: Fri Jun 18 12:23:57 2010 +0900 x86, ioremap: Fix normal ram range check Check for normal RAM in x86 ioremap() code seems to not work for the last page frame in the specified physical address range. Signed-off-by: Kenji Kaneshige LKML-Reference: <4C1AE6CD.1080704@jp.fujitsu.com> Signed-off-by: H. Peter Anvin commit ffa71f33a820d1ab3f2fc5723819ac60fb76080b Author: Kenji Kaneshige Date: Fri Jun 18 12:22:40 2010 +0900 x86, ioremap: Fix incorrect physical address handling in PAE mode Current x86 ioremap() doesn't handle physical address higher than 32-bit properly in X86_32 PAE mode. When physical address higher than 32-bit is passed to ioremap(), higher 32-bits in physical address is cleared wrongly. Due to this bug, ioremap() can map wrong address to linear address space. In my case, 64-bit MMIO region was assigned to a PCI device (ioat device) on my system. Because of the ioremap()'s bug, wrong physical address (instead of MMIO region) was mapped to linear address space. Because of this, loading ioatdma driver caused unexpected behavior (kernel panic, kernel hangup, ...). Signed-off-by: Kenji Kaneshige LKML-Reference: <4C1AE680.7090408@jp.fujitsu.com> Signed-off-by: H. Peter Anvin commit 9726f347f82b0ce802530deb00ee2dde369e1d2f Author: Emmanuel Grumbach Date: Tue Jun 29 11:29:49 2010 -0700 iwlagn: fix the bit mask of a FH register in stop Tx DMA flow When we stop the Tx DMA channels, we poll bits 16:31 in FH_TSSR_RX_STATUS_REG. From 4965 and up, only the bits 16:26 are legal. Bits 27:31 are not used and are always unset. Polling them will lead to fail on timeout but since the timeout is quite small, the stall was not felt. Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit 41691de32664f06507c24cea499b307624e3183e Author: Wey-Yi Guy Date: Thu Jul 1 16:45:58 2010 -0700 iwlagn: more generic description for iwlagn devices Intel Wireless WiFi Next Gen AGN support two major categories: 1. Intel Wireless WiFi 4965 AGN device 2. Intel Wireless-N/Advanced-N/Ultimate-N family Signed-off-by: Wey-Yi Guy commit 4b58645ce68c5fd446bff0c847ff9385cd204680 Author: Jay Sternberg Date: Fri Jul 2 15:49:10 2010 -0700 iwlwifi: correct descriptions of advanced ucode errors ucode errors were redefined in new ucode images and all new errors were showing as advanced sysasserts which was misleading. new errors are not sequential so additional lookup table added. errors do not overlap so both are used to support older and newer ucode images. Signed-off-by: Jay Sternberg Signed-off-by: Wey-Yi Guy commit 0326433995ad43b64ebabdd2390a5d11f33f025b Author: Shanyu Zhao Date: Tue Jun 29 17:27:27 2010 -0700 iwlwifi: enable 6050 series Gen2 devices To enable 6050 series Gen 2 devices: 1) new PCI_IDs are added; 2) new EEPROM version and calibration version numbers defined; 3) new hardware REV number defined; Signed-off-by: Shanyu Zhao Signed-off-by: Wey-Yi Guy commit 116e1f1b09dffe0ff8ebab73501324dca7bbbe5e Author: Changli Gao Date: Fri Jul 9 17:31:49 2010 +0200 netfilter: xt_TPROXY: the length of lines should be within 80 According to the Documentation/CodingStyle, the length of lines should be within 80. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 8a0acaac807ec3fcb7b5a895c6bbb8e8b61e6275 Author: Xiaoyu Du Date: Fri Jul 9 17:27:47 2010 +0200 ipvs: lvs sctp protocol handler is incorrectly invoked ip_vs_app_pkt_out lvs sctp protocol handler is incorrectly invoked ip_vs_app_pkt_out Since there's no sctp helpers at present, it does the same thing as ip_vs_app_pkt_in. Signed-off-by: Xiaoyu Du Acked-by: Simon Horman Signed-off-by: Patrick McHardy commit cea0bb1bc59b94625e60b69aaa9ad6749d5b57dd Author: Mika Westerberg Date: Mon May 10 09:29:32 2010 +0100 ARM: 6122/1: kdump: add support for elfcorehdr parameter This parameter is used by primary kernel to pass address of vmcore header to the dump capture kernel. Signed-off-by: Mika Westerberg Signed-off-by: Russell King commit 67742c8168ed66fdd6cb5dc90e06c43cdc5bba07 Author: Mika Westerberg Date: Mon May 10 09:26:19 2010 +0100 ARM: 6120/1: kdump: implement copy_oldmem_page() This function is used by vmcore code to read a page from the old kernel memory. Signed-off-by: Mika Westerberg Signed-off-by: Russell King commit 8594a0c333dd79c45c3a24cac8029177728363e0 Author: Mika Westerberg Date: Mon May 10 09:24:53 2010 +0100 ARM: 6119/1: kdump: skip indirection page when crashing When we are crashing there is no indirection page in place. Only control page is present. Signed-off-by: Mika Westerberg Signed-off-by: Russell King commit c63836204b27faec5a22d4b53692690cb967aaac Author: Mika Westerberg Date: Mon May 10 09:23:37 2010 +0100 ARM: 6118/1: kdump: implement machine_crash_shutdown() Implement function machine_crash_shutdown() which disables IRQs and saves machine state to ELF notes structure. Signed-off-by: Mika Westerberg Signed-off-by: Russell King commit 24b776bfb6396fded148167643ffaf8eb3f782b1 Author: Mika Westerberg Date: Mon May 10 09:22:14 2010 +0100 ARM: 6117/1: kdump: implement crash_setup_regs() Implement machine specific function crash_setup_regs() which is responsible for storing machine state when crash occured. Signed-off-by: Mika Westerberg Signed-off-by: Russell King commit 3c57fb43c8fcbe46541d3a0274f0b4c802c68927 Author: Mika Westerberg Date: Mon May 10 09:20:22 2010 +0100 ARM: 6116/1: kdump: reserve memory for crashkernel Implemented ARM support for command line option "crashkernel=size@start" which allows user to reserve some memory for a dump capture kernel. Signed-off-by: Mika Westerberg Signed-off-by: Russell King commit f159f4ed55bb0fa5470800641e03a13a7e0eae6e Author: Tony Lindgren Date: Mon Jul 5 14:53:10 2010 +0100 ARM: 6207/1: Replace CONFIG_HAS_TLS_REG with HWCAP_TLS and check for it on V6 The TLS register is only available on ARM1136 r1p0 and later. Set HWCAP_TLS flags if hardware TLS is available and test for it if CONFIG_CPU_32v6K is not set for V6. Note that we set the TLS instruction in __kuser_get_tls dynamically as suggested by Jamie Lokier . Also the __switch_to code is optimized out in most cases as suggested by Nicolas Pitre . Reviewed-by: Nicolas Pitre Signed-off-by: Tony Lindgren Signed-off-by: Russell King commit c1b2d9704c77ddaec46d5d681e1360ac40268743 Author: Magnus Damm Date: Mon Jul 5 10:00:11 2010 +0100 ARM: 6206/1: CONFIG_FORCE_MAX_ZONEORDER update for SH-Mobile ARM Allow SH-Mobile ARM users to adjust FORCE_MAX_ZONEORDER. The Kconfig entry is taken from SH and non-4K page size stuff has been trimmed away. For now only SH-Mobile ARM is allowed to change this variable, SA1111 configs are kept at "9" and the rest at "11". CONFIG_FORCE_MAX_ZONEORDER lets the user tweak the maximum amount of physically contiguous memory that can be allocated by the kernel. Signed-off-by: Magnus Damm Signed-off-by: Russell King commit 5aaf254409f8d58229107b59507a8235b715a960 Author: Tony Lindgren Date: Thu Jul 1 13:41:05 2010 +0100 ARM: 6203/1: Make VFPv3 usable on ARMv6 MVFR0 and MVFR1 are only available starting with ARM1136 r1p0 release according to "B.5 VFP changes" in DDI0211F_arm1136_r1p0_trm.pdf. This is also when TLS register got added, so we can use HAS_TLS also to test for MVFR0 and MVFR1. Otherwise VFPFMRX and VFPFMXR access fails and we get: Internal error: Oops - undefined instruction: 0 [#1] PC is at no_old_VFP_process+0x8/0x3c LR is at __und_svc+0x48/0x80 ... Signed-off-by: Tony Lindgren Acked-by: Catalin Marinas Signed-off-by: Russell King commit e513f8bf240d34bd6e732ba2f74df9ab84686ce6 Author: Will Deacon Date: Fri Jun 25 12:24:53 2010 +0100 ARM: 6199/1: Add kprobe-based event tracer This patch enables the HAVE_REGS_AND_STACK_ACCESS_API option for ARM which is required by the kprobe events tracer. Code based on the PowerPC port. Cc: Jean Pihet Tested-by: Jamie Iles Signed-off-by: Will Deacon Signed-off-by: Russell King commit eb668c6d06dd4f935fc610207c58a5f221384651 Author: Will Deacon Date: Fri Jun 25 12:24:54 2010 +0100 ARM: 6198/1: perf probe: Add ARM DWARF register number mappings This patch adds mappings from DWARF register numbers to the register names used by the ARM `Regs and Stack Access API'. Cc: Jean Pihet Tested-by: Jamie Iles Signed-off-by: Will Deacon Signed-off-by: Russell King commit 354e6f72d6fd5d3d2963efe030265972866cd969 Author: eric miao Date: Fri Jun 25 09:46:09 2010 +0100 ARM: 6197/2: preliminary support for sparse IRQ So to allow NR_IRQS to be dynamic and platforms to specify the number of IRQs really needed. Acked-by: Paul Mundt Signed-off-by: Eric Miao Signed-off-by: Russell King commit 5e3d20a68f63fc5a310687d81956c3b96e488b84 Author: Arnd Bergmann Date: Sun Jul 4 00:02:26 2010 +0200 init: Remove the BKL from startup code I have shown by code review that no driver takes the BKL at init time any more, so whatever the init code was locking against is no longer there and it is now safe to remove the BKL there. Signed-off-by: Arnd Bergmann Acked-by: Steven Rostedt Signed-off-by: Frederic Weisbecker commit 48f1d5a3cef5782cbc7a32c29f1eda2342877c13 Author: Linus Walleij Date: Fri Jul 2 10:24:03 2010 +0100 ARM: 6204/1: Fixups for the RealView PB1176 This is a number of basic fixes to the PB1176 that makes it tick properly: - Detect MMC insertion/removal even when PL061 GPIO is not compiled in. The register to read this status directly is removed on the PB1176. - Define the UART3 on the DevChip (where is actually is) and define the new UART4 serial port on the FPGA. - Also define the clocks for these two UARTs apropriately. - Remove the false notion that the PB1176 should have its CLCD on the ISSP, this is not the case, it is in the DevChip. - Remove the defintions and the previously commented-out PL081 DMAC. As confirmed by mail this was found to be broken on the PB1176 board and removed from the subsequent FPGA images. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit bde28b846e7e0ea6fea78f6ad1c43091fdf4d3e0 Author: Will Deacon Date: Fri Jul 9 13:52:09 2010 +0100 ARM: 6218/1: Versatile Express: add support for local timers on CA9X4 daughterboard This patch adds support for the Cortex-A9 local timers available when using the CA9X4 daughterboard with the Versatile Express. Signed-off-by: Will Deacon Signed-off-by: Russell King commit d32d552e665dc07384208108165592d0b524dba2 Author: Clemens Ladisch Date: Thu Jul 8 16:38:01 2010 +0200 ALSA: usb-audio: silence a superfluous warning It is not advisable to print a warning when a device does not support setting the sample rate because this is perfectly valid for devices with a single rate or where rates are implicitly changed by selecting another alternate setting. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 064baaca873c64feaea0e4476d14d4c9fd978e9e Author: Ryan Mallon Date: Tue Jul 6 21:48:53 2010 +0100 ARM: 6209/2: at91: Add support for Bluewater Systems Snapper 9260/9G20 modules Add support for Bluewater Systems Snapper 9260/9G20 modules Signed-off-by: Ryan Mallon Acked-by: Andrew Victor Signed-off-by: Russell King commit 708ee98c5b9437f699ec445bc6fe66b31b2b6ac7 Author: Ryan Mallon Date: Mon Jun 28 22:03:25 2010 +0100 ARM: 6200/1: AT91: Define NR_BUILTIN_GPIO Add definition for NR_BUILTIN_GPIO for AT91 family Signed-off-by: Ryan Mallon Acked-by: Andrew Victor Signed-off-by: Russell King commit 7dca3343fc5ae5af2fa9248057cd65077a5576e1 Author: Nicolas Ferre Date: Mon Jun 21 14:59:27 2010 +0100 ARM: 6185/1: AT91: PM: dual ram controller support This rework allows to address tow memory controllers. AT91SAM9263 and AT91SAM9G45 family have tow SDRAM or DDR/SDRAM controllers. Power management should take care of this. This patch modify the way RAM IP header files are implemented to allow access to registers of both controllers ; it also adds some macros. We also modify the power management files to use those modified header files. Slow clock (assembly) and regular power management functions are synchronized for setting of RAM self-refresh procedure: (lpr & ~AT91_DDRSDRC_LPCB) | AT91_DDRSDRC_LPCB_SELF_REFRESH Note that AT91RM9200 is not impacted by this modification. Signed-off-by: Nicolas Ferre Acked-by: Andrew Victor Signed-off-by: Russell King commit f8fb27bd4aac6b5b16fa37761aeffe8976d445da Merge: afbd9b8 ac0547d Author: Takashi Iwai Date: Fri Jul 9 10:09:00 2010 +0200 Merge branch 'fix/hda' into topic/hda commit afbd9b8448f4b7d15673c6858012f384f18d28b8 Author: Takashi Iwai Date: Thu Jul 8 18:40:37 2010 +0200 ALSA: hda - Limit the amp value to write Check the amp max value at put callbacks and set the upper limit so that the driver won't write any invalid value over the defined range. Signed-off-by: Takashi Iwai commit 3507e2a8f171f4322bf78f9d618a4e435de843ce Author: Takashi Iwai Date: Thu Jul 8 18:39:00 2010 +0200 ALSA: hda - Add beep mixer support to Conexant codecs Added the beep mixer controls to Conexant codecs. They simply control the digital beep generator widget. For cx5047, I couldn't find any beep generator, so it's not implemented there. Signed-off-by: Takashi Iwai commit cc7b86c1a8f207c8aa77aad6941475d8294a83c4 Author: Karl Hiramoto Date: Thu Jul 8 20:55:38 2010 +0000 usb/atm/ueagle-atm.c: call atm_dev_signal_change() when signal changes. Propagate signal changes to upper atm layer. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit 23f89f0488fa0fc843503fa07768d0d3edde3c44 Author: Karl Hiramoto Date: Thu Jul 8 20:55:37 2010 +0000 usb/atm/speedtch.c: call atm_dev_signal_change() when signal changes. Propagate signal changes to upper atm layer. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit 676f3d268682175e821f33804a389255a192e221 Author: Karl Hiramoto Date: Thu Jul 8 20:55:36 2010 +0000 usb/atm/cxacru.c: call atm_dev_signal_change() when signal changes. Propagate signal changes to upper atm layer. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit e0b901a9532bdbbe56f37e61bdcc96ee05ab94b7 Author: Karl Hiramoto Date: Thu Jul 8 20:55:35 2010 +0000 atm/suni.c: call atm_dev_signal_change() when signal changes. Propagate changes to upper atm layer. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit 49d49106fc6cbb48c832aa58e3e6cee8b49d5e8f Author: Karl Hiramoto Date: Thu Jul 8 20:55:34 2010 +0000 atm/solos-pci: call atm_dev_signal_change() when signal changes. Propagate changes to upper atm layer, so userspace netmontor knows when DSL showtime reached. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit 0753455322a957e6a8fd8a9db163ba5aec92ce76 Author: Karl Hiramoto Date: Thu Jul 8 20:55:33 2010 +0000 atm/idt77105.c: call atm_dev_signal_change() when signal changes. Propagate changes to upper atm layer. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit c69fb76e8f53b36b81fd7c8a1ed251aaf6bb0386 Author: Karl Hiramoto Date: Thu Jul 8 20:55:32 2010 +0000 atm/adummy: add syfs DEVICE_ATTR to change signal Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit 005066122b58f3b350736cc896af46aea2e32d23 Author: Karl Hiramoto Date: Thu Jul 8 20:55:31 2010 +0000 atm/br2684: register notifier event for carrier signal changes. When a signal change event occurs call netif_carrier_on/off. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit 7313bb8f3dd6e28bcf9c42adfd54a5cf9a4949e0 Author: Karl Hiramoto Date: Thu Jul 8 20:55:30 2010 +0000 atm: propagate signal changes via notifier Add notifier chain for changes in atm_dev. Clients like br2684 will call register_atmdevice_notifier() to be notified of changes. Drivers will call atm_dev_signal_change() to notify clients like br2684 of the change. On DSL and ATM devices it's usefull to have a know if you have a carrier signal. netdevice LOWER_UP changes can be propagated to userspace via netlink monitor. Signed-off-by: Karl Hiramoto Signed-off-by: David S. Miller commit 68dc9d36c19aa1fd1633427b419d5e1f44753e8a Author: Casey Leedom Date: Thu Jul 8 10:05:48 2010 -0700 cxgb4vf: Implement "Unhandled Interrupts" statistic Implement "Unhandled Interrupts" statistic so we can detect when the hardware tells us that it things we have work to do but we don't find anything ... Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit fabc51a640b35a771b6c75d2186193fdaf25cf56 Author: Kulikov Vasiliy Date: Thu Jul 8 23:44:26 2010 -0700 fec_mpc52xx: fix error path Error path in mpc52xx_fec_probe() is broken. We must free everything that we've allocated. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 7cc36f6f7116918c8a8990a0f23f62d2288a81bf Author: Kulikov Vasiliy Date: Thu Jul 8 23:43:20 2010 -0700 ll_temac: fix memory leak If of_iomap() or irq_of_parse_and_map() fail then np must be freed. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 9f1e7582749980b51da67671b2536aadca3596b8 Author: Kulikov Vasiliy Date: Thu Jul 8 23:42:40 2010 -0700 ax88796: free irq on error If ax_ei_open() failed we must free previously requested irq. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 3038bdb122c8aa2b219b548a345aafb1204c4f0b Author: Richard Röjfors Date: Thu Jul 8 23:36:59 2010 -0700 ks8842: Remove unnecessary bank select. This patch removes an unnecessary bank select before resetting the controller. Signed-off-by: Richard Röjfors Signed-off-by: David S. Miller commit cc88e450ad14a79fd2d083f0827607499cf1ef51 Author: Richard Röjfors Date: Thu Jul 8 23:36:30 2010 -0700 ks8842: Do the TX timeout work in workqueue context. Currently all code that needs to be run at TX timeout is done in the calling context, where bottom halves are disabled. Some of the code blocks, so it needs to be done in a different context. This patch adds in a work struct which is scheduled at TX timeout. Then the timeout code is executed within work queue context. Signed-off-by: Richard Röjfors Signed-off-by: David S. Miller commit 301e9d96bf65292f916a3936d63c504ac7792ee6 Author: Denis Kirjanov Date: Thu Jul 8 10:24:51 2010 +0000 ll_temac: fix DMA resources leak V2: Check pointers before releasing resources. Fix DMA resources leak. Signed-off-by: Denis Kirjanov Signed-off-by: Kulikov Vasiliy commit 47562e5d325af9ce5306bce53eb7cdd353fe46be Author: Ben Hutchings Date: Thu Jul 8 13:36:32 2010 +0000 sfc: Remove unused field left from mis-merge Commit eedc765ca4b19a41cf0b921a492ac08d640060d1 merged changes from net-2.6 that added and then removed efx_nic::port_num, which was also added in net-next-2.6. The end result should be that it is removed, since it is now unused. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 7fe876af921d1d2bc8353e0062c10ff35e902653 Author: Eric Dumazet Date: Thu Jul 8 06:14:55 2010 +0000 tg3: allow TSO on vlan devices Similar to commit 72dccb01e8632aa (bnx2: Update vlan_features) In order to enable TSO on vlan devices, tg3 needs to update dev->vlan_features. Tested on HP NC326m (aka BCM5715S (rev a3)) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 511d22247be767bbf275ee7a5a388c4f009aa0c1 Author: Eric Dumazet Date: Wed Jul 7 20:44:24 2010 +0000 tg3: 64 bit stats on all arches Now core network is able to handle 64 bit netdevice stats on 32 bit arches, we can provide them for tg3, since hardware maintains 64 bit counters. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 5d07bf264746b7c22d7104e0e2232eeea3d32296 Author: Eric Dumazet Date: Thu Jul 8 04:08:43 2010 +0000 bnx2: 64 bit stats on all arches Now core network is able to handle 64 bit netdevice stats on 32 bit arches, we can provide them for bnx2, since hardware maintains some 64 bit counters. Signed-off-by: Eric Dumazet Acked-by: Michael Chan Signed-off-by: David S. Miller commit 122e28ebac2cc2378101d1d37a5886c3ac1f8b18 Author: FUJITA Tomonori Date: Wed Jul 7 23:52:38 2010 +0000 cxgb3: simplify need_skb_unmap We can use CONFIG_NEED_DMA_MAP_STATE to see if a platform does real DMA unmapping. Signed-off-by: FUJITA Tomonori Signed-off-by: David S. Miller commit 57b2eaf7ddeae307fac202d82a6fabf5976e575b Author: FUJITA Tomonori Date: Wed Jul 7 23:52:37 2010 +0000 cxgb4vf: remove obsolete DECLARE_PCI_UNMAP_ADDR usage We could use DEFINE_DMA_UNMAP_ADDR instead but using CONFIG_NEED_DMA_MAP_STATE is a simpler way to see if a platform does real DMA unmapping. Signed-off-by: FUJITA Tomonori Signed-off-by: David S. Miller commit a204b48ed4dc31acf61090e530430ce3272b6aab Author: Eric Dumazet Date: Thu Jul 8 23:12:21 2010 -0700 vlan: allow TSO setting on vlan interfaces When we need to shape traffic using low speeds, we need to disable tso on network interface : ethtool -K eth0.2240 tso off It seems vlan interfaces miss the set_tso() ethtool method. Before enabling TSO, we must check real device supports TSO for VLAN-tagged packets and enables TSO. Note that a TSO change on real device propagates TSO setting on all vlans, even if admin selected a different TSO setting. Signed-off-by: Eric Dumazet Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 850f22d5688941ea51628f3f8f8dcf3baff409ff Author: Michael Ellerman Date: Fri Jul 9 15:34:00 2010 +1000 powerpc/book3e: Resend doorbell exceptions to ourself If we are soft disabled and receive a doorbell exception we don't process it immediately. This means we need to check on the way out of irq restore if there are any doorbell exceptions to process. The problem is at that point we don't know what our regs are, and that in turn makes xmon unhappy. To workaround the problem, instead of checking for and processing doorbells, we check for any doorbells and if there were any we send ourselves another. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 0e37d25950f4fd5a7d74723e6ce608aaa972d24c Author: David Gibson Date: Fri Jul 9 15:32:30 2010 +1000 powerpc/book3e: Use set_irq_regs() in the msgsnd/msgrcv IPI path include/asm-generic/irq_regs.h declares per-cpu irq_regs variables and get_irq_regs() and set_irq_regs() helper functions to maintain them. These can be used to access the proper pt_regs structure related to the current interrupt entry (if any). In the powerpc arch code, this is used to maintain irq regs on decrementer and external interrupt exceptions. However, for the doorbell exceptions used by the msgsnd/msgrcv IPI mechanism of newer BookE CPUs, the irq_regs are not kept up to date. In particular this means that xmon will not work properly on SMP, because the secondary xmon instances started by IPI will blow up when they cannot retrieve the irq regs. This patch fixes the problem by adding calls to maintain the irq regs across doorbell exceptions. Signed-off-by: David Gibson Signed-off-by: Benjamin Herrenschmidt commit 89c81797d4a0779a957f4ea1f0c676cda203615b Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:31:28 2010 +1000 powerpc/book3e: Hookup doorbells exceptions on 64-bit Book3E Note that critical doorbells are an unimplemented stub just like other critical or machine check handlers, since we haven't done support for "levelled" exceptions yet. Signed-off-by: Benjamin Herrenschmidt commit e8775d4aa17d70d123814e68a6a51bbea50e5c16 Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:30:22 2010 +1000 powerpc/book3e: Don't re-trigger decrementer on lazy irq restore The decrementer on BookE acts as a level interrupt and doesn't need to be re-triggered when going negative. It doesn't go negative anyways (unless programmed to auto-reload with a negative value) as it stops when reaching 0. Signed-off-by: Benjamin Herrenschmidt commit b9f1cd71dbf21a91fb7e2336a1d1ff18b97771e5 Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:29:53 2010 +1000 powerpc/book3e: More doorbell cleanups. Sample the PIR register The doorbells use the content of the PIR register to match messages from other CPUs. This may or may not be the same as our linux CPU number, so using that as the "target" is no right. Instead, we sample the PIR register at boot on every processor and use that value subsequently when sending IPIs. We also use a per-cpu message mask rather than a global array which should limit cache line contention. Note: We could use the CPU number in the device-tree instead of the PIR register, as they are supposed to be equivalent. This might prove useful if doorbells are to be used to kick CPUs out of FW at boot time, thus before we can sample the PIR. This is however not the case now and using the PIR just works. Signed-off-by: Benjamin Herrenschmidt commit e3145b387a02d4bf8b8033b1354d413fc0864494 Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:25:18 2010 +1000 powerpc/book3e: Move doorbell_exception from traps.c to dbell.c ... where it belongs Signed-off-by: Benjamin Herrenschmidt commit a2e198116f97bb1cd5b37ff33a8cfdfb4010cf5b Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:24:47 2010 +1000 powerpc/book3e: Hack to get gdb moving along on Book3E 64-bit Our handling of debug interrupts on Book3E 64-bit is not quite the way it should be just yet. This is a workaround to let gdb work at least for now. We ensure that when context switching, we set the appropriate DBCR0 value for the new task. We also make sure that we turn off MSR[DE] within the kernel, and set it as part of the bits that get set when going back to userspace. In the long run, we will probably set the userspace DBCR0 on the exception exit code path and ensure we have some proper kernel value to set on the way into the kernel, a bit like ppc32 does, but that will take more work. Signed-off-by: Benjamin Herrenschmidt commit 0866eb99cc4d5951cb0ed6ddfa92d5a3d55216ae Author: Benjamin Herrenschmidt Date: Fri Jul 9 15:21:41 2010 +1000 powerpc/book3e: mtmsr should not be mtmsrd on book3e 64-bit Signed-off-by: Benjamin Herrenschmidt commit dd4ba83dc1becbb3bb383851381c10c372e47247 Author: Stephen Hemminger Date: Thu Jul 8 21:35:58 2010 -0700 gre: propagate ipv6 transport class This patch makes IPV6 over IPv4 GRE tunnel propagate the transport class field from the underlying IPV6 header to the IPV4 Type Of Service field. Without the patch, all IPV6 packets in tunnel look the same to QoS. This assumes that IPV6 transport class is exactly the same as IPv4 TOS. Not sure if that is always the case? Maybe need to mask off some bits. The mask and shift to get tclass is copied from ipv6/datagram.c Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit dda7b73cdf9dc5bd52c3adad42cb5e6ab4639883 Author: Markus Lehtonen Date: Wed Jul 7 09:45:18 2010 -0700 Input: twl4030-pwrbutton - replace __devinit with __init Power button is not hot-pluggable so we can save some memory by using __init. Signed-off-by: Markus Lehtonen Signed-off-by: Dmitry Torokhov commit cccd23428347251713b643d4bc5edb610308fd49 Author: Christoph Egger Date: Thu Jun 10 02:23:11 2010 +0000 powerpc: Removing dead CONFIG_SMP_750 CONFIG_SMP_750 doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: Benjamin Herrenschmidt commit 74052173177b7f969d9cc0c8f136093e1d447a01 Author: Julia Lawall Date: Fri May 14 09:30:13 2010 +0000 powerpc/pseries: Use kstrdup Use kstrdup when the goal of an allocation is copy a string into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to; expression flag,E1,E2; statement S; @@ - to = kmalloc(strlen(from) + 1,flag); + to = kstrdup(from, flag); ... when != \(from = E1 \| to = E1 \) if (to==NULL || ...) S ... when != \(from = E2 \| to = E2 \) - strcpy(to, from); // Signed-off-by: Julia Lawall Signed-off-by: Benjamin Herrenschmidt commit 307a54cc80ddc7e5d87c4862dd12f43a01355187 Author: Julia Lawall Date: Fri May 14 09:31:26 2010 +0000 powerpc/iseries: Use kstrdup Use kstrdup when the goal of an allocation is copy a string into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to; expression flag,E1,E2; statement S; @@ - to = kmalloc(strlen(from) + 1,flag); + to = kstrdup(from, flag); ... when != \(from = E1 \| to = E1 \) if (to==NULL || ...) S ... when != \(from = E2 \| to = E2 \) - strcpy(to, from); // Signed-off-by: Julia Lawall Signed-off-by: Benjamin Herrenschmidt commit 41eab6f88f24124df89e38067b3766b7bef06ddb Author: Anton Blanchard Date: Sun May 16 20:22:31 2010 +0000 powerpc/numa: Use form 1 affinity to setup node distance Form 1 affinity allows multiple entries in ibm,associativity-reference-points which represent affinity domains in decreasing order of importance. The Linux concept of a node is always the first entry, but using the other values as an input to node_distance() allows the memory allocator to make better decisions on which node to go first when local memory has been exhausted. We keep things simple and create an array indexed by NUMA node, capped at 4 entries. Each time we lookup an associativity property we initialise the array which is overkill, but since we should only hit this path during boot it didn't seem worth adding a per node valid bit. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit a591f6b56d6fbd7d1951e352fe5b0acf6b91e497 Author: Paul E. McKenney Date: Tue May 18 07:56:03 2010 +0000 powerpc: Remove all rcu head initializations Remove all rcu head inits. We don't care about the RCU head state before passing it to call_rcu() anyway. Only leave the "on_stack" variants so debugobjects can keep track of objects on stack. Signed-off-by: Mathieu Desnoyers Signed-off-by: Paul E. McKenney Signed-off-by: Benjamin Herrenschmidt commit 540c6c392f01887dcc96bef0a41e63e6c1334f01 Author: Martyn Welch Date: Mon May 24 22:09:16 2010 +0000 powerpc: Add i8042 keyboard and mouse irq parsing Currently the irqs for the i8042, which historically provides keyboard and mouse (aux) support, is hardwired in the driver rather than parsing the dts. This patch modifies the powerpc legacy IO code to attempt to parse the device tree for this information, failing back to the hardcoded values if it fails. Signed-off-by: Martyn Welch Signed-off-by: Benjamin Herrenschmidt commit 68581e9350506dcf0160c3a29dcd21e5a848cda7 Author: Mark Nelson Date: Wed May 26 20:56:04 2010 +0000 powerpc/pseries: Add WARN_ON() to request_event_sources_irqs() on irq allocation/request failure At the moment if request_event_sources_irqs() can't allocate or request the interrupt, it just does a KERN_ERR printk. This may be fine for the existing RAS code where if we miss an EPOW event it just means that the event won't be logged and if we miss one of the RAS errors then we could miss an event that we perhaps should take action on. But, for the upcoming IO events code that will use event-sources if we can't allocate or request the interrupt it means we'd potentially miss an interrupt from the device. So, let's add a WARN_ON() in this error case so that we're a bit more vocal when something's amiss. While we're at it, also use pr_err() to neaten the code up a bit. Signed-off-by: Mark Nelson Signed-off-by: Benjamin Herrenschmidt commit b08e281b5ae681abcbc1815c13d4a3eb3df4ff1b Author: Mark Nelson Date: Wed May 26 21:40:39 2010 +0000 powerpc/pseries: Rename RAS_VECTOR_OFFSET to RTAS_VECTOR_EXTERNAL_INTERRUPT and move to rtas.h The RAS code has a #define, RAS_VECTOR_OFFSET, that's used in the check-exception RTAS call for the vector offset of the exception. We'll be using this same vector offset for the upcoming IO Event interrupts code (0x500) so let's move it to include/asm/rtas.h and call it RTAS_VECTOR_EXTERNAL_INTERRUPT. Signed-off-by: Mark Nelson Signed-off-by: Benjamin Herrenschmidt commit ae01f84b93b274e2f215bdf6d0b46435679b5f9a Author: Anton Blanchard Date: Mon May 31 18:45:11 2010 +0000 powerpc: Optimise per cpu accesses on 64bit Now we dynamically allocate the paca array, it takes an extra load whenever we want to access another cpu's paca. One place we do that a lot is per cpu variables. A simple example: DEFINE_PER_CPU(unsigned long, vara); unsigned long test4(int cpu) { return per_cpu(vara, cpu); } This takes 4 loads, 5 if you include the actual load of the per cpu variable: ld r11,-32760(r30) # load address of paca pointer ld r9,-32768(r30) # load link address of percpu variable sldi r3,r29,9 # get offset into paca (each entry is 512 bytes) ld r0,0(r11) # load paca pointer add r3,r0,r3 # paca + offset ld r11,64(r3) # load paca[cpu].data_offset ldx r3,r9,r11 # load per cpu variable If we remove the ppc64 specific per_cpu_offset(), we get the generic one which indexes into a statically allocated array. This removes one load and one add: ld r11,-32760(r30) # load address of __per_cpu_offset ld r9,-32768(r30) # load link address of percpu variable sldi r3,r29,3 # get offset into __per_cpu_offset (each entry 8 bytes) ldx r11,r11,r3 # load __per_cpu_offset[cpu] ldx r3,r9,r11 # load per cpu variable Having all the offsets in one array also helps when iterating over a per cpu variable across a number of cpus, such as in the scheduler. Before we would need to load one paca cacheline when calculating each per cpu offset. Now we have 16 (128 / sizeof(long)) per cpu offsets in each cacheline. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 51c7fdba40e741dfe18455b5e4240b70c422bf2e Author: Denis Kirjanov Date: Wed Jun 16 04:34:44 2010 +0000 powerpc/iseries: Fix constant warning Fix smatch warning: constant 0x8000000000000000 is so big it is unsigned long Signed-off-by: Denis Kirjanov Signed-off-by: Benjamin Herrenschmidt commit 66953ebef60ffe94650a735b445f1495d989c523 Author: Matthew McClintock Date: Tue Jun 29 09:42:26 2010 +0000 powerpc/mpic: Add ability to reset a core via MPIC We need the ability to reset cores for use with kexec/kdump for SMP systems. Calling this function with the specific core you want to reset will cause the CPU to spin in reset. Signed-off-by: Matthew McClintock Signed-off-by: Benjamin Herrenschmidt commit d10ac3734d07bee675384d22d06883b3c57b1524 Author: Becky Bruce Date: Wed Jun 30 10:23:31 2010 +0000 powerpc/fsl-booke: Fix comments in mmu code that mention BATS There are no BATS on BookE - we have the TLBCAM instead. Also correct the page size information to included extended sizes. We don't actually allow a 4G page size to be used, so comment on that as well. Signed-off-by: Becky Bruce Signed-off-by: Benjamin Herrenschmidt commit 6901c6cca1271d1724fc15e9937e0820e2d2fbd5 Author: Kulikov Vasiliy Date: Sat Jul 3 06:03:48 2010 +0000 powerpc/pseries/eeh: Use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: Benjamin Herrenschmidt commit 4455b1191cabbf7ecada800b7cfeccddb0af2b3a Author: Chris Metcalf Date: Tue Jul 6 08:03:16 2010 +0000 hvc_console: use "*_console" nomenclature to avoid modpost warning. The use of "hvc_con_driver" as the name for a file-static "struct console" with a ".setup" field pointing to an __init function causes a modpost warning, since a non-initdata structure points to init code. Using "hvc_console" as the name triggers the hacky "*_console" workaround in modpost to silence the warning, and is the same thing that most of the other console drivers already do. I made the same change in hvsi.c since I happened to notice it was likely to suffer from the same problem. Signed-off-by: Chris Metcalf Signed-off-by: Benjamin Herrenschmidt commit 32d8ad4e621d6620e925cf540ef1d35aa6fa5a7b Author: Brian King Date: Wed Jul 7 12:31:02 2010 +0000 powerpc/pseries: Partition hibernation support Enables support for HMC initiated partition hibernation. This is a firmware assisted hibernation, since the firmware handles writing the memory out to disk, along with other partition information, so we just mimic suspend to ram. Signed-off-by: Brian King Signed-off-by: Benjamin Herrenschmidt commit 8fe93f8d850a24581e9d47df5814b257fe451052 Author: Brian King Date: Wed Jul 7 12:31:01 2010 +0000 powerpc/pseries: Migration code reorganization / hibernation prep Partition hibernation will use some of the same code as is currently used for Live Partition Migration. This function further abstracts this code such that code outside of rtas.c can utilize it. It also changes the error field in the suspend me data structure to be an atomic type, since it is set and checked on different cpus without any barriers or locking. Signed-off-by: Brian King Signed-off-by: Benjamin Herrenschmidt commit c1aa687d499a8bce55cb8cf962f0b72c0f933f14 Author: Paul Mackerras Date: Sun Jun 20 19:04:14 2010 +0000 powerpc: Clean up obsolete code relating to decrementer and timebase Since the decrementer and timekeeping code was moved over to using the generic clockevents and timekeeping infrastructure, several variables and functions have been obsolete and effectively unused. This deletes them. In particular, wakeup_decrementer() is no longer needed since the generic code reprograms the decrementer as part of the process of resuming the timekeeping code, which happens during sysdev resume. Thus the wakeup_decrementer calls in the suspend_enter methods for 52xx platforms have been removed. The call in the powermac cpu frequency change code has been replaced by set_dec(1), which will cause a timer interrupt as soon as interrupts are enabled, and the generic code will then reprogram the decrementer with the correct value. This also simplifies the generic_suspend_en/disable_irqs functions and makes them static since they are not referenced outside time.c. The preempt_enable/disable calls are removed because the generic code has disabled all but the boot cpu at the point where these functions are called, so we can't be moved to another cpu. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 8fd63a9ea7528463211a6c88d500c51851d960c8 Author: Paul Mackerras Date: Sun Jun 20 19:03:08 2010 +0000 powerpc: Rework VDSO gettimeofday to prevent time going backwards Currently it is possible for userspace to see the result of gettimeofday() going backwards by 1 microsecond, assuming that userspace is using the gettimeofday() in the VDSO. The VDSO gettimeofday() algorithm computes the time in "xsecs", which are units of 2^-20 seconds, or approximately 0.954 microseconds, using the algorithm now = (timebase - tb_orig_stamp) * tb_to_xs + stamp_xsec and then converts the time in xsecs to seconds and microseconds. The kernel updates the tb_orig_stamp and stamp_xsec values every tick in update_vsyscall(). If the length of the tick is not an integer number of xsecs, then some precision is lost in converting the current time to xsecs. For example, with CONFIG_HZ=1000, the tick is 1ms long, which is 1048.576 xsecs. That means that stamp_xsec will advance by either 1048 or 1049 on each tick. With the right conditions, it is possible for userspace to get (timebase - tb_orig_stamp) * tb_to_xs being 1049 if the kernel is slightly late in updating the vdso_datapage, and then for stamp_xsec to advance by 1048 when the kernel does update it, and for userspace to then see (timebase - tb_orig_stamp) * tb_to_xs being zero due to integer truncation. The result is that time appears to go backwards by 1 microsecond. To fix this we change the VDSO gettimeofday to use a new field in the VDSO datapage which stores the nanoseconds part of the time as a fractional number of seconds in a 0.32 binary fraction format. (Or put another way, as a 32-bit number in units of 0.23283 ns.) This is convenient because we can use the mulhwu instruction to convert it to either microseconds or nanoseconds. Since it turns out that computing the time of day using this new field is simpler than either using stamp_xsec (as gettimeofday does) or stamp_xtime.tv_nsec (as clock_gettime does), this converts both gettimeofday and clock_gettime to use the new field. The existing __do_get_tspec function is converted to use the new field and take a parameter in r7 that indicates the desired resolution, 1,000,000 for microseconds or 1,000,000,000 for nanoseconds. The __do_get_xsec function is then unused and is deleted. The new algorithm is now = ((timebase - tb_orig_stamp) << 12) * tb_to_xs + (stamp_xtime_seconds << 32) + stamp_sec_fraction with 'now' in units of 2^-32 seconds. That is then converted to seconds and either microseconds or nanoseconds with seconds = now >> 32 partseconds = ((now & 0xffffffff) * resolution) >> 32 The 32-bit VDSO code also makes a further simplification: it ignores the bottom 32 bits of the tb_to_xs value, which is a 0.64 format binary fraction. Doing so gets rid of 4 multiply instructions. Assuming a timebase frequency of 1GHz or less and an update interval of no more than 10ms, the upper 32 bits of tb_to_xs will be at least 4503599, so the error from ignoring the low 32 bits will be at most 2.2ns, which is more than an order of magnitude less than the time taken to do gettimeofday or clock_gettime on our fastest processors, so there is no possibility of seeing inconsistent values due to this. This also moves update_gtod() down next to its only caller, and makes update_vsyscall use the time passed in via the wall_time argument rather than accessing xtime directly. At present, wall_time always points to xtime, but that could change in future. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 5f07aa7524e98d6f68f2bec54f155ef6012e2c9a Merge: e467e10 d09ec73 Author: Benjamin Herrenschmidt Date: Fri Jul 9 11:25:48 2010 +1000 Merge commit 'paulus-perf/master' into next commit 66b47fdb851924956b6e4696fb43a3496ae2c462 Author: Mark Brown Date: Thu Jul 8 11:25:43 2010 +0900 ASoC: Implement WM8994 OPCLK support The WM8994 can output a clock derived from its internal SYSCLK, called OPCLK. The rate can be selected as a sysclk, with a division from the SYSCLK rate specified (multiplied by 10 since a division of 5.5 is supported) and the clock can be disabled by specifying a divisor of zero. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit a6bff488e7267b65d7c6b2e0d5d2dd2257e65ea4 Author: Rene Sapiens Date: Thu Jul 8 18:11:08 2010 -0500 staging: ti dspbridge: Rename words with camel case. The intention of this patch is to rename the remaining variables with camel case. Variables will be renamed avoiding camel case and Hungarian notation. The words to be renamed in this patch are: ======================================== aAddr to addrs aArgs to args aSize to len baseAddress to base_address bDynamicLoad to dynamic_load bForce to force cCharSize to char_size cContentSize to content_size cCount to count cDspCharSize to dsp_char_size cIndex to index ClkId to clock_id cOrigin to origin dataBasePhys to data_base_phys dcdObjUnion to dcd_obj deviceContext to device_ctxt ======================================== Signed-off-by: Rene Sapiens Signed-off-by: Greg Kroah-Hartman commit 8dd1260f93ecc28cb36fd75e15ddca34b571602e Author: Greg Kroah-Hartman Date: Thu Jul 8 16:25:55 2010 -0700 Staging: quickstart: add the quickstart driver to the build This adds the needed Kconfig and Makefile changes to add the quickstart driver to the build. Cc: Angelo Arrifano Signed-off-by: Greg Kroah-Hartman commit 6da4cd46902973f267fcc93325f65a93eca52ad5 Author: Angelo Arrifano Date: Thu Jul 8 16:20:56 2010 -0700 Staging: add quickstart acpi key driver This adds the quickstart acpi key driver to the staging tree Signed-off-by: Greg Kroah-Hartman commit f5f05c8a578395a22c190b11eea8e858965abbf7 Author: Dave Airlie Date: Fri Jul 9 07:43:27 2010 +1000 drm: add PCI requirements to low-level drivers. Now that highlevel DRM no longer requires PCI, we can move the requirement into the lowlevel drivers. Reported-by: Randy Dunlap Signed-off-by: Dave Airlie commit dc899971a1b7754f6171e6f1232365b864f96eef Author: Ky Srinivasan Date: Thu May 20 12:54:06 2010 -0600 Staging: hyperv: add clocksource driver This patch is a clocksource implementation suitable for guests hosted on HyperV. Time keeping in Linux guests hosted on HyperV is unstable. This clocksource driver fixes the problem. This driver uses the hyperv detection code integrated into the kernel. Signed-off-by: K. Y. Srinivasan Cc: Hank Janssen Cc: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman commit 9279aa55061a280b826bdf9ba5ab5f6a566c1dfb Author: Ky Srinivasan Date: Mon Jun 28 08:48:55 2010 -0600 x86: Export the symbol ms_hyperv This is needed so that the staging hyperv can properly access this symbol. Signed-off-by: K. Y. Srinivasan Acked-by: H. Peter Anvin Signed-off-by: Greg Kroah-Hartman commit 3ff81013699000f2d55e78efadb03a6e2beddb7a Author: Arnd Bergmann Date: Wed Jul 7 23:40:09 2010 +0200 Staging: use llseek in all file operations These could not be detected by the semantic patch. Signed-off-by: Arnd Bergmann commit af6d2b2a3d43d25aa4e205c029ee737642cc4ec2 Author: Randy Dunlap Date: Fri Jul 2 16:44:13 2010 -0700 Staging: solo: add delay.h header Several solo drivers need , so add it to the private solo6010.h header file. drivers/staging/solo6x10/solo6010-core.c:191: error: implicit declaration of function 'mdelay' drivers/staging/solo6x10/solo6010-tw28.c:181: error: implicit declaration of function 'msleep_interruptible' drivers/staging/solo6x10/solo6010-gpio.c:78: error: implicit declaration of function 'udelay' drivers/staging/solo6x10/solo6010-v4l2-enc.c:254: error: implicit declaration of function 'mdelay' Signed-off-by: Randy Dunlap commit 65cfe8420c2b1718ccff3b6dac65656464c0e4f6 Author: Uwe Kleine-König Date: Thu Jul 1 20:48:45 2010 +0200 Staging: usbip: fix typos concerning "sequential" Signed-off-by: Uwe Kleine-König commit 060132ae42cce3f9d2fd34d9a17b98362b44b9f9 Author: Peter Huewe Date: Wed Jul 7 04:52:16 2010 +0200 Staging: panel: Prevent double-calling of parport_release - fix oops. This patch prevents the code from calling parport_release and parport_unregister_device twice with the same arguments - and thus fixes an oops. Rationale: After the first call the parport is already released and the handle isn't valid anymore and calling parport_release and parport_unregister_device twice isn't a good idea. Signed-off-by: Peter Huewe Cc: stable Acked-by: Willy Tarreau commit feffce47678375a6422d5356a379e407f007d424 Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:16 2010 +0400 Staging: vme: vme_ca91cx42: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit c4d82fbb458e6c6eebcff84653563c9c5e9a530d Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:20 2010 +0400 Staging: vme: vme_tsi148: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit c755a8283212659bad39e387377c337a27156d8a Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:25 2010 +0400 Staging: wlags49_h2: wl_netdev: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 2f72aee1896bafa0fbf0ef2cdc3babe399057a11 Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:29 2010 +0400 Staging: wlags49_h2: wl_pci: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 82942ca2b509f4a77ef1febd00f648fcb67950ca Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:33 2010 +0400 Staging: wlags49_h2: wl_profile: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit ef7d8ba135042e5da15b861e11ff48385308632a Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:12 2010 +0400 Staging: rt2860: usb_main_dev: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Reviewed-by: Simon Horman Signed-off-by: Greg Kroah-Hartman commit 5401843d19c6484d26646de24d679545ec51be0b Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:08 2010 +0400 Staging: rt2860: rt_linux: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 11ed93566f829130e596555ad0784a44587b4145 Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:04 2010 +0400 Staging: rt2860: rtmp_timer: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 37157cc4b72b816d226380fa3635eb6cab10c0da Author: Kulikov Vasiliy Date: Tue Jun 29 14:15:56 2010 +0400 Staging: dream: pmem: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 764f2ca6e4f7b8d8ce0867c154db42e98a83521e Author: Kulikov Vasiliy Date: Tue Jun 29 14:15:43 2010 +0400 Staging: crystalhd_lnx: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 440a65475d9bf0997c28feb206a16ddd87122e22 Author: Kulikov Vasiliy Date: Tue Jun 29 14:15:36 2010 +0400 Staging: comedi: pcm3724: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 5f91c7ed1ec2eac7a278fade45b88e762f93c3d8 Author: Kulikov Vasiliy Date: Tue Jun 29 14:16:00 2010 +0400 Staging: otus: wrap_sec: remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 3cc7b544bde2f87da84a0bd3a8e2cd17a3024442 Author: Luciano Coelho Date: Thu Jul 8 17:50:08 2010 +0300 wl1271: use per-channel max tx power passed by mac80211 when scanning We were always using the max transmit power when scanning. Now we use the values passed to the driver by the mac80211 stack, so that we comply with regulations. Signed-off-by: Luciano Coelho Reviewed-by: Saravanan Dhanabal Signed-off-by: John W. Linville commit 08688d6b1a85484cc8e4a920afc60ffa6559999d Author: Luciano Coelho Date: Thu Jul 8 17:50:07 2010 +0300 wl1271: rewritten scanning code This patch is a complete rewrite of the scanning code. It now includes a state machine to scan all four possible sets of channels independently: 2.4GHz active, 2.4GHz passive, 5GHz active and 5GHz passive. The wl1271 firmware doesn't allow these sets to be mixed, so up to several scan commands have to be issued. This patch also allows scanning more than 24 channels per set, by breaking the sets into smaller parts if needed (the firmware can scan a maximum of 24 channels at a time). Previously, the scanning code was erroneously scanning all channels possible actively, not complying with the CRDA values. This is also fixed with this patch. Signed-off-by: Luciano Coelho Reviewed-by: Saravanan Dhanabal Signed-off-by: John W. Linville commit 34dd2aaac4a4b908c093980a9894fd878aeb6deb Author: Luciano Coelho Date: Thu Jul 8 17:50:06 2010 +0300 wl1271: moved scan operations to a separate file The scanning code is going to get a bit more complex, with proper support for active/passive scans together with 2.4GHz and 5GHz. In the future, also a new type of scan (periodic scan) will be added. When all this is implemented, the code is going to be much more complex, so we'd better separate it into a separate file. This patch doesn't have any impact on functionality. Signed-off-by: Luciano Coelho Reviewed-by: Saravanan Dhanabal Signed-off-by: John W. Linville commit f532be6d48a12cd1b27c4efa38d22e0cbfa512d1 Author: Juuso Oikarinen Date: Thu Jul 8 17:50:05 2010 +0300 wl1271: Update interface to temporarily disable dynamic PS The mac80211 interface to temporarily disable dynamic PS changed, make corresponding changes to the driver. Signed-off-by: Juuso Oikarinen Reviewed-by: Saravanan Dhanabal Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 9a547bf9a83ce7211d4290956d9fca8044a409de Author: Juuso Oikarinen Date: Thu Jul 8 17:50:04 2010 +0300 wl1271: Fix warning when disconnecting and ad-hoc network Signed-off-by: Juuso Oikarinen Reviewed-by: Luciano Coelho Reviewed-by: Teemu Paasikivi Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 8d2ef7bd76f222b068a3fd534fe5fdb8c9543ba0 Author: Juuso Oikarinen Date: Thu Jul 8 17:50:03 2010 +0300 wl1271: Disable dynamic PS based on BT co-ext sense events This patch requests mac80211 to disable dynamic PSM based on sense events coming from the firmware. Effectively, whenever there is bluetooth traffic, the mac80211 is forced into full PSM mode. Signed-off-by: Juuso Oikarinen Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit ca52a5ebbb7caff2995214a6ca41a36c5210b0bd Author: Juuso Oikarinen Date: Thu Jul 8 17:50:02 2010 +0300 wl1271: Update hardware ARP filtering configuration handling The interface for hardware ARP configuration changed in the mac80211. Change driver accordingly. Signed-off-by: Juuso Oikarinen Reviewed-by: Teemu Paasikivi Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit e6b190ff3c2f4e4859502c41fa17b5c595e82000 Author: Luciano Coelho Date: Thu Jul 8 17:50:01 2010 +0300 wl1271: read fem manufacturer value from nvs We should read the fem manufacturer value from the NVS, so we can modify it easily and use a consistent value throughout the configuration. Previously we had to set the FEM value in the NVS and in the driver's initialization parameters. This patch removes the latter. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 90494a90bea010af47547880634e0f1c52824a7d Author: Juuso Oikarinen Date: Thu Jul 8 17:50:00 2010 +0300 wl1271: Work around AP's with broken ps-poll functionality Some AP's (such as Zyxel Prestige 600) have totally broken ps-poll functionality. When powersave is enabled, these AP's will set the TIM bit for a STA in beacons, but when the STA responds with a ps-poll, the AP does not respond with data. The wl1271 firmware is able to send an indication to the host, when this problem occurs. This patch adds implementation, which temporarily disables power-save in response to this indication, allowing the AP to transmit whatever data it has buffered for the STA / whatever data is inbound at that time. This patch does not make these AP's work reliably in PSM, but improves the chances of inbound data getting through. The side effect of this patch is increased power consumption when using a faulty AP. Signed-off-by: Juuso Oikarinen Reviewed-by: Teemu Paasikivi Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 849923f43ca681cc86a401178db31acb60e79f3b Author: Juuso Oikarinen Date: Thu Jul 8 17:49:59 2010 +0300 wl1271: Use all basic rates for ps-poll, instead of just the slowest This improves ps-poll handling in WLAN PSM. It also improves performance, including WLAN-BT co-existence reliability. Signed-off-by: Juuso Oikarinen Reviewed-by: Teemu Paasikivi Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit eb887dfd8837bf0a2538418c02b3992fb9ff1f28 Author: Juuso Oikarinen Date: Thu Jul 8 17:49:58 2010 +0300 wl1271: Use the ARP configuration function from mac80211 This patch updates the driver to use the ARP configuration function from the mac80211. Also, clean up IPv6 support from the ACX function as ARP is not used with that protocol version. Signed-off-by: Juuso Oikarinen Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit bbbb538e337a3eb2166d5a20307b93822bdacc4f Author: Juuso Oikarinen Date: Thu Jul 8 17:49:57 2010 +0300 wl1271: Add TSF handling Add functionality to pass the current TSF (mac time) to the mac80211. This is needed for ad-hoc merging. Signed-off-by: Juuso Oikarinen Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit ab2807efcfd2dd646a2ca8d71585e26cda3fc0c1 Author: Juuso Oikarinen Date: Thu Jul 8 17:49:56 2010 +0300 wl1271: Remove calibration from join command This patch removes the calibration performed on the first join command. The reasoning is that this is unnecessary as devices get their calibration data via the NVS file, and because the commands break BT coexistence. This is actually safe, because of the implementation the calibration was executed on the first JOIN anyway, after an ifdown/ifup the devices have relied on the NVS for calibration anyway (== most of the time.) Signed-off-by: Juuso Oikarinen Reviewed-by: Teemu Paasikivi Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 3473187d2459a078e00e5fac8aafc30af69c57fa Author: John W. Linville Date: Wed Jul 7 15:07:49 2010 -0400 mac80211: remove wep dependency The current mac80211 code assumes that WEP is always available. If WEP fails to initialize, ieee80211_register_hw will always fail. In some cases (e.g. FIPS certification), the cryptography used by WEP is unavailable. However, in such cases there is no good reason why CCMP encryption (or even no link level encryption) cannot be used. So, this patch removes mac80211's assumption that WEP (and TKIP) will always be available for use. Signed-off-by: John W. Linville commit 5b2652b6e099cf8faca3bfa2a7534216dd83b6d5 Author: Andy Shevchenko Date: Tue Jul 6 18:08:52 2010 +0300 staging: tidspbridge: gen: simplify and clean up There is recently added hex_to_bin() kernel's method which we could use instead of custom long function. Signed-off-by: Andy Shevchenko Cc: Ohad Ben-Cohen Cc: linux-omap@vger.kernel.org Signed-off-by: Greg Kroah-Hartman commit 4f551c8f6b89902a83328fbf50585ec7ee03ed5a Author: Felipe Contreras Date: Sun Jul 4 16:36:26 2010 +0300 staging: ti dspbridge: add _BACKTRACE config We only want this code when testing. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 1ceea25372dd6e37c9804f713b6e2c6bdd008d03 Author: Felipe Contreras Date: Sun Jul 4 16:36:25 2010 +0300 staging: ti dspbridge: use _DEBUG for debug trace Obviously nobody was using DSP_TRACEBUF_DISABLED, since it wasn't even standarized between TRACEBUF and TRACE_BUF. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit ed9ff5d7e864b02fbd4913f087c9d540f0384e1d Author: Felipe Contreras Date: Sun Jul 4 16:36:24 2010 +0300 staging: ti dspbridge: improve Kconfig Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit b3d23688a15c4c332942f9428e0d708e7362e29e Author: Felipe Contreras Date: Sun Jul 4 16:36:23 2010 +0300 staging: ti dspbridge: prefix configs with TIDSPBRIDGE Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 94e7e5260723870329f04b0bd8eeb41322895bf1 Author: Felipe Contreras Date: Sun Jul 4 16:34:39 2010 +0300 staging: ti dspbridge: deh: update copyright notice Add myself... git blame seems to agree :) Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 96904b06b96fb75e39b70751415edf4fb99db256 Author: Felipe Contreras Date: Sun Jul 4 16:34:38 2010 +0300 staging: ti dspbridge: deh: tidying up Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 1961c9ccd5a570a8e1bfa935284349490ecafee5 Author: Felipe Contreras Date: Sun Jul 4 16:34:37 2010 +0300 staging: ti dspbridge: move mmufault to deh Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 61a5b769d3a21fc6225d60547d923409077e7ab3 Author: Felipe Contreras Date: Sun Jul 4 16:34:36 2010 +0300 staging: ti dspbridge: access deh directly Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit b6871448bf070c61e1d9c60ad2722387279d8269 Author: Felipe Contreras Date: Sun Jul 4 16:34:35 2010 +0300 staging: ti dspbridge: deh: remove err_info We only use it to pass the MMU fault address. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 654fe1b20dd9e3c753bf5667682c8d3ee2a2ae8e Author: Felipe Contreras Date: Sun Jul 4 16:34:34 2010 +0300 staging: ti dspbridge: deh: remove get_info Nobody is using it. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit ec71c8fe23ca236119c7176a8a3e77529a393283 Author: Felipe Contreras Date: Sun Jul 4 16:34:33 2010 +0300 staging: ti dspbridge: deh: refactor in mmu_fault_print_stack() All this code is just to print the stack, so make it clearer. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 62f5242e2e275fe526d65733535591c065cc87a5 Author: Felipe Contreras Date: Sun Jul 4 16:34:32 2010 +0300 staging: ti dspbridge: deh: ensure only tlb #0 is enabled We don't want the DSP to continue writing into other mapped pages, no matter how unlikely. Based on extensive discussion with Fernando Guzman Lugo. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 4574fae58d840d78e44ae33236899f92bfb6b4a9 Author: Felipe Contreras Date: Sun Jul 4 16:34:31 2010 +0300 staging: ti dspbridge: mmu: add hw_mmu_tlb_flush_all() So that it can be used in more than one place. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit ec528652a92e18975bb6fe3e2f4f8f927b71ec88 Author: Felipe Contreras Date: Sun Jul 4 16:34:30 2010 +0300 staging: ti dspbridge: remove unused code Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 0d8631d2907092a4a58b93bdc636eb6ee001cf03 Author: Felipe Contreras Date: Sun Jul 4 16:34:29 2010 +0300 staging: ti dspbridge: deh: free dummy page immediately There's no need to keep it around. DSP should stop trying to access system memory. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 599ede1cf3ac199e72089234ae911aaf299a0692 Author: Felipe Contreras Date: Sun Jul 4 16:34:28 2010 +0300 staging: ti dspbridge: mmufault: trivial cleanups No functional changes. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 0a466f6913db1032a07eddcf232db749b6e0439e Author: Felipe Contreras Date: Sun Jul 4 16:34:27 2010 +0300 staging: ti dspbridge: deh: trivial cleanups No functional changes. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 0bd35016dd8c4e751ea208f5e813456a85070c56 Author: Felipe Contreras Date: Sun Jul 4 16:31:47 2010 +0300 staging: ti dspbridge: remove contributor leftovers The old history (before git) had these two character ids that never stood any chance to identify anybody. Nobody from that list was moved to the good list of contributors, so let's get rid of it. Signed-off-by: Felipe Contreras Signed-off-by: Greg Kroah-Hartman commit 19ebeff1eb8e62f1c6f5b85e987aa67aab050deb Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:20 2010 +0400 Staging: otus: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 3d63a492d1571b9e8f2404805b6441d2b16d06ca Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:41 2010 +0400 Staging: wlags49_h2: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit e8ba4d5d2ac27b1b161250e78b4ebce1646d18e2 Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:37 2010 +0400 Staging: winbond: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit f079bc30211ba5f08d8bab512ceaa6d3e881f4ec Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:32 2010 +0400 Staging: rtl8192u: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 7e1d794fe5ba535ddd8f55f756dfe4e7eade0fc8 Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:28 2010 +0400 Staging: rtl8192e: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit f53a7e3abc47774abd109a361da48f85d36c9672 Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:24 2010 +0400 Staging: otus: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Acked-by: Simon Horman Signed-off-by: Greg Kroah-Hartman commit c8b8857e7a0bdb6d1e45406d5f90bd74a4fd84d6 Author: Kulikov Vasiliy Date: Mon Jun 28 15:55:16 2010 +0400 Staging: otus: use ARRAY_SIZE Change sizeof(x) / sizeof(*x) to ARRAY_SIZE(x). Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 2addf798e4507f29276d0b00f318a603c57e4a8a Author: Dave Jones Date: Fri Jul 2 23:04:44 2010 -0400 Staging: rtl8192u: remove a copy of 80211.h We had a request to enable one of the realtek network drivers in staging in Fedora. After a quick lookover, I decided this wasn't such a great idea. In doing so though, I noticed we have 6 copies of ieee80211.h there now, Two drivers even have two copies of it. (Even worse, cleanups have been pointlessly happening to both files). The patch below removes one of them, which is asides from whitespace, identical afaics. With a change of filename to the #include, it all still compiles for me. A better fix would be to remove both, and have them use the core ieee80211 stuff, but this is at least a tiny step in the right direction. Signed-off-by: Dave Jones Signed-off-by: Greg Kroah-Hartman commit 8e72c6411552b3ba25da7d983cb68f214b4886ac Author: Niadh Date: Mon Jun 28 02:23:14 2010 +0100 Staging: RT2860: Fixed everything in ap.h. Fixed the single two warnings in ap.h which left this file with nothing left to clean. Signed-off-by: Neil Munro Signed-off-by: Greg Kroah-Hartman commit 78af7f826b2bf19bce0adb458da19dabfee1a0aa Author: Kulikov Vasiliy Date: Sun Jun 27 17:20:47 2010 +0400 staging: slicoss: error handling with goto This patch makes error handling more readable due to 'goto err' pattern. Signed-off-by: Kulikov Vasiliy Cc: Denis Kirjanov Signed-off-by: Greg Kroah-Hartman commit 3746bfd51d8108d43c06064481065afc07bbcc1d Author: Kulikov Vasiliy Date: Sun Jun 27 17:20:46 2010 +0400 staging: slicoss: error handling with goto This patch makes error handling more readable due to 'goto err' pattern. Signed-off-by: Kulikov Vasiliy Cc: Denis Kirjanov Signed-off-by: Greg Kroah-Hartman commit 9020dea38032ac17b096628b2e102245de3863ac Author: Kulikov Vasiliy Date: Sun Jun 27 17:20:44 2010 +0400 staging: slicoss: Remove STATUS_XXX defines. Remove defines of STATUS_XXX from header file. Signed-off-by: Kulikov Vasiliy Cc: Denis Kirjanov Signed-off-by: Greg Kroah-Hartman commit d19397860a17794a250986405890152c256cc677 Author: Kulikov Vasiliy Date: Wed Jun 30 17:02:45 2010 +0400 staging: slicoss: Change return codes to -EYYY. Change defined STATUS_XXX return codes to standard -EYYY. Signed-off-by: Kulikov Vasiliy Cc: Denis Kirjanov Signed-off-by: Greg Kroah-Hartman commit 20fb2280815510533cbd7785b53821ca7209345b Author: Kulikov Vasiliy Date: Sat Jul 3 19:20:47 2010 +0400 Staging: comedi: use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 27bf0bc906e80fdb531524dab22a7851a4c21698 Author: Mark Date: Tue Jul 6 18:23:15 2010 +0100 Staging: comedi: Cleanup on dmm32at.c from checkpatch.pl This patch cleans up some style issues in dmm32at.c as found by checkpatch.pl Signed-off-by: Mark Rankilor Signed-off-by: Greg Kroah-Hartman commit 97feeef5c55fe783e6f01d4dec3fd0926e60b0d8 Author: Mark Date: Tue Jul 6 03:18:19 2010 +0100 Staging: comedi: Cleanup adv_pci1710.c from checkpatch.pl This patch cleans up some issues discovered by checkpatch.pl Signed-off-by: Mark Rankilor Signed-off-by: Greg Kroah-Hartman commit 2312202c4ac3590da9dcf33337e6f0a14f78d124 Author: Gustavo Silva Date: Sun Jun 27 12:40:31 2010 -0500 Staging: comedi: kcomedilib: fix coding style issues in kcomedilib_main.c This is a patch to the kcomedilib_main.c file that fixes up some printk() warning issues. Signed-off-by: Gustavo Silva Signed-off-by: Greg Kroah-Hartman commit 1309e617bc56f2f8af9a9c5aab1224a45539002a Author: Maurice Dawson Date: Sat Jun 26 17:02:25 2010 +0100 Staging: comedi: fix over 80 character coding style issue in ni_labpc.c This is a patch to the ni_labpc.c file that fixes up 80 character warnings found by the checkpatch.pl tool Signed-off-by: Maurice Dawson Signed-off-by: Greg Kroah-Hartman commit 5bddefad3e960e70fdb005e48b5be75a5846c4c1 Author: Kulikov Vasiliy Date: Sat Jul 3 20:04:43 2010 +0400 Staging: vt6655: use for_each_pci_dev() Use for_each_pci_dev() to simplify the code. Signed-off-by: Kulikov Vasiliy Signed-off-by: Greg Kroah-Hartman commit 388bf2e8fe0cd499e1a440648ab0d95cd66a114f Author: Charles Clément Date: Wed Jun 30 09:46:24 2010 +0200 Staging: vt6655: simplify broadcast and multicast ethernet address test A broadcast address is also a multicast address so simplify test cases where possible. As suggested by Joe Perches. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 5583dcf587fa59a5de10b554815f3121919f2648 Author: Andres More Date: Sat Jun 26 14:08:04 2010 -0300 staging: vt6656: removed SndEvt_ToAPI definition Removed an always defined macro, perhaps used to patch the driver Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit feaf03d3b42290f4c275ebf11641759bf4e1c458 Author: Andres More Date: Fri Jun 25 20:20:58 2010 -0300 staging: vt6656: removed TxInSleep definition Removed an always defined macro, perhaps used to patch the driver Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 3adb149d2b118654305591db6a28df9e1798550f Author: Andres More Date: Fri Jun 25 19:48:10 2010 -0300 staging: vt6656: removed unused IS_NULL_ADDRESS definition Removed custom definition not used elsewhere, is_zero_ether_addr() is already provided if required. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit f0aa2a1739e03757b07fbf62680d84de54f8e59a Author: H Hartley Sweeten Date: Fri Jun 25 15:14:09 2010 -0700 Staging: dt3155_isr: cleanup fbuffer usage Now that dt3155_drv.c is not dependent on the global symbol dt3155_fbuffer[], declared in dt3155_isr.c, remove it. This also fixes many of the coding style problems in dt3155_isr.c. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit aadbdeb6d4d2239e78ab4f99417783e0f1571522 Author: H Hartley Sweeten Date: Fri Jun 25 14:19:50 2010 -0700 Staging: dt3155: remove remaining 32-bit and 8-bit global registers Remove the remaining global 32-bit and 8-bit i2c registers. Create a local variable of the correct type where they are needed. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit 53b4725e1f51d709f4c89821bd4a09f9a881a29f Author: Mike Thomas Date: Sat Jun 26 20:20:59 2010 +0100 Staging: easycap: Add dependencies to Kconfig The "depends on" line was inadvertently omitted from the inaugural patch. Signed-off-by: Mike Thomas Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 25b37ecab96cde0e15c494a89cd2ab8e4337906e Author: Gustavo Silva Date: Sat Jun 26 17:36:53 2010 -0500 Staging: otus: fix coding style issues in ioctl.c This is a patch to the ioctl.c file that fixes up the following issues: ERROR: that open brace { should be on the previous line x 3 WARNING: please, no space before tabs x 1 ERROR: space required before the open parenthesis '(' x 5 WARNING: braces {} are not necessary for single statement blocks x 2 ERROR: space prohibited after that '!' (ctx:BxW) x 1 WARNING: suspect code indent for conditional statements x 2 ERROR: do not use C99 // comments x 1 WARNING: braces {} are not necessary for any arm of this statement x 4 Signed-off-by: Gustavo Silva Signed-off-by: Greg Kroah-Hartman commit 38d9df499dd3125465cf5aed3d3d6d5c26f0645d Author: Pavan Savoy Date: Thu Jul 8 08:55:17 2010 -0500 Staging: ti-st: remove global references Providing a context which can be passed around the driver, the KIM's platform driver's struct device to be used to dev_set_drvdata and dev_get_drvdata. The ST core's data is passed around using tty's disc_data and in other cases the ST KIM's platform device is exposed from the board-XX.c which adds KIM platform device whose dev is used. Thereby remove the need for the global reference struct kim_data_s *kim_gdata; Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit bd289d441e2eedcab2cb496146c668feab5c9c6b Author: Pavan Savoy Date: Thu Jul 8 08:55:16 2010 -0500 Staging: ti-st: Update TODO An important TODO was to remove global references in TI-ST driver, thereby providing a context to the driver. This should also serve as a small step in removal of the single device limit. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 440a5200347734032f7ad0dc84ac3e9222dab9bd Author: Jonathan Cameron Date: Sat Jun 26 12:54:23 2010 +0100 staging:iio:max1363 add theshold event support Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 7e29a0df16ddfcb971a1d498752a782a68e45281 Author: Jonathan Cameron Date: Sat Jun 26 12:54:22 2010 +0100 staging:iio: Add ability to have event attributes with awkward names Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 388be4883952872b48c8e4789ff77d5b3b9cadb7 Author: Jonathan Cameron Date: Sat Jun 26 12:54:21 2010 +0100 staging:iio: tsl2563 abi fixes and interrupt handling Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3bbb49aa3f667e6b871886bd75b3bb311d656eea Author: Jonathan Cameron Date: Sat Jun 26 12:54:20 2010 +0100 staging:iio: Fix IIO_EVENT_ATTR initialization of list head Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 751a37007ff2b063b25ff357d2cbdc8af17b65d0 Author: Jonathan Cameron Date: Sat Jun 26 12:54:19 2010 +0100 staging:iio: Code cleanups Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3d550fbace94a79b97cde94dca46f5477c817fed Author: Jonathan Cameron Date: Sat Jun 26 12:54:18 2010 +0100 staging:iio: Remove unnecessary event_idr and all references Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1980e4ac3a62e42a3db56185f9bd01a0e40dfe55 Author: Jonathan Cameron Date: Sat Jun 26 12:54:17 2010 +0100 staging:iio: Remove used iio_work_cont definition and all references Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 44b759b7f0e9a493f0dbf1e273eaeaf3924338af Author: Jonathan Cameron Date: Sat Jun 26 12:54:16 2010 +0100 staging:iio:kxsd9 remove unnecessary includes Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d0348e50561a2701428186dd0550b3b2961e0bea Author: Jonathan Cameron Date: Sat Jun 26 12:54:15 2010 +0100 staging:iio:lis3l02dq cleanups Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c40ab87494522201a8478305204c3db8e051af73 Author: Jonathan Cameron Date: Sat Jun 26 12:54:14 2010 +0100 staging:iio:max1363 trivial code and comment cleanups. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 962a4ccb4ab76a297ef63e2c5de78cb56220d0f8 Author: Jonathan Cameron Date: Sat Jun 26 12:54:13 2010 +0100 staging:iio:max1363 use device_id instead of searching on name again Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 80f6c34b9a4302edf3f675c25973c51e03b570da Author: Linus Lüssing Date: Tue Jul 6 21:05:18 2010 +0200 Staging: batman-adv: Add last-seen in originator table Right now, there is no easy/intuitive way to find out whether a node might have vanished. This commit adds the time when a node was last seen to the originator table output, so that a common user is able to tell whether a node might have gone without having to wait PURGE_TIMEOUT seconds until that node gets "garbe-collected". It also puts the the versioning information in an extra line, as the first one of this debug output would otherwise get too long. Signed-off-by: Linus Lüssing Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit c1641862f88367602f8f34a17b21bdf1eee912ee Author: Sven Eckelmann Date: Tue Jul 6 21:05:17 2010 +0200 Staging: batman-adv: Move printk to simplified macros Each general printk which is not informative by itself for a specific batX device were moved to pr_(info|warning|err) as it provides an easy interface which for example resolves the problem to add the prefix "batman-adv: " before each line. All information which is specific to a batX device will be printed using a bat_(info|err|warning) macro to prefix it also with "batman-adv: batX:" in each line. Reported-by: Joe Perches Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 84ec08640786592a045b783fb28b542415521bf9 Author: Marek Lindner Date: Tue Jul 6 21:05:16 2010 +0200 Staging: batman-adv: add routing debug log accessible via debugfs All routing debug messages are saved in a ring buffer that can be read via the debugfs file "log". Note that CONFIG_BATMAN_ADV_DEBUG must be activated to have the debug logs compiled in. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit e75fece2b893c0064b1c79136a60f30326c28eb3 Author: Sven Eckelmann Date: Sat Jun 26 02:36:45 2010 +0200 Staging: batman-adv: Remove dependency to PROCFS It is not need to depend on it as procfs support was removed during the transition to sysfs. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit b06687993c41d0f5658bae6b0bff17c0caae08b6 Author: Sven Eckelmann Date: Sat Jun 26 02:36:26 2010 +0200 Staging: batman-adv: Allow to build it inside the kernel We must use the user supplied information about how the code should be compiled instead of always trying to build it as module. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 08f20b5e07d17c36a6790fa8b0f2554b6735cf59 Author: Marek Lindner Date: Sat Jun 26 00:28:25 2010 +0200 Staging: batman-adv: fix early debugfs deinitialization The debugfs files are initialized at load time only but would get deinitialized when the module changed in it deactivate (sleeping) state. As a consequence the debugfs files are not accessible anymore. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 62c2072003074f3e7fdc1bfb07f4362215b49937 Author: Sven Eckelmann Date: Sat Jun 26 00:28:24 2010 +0200 Staging: batman-adv: Add include guards to all header files We include different header files indirectly to the same source file. This creates weird compiler errors from time to time. Include guards should prefend that functions/variables/... gets redefined by itself. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 7809cea94f4094918df062bd84b327dc4119d304 Author: Marek Lindner Date: Sat Jun 26 00:28:22 2010 +0200 Staging: batman-adv: Add sysfs abi documentation about bonding Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit d828f528beab0dfe796da2617f1726d3d33a33dc Author: Marek Lindner Date: Sat Jun 26 00:28:23 2010 +0200 Staging: batman-adv: adapting source version to revised versioning scheme The new versioning scheme looks like this: * the trunk will simply be named "devel" followed by a revision number * the upcoming release branch will be "maint" followed by a revision number * the releases will carry their respective names (e.g. 2010.0.0) Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit b6be4535e3e971181e19791e12c62f4938e6d2e9 Author: Simon Wunderlich Date: Sat Jun 26 00:28:20 2010 +0200 Staging: batman-adv: Lower resolution for timeouts It is enough for our timeouts to keep them in seconds instead of miliseconds. With a too high resolution, we might even risk an integer overflow, so this patch should make things more safe. Signed-off-by: Simon Wunderlich Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit b26b45845b29d83e7537dcd16827a478f6cee346 Author: Marek Lindner Date: Sat Jun 26 00:28:21 2010 +0200 Staging: batman-adv: replace manual calculation by msecs_to_jiffies() for better readability Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit a14ca61d418433b9e38b0978ceb272191377475b Author: Linus Lüssing Date: Sat Jun 26 00:28:19 2010 +0200 Staging: batman-adv: Avoid rounding issues for local hna timeout With the current default values, this patch is not critical, as LOCAL_HNA_TIMEOUT is a multiple of 1000 anyway. However, if someone would like to change this #define, the person could have some unexpected rounding issues. Therefore doing the multiplication before the division now. Signed-off-by: Linus Lüssing Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 6e0e9388b5cb0366e93915ab9d0d0bf12b09d5c2 Author: Antonio Quartulli Date: Sat Jun 26 00:28:18 2010 +0200 Staging: batman-adv: Convert names from Java to C style Useless but meaningfull patch that converts JavaStyle names into c_style Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit e88ff1e6db0ae6462e881d9f10776f7bdfd32e64 Author: Mark Brown Date: Fri Jul 9 00:12:08 2010 +0900 ASoC: Include WM8994 GPIO and interrupt registers in codec_reg Very handy for debug. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 250b2b6dd421c9f8844a867d2ac06e0661e0ad93 Author: Stefan Richter Date: Mon Jun 21 23:24:35 2010 +0200 firewire: cdev: fix fw_cdev_event_bus_reset.bm_node_id Fix an obscure ABI feature that is a bit of a hassle to implement. However, somebody put it into the ABI, so let's fill in a sensible value there. Signed-off-by: Stefan Richter commit ae948011071c12ff6a328348859c717ea885ed40 Author: Stefan Richter Date: Mon Jun 21 23:23:52 2010 +0200 firewire: core: no need to track irq flags in bm_work This is a workqueue job and always entered with IRQs enabled. Signed-off-by: Stefan Richter commit 0a28c47b8db8ff74d1bfbc5c5ad0100cea472351 Author: Jan Beulich Date: Wed Jun 30 13:11:01 2010 +0100 kconfig: Don't write invisible choice values This makes it so "make oldconfig" really prompts for any choice where options that previously weren't visible just became so. Previously one would have to remember to go over all choice values and check whether some that previously couldn't be selected now can be. Signed-off-by: Jan Beulich Signed-off-by: Michal Marek commit 5bbd4a336c81d32df71642abf310cf3d0c98dc9b Author: Javier Martinez Canillas Date: Wed Jul 7 19:51:59 2010 -0400 x86/apic/es7000_32: Remove unused variable In today's linux-next I got this compile warning: arch/x86/kernel/apic/es7000_32.c:132: warning: 'base' defined but not used Current patch solves the issue removing the unused variable. Signed-off-by: Javier Martinez Canillas Cc: Rakib Mullick Cc: Eric W. Biederman Cc: Cyrill Gorcunov Cc: Tejun Heo LKML-Reference: <1278546719.9020.4.camel@lenovo> Signed-off-by: Ingo Molnar commit 54a3b8dc38d47834336400cbe376a3aca0437cae Author: Takashi Iwai Date: Thu Jul 8 09:01:17 2010 +0200 ALSA: Update documents about new bits of xrun_debug proc file Signed-off-by: Takashi Iwai commit f5152c908a5b0be48ec9a58d0de8bdadd9385854 Author: Dimitris Michailidis Date: Wed Jul 7 16:11:25 2010 +0000 cxgb4: fix for new ndo_get_stats64 signature The change to ndo_get_stats64 in "net: fix 64 bit counters on 32 bit arches" missed cxgb4. Fix it. Signed-off-by: Dimitris Michailidis Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit 3e9e0b8364dfb741a06ea40d8fad7f954a291339 Author: FUJITA Tomonori Date: Wed Jul 7 18:24:29 2010 -0700 b44: remove unused dma_desc_align_mask Signed-off-by: FUJITA Tomonori Signed-off-by: David S. Miller commit 5cf3e03457aa905f17f9765702850316b69aad1e Author: David S. Miller Date: Wed Jul 7 18:23:19 2010 -0700 ethoc: Fix warning in ethoc_init_ring(). Get rid of the pointless back-and-forth casting of dev->mem_start from long to pointer back to long again. Also fixes a warning reported by Stephen Rothwell: drivers/net/ethoc.c: In function 'ethoc_init_ring': drivers/net/ethoc.c:302: warning: assignment makes integer from pointer without a cast Signed-off-by: David S. Miller commit a038716957d3888a595014a660b1db1f28946f62 Author: David S. Miller Date: Wed Jul 7 18:20:30 2010 -0700 niu: BUG on inability to find page in rx page hashes. Signed-off-by: David S. Miller commit 05eda04ba0b56b1bff3e5c9dbf58213ffc2e2a0b Author: Denis Kirjanov Date: Wed Jun 30 23:45:52 2010 +0000 cxgb4: Use kfree_skb for skb pointers Use kfree_skb for skb pointers Acked-by: Dimitris Michailidis Signed-off-by: Denis Kirjanov Signed-off-by: David S. Miller commit bdc802dcca1709b01988d57e91f9f35ce1609fcc Author: H. Peter Anvin Date: Wed Jul 7 17:29:18 2010 -0700 x86, cpu: Support the features flags in new CPUID leaf 7 Intel has defined CPUID leaf 7 as the next set of feature flags (see the AVX specification, version 007). Add support for this new feature flags word. Signed-off-by: H. Peter Anvin LKML-Reference: commit d9bed6bbd4f2a0120c93fed68605950651e1f225 Author: Tilman Schmidt Date: Mon Jul 5 14:19:30 2010 +0000 isdn/gigaset: remove EXPERIMENTAL tag from GIGASET_CAPI The CAPI variant of the Gigaset drivers can, in combination with capidrv, now fully replace the legacy ISDN4Linux variant. All reported problems have been fixed. So remove the EXPERIMENTAL tag from the Kconfig option selecting it, and adapt the documentation accordingly to encourage users to switch to it. Impact: documentation/status update, no functional change Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 29124c70d779c89e04289468f437c093eb0811df Author: Tilman Schmidt Date: Mon Jul 5 14:19:25 2010 +0000 isdn/gigaset: document dial-out number format Add a paragraph to the driver documentation describing how to make internal and external calls. Impact: documentation Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 54438f9dfcc3902a8ee74ceb8ef71316d9ef98a3 Author: Tilman Schmidt Date: Mon Jul 5 14:19:19 2010 +0000 isdn/gigaset: fix leaks in error path Take care to free all previously allocated ressources in the "out of memory" error path of the ISDN_CMD_DIAL branch. Based on an original patch by Dan Carpenter. Impact: bugfix Reported-by: Dan Carpenter Signed-off-by: Tilman Schmidt Acked-by: Dan Carpenter Signed-off-by: David S. Miller commit 7d060ed2877ff6d00e7238226edbaf91493d6d0b Author: Tilman Schmidt Date: Mon Jul 5 14:19:14 2010 +0000 isdn/gigaset: reduce syslog spam Downgrade some error messages which occur frequently during normal operation to debug messages. Impact: logging Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 0cae6efdd7633624d8ecdec97a1d9e5a2a73352f Author: Tilman Schmidt Date: Mon Jul 5 14:19:09 2010 +0000 isdn/gigaset: remove obsolete compile time options Remove compile time options in the Gigaset ISDN driver that aren't going to be changed anymore, and an obsolete FIXME comment. Impact: cleanup Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 18c2259c14d8595e64a802940422335d172a53db Author: Tilman Schmidt Date: Mon Jul 5 14:19:04 2010 +0000 isdn/gigaset: handle Supplementary Service Listen Add minimal handling for the non-optional CAPI FACILITY_REQ Supplementary Service function Listen. Impact: bugfix Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 6a75342a1c788aa89acac675e1720b08068ac8e7 Author: Tilman Schmidt Date: Mon Jul 5 14:18:59 2010 +0000 isdn/gigaset: improve CAPI message debugging Provide better control of debugging output for DATA_B3 CAPI messages which tend to occur very frequently. Impact: logging Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 24c176258d9b2aa58d86584338fcd2d1a1521dbf Author: Tilman Schmidt Date: Mon Jul 5 14:18:53 2010 +0000 isdn/gigaset: drop debug check on isochronous write With CONFIG_GIGASET_DEBUG set, every isochronous USB frame after an erroneous one was checked for more errors. This produced only noise messages in practice, so drop it. Impact: cleanup Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 2ed5e4ff272c0cb10a602ccb02f97c3b10801739 Author: Tilman Schmidt Date: Mon Jul 5 14:18:48 2010 +0000 isdn/gigaset: ignore irrelevant device responses Downgrade the Gigaset driver's reaction to unknown AT responses from the device from warning to debug level, and remove the handling of some device responses which aren't relevant for the driver's operation. Impact: cleanup Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit e3628dd176ba3ed329991ef042c29aae60617630 Author: Tilman Schmidt Date: Mon Jul 5 14:18:43 2010 +0000 isdn/gigaset: avoid copying AT commands twice Change the Gigaset driver's internal write_cmd interface to accept a cmdbuf structure instead of a string. This avoids copying formatted AT commands a second time. Impact: optimization Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit b3251d8045f87eec5d565603345d262cee134fa6 Author: Tilman Schmidt Date: Mon Jul 5 14:18:37 2010 +0000 isdn/gigaset: adjust usb_gigaset tty write buffer limit The usb_gigaset driver's write buffer limit was different from those of the others for no good reason. Set it to the same value, derived from the Siemens documentation. Impact: cosmetic Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 597e608a8492d662736c9bc6aa507dbf1cadc17d Merge: acbc0f0 33b665e Author: David S. Miller Date: Wed Jul 7 15:59:38 2010 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit acbc0f039ff4b93da737c91937b7c70018ded39f Author: Eran Liberty Date: Wed Jul 7 15:54:54 2010 -0700 gianfar: code cleanup This patch relates to "[PATCH] gainfar.c : skb_over_panic (kernel-2.6.32.15)" While in 2.6.32.15 it actually fixed a bug here it merely cleans up the previous attempts to fix the bug with a more coherent code. Currently before queuing skb into the rx_recycle it is "un-skb_reserve"-ed so when taken out in gfar_new_skb() it wont be reserved twice. This patch makes sure the alignment skb_reserve is done once, upon allocating the skb and not when taken out of the rx_recycle pool. Eliminating the need to undo anything before queue skb back to the pool. NOTE: This patch will compile and is fairly straight forward but I do not have environment to test it as I did with the 2.6.32.15 fix. Signed-off-by: Eran Liberty Signed-off-by: David S. Miller commit f29a3d040727a80c3307a2bea057206be049c305 Author: Yoshihiro Shimoda Date: Mon Jul 5 18:32:50 2010 +0000 net: sh_eth: add support for SH7757's ETHER The SH7757 has 2 Fast Ethernet controller (ETHER) and 2 Gigabit Ethernet Controller (GETHER). This patch supports 2 ETHER only. Signed-off-by: Yoshihiro Shimoda Signed-off-by: David S. Miller commit 6f3c72a2148f5f99c4dcc97cbcea06916136c862 Author: Vladislav Zolotarov Date: Tue Jul 6 04:09:43 2010 +0000 bnx2x: Set RXHASH for LRO packets Set Toeplitz hash both for LRO and none-LRO skbs. The first CQE (TPA_START) will contain a hash for an LRO packet. Current code sets skb->rx_hash for none-LRO skbs only. Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 49085bd7d498c47d635851cfda22627b085cd9af Author: George Kadianakis Date: Tue Jul 6 11:44:12 2010 +0000 net/ipv4/ip_output.c: Removal of unused variable in ip_fragment() Removal of unused integer variable in ip_fragment(). Signed-off-by: George Kadianakis Signed-off-by: David S. Miller commit 28172739f0a276eb8d6ca917b3974c2edb036da3 Author: Eric Dumazet Date: Wed Jul 7 14:58:56 2010 -0700 net: fix 64 bit counters on 32 bit arches There is a small possibility that a reader gets incorrect values on 32 bit arches. SNMP applications could catch incorrect counters when a 32bit high part is changed by another stats consumer/provider. One way to solve this is to add a rtnl_link_stats64 param to all ndo_get_stats64() methods, and also add such a parameter to dev_get_stats(). Rule is that we are not allowed to use dev->stats64 as a temporary storage for 64bit stats, but a caller provided area (usually on stack) Old drivers (only providing get_stats() method) need no changes. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 43a9aa64a2f4330a9cb59aaf5c5636566bce067c Author: Chuck Lever Date: Tue Jul 6 16:53:34 2010 -0400 NFSD: Fill in WCC data for REMOVE, RMDIR, MKNOD, and MKDIR Some well-known NFSv3 clients drop their directory entry caches when they receive replies with no WCC data. Without this data, they employ extra READ, LOOKUP, and GETATTR requests to ensure their directory entry caches are up to date, causing performance to suffer needlessly. In order to return WCC data, our server has to have both the pre-op and the post-op attribute data on hand when a reply is XDR encoded. The pre-op data is filled in when the incoming fh is locked, and the post-op data is filled in when the fh is unlocked. Unfortunately, for REMOVE, RMDIR, MKNOD, and MKDIR, the directory fh is not unlocked until well after the reply has been XDR encoded. This means that encode_wcc_data() does not have wcc_data for the parent directory, so none is returned to the client after these operations complete. By unlocking the parent directory fh immediately after the internal operations for each NFS procedure is complete, the post-op data is filled in before XDR encoding starts, so it can be returned to the client properly. Signed-off-by: Chuck Lever Signed-off-by: J. Bruce Fields commit 73e194639d90594d06d0c10019c0ab4638869135 Author: Felix Fietkau Date: Wed Jul 7 19:42:09 2010 +0200 ath9k: fix a buffer leak in A-MPDU completion When ath_tx_complete_aggr() is called, it's responsible for returning all buffers in the linked list. This was not done when the STA lookup failed, leading to a race condition that could leak a few buffers when a STA just disconnected. Fix this by immediately returning all buffers to the free list in this case. Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit 2b40994cabd2f545d5c11d3a65dcee6f6f9155f8 Author: Felix Fietkau Date: Wed Jul 7 19:42:08 2010 +0200 ath9k: fix a potential buffer leak in the STA teardown path It looks like it might be possible for a TID to be paused, while still holding some queued buffers, however ath_tx_node_cleanup currently only iterates over active TIDs. Fix this by always checking every allocated TID for the STA that is being cleaned up. Signed-off-by: Felix Fietkau Cc: stable@kernel.org Signed-off-by: John W. Linville commit 60ea385ff279a18790a432d57a8302562aaa0f8d Author: Jiri Slaby Date: Wed Jul 7 15:02:46 2010 +0200 NET: nl80211, fix lock imbalance and netdev referencing Stanse found that nl80211_set_wiphy imporperly handles a lock and netdev reference and contains unreachable code. It is because there return statement isntead of assignment to result variable. Fix that. Signed-off-by: Jiri Slaby Cc: Johannes Berg Cc: "John W. Linville" Cc: "David S. Miller" Cc: Jouni Malinen Cc: Samuel Ortiz Cc: linux-wireless@vger.kernel.org Cc: netdev@vger.kernel.org Signed-off-by: John W. Linville commit 83a7a2ad2a9173dcabc05df0f01d1d85b7ba1c2c Author: H. Peter Anvin Date: Thu Jun 10 00:10:43 2010 +0000 x86, alternatives: Use 16-bit numbers for cpufeature index We already have cpufeature indicies above 255, so use a 16-bit number for the alternatives index. This consumes a padding field and so doesn't add any size, but it means that abusing the padding field to create assembly errors on overflow no longer works. We can retain the test simply by redirecting it to the .discard section, however. [ v3: updated to include open-coded locations ] Signed-off-by: H. Peter Anvin LKML-Reference: Signed-off-by: H. Peter Anvin commit 24da9c26f3050aee9314ec09930a24c80fe76352 Author: H. Peter Anvin Date: Wed Jul 7 10:15:12 2010 -0700 x86, cpu: Add CPU flags for F16C and RDRND Add support for the newly documented F16C (16-bit floating point conversions) and RDRND (RDRAND instruction) CPU feature flags. Signed-off-by: H. Peter Anvin commit db7b2b4b0e0513627420940d3d62be44a37f0524 Author: Eric Miao Date: Thu Jun 3 15:36:49 2010 +0800 ARM: Remove unused PARAMS_PHYS from arch/arm/boot/compressed The only reference in arch/arm/boot/compressed to PARAMS_PHYS is params() in head.S, which can be directly converted to the exact address as specified by arch/arm/mach-rpc/Makefile.boot. Signed-off-by: Eric Miao Signed-off-by: Uwe Kleine-König commit 73a65b3f8587fa1c83768515ecc0bf6fa44ccdd1 Author: Uwe Kleine-König Date: Tue Jan 19 10:13:14 2010 +0100 ARM: deprecate support for old way to pass kernel parameters This was deprecated in 2001 and announced to live on for 5 years. For now provide a kernel parameter for those who still need it. Acked-by: Eric Miao Signed-off-by: Uwe Kleine-König commit 8d68fe7029ed2631363f6f37155586c0707b8dc0 Author: Uwe Kleine-König Date: Tue Jan 19 09:43:41 2010 +0100 ARM: zImage: don't define unused symbol initrd_phys The only user of initrd_phys is arch/arm/boot/bootp/init.S which still gets the value passed to. Acked-by: Eric Miao Signed-off-by: Uwe Kleine-König commit 7179304bfcffbbc66ca8a8498d92e023833b017d Author: Uwe Kleine-König Date: Thu Feb 4 10:23:58 2010 +0100 ARM: remove bit-rotten STANDALONE_DEBUG for decompressor I tried to get this running to debug the regression introduced by e7db7b4 without success. But this has several problems that make it hard to fix: - lib/decompress_inflate.c includes in-kernel headers that make it difficult to compile for user space. - the binary formats changed both in kernel and user space and at least for the kernel side there isn't only a single variant. Signed-off-by: Uwe Kleine-König Acked-by: Nicolas Pitre commit 102e73463e1bb921b3a829a1392a29dba16bbabd Merge: 5c8d717 e5510fa Author: Dave Airlie Date: Wed Jul 7 18:38:44 2010 +1000 Merge branch 'drm-tracepoints' into drm-testing commit 5c8d7171cc4984351af802a525675d50ae555a7b Author: Alex Deucher Date: Fri Jun 11 17:04:35 2010 -0400 drm/kms: add crtc disable function More explicit than dpms. Same as the encoder disable function. Need this to explicity disconnect plls from crtcs for reuse when you plls:crtcs ratio isn't 1:1. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit a907a2e7d287f2b89fd81bc8edf164c0008c624f Merge: db8cc27 709ea97 Author: Dave Airlie Date: Wed Jul 7 18:37:37 2010 +1000 Merge branch 'drm-intel-lru' into drm-testing * drm-intel-lru: drm: implement helper functions for scanning lru list drm_mm: extract check_free_mm_node drm: sane naming for drm_mm.c drm: kill dead code in drm_mm.c drm: kill drm_mm_node->private drm: use list_for_each_entry in drm_mm.c commit db8cc27b804f89e8fd5f9d5385161956a777c471 Merge: 6dbe746 05269a3 Author: Dave Airlie Date: Wed Jul 7 18:37:35 2010 +1000 Merge branch 'drm-platform' into drm-testing * drm-platform: drm: Make sure the DRM offset matches the CPU drm: Add __arm defines to DRM drm: Add support for platform devices to register as DRM devices drm: Remove drm_resource wrappers commit 6dbe7465713f0e45f0e867105ca944978d57346e Merge: 023eb57 815c416 Author: Dave Airlie Date: Wed Jul 7 18:37:34 2010 +1000 Merge tag 'v2.6.35-rc4' into drm-testing commit eb703f98191a505f78d0066712ad67d5dedc4c90 Author: Kulikov Vasiliy Date: Mon Jul 5 12:00:54 2010 +0400 kernel/watchdog: Initialize 'result' Variable on the stack is not initialized to zero, do it explicitly. This bug was found by a compiler warning: kernel/watchdog.c:463: warning: 'result' may be used uninitialized in this function Signed-off-by: Kulikov Vasiliy Acked-by: Don Zickus Cc: Frederic Weisbecker Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Mike Galbraith Cc: Steven Rostedt LKML-Reference: <1278316854-28442-1-git-send-email-segooon@gmail.com> Signed-off-by: Ingo Molnar commit 9e6c3e996e3c80d00cf931538e17126efe45f45c Author: Bob Moore Date: Tue Jul 6 10:39:01 2010 +0800 ACPICA: Update version to 20100702 Version 20100702. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 09079250db4d470f75eddcce31e0229c92d6c3bf Author: Bob Moore Date: Tue Jul 6 10:37:13 2010 +0800 ACPICA: Fix for Alias references within Package objects This fixes a problem where a reference to an Alias within the definition of a Package was not always resolved properly. Aliases to objects like Processors, ThermalZones, etc. were resolved to the actual object instead of a reference to the object as it should be. Package objects are only allowed to contain integer, string, buffer, package, and reference objects. https://bugzilla.redhat.com/show_bug.cgi?id=608648 Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 150dba38f0c3d2d5f5edc58145d202de08ed623c Author: Bob Moore Date: Tue Jul 6 10:35:55 2010 +0800 ACPICA: Fix lint warning for 64-bit constant cast to u64. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit de5668fe7549c0586c6f64fa5661604cf7029a99 Author: Bob Moore Date: Tue Jul 6 10:30:37 2010 +0800 ACPICA: Remove obsolete GPE function Remove acpi_hw_write_gpe_enable_reg, it had been reduced down to a single line of code, and called from only one place. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit ddcc6a037c0f9378f29658636a2c2b54c4238ec4 Author: Bob Moore Date: Tue Jul 6 10:02:16 2010 +0800 ACPICA: Update debug output components Add data table compiler output component Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 9d8b5e7b28179784e2c6250086a44021fbb9c5a0 Author: Bob Moore Date: Tue Jul 6 09:58:11 2010 +0800 ACPICA: Add support for WDDT - Watchdog Descriptor Table Header file support. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 546eb57695875712f676e5f729159b0779f1c0af Author: Rafael J. Wysocki Date: Thu Jul 1 11:07:20 2010 +0800 ACPICA: Drop acpi_set_gpe The acpi_set_gpe() function is a little awkward, because it doesn't really work as advertised in the "disable" case. Namely, if a GPE has been enabled with acpi_enable_gpe() and triggered a notification to occur, and if acpi_set_gpe() is used to disable it before acpi_ev_asynch_enable_gpe() runs, the GPE will be immediately enabled by the latter as though the acpi_set_gpe() had no effect. Thus, since it's been possible to make all of its callers use alternative operations to disable or enable GPEs, acpi_set_gpe() can be dropped. Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit 3bd741bd0dfcc1845ae6892baa5192c91addc84c Author: Rafael J. Wysocki Date: Thu Jul 1 11:01:12 2010 +0800 ACPICA: Use low-level GPE enable during GPE block initialization The GPE block initialization code in acpi_ev_initialize_gpe_block() uses acpi_set_gpe() to make sure that the GPEs with nonzero runtime counter will remain enabled, but since it already has a struct acpi_gpe_event_info object for each GPE, it might use the low-level GPE enabling function, acpi_clear_and_enable_gpe(), for this purpose. To make that happen, move acpi_clear_and_enable_gpe() to drivers/acpi/acpica/evgpe.c and rename it to acpi_ev_enable_gpe(), modify the two existing users of it accordingly and modify acpi_ev_initialize_gpe_block() to use it instead of acpi_set_gpe() and to check its return value. Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 3784730b02b9f147a55b0e4623fcad671273e6e6 Author: Rafael J. Wysocki Date: Fri Jun 25 01:21:42 2010 +0200 ACPI / EC: Do not use acpi_set_gpe The EC driver is the last user of acpi_set_gpe() and since it is guaranteed that the EC GPE will not be shared, acpi_disable_gpe() and acpi_enable_gpe() may be used for disabling the GPE temporarilty if a GPE storm is detected and re-enabling it during EC transactions. Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit b63559f5ce08bc8f94ce144a8d06f7af607ecc53 Author: Rafael J. Wysocki Date: Fri Jun 25 01:20:38 2010 +0200 ACPI / EC: Drop suspend and resume routines The suspend and resume routines provided by the EC driver are not really necessary, because the handler of the GPE disabled by them is not going to be executed after suspend_device_irqs() and before resume_device_irqs() anyway. Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit a44061aa8b5d58b2729faca4c155a94a5bea2a09 Author: Rafael J. Wysocki Date: Thu Jul 1 10:11:45 2010 +0800 ACPICA: Remove wakeup GPE reference counting which is not used After the previous patch that introduced acpi_gpe_wakeup() and modified the ACPI suspend and wakeup code to use it, the third argument of acpi_{enable|disable}_gpe() and the GPE wakeup reference counter are not necessary any more. Remove them and modify all of the users of acpi_{enable|disable}_gpe() accordingly. Also drop GPE type constants that aren't used any more. Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit e8b6f970107cfc9c00cdcdb12ec6c7e135cf379f Author: Rafael J. Wysocki Date: Fri Jun 25 01:18:39 2010 +0200 ACPICA: Introduce acpi_gpe_wakeup() ACPICA uses reference counters to avoid disabling GPEs too early in case they have been enabled for many times. This is done separately for runtime and for wakeup, but the wakeup GPE reference counter is not really necessary, because GPEs are only enabled to wake up the system at the hardware level by acpi_enter_sleep_state(). Thus it only is necessary to set the corresponding bits in the wakeup enable masks of these GPEs' registers right before the system enters a sleep state. Moreover, the GPE wakeup enable bits can only be set when the target sleep state of the system is known and they need to be cleared immediately after wakeup regardless of how many wakeup devices are associated with a given GPE. On the basis of the above observations, introduce function acpi_gpe_wakeup() to be used for setting or clearing the enable bit corresponding to a given GPE in its enable register's enable_for_wake mask. Modify the ACPI suspend and wakeup code the use acpi_gpe_wakeup() instead of acpi_{enable|disable}_gpe() to set and clear GPE enable bits in their registers' enable_for_wake masks during system transitions to a sleep state and back to the working state, respectively. [This will allow us to drop the third argument of acpi_{enable|disable}_gpe() and simplify the GPE handling code.] Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit b76df673522d94e3eafcf16935b3d7e5dded3078 Author: Lin Ming Date: Thu Jul 1 10:07:17 2010 +0800 ACPICA: Rename acpi_hw_gpe_register_bit Rename acpi_hw_gpe_register_bit to acpi_hw_get_gpe_register_bit in order to be same with ACPICA code base. Signed-off-by: Lin Ming Signed-off-by: Len Brown commit ccba77eb45c36cf1d8b22f241eb8a4a292c1362e Author: Bob Moore Date: Mon May 31 09:23:22 2010 +0800 ACPICA: Update version to 20100528 Version 20100528. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 4461cf546ec8c97b6b997b8e533d6de1960499d3 Author: Bob Moore Date: Mon May 31 09:22:12 2010 +0800 ACPICA: Add signatures for undefined tables: ATKG, GSCI, IEIT These ACPI tables have been seen in the field, but the actual table definitions are unkown at this time. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit a9fc03125ea0001ff18bc29da9539b587fdbd1d7 Author: Alexey Starikovskiy Date: Wed May 26 13:59:51 2010 +0800 ACPICA: Optimization: Reduce the number of namespace walks On control method exit, only walk the namespace if the method is known to have created namespace objects outside of its local scope. Signed-off-by: Alexey Starikovskiy Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 20d33aea7ae7ad858f3f91c834d9043cd8122d38 Author: Bob Moore Date: Thu May 27 09:27:34 2010 +0800 ACPICA: Update flags for operand object Remove obsolete AOPOBJ_SINGLE_DATUM. Add AOPOBJ_INVALID for use if the host OS rejects the address of an operation region (currently only used by Linux.) Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit c45b5c097001480e66d4c523eb715ad317a4ef77 Author: Alexey Starikovskiy Date: Wed May 26 11:53:07 2010 +0800 ACPICA: Performance enhancement for namespace search and access This change enhances the performance of namespace searches and walks by adding a backpointer to the parent in each namespace node. On large namespaces, this change can improve overall ACPI performance by up to 9X. Adding a pointer to each namespace node increases the overall size of the internal namespace by about 5%, since each namespace entry usually consists of both a namespace node and an ACPI operand object. Signed-off-by: Alexey Starikovskiy Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 5821f75421aa7c7bafdec291223153597f649934 Author: Bob Moore Date: Wed May 26 11:48:22 2010 +0800 ACPICA: Expand device initialization counters to 32 bits Expand the various device initialization counters from 16-bit to 32-bit. Allows for very large namespaces. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit b27d65975c252ff774edff8e01f0a9fd46d8ab62 Author: Bob Moore Date: Wed May 26 11:47:13 2010 +0800 ACPICA: Core: Replace all %d format specifiers with %u (unsigned) With only a few exceptions, ACPICA does not use signed integers. Therefore, %d is incorrect. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 96b7b7ad79e4bd8a0ae67dd201f7532ef4abf1c1 Author: Alexey Starikovskiy Date: Wed May 26 11:20:47 2010 +0800 ACPICA: Expand initialization counters to 32 bits Expand the various initialization counters from 16-bit to 32-bit. Allows for very large namespaces. Signed-off-by: Alexey Starikovskiy Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 507f7d5e27015be1e5dda5c56bb5e10315b76f71 Author: Bob Moore Date: Wed May 26 11:18:35 2010 +0800 ACPICA: iASL/Core: Add support for _WDG/_WED MS methods These objects are defined by "Windows Instrumentation", and are not part of the ACPI spec. Adds compiler support and runtime typechecking support in the ACPICA core. ACPICA BZ 860. http://www.acpica.org/bugzilla/show_bug.cgi?id=860 Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit aa9d36060fb7480a5907660b7ba61c3fda20fc61 Author: Bob Moore Date: Wed May 26 11:03:56 2010 +0800 ACPICA: Add comment: _BCL cannot be sorted on the fly Because of package index values used for _BQC and _BCM. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 709ea97145c125b3811ff70429e90ebdb0e832e5 Author: Daniel Vetter Date: Fri Jul 2 15:02:16 2010 +0100 drm: implement helper functions for scanning lru list These helper functions can be used to efficiently scan lru list for eviction. Eviction becomes a three stage process: 1. Scanning through the lru list until a suitable hole has been found. 2. Scan backwards to restore drm_mm consistency and find out which objects fall into the hole. 3. Evict the objects that fall into the hole. These helper functions don't allocate any memory (at the price of not allowing any other concurrent operations). Hence this can also be used for ttm (which does lru scanning under a spinlock). Evicting objects in this fashion should be more fair than the current approach by i915 (scan the lru for a object large enough to contain the new object). It's also more efficient than the current approach used by ttm (uncoditionally evict objects from the lru until there's enough free space). Signed-Off-by: Daniel Vetter Acked-by: Thomas Hellstrom Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit 7a6b2896f261894dde287d3faefa4b432cddca53 Author: Daniel Vetter Date: Fri Jul 2 15:02:15 2010 +0100 drm_mm: extract check_free_mm_node There are already two copies of this logic. And the new scanning stuff will add some more. So extract it into a small helper function. Signed-off-by: Daniel Vetter Acked-by: Thomas Hellstrom Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit d1024ce91ff4c2c4ccbf692d204c71cbf215157a Author: Daniel Vetter Date: Fri Jul 2 15:02:14 2010 +0100 drm: sane naming for drm_mm.c Yeah, I've kinda noticed that fl_entry is the free stack. Still give it (and the memory node list ml_entry) decent names. Signed-off-by: Daniel Vetter Acked-by: Thomas Hellstrom Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit ca31efa89ae16c66966b8d5a5df3ae5cbffa61de Author: Daniel Vetter Date: Fri Jul 2 15:02:13 2010 +0100 drm: kill dead code in drm_mm.c Signed-off-by: Daniel Vetter Acked-by: Thomas Hellstrom Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit db3307a9f7b8078c654021e3b35354a2b09a8e67 Author: Daniel Vetter Date: Fri Jul 2 15:02:12 2010 +0100 drm: kill drm_mm_node->private Only ever assigned, never used. Signed-off-by: Daniel Vetter [glisse: I will re-add if needed for range-restricted allocations] Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit 26f3751eb47c757c656333e74bdceccd8d286d76 Author: Daniel Vetter Date: Fri Jul 2 15:02:11 2010 +0100 drm: use list_for_each_entry in drm_mm.c Signed-off-by: Daniel Vetter Signed-off-by: Chris Wilson Acked-by: Thomas Hellstrom Signed-off-by: Dave Airlie commit 8e221b6db4477643fefc885a97ea9889ac733140 Author: Suresh Siddha Date: Tue Jun 22 16:23:37 2010 -0700 x86: Avoid unnecessary __clear_user() and xrstor in signal handling fxsave/xsave doesn't touch all the bytes in the memory layout used by these instructions. Specifically SW reserved (bytes 464..511) fields in the fxsave frame and the reserved fields in the xsave header. To present a clean context for the signal handling, just clear these fields instead of clearing the complete fxsave/xsave memory layout, when we dump these registers directly to the user signal frame. Also avoid the call to second xrstor (which inits the state not passed in the signal frame) in restore_user_xstate() if all the state has already been restored by the first xrstor. These changes improve the performance of signal handling(by ~3-5% as measured by the lat_sig). Signed-off-by: Suresh Siddha LKML-Reference: <1277249017.2847.85.camel@sbs-t61.sc.intel.com> Signed-off-by: H. Peter Anvin commit ba58aebf567d2cb45ed9dbbb6910b51144f20c68 Author: Arnd Bergmann Date: Sun Jul 4 00:15:05 2010 +0200 [IA64] perfmon: convert to unlocked_ioctl The ioctl function in this driver does not do anything that requires the BKL, so make it use unlocked_ioctl. Signed-off-by: Arnd Bergmann Signed-off-by: Tony Luck commit f148cfdd9bc29c133d5728d8e98815ba8c01752e Author: Ameya Palande Date: Mon Jul 5 17:12:38 2010 +0300 wl12xx: Use MODULE_ALIAS macro at correct postion for SPI bus (Changed title, was "wl1251: Use MODULE_ALIAS macro at correct postion for SPI bus". -- JWL) Signed-off-by: Ameya Palande Acked-by: Luciano Coelho Signed-off-by: John W. Linville commit a2c9fc971d9ff11643d9c7b7c0af0e8ced7d895e Merge: ecc3d5a c8312fa Author: John W. Linville Date: Tue Jul 6 14:19:01 2010 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit a2262d8a231e92742651859a10c9a4430a5e899a Merge: ef06f55 815c416 Author: Chris Metcalf Date: Tue Jul 6 13:45:24 2010 -0400 Merge branch 'master' into for-linus commit ef06f55a5c936a395f3ee2e1237bbebdb4396c65 Author: Chris Metcalf Date: Fri Jul 2 14:19:35 2010 -0400 arch/tile: catch up on various minor cleanups. None of these changes fix any actual bugs, but are just various cleanups that fell out along the way. In particular, some unused #defines and includes are removed, PREFETCH_STRIDE is added (the default is right for our shipping chips, but wrong for our next generation), our tile-specific prefetching code is removed so the (identical) generic prefetching code can be used instead, a comment is fixed to be proper GPL and not just a "paste GPL here" token, a "//" comment is converted to "/* */", etc. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit bcd97c3f9a385e8e658a416cd72dd65ca0eeb544 Author: Chris Metcalf Date: Fri Jul 2 14:17:52 2010 -0400 arch/tile: avoid erroneous error return for PTRACE_POKEUSR. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit c6673cb54d191dd42935a61fcb0c452a4753fb23 Author: FUJITA Tomonori Date: Wed Jun 30 11:10:08 2010 +0900 tile: set ARCH_KMALLOC_MINALIGN Architectures that handle DMA-non-coherent memory need to set ARCH_KMALLOC_MINALIGN to make sure that kmalloc'ed buffer is DMA-safe: the buffer doesn't share a cache with the others. Signed-off-by: FUJITA Tomonori Acked-by: Chris Metcalf commit 4b2bf4b3fc066d45870b7f33fa23dbcb9cb1a27f Author: FUJITA Tomonori Date: Tue Jun 29 16:32:42 2010 +0900 tile: remove homegrown L1_CACHE_ALIGN macro Let's use the standard L1_CACHE_ALIGN macro instead. Signed-off-by: FUJITA Tomonori Acked-by: Chris Metcalf commit 0707ad30d10110aebc01a5a64fb63f4b32d20b73 Author: Chris Metcalf Date: Fri Jun 25 17:04:17 2010 -0400 arch/tile: Miscellaneous cleanup changes. This commit is primarily changes caused by reviewing "sparse" and "checkpatch" output on our sources, so is somewhat noisy, since things like "printk() -> pr_err()" (or whatever) throughout the codebase tend to get tedious to read. Rather than trying to tease apart precisely which things changed due to which type of code review, this commit includes various cleanups in the code: - sparse: Add declarations in headers for globals. - sparse: Fix __user annotations. - sparse: Using gfp_t consistently instead of int. - sparse: removing functions not actually used. - checkpatch: Clean up printk() warnings by using pr_info(), etc.; also avoid partial-line printks except in bootup code. - checkpatch: Use exposed structs rather than typedefs. - checkpatch: Change some C99 comments to C89 comments. In addition, a couple of minor other changes are rolled in to this commit: - Add support for a "raise" instruction to cause SIGFPE, etc., to be raised. - Remove some compat code that is unnecessary when we fully eliminate some of the deprecated syscalls from the generic syscall ABI. - Update the tile_defconfig to reflect current config contents. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit c78095bd8c77fca2619769ff8efb639fd100e373 Author: Chris Metcalf Date: Fri Jun 25 17:03:27 2010 -0400 arch/tile: Split the icache flush code off to a generic header. This code is used in other places in our system than in Linux, so to share it we now implement it as an inline function in our low-level headers, and instantiate it in one file in Linux's arch/tile/lib. The file is now cacheflush.c and is C code rather than the strangely-named and assembler-implemented __invalidate_icache.S. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit 2db098278118ed58f4b407ceda691e349df043ce Author: Chris Metcalf Date: Fri Jun 25 17:02:40 2010 -0400 arch/tile: Fix bug in support for atomic64_xx() ops. This wasn't properly tested until the perf-event subsystem started to get brought up under the tile architecture. The bug caused bogus atomic64_cmpxchg() values to be returned, among other things. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit 863fbac67138882b99fc60fcb0ec568bbad9a44f Author: Chris Metcalf Date: Fri Jun 25 17:02:05 2010 -0400 arch/tile: Shrink the tile-opcode files considerably. The C file (tile-desc_{32,64}.c) was about 300KB before this change, and is now shrunk down to 100K. The original file included support for BFD in the binutils toolchain, which is not necessary in the kernel; the kernel version only needs to include enough support to enable the single-stepper and backtracer. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit 9f9c0382cda2334b35b40b00f4ed9d6f89f37a7b Author: Chris Metcalf Date: Fri Jun 25 17:00:56 2010 -0400 arch/tile: Add driver to enable access to the user dynamic network. This network (the "UDN") connects all the cpus on the chip in a wormhole-routed dynamic network. Subrectangles of the chip can be allocated by a "create" ioctl on /dev/hardwall, and then to access the UDN in that rectangle, tasks must perform an "activate" ioctl on that same file object after affinitizing themselves to a single cpu in the region. Sending a wormhole-routed message that tries to leave that subrectangle causes all activated tasks to receive a SIGILL (just as they would if they tried to access the UDN without first activating themselves to a hardwall rectangle). The original submission of this code to LKML had the driver instantiated under /proc/tile/hardwall. Now we just use a character device for this, conventionally /dev/hardwall. Some futures planning for the TILE-Gx chip suggests that we may want to have other types of devices that share the general model of "bind a task to a cpu, then 'activate' a file descriptor on a pseudo-device that gives access to some hardware resource". As such, we are using a device rather than, for example, a syscall, to set up and activate this code. As part of this change, the compat_ptr() declaration was fixed and used to pass the compat_ioctl argument to the normal ioctl. So far we limit compat code to 2GB, so the difference between zero-extend and sign-extend (the latter being correct, eventually) had been overlooked. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit fb702b942bf638baa6cbbbda9f76794db62921ef Author: Chris Metcalf Date: Fri Jun 25 16:41:11 2010 -0400 arch/tile: Enable more sophisticated IRQ model for 32-bit chips. This model is based on the on-chip interrupt model used by the TILE-Gx next-generation hardware, and interacts much more cleanly with the Linux generic IRQ layer. The change includes modifications to the Tilera hypervisor, which are reflected in the hypervisor headers in arch/tile/include/arch/. Signed-off-by: Chris Metcalf Acked-by: Thomas Gleixner commit de5d9bf6541736dc7ad264d2b5cc99bc1b2ad958 Author: Chris Metcalf Date: Fri Jul 2 13:41:14 2010 -0400 Move list types from to . This allows a list_head (or hlist_head, etc.) to be used from places that used to be impractical, in particular , which used to cause include file recursion: includes , which always includes for the prefetch macros, as well as , which often includes directly or indirectly. This avoids a lot of painful workaround hackery on the tile architecture, where we use a list_head in the thread_struct to chain together tasks that are activated on a particular hardwall. Signed-off-by: Chris Metcalf Reviewed-by: Matthew Wilcox commit 6a85d6c76962db769bb2f2cb11b17b16f32c4158 Author: J. Bruce Fields Date: Tue Jul 6 12:39:12 2010 -0400 nfsd4: comment nitpick Reported-by: "Madan, Anshul" Signed-off-by: J. Bruce Fields commit 8eab945c5616fc984e97b922d6a2559be93f39a1 Author: Artem Bityutskiy Date: Thu Jul 1 18:05:56 2010 +0300 sunrpc: make the cache cleaner workqueue deferrable This patch makes the cache_cleaner workqueue deferrable, to prevent unnecessary system wake-ups, which is very important for embedded battery-powered devices. do_cache_clean() is called every 30 seconds at the moment, and often makes the system wake up from its power-save sleep state. With this change, when the workqueue uses a deferrable timer, the do_cache_clean() invocation will be delayed and combined with the closest "real" wake-up. This improves the power consumption situation. Note, I tried to create a DECLARE_DELAYED_WORK_DEFERRABLE() helper macro, similar to DECLARE_DELAYED_WORK(), but failed because of the way the timer wheel core stores the deferrable flag (it is the LSBit in the time->base pointer). My attempt to define a static variable with this bit set ended up with the "initializer element is not constant" error. Thus, I have to use run-time initialization, so I created a new cache_initialize() function which is called once when sunrpc is being initialized. Signed-off-by: Artem Bityutskiy Signed-off-by: J. Bruce Fields commit d9823ed9fa3126097dfd2bbce6dc33957c1be728 Author: Raffaele Recalcati Date: Tue Jul 6 10:39:04 2010 +0200 ASoC: DaVinci: More accurate continuous serial clock for McBSP (I2S) i2s_accurate_sck switch can be used to have a better approximate sampling frequency. The clock is an externally visible bit clock and it is named i2s continuous serial clock (I2S_SCK). The trade off is between more accurate clock (fast clock) and less accurate clock (slow clock). The waveform will be not symmetric. Probably it is possible to get a better algorithm for calculating the divider, trying to keep a slower clock as possible. This patch has been developed against the http://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci.git git tree and has been tested on bmx board (similar to dm365 evm, but using uda1345 as external audio codec). Signed-off-by: Raffaele Recalcati Signed-off-by: Davide Bonfanti Acked-by: Liam Girdwood Acked-by: Sudhakar Rajashekhara Signed-off-by: Mark Brown commit ec6375533748806a1a49dad7ce124cc02886854a Author: Raffaele Recalcati Date: Tue Jul 6 10:39:03 2010 +0200 ASoC: DaVinci: Added selection of clk input pin for McBSP When McBSP peripheral gets the clock from an external pin, there are three possible chooses, MCBSP_CLKX, MCBSP_CLKR and MCBSP_CLKS. evm-dm365 uses MCBSP_CLKR, instead in bmx board I have a different hardware connection and I use MCBSP_CLKS, so I have added this possibility. This patch has been developed against the: http://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci.git git tree and has been tested on bmx board (similar to dm365 evm) Signed-off-by: Raffaele Recalcati Signed-off-by: Davide Bonfanti Acked-by: Liam Girdwood Acked-by: Sudhakar Rajashekhara Signed-off-by: Mark Brown commit a4c8ea2ddaed2f461606c2828b19786524b551ac Author: Raffaele Recalcati Date: Tue Jul 6 10:39:02 2010 +0200 ASoC: DaVinci: Added two clocking possibilities to McBSP (I2S) Added two clocking options for dm365 McBSP peripheral when used with I2S timings, that are SND_SOC_DAIFMT_CBS_CFS (the cpu generates clock and frame sync) and SND_SOC_DAIFMT_CBS_CFM (the cpu gets clock from external pin and generates frame sync). A slave clock management can be important when the external codec needs the system clock and the bit clock synchronized (tested with uda1345). This patch has been developed against the: http://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci.git git tree and has been tested on bmx board (similar to dm365 evm, but using uda1345 as external audio codec). Signed-off-by: Raffaele Recalcati Signed-off-by: Davide Bonfanti Acked-by: Liam Girdwood Acked-by: Sudhakar Rajashekhara Signed-off-by: Mark Brown commit 088fbab406e264a60fb06d3ea8d32a3e802a00b8 Author: Maurus Cuelenaere Date: Sun Jul 4 15:12:11 2010 +0200 ASoC: Invert speaker enabling behaviour in SmartQ sound driver The speaker was enabled when the headphone was plugged in, which isn't the wanted behaviour so correct this. Signed-off-by: Maurus Cuelenaere Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8bd0e1be25c43a9fbd33a8de06449088879d527a Merge: 39ef13a b7dcb85 Author: Ingo Molnar Date: Tue Jul 6 09:00:32 2010 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core commit f978d36da4024ee22957f74276e944624a8c7f6d Author: Eliot Blennerhassett Date: Tue Jul 6 08:37:11 2010 +1200 ALSA: asihpi - Remove unneeded ; Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 36ed8bdd867314660b8dca2d1b6d9e92352b319b Author: Eliot Blennerhassett Date: Tue Jul 6 08:37:10 2010 +1200 ALSA: asihpi - Minor HPI error handling fixes Handle errors in tuner level caching, Ccorrect error code for aesebu rx status. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 108ccb3f0fa617a003c6b076b73b74d4f85e4cde Author: Eliot Blennerhassett Date: Tue Jul 6 08:37:09 2010 +1200 ALSA: asihpi - Change compander API and tidy Compander API changed to one function per parameter. Factor out some common code for stereo log value reading. Make some more entity functions static. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 38439146355de2c10c369f93136333be6107a16b Author: Eliot Blennerhassett Date: Tue Jul 6 08:37:08 2010 +1200 ALSA: asihpi - Add ASI5200 family Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 1dd6aaaafc930dd9bfaa6ea1d21bac2b4ec12527 Author: Eliot Blennerhassett Date: Tue Jul 6 08:37:07 2010 +1200 ALSA: asihpi - Use version string instead of printf formatting Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 168f1b07ccc0e8edecb67fab2d0670861853e2fd Author: Eliot Blennerhassett Date: Tue Jul 6 08:37:06 2010 +1200 ALSA: asihpi - HPI API updates Remove some deprecated items. Change compander api to one function per parameter. Add a version string define. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 217d32dc5f299c483ca0d3c8cc6811c72c0339c4 Author: Julia Lawall Date: Mon Jul 5 22:15:47 2010 -0700 forcedeth: correct valid flag Elsewhere in the "optimized" functions, the "2" constants are used. NV_TX_VALID and NV_TX2_VALID have the same value. Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit bc10f96757bd6ab3721510df8defa8f21c32f974 Author: Tilman Schmidt Date: Mon Jul 5 14:18:27 2010 +0000 isdn: avoid calling tty_ldisc_flush() in atomic context Remove the call to tty_ldisc_flush() from the RESULT_NO_CARRIER branch of isdn_tty_modem_result(), as already proposed in commit 00409bb045887ec5e7b9e351bc080c38ab6bfd33. This avoids a "sleeping function called from invalid context" BUG when the hardware driver calls the statcallb() callback with command==ISDN_STAT_DHUP in atomic context, which in turn calls isdn_tty_modem_result(RESULT_NO_CARRIER, ~), and from there, tty_ldisc_flush() which may sleep. Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 831334cbbbdc2b2923513104e6e70c80dda0bff0 Author: Tilman Schmidt Date: Mon Jul 5 14:18:22 2010 +0000 Documentation/isdn: CAPI controller interface amendment Mention that the CAPI controller methods load_firmware() and reset_ctr() are asynchronous, and should signal completion. Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 83cc0a1b1b4060142e1538a878733db35ea8cf77 Author: Ron Mercer Date: Mon Jul 5 12:19:42 2010 +0000 qlge: Change version to v1.00.00.25.00.00-01. Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit fbc2ac336796ea686211ca411b23cb0527fca57d Author: Ron Mercer Date: Mon Jul 5 12:19:41 2010 +0000 qlge: Make adapter drop frame errors and pass up csum errors. Statistics are available and the driver doesn't need the actual frame. This TCP/UDP and IP headers checksum errors will still be passed to the driver. Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit 6d29b1ef311d96e737084032a4b080653015aedf Author: Ron Mercer Date: Mon Jul 5 12:19:40 2010 +0000 qlge: Fix possible endian issue for rx UDP csum. Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit 3b11d36ec25cdd69929b8abe867984c8ab2b50a4 Author: Ron Mercer Date: Mon Jul 5 12:19:39 2010 +0000 qlge: Reduce print level in data path statements. Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit fc312ecea71f42c32d41a30ba130c0230a1c6d61 Author: Ron Mercer Date: Mon Jul 5 12:19:38 2010 +0000 qlge: Don't use firmware when forcing firmware dump. In some cases the firmware may be dead. Instead we dump the firmware parameters and then restart it. Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit f2c05004f349635528558da8e253faf78377730e Author: Ron Mercer Date: Mon Jul 5 12:19:37 2010 +0000 qlge: Restore promiscuous setting after reset. Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit 4265e669ccafec0246f0bc45b7f461ff18da5acd Author: Kulikov Vasiliy Date: Mon Jul 5 02:14:23 2010 +0000 ni52: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit e929bc330d4820559091a8ce32fea60848751297 Author: Kulikov Vasiliy Date: Mon Jul 5 02:14:28 2010 +0000 ns83820: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 174afef4ea65fc58e8d18a0c64c890cf7d4e5924 Author: Kulikov Vasiliy Date: Mon Jul 5 02:14:09 2010 +0000 mac89x0: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 2321e80ac84cc616edda926aa1932b344409dccc Author: Kulikov Vasiliy Date: Mon Jul 5 02:14:17 2010 +0000 natsemi: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 897dd41d3b3235fe7e973dc5ca04781acf0dd8b2 Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:58 2010 +0000 ksz884x: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 7bfba0b0c15962265950ac0efe6bd4f42414db6d Author: Kulikov Vasiliy Date: Mon Jul 5 02:14:03 2010 +0000 lance: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit ad6f84b4ba7e304dc51dba3b3cbc10b8e348e319 Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:46 2010 +0000 hp100: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 86678a2018135e57df86a9729795bce1efea641d Author: Kulikov Vasiliy Date: Mon Jul 5 02:14:34 2010 +0000 starfire: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 0b9be50b3b66c7940b151dac8b80aaf138804226 Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:41 2010 +0000 hamachi: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 661a16ce9da615eb75d1052cbb13b6545f0080b4 Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:15 2010 +0000 cs89x0: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 275defc958acc9bf5bc81eb46209346d3aebe0fa Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:20 2010 +0000 epic100: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 57616ee4405b82c3ba4d20111697a4416f3967a6 Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:31 2010 +0000 ethoc: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit d117b6665847084cfe8a44b870f771153e18991d Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:36 2010 +0000 fealnx: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 78e8c5325aa8ae99b6738eaab0ebb7e3f53007ff Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:26 2010 +0000 davinci_emac: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 0a17ee90a16ddf6b410bc1a8a28a7e875dc08f8d Author: Ralf Baechle Date: Mon Jul 5 02:59:38 2010 +0000 ioc3-eth: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Based on original patch by Kulikov Vasiliy. Signed-off-by: Ralf Baechle Signed-off-by: Kulikov Vasiliy drivers/net/ioc3-eth.c | 49 ++++++++++++++++++++++++----------------------- 1 files changed, 25 insertions(+), 24 deletions(-) Signed-off-by: David S. Miller commit 4e922723589926214c789df05384483a9530d66d Author: Kulikov Vasiliy Date: Mon Jul 5 02:13:10 2010 +0000 sun3_82586: Use the instance of net_device_stats from net_device. Since net_device has an instance of net_device_stats, we can remove the instance of this from the adapter structure. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit fe76cda3081b502986f0c8b28b0cf8bfc27d44d5 Author: Eric Dumazet Date: Thu Jul 1 23:48:22 2010 +0000 ipv4: use skb_dst_copy() in ip_copy_metadata() Avoid touching dst refcount in ip_fragment(). Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit a99db196db1166a2159add4a3013e5df0ea126fa Author: Richard Röjfors Date: Sun Jul 4 13:26:39 2010 +0000 ks8842: Replace usage of dev_dbg with netdev_dbg This patch replaces all usage of dev_dbg with netdev_dbg. A side effect is that the pointer to the platform device in the adapter struct can be removed. Signed-off-by: Richard Röjfors Signed-off-by: David S. Miller commit c31fd6c25c4619c0745b12cff842721a4bd4202c Author: Oliver Neukum Date: Fri Jul 2 15:51:55 2010 +0200 usbnet: remove direct access to urb->status USB drivers should not use urb->status directly because it is scheduled to become a parameter. This does the conversion for drivers/net/usb Signed-off-by: Oliver Neukum Signed-off-by: David S. Miller commit 396e799c3ac29f970c40bde87b76f4652c06df76 Author: Emil Tantilov Date: Thu Jul 1 20:05:12 2010 +0000 ixgbe: use netif_ instead of netdev_ This patch restores the ability to set msglvl through ethtool. The issue was introduced by: commit 849c45423c0c108e08d67644728cc9b0ed225fa1 CC: Joe Perches Reported-by: Joe Perches Signed-off-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 4478a9cdf007a0418755a8a4016af8352fb1c1f3 Author: Alexander Duyck Date: Thu Jul 1 20:01:05 2010 +0000 igb: drop support for UDP hashing w/ RSS This change removes UDP from the supported protocols for RSS hashing. The reason for removing this protocol is because IP fragmentation was causing a network flow to be broken into two streams, one for fragmented, and one for non-fragmented and this in turn was causing out-of-order issues. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit db059c0f6edec0b1deba665e5853f4ed829003b7 Author: Mark Brown Date: Mon Jul 5 23:54:51 2010 +0900 ASoC: Automatically manage ALC coefficients for WM8960 Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit ef2a4524d6e776bbce819eeccbdcaeee5ce74027 Author: Andres Salomon Date: Mon Jun 28 22:00:48 2010 -0400 proc: unify PROC_DEVICETREE config Microblaze and PPC both use PROC_DEVICETREE, and OLPC will as well.. put the Kconfig option into fs/ rather than in arch/*/Kconfig. Signed-off-by: Andres Salomon [grant.likely@secretlab.ca: changed depends to PROC_FS && !SPARC] [grant.likely@secretlab.ca: moved to drivers/of/Kconfig] Signed-off-by: Grant Likely commit 5ab5fc7e35705cf1a8a506d8e8b71acc27feec75 Author: Grant Likely Date: Mon Jul 5 12:02:13 2010 -0600 of: Put all CONFIG_OF dependencies into a Kconfig menu block All of the options in drivers/of/Kconfig depend on CONFIG_OF. Putting all of them inside a menu block simplifies the dependency statements. It also creates a logical group for adding user selectable OF options. This patch also changes (PPC_OF || MICROBLAZE) statements to (!SPARC) so that those options are available to other architectures (and in fact the !SPARC conditions should probably be re-evalutated since the code is more generic now) This patch also moves the definition of CONFIG_DTC from arch/* to drivers/of/Kconfig Signed-off-by: Grant Likely commit dd5e73794c9af30d6491963e13436d9f05ee6df6 Author: Stephen Rothwell Date: Tue Jun 29 12:47:01 2010 +1000 of: remove architecture CONFIG_OF definitions now that CONFIG_OF is defined globally Signed-off-by: Stephen Rothwell Acked-by: Michal Simek Signed-off-by: Grant Likely commit bcbefae2bcad0996bcef7245e34176960e95a191 Author: Stephen Rothwell Date: Tue Jun 29 12:45:51 2010 +1000 of: define CONFIG_OF globally so architectures can select it Signed-off-by: Stephen Rothwell Signed-off-by: Grant Likely commit 7b14c647aee98db2d10705da385f9c19cc83a9af Author: Stephen Rothwell Date: Tue Jun 29 12:44:50 2010 +1000 sparc: turn CONFIG_OF into a select so that we can make CONFIG_OF global and remove it from the architecture Kconfig files later. Signed-off-by: Stephen Rothwell Acked-by: David S. Miller Signed-off-by: Grant Likely commit 10f85f43ef134014da72d2bcc1bff1abb9b0640c Author: Stephen Rothwell Date: Tue Jun 29 12:43:34 2010 +1000 powerpc: turn CONFIG_OF into a select so that we can make CONFIG_OF global and remove it from the architecture Kconfig files later. Signed-off-by: Stephen Rothwell Signed-off-by: Grant Likely commit ae5bf63f2d8bad78e427e77f3f896e81cbdbde0d Author: Stephen Rothwell Date: Tue Jun 29 12:42:00 2010 +1000 microblaze: turn CONFIG_OF into a select so that we can make CONFIG_OF global and remove it from the architecture Kconfig files later. Signed-off-by: Stephen Rothwell Acked-by: Michal Simek Signed-off-by: Grant Likely commit 50ef5284eb4f48810dd83255631a7f3de0d78d6b Author: Grant Likely Date: Tue Jun 8 07:48:20 2010 -0600 of: Fix missing include Fix a build failure on ARM Signed-off-by: Grant Likely commit 2ffe8c5f323c3b9749bf7bc2375d909d20bdbb15 Author: Grant Likely Date: Tue Jun 8 07:48:19 2010 -0600 of: refactor of_modalias_node() and remove explicit match table. This patch tightens up the behaviour of of_modalias_node() to be more predicatable and to eliminate the explicit of_modalias_tablep[] that is currently used to override the first entry in the compatible list of a device. The override table was needed originally because spi and i2c drivers had no way to do of-style matching. Now that all devices can have an of_node pointer, and all drivers can have an of_match_table, the explicit override table is no longer needed because each driver can specify its own OF-style match data. The mpc8349emitx-mcu driver is modified to explicitly specify the correct device to bind against. Signed-off-by: Grant Likely commit 959e85f7751c33d1a2dabc5cc3fe2ed0db7052e5 Author: Grant Likely Date: Tue Jun 8 07:48:19 2010 -0600 i2c: Add OF-style registration and binding This patch adds OF hooks to the i2c core so that devices can automatically be registered based on device tree data. Signed-off-by: Grant Likely commit 9fd049927ccba1c1d0343239b82f28c4e07fb95d Author: Grant Likely Date: Tue Jun 8 07:48:18 2010 -0600 of/i2c: Generalize OF support This patch cleans up the i2c OF support code to make it selectable by all architectures and allow for automatic registration of i2c devices. Signed-off-by: Grant Likely commit 4f0ddcb020ef8afae65b4edb9aeb4a42ab74f4cf Author: Randy Dunlap Date: Wed Jun 9 15:44:09 2010 -0700 niu: always include of_device.h The niu driver uses struct of_device when built on any arch, not only SPARC64, so always #include . drivers/net/niu.c:9700: warning: 'struct of_device' declared inside parameter list drivers/net/niu.c:9700: warning: its scope is only this definition or declaration, which is probably not what you want drivers/net/niu.c:9716: warning: assignment from incompatible pointer type Signed-off-by: Randy Dunlap Acked-by: Dave S. Miller Signed-off-by: Grant Likely commit f9f5a4669f1334a558f102c311debfd008e7c2bc Author: Grant Likely Date: Wed Jun 9 22:22:17 2010 -0600 of/device: Move struct of_device define outside of CONFIG_OF_DEVICE test Some code uses of_device even when CONFIG_OF_DEVICE is not set. This patch makes of_device valid all the time by moving it outside of the ifdef CONFIG_OF_DEVICE test. Reported-by: Randy Dunlap Signed-off-by: Grant Likely Acked-by: Randy Dunlap commit 8cec0e7b4c7c0b76f2b5285f250211ad81c3eafd Author: Grant Likely Date: Tue Jun 8 07:48:17 2010 -0600 of/device: Add OF style matching helper function Add of_driver_match_device() helper function. This function can be used by bus types to determine if a driver works with a device when using OF style matching. If CONFIG_OF is unselected, then it is a nop. Signed-off-by: Grant Likely CC: Greg Kroah-Hartman CC: Michal Simek CC: Grant Likely CC: Benjamin Herrenschmidt CC: Stephen Rothwell CC: linux-kernel@vger.kernel.org CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org CC: devicetree-discuss@lists.ozlabs.org commit 2e13cba8dc35774bf1d7169733e876c5b7adee54 Author: Grant Likely Date: Mon Jul 5 16:11:55 2010 -0600 of/gpio: fix of_gpio includes drivers/of/gpio.c is missing includes for of_irq and struct device which cause build failures on ARM. This patch adds the correct include files and removes the unneeded kernel.h include Signed-off-by: Grant Likely commit 391c970c0dd1100e3b9e1681f7d0f20aac35455a Author: Anton Vorontsov Date: Tue Jun 8 07:48:17 2010 -0600 of/gpio: add default of_xlate function if device has a node pointer Implement generic OF gpio hooks and thus make device-enabled GPIO chips (i.e. the ones that have gpio_chip->dev specified) automatically attach to the OpenFirmware subsystem. Which means that now we can handle I2C and SPI GPIO chips almost* transparently. * "Almost" because some chips still require platform data, and for these chips OF-glue is still needed, though with this change the glue will be much smaller. Signed-off-by: Anton Vorontsov Signed-off-by: Grant Likely Cc: David Brownell Cc: Bill Gatliff Cc: Dmitry Eremin-Solenikov Cc: Benjamin Herrenschmidt Cc: Jean Delvare Cc: Andrew Morton CC: linux-kernel@vger.kernel.org CC: devicetree-discuss@lists.ozlabs.org commit 594fa265e084073443390c5b93d5410fd28e9bcd Author: Grant Likely Date: Tue Jun 8 07:48:16 2010 -0600 of/gpio: stop using device_node data pointer to find gpio_chip Currently the kernel uses the struct device_node.data pointer to resolve a struct gpio_chip pointer from a device tree node. However, the .data member doesn't provide any type checking and there aren't any rules enforced on what it should be used for. There's no guarantee that the data stored in it actually points to an gpio_chip pointer. Instead of relying on the .data pointer, this patch modifies the code to add a lookup function which scans through the registered gpio_chips and returns the gpio_chip that has a pointer to the specified device_node. Signed-off-by: Grant Likely CC: Andrew Morton CC: Anton Vorontsov CC: Grant Likely CC: David Brownell CC: Bill Gatliff CC: Dmitry Eremin-Solenikov CC: Benjamin Herrenschmidt CC: Jean Delvare CC: linux-kernel@vger.kernel.org CC: devicetree-discuss@lists.ozlabs.org commit a19e3da5bc5fc6c10ab73f310bea80f3845b4531 Author: Anton Vorontsov Date: Tue Jun 8 07:48:16 2010 -0600 of/gpio: Kill of_gpio_chip and add members directly to gpio_chip The OF gpio infrastructure is great for describing GPIO connections within the device tree. However, using a GPIO binding still requires changes to the gpio controller just to add an of_gpio structure. In most cases, the gpio controller doesn't actually need any special support and the simple OF gpio mapping function is more than sufficient. Additional, the current scheme of using of_gpio_chip requires a convoluted scheme to maintain 1:1 mappings between of_gpio_chip and gpio_chip instances. If the struct of_gpio_chip data members were moved into struct gpio_chip, then it would simplify the processing of OF gpio bindings, and it would make it trivial to use device tree OF connections on existing gpiolib controller drivers. This patch eliminates the of_gpio_chip structure and moves the relevant fields into struct gpio_chip (conditional on CONFIG_OF_GPIO). This move simplifies the existing code and prepares for adding automatic device tree support to existing drivers. Signed-off-by: Grant Likely Cc: Andrew Morton Cc: Anton Vorontsov Cc: Grant Likely Cc: David Brownell Cc: Bill Gatliff Cc: Dmitry Eremin-Solenikov Cc: Benjamin Herrenschmidt Cc: Jean Delvare commit cedb1881ba32f7e9cd49250bd79debccbe52b094 Author: Anton Vorontsov Date: Tue Jun 8 07:48:15 2010 -0600 gpiolib: cosmetic improvements for error handling in gpiochip_add() Hopefully it makes the code look nicer and makes it easier to extend this function. Signed-off-by: Anton Vorontsov Signed-off-by: Andrew Morton Signed-off-by: Grant Likely CC: devicetree-discuss@lists.ozlabs.org CC: linux-kernel@vger.kernel.org commit ac80a51e2ce5c431de9997085f33cb6093218b1f Author: Grant Likely Date: Tue Jun 8 07:48:15 2010 -0600 of/device: populate platform_device (of_device) resource table on allocation When allocating a platform_device to represent an OF node, also allocate space for the resource table and populate it with IRQ and reg property information. This change is in preparation for merging the of_platform_bus_type with the platform_bus_type so that existing platform_driver code can retrieve base addresses and IRQs data. Background: a previous commit removed struct of_device and made it a #define alias for platform_device. Signed-off-by: Grant Likely CC: Michal Simek CC: Grant Likely CC: Benjamin Herrenschmidt CC: Stephen Rothwell CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org CC: devicetree-discuss@lists.ozlabs.org commit 94c0931983ee9d1cd96c32d52ac64c17464f0bbd Author: Grant Likely Date: Tue Jun 8 07:48:14 2010 -0600 of: Merge of_device_alloc() and of_device_make_bus_id() This patch merges the common routines of_device_alloc() and of_device_make_bus_id() from powerpc and microblaze. Signed-off-by: Grant Likely CC: Michal Simek CC: Grant Likely CC: Benjamin Herrenschmidt CC: Stephen Rothwell CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org CC: devicetree-discuss@lists.ozlabs.org commit 5fd200f3b351183b5489cef69961c60af9cead2f Author: Grant Likely Date: Tue Jun 8 07:48:13 2010 -0600 of/device: Merge of_platform_bus_probe() Merge common code between PowerPC and microblaze. This patch merges the code that scans the tree and registers devices. The functions merged are of_platform_bus_probe(), of_platform_bus_create(), and of_platform_device_create(). This patch also move the of_default_bus_ids[] table out of a Microblaze header file and makes it non-static. The device ids table isn't merged because powerpc and microblaze use different default data. Signed-off-by: Grant Likely CC: Michal Simek CC: Grant Likely CC: Benjamin Herrenschmidt CC: Stephen Rothwell CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org commit 34a1c1e8c700f7cd849deb21193718a172722f8d Author: Grant Likely Date: Tue Jun 8 07:48:13 2010 -0600 of: Modify of_device_get_modalias to be passed struct device Now that the of_node pointer is part of struct device, of_device_get_modalias could be used on any struct device that has the device node pointer set. This patch changes of_device_get_modalias to accept a struct device instead of a struct of_device. Signed-off-by: Grant Likely CC: Michal Simek CC: Benjamin Herrenschmidt CC: Wolfram Sang CC: Stephen Rothwell CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org commit dd27dcda37f0b1a3b674760fb411abc5c8fe309c Author: Grant Likely Date: Tue Jun 8 07:48:12 2010 -0600 of/device: merge of_device_uevent Merge common code between powerpc and microblaze Signed-off-by: Grant Likely CC: Michal Simek CC: Wolfram Sang CC: Stephen Rothwell CC: Benjamin Herrenschmidt CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org commit d3571c3acfabb6f3a93b517b75d9b30eb7e8692e Author: Grant Likely Date: Tue Jun 8 07:48:12 2010 -0600 of: Use full node name in resource structures Resource names appear in human readable output, so when extracting IRQ and address resources from a device tree node, use the full node name to give proper context in places like /proc/iomem. Signed-off-by: Grant Likely CC: Michal Simek CC: Stephen Rothwell CC: Benjamin Herrenschmidt CC: microblaze-uclinux@itee.uq.edu.au CC: linuxppc-dev@ozlabs.org commit 3930f294d081c9e2a65f137a7d5fb6c161e4aa94 Author: Grant Likely Date: Tue Jun 8 07:48:11 2010 -0600 of/address: restrict 'no-ranges' kludge to powerpc Certain Apple machines don't use the ranges property correctly, but the workaround should not be applied on other architectures. This patch disables the workaround for non-powerpc architectures. Signed-off-by: Grant Likely Acked-by: Benjamin Herrenschmidt CC: Stephen Rothwell commit 154063a9c03d31228b6f9366d2ffc2b7c4961698 Author: Grant Likely Date: Tue Jun 8 07:48:11 2010 -0600 of/address: little-endian fixes Fix some endian issues in the OF address translation code. Signed-off-by: Grant Likely Acked-by: Benjamin Herrenschmidt CC: Michal Simek CC: Stephen Rothwell commit dbbdee94734bf6f1db7af42008a53655e77cab8f Author: Grant Likely Date: Tue Jun 8 07:48:10 2010 -0600 of/address: Merge all of the bus translation code Microblaze and PowerPC share a large chunk of code for translating OF device tree data into usable addresses. Differences between the two consist of cosmetic differences, and the addition of dma-ranges support code to powerpc but not microblaze. This patch moves the powerpc version into common code and applies many of the cosmetic (non-functional) changes from the microblaze version. Signed-off-by: Grant Likely Acked-by: Benjamin Herrenschmidt CC: Michal Simek CC: Wolfram Sang CC: Stephen Rothwell commit 1f5bef30cf6c66f097ea5dfc580a41924df888d1 Author: Grant Likely Date: Tue Jun 8 07:48:09 2010 -0600 of/address: merge of_address_to_resource() Merge common code between PowerPC and Microblaze. This patch also moves the prototype of pci_address_to_pio() out of pci-bridge.h and into prom.h because the only user of pci_address_to_pio() is of_address_to_resource(). Signed-off-by: Grant Likely Acked-by: Benjamin Herrenschmidt CC: Michal Simek CC: Stephen Rothwell commit 6b884a8d50a6eea2fb3dad7befe748f67193073b Author: Grant Likely Date: Tue Jun 8 07:48:09 2010 -0600 of/address: merge of_iomap() Merge common code between Microblaze and PowerPC. This patch creates new of_address.h and address.c files to containing address translation and mapping routines. First routine to be moved it of_iomap() Signed-off-by: Grant Likely Acked-by: Benjamin Herrenschmidt CC: Michal Simek CC: Stephen Rothwell commit a7c194b007ec40a130207e9ace9cecf598fc6ac5 Author: Rob Herring Date: Tue Jun 8 07:48:08 2010 -0600 of/irq: little endian fixes Fix some endian issues in the irq mapping OF code. Signed-off-by: Rob Herring Signed-off-by: Grant Likely CC: Michal Simek CC: Wolfram Sang CC: Stephen Rothwell CC: Benjamin Herrenschmidt commit 7dc2e1134a22dc242175d5321c0c9e97d16eb87b Author: Grant Likely Date: Tue Jun 8 07:48:06 2010 -0600 of/irq: merge irq mapping code Merge common irq mapping code between PowerPC and Microblaze. This patch merges of_irq_find_parent(), of_irq_map_raw() and of_irq_map_one(). The functions are dependent on one another, so all three are merged in a single patch. Other than cosmetic difference (ie. DBG() vs. pr_debug()), the implementations are identical. of_irq_to_resource() is also merged, but in this case the implementations are different. This patch drops the microblaze version and uses the powerpc implementation unchanged. The microblaze version essentially open-coded irq_of_parse_and_map() which it does not need to do. Therefore the powerpc version is safe to adopt. Signed-off-by: Grant Likely CC: Michal Simek CC: Benjamin Herrenschmidt CC: Stephen Rothwell commit b83da291b4c73eaddc20e2edb614123a6d681b3b Author: Grant Likely Date: Fri Jun 18 11:10:01 2010 -0600 of/powerpc: Move Powermac irq quirk code into powermac pic driver code The code that figures out what is wrong with the powermac irq device tree data belongs with the rest of the powermac irq code. This patch moves it out of prom_parse.c and into powermac/pic.c so that it is only compiled in when actually needed. Signed-off-by: Grant Likely Cc: Benjamin Herrenschmidt Cc: Stephen Rothwell commit b6295c8b85fe83e5679b7b8bebe4df85deebebfc Author: Grant Likely Date: Fri Jun 18 11:10:00 2010 -0600 of/microblaze: strip out of_irq_workarounds code Microblaze doesn't have any legacy workaround in the device tree irq mapping data. All of the of_irq_workarounds stuff can be dropped Signed-off-by: Grant Likely Cc: Michal Simek Cc: Stephen Rothwell commit b7dcb857cc3eb89136111fefe89780129c1af1d7 Author: Masami Hiramatsu Date: Wed May 19 15:57:49 2010 -0400 perf probe: Support static and global variables Add static and global variables support to perf probe. This allows user to trace non-local variables (and structure members) at probe points. Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Mike Galbraith Cc: Frederic Weisbecker LKML-Reference: <20100519195749.2885.17451.stgit@localhost6.localdomain6> Signed-off-by: Masami Hiramatsu Signed-off-by: Arnaldo Carvalho de Melo commit b2a3c12b7442247c440f7083d48ef05716753ec1 Author: Masami Hiramatsu Date: Wed May 19 15:57:42 2010 -0400 perf probe: Support tracing an entry of array Add array-entry tracing support to perf probe. This enables to trace an entry of array which is indexed by constant value, e.g. array[0]. For example: $ perf probe -a 'bio_split bi->bi_io_vec[0]' Cc: Paul Mackerras Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Mike Galbraith Cc: Frederic Weisbecker LKML-Reference: <20100519195742.2885.5344.stgit@localhost6.localdomain6> Signed-off-by: Masami Hiramatsu Signed-off-by: Arnaldo Carvalho de Melo commit 73317b954041031249e8968d2e9023ff4e960d99 Author: Masami Hiramatsu Date: Wed May 19 15:57:35 2010 -0400 perf probe: Support "string" type Support string type casting to event argument. If perf-probe finds an argument casted as string, it ensures the target variable is "(unsigned/signed) char *(or []). perf-probe also adds dereference if the target is a pointer. So, both of 'char buf[10];' and 'char *buf;' can be accessed by 'buf:string' Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Mike Galbraith Cc: Frederic Weisbecker LKML-Reference: <20100519195734.2885.1666.stgit@localhost6.localdomain6> Signed-off-by: Masami Hiramatsu Signed-off-by: Arnaldo Carvalho de Melo commit e09c8614b32915c16f68e039ac7040e602d73e35 Author: Masami Hiramatsu Date: Mon Jul 5 15:54:45 2010 -0300 tracing/kprobes: Support "string" type Support string type tracing and printing in kprobe-tracer. This allows user to trace string data in kernel including __user data. Note that sometimes __user data may not be accessed if it is paged-out (sorry, but kprobes operation should be done in atomic, we can not wait for page-in). Commiter note: Fixed up conflicts with b7e2ece. Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Mike Galbraith Cc: Frederic Weisbecker LKML-Reference: <20100519195724.2885.18788.stgit@localhost6.localdomain6> Signed-off-by: Masami Hiramatsu Signed-off-by: Arnaldo Carvalho de Melo commit 171d9f7d786681e76bb289d01d8f897cbc50de57 Author: John Kacur Date: Sun Jul 4 00:02:31 2010 +0200 soundcore_open: Reduce the area BKL coverage Most of this function is protected by the sound_loader_lock. We can push down the BKL to this call out err = file->f_op->open(inode,file); In order to build the sound core without the BKL, we will need to push the lock_kernel() call into the ~20 device drivers that register their file operations. Signed-off-by: John Kacur Signed-off-by: Arnd Bergmann Acked-by: Alan Cox Signed-off-by: Takashi Iwai commit afd6d36a0ded1691c6710ebddabae06e5bb9583b Author: Mark Brown Date: Mon Jul 5 13:58:16 2010 +0900 ASoC: Automatically manage DAC deemphasis rate for WM8960 Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 4faaa8d968df08bf2e75a481f99e7c5c1d0142ab Author: Mark Brown Date: Mon Jul 5 13:54:32 2010 +0900 ASoC: Remove current WM8960 deemphasis control It will be replaced with automatic deemphasis rate configuration but since we have an enumeration table in this driver this is done in a separate commit to make the renumbering of the enumeration items clear. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 9af8381023e48bfc61a1017c584cb3b8115cb462 Author: Mark Brown Date: Mon Jul 5 12:09:22 2010 +0900 ASoC: Fix sorting of Makefile and Kconfig Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 0cbe70eeaad7141a7f932cbbfab6857a25f6d20a Author: Thomas Weber Date: Mon Jul 5 17:04:42 2010 +0300 OMAP2: Devkit8000: Fix regulator for power supply Devkit8000 uses the TPS65930 and not the TWL4030. The TPS65930 uses only a subset of the power supplies of the TWL4030. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit a34664ded71217eb7a0cce6beae4ffd89ca57900 Author: Thomas Weber Date: Mon Jul 5 17:04:42 2010 +0300 OMAP2: Devkit8000: Remove unused omap_board_config omap_board_config is no longer used and thats why empty. This patch removes the empty omap_board_config. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit 09c0721e60f209a80a2e71c6d8e086b53874422c Author: Thomas Weber Date: Mon Jul 5 17:04:42 2010 +0300 OMAP2: Devkit8000: Using gpio_is_valid macro Using the macro gpio_is_valid for check of valid gpio pins. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit 1f489f9eac1979ac1d1c862b55d73b9259a6cdf9 Author: Thomas Weber Date: Mon Jul 5 17:04:41 2010 +0300 OMAP2: Devkit8000: Using the REGULATOR_SUPPLY macro Replacing supplies with the REGULATOR_SUPPLY macro. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit e185469be0569c9d166db74777fc747df6af445a Author: Thomas Weber Date: Mon Jul 5 17:04:41 2010 +0300 OMAP2: Devkit8000: Remove en-/disable for tv panel devkit8000_panel_enable_tv and devkit8000_panel_disable_tv are already done in DSS2 code. So they are no longer needed in board code. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit 612840bbd4eb75963fc7cfd4c1163c798adc8849 Author: Thomas Weber Date: Mon Jul 5 17:04:41 2010 +0300 OMAP2: Devkit8000: Remove non existing vsim supply The Devkit8000 uses the cost reduced variant tps65930 of the twl4030. The TPS65930 only has vdd1, vdd2, vpll1, vio, vmmc1, vdac and vaux2. vaux2 is not used on Devkit8000. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit a7707a335acc58e307e6c4f1d5c596765199cda2 Author: Thomas Weber Date: Mon Jul 5 17:04:41 2010 +0300 OMAP2: Devkit8000: Remove unneeded VDVI supply The VDVI power supply is no longer needed in board code with the new DSS2 interface. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit 4098609898e9ae69ebdd3fdaed1117234104d820 Author: Kan-Ru Chen Date: Mon Jul 5 17:04:40 2010 +0300 OMAP2: Devkit8000: Setup LCD reset This patch corrects the LCD reset pin configuration. Original code from early devkit8000 patch sets the TWL4030 GPIO_1 to EHCI_nOC and TWL4030_GPIO_MAX+1 to ledA. Indeed these two pins are both LCD_PWREN. Setup the lcd reset_gpio properly so it can be disabled when other display is turned on. Signed-off-by: Kan-Ru Chen Signed-off-by: Tony Lindgren commit 31c73f74f3e2d3b842f1dcb3bbcfc4b53b62f797 Author: Kan-Ru Chen Date: Mon Jul 5 17:04:40 2010 +0300 OMAP2: Devkit8000: Enable DVI-D output This patch corrects the DVI-D output setup of Devkit8000 Devkit8000 has different DVI reset pin with the BeagleBoard. On Devkit8000 the TWL4030 GPIO_7 is assigned to do the job. Signed-off-by: Kan-Ru Chen Signed-off-by: Tony Lindgren commit 61d07ef4b4eea2f4c2aaef10ef013775896314a9 Author: Thomas Weber Date: Mon Jul 5 17:04:40 2010 +0300 OMAP2: Devkit8000: change panel to generic panel Choose the generic panel for lcd code of Devkit8000. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit 5fd58b5103151566825e836d0fdda65b083db12e Author: Thomas Weber Date: Mon Jul 5 17:04:39 2010 +0300 OMAP2: Devkit8000: Cleanup for power supplies Corrected the wrong power supplies in devkit8000 code. Add supply for ads7846 to support the new regulator framework for touchscreen. Signed-off-by: Thomas Weber Signed-off-by: Tony Lindgren commit 847e951b99fc42056685c87d742851d2e6fbdead Author: Christoph Egger Date: Mon Jul 5 16:31:55 2010 +0300 Removing dead MACH_OMAP2_H4_USB1 MACH_OMAP2_H4_USB1 doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: Tony Lindgren commit 267ecec95f7d215d2da38252640b06198515acc3 Author: Christoph Egger Date: Mon Jul 5 16:31:55 2010 +0300 Removing dead MACH_OMAP_H4_OTG MACH_OMAP_H4_OTG doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: Tony Lindgren commit 74b86b3d57211129cd165a4de8b59258830bfaaa Author: Christoph Egger Date: Mon Jul 5 16:31:55 2010 +0300 Removing dead APM APM doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: Tony Lindgren commit 3c8ed2a90e7b8ce34dbf4cb35b67b48e351308fa Author: Christoph Egger Date: Mon Jul 5 16:31:54 2010 +0300 Replacing LEDS_OMAP_DEBUG with OMAP_DEBUG_LEDS LEDS_OMAP_DEBUG doesn't exist in Kconfig, therefore replacing all references for it with OMAP_DEBUG_LEDS from the source code. Signed-off-by: Christoph Egger Signed-off-by: Tony Lindgren commit df8d481df912b73fadbff03759cb1b257a37e277 Author: Christoph Egger Date: Mon Jul 5 16:31:54 2010 +0300 Removing dead OMAP_STI OMAP_STI doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: Tony Lindgren commit 65ee2ba3105f6ca3b8814d993682d4f21a1f0d8d Merge: b415ec7 08b4509 Author: Takashi Iwai Date: Mon Jul 5 15:37:27 2010 +0200 Merge branch 'devel' of git://git.alsa-project.org/alsa-kernel into topic/misc commit ab6f7751905e5cf713d081dbb3b97b8f6909ab34 Author: Christoph Egger Date: Mon Jul 5 16:31:54 2010 +0300 Removing dead OMAP_DSP OMAP_DSP doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger [tony@atomide.com: updated to apply on top of already queued patches] Signed-off-by: Tony Lindgren commit 4705c1ca8b7c7cca23d7e534c830e5d6ac914535 Author: Christoph Egger Date: Mon Jul 5 16:31:53 2010 +0300 Removing dead OMAP_IR OMAP_IR doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger [tony@atomide.com: updated for new mux code] Signed-off-by: Tony Lindgren commit 312b80a1e52853cd2c6db9623e8fd9aec822cd40 Author: Christoph Egger Date: Mon Jul 5 16:31:53 2010 +0300 Replace dead OMAP_MUX_ERRORS with OMAP_MUX_WARNINGS OMAP_MUX_ERRORS doesn't exist in Kconfig, therefore replacing all references for it with OMAP_MUX_WARNINGS in the source code. Signed-off-by: Christoph Egger Acked-by: Kirill A. Shutemov Signed-off-by: Tony Lindgren commit 8d9166b519fd880faccdd65fa637d9ec3e2e41e5 Author: Tony Lindgren Date: Mon Jul 5 16:31:48 2010 +0300 omap2/3/4: Add Kconfig option to compile in typical omap features This produces a sane config that's suitable for using as the base for most omap2/3/4 boards. Signed-off-by: Tony Lindgren commit ffb63e3402849e1b70119ee0c9a81dc9da4dfa97 Author: Tony Lindgren Date: Mon Jul 5 16:31:47 2010 +0300 omap2/3/4: Select all omaps and boards by default Select all omaps and boards by default Signed-off-by: Tony Lindgren commit 68ac8f7dda26de7fc321426d52f4ac6bd785bad3 Author: Tony Lindgren Date: Mon Jul 5 16:31:47 2010 +0300 omap2/3/4: Move Kconfig options to mach-omap2/Kconfig Move omap2/3/4 specific Kconfig options to mach-omap2/Kconfig Signed-off-by: Tony Lindgren commit 4a54db612463e330e0e02e2234fc6b783b3eea84 Author: Tony Lindgren Date: Mon Jul 5 16:31:47 2010 +0300 omap: Make omap specific features appear under Kconfig menu This will make Kconfig look nicer for selecting omap processor type Signed-off-by: Tony Lindgren commit f0ca2c05dd44988b7ce9a974442cd0441bfd3450 Author: Tony Lindgren Date: Mon Jul 5 16:31:46 2010 +0300 omap: Use 32KiHZ timer by default Use 32KiHZ timer by default as this is available on all omaps except 15xx based systems. Signed-off-by: Tony Lindgren commit fb78b51cb11ecaa4eddc0de182eee3b84fcd3ef8 Author: Tony Lindgren Date: Mon Jul 5 16:31:46 2010 +0300 ARM: Disable VGA console for ARM in most cases Otherwise we have to disable it manually to avoid compile errors. Now it's only enabled only for the selected machines as suggested by Anton Vorontsov : $ git grep VGA_CONSOLE= arch/arm/configs/ arch/arm/configs/footbridge_defconfig:CONFIG_VGA_CONSOLE=y arch/arm/configs/integrator_defconfig:CONFIG_VGA_CONSOLE=y arch/arm/configs/netwinder_defconfig:CONFIG_VGA_CONSOLE=y Note that the Kconfig entry no longer needs separate entries for ARCH_ACORN, ARCH_EBSA110 ARCH_VERSATILE. Cc: linux-fbdev@vger.kernel.org Signed-off-by: Tony Lindgren commit c9d8230e316abb6a480f6bda85edf859896e9ab6 Author: Tony Lindgren Date: Mon Jul 5 16:31:40 2010 +0300 omap: mux: Remove old mux code All mach-omap2 omaps should now use the new mux code. Signed-off-by: Tony Lindgren commit f99bf16d70d8a33e5274e429f2b1d71457d06a06 Author: Tony Lindgren Date: Mon Jul 5 16:31:40 2010 +0300 omap: mux: Convert 2420 platform init code to use new mux code Convert 2420 platform init code to use new mux code Signed-off-by: Tony Lindgren commit 58310acd3ae815687d883c0c0e5950e3576a3dbc Author: Tony Lindgren Date: Mon Jul 5 16:31:39 2010 +0300 omap: mux: Mux 2430 USB0HS_STP in board-2430.c Use new mux functions for that. There are no other known 2430 boards that need this mux. Cc: Felipe Balbi Cc: David Brownell Signed-off-by: Tony Lindgren commit 18dbe6c5dd3de93e99afdaf1f0fa663b57314c63 Author: Tony Lindgren Date: Mon Jul 5 16:31:39 2010 +0300 omap: mux: Mux Apollon LCD power in board-apollon.c Use the new mux function for that. Cc: Kyungmin Park Cc: Tomi Valkeinen Signed-off-by: Tony Lindgren commit 93c43f2561f18b50e3376be968d0688315afc44c Author: Tony Lindgren Date: Mon Jul 5 16:31:39 2010 +0300 omap: mux: Do keypad muxing in board-*.c files This way we get pin muxing out of plat-omap and can convert H4 to use the new mux functions. Note that it should be safe to assume we can mux all the keypad pins except on H4 which may have Menelaus connected. Signed-off-by: Tony Lindgren commit 0d600ff6fe06d99e56166a41521e120ce37e1dd4 Author: Tony Lindgren Date: Mon Jul 5 16:31:38 2010 +0300 omap: mux: Make omap2 FS USB code use new mux functions Make omap2 FS USB code use new mux functions. Do not mux usb2_tllse0 as it has multiple options. Cc: David Brownell Signed-off-by: Tony Lindgren commit 369ed78fc9b4638d52a036c0184c2faf72c4e9c4 Author: Tony Lindgren Date: Mon Jul 5 16:31:38 2010 +0300 omap: mux: Select POP package for 2430SDP Select POP package for 2430SDP Signed-off-by: Tony Lindgren commit bd8f0fc9791040e36501a9c1e373550ac2cff147 Author: Tony Lindgren Date: Mon Jul 5 16:31:38 2010 +0300 omap: mux: Select POP package for N8X0 Select POP package for N8X0 Signed-off-by: Tony Lindgren commit b52b14ef0d637718b7a648eb3949aef83ffc796d Author: Tony Lindgren Date: Mon Jul 5 16:31:37 2010 +0300 omap: mux: Select POP package for Apollon Select POP package for Apollon Cc: Kyungmin Park Signed-off-by: Tony Lindgren commit 23275d459e1b0afcc6bd6b5fe8aaca8a573d6d5a Author: Tony Lindgren Date: Mon Jul 5 16:31:37 2010 +0300 omap: mux: Select SIP package for H4 Select SIP package for H4 Signed-off-by: Tony Lindgren commit 89ba1092296bc455bfd59db608ae1954861f5911 Author: Tony Lindgren Date: Mon Jul 5 16:31:36 2010 +0300 omap: mux: Add data for 2430 Add data for 2430. Big thanks to Paul Walmsley for generating usable mux data out of TRMs. Cc: Benoit Cousson Signed-off-by: Paul Walmsley Signed-off-by: Tony Lindgren commit fc44046167f08f3887e9685efc95f817a5ff45a1 Author: Tony Lindgren Date: Mon Jul 5 16:31:36 2010 +0300 omap: mux: Add data for 2420 Add data for 2420. Big thanks to Paul Walmsley for generating usable mux data out of TRMs. Cc: Benoit Cousson Signed-off-by: Paul Walmsley Signed-off-by: Tony Lindgren commit ac1c94fb85a07f6777a1becf9b793e30ebbaaa2b Author: Tony Lindgren Date: Mon Jul 5 16:31:36 2010 +0300 omap: mux: Remove unncessary parens from mux34xx.c Remove unncessary parens from mux34xx.c Signed-off-by: Tony Lindgren commit ac3dbeefb8e9108874ab12ba103603893985f4ec Author: Tony Lindgren Date: Mon Jul 5 16:31:36 2010 +0300 omap: mux: Allow compiling in new mux code on all mach-omap2 systems Allow compiling in new mux code on all mach-omap2 systems Signed-off-by: Tony Lindgren commit 6dd8a6824af530449112a38c0fa0f95c1a086fc5 Author: Tony Lindgren Date: Mon Jul 5 16:31:35 2010 +0300 omap: mux: Renumber package defines to make room for older 24xx packages Only POP and SIP are known to exist for 2420, 2430 seems to only have SIP package available. Signed-off-by: Tony Lindgren commit d5425be6eb756e846333f9ba87fe02d001baafc3 Author: Tony Lindgren Date: Mon Jul 5 16:31:35 2010 +0300 omap: mux: Fix omap_mux_init_gpio for omap24xx Looks like 24xx uses mode3 instead of mode4 for muxable GPIO pins. This will be needed when 24xx mux code is converted to use the new mux functions. Signed-off-by: Tony Lindgren commit dd0cdd888251d0d62df417d6859e74e57146c13f Author: Tony Lindgren Date: Mon Jul 5 16:31:30 2010 +0300 omap: Move omap1 USB platform init code into mach-omap1/usb.c Move omap1 FS USB platform init code into mach-omap1/usb.c Signed-off-by: Tony Lindgren commit 98093839307cbf1a0d5cb50b495d14a78b755ed9 Author: Tony Lindgren Date: Mon Jul 5 16:31:29 2010 +0300 omap: Enable interface clock for omap2 FS USB Looks like this code was only working on boards that had the usb_l4_ick enabled in the bootloader. Signed-off-by: Tony Lindgren commit b5e8905bcd7a794b667f6d5eabcb036f25358fdb Author: Tony Lindgren Date: Mon Jul 5 16:31:29 2010 +0300 omap: Move omap2 FS USB platform init code into mach-omap2/usb-fs.c Move omap2 FS USB platform init code into mach-omap2/usb-fs.c. This will allow further work later on to use omap hwmod for initializing the device. Cc: David Brownell Signed-off-by: Tony Lindgren commit dba638d22d5af5486a861e08ab46e57abef7049a Author: Tony Lindgren Date: Mon Jul 5 16:31:28 2010 +0300 omap: Separate out omap2 FS USB platform init functions We want to split old FS USB platform init code and stop doing pin multiplexing under plat-omap. First move 24xx specific init code into omap2_usb[012]_init functions. Cc: David Brownell Signed-off-by: Tony Lindgren commit 8b9cfdca9c52f7d39c3ccfac1668e31c20c9f42e Author: Kulikov Vasiliy Date: Mon Jul 5 21:25:06 2010 +0800 hwrng: n2-drv - remove casts from void* Remove unnesessary casts from void*. Signed-off-by: Kulikov Vasiliy Signed-off-by: Herbert Xu commit 72c7664f9278b31fcf6b7828c1417caca5b68104 Author: Michal Marek Date: Mon Jul 5 10:42:37 2010 +0200 ipvs: Kconfig cleanup IP_VS_PROTO_AH_ESP should be set iff either of IP_VS_PROTO_{AH,ESP} is selected. Express this with standard kconfig syntax. Signed-off-by: Michal Marek Acked-by: Simon Horman Signed-off-by: Patrick McHardy commit b13b7125e4d10ce39818eec1bcb2d9777d29475f Author: Eric Dumazet Date: Mon Jul 5 10:40:09 2010 +0200 netfilter: ipt_REJECT: avoid touching dst ref We can avoid a pair of atomic ops in ipt_REJECT send_reset() Signed-off-by: Eric Dumazet Signed-off-by: Patrick McHardy commit 98b0e84aaaf2be6c40998d011c9db96ea6498e20 Author: Changli Gao Date: Mon Jul 5 10:39:17 2010 +0200 netfilter: ipt_REJECT: postpone the checksum calculation. postpone the checksum calculation, then if the output NIC supports checksum offloading, we can utlize it. And though the output NIC doesn't support checksum offloading, but we'll mangle this packet, this can free us from updating the checksum, as the checksum calculation occurs later. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit ea8fbe8f198edea19116d4b61267e12235513225 Author: Changli Gao Date: Mon Jul 5 10:38:23 2010 +0200 netfilter: nf_conntrack_reasm: add fast path for in-order fragments As the fragments are sent in order in most of OSes, such as Windows, Darwin and FreeBSD, it is likely the new fragments are at the end of the inet_frag_queue. In the fast path, we check if the skb at the end of the inet_frag_queue is the prev we expect. Signed-off-by: Changli Gao Signed-off-by: Patrick McHardy commit 39ef13a4ac28aa64cfe1bc36e6e00f1096707a28 Author: Cyrill Gorcunov Date: Mon Jul 5 10:09:29 2010 +0800 perf, x86: P4 PMU -- redesign cache events To support cache events we have reserved the low 6 bits in hw_perf_event::config (which is a part of CCCR register configuration actually). These bits represent Replay Event mertic enumerated in enum P4_PEBS_METRIC. The caller should not care about which exact bits should be set and how -- the caller just chooses one P4_PEBS_METRIC entity and puts it into the config. The kernel will track it and set appropriate additional MSR registers (metrics) when needed. The reason for this redesign was the PEBS enable bit, which should not be set until DS (and PEBS sampling) support will be implemented properly. TODO ==== - PEBS sampling (note it's tricky and works with _one_ counter only so for HT machines it will be not that easy to handle both threads) - tracking of PEBS registers state, a user might need to turn PEBS off completely (ie no PEBS enable, no UOP_tag) but some other event may need it, such events clashes and should not run simultaneously, at moment we just don't support such events - eventually export user space bits in separate header which will allow user apps to configure raw events more conveniently. Signed-off-by: Cyrill Gorcunov Signed-off-by: Lin Ming Cc: Stephane Eranian Cc: Peter Zijlstra Cc: Frederic Weisbecker LKML-Reference: <1278295769.9540.15.camel@minggr.sh.intel.com> Signed-off-by: Ingo Molnar commit 08f8ba07998ab1b9efcdd3f28dadf6866a605ddb Merge: 0879b10 815c416 Author: Ingo Molnar Date: Mon Jul 5 08:30:55 2010 +0200 Merge commit 'v2.6.35-rc4' into perf/core Merge reason: Pick up the latest perf fixes Signed-off-by: Ingo Molnar commit 39827be26b36ef9cdbc661c92a269e0484cd9ef5 Author: Ben Hutchings Date: Sat Jul 3 09:41:29 2010 +0000 IB/{nes, ipoib}: Pass supported flags to ethtool_op_set_flags() Following commit 1437ce3983bcbc0447a0dedcd644c14fe833d266 "ethtool: Change ethtool_op_set_flags to validate flags", ethtool_op_set_flags takes a third parameter and cannot be used directly as an implementation of ethtool_ops::set_flags. Changes nes and ipoib driver to pass in the appropriate value. Signed-off-by: Ben Hutchings Acked-by: Roland Dreier Signed-off-by: David S. Miller commit e5a0c1fd155ca0e98ff8995c2e79b654759cb544 Author: Michael Chan Date: Sat Jul 3 20:42:18 2010 +0000 bnx2: Update version to 2.0.16. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 5804a8fbb8f53759a6c806c2a8da1b47b82f12bc Author: Michael Chan Date: Sat Jul 3 20:42:17 2010 +0000 bnx2: Dump some config space registers during TX timeout. These config register values will be useful when the memory registers are returning 0xffffffff which has been reported. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit fdc8541d693a04ba3d6c335dace19b8362ac4e83 Author: Michael Chan Date: Sat Jul 3 20:42:16 2010 +0000 bnx2: Add support for skb->rxhash. Add skb->rxhash support for TCP packets only because the bnx2 RSS hash does not hash UDP ports. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 3d5f3a7bbd06065b06c7f65f948437ded40255ec Author: Michael Chan Date: Sat Jul 3 20:42:15 2010 +0000 bnx2: Always enable MSI-X on 5709. Minor change to use MSI-X even if there is only one CPU. This allows the CNIC driver to always have a dedicated MSI-X vector to handle iSCSI events, instead of sharing the MSI vector. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit f45f4321d2c977c9eff77e5a5225f3cd2140eb20 Author: Joe Perches Date: Sun Jun 27 01:02:36 2010 +0000 netdevice.h: Change netif_ macros to call netdev_ functions Reduces text ~300 bytes of text (woohoo!) in an x86 defconfig $ size vmlinux* text data bss dec hex filename 7198526 720112 1366288 9284926 8dad3e vmlinux 7198862 720112 1366288 9285262 8dae8e vmlinux.netdev Signed-off-by: Joe Perches Acked-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit 256df2f3879efdb2e9808bdb1b54b16fbb11fa38 Author: Joe Perches Date: Sun Jun 27 01:02:35 2010 +0000 netdevice.h net/core/dev.c: Convert netdev_ logging macros to functions Reduces an x86 defconfig text and data ~2k. text is smaller, data is larger. $ size vmlinux* text data bss dec hex filename 7198862 720112 1366288 9285262 8dae8e vmlinux 7205273 716016 1366288 9287577 8db799 vmlinux.device_h Uses %pV and struct va_format Format arguments are verified before printk Signed-off-by: Joe Perches Acked-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit 99bcf217183e02ebae46373896fba7f12d588001 Author: Joe Perches Date: Sun Jun 27 01:02:34 2010 +0000 device.h drivers/base/core.c Convert dev_ logging macros to functions Reduces an x86 defconfig text and data ~55k, .6% smaller. $ size vmlinux* text data bss dec hex filename 7205273 716016 1366288 9287577 8db799 vmlinux 7258890 719768 1366288 9344946 8e97b2 vmlinux.master Uses %pV and struct va_format Format arguments are verified before printk The dev_info macro is converted to _dev_info because there are existing uses of variables named dev_info in the kernel tree like drivers/net/pcmcia/pcnet_cs.c A dev_info macro is created to call _dev_info Signed-off-by: Joe Perches Acked-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit 7db6f5fb65a82af03229eef104dc9899c5eecf33 Author: Joe Perches Date: Sun Jun 27 01:02:33 2010 +0000 vsprintf: Recursive vsnprintf: Add "%pV", struct va_format Add the ability to print a format and va_list from a structure pointer Allows __dev_printk to be implemented as a single printk while minimizing string space duplication. %pV should not be used without some mechanism to verify the format and argument use ala __attribute__(format (printf(...))). Signed-off-by: Joe Perches Acked-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit 7adde04a2f5a798f04a556dfb3b69bff388e5dc4 Author: Xiaotian Feng Date: Wed Jun 30 17:57:22 2010 +0800 slab: fix caller tracking on !CONFIG_DEBUG_SLAB && CONFIG_TRACING In slab, all __xxx_track_caller is defined on CONFIG_DEBUG_SLAB || CONFIG_TRACING, thus caller tracking function should be worked for CONFIG_TRACING. But if CONFIG_DEBUG_SLAB is not set, include/linux/slab.h will define xxx_track_caller to __xxx() without consideration of CONFIG_TRACING. This will break the caller tracking behaviour then. Cc: Christoph Lameter Cc: Matt Mackall Cc: Vegard Nossum Cc: Dmitry Monakhov Cc: Catalin Marinas Acked-by: David Rientjes Signed-off-by: Xiaotian Feng Signed-off-by: Pekka Enberg commit ce93a3702832121d517ad348817929f22fcce47c Author: Maurus Cuelenaere Date: Sat Jul 3 02:46:12 2010 +0200 ASoC: Add SmartQ sound driver This adds sound support for the SmartQ board. The hardware consists of a S3C6410 coupled with a WM8987 over I²S. The WM8750 driver is used for driving the WM8987, as they are register compatible. Signed-off-by: Maurus Cuelenaere Signed-off-by: Mark Brown commit 0d9c15e45b362fced933c686c0127e73547bb209 Author: Maurus Cuelenaere Date: Sat Jul 3 02:46:10 2010 +0200 ASoC: codec: Add WM8987 device id to WM8750 driver The WM8987 codec is register compatible with the WM8750, so just add it to the SPI and I²C device table. Signed-off-by: Maurus Cuelenaere Signed-off-by: Mark Brown commit 312e8e8a9e2471b0ada7366497fffb3ff1a40e2c Author: Joonyoung Shim Date: Sun Jul 4 01:21:25 2010 -0700 Input: mcs - Add MCS touchkey driver This adds support for MELPAS MCS5000/MSC5080 touch key controllers. Signed-off-by: Joonyoung Shim Signed-off-by: Dmitry Torokhov commit 866d7d7b4a4e1d502b136bcc8af605091fe4c7b5 Author: Oliver Neukum Date: Thu Jul 1 09:01:50 2010 -0700 Input: release pressed keys when resuming device As the kernel has no way to know whether a key was released while the system was asleep, keys need to be reported released as the system is resumed, lest autorepeat set in. Signed-off-by: Oliver Neukum Signed-off-by: Dmitry Torokhov commit 3eac5c7e44f35eb07f0ecb28ce60f15b2dda1932 Author: Anatolij Gustschin Date: Thu Jul 1 09:01:56 2010 -0700 Input: ads7846 - extend the driver for ads7845 controller support ADS7845 is a controller for 5-wire touch screens and somewhat different from 7846. It requires three serial communications to accomplish one complete conversion. Unlike 7846 it doesn't allow Z1-/Z2- position measurement. The patch extends the ads7846 driver to also support ads7845. The packet struct is extended to contain needed command and conversion buffers. ads7846_rx() and ads7846_rx_val() now differentiate between 7845 and 7846 case. ads7846_probe() is modified to setup ads7845 specific command and conversion messages and to switch ads7845 into power-down mode, since this is needed to be prepared to respond to pendown interrupts. Signed-off-by: Anatolij Gustschin Signed-off-by: Dmitry Torokhov commit 0f622bf465e78c390e13c5f4a14d0b3f8fb7c7e5 Author: Dmitry Torokhov Date: Thu Jul 1 09:01:50 2010 -0700 Input: ads7846 - do not allow altering platform data Tested-by: Anatolij Gustschin Signed-off-by: Dmitry Torokhov commit af6e1d99ea525161f70f68ecb83d0d0f54f1bf62 Author: Dmitry Torokhov Date: Thu Jul 1 09:07:33 2010 -0700 Input: adxl34 - make enable/disable separate from suspend/resume Suspending and resuming the device should be separate from enabling and disabling it through sysfs attribute and thus should not alter ac->disabled flag. [michael.hennerich@analog.com: various fixups] Tested-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit 963ce8ae6dbc7c8dffb1b117ba14673d40b22dda Author: Michael Hennerich Date: Wed Jun 30 14:51:10 2010 -0700 Input: ad7879 - report EV_KEY/BTN_TOUCH events Some input events users such as Android require BTN_TOUCH events. Implement EV_KEY/BTN_TOUCH and make sure that the release event is not erroneous scheduled without a preceding valid touch. Avoid duplicated BTN_TOUCH events, even though input core filters them. Signed-off-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit 447b9065b418cbeb6a03ebdcd08629ac26ed8e4a Author: Michael Hennerich Date: Wed Jun 30 14:51:09 2010 -0700 Input: ad7879 - fix spi word size to 16 bit Signed-off-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit 16ea10a7d557a0177cbbd716b4a06e5373d513ba Author: Michael Hennerich Date: Wed Jun 30 14:51:09 2010 -0700 Input: ad7879 - use i2c_smbus_read_i2c_block_data() to lower overhead Avoid additional addressing overhead incurred by word_data transfers. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger Signed-off-by: Dmitry Torokhov commit 14fbbc36d126d7ec7717144def386b9fc4c7fba2 Author: Dmitry Torokhov Date: Wed Jun 30 14:50:51 2010 -0700 Input: ad7879 - add open and close methods Tested-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit 4397c98a8a60ba029f2d0051d0cbafe600f05d8c Author: Mike Frysinger Date: Wed Jun 30 01:40:52 2010 -0700 Input: ad7879 - split bus logic out The ad7879 driver is using the old bus method of only supporting one at a time (I2C or SPI). So refactor it like the other input drivers that support multiple busses simultaneously. Signed-off-by: Mike Frysinger Signed-off-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit e490c1defec4236a6a131fe2d13bf7ba787c02f8 Merge: 0a17d8c 4df53d8 Author: David S. Miller Date: Fri Jul 2 22:42:06 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 commit c8312facd99b4cd05998fe3440926b667a896c9e Author: Wey-Yi Guy Date: Mon Jun 28 13:05:17 2010 -0700 iwlwifi: adding enhance sensitivity table entries For newer devices (6000g2a and 6000g2b), the sensitivity table send to uCode require additional table entries to help sensitivity calibration. All the additional entries has fix data for now, but do expect the value will be change in the future when device become more stable. Signed-off-by: Wey-Yi Guy commit bf3c7fddf9dffb0e5c76da3a94b8f5817a72f92c Author: Wey-Yi Guy Date: Thu Jun 24 14:08:05 2010 -0700 iwlwifi: generic parameter define for _agn device Code clean up to change name from having 5000 as part of name which easy to confuse and think it is for 5000 series devices to more generic _agn name since it is being used by multiple _agn devices. No functional changes. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 4bf49a90bc0bda131ef353cca631025849f36b4e Author: Wey-Yi Guy Date: Thu Jun 24 13:18:36 2010 -0700 iwlwifi: debugfs file for txfifo command testing Add debugfs file for REPLY_TXFIFO_FLUSH host command testing. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 6555063666fea1fc81a14396aca53ab021ccb4f2 Author: Wey-Yi Guy Date: Thu Jun 24 13:18:35 2010 -0700 iwlwifi: add support for device tx flush request "Flush" request can come from two different sources, it can either from mac80211, or from device when the operation is needed. Here adding the support for device issue "flush" request. When receive tx complete with status is TX_STATUS_FAIL_RFKILL_FLUSH, issue REPLY_TXFIFO_FLUSH command to uCode to flush out all the tx frames in queues. In this condition, since mac80211 has no knowledge of "flush" operation, driver need to stop all the tx queues and wait for the operation completed before wake up the queues for frames transmission. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 716c74b00717ad9caedb4a46059fb64a3da99808 Author: Wey-Yi Guy Date: Thu Jun 24 13:22:36 2010 -0700 iwlwifi: add mac80211 flush callback support Adding flush callback support in the driver. Two type of flush can be issued by mac80211: 1. drop = true: frame drop is ok, issue REPLY_TXFIFO_FLUSH host command to uCode to drop all the frames in tx fifo queues; then return the control back to mac80211 2. drop = false: wait for either all the frames in tx fifo queues been transmitted, or timeout; then return the control back to mac80211 If the flush request coming from mac80211, mac80211 will make sure there are no additional frames push down to driver before flush operation is completed. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 947279eefb77f79015a79b032eb825a065ab035f Author: Wey-Yi Guy Date: Thu Jun 24 13:18:33 2010 -0700 iwlwifi: tx fifo queue flush command Add host command and structure for tx fifo queue flush Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit ad8d8333b12d46f26093eab796cb309ec1a1f5f9 Author: Wey-Yi Guy Date: Tue Jun 22 14:31:45 2010 -0700 iwlwifi: add debug print for parsing firmware TLV When parsing TLV during loading firmware, if encounter any TLV error, log the error message to help debugging. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit c04f9f220300da83f71698fa7be24714152faf0d Author: Wey-Yi Guy Date: Mon Jun 21 16:52:55 2010 -0700 iwlwifi: fix fw_restart module parameter fw_restart module parameter was broken by the recent check for stuck queue patch, driver check the fx_restart module parameter before reload the firmware; but the stuck queue timer kick in after firmware error and reload the firmware even fw_restart=0. In this case, driver should not reload the firmware, it is important to help debugging uCode error. The only case we can ignore the module parameter is when user request firmware reload from debugfs, which can bypass the checking and perform firmware reload all the time. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit ecc3d5ae17e62ce1250abf16ff523c677bf19e2f Author: Ming Lei Date: Thu Jul 1 23:19:50 2010 +0800 minstrel_ht: fix check for downgrading of top2 rate The check should be against current top2 rate, instead of current top rate. Signed-off-by: Ming Lei Acked-by: Felix Fietkau Signed-off-by: John W. Linville commit 009271f9187d61c638bb4f3db9ab172c5065e542 Author: Ming Lei Date: Thu Jul 1 23:18:42 2010 +0800 minstrel_ht: fix updating rate with best probability The throughput should be considered when updating rate with best probability. Signed-off-by: Ming Lei Acked-by: Felix Fietkau Signed-off-by: John W. Linville commit 8e67ca7c9266a4f920d70d3a2cbf03a597d28ea7 Author: Felix Fietkau Date: Fri Jul 2 14:45:22 2010 +0200 ath9k: fix crash with WEP in ad-hoc mode Commit eed8e22f0133e8278b1f8079fcb452f1f9692f9d added support for using multicast key lookup to support per-vif/sta keys for AP and ad-hoc. Unfortunately, it also introduced a crash in ad-hoc mode when the sta pointer is NULL, which happens when setting up an interface with WEP keys. This patch fixes it by falling back to the assigned key index. Signed-off-by: Felix Fietkau Reported-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 347809fc2c99da5b89f1c014f3e5a0f85c04803c Author: Felix Fietkau Date: Fri Jul 2 00:09:52 2010 +0200 ath9k: fix false positives in the baseband hang check ath9k_hw_check_alive() occasionally returns false, as the hardware is still processing data in a specific state. Fix this issue by repeating the test a few times with longer delay inbetween attempts. This gets rid of excessive hardware resets that appear frequently on some AR9132 based devices, but could also happen on AR9280. Signed-off-by: Felix Fietkau Reported-by: Björn Smedman Cc: stable@kernel.org Signed-off-by: John W. Linville commit 54bd5006b03ee980f6067b4d61c3605b5a5e1d4a Author: Felix Fietkau Date: Fri Jul 2 00:09:51 2010 +0200 ath9k_hw: clean up the noise floor calibration code to reduce code duplication Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit f2552e28375cb34073a2f940ee9a8439c37d9ec2 Author: Felix Fietkau Date: Fri Jul 2 00:09:50 2010 +0200 ath9k_hw: sanitize noise floor values properly on all chips This refactors the noise floor range checks to make them generic, and adds proper ranges for each supported chip type. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit ba17bc5e55ba541d2a8765fca53b6883b667ab21 Author: Felix Fietkau Date: Fri Jul 2 00:09:49 2010 +0200 ath9k_hw: sync initvals for ar9001 and ar9002 with Atheros This includes the following changes/fixes: - a bugfix for stuck beacon issues - timing changes for improved performance - AGC setting improvements - fixes for high temperature issues on some chips Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 2e1f25662ba06c40f9f2097927274f1712d9b7a7 Author: Felix Fietkau Date: Fri Jul 2 00:09:48 2010 +0200 ath9k_hw: reformat the ar5008, ar9001 and ar9002 initvals to match ar9003 This format is generated by the initval tool, available at: git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/initvals-tool.git Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit f504f5f63a4d1d1372043a3aa3d64342a705caa3 Author: Felix Fietkau Date: Fri Jul 2 00:09:47 2010 +0200 ath9k_hw: fix a few inconsistencies in initval array names Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 167a58f10d9cd1bdf6a911aa1eecbdff596de156 Author: Conny Seidel Date: Thu Jul 1 15:19:26 2010 +0200 perf tools: Fix fallback to cplus_demangle() when bfd_demangle() is not available make version 3.80 doesn't support "else ifdef" on the same line, also it doesn't support unindented nested constructs. Build fails with: Makefile:608: Extraneous text after `else' directive Makefile:611: *** only one `else' per conditional. Stop. This patch fixes the build for make 3.80. Cc: Borislav Petkov LKML-Reference: <1277990366-1462-1-git-send-email-conny.seidel@amd.com> Signed-off-by: Conny Seidel Signed-off-by: Arnaldo Carvalho de Melo commit 246cf9c26bf11f2bffbecea6e5bd222eee7b1df8 Author: Catalin Marinas Date: Tue Jun 8 17:25:57 2010 +0100 kbuild: Warn on selecting symbols with unmet direct dependencies The "select" statement in Kconfig files allows the enabling of options even if they have unmet direct dependencies (i.e. "depends on" expands to "no"). Currently, the "depends on" clauses are used in calculating the visibility but they do not affect the reverse dependencies in any way. The patch introduces additional tracking of the "depends on" statements and prints a warning on selecting an option if its direct dependencies are not met. Signed-off-by: Catalin Marinas Cc: Sam Ravnborg Cc: Arnd Bergmann Cc: Andrew Morton Cc: Linus Torvalds Signed-off-by: Michal Marek commit 5e8e1cc0a1c36c8ff156ac1f04a16422bd4ed3ac Author: Martin Ettl Date: Sun Feb 21 09:31:44 2010 +0100 scripts/dtc: Fix a resource leak during a check of the current git head of the linux kernel with the static code analysis tool cppcheck (http://sourceforge.net/apps/mediawiki/cppcheck/index.php?title=Main_Page) the tool discovered a resource leak in linux-2.6/scripts/dtc/fstree.c. Please refer the attached patch, that fixes the issue. Fixes https://bugzilla.kernel.org/show_bug.cgi?id=15363 Signed-off-by: Martin Ettl Cc: David Gibson Signed-off-by: Michal Marek commit c7fc77f78f16d138ca997ce096a62f46e2e9420a Author: Tejun Heo Date: Fri Jul 2 10:03:51 2010 +0200 workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead WQ_SINGLE_CPU combined with @max_active of 1 is used to achieve full ordering among works queued to a workqueue. The same can be achieved using WQ_UNBOUND as unbound workqueues always use the gcwq for WORK_CPU_UNBOUND. As @max_active is always one and benefits from cpu locality isn't accessible anyway, serving them with unbound workqueues should be fine. Drop WQ_SINGLE_CPU support and use WQ_UNBOUND instead. Note that most single thread workqueue users will be converted to use multithread or non-reentrant instead and only the ones which require strict ordering will keep using WQ_UNBOUND + @max_active of 1. Signed-off-by: Tejun Heo commit f34217977d717385a3e9fd7018ac39fade3964c0 Author: Tejun Heo Date: Fri Jul 2 10:03:51 2010 +0200 workqueue: implement unbound workqueue This patch implements unbound workqueue which can be specified with WQ_UNBOUND flag on creation. An unbound workqueue has the following properties. * It uses a dedicated gcwq with a pseudo CPU number WORK_CPU_UNBOUND. This gcwq is always online and disassociated. * Workers are not bound to any CPU and not concurrency managed. Works are dispatched to workers as soon as possible and the only applied limitation is @max_active. IOW, all unbound workqeueues are implicitly high priority. Unbound workqueues can be used as simple execution context provider. Contexts unbound to any cpu are served as soon as possible. Signed-off-by: Tejun Heo Cc: Arjan van de Ven Cc: David Howells commit bdbc5dd7de5d07d6c9d3536e598956165a031d4c Author: Tejun Heo Date: Fri Jul 2 10:03:51 2010 +0200 workqueue: prepare for WQ_UNBOUND implementation In preparation of WQ_UNBOUND addition, make the following changes. * Add WORK_CPU_* constants for pseudo cpu id numbers used (currently only WORK_CPU_NONE) and use them instead of NR_CPUS. This is to allow another pseudo cpu id for unbound cpu. * Reorder WQ_* flags. * Make workqueue_struct->cpu_wq a union which contains a percpu pointer, regular pointer and an unsigned long value and use kzalloc/kfree() in UP allocation path. This will be used to implement unbound workqueues which will use only one cwq on SMPs. * Move alloc_cwqs() allocation after initialization of wq fields, so that alloc_cwqs() has access to wq->flags. * Trivial relocation of wq local variables in freeze functions. These changes don't cause any functional change. Signed-off-by: Tejun Heo commit ad72cf9885c536e3adae03f8337557ac9dd1e4bb Author: Tejun Heo Date: Fri Jul 2 10:03:52 2010 +0200 libata: take advantage of cmwq and remove concurrency limitations libata has two concurrency related limitations. a. ata_wq which is used for polling PIO has single thread per CPU. If there are multiple devices doing polling PIO on the same CPU, they can't be executed simultaneously. b. ata_aux_wq which is used for SCSI probing has single thread. In cases where SCSI probing is stalled for extended period of time which is possible for ATAPI devices, this will stall all probing. #a is solved by increasing maximum concurrency of ata_wq. Please note that polling PIO might be used under allocation path and thus needs to be served by a separate wq with a rescuer. #b is solved by using the default wq instead and achieving exclusion via per-port mutex. Signed-off-by: Tejun Heo Acked-by: Jeff Garzik commit f40fd0e215b1bde4e43add1aacbe6faf6dbbea53 Merge: 9f2952d 1fd7f46 Author: Tony Lindgren Date: Fri Jul 2 11:23:30 2010 +0300 Merge branch 'v2.6.35-rc3-iommu-for-next' of git://gitorious.org/~doyu/lk/mainline into omap-for-linus commit d313dd85ad846bc768d58e9ceb28588f917f4c9a Author: Tejun Heo Date: Fri Jul 2 10:03:51 2010 +0200 workqueue: fix worker management invocation without pending works When there's no pending work to do, worker_thread() goes back to sleep after waking up without checking whether worker management is necessary. This means that idle worker exit requests can be ignored if the gcwq stays empty. Fix it by making worker_thread() always check whether worker management is necessary before going to sleep. Signed-off-by: Tejun Heo commit a1e453d2799760ecf2e09ecd45b80edbe7ff540e Author: Tejun Heo Date: Fri Jul 2 10:03:51 2010 +0200 workqueue: fix incorrect cpu number BUG_ON() in get_work_gcwq() get_work_gcwq() was incorrectly triggering BUG_ON() if cpu number is equal to or higher than num_possible_cpus() instead of nr_cpu_ids. Fix it. Signed-off-by: Tejun Heo commit 4ce48b37bfedc2bc11e61eae76784887e88b922c Author: Tejun Heo Date: Fri Jul 2 10:03:51 2010 +0200 workqueue: fix race condition in flush_workqueue() When one flusher is cascading to the next flusher, it first sets wq->first_flusher to the next one and sets up the next flush cycle. If there's nothing to do for the next cycle, it clears wq->flush_flusher and proceeds to the one after that. If the woken up flusher checks wq->first_flusher before it gets cleared, it will incorrectly assume the role of the first flusher, which triggers BUG_ON() sanity check. Fix it by checking wq->first_flusher again after grabbing the mutex. Signed-off-by: Tejun Heo commit cb444766996395d4370bcc17ec895dd4e13ceb72 Author: Tejun Heo Date: Fri Jul 2 10:03:50 2010 +0200 workqueue: use worker_set/clr_flags() only from worker itself worker_set/clr_flags() assume that if none of NOT_RUNNING flags is set the worker must be contributing to nr_running which is only true if the worker is actually running. As when called from self, it is guaranteed that the worker is running, those functions can be safely used from the worker itself and they aren't necessary from other places anyway. Make the following changes to fix the bug. * Make worker_set/clr_flags() whine if not called from self. * Convert all places which called those functions from other tasks to manipulate flags directly. * Make trustee_thread() directly clear nr_running after setting WORKER_ROGUE on all workers. This is the only place where nr_running manipulation is necessary outside of workers themselves. * While at it, add sanity check for nr_running in worker_enter_idle(). Signed-off-by: Tejun Heo commit 4df53d8bab65cf2c18daebd51a5a4847e03f1943 Author: Patrick McHardy Date: Fri Jul 2 09:32:57 2010 +0200 bridge: add per bridge device controls for invoking iptables Support more fine grained control of bridge netfilter iptables invocation by adding seperate brnf_call_*tables parameters for each device using the sysfs interface. Packets are passed to layer 3 netfilter when either the global parameter or the per bridge parameter is enabled. Acked-by: Stephen Hemminger Acked-by: David S. Miller Signed-off-by: Patrick McHardy commit 0a17d8c744e44617a3c22e7af68b4c5c9c1c5dba Author: Stanislaw Gruszka Date: Thu Jul 1 13:58:25 2010 +0000 ixgbe: use NETIF_F_LRO Both ETH_FLAG_LRO and NETIF_F_LRO have the same value, but NETIF_F_LRO is intended to use with netdev->features. Signed-off-by: Stanislaw Gruszka Acked-by: Don Skidmore Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit de42edde131cd09a556f0b90373569d64b92ef99 Author: Greg Rose Date: Thu Jul 1 13:39:23 2010 +0000 igb: Add comment Add explanatory comment to avoid confusion when a pointer is set to the second word of an array instead of the customary cast of a pointer to the beginning of the array. Signed-off-by: Greg Rose Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 8d420a1b3ea65357b6eb59e4e742248d2838e904 Author: Alexander Duyck Date: Thu Jul 1 13:39:01 2010 +0000 igb: correct link test not being run when link is down The igb online link test was always reporting pass because instead of checking for if_running it was checking for netif_carrier_ok. This change corrects the test so that it is run if the interface is running instead of checking for netif carrier ok. Signed-off-by: Alexander Duyck Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit c0f2276f3601a96b29d4347c5938e9494e8e4e5d Author: Emil Tantilov Date: Thu Jul 1 13:38:40 2010 +0000 igb: Fix Tx hangs seen when loading igb with max_vfs > 7. Check the value of max_vfs at the time of assignment of vfs_allocated_count. The previous check in igb_probe_vfs was too late as by that time the rx/tx rings were initialized with the wrong offset. Signed-off-by: Emil Tantilov Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5fa8517f038d51d571981fb495206cc30ed91b06 Author: Greg Rose Date: Thu Jul 1 13:38:16 2010 +0000 igb: Use only a single Tx queue in SR-IOV mode The 82576 expects the second rx queue in any pool to receive L2 switch loop back packets sent from the second tx queue in another pool. The 82576 VF driver does not enable the second rx queue so if the PF driver sends packets destined to a VF from its second tx queue then the VF driver will never see them. In SR-IOV mode limit the number of tx queues used by the PF driver to one. This patch fixes a bug reported in which the PF cannot communciate with the VF and should be considered for 2.6.34 stable. CC: stable@kernel.org Signed-off-by: Greg Rose Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit ede3ef0d940ef052466f42c849390b23c6859abc Author: Nick Nunley Date: Thu Jul 1 13:37:54 2010 +0000 igb: fix PHY config access on 82580 82580 NICs can have up to 4 functions. This fixes phy accesses to use the correct locks for functions 2 and 3. Signed-off-by: Nicholas Nunley Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 7475271004b66e9c22e1bb28f240a38c5d6fe76e Author: Alexander Duyck Date: Thu Jul 1 13:28:27 2010 +0000 x86: Drop CONFIG_MCORE2 check around setting of NET_IP_ALIGN This patch removes the CONFIG_MCORE2 check from around NET_IP_ALIGN. It is based on a suggestion from Andi Kleen. The assumption is that there are not any x86 cores where unaligned access is really slow, and this change would allow for a performance improvement to still exist on configurations that are not necessarily optimized for Core 2. Cc: Andi Kleen Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: x86@kernel.org Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Acked-by: H. Peter Anvin Signed-off-by: David S. Miller commit fe62c298e5bcff8b3414205b7b54975918b3b5c4 Author: Denis Kirjanov Date: Wed Jun 30 23:39:05 2010 +0000 ll_temac: add error checking to DMA init path Add error checking to DMA descriptor rings initialization code. Signed-off-by: Denis Kirjanov Signed-off-by: David S. Miller commit ee3cb6295144b0adfa75ccaca307643a6998b1e2 Author: Ajit Khaparde Date: Thu Jul 1 03:51:00 2010 +0000 be2net: changes to properly provide phy details be2net driver is currently not showing correct phy details in certain cases. This patch fixes it. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 3d8009c780ee90fccb5c171caf30aff839f13547 Author: Brian King Date: Wed Jun 30 11:59:12 2010 +0000 ehea: Allocate stats buffer with GFP_KERNEL Since ehea_get_stats calls ehea_h_query_ehea_port, which can sleep, we can also sleep when allocating a page in this function. This fixes some memory allocation failure warnings seen under low memory conditions. Signed-off-by: Brian King Signed-off-by: David S. Miller commit e5510fac98a706c424034950f55bb5e819c46f51 Author: Jesse Barnes Date: Thu Jul 1 16:48:37 2010 -0700 drm/i915: add tracepoints for flip requests & completions Signed-off-by: Jesse Barnes Signed-off-by: Dave Airlie commit b9c2c9ae882f058084e13e339925dbf8d2d20271 Author: Jesse Barnes Date: Thu Jul 1 16:48:09 2010 -0700 drm: add per-event vblank event trace points Allows us to track each process that requests and completes events. Signed-off-by: Jesse Barnes Signed-off-by: Dave Airlie commit ac2874b980e05ed7a4ea8fed7b0a92428b51ce58 Author: Jesse Barnes Date: Thu Jul 1 16:47:31 2010 -0700 drm: add vblank event trace point Emit a trace point for vblank events. This can be helpful for mapping drawing activity against the vblank frequency and period. Signed-off-by: Jesse Barnes Signed-off-by: Dave Airlie commit 05318bc905467237d4aa68a701f6e92a2b332218 Merge: ea812ca 88c1f4f Author: David S. Miller Date: Thu Jul 1 17:34:14 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 Conflicts: drivers/net/wireless/libertas/host.h commit a53f4b61a76a7e95139b8e8abba02e9bfe87a58a Author: Paul E. McKenney Date: Thu Jul 1 12:45:34 2010 -0700 Revert "net: Make accesses to ->br_port safe for sparse RCU" This reverts commit 81bdf5bd7349bd4523538cbd7878f334bc2bfe14, which is obsoleted by commit f350a0a87374 from the net tree. commit a300de3cfffb9ce7d3e87c8c4f24d22f0a081402 Author: Kuninori Morimoto Date: Thu Jul 1 14:23:45 2010 +0900 ASoC: ak4642: Add Digital Playback Volume control Signed-off-by: Kuninori Morimoto Signed-off-by: Mark Brown commit 084a2ab9c258fb1efbb009f1bb1c6976da1f73f4 Merge: f418559 4856800 Author: Dan Williams Date: Thu Jul 1 02:29:19 2010 -0700 Merge branch 'timb' into dmaengine commit 485680050166dc8c6ac976346430ab1f453c228b Author: Julia Lawall Date: Thu May 27 14:33:17 2010 +0200 drivers/dma: Eliminate a NULL pointer dereference If td_desc is NULL, just skip both kfrees. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression E,E1; identifier f; statement S1,S2,S3; @@ if ((E == NULL && ...) || ...) { ... when != if (...) S1 else S2 when != E = E1 * E->f ... when any return ...; } else S3 // Signed-off-by: Julia Lawall Signed-off-by: Dan Williams commit efcc28981745bc6aca88acb2d4d37d87f090a80a Author: Dan Carpenter Date: Tue May 25 11:55:06 2010 +0200 dma/timb_dma: compile warning on 32 bit This silences a compile warning on 32 bit systems: drivers/dma/timb_dma.c:203: warning: cast to pointer from integer of different size Signed-off-by: Dan Carpenter Signed-off-by: Dan Williams commit 0a54cec0c25cc49e3b68b14c205f1f6cff13f5e1 Merge: ec8c27e 980019d Author: Ingo Molnar Date: Thu Jul 1 08:49:28 2010 +0200 Merge branch 'linus' into core/rcu Conflicts: fs/fs-writeback.c Merge reason: Resolve the conflict Note, i picked the version from Linus's tree, which effectively reverts the fs-writeback.c bits of: b97181f: fs: remove all rcu head initializations, except on_stack initializations As the upstream changes to this file changed this code heavily and the first attempt to resolve the conflict resulted in a non-booting kernel. It's safer to re-try this portion of the commit cleanly. Signed-off-by: Ingo Molnar commit 7cd7a82d16ad5a711338c1baf2316f24121d93aa Author: Dmitry Torokhov Date: Wed Jun 30 01:40:52 2010 -0700 Input: ad7879 - use threaded IRQ Tested-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit 08fa16b6b75005c120b59d00ae42a0b7cc68db45 Merge: 1796b98 7e27d6e Author: Dmitry Torokhov Date: Wed Jun 30 15:07:09 2010 -0700 Merge commit 'v2.6.35-rc3' into next commit ea812ca1b06113597adcd8e70c0f84a413d97544 Author: Alexander Duyck Date: Tue Jun 29 18:38:00 2010 +0000 x86: Align skb w/ start of cacheline on newer core 2/Xeon Arch x86 architectures can handle unaligned accesses in hardware, and it has been shown that unaligned DMA accesses can be expensive on Nehalem architectures. As such we should overwrite NET_IP_ALIGN to resolve this issue. Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: x86@kernel.org Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Acked-by: H. Peter Anvin Signed-off-by: David S. Miller commit cb836a977f71f76ccbb1ff35b9c113ace96377e9 Author: Don Skidmore Date: Tue Jun 29 18:30:59 2010 +0000 ixgbe: add 1g PHY support for 82599 Add support for 1G SFP+ PHY's to 82599. Signed-off-by: Don Skidmore Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 765c9f46867c3253c02275cbb7a453f2eb56eda1 Author: Ben Hutchings Date: Wed Jun 30 05:06:28 2010 +0000 sfc: Add support for RX flow hash control Allow ethtool to query the number of RX rings, the fields used in RX flow hashing and the hash indirection table. Allow ethtool to update the RX flow hash indirection table. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit a5b6ee291e39e285e021cf251dbcf770c83cd74e Author: Ben Hutchings Date: Wed Jun 30 05:05:23 2010 +0000 ethtool: Add support for control of RX flow hash indirection Many NICs use an indirection table to map an RX flow hash value to one of an arbitrary number of queues (not necessarily a power of 2). It can be useful to remove some queues from this indirection table so that they are only used for flows that are specifically filtered there. It may also be useful to weight the mapping to account for user processes with the same CPU-affinity as the RX interrupts. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit cbf2d604a1cd77944a795bb8dbe844eaa38b44c8 Author: Ben Hutchings Date: Wed Jun 30 02:47:40 2010 +0000 vmxnet3: Remove incorrect implementation of ethtool_ops::get_flags() Only some netdev feature flags correspond directly to ethtool feature flags. ethtool_op_get_flags() does the right thing. Signed-off-by: Ben Hutchings Signed-off-by: Bhavesh Davda Signed-off-by: David S. Miller commit 97d1935a61b7fe7a65f98f154c7f3301cfe746f3 Author: Ben Hutchings Date: Wed Jun 30 02:46:56 2010 +0000 netdev: Make ethtool_ops::set_flags() return -EINVAL for unsupported flags The documented error code for attempts to set unsupported flags (or to clear flags that cannot be disabled) is EINVAL, not EOPNOTSUPP. Signed-off-by: Ben Hutchings Acked-by: Eilon Greenstein Signed-off-by: David S. Miller commit 1437ce3983bcbc0447a0dedcd644c14fe833d266 Author: Ben Hutchings Date: Wed Jun 30 02:44:32 2010 +0000 ethtool: Change ethtool_op_set_flags to validate flags ethtool_op_set_flags() does not check for unsupported flags, and has no way of doing so. This means it is not suitable for use as a default implementation of ethtool_ops::set_flags. Add a 'supported' parameter specifying the flags that the driver and hardware support, validate the requested flags against this, and change all current callers to pass this parameter. Change some other trivial implementations of ethtool_ops::set_flags to call ethtool_op_set_flags(). Signed-off-by: Ben Hutchings Reviewed-by: Stanislaw Gruszka Acked-by: Jeff Garzik Signed-off-by: David S. Miller commit b3003be36a3c9215cd17182349981581de269048 Author: Casey Leedom Date: Tue Jun 29 12:54:12 2010 +0000 cxgb4vf: Use correct shift factor for extracting the SGE DMA Ingress Padding Boundary Use correct shift factor for extracting the SGE DMA Ingress Padding Boundary. Was accidentally using the register field's shift which was close enough (4 instead of the propper value of 5) that it actually sort of worked for various packet sizes ... Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 64bb336c8f4de8b281d0d44f2ec2c900b9b28466 Author: Casey Leedom Date: Tue Jun 29 12:53:39 2010 +0000 cxgb4vf: Remove obsolete comment about the lack of a TX Timer Callback Remove obsolete comment about the lack of a TX Timer Callback -- which we now _do_ have ... Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit d6bebca92c663fb216c072193945946f3807ca7f Author: Changli Gao Date: Tue Jun 29 04:39:37 2010 +0000 fragment: add fast path for in-order fragments add fast path for in-order fragments As the fragments are sent in order in most of OSes, such as Windows, Darwin and FreeBSD, it is likely the new fragments are at the end of the inet_frag_queue. In the fast path, we check if the skb at the end of the inet_frag_queue is the prev we expect. Signed-off-by: Changli Gao ---- include/net/inet_frag.h | 1 + net/ipv4/ip_fragment.c | 12 ++++++++++++ net/ipv6/reassembly.c | 11 +++++++++++ 3 files changed, 24 insertions(+) Signed-off-by: David S. Miller commit 4ce3c183fcade7f4b30a33dae90cd774c3d9e094 Author: Eric Dumazet Date: Wed Jun 30 13:31:19 2010 -0700 snmp: 64bit ipstats_mib for all arches /proc/net/snmp and /proc/net/netstat expose SNMP counters. Width of these counters is either 32 or 64 bits, depending on the size of "unsigned long" in kernel. This means user program parsing these files must already be prepared to deal with 64bit values, regardless of user program being 32 or 64 bit. This patch introduces 64bit snmp values for IPSTAT mib, where some counters can wrap pretty fast if they are 32bit wide. # netstat -s|egrep "InOctets|OutOctets" InOctets: 244068329096 OutOctets: 244069348848 Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit f3eb62d2cc7da7bea4b394dd06f6bc738aa284e7 Author: Sathya Perla Date: Tue Jun 29 00:11:17 2010 +0000 be2net: memory barrier fixes on IBM p7 platform The ibm p7 architecure seems to reorder memory accesses more aggressively than previous ppc64 architectures. This requires memory barriers to ensure that rx/tx doorbells are pressed only after memory to be DMAed is written. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 7e307c7ad5340b226966da6e564ec7f717da3adb Author: Dan Carpenter Date: Wed Jun 30 13:12:01 2010 -0700 cpmac: use resource_size() The original code is off by one because we should start counting at zero. So the size of the resource is end - start + 1. I switched it to use resource_size() to do the calculation. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit 504f85c9d05f7c605306e808f0d835fe11bfd18d Author: Changli Gao Date: Tue Jun 29 23:07:09 2010 +0000 act_nat: use stack variable act_nat: use stack variable structure tc_nat isn't too big for stack, so we can put it in stack. Signed-off-by: Changli Gao ---- net/sched/act_nat.c | 31 ++++++++++--------------------- 1 file changed, 10 insertions(+), 21 deletions(-) Signed-off-by: David S. Miller commit 5acbf7f10b9e336510a1de79b4af06f6da9a8c5a Author: Changli Gao Date: Tue Jun 29 22:54:58 2010 +0000 act_mirred: combine duplicate code act_mirred: combine duplicate code tcf_bstats is updated in any way, so we can do it earlier to reduce the size of the code. Signed-off-by: Changli Gao Signed-off-by: Jamal Hadi Salim ---- net/sched/act_mirred.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) Signed-off-by: David S. Miller commit 787a34456dc34bdd75b29cebb53cb09c727674d6 Author: Kulikov Vasiliy Date: Wed Jun 30 06:08:15 2010 +0000 net/neighbour.h: fix typo 'Shoul' must be 'should'. Signed-off-by: Kulikov Vasiliy Signed-off-by: David S. Miller commit 88c1f4f6dffe66e2fed8e7e3276e091ee850bed0 Author: Sujith Date: Wed Jun 30 14:46:31 2010 +0530 ath9k_htc: Add LED support for AR7010 Signed-off-by: Sujith Signed-off-by: John W. Linville commit 92b50c4b5b01d0ba4efcff9e85f7a76b620fe789 Author: Helmut Schaa Date: Wed Jun 30 08:48:42 2010 +0200 mac82011: Allow selection of minstrel_ht as default rc algorithm Allow selection of minstrel_ht as default rate control algorithm. At the moment minstrel_ht can only be requested by the driver code but not selected as default in make menuconfig. Fix this by using minstrel_ht when minstrel was selected as default and minstrel_ht is available. This change won't affect legacy devices as minstrel_ht falls back to minstrel in that case. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit f860d526eb2939a1c37128900b5af2b6f3ff7f20 Author: Felix Fietkau Date: Wed Jun 30 02:07:48 2010 +0200 ath9k: fix TSF after reset on AR913x When issuing a reset, the TSF value is lost in the hardware because of the 913x specific cold reset. As with some AR9280 cards, the TSF needs to be preserved in software here. Additionally, there's an issue that frequently prevents a successful TSF write directly after the chip reset. In this case, repeating the TSF write after the initval-writes usually works. This patch detects failed TSF writes and recovers from them, taking into account the delay caused by the initval writes. Signed-off-by: Felix Fietkau Reported-by: Björn Smedman Cc: stable@kernel.org Signed-off-by: John W. Linville commit 4e9e58c6bf6512a1812556188b67bada6a09c0e8 Author: Ivo van Doorn Date: Tue Jun 29 21:49:50 2010 +0200 rt2x00: Fix compile warning when debug disabled CC [M] drivers/net/wireless/rt2x00/rt2800lib.o drivers/net/wireless/rt2x00/rt2800lib.c: In function 'rt2800_ampdu_action': drivers/net/wireless/rt2x00/rt2800lib.c:2821: warning: unused variable 'rt2x00dev' Signed-off-by: Ivo van Doorn Acked-by: Helmut Schaa Signed-off-by: John W. Linville commit efc7d36f0d100eb2f2db33bc287fa17646bdcd7d Author: Ivo van Doorn Date: Tue Jun 29 21:49:26 2010 +0200 rt2x00: Always set BBP_CSR_CFG_BBP_RW_MODE to 1 Latest rt2870 legacy driver also sets BBP_CSR_CFG_BBP_RW_MODE to 1 when reading or writing the EEPROM. This means we can make the BBP reading and writing completely equal on all platforms. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit e22557f2e3bdf0b56c2592c9aeb50f17945f71b0 Author: Ivo van Doorn Date: Tue Jun 29 21:49:05 2010 +0200 rt2x00: Fix antenna initialization Legacy driver indicates that BBP1_TX_ANTENNA must be set to 0 for TXPATH values of 1 and 3. So the previous statement that nothing should be done for TXPATH = 3, is false. Furthermore, remove the false BBP3_RX_ANTENNA initialization when TXPATH is 1 for PCI and SOC devices. This field will always be overridden in the next switch statement, making this initialization bogus. History of this line indicates it was there from the beginning, and was once caught as typo. Instead of replacing the line with the correct line, the correct line was added... Signed-off-by: Ivo van Doorn Acked-by: Helmut Schaa Signed-off-by: John W. Linville commit aa674631efabfb21f573137da9b84ff905ba66d8 Author: Ivo van Doorn Date: Tue Jun 29 21:48:37 2010 +0200 rt2x00: Fix IEEE80211_HT_CAP_RX_STBC assignment IEEE80211_HT_CAP_RX_STBC is a 2 bit flag, and should thus never be set as normal flag. Instead we must read the number of RX paths from the EEPROM and set the IEEE80211_HT_CAP_RX_STBC with the correct value (using the same logic as the number of TX streams). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit fdb87251229be046b2b61fd15320320f7b66853b Author: Helmut Schaa Date: Tue Jun 29 21:48:06 2010 +0200 rt2x00: fix beacon reset on rt2800 When an interface is removed the according beacon entry should be reset. The current approach to only clear the first word is not enough to stop the device from sending out the beacon, hence resulting in beacons being sent out for already removed interfaces. Fix this by invalidating the entire TXWI in front of the beacon instead of only the first word. Also clear all beacons during startup in the same way. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8654b79f9cad1095c905d407193f1230d073786d Author: Helmut Schaa Date: Tue Jun 29 21:47:37 2010 +0200 rt2x00: Disable link tuning in AP mode Since the link tuning is based on average RSSI values taken from all received frames it doesn't make sense to enable it in AP mode where every associated station provides independent RSSI values. Furthermore the legacy drivers don't enable link tuning in AP mode as well. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit fa43750f00dc1699b24f5b441ab5fa79157a6b1f Author: Helmut Schaa Date: Tue Jun 29 21:47:10 2010 +0200 rt2x00: Fix beacon updates in rt61pci Fix rt61pci beacon updates in the same way as rt2800pci. rt61pci didn't update the beacon template after each beacon interval, resulting in the DTIM count being incorrect (if DTIM period > 1). Fix this by calling rt2x00lib_beacondone after the current beacon was sent out. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ad90319bc3bf604bccf55a3c952d9b68d12c5072 Author: Helmut Schaa Date: Tue Jun 29 21:46:43 2010 +0200 rt2x00: Fix beacon updates in rt2800pci rt2800pci didn't update the beacon template after each beacon interval, resulting in the DTIM count being incorrect (if DTIM period > 1). Fix this by calling rt2x00lib_beacondone after the current beacon was sent out. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit d440cb9eb1c9c44a811f0b23dff684347d1016e0 Author: Ivo van Doorn Date: Tue Jun 29 21:45:31 2010 +0200 rt2x00: Enable multiBSS in rt2800 MAC_BSSID_DW1_BSS_ID_MASK must be set to the mask 3, to enable 8 BSSID's. The MAC_BSSID_DW1_BSS_BCN_NUM is initialized to 7 to enable the 8 beacons. Signed-off-by: Ivo van Doorn Tested-by: Helmut Schaa Signed-off-by: John W. Linville commit ec2d1791a04e6f25cc55f87ddf6eaa51b2a811f7 Author: Gertjan van Wingerde Date: Tue Jun 29 21:44:50 2010 +0200 rt2x00: Align rt2800 EEPROM validation to Ralink vendor driver. Align with the latest versions of the Ralink legacy driver(s). Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 20f8b139a3834db1545454b4392aa73dcf595c9f Author: Gertjan van Wingerde Date: Tue Jun 29 21:44:18 2010 +0200 rt2x00: Correctly detect 93C86 EEPROMs in rt2800pci. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit afd2a5ca1ef6ffe1f9fd0846ae39795527ead555 Author: Gertjan van Wingerde Date: Tue Jun 29 21:43:44 2010 +0200 eeprom_93cx6: Add support for 93c86 EEPROMs. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9cf4cb05c9634eda4b51db1f55fecdec4a145a57 Author: Gertjan van Wingerde Date: Tue Jun 29 21:43:03 2010 +0200 rt2x00: Split of TXWI writing to write_tx_data callback in rt2800usb. Align with the way PCI devices are handled, even though it is not strictly necessary. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 76dd5ddf2372c1b2673a79bd077b4afe0bb2828d Author: Gertjan van Wingerde Date: Tue Jun 29 21:42:23 2010 +0200 rt2x00: Rename driver write_tx_datadesc callback function. Now that the {usb,pci} specific write_tx_data functions are no longer present we can rename the write_tx_datadesc callback function back to its old name. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit e513a0b6f1bf8e1b59b0e1382d4e7ef3d344d535 Author: Gertjan van Wingerde Date: Tue Jun 29 21:41:40 2010 +0200 rt2x00: Move common txdone handling to rt2x00lib_txdone. Now that the write_tx_data functions are merged, also merge the relevant parts of the txdone handling into common code, rather than {usb,pci} specific code. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 78eea11b0e6ae5771bc19cc46984f1cdcbbb6ba1 Author: Gertjan van Wingerde Date: Tue Jun 29 21:41:05 2010 +0200 rt2x00: Merge PCI and USB versions of write_tx_data into single function. Now that rt2x00pci_write_tx_data and rt2x00usb_write_tx_data are similar we can merge them in a single function in rt2x00queue.c. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit fe7256971fbaeac868c35c2dbd34a7bbbdc0622b Author: Gertjan van Wingerde Date: Tue Jun 29 21:40:34 2010 +0200 rt2x00: Move filling of TX URB to rt2x00usb_kick_tx_entry function. There is no need to fill the TX URB this early, and moving it to the rt2x00usb_kick_tx_entry function allows us to merge the PCI and USB variants of the write_tx_data function. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 398ab9ea74f06eb98e4b28c2e9b43bf43e8730ab Author: Gertjan van Wingerde Date: Tue Jun 29 21:40:02 2010 +0200 rt2x00: Fix frame dumping for USB devices. We forgot to clear the SKBDESC_DESC_IN_SKB when the descriptor was removed from the front of the skb. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 1ed7a17a8eb4e60b9e25d9d0eaec19ac704d4f9b Author: Ivo van Doorn Date: Tue Jun 29 21:39:29 2010 +0200 rt2x00: Remove unneeded variable The update_bssid is set only when BSS_CHANGED_BSSID is used, but the check if that field is true is done later in the function but also only when BSS_CHANGED_BSSID is set. This makes the variable useless, as it can never result in a negative check. Signed-off-by: Ivo van Doorn Acked-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit f1aa4c541e98afa8b770a75ccaa8504d0bff44a7 Author: Ivo van Doorn Date: Tue Jun 29 21:38:55 2010 +0200 rt2x00: Write the BSSID to register when interface is added For the Master mode case, we initialized the BSSID as the MAC address, but never wrote it into the registers. This causes Hardware crypto to break in Master mode when receiving frames which require the BSSID to be filled in. This is safe for STA mode since the BSSID will be initialized to 00:00:00:00:00 at this point, but will be set to the correct value later when the device associates. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 1df90809f79b765fd4e8868c2b182d948f198a17 Author: Helmut Schaa Date: Tue Jun 29 21:38:12 2010 +0200 rt2x00: Implement tx mpdu aggregation In order to implement tx mpdu aggregation we only have to implement the ampdu_action callback such that mac80211 allows negotiation of blockack sessions. The hardware will handle everything on its own as long as the ampdu flag in the TXWI struct is set up correctly and we translate the tx status correctly. For now, refuse requests to start rx aggregation. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 511d934f4496076898e45aaa09e0c85376eb16ee Author: Anton Vorontsov Date: Wed Jun 30 06:39:15 2010 +0000 gianfar: Implement workaround for eTSEC-A002 erratum MPC8313ECE says: "If the controller receives a 1- or 2-byte frame (such as an illegal runt packet or a packet with RX_ER asserted) before GRS is asserted and does not receive any other frames, the controller may fail to set GRSC even when the receive logic is completely idle. Any subsequent receive frame that is larger than two bytes will reset the state so the graceful stop can complete. A MAC receiver (Rx) reset will also reset the state." This patch implements the proposed workaround: "If IEVENT[GRSC] is still not set after the timeout, read the eTSEC register at offset 0xD1C. If bits 7-14 are the same as bits 23-30, the eTSEC Rx is assumed to be idle and the Rx can be safely reset. If the register fields are not equal, wait for another timeout period and check again." Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit deb90eacd084d9edfeda2f714d99c29a86360077 Author: Anton Vorontsov Date: Wed Jun 30 06:39:13 2010 +0000 gianfar: Implement workaround for eTSEC76 erratum MPC8313ECE says: "For TOE=1 huge or jumbo frames, the data required to generate the checksum may exceed the 2500-byte threshold beyond which the controller constrains itself to one memory fetch every 256 eTSEC system clocks. This throttling threshold is supposed to trigger only when the controller has sufficient data to keep transmit active for the duration of the memory fetches. The state machine handling this threshold, however, fails to take large TOE frames into account. As a result, TOE=1 frames larger than 2500 bytes often see excess delays before start of transmission." This patch implements the workaround as suggested by the errata document, i.e.: "Limit TOE=1 frames to less than 2500 bytes to avoid excess delays due to memory throttling. When using packets larger than 2700 bytes, it is recommended to turn TOE off." To be sure, we limit the TOE frames to 2500 bytes, and do software checksumming instead. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 7d3509774c2ef4ffd1c5fd2fac65dc4e071a6f21 Author: Anton Vorontsov Date: Wed Jun 30 06:39:12 2010 +0000 gianfar: Implement workaround for eTSEC74 erratum MPC8313ECE says: "If MACCFG2[Huge Frame]=0 and the Ethernet controller receives frames which are larger than MAXFRM, the controller truncates the frames to length MAXFRM and marks RxBD[TR]=1 to indicate the error. The controller also erroneously marks RxBD[TR]=1 if the received frame length is MAXFRM or MAXFRM-1, even though those frames are not truncated. No truncation or truncation error occurs if MACCFG2[Huge Frame]=1." There are two options to workaround the issue: "1. Set MACCFG2[Huge Frame]=1, so no truncation occurs for invalid large frames. Software can determine if a frame is larger than MAXFRM by reading RxBD[LG] or RxBD[Data Length]. 2. Set MAXFRM to 1538 (0x602) instead of the default 1536 (0x600), so normal-length frames are not marked as truncated. Software can examine RxBD[Data Length] to determine if the frame was larger than MAXFRM-2." This patch implements the first workaround option by setting HUGEFRAME bit, and gfar_clean_rx_ring() already checks the RxBD[Data Length]. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 70777d03466e7a8a41b0d34677454c92f4e93d89 Author: Sebastian Andrzej Siewior Date: Wed Jun 30 10:39:19 2010 -0700 net/core: use ntohs for skb->protocol This is only noticed by people that are not doing everything correct in the first place. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: David S. Miller commit 784e2710ce3588d8316dc8efac9ecbebaeaf7c35 Author: Ben Hutchings Date: Sat Jun 26 11:42:55 2010 +0000 ipv6: Use interface max_desync_factor instead of static default max_desync_factor can be configured per-interface, but nothing is using the value. Reported-by: Piotr Lewandowski Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit f56619fc72407561b00c52244a2caa53d730bc4a Author: Ben Hutchings Date: Sat Jun 26 11:37:47 2010 +0000 ipv6: Clamp reported valid_lft to a minimum of 0 Since addresses are only revalidated every 2 minutes, the reported valid_lft can underflow shortly before the address is deleted. Clamp it to a minimum of 0, as for prefered_lft. Reported-by: Piotr Lewandowski Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 5a9dbfe08ee17f0dc9ecff647eba3d04afa01200 Author: Nicolas Kaiser Date: Sat Jun 26 06:58:54 2010 +0000 usb: pegasus: fixed coding style issues Fixed brace, static initialization, comment, whitespace and spacing coding style issues. Signed-off-by: Nicolas Kaiser Signed-off-by: David S. Miller commit 338de9d9dac038a76fd6577cf30aa3ada07ae756 Author: Vladimir Zapolskiy Date: Thu Jun 24 17:19:25 2010 +0400 ASoC: uda134x: correct bias level setup for codecs family For UDA1341 codec power control is managed in STATUS1 register, and for all other codecs in DATA011 register. Signed-off-by: Vladimir Zapolskiy Signed-off-by: Mark Brown commit ed632ad3b812be6ddace1562c56d838ee48e9313 Author: Vladimir Zapolskiy Date: Thu Jun 24 15:17:07 2010 +0400 ASoC: uda134x: add DATA011 register found in codecs family In UDA1340, UDA1344 and UDA1345 codecs there is one more functional register in part of DATA0 tranfser. For UDA1341 this register coincides with EA register. Signed-off-by: Vladimir Zapolskiy Signed-off-by: Mark Brown commit af51b5c0f06d449667eba226d96c8f56e2b96659 Merge: 9c1be7e e827e32 Author: Mark Brown Date: Wed Jun 30 14:46:53 2010 +0100 Merge remote branch 'takashi/topic/asoc' into for-2.6.36 commit fc4978b796e5e52ab3a709495a968199afe0a108 Merge: 3260e52 df0698b Author: Russell King Date: Wed Jun 30 11:00:01 2010 +0100 Merge git://git.linaro.org/nico/arm_security into devel-stable commit 15676295e1189d87b9e5589549492c4f0ae46336 Author: Jiri Kosina Date: Wed Jun 30 11:37:20 2010 +0200 Revert "Remove dead CONFIG_SIBYTE_BCM1480_PROF" This reverts commit 22c1d8b4f8f04882046ebe592f9a9eaea443cb45. It has been nacked by MIPS maintainer Ralf Baechle. commit 5109a4597f7e758b8d20694392d0361a0b4c43b1 Author: Uwe Kleine-König Date: Wed Jun 23 11:57:19 2010 +0200 ARM: mx3: complement uart init routine with an exit routine moboard_uart0_init requests a gpio. Without an exit function that frees that gpio again binding the uart a second time doesn't work. Signed-off-by: Uwe Kleine-König commit 6eafde5f02b1f34b7e083d1d6522f40e850bf355 Author: Uwe Kleine-König Date: Wed Jun 23 11:49:34 2010 +0200 ARM: imx: dynamically register imx-uart devices (imx35) Signed-off-by: Uwe Kleine-König commit 16cf5c41514fd94ff1e8b6be091e4b4732688fa6 Author: Uwe Kleine-König Date: Wed Jun 23 11:46:16 2010 +0200 ARM: imx: dynamically register imx-uart devices (imx31) Signed-off-by: Uwe Kleine-König commit d5dac4a69fe571ec12d999174e0425f2641325d4 Author: Uwe Kleine-König Date: Wed Jun 23 09:36:01 2010 +0200 ARM: imx: dynamically register imx-uart devices (imx27) Signed-off-by: Uwe Kleine-König commit 7cc3c84666db63995d44b44276d304c6f0c92630 Author: Uwe Kleine-König Date: Thu Jun 24 15:20:44 2010 +0200 ARM: imx: dynamically register imx-uart devices (imx25) Signed-off-by: Uwe Kleine-König commit 3c5227fd40b1250490c34b50298973f32b7dcf96 Author: Uwe Kleine-König Date: Tue Jun 22 17:59:58 2010 +0200 ARM: imx: dynamically register imx-uart devices (imx21) Signed-off-by: Uwe Kleine-König commit d112f4e4e57cbcf81e5f04a0eba77804d14d8640 Author: Uwe Kleine-König Date: Tue Jun 22 14:50:59 2010 +0200 ARM: imx: dynamically register imx-uart devices (imx1) Signed-off-by: Uwe Kleine-König commit 2db6823773760412706168be6378eef30c29808b Author: Uwe Kleine-König Date: Tue Jun 22 14:49:20 2010 +0200 ARM: imx: dynamically register imx-uart devices (generic part) Signed-off-by: Uwe Kleine-König commit a4dc013570e08ec4947b10fa78080da767b30527 Author: Uwe Kleine-König Date: Tue Jun 22 10:14:15 2010 +0200 ARM: imx: dynamically register spi_imx devices (imx35) Signed-off-by: Uwe Kleine-König commit 06606ff1300ecb05a2a2953c9f735730950365f5 Author: Uwe Kleine-König Date: Tue Jun 22 10:09:14 2010 +0200 ARM: imx: dynamically register spi_imx devices (imx31) Signed-off-by: Uwe Kleine-König commit 7536cf992f395cb431f723041183d14a91d89c84 Author: Uwe Kleine-König Date: Tue Jun 22 09:00:22 2010 +0200 ARM: imx: dynamically register spi_imx devices (imx27) Signed-off-by: Uwe Kleine-König commit 63ddc5b01681567d10ddb94cb41390c77237cb62 Author: Uwe Kleine-König Date: Mon Jun 21 17:34:58 2010 +0200 ARM: imx: dynamically register spi_imx devices (imx25) Signed-off-by: Uwe Kleine-König commit 642e466bf405ba558e68353cd4ae6e8ed640b123 Author: Uwe Kleine-König Date: Mon Jun 21 17:27:22 2010 +0200 ARM: imx: dynamically register spi_imx devices (imx21) Signed-off-by: Uwe Kleine-König commit 0287073713d2d638bd89aff53750467af657da63 Author: Uwe Kleine-König Date: Mon Jun 21 18:02:55 2010 +0200 ARM: imx: dynamically register spi_imx devices (generic part) Signed-off-by: Uwe Kleine-König commit 7cdc8fa7120f97f40d36547854ae127dc0318e3a Author: Uwe Kleine-König Date: Wed Jun 16 19:25:34 2010 +0200 ARM: imx: dynamically register imx-i2c devices (imx35) Signed-off-by: Uwe Kleine-König commit 4a9b8b0b061ef750b5ef31d1e9d2fa0206731f2f Author: Uwe Kleine-König Date: Wed Jun 16 18:03:05 2010 +0200 ARM: imx: dynamically register imx-i2c devices (imx31) Signed-off-by: Uwe Kleine-König commit c69871597dd173af2d7615429c0ee6aa10fae42b Author: Uwe Kleine-König Date: Wed Jun 16 17:25:40 2010 +0200 ARM: imx: dynamically register imx-i2c devices (imx27) Signed-off-by: Uwe Kleine-König commit a8ff045603c712d6d61e07260ec2c0e44c40d14c Author: Uwe Kleine-König Date: Wed Jun 16 14:55:07 2010 +0200 ARM: imx: dynamically register imx-i2c devices (imx25) Signed-off-by: Uwe Kleine-König commit 2b92084f75c74a5496380833cb60185985959ec6 Author: Uwe Kleine-König Date: Tue Jun 22 09:27:33 2010 +0200 ARM: imx: dynamically register imx-i2c devices (imx21) Signed-off-by: Uwe Kleine-König commit 6348e6b54e8609be11826a8e30357a03ba201500 Author: Uwe Kleine-König Date: Wed Jun 16 15:26:07 2010 +0200 ARM: imx: dynamically register imx-i2c devices (imx1) Signed-off-by: Uwe Kleine-König commit 99a754d8ee65c32329440f85167ead5cc6e32033 Author: Uwe Kleine-König Date: Wed Jun 16 14:37:51 2010 +0200 ARM: imx: dynamically register imx-i2c devices (generic part) Signed-off-by: Uwe Kleine-König commit e2611ba40a937b8a749ef075a67e40acee5d1748 Author: Uwe Kleine-König Date: Wed Jun 16 12:26:53 2010 +0200 ARM: imx: Change the way nand devices are registered (imx35) Make use of new mechanism to register a nand device. Signed-off-by: Uwe Kleine-König commit a2ceeef59f8fc9303dd23ebe09e9daca70799ff5 Author: Uwe Kleine-König Date: Wed Jun 16 12:23:11 2010 +0200 ARM: imx: Change the way nand devices are registered (imx31) Make use of new mechanism to register a nand device. Signed-off-by: Uwe Kleine-König commit 0e7a29a8d97c4ea86b9975e65f554c0398a8fdbf Author: Uwe Kleine-König Date: Wed Jun 16 07:35:31 2010 +0200 ARM: imx: Change the way nand devices are registered (imx27) Make use of new mechanism to register a nand device. Signed-off-by: Uwe Kleine-König commit b0c4845c47bce6fefe5e08b1e0cbd100d62ec36b Author: Uwe Kleine-König Date: Wed Jun 16 12:34:56 2010 +0200 ARM: imx: Change the way nand devices are registered (imx25) Make use of new mechanism to register a nand device. Signed-off-by: Uwe Kleine-König commit 1f8d721cd3dd1a2ee37152ce228f035212074984 Author: Uwe Kleine-König Date: Wed Jun 16 11:17:45 2010 +0200 ARM: imx: Change the way nand devices are registered (imx21) Make use of new mechanism to register a nand device. Signed-off-by: Uwe Kleine-König commit 66384eedd900f2f6bb00e4f16c2cb770d6b0066b Author: Uwe Kleine-König Date: Tue Jun 15 18:14:19 2010 +0200 ARM: imx: Change the way nand devices are registered (generic part) Instead of having a platform device defined in a devices.c and register it in the machine file allocate it dynamically. This reduces the size of needed memory as the new function is discarded after init and only the existing devices are created. Signed-off-by: Uwe Kleine-König commit aa71251c5b8c673361281fbfd8be5a9ee8b9f4cc Author: Uwe Kleine-König Date: Wed Jun 16 07:12:51 2010 +0200 ARM: mxc: remove paragraphs with old address of the FSF As the kernel contains a copy of the GPL anyhow just get rid of the address specification instead of fixing it. Signed-off-by: Uwe Kleine-König commit a1d62fc525fb3604f4e7341fa7098dd6e87df9f8 Author: Uwe Kleine-König Date: Wed Jun 16 07:06:49 2010 +0200 ARM: mxc91231: remove paragraphs with old address of the FSF As the kernel contains a copy of the GPL anyhow just get rid of the address specification instead of fixing it. Signed-off-by: Uwe Kleine-König commit d694eea529918b4b2b610b55eddcf82a6df72a81 Author: Uwe Kleine-König Date: Wed Jun 16 06:59:45 2010 +0200 ARM: mx3: remove paragraphs with old address of the FSF As the kernel contains a copy of the GPL anyhow just get rid of the address specification instead of fixing it. Signed-off-by: Uwe Kleine-König commit 6cc702a6a21c1b13e32c5981b0d049509d6bb373 Author: Uwe Kleine-König Date: Wed Jun 16 06:53:33 2010 +0200 ARM: mx25: remove paragraphs with old address of the FSF As the kernel contains a copy of the GPL anyhow just get rid of the address specification instead of fixing it. Signed-off-by: Uwe Kleine-König commit 6851a408a916a56366d07f8b55454f390eed6dbe Author: Uwe Kleine-König Date: Wed Jun 16 06:53:33 2010 +0200 ARM: imx: remove paragraphs with old address of the FSF As the kernel contains a copy of the GPL anyhow just get rid of the address specification instead of fixing it. Signed-off-by: Uwe Kleine-König commit cd57c77772b699b1e69d69510ce01109c46a6f0b Author: Uwe Kleine-König Date: Wed Jun 16 06:45:15 2010 +0200 MTD: mxc_nand: make bit fields unsigned to please sparse This fixes: arch/arm/plat-mxc/include/mach/mxc_nand.h:25:14: error: dubious one-bit signed bitfield arch/arm/plat-mxc/include/mach/mxc_nand.h:26:17: error: dubious one-bit signed bitfield While at it make width unsigned, too. Signed-off-by: Uwe Kleine-König commit 253ff1fa6f8d24d46ef1b5aa68f6293b883f03d8 Author: Uwe Kleine-König Date: Tue Jun 15 11:31:02 2010 +0200 ARM: imx: new helper function imx_add_platform_device This should be a globally available function, see http://thread.gmane.org/gmane.linux.kernel/998881/focus=998882 Until this hits mainline create a similar function available for imx platforms only. Signed-off-by: Uwe Kleine-König commit 9f72ffedc8409b9c9cbe17a9f66c2982baa4ff52 Author: Uwe Kleine-König Date: Mon Jun 14 17:56:52 2010 +0200 ARM: imx: new Kconfig symbol and feature test macro for DMA on mx1 and mx2 This should be used instead of hard coding the corresponding platforms. The feature test macro is needed to support different SOCs in a single kernel image. While at it rename dma-mx1-mx2 to dma-v1 as mx25 doesn't use it and so the mx2 part is wrong and move the header to arch/arm/mach-imx. Signed-off-by: Uwe Kleine-König commit e780d2392dd37fcc231d97400c1cdd8d261ed556 Author: Uwe Kleine-König Date: Mon Jun 14 17:39:21 2010 +0200 ARM: imx: prepare deprecating ARCH_MX1, MACH_MX2, MACH_MX21 and MACH_MX27 MACH_... is reserved for machine support, so use SOC as prefix, not MACH. This introduces new symbols SOC_IMX1, SOC_IMX21 and SOC_IMX27. They are selected by the old symbols for now. There is no substitute for MACH_MX2 as most usages of MX2 only means MX21 + MX27 but not MX25. Later the choice about CPU and CPU family should go away and the individual machines should select the right SOC symbol. This is a precondition to support more than one SOC in a single kernel image. Signed-off-by: Uwe Kleine-König commit b6b06be062daf3a8a2a2bb93585564c7aa1fa8d3 Author: Uwe Kleine-König Date: Mon Jun 14 16:56:46 2010 +0200 ARM: imx: Kconfig: use an if block instead of a depend for many symbols Signed-off-by: Uwe Kleine-König commit 074694956b547de9a6b85b919c0bb13853b88c2d Author: Uwe Kleine-König Date: Mon Jun 14 15:56:58 2010 +0200 ARM: imx: move mx1 support to mach-imx Signed-off-by: Uwe Kleine-König commit 551823e7e031978b990e952c70ae01f8eba8d2c4 Author: Uwe Kleine-König Date: Fri Jun 11 09:08:02 2010 +0200 ARM: imx: rename mxc_uart_devicex to follow a common naming scheme Addionally remove an unneeded include. Signed-off-by: Uwe Kleine-König commit de847272149365363a6043a963a6f42fb91566e2 Author: Ben Hutchings Date: Tue Jun 29 15:26:56 2010 +0000 3c59x: Use fine-grained locks for MII and windowed register access This avoids scheduling in atomic context and also means that IRQs will only be deferred for relatively short periods of time. Previously discussed in: http://article.gmane.org/gmane.linux.network/155024 Reported-by: Arne Nordmark Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 5a86f28f954c3841d3a6df4d07d2ed17088c3711 Author: Bruce Allan Date: Tue Jun 29 18:13:13 2010 +0000 e1000e: disable EEE support by default Based on community feedback, EEE should be disabled by default until the IEEE802.3az specification has been finalized. Cc: bhutchings@solarflare.com Signed-off-by: Bruce Allan Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit cc40f57a76be05e6f17a6c83ec6c60e3fbcf4217 Author: Bruce Allan Date: Tue Jun 29 18:12:52 2010 +0000 e1000e: remove EEE module parameter As requested by Dave Miller. A follow-on set of patches will allow for ethtool to enable/disable the feature instead. Signed-off-by: Bruce Allan Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 8eb64e6b856437318ac3de9c73789c9ab54b1589 Author: Bruce Allan Date: Tue Jun 29 18:12:30 2010 +0000 e1000e: suppress compile warnings on certain archs Commit 84f4ee902ad3ee964b7b3a13d5b7cf9c086e9916 causes compile warnings on architectures that have unsigned long long's that are not 64-bit, e.g. ia64. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 36f2407fe52c55566221f8c68c8fb808abffd2f5 Author: Dean Nelson Date: Tue Jun 29 18:12:05 2010 +0000 e1000e: don't inadvertently re-set INTX_DISABLE Should e1000_test_msi() fail to see an msi interrupt, it attempts to fallback to legacy INTx interrupts. But an error in the code may prevent this from happening correctly. Before calling e1000_test_msi_interrupt(), e1000_test_msi() disables SERR by clearing the SERR bit from the just read PCI_COMMAND bits as it writes them back out. Upon return from calling e1000_test_msi_interrupt(), it re-enables SERR by writing out the version of PCI_COMMAND it had previously read. The problem with this is that e1000_test_msi_interrupt() calls pci_disable_msi(), which eventually ends up in pci_intx(). And because pci_intx() was called with enable set to 1, the INTX_DISABLE bit gets cleared from PCI_COMMAND, which is what we want. But when we get back to e1000_test_msi(), the INTX_DISABLE bit gets inadvertently re-set because of the attempt by e1000_test_msi() to re-enable SERR. The solution is to have e1000_test_msi() re-read the PCI_COMMAND bits as part of its attempt to re-enable SERR. During debugging/testing of this issue I found that not all the systems I ran on had the SERR bit set to begin with. And on some of the systems the same could be said for the INTX_DISABLE bit. Needless to say these latter systems didn't have a problem falling back to legacy INTx interrupts with the code as is. Signed-off-by: Dean Nelson CC: stable@kernel.org Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d09ec7387184eba9e3030496f0451204090ff610 Author: Paul Mackerras Date: Tue Jun 29 12:50:32 2010 +1000 powerpc, hw_breakpoint: Tell generic code we have no instruction breakpoints At present, hw_breakpoint_slots() returns 1 regardless of what type of breakpoint is specified in the type argument. Since we don't define CONFIG_HAVE_MIXED_BREAKPOINTS_REGS, there are separate values for TYPE_INST and TYPE_DATA, and hw_breakpoint_slots() returns 1 for both, effectively advertising instruction breakpoint support which doesn't exist. This fixes it by making hw_breakpoint_slots return 1 for TYPE_DATA and 0 for TYPE_INST. This moves hw_breakpoint_slots() from the powerpc hw_breakpoint.h to hw_breakpoint.c because the definitions of TYPE_INST and TYPE_DATA aren't available in . They are defined in but we can't include that header in , and nor can we rely on being included before . Since hw_breakpoint_slots() is only called at boot time, there is no performance impact from making it a real function rather than a static inline. Signed-off-by: Paul Mackerras commit 6c057573f21db0ef85f78318875269a2159af35c Author: Nicolas Kaiser Date: Sun Jun 27 11:44:52 2010 +0000 drivers/net/Makefile: conditionally descend to wireless Don't descend to wireless unless it is actually used. Signed-off-by: Nicolas Kaiser Signed-off-by: David S. Miller commit d1e316891693f3e7266a1df9afda72763248ef7c Author: Nicolas Kaiser Date: Sun Jun 27 00:00:25 2010 +0000 net/Makefile: conditionally descend to wireless and ieee802154 Don't descend to wireless and ieee802154 unless they are actually used. Signed-off-by: Nicolas Kaiser Signed-off-by: David S. Miller commit 346fe763d7706cccdf90ba24f04f0facdd79b91a Author: Rajesh K Borundia Date: Tue Jun 29 08:01:20 2010 +0000 qlcnic: Add support for configuring eswitch and npars Following changes are made: 1.Obtain capabilities of Nic partition. 2.Configure tx bandwidth of particular Nic partition. 3.Configure the eswitch for setting port mirroring, enable mac learning, promiscous mode. Signed-off-by: Rajesh K Borundia Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 45918e2fe582d845a2649ffa015754ae44be9a8b Author: Anirban Chakraborty Date: Tue Jun 29 07:52:12 2010 +0000 qlcnic: Remove obsolete code Current driver uses FW API version 2 and thus code corresponding to FW API version 1 has become obsolete. Clean up this from the driver. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 0879b100f3c187257729f36cba33d96ec2875766 Author: Srikar Dronamraju Date: Tue Jun 29 23:02:26 2010 +0530 perf: Fix hist_entry__tui_annotate() build failure When compiling perf on latest tip/master I see the following error: cc1: warnings being treated as errors util/newt.c: In function 'hist_entry__tui_annotate': util/newt.c:764: warning: 'ret' is used uninitialized in this function make: *** [util/newt.o] Error 1 I think the problem was introduced by commit 13f499f076c67675e6e3022973729b5d906a84e9 Below is a patch that fixes the problem. Signed-off-by: Srikar Dronamraju Cc: Arnaldo Carvalho de Melo LKML-Reference: <20100629173226.GC23231@linux.vnet.ibm.com> Signed-off-by: Ingo Molnar commit f35376a44f7655bcb9a9abea1fbffcde1b80be55 Author: John W. Linville Date: Tue Jun 29 15:24:05 2010 -0400 ath9k: make ath9k_hw_keysetmac static Reported-by: Johannes Berg Signed-off-by: John W. Linville commit 99aeed9cde404365f9f72da25518068cbbc40b89 Author: John W. Linville Date: Tue Jun 29 15:20:49 2010 -0400 ath9k: remove unused function ath9k_hw_keyisvalid Reported-by: Johannes Berg Signed-off-by: John W. Linville commit 90c7201b97bb7ac5a4e2605abc0efb5fdfb957f0 Author: Theodore Ts'o Date: Tue Jun 29 14:53:24 2010 -0400 ext4: Pass line number to ext4_journal_abort_handle() This allows the error messages to include the line number Signed-off-by: "Theodore Ts'o" commit c466d4efb86bb5aa327d6e43f62781a9faabfdae Author: John W. Linville Date: Tue Jun 29 14:51:23 2010 -0400 mac80211: add basic tracing to drv_get_survey Reported-by: Johannes Berg Signed-off-by: John W. Linville commit ff3074a4dd6c0963e6a7eaac48175a62f589c143 Author: John W. Linville Date: Tue Jun 29 13:55:04 2010 -0400 mac80211: remove unnecessary check in ieee80211_dump_survey This check is duplicated in drv_get_survey. Reported-by: Johannes Berg Signed-off-by: John W. Linville commit e29136f80e775b0310273932b4297a62f5574a29 Author: Theodore Ts'o Date: Tue Jun 29 12:54:28 2010 -0400 ext4: Enhance ext4_grp_locked_error() to take block and function numbers Also use a macro definition so that __func__ and __LINE__ is implicit. Signed-off-by: "Theodore Ts'o" commit c67d859e39896e4286249da89c4ca0ef8bd949cb Author: Theodore Ts'o Date: Tue Jun 29 11:07:07 2010 -0400 ext4: clean up ext4_abort() so __func__ is now implicit Use a macro definition for ext4_abort() to clean up the .c files a wee bit. Signed-off-by: "Theodore Ts'o" commit 4a9cdec73f79b2858e9ecf0b6cfac7f6b200bf3a Author: Theodore Ts'o Date: Tue Jun 29 11:00:23 2010 -0400 ext4: Add new superblock fields reserved for the Next3 snapshot feature Signed-off-by: "Theodore Ts'o" commit fbe3290f4558c72abf6e264c4a2ee708b0495d55 Author: Kulikov Vasiliy Date: Tue Jun 29 16:31:16 2010 +0400 Documentation: fix ubuntu distro name 10.04 is Lucid, not Karmic. Signed-off-by: Kulikov Vasiliy Acked-by: Nicolas Palix Signed-off-by: Michal Marek commit 01ab17887f4cdcb8bb5a5d1bc3b160d186e6e99b Author: Amerigo Wang Date: Mon Jun 28 10:45:21 2010 +0800 Makefile: "make kernelrelease" should show the correct full kernel version After commit 85a256d8e0116c8f5ad276730830f5d4d473344d, 'make kernelrelease' doesn't show the correct full kernel version. This patch fixes it, 'make kernelrelease' will show the same version name with the one you finally get. Cc: David Rientjes Cc: Michal Marek Signed-off-by: Amerigo Wang [mmarek: merged with 0915512 and added dependency on include/config/kernel.release] Signed-off-by: Michal Marek commit 3631d9a2e503ec9c36b0599b2e45548e5c410516 Author: Michal Marek Date: Tue Jun 29 11:58:42 2010 +0200 MAINTAINERS: Update kbuild git URLs The kbuild tree was moved to git.kernel.org so that people can find it more easily. Signed-off-by: Michal Marek commit 2ec57d448b2e8fcfba539a46701b43f14f037f17 Author: Michael Neuling Date: Tue Jun 29 12:02:01 2010 +1000 sched: Fix spelling of sibling No logic changes, only spelling. Signed-off-by: Michael Neuling Cc: linuxppc-dev@ozlabs.org Cc: David Howells Cc: Peter Zijlstra LKML-Reference: <15249.1277776921@neuling.org> Signed-off-by: Ingo Molnar commit 567a9fd86735ccdc897768ed2dacdd5e83a13509 Author: Masami Hiramatsu Date: Tue Jun 29 14:53:50 2010 +0900 kprobes/x86: Fix kprobes to skip prefixes correctly Fix resume_execution() and is_IF_modifier() to skip x86 instruction prefixes correctly by using x86 instruction attribute. Without this fix, resume_execution() can't handle instructions which have non-REX prefixes (REX prefixes are skipped). This will cause unexpected kernel panic by hitting bad address when a kprobe hits on two-byte ret (e.g. "repz ret" generated for Athlon/K8 optimization), because it just checks "repz" and can't recognize the "ret" instruction. These prefixes can be found easily with x86 instruction attribute. This patch introduces skip_prefixes() and uses it in resume_execution() and is_IF_modifier() to skip prefixes. Signed-off-by: Masami Hiramatsu Cc: Ananth N Mavinakayanahalli LKML-Reference: <4C298A6E.8070609@hitachi.com> Signed-off-by: Ingo Molnar commit fb0e7beb5c1b6fb4da786ba709d7138373d5fb22 Author: Tejun Heo Date: Tue Jun 29 10:07:15 2010 +0200 workqueue: implement cpu intensive workqueue This patch implements cpu intensive workqueue which can be specified with WQ_CPU_INTENSIVE flag on creation. Works queued to a cpu intensive workqueue don't participate in concurrency management. IOW, it doesn't contribute to gcwq->nr_running and thus doesn't delay excution of other works. Note that although cpu intensive works won't delay other works, they can be delayed by other works. Combine with WQ_HIGHPRI to avoid being delayed by other works too. As the name suggests this is useful when using workqueue for cpu intensive works. Workers executing cpu intensive works are not considered for workqueue concurrency management and left for the scheduler to manage. Signed-off-by: Tejun Heo Cc: Andrew Morton commit 649027d73a6309ac34dc2886362e662bd73456dc Author: Tejun Heo Date: Tue Jun 29 10:07:14 2010 +0200 workqueue: implement high priority workqueue This patch implements high priority workqueue which can be specified with WQ_HIGHPRI flag on creation. A high priority workqueue has the following properties. * A work queued to it is queued at the head of the worklist of the respective gcwq after other highpri works, while normal works are always appended at the end. * As long as there are highpri works on gcwq->worklist, [__]need_more_worker() remains %true and process_one_work() wakes up another worker before it start executing a work. The above two properties guarantee that works queued to high priority workqueues are dispatched to workers and start execution as soon as possible regardless of the state of other works. Signed-off-by: Tejun Heo Cc: Andi Kleen Cc: Andrew Morton commit dcd989cb73ab0f7b722d64ab6516f101d9f43f88 Author: Tejun Heo Date: Tue Jun 29 10:07:14 2010 +0200 workqueue: implement several utility APIs Implement the following utility APIs. workqueue_set_max_active() : adjust max_active of a wq workqueue_congested() : test whether a wq is contested work_cpu() : determine the last / current cpu of a work work_busy() : query whether a work is busy * Anton Blanchard fixed missing ret initialization in work_busy(). Signed-off-by: Tejun Heo Cc: Anton Blanchard commit d320c03830b17af64e4547075003b1eeb274bc6c Author: Tejun Heo Date: Tue Jun 29 10:07:14 2010 +0200 workqueue: s/__create_workqueue()/alloc_workqueue()/, and add system workqueues This patch makes changes to make new workqueue features available to its users. * Now that workqueue is more featureful, there should be a public workqueue creation function which takes paramters to control them. Rename __create_workqueue() to alloc_workqueue() and make 0 max_active mean WQ_DFL_ACTIVE. In the long run, all create_workqueue_*() will be converted over to alloc_workqueue(). * To further unify access interface, rename keventd_wq to system_wq and export it. * Add system_long_wq and system_nrt_wq. The former is to host long running works separately (so that flush_scheduled_work() dosen't take so long) and the latter guarantees any queued work item is never executed in parallel by multiple CPUs. These will be used by future patches to update workqueue users. Signed-off-by: Tejun Heo commit b71ab8c2025caef8db719aa41af0ed735dc543cd Author: Tejun Heo Date: Tue Jun 29 10:07:14 2010 +0200 workqueue: increase max_active of keventd and kill current_is_keventd() Define WQ_MAX_ACTIVE and create keventd with max_active set to half of it which means that keventd now can process upto WQ_MAX_ACTIVE / 2 - 1 works concurrently. Unless some combination can result in dependency loop longer than max_active, deadlock won't happen and thus it's unnecessary to check whether current_is_keventd() before trying to schedule a work. Kill current_is_keventd(). (Lockdep annotations are broken. We need lock_map_acquire_read_norecurse()) Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Christoph Lameter Cc: Tony Luck Cc: Andi Kleen Cc: Oleg Nesterov commit e22bee782b3b00bd4534ae9b1c5fb2e8e6573c5c Author: Tejun Heo Date: Tue Jun 29 10:07:14 2010 +0200 workqueue: implement concurrency managed dynamic worker pool Instead of creating a worker for each cwq and putting it into the shared pool, manage per-cpu workers dynamically. Works aren't supposed to be cpu cycle hogs and maintaining just enough concurrency to prevent work processing from stalling due to lack of processing context is optimal. gcwq keeps the number of concurrent active workers to minimum but no less. As long as there's one or more running workers on the cpu, no new worker is scheduled so that works can be processed in batch as much as possible but when the last running worker blocks, gcwq immediately schedules new worker so that the cpu doesn't sit idle while there are works to be processed. gcwq always keeps at least single idle worker around. When a new worker is necessary and the worker is the last idle one, the worker assumes the role of "manager" and manages the worker pool - ie. creates another worker. Forward-progress is guaranteed by having dedicated rescue workers for workqueues which may be necessary while creating a new worker. When the manager is having problem creating a new worker, mayday timer activates and rescue workers are summoned to the cpu and execute works which might be necessary to create new workers. Trustee is expanded to serve the role of manager while a CPU is being taken down and stays down. As no new works are supposed to be queued on a dead cpu, it just needs to drain all the existing ones. Trustee continues to try to create new workers and summon rescuers as long as there are pending works. If the CPU is brought back up while the trustee is still trying to drain the gcwq from the previous offlining, the trustee will kill all idles ones and tell workers which are still busy to rebind to the cpu, and pass control over to gcwq which assumes the manager role as necessary. Concurrency managed worker pool reduces the number of workers drastically. Only workers which are necessary to keep the processing going are created and kept. Also, it reduces cache footprint by avoiding unnecessarily switching contexts between different workers. Please note that this patch does not increase max_active of any workqueue. All workqueues can still only process one work per cpu. Signed-off-by: Tejun Heo commit d302f0178223802a1e496ba90c66193b7721c9c1 Author: Tejun Heo Date: Tue Jun 29 10:07:13 2010 +0200 workqueue: implement worker_{set|clr}_flags() Implement worker_{set|clr}_flags() to manipulate worker flags. These are currently simple wrappers but logics to track the current worker state and the current level of concurrency will be added. Signed-off-by: Tejun Heo commit 7e11629d0efec829cbf62366143ba1081944a70e Author: Tejun Heo Date: Tue Jun 29 10:07:13 2010 +0200 workqueue: use shared worklist and pool all workers per cpu Use gcwq->worklist instead of cwq->worklist and break the strict association between a cwq and its worker. All works queued on a cpu are queued on gcwq->worklist and processed by any available worker on the gcwq. As there no longer is strict association between a cwq and its worker, whether a work is executing can now only be determined by calling [__]find_worker_executing_work(). After this change, the only association between a cwq and its worker is that a cwq puts a worker into shared worker pool on creation and kills it on destruction. As all workqueues are still limited to max_active of one, this means that there are always at least as many workers as active works and thus there's no danger for deadlock. The break of strong association between cwqs and workers requires somewhat clumsy changes to current_is_keventd() and destroy_workqueue(). Dynamic worker pool management will remove both clumsy changes. current_is_keventd() won't be necessary at all as the only reason it exists is to avoid queueing a work from a work which will be allowed just fine. The clumsy part of destroy_workqueue() is added because a worker can only be destroyed while idle and there's no guarantee a worker is idle when its wq is going down. With dynamic pool management, workers are not associated with workqueues at all and only idle ones will be submitted to destroy_workqueue() so the code won't be necessary anymore. Signed-off-by: Tejun Heo commit 18aa9effad4adb2c1efe123af4eb24fec9f59b30 Author: Tejun Heo Date: Tue Jun 29 10:07:13 2010 +0200 workqueue: implement WQ_NON_REENTRANT With gcwq managing all the workers and work->data pointing to the last gcwq it was on, non-reentrance can be easily implemented by checking whether the work is still running on the previous gcwq on queueing. Implement it. Signed-off-by: Tejun Heo commit 7a22ad757ec75186ad43a5b4670fa7423ee8f480 Author: Tejun Heo Date: Tue Jun 29 10:07:13 2010 +0200 workqueue: carry cpu number in work data once execution starts To implement non-reentrant workqueue, the last gcwq a work was executed on must be reliably obtainable as long as the work structure is valid even if the previous workqueue has been destroyed. To achieve this, work->data will be overloaded to carry the last cpu number once execution starts so that the previous gcwq can be located reliably. This means that cwq can't be obtained from work after execution starts but only gcwq. Implement set_work_{cwq|cpu}(), get_work_[g]cwq() and clear_work_data() to set work data to the cpu number when starting execution, access the overloaded work data and clear it after cancellation. queue_delayed_work_on() is updated to preserve the last cpu while in-flight in timer and other callers which depended on getting cwq from work after execution starts are converted to depend on gcwq instead. * Anton Blanchard fixed compile error on powerpc due to missing linux/threads.h include. Signed-off-by: Tejun Heo Cc: Anton Blanchard commit 8cca0eea3964b72b14e8c3f88e3a40bef7b9113e Author: Tejun Heo Date: Tue Jun 29 10:07:13 2010 +0200 workqueue: add find_worker_executing_work() and track current_cwq Now that all the workers are tracked by gcwq, we can find which worker is executing a work from gcwq. Implement find_worker_executing_work() and make worker track its current_cwq so that we can find things the other way around. This will be used to implement non-reentrant wqs. Signed-off-by: Tejun Heo commit 502ca9d819792e7d79b6e002afe9094c641fe410 Author: Tejun Heo Date: Tue Jun 29 10:07:13 2010 +0200 workqueue: make single thread workqueue shared worker pool friendly Reimplement st (single thread) workqueue so that it's friendly to shared worker pool. It was originally implemented by confining st workqueues to use cwq of a fixed cpu and always having a worker for the cpu. This implementation isn't very friendly to shared worker pool and suboptimal in that it ends up crossing cpu boundaries often. Reimplement st workqueue using dynamic single cpu binding and cwq->limit. WQ_SINGLE_THREAD is replaced with WQ_SINGLE_CPU. In a single cpu workqueue, at most single cwq is bound to the wq at any given time. Arbitration is done using atomic accesses to wq->single_cpu when queueing a work. Once bound, the binding stays till the workqueue is drained. Note that the binding is never broken while a workqueue is frozen. This is because idle cwqs may have works waiting in delayed_works queue while frozen. On thaw, the cwq is restarted if there are any delayed works or unbound otherwise. When combined with max_active limit of 1, single cpu workqueue has exactly the same execution properties as the original single thread workqueue while allowing sharing of per-cpu workers. Signed-off-by: Tejun Heo commit db7bccf45cb87522096b8f43144e31ca605a9f24 Author: Tejun Heo Date: Tue Jun 29 10:07:12 2010 +0200 workqueue: reimplement CPU hotplugging support using trustee Reimplement CPU hotplugging support using trustee thread. On CPU down, a trustee thread is created and each step of CPU down is executed by the trustee and workqueue_cpu_callback() simply drives and waits for trustee state transitions. CPU down operation no longer waits for works to be drained but trustee sticks around till all pending works have been completed. If CPU is brought back up while works are still draining, workqueue_cpu_callback() tells trustee to step down and tell workers to rebind to the cpu. As it's difficult to tell whether cwqs are empty if it's freezing or frozen, trustee doesn't consider draining to be complete while a gcwq is freezing or frozen (tracked by new GCWQ_FREEZING flag). Also, workers which get unbound from their cpu are marked with WORKER_ROGUE. Trustee based implementation doesn't bring any new feature at this point but it will be used to manage worker pool when dynamic shared worker pool is implemented. Signed-off-by: Tejun Heo commit c8e55f360210c1bc49bea5d62bc3939b7ee13483 Author: Tejun Heo Date: Tue Jun 29 10:07:12 2010 +0200 workqueue: implement worker states Implement worker states. After created, a worker is STARTED. While a worker isn't processing a work, it's IDLE and chained on gcwq->idle_list. While processing a work, a worker is BUSY and chained on gcwq->busy_hash. Also, gcwq now counts the number of all workers and idle ones. worker_thread() is restructured to reflect state transitions. cwq->more_work is removed and waking up a worker makes it check for events. A worker is killed by setting DIE flag while it's IDLE and waking it up. This gives gcwq better visibility of what's going on and allows it to find out whether a work is executing quickly which is necessary to have multiple workers processing the same cwq. Signed-off-by: Tejun Heo commit 8b03ae3cde59af9facab7c831b4141515d5dbcc8 Author: Tejun Heo Date: Tue Jun 29 10:07:12 2010 +0200 workqueue: introduce global cwq and unify cwq locks There is one gcwq (global cwq) per each cpu and all cwqs on an cpu point to it. A gcwq contains a lock to be used by all cwqs on the cpu and an ida to give IDs to workers belonging to the cpu. This patch introduces gcwq, moves worker_ida into gcwq and make all cwqs on the same cpu use the cpu's gcwq->lock instead of separate locks. gcwq->ida is now protected by gcwq->lock too. Signed-off-by: Tejun Heo commit a0a1a5fd4fb15ec61117c759fe9f5c16c53d9e9c Author: Tejun Heo Date: Tue Jun 29 10:07:12 2010 +0200 workqueue: reimplement workqueue freeze using max_active Currently, workqueue freezing is implemented by marking the worker freezeable and calling try_to_freeze() from dispatch loop. Reimplement it using cwq->limit so that the workqueue is frozen instead of the worker. * workqueue_struct->saved_max_active is added which stores the specified max_active on initialization. * On freeze, all cwq->max_active's are quenched to zero. Freezing is complete when nr_active on all cwqs reach zero. * On thaw, all cwq->max_active's are restored to wq->saved_max_active and the worklist is repopulated. This new implementation allows having single shared pool of workers per cpu. Signed-off-by: Tejun Heo commit 1e19ffc63dbbaea7a7d1c63d99c38d3e5a4c7edf Author: Tejun Heo Date: Tue Jun 29 10:07:12 2010 +0200 workqueue: implement per-cwq active work limit Add cwq->nr_active, cwq->max_active and cwq->delayed_work. nr_active counts the number of active works per cwq. A work is active if it's flushable (colored) and is on cwq's worklist. If nr_active reaches max_active, new works are queued on cwq->delayed_work and activated later as works on the cwq complete and decrement nr_active. cwq->max_active can be specified via the new @max_active parameter to __create_workqueue() and is set to 1 for all workqueues for now. As each cwq has only single worker now, this double queueing doesn't cause any behavior difference visible to its users. This will be used to reimplement freeze/thaw and implement shared worker pool. Signed-off-by: Tejun Heo commit affee4b294a0fc97d67c8a77dc080c4dd262a79e Author: Tejun Heo Date: Tue Jun 29 10:07:12 2010 +0200 workqueue: reimplement work flushing using linked works A work is linked to the next one by having WORK_STRUCT_LINKED bit set and these links can be chained. When a linked work is dispatched to a worker, all linked works are dispatched to the worker's newly added ->scheduled queue and processed back-to-back. Currently, as there's only single worker per cwq, having linked works doesn't make any visible behavior difference. This change is to prepare for multiple shared workers per cpu. Signed-off-by: Tejun Heo commit c34056a3fdde777c079cc8a70785c2602f2586cb Author: Tejun Heo Date: Tue Jun 29 10:07:11 2010 +0200 workqueue: introduce worker Separate out worker thread related information to struct worker from struct cpu_workqueue_struct and implement helper functions to deal with the new struct worker. The only change which is visible outside is that now workqueue worker are all named "kworker/CPUID:WORKERID" where WORKERID is allocated from per-cpu ida. This is in preparation of concurrency managed workqueue where shared multiple workers would be available per cpu. Signed-off-by: Tejun Heo commit 73f53c4aa732eced5fcb1844d3d452c30905f20f Author: Tejun Heo Date: Tue Jun 29 10:07:11 2010 +0200 workqueue: reimplement workqueue flushing using color coded works Reimplement workqueue flushing using color coded works. wq has the current work color which is painted on the works being issued via cwqs. Flushing a workqueue is achieved by advancing the current work colors of cwqs and waiting for all the works which have any of the previous colors to drain. Currently there are 16 possible colors, one is reserved for no color and 15 colors are useable allowing 14 concurrent flushes. When color space gets full, flush attempts are batched up and processed together when color frees up, so even with many concurrent flushers, the new implementation won't build up huge queue of flushers which has to be processed one after another. Only works which are queued via __queue_work() are colored. Works which are directly put on queue using insert_work() use NO_COLOR and don't participate in workqueue flushing. Currently only works used for work-specific flush fall in this category. This new implementation leaves only cleanup_workqueue_thread() as the user of flush_cpu_workqueue(). Just make its users use flush_workqueue() and kthread_stop() directly and kill cleanup_workqueue_thread(). As workqueue flushing doesn't use barrier request anymore, the comment describing the complex synchronization around it in cleanup_workqueue_thread() is removed together with the function. This new implementation is to allow having and sharing multiple workers per cpu. Please note that one more bit is reserved for a future work flag by this patch. This is to avoid shifting bits and updating comments later. Signed-off-by: Tejun Heo commit 0f900049cbe2767d47c2a62b54f0e822e1d66840 Author: Tejun Heo Date: Tue Jun 29 10:07:11 2010 +0200 workqueue: update cwq alignement work->data field is used for two purposes. It points to cwq it's queued on and the lower bits are used for flags. Currently, two bits are reserved which is always safe as 4 byte alignment is guaranteed on every architecture. However, future changes will need more flag bits. On SMP, the percpu allocator is capable of honoring larger alignment (there are other users which depend on it) and larger alignment works just fine. On UP, percpu allocator is a thin wrapper around kzalloc/kfree() and don't honor alignment request. This patch introduces WORK_STRUCT_FLAG_BITS and implements alloc/free_cwqs() which guarantees max(1 << WORK_STRUCT_FLAG_BITS, __alignof__(unsigned long long) alignment both on SMP and UP. On SMP, simply wrapping percpu allocator is enough. On UP, extra space is allocated so that cwq can be aligned and the original pointer can be stored after it which is used in the free path. * Alignment problem on UP is reported by Michal Simek. Signed-off-by: Tejun Heo Cc: Christoph Lameter Cc: Ingo Molnar Cc: Frederic Weisbecker Reported-by: Michal Simek commit 1537663f5763892cacf1409ac0efef1b4f332d1e Author: Tejun Heo Date: Tue Jun 29 10:07:11 2010 +0200 workqueue: kill cpu_populated_map Worker management is about to be overhauled. Simplify things by removing cpu_populated_map, creating workers for all possible cpus and making single threaded workqueues behave more like multi threaded ones. After this patch, all cwqs are always initialized, all workqueues are linked on the workqueues list and workers for all possibles cpus always exist. This also makes CPU hotplug support simpler - checking ->cpus_allowed before processing works in worker_thread() and flushing cwqs on CPU_POST_DEAD are enough. While at it, make get_cwq() always return the cwq for the specified cpu, add target_cwq() for cases where single thread distinction is necessary and drop all direct usage of per_cpu_ptr() on wq->cpu_wq. Signed-off-by: Tejun Heo commit 64166699752006f1a23a9cf7c96ae36654ccfc2c Author: Tejun Heo Date: Tue Jun 29 10:07:11 2010 +0200 workqueue: temporarily remove workqueue tracing Strip tracing code from workqueue and remove workqueue tracing. This is temporary measure till concurrency managed workqueue is complete. Signed-off-by: Tejun Heo Cc: Frederic Weisbecker commit a62428c0ae54a39e411251e836c3fe3dc11a5f5f Author: Tejun Heo Date: Tue Jun 29 10:07:10 2010 +0200 workqueue: separate out process_one_work() Separate out process_one_work() out of run_workqueue(). This patch doesn't cause any behavior change. Signed-off-by: Tejun Heo commit 22df02bb3fab24af97bff4c69cc6fd8529fc66fe Author: Tejun Heo Date: Tue Jun 29 10:07:10 2010 +0200 workqueue: define masks for work flags and conditionalize STATIC flags Work flags are about to see more traditional mask handling. Define WORK_STRUCT_*_BIT as the bit position constant and redefine WORK_STRUCT_* as bit masks. Also, make WORK_STRUCT_STATIC_* flags conditional While at it, re-define these constants as enums and use WORK_STRUCT_STATIC instead of hard-coding 2 in WORK_DATA_STATIC_INIT(). Signed-off-by: Tejun Heo commit 97e37d7b9e65a6ac939f796f91081135b7a08acc Author: Tejun Heo Date: Tue Jun 29 10:07:10 2010 +0200 workqueue: merge feature parameters into flags Currently, __create_workqueue_key() takes @singlethread and @freezeable paramters and store them separately in workqueue_struct. Merge them into a single flags parameter and field and use WQ_FREEZEABLE and WQ_SINGLE_THREAD. Signed-off-by: Tejun Heo commit 4690c4ab56c71919893ca25252f2dd65b58188c7 Author: Tejun Heo Date: Tue Jun 29 10:07:10 2010 +0200 workqueue: misc/cosmetic updates Make the following updates in preparation of concurrency managed workqueue. None of these changes causes any visible behavior difference. * Add comments and adjust indentations to data structures and several functions. * Rename wq_per_cpu() to get_cwq() and swap the position of two parameters for consistency. Convert a direct per_cpu_ptr() access to wq->cpu_wq to get_cwq(). * Add work_static() and Update set_wq_data() such that it sets the flags part to WORK_STRUCT_PENDING | WORK_STRUCT_STATIC if static | @extra_flags. * Move santiy check on work->entry emptiness from queue_work_on() to __queue_work() which all queueing paths share. * Make __queue_work() take @cpu and @wq instead of @cwq. * Restructure flush_work() and __create_workqueue_key() to make them easier to modify. Signed-off-by: Tejun Heo commit c790bce0481857412c964c5e9d46d56e41c4b051 Author: Tejun Heo Date: Tue Jun 29 10:07:09 2010 +0200 workqueue: kill RT workqueue With stop_machine() converted to use cpu_stop, RT workqueue doesn't have any user left. Kill RT workqueue support. Signed-off-by: Tejun Heo commit 8fec62b2d9d0c80b594d0d85678bfdf57a70df1b Author: Tejun Heo Date: Tue Jun 29 10:07:09 2010 +0200 acpi: use queue_work_on() instead of binding workqueue worker to cpu0 ACPI works need to be executed on cpu0 and acpi/osl.c achieves this by creating singlethread workqueue and then binding it to cpu0 from a work which is quite unorthodox. Make it create regular workqueues and use queue_work_on() instead. This is in preparation of concurrency managed workqueue and the extra workers won't be a problem after it's implemented. Signed-off-by: Tejun Heo commit 82805ab77d25643f579d90397dcd34f05d1b750a Author: Tejun Heo Date: Tue Jun 29 10:07:09 2010 +0200 kthread: implement kthread_data() Implement kthread_data() which takes @task pointing to a kthread and returns @data specified when creating the kthread. The caller is responsible for ensuring the validity of @task when calling this function. Signed-off-by: Tejun Heo commit 7bc465605ffa90b281d6b774fcb13911636a6d45 Author: Tejun Heo Date: Tue Jun 29 10:07:09 2010 +0200 ivtv: use kthread_worker instead of workqueue Upcoming workqueue updates will no longer guarantee fixed workqueue to worker kthread association, so giving RT priority to the irq worker won't work. Use kthread_worker which guarantees specific kthread association instead. This also makes setting the priority cleaner. Signed-off-by: Tejun Heo Cc: Andy Walls Cc: Andrew Morton Cc: ivtv-devel@ivtvdriver.org Cc: linux-media@vger.kernel.org commit b56c0d8937e665a27d90517ee7a746d0aa05af46 Author: Tejun Heo Date: Tue Jun 29 10:07:09 2010 +0200 kthread: implement kthread_worker Implement simple work processor for kthread. This is to ease using kthread. Single thread workqueue used to be used for things like this but workqueue won't guarantee fixed kthread association anymore to enable worker sharing. This can be used in cases where specific kthread association is necessary, for example, when it should have RT priority or be assigned to certain cgroup. Signed-off-by: Tejun Heo Cc: Andrew Morton commit 51f932c4870f785d73d5fd5fed33306e63cf4efc Author: Choi, David Date: Mon Jun 28 15:23:41 2010 +0000 micrel phy driver - updated(1) Hello all: This patch fixes what Ben mentioned, namely duplicated ids. From: David J. Choi Body of the explanation: This patch has changes as followings; -support the interrupt from phy devices from Micrel Inc. -support more phy devices, ks8737, ks8721, ks8041, ks8051 from Micrel. -remove vsc8201 because this device was used only internal test at Micrel. Signed-off-by: David J. Choi Signed-off-by: David S. Miller commit deaec0f65b9a9b536bc5951f4908ab1408421ffb Author: Stanislaw Gruszka Date: Sun Jun 27 23:31:34 2010 +0000 qlcnic: fail when try to setup unsupported features Signed-off-by: Stanislaw Gruszka Signed-off-by: David S. Miller commit ef2519b1dd3994074e3e438d67f2d91d07c3a5a8 Author: Stanislaw Gruszka Date: Sun Jun 27 23:33:29 2010 +0000 netxen: fail when try to setup unsupported features Signed-off-by: Stanislaw Gruszka Signed-off-by: David S. Miller commit e0d904ffd052930504913fb105dd25764f5f0bd8 Author: Stanislaw Gruszka Date: Sun Jun 27 23:28:11 2010 +0000 bnx2x: fail when try to setup unsupported features Signed-off-by: Stanislaw Gruszka Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit d92be4b1661be0cef5f277f10078c71c166f16ad Author: Stanislaw Gruszka Date: Sun Jun 27 23:29:42 2010 +0000 vmxnet3: fail when try to setup unsupported features Return EOPNOTSUPP in ethtool_ops->set_flags. Fix coding style while at it. Signed-off-by: Stanislaw Gruszka Signed-off-by: David S. Miller commit 52b6dcfe59d73347a598ba0826a6191a1e497679 Author: Stanislaw Gruszka Date: Sun Jun 27 23:26:23 2010 +0000 e1000e: fail when try to setup unsupported features Signed-off-by: Stanislaw Gruszka Signed-off-by: David S. Miller commit 529d6dad5bc69de14cdd24831e2a14264e93daa4 Author: Sjur Braendeland Date: Tue Jun 29 00:08:21 2010 -0700 caif-driver: Add CAIF-SPI Protocol driver. This patch introduces the CAIF SPI Protocol Driver for CAIF Link Layer. This driver implements a platform driver to accommodate for a platform specific SPI device. A general platform driver is not possible as there are no SPI Slave side Kernel API defined. A sample CAIF SPI Platform device can be found in .../Documentation/networking/caif/spi_porting.txt Signed-off-by: Sjur Braendeland Signed-off-by: David S. Miller commit 01eebb53a65996dfbfb892bf5eb21ae831fbe3a6 Author: Sjur Braendeland Date: Sat Jun 26 11:31:28 2010 +0000 caif: Kconfig and Makefile fixes Use "depends on" instead of "if" in Kconfig files. Fixed CAIF debug flag, and removed unnecessary clean-* options. Signed-off-by: Sjur Braendeland Signed-off-by: David S. Miller commit cfc9b16b75f2cef1e0b283fd2b52ddde568401ab Author: Casey Leedom Date: Fri Jun 25 12:15:33 2010 +0000 cxgb4vf: Stitch new T4 PCI-E SR-IOV Virtual Function driver into the build Stitch new T4 PCI-E SR-IOV Virtual Function driver into the build. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 84c6ade7a7542a42dd9a0e804b7aee05041570ce Author: Casey Leedom Date: Fri Jun 25 12:14:57 2010 +0000 cxgb4vf: Add new Makefile for T4 PCI-E SR-IOV Virtual Function driver cxgb4vf Add new Makefile for T4 PCI-E SR-IOV Virtual Function driver "cxgb4vf". Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit be839e391725d7f3a61714530d0e90d7a773a871 Author: Casey Leedom Date: Fri Jun 25 12:14:15 2010 +0000 cxgb4vf: Add main T4 PCI-E SR-IOV Virtual Function driver for cxgb4vf Add main T4 PCI-E SR-IOV Virtual Function driver for "cxgb4vf". Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit c6e0d91464da214081af546496dd3a4b6d19db70 Author: Casey Leedom Date: Fri Jun 25 12:13:28 2010 +0000 cxgb4vf: Add T4 Virtual Function Scatter-Gather Engine DMA code Add T4 Virtual Function Scatter-Gather Engine DMA code. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 16f8bd4be7541215fe9dd772ed8bccee9a864d9c Author: Casey Leedom Date: Fri Jun 25 12:12:54 2010 +0000 cxgb4vf: Add core T4 PCI-E SR-IOV Virtual Function hardware definitions and device communication code Add core T4 PCI-E SR-IOV Virtual Function hardware definitions and device communication code. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 7ee9ff94857dd27144521118173786a03d490efb Author: Casey Leedom Date: Fri Jun 25 12:11:46 2010 +0000 cxgb4vf: Add code to provision T4 PCI-E SR-IOV Virtual Functions with hardware resources Add code to provision T4 PCI-E SR-IOV Virtual Functions with hardware resources. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 17edf2594fef0c7ff186720915a9a73f77fee96b Author: Casey Leedom Date: Fri Jun 25 12:11:05 2010 +0000 cxgb4vf: Add new macros and definitions for hardware constants Add new macros and definitions for hardware constants. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 81323b74a83d4144367184926a80e030e2354d25 Author: Casey Leedom Date: Fri Jun 25 12:10:32 2010 +0000 cxgb4vf: update to latest T4 firmware API file Update to latest T4 firmware API file. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit 1704d74894912b8ecc3e95cecd7bde336a0b1bf2 Author: Casey Leedom Date: Fri Jun 25 12:09:38 2010 +0000 cxgb4vf: small changes to message processing structures/macros Split cpl_tx_pkt_lso into core message structure and encapsulated message, make RSPD_LEN macro match other response descriptor macros. Signed-off-by: Casey Leedom Signed-off-by: David S. Miller commit a71e8329170ece5f684aa363dfa69828cbfd5184 Author: David Daney Date: Thu Jun 24 09:14:48 2010 +0000 netdev: mdio-octeon: Fix section mismatch errors. We started getting: WARNING: vmlinux.o(.data+0x20bd0): Section mismatch in reference from the variable octeon_mdiobus_driver to the function .init.text:octeon_mdiobus_probe() This fixes it. Signed-off-by: David Daney Signed-off-by: David S. Miller commit d30b181bd6d047b39235a0d8e26de422d9d05b25 Author: David Daney Date: Thu Jun 24 09:14:47 2010 +0000 netdev: octeon_mgmt: Fix section mismatch errors. We started getting: WARNING: drivers/net/built-in.o(.data+0x10f0): Section mismatch in reference from the variable octeon_mgmt_driver to the function .init.text:octeon_mgmt_probe() This fixes it. Signed-off-by: David Daney Signed-off-by: David S. Miller commit 210d6de78c5d7c785fc532556cea340e517955e1 Author: Changli Gao Date: Thu Jun 24 16:25:12 2010 +0000 act_mirred: don't clone skb when skb isn't shared don't clone skb when skb isn't shared When the tcf_action is TC_ACT_STOLEN, and the skb isn't shared, we don't need to clone a new skb. As the skb will be freed after this function returns, we can use it freely once we get a reference to it. Signed-off-by: Changli Gao ---- include/net/sch_generic.h | 11 +++++++++-- net/sched/act_mirred.c | 6 +++--- 2 files changed, 12 insertions(+), 5 deletions(-) Signed-off-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit c4ead4c595cd54cf7b1a184d4f888ce0d7cce7d4 Author: Eric Dumazet Date: Thu Jun 24 01:00:22 2010 +0000 tcp: tso_fragment() might avoid GFP_ATOMIC We can pass a gfp argument to tso_fragment() and avoid GFP_ATOMIC allocations sometimes. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 9618e2ffd78aaa43a5815e1dd456b4dd95f9e53b Author: Eric Dumazet Date: Thu Jun 24 00:55:06 2010 +0000 vlan: 64 bit rx counters Use u64_stats_sync infrastructure to implement 64bit rx stats. (tx stats are addressed later) Signed-off-by: Eric Dumazet Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit bc66154efe163a80f269d448572f7906756e9338 Author: Eric Dumazet Date: Thu Jun 24 00:54:21 2010 +0000 macvlan: 64 bit rx counters Use u64_stats_sync infrastructure to implement 64bit stats. Signed-off-by: Eric Dumazet Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 33d91f00c73ba0012bce18c1690cb8313ca7adaa Author: Eric Dumazet Date: Thu Jun 24 00:54:06 2010 +0000 net: u64_stats_fetch_begin_bh() and u64_stats_fetch_retry_bh() - Must disable preemption in case of 32bit UP in u64_stats_fetch_begin() and u64_stats_fetch_retry() - Add new u64_stats_fetch_begin_bh() and u64_stats_fetch_retry_bh() for network usage, disabling BH on 32bit UP only. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 7a9b2d59507d85569b8a456688ef40cf2ac73e48 Author: Eric Dumazet Date: Thu Jun 24 00:52:37 2010 +0000 net: use this_cpu_ptr() use this_cpu_ptr(p) instead of per_cpu_ptr(p, smp_processor_id()) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b6b3ecc71a0664d44ed8d087d583aee98fbf492a Author: Eric Dumazet Date: Thu Jun 24 00:04:38 2010 +0000 net: u64_stats_sync improvements - Add a comment about interrupts: 6) If counter might be written by an interrupt, readers should block interrupts. - Fix a typo in sample of use. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit a095cfc40ec7ebe63e9532383c5b5c2a27b14075 Author: Ben Hutchings Date: Wed Jun 23 13:54:31 2010 +0000 3c59x: Specify window explicitly for access to windowed registers Currently much of the code assumes that a specific window has been selected, while a few functions save and restore the window. This makes it impossible to introduce fine-grained locking. Make those assumptions explicit by introducing wrapper functions to set the window and read/write a register. Use these everywhere except vortex_interrupt(), vortex_start_xmit() and vortex_rx(). These set the window just once, or not at all in the case of vortex_rx() as it should always be called from vortex_interrupt(). Cache the current window in struct vortex_private to avoid unnecessary hardware writes. Signed-off-by: Ben Hutchings Tested-by: Arne Nordmark [against 2.6.32] Signed-off-by: David S. Miller commit d2ef8590343f1f236f5f7f070fb4cd3f5c3ffb69 Author: Amerigo Wang Date: Mon Jun 21 22:50:17 2010 +0000 mlx4: add dynamic LRO disable support This patch adds dynamic LRO diable support for mlx4 net driver. It also fixes a bug of mlx4, which checks NETIF_F_LRO flag in rx path without rtnl lock. (I don't have mlx4 card, so only did compiling test. Anyone who wants to test this is more than welcome.) This is based on Neil's initial work too, and heavily modified based on Stanislaw's suggestions. Signed-off-by: WANG Cong Signed-off-by: Neil Horman Acked-by: Neil Horman Reviewed-by: Stanislaw Gruszka Cc: Ben Hutchings Signed-off-by: David S. Miller commit 958de1931cbfbcd9c0d425a2291a769a851f15d0 Author: Jon Mason Date: Thu Jun 24 18:45:10 2010 +0000 s2io: add dynamic LRO disable support This patch adds dynamic LRO disable support for s2io net driver, enables LRO by default, increases the driver version number, and corrects the name of the LRO modparm. This is mostly Wang's patch based on Neil's initial work, heavily modified based on Ramkrishna's suggestions. This has been tested on a Neterion Xframe adapter and verified via adapter LRO statistics. Signed-off-by: Jon Mason Signed-off-by: WANG Cong Signed-off-by: Neil Horman Acked-by: Neil Horman Reviewed-by: Stanislaw Gruszka Cc: Ramkrishna Vepa Signed-off-by: David S. Miller commit 1fd7f467127fcaea490451052fea22f234bbb206 Author: Kanigeri, Hari Date: Fri May 14 22:55:41 2010 +0000 omap iommu: update ducati mmu irq define name 2.6.34-rc6 kernel has the Ducati mmu irq define name changed, which is resulting in compilation error. Signed-off-by: Hari Kanigeri Signed-off-by: Hiroshi DOYU commit 0bbc6fcff6f34ee9cc388d1abc811ac09bf0ddaf Author: Hiroshi DOYU Date: Mon May 24 09:35:11 2010 +0300 omap iommu: Make omap-iommu.o built-in This is a platform device registration. Signed-off-by: Hiroshi DOYU commit 37b298100f0ff8b954217635504c860cdb040ccf Author: Hiroshi DOYU Date: Mon May 24 02:01:52 2010 +0000 omap iommu: move iommu_disable at fault to the above layer The function prefix "omap2_iommu_" indicates that the prefixed function belongs to "omap2_iommu_ops" to provide iommu basic functionalities for the above layers. It's better to avoid the prefixed function called in the same prefixed ones internally, like nested here. Now "iommu_disable" is called just after fault_isr() in the above layer. This is a little bit more sensible to keep the consistency of module layers. Signed-off-by: Hiroshi DOYU commit ddfa975a8cf66753a7d829bada753c3617628486 Author: Kanigeri, Hari Date: Mon May 24 02:01:51 2010 +0000 omap iommu: add functionality to get TLB miss interrupt In order to enable TLB miss interrupt, the TWL should be disabled. This patch provides the functionality to get the MMU fault interrupt for a TLB miss in the cases where the users are working with the locked TLB entries and with TWL disabled. New interface is added to select twl and to enable TLB miss interrupt. Signed-off-by: Hari Kanigeri Signed-off-by: Ramesh Gupta Signed-off-by: Hiroshi Doyu commit 993dd17e32cfb6cc058e1a4394dd113edf764186 Author: Kanigeri, Hari Date: Mon May 24 02:01:50 2010 +0000 omap iommu: update irq mask to be specific about twl and tlb Revise the IRQ mask definitions to handle the MMU faults related to TWL fault as well as TLB miss fault. Signed-off-by: Hari Kanigeri Signed-off-by: Hiroshi Doyu commit 124933599a11cab4b77a6d79d49312754e8ff88e Author: Hiroshi DOYU Date: Thu May 13 09:46:44 2010 +0300 omap iommu: Rename iopte_[p,v]addr -> iopte_page_[p,v]addr Follow Linux pagetable accessor name convention. Signed-off-by: Hiroshi DOYU commit a1a54456d08ff8d406b550b60f97088ac7401b8c Author: Hiroshi DOYU Date: Thu May 13 09:45:35 2010 +0300 omap iommu: Introduce iopgd_is_table MACRO A bit more strict comparison. Signed-off-by: Hiroshi DOYU commit a1d0ce8213e9ddf4046ef5ba95c55762d075f541 Author: Steven Rostedt Date: Tue Jun 8 11:22:06 2010 -0400 tracing: Use class->reg() for all registering of events Because kprobes and syscalls need special processing to register events, the class->reg() method was created to handle the differences. But instead of creating a default ->reg for perf and ftrace events, the code was scattered with: if (class->reg) class->reg(); else default_reg(); This is messy and can also lead to bugs. This patch cleans up this code and creates a default reg() entry for the events allowing for the code to directly call the class->reg() without the condition. Reported-by: Peter Zijlstra Acked-by: Peter Zijlstra Signed-off-by: Steven Rostedt commit d62f85d1e22e537192ce494c89540e1ac0d8bfc7 Author: Chase Douglas Date: Tue Jun 15 12:29:15 2010 -0400 tracing/function-graph: Use correct string size for snprintf The nsecs_str string is a local variable defined as: char nsecs_str[5]; It is possible for the snprintf call to use a size value larger than the size of the string. This should not cause a buffer overrun as it is written now due to the value for the string format "%03lu" can not be larger than 1000. However, this change makes it correct. By making the size correct we guard against potential future changes that could actually cause a buffer overrun. Signed-off-by: Chase Douglas LKML-Reference: <1276619355-18116-1-git-send-email-chase.douglas@canonical.com> [ added 'UL' to number 8 to fix gcc warning comparing it to sizeof() ] Signed-off-by: Steven Rostedt commit 67ead0a6ceb001b4cb891d782e440f0e79493ba2 Author: Li Zefan Date: Mon May 24 16:25:13 2010 +0800 tracing: Remove open-coded __trace_add_event_call() Let trace_module_add_events() and event_trace_init() call __trace_add_event_call(). Signed-off-by: Li Zefan LKML-Reference: <4BFA37E9.1020106@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit ffb9f99528574ab9a55d4c8fd22e9d3ca49efa86 Author: Li Zefan Date: Mon May 24 16:24:52 2010 +0800 tracing: Remove redundant raw_init callbacks raw_init callback is optional. Signed-off-by: Li Zefan LKML-Reference: <4BFA37D4.7070500@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit c9d932cf8a1c608b676021aef0189376ba6ef151 Author: Li Zefan Date: Mon May 24 16:24:28 2010 +0800 tracing: Remove test of NULL define_fields callback Every event (or event class) has it's define_fields callback, so the test is redundant. Signed-off-by: Li Zefan LKML-Reference: <4BFA37BC.8080707@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit 210f766915207636acccba7bec42248bfe882998 Author: Li Zefan Date: Mon May 24 16:23:35 2010 +0800 tracing: Convert more sched events to DEFINE_EVENT Convert sched_wait_task to DEFINE_EVENT, and save ~1K: text data bss dec hex filename 104595 9424 4992 119011 1d0e3 kernel/sched.o.orig 103619 9344 4992 117955 1ccc3 kernel/sched.o No change in functionality. Signed-off-by: Li Zefan LKML-Reference: <4BFA3787.2040800@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit 363d0f6490f319d0dd69b7ec7503c5f6cbab36d9 Author: Li Zefan Date: Mon May 24 16:23:15 2010 +0800 tracing: Convert some timer events to DEFINE_EVENT Use DECLARE_EVENT_CLASS, and save ~2.3K: text data bss dec hex filename 7018823 2031888 7251132 16301843 f8bf13 vmlinux.o.orig 7016727 2031696 7251132 16299555 f8b623 vmlinux.o 5 events are converted: timer_class: timer_init, timer_expire_exit, timer_cancel hrtimer_class: hrtimer_init, hrtimer_cancel No change in functionality. Signed-off-by: Li Zefan LKML-Reference: <4BFA3773.3060200@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit 8728fe501ed562c1b46dde3c195eadec77bca033 Author: Li Zefan Date: Mon May 24 16:22:49 2010 +0800 tracing: Don't allocate common fields for every trace events Every event has the same common fields, so it's a big waste of memory to have a copy of those fields for every event. Signed-off-by: Li Zefan LKML-Reference: <4BFA3759.30105@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit c9642c49aae1272d7c24008a40ae614470b957a6 Author: Li Zefan Date: Mon May 24 16:22:30 2010 +0800 tracing: Use a global field list for all syscall exit events All syscall exit events have the same fields. The kernel size drops 2.5K: text data bss dec hex filename 7018612 2034376 7251132 16304120 f8c7f8 vmlinux.o.orig 7018612 2031888 7251132 16301632 f8be40 vmlinux.o Signed-off-by: Li Zefan LKML-Reference: <4BFA3746.8070100@cn.fujitsu.com> Signed-off-by: Steven Rostedt commit f384c954c9fe3d3c6fce5ae66b67f2ddd947d098 Merge: 9a15a07 5904b3b Author: Thomas Gleixner Date: Mon Jun 28 22:33:13 2010 +0200 Merge branch 'linus' into perf/core Reason: Further changes conflict with upstream fixes Signed-off-by: Thomas Gleixner commit e3873444990dd6f8a095d1f72b5ad45192f8c506 Author: Grant Likely Date: Fri Jun 18 11:09:59 2010 -0600 of/irq: Move irq_of_parse_and_map() to common code Merge common code between PowerPC and Microblaze. SPARC implements irq_of_parse_and_map(), but the implementation is different, so it does not use this code. Signed-off-by: Grant Likely Acked-by: Benjamin Herrenschmidt Cc: Michal Simek Cc: "David S. Miller" Cc: Stephen Rothwell Cc: Jeremy Kerr commit b505ff5e7291cca6379549297e3852ce3622d550 Author: Grant Likely Date: Fri Jun 18 11:09:59 2010 -0600 of: kill struct of_device Now that the device tree node pointer has been moved out of struct of_device and into the common struct device, there isn't anything unique about of_device anymore. In fact, there isn't much need for a separate of_bus when all busses have access to OF style probing. arch/powerpc and arch/microblaze are moving away from using the of_bus and using the regular platform bus instead for mmio devices. This patch makes of_device the same as platform_device as a stepping stone in migrating of_platform_drivers over to the platform bus. Signed-off-by: Grant Likely Acked-by: David S. Miller Cc: Michal Simek Cc: Benjamin Herrenschmidt Cc: Stephen Rothwell commit 1636f8ac2b08410df4766449f7c86b912443cd99 Author: Grant Likely Date: Fri Jun 18 11:09:58 2010 -0600 sparc/of: Move of_device fields into struct pdev_archdata This patch moves SPARC architecture specific data members out of struct of_device and into the pdev_archdata structure. The reason for this change is to unify the struct of_device definition amongst all the architectures. It also remvoes the .sysdata, .slot, .portid and .clock_freq properties because they aren't actually used by anything. A subsequent patch will replace struct of_device entirely with struct platform_device and the of_platform support code will share common routines with the platform bus (but the bus instances themselves can remain separate). This patch also adds 'struct resources *resource' and num_resources to match the fields defined in struct platform_device. After this change, 'struct platform_device' can be used as a drop-in replacement for 'struct of_platform'. This change is in preparation for merging the of_platform_bus_type with the platform_bus_type. Signed-off-by: Grant Likely Acked-by: David S. Miller Cc: Stephen Rothwell commit 38bdb650f902d275d6b2f9c2d8247fd960525583 Author: Felix Fietkau Date: Fri Jun 25 01:44:33 2010 +0200 mac80211: fix the for_each_sta_info macro Because of an ambiguity in the for_each_sta_info macro, it can currently only be used if the third parameter is set to 'sta'. Fix this by renaming the parameter to '_sta'. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 78c4653a2274479547e259e1f416d2b3d04c42a8 Author: Felix Fietkau Date: Fri Jun 25 01:26:16 2010 +0200 ath9k: fix retry count for A-MPDU rate control status reports The 'bf_retries' field of the ath_buf structure was used for both software retries (AMPDU subframes) and hardware retries (legacy frames). This led to a wrong retry count being reported for the A-MPDU rate control stats. This patch changes the code to no longer use bf_retries for reporting retry counts, but instead always using the real on-chip retry count from the ath_tx_status. Additionally, if the first subframe of an A-MPDU was not acked, the tx status report is submitted along with the first acked subframe, which may not contain the correct rates in the tx info. This is easily corrected by saving the tx rate info before looping over subframes, and then copying it back once the A-MPDU status report is submitted. In my tests this change improves throughput visibly. Signed-off-by: Felix Fietkau Reported-by: Björn Smedman Cc: stable@kernel.org Signed-off-by: John W. Linville commit 6665b54e79d52c813914481783d82398ca2451f6 Author: Bruno Randolf Date: Mon Jun 28 11:01:48 2010 +0900 ath5k: fix antenna div gc for <= AR5K_SREV_PHY_2413 In commit 39d5b2c83ca8904b6826a0713263a4e5a9c0730a "ath5k: update AR5K_PHY_RESTART_DIV_GC values to match masks" i introduced a regression on PHY chips older than AR5K_SREV_PHY_5413, which caused signal values to be about 10dB less that before. This patch reverts the AR5K_PHY_RESTART_DIV_GC values to the same values which were effectively used before (without the bitmask mistake). This brings signal levels back to normal on these PHY chips. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 55d02a47deaa5c4616e9e70e227ea833e263b858 Author: Magnus Damm Date: Fri Jun 25 18:32:54 2010 +0900 b43: Add SDIO_DEVICE() for EW-CG1102GC This patch enables the EW-CG1102GC SDIO card in the b43 driver. b43-sdio mmc0:0001:1: Chip ID 14e4:4318 ssb: Core 0 found: ChipCommon (cc 0x800, rev 0x0D, vendor 0x4243) ssb: Core 1 found: IEEE 802.11 (cc 0x812, rev 0x09, vendor 0x4243) ssb: Core 2 found: PCI (cc 0x804, rev 0x0C, vendor 0x4243) ssb: Core 3 found: PCMCIA (cc 0x80D, rev 0x07, vendor 0x4243) b43-phy0: Broadcom 4318 WLAN found (core revision 9) b43-phy0 debug: Found PHY: Analog 3, Type 2, Revision 7 b43-phy0 debug: Found Radio: Manuf 0x17F, Version 0x2050, Revision 8 Tested with openfwwf-5.2 using a SuperH SDHI host controller. Signed-off-by: Magnus Damm Signed-off-by: John W. Linville commit 5ed3bc7288487bd4f891f420a07319e0b538b4fe Author: John W. Linville Date: Thu Jun 24 14:38:30 2010 -0400 mac80211: use netif_receive_skb in ieee80211_tx_status callpath This avoids the extra queueing from calling netif_rx. Signed-off-by: John W. Linville commit 5548a8a1138c96e3e6f803c9f2c1f9389c2f0ee6 Author: John W. Linville Date: Thu Jun 24 14:25:56 2010 -0400 mac80211: use netif_receive_skb in ieee80211_rx callpath This avoids the extra queueing from calling netif_rx. Signed-off-by: John W. Linville commit 1796b983cc4cbbed5e9e478b03591609a2c21987 Author: Dan Carpenter Date: Mon Jun 28 11:34:24 2010 -0700 Input: lm8323 - fix error handling in lm8323_probe() We reuse the "i" variable later on so if we goto fail3 or fail4 then "i" will be set to the wrong thing and cause a crash. Signed-off-by: Dan Carpenter Signed-off-by: Dmitry Torokhov commit 28ed684fa3c0a75b59a00e209afef98aff7fa617 Author: Grazvydas Ignotas Date: Mon Jun 28 10:59:32 2010 -0700 Input: gpio-keys - add gpiolib debounce support gpiolib now has debounce support added in .35, so let's make use of it. This allows to use hardware GPIO debouncing on some platforms like OMAP. In case gpiolib debounce setup fails for some GPIO, the driver will fall back to timer based debouncing, which is what it used before. Signed-off-by: Grazvydas Ignotas Signed-off-by: Dmitry Torokhov commit 64b386ea16112564e0b93473e2c347125effb6b2 Author: Richard Nauber Date: Mon Jun 28 18:54:25 2010 +0200 HID: add proper support for Elecom BM084 bluetooth mouse This patch removes the annoying feature of Elecoms BM084 to constantly scroll to the right. The device can be found at: http://www.dealextreme.com/details.dx/sku.15402 Signed-off-by: Richard Nauber [jkosina@suse.cz: fix build error] Signed-off-by: Jiri Kosina commit df506f2c0023380ffa67a946fa36eee4150773a3 Author: Petr Štetiar Date: Mon Jun 28 09:38:54 2010 -0700 HID - blacklist ET&T TC4UH touchscreen controller The device is handled by usbtouchscreen driver. Signed-off-by: Petr Štetiar Acked-by: Jiri Kosina Signed-off-by: Dmitry Torokhov commit 38771bb440e8c01d07627abc39ac28acbf450cbe Author: Petr Štetiar Date: Mon Jun 28 09:38:48 2010 -0700 Input: usbtouchscreen - add support for ET&T TC4UM touchscreen controller This patch adds support for the ET&T TC4UM 4-wire USB touchscreen controller and tries to reuse the bits for TC5UH controller in kernel already. Data interface is same. Tested-by: Roger Pueyo Centelles Signed-off-by: Petr Štetiar Signed-off-by: Dmitry Torokhov commit 1e9dea2a60b71ea7a9ac2936bed920d39f662e52 Author: Nicolas Palix Date: Sun Jun 13 09:26:34 2010 +0200 Add support for the C variable in the coccicheck script This patch makes it possible to use the Coccinelle checker with the C variable of the build system. To check only newly edited code, the following command may be used: 'make C={1,2} CHECK="scripts/coccicheck"' This runs every semantic patch in scripts/coccinelle by default. The COCCI variable may additionally be used to only apply a single semantic patch. Signed-off-by: Nicolas Palix Signed-off-by: Julia Lawall Signed-off-by: Michal Marek commit 7eb9282cd0efac08b8377cbd5037ba297c77e3f7 Author: Patrick McHardy Date: Mon Jun 28 14:16:08 2010 +0200 netfilter: ipt_LOG/ip6t_LOG: add option to print decoded MAC header The LOG targets print the entire MAC header as one long string, which is not readable very well: IN=eth0 OUT= MAC=00:15:f2:24:91:f8:00:1b:24:dc:61:e6:08:00 ... Add an option to decode known header formats (currently just ARPHRD_ETHER devices) in their individual fields: IN=eth0 OUT= MACSRC=00:1b:24:dc:61:e6 MACDST=00:15:f2:24:91:f8 MACPROTO=0800 ... IN=eth0 OUT= MACSRC=00:1b:24:dc:61:e6 MACDST=00:15:f2:24:91:f8 MACPROTO=86dd ... The option needs to be explicitly enabled by userspace to avoid breaking existing parsers. Signed-off-by: Patrick McHardy commit cf377eb4aeded926375d4d0fe0b66ba95f0521e1 Author: Patrick McHardy Date: Mon Jun 28 14:12:41 2010 +0200 netfilter: ipt_LOG/ip6t_LOG: remove comparison within loop Remove the comparison within the loop to print the macheader by prepending the colon to all but the first printk. Based on suggestion by Jan Engelhardt . Signed-off-by: Patrick McHardy commit 2174efb6a22a0002f2002b708a28d3adfabb3bc5 Author: Kulikov Vasiliy Date: Mon Jun 28 13:59:28 2010 +0200 Documentation/sysctl/vm.txt typo Fix trivial typo: duplicated word. Signed-off-by: Kulikov Vasiliy Acked-by: Randy Dunlap Signed-off-by: Jiri Kosina commit e956b4b7e342c24ca754e0276f4f5fb1e890dfd9 Author: Matthew Whitworth Date: Sun Jun 27 14:34:30 2010 +0100 Fix comment spelling errors in ncpfs/inode.c Signed-off-by: Jiri Kosina commit 7804302b14032d357d889e4a23e463eb6a6c5136 Author: Anatolij Gustschin Date: Mon Jun 28 01:25:19 2010 -0700 Input: ads7846 - allow specifying irq trigger type in platform data On some platforms, for example with GPIO interrupts on mpc5121, it is not possible to configure falling edge interrupts. Specifying irq trigger type in platform data structure allows using ads7846 driver on such platforms. Signed-off-by: Anatolij Gustschin Signed-off-by: Dmitry Torokhov commit c8f2edc56acf0a55ede777c07314c9744bb723be Author: Ping Cheng Date: Mon Jun 28 01:10:51 2010 -0700 Input: wacom - add support for DTU2231 and DTU1631 Add support for the two new devices: DTU2231 and DTU1631. Signed-off-by: Ping Cheng Signed-off-by: Dmitry Torokhov commit 1fcb8bb631831c9018a1f7f77b93f9f02e122fc5 Author: Axel Lin Date: Mon Jun 28 01:10:01 2010 -0700 Input: wistron_btns - fix a memory leak in wb_module_init error path select_keymap() calls copy_keymap() to allocate a memory for keymap. This patch adds a missing kfree(keymap) in wb_module_init error path. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 08b450988905505d12f7671bc24b8da73631d327 Author: David Dillow Date: Sun Jun 27 00:07:57 2010 +0200 sis7019: increase reset delays A few boards using this controller are reported to need a little extra time during their reset cycle. Reported-by: Michael Goeke Signed-off-by: Dave Dillow Signed-off-by: Jaroslav Kysela commit 3a3d5fd125f82200019ef406c4d51ba4d9f0a604 Author: David Dillow Date: Sun Jun 27 00:04:32 2010 +0200 sis7019: fix capture issues with multiple periods per buffer When using a timing voice to clock out periods during capture, the driver would slowly loose synchronization and never catch up, eventually reaching a point where it no longer generated interrupts. To avoid this situation, the virtual period clocking was changed to shorten the next timing period when our timing voice falls too far behind the capture voice. In addition, the first virtual period for the timing voice was slightly too short, causing the timing voice to initially be ahead of the capture voice. While tracking down this problem, I noticed that the expected sample offset was being incorrectly initialized, causing an overrun to be incorrectly reported when the timing voice happened to be perfectly synchronized. Reported-by: Hans Schou Signed-off-by: Dave Dillow Signed-off-by: Jaroslav Kysela commit 5daeba34d2aab669aea07abee13d53cd116578fb Author: David Dillow Date: Sun Jun 27 00:13:20 2010 +0200 ALSA: pcm_lib: avoid timing jitter in snd_pcm_read/write() When using poll() to wait for the next period -- or avail_min samples -- one gets a consistent delay for each system call that is usually just a little short of the selected period time. However, When using snd_pcm_read/write(), one gets a jittery delay that alternates between less than a millisecond and approximately two period times. This is caused by snd_pcm_lib_{read,write}1() transferring any available samples to the user's buffer and adjusting the application pointer prior to sleeping to the end of the current period. When the next period interrupt occurs, there is then less than avail_min samples remaining to be transferred in the period, so we end up sleeping until a second period occurs. This is solved by using runtime->twake as the number of samples needed for a wakeup in addition to selecting the proper wait queue to wake in snd_pcm_update_state(). This requires twake to be non-zero when used by snd_pcm_lib_{read,write}1() even if avail_min is zero. Signed-off-by: Dave Dillow Signed-off-by: Jaroslav Kysela commit 099a19d91ca429944743d51bef8fee240e94d8e3 Author: Tejun Heo Date: Sun Jun 27 18:50:00 2010 +0200 percpu: allow limited allocation before slab is online This patch updates percpu allocator such that it can serve limited amount of allocation before slab comes online. This is primarily to allow slab to depend on working percpu allocator. Two parameters, PERCPU_DYNAMIC_EARLY_SIZE and SLOTS, determine how much memory space and allocation map slots are reserved. If this reserved area is exhausted, WARN_ON_ONCE() will trigger and allocation will fail till slab comes online. The following changes are made to implement early alloc. * pcpu_mem_alloc() now checks slab_is_available() * Chunks are allocated using pcpu_mem_alloc() * Init paths make sure ai->dyn_size is at least as large as PERCPU_DYNAMIC_EARLY_SIZE. * Initial alloc maps are allocated in __initdata and copied to kmalloc'd areas once slab is online. Signed-off-by: Tejun Heo Cc: Christoph Lameter commit 4ba6ce250e406b20bcd6f0f3aed6b3d80965e6c2 Author: Tejun Heo Date: Sun Jun 27 18:49:59 2010 +0200 percpu: make @dyn_size always mean min dyn_size in first chunk init functions In pcpu_build_alloc_info() and pcpu_embed_first_chunk(), @dyn_size was ssize_t, -1 meant auto-size, 0 forced 0 and positive meant minimum size. There's no use case for forcing 0 and the upcoming early alloc support always requires non-zero dynamic size. Make @dyn_size always mean minimum dyn_size. While at it, make pcpu_build_alloc_info() static which doesn't have any external caller as suggested by David Rientjes. Signed-off-by: Tejun Heo Cc: David Rientjes commit 172d69e63c7f1e8300d0e1c1bbd8eb0f630faa15 Author: Florian Westphal Date: Mon Jun 21 11:48:45 2010 +0000 syncookies: add support for ECN Allows use of ECN when syncookies are in effect by encoding ecn_ok into the syn-ack tcp timestamp. While at it, remove a uneeded #ifdef CONFIG_SYN_COOKIES. With CONFIG_SYN_COOKIES=nm want_cookie is ifdef'd to 0 and gcc removes the "if (0)". Signed-off-by: Florian Westphal Signed-off-by: David S. Miller commit 734f614bc1e7c6bf075d201f6bd9a555b8b4a984 Author: Florian Westphal Date: Mon Jun 21 11:48:44 2010 +0000 syncookies: do not store rcv_wscale in tcp timestamp As pointed out by Fernando Gont there is no need to encode rcv_wscale into the cookie. We did not use the restored rcv_wscale anyway; it is recomputed via tcp_select_initial_window(). Thus we can save 4 bits in the ts option space by removing rcv_wscale. In case window scaling was not supported, we set the (invalid) wscale value 0xf. Signed-off-by: Florian Westphal Signed-off-by: David S. Miller commit 9587c6ddd452314e8ed5707ad832a507a030ef57 Author: Eric Dumazet Date: Wed Jun 23 02:51:25 2010 +0000 ipv6: remove ipv6_statistics commit 9261e5370112 (ipv6: making ip and icmp statistics per/namespace) forgot to remove ipv6_statistics variable. commit bc417d99bf27 (ipv6: remove stale MIB definitions) took care of icmpv6_statistics & icmpv6msg_statistics Signed-off-by: Eric Dumazet CC: Denis V. Lunev CC: Alexey Dobriyan CC: Hideaki YOSHIFUJI Signed-off-by: David S. Miller commit 1823e4c80eeae2a774c75569ce3035070e5ee009 Author: Eric Dumazet Date: Tue Jun 22 20:58:41 2010 +0000 snmp: add align parameter to snmp_mib_init() In preparation for 64bit snmp counters for some mibs, add an 'align' parameter to snmp_mib_init(), instead of assuming mibs only contain 'unsigned long' fields. Callers can use __alignof__(type) to provide correct alignment. Signed-off-by: Eric Dumazet CC: Herbert Xu CC: Arnaldo Carvalho de Melo CC: Hideaki YOSHIFUJI CC: Vlad Yasevich Signed-off-by: David S. Miller commit 5eaa0bd81f93225b6d1972b373ed00ca763052b2 Author: Eric Dumazet Date: Tue Jun 22 12:44:11 2010 +0000 loopback: use u64_stats_sync infrastructure Commit 6b10de38f0ef (loopback: Implement 64bit stats on 32bit arches) introduced 64bit stats in loopback driver, using a private seqcount and private helpers. David suggested to introduce a generic infrastructure, added in (net: Introduce u64_stats_sync infrastructure) This patch reimplements loopback 64bit stats using the u64_stats_sync infrastructure. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 4b4194c40f4ac8d03a700845f8978cba53246b5a Author: Eric Dumazet Date: Tue Jun 22 07:43:15 2010 +0000 arp: RCU change in arp_solicit() Avoid two atomic ops in arp_solicit() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 59b80802a8a18b64d38b51aa168253684b2649d5 Author: Gerrit Renker Date: Tue Jun 22 01:14:35 2010 +0000 dccp: make implementation of Syn-RTT symmetric This patch is thanks to Andre Noll who reported the issue and helped testing. The Syn-RTT sampled during the initial handshake currently only works for the client sending the DCCP-Request. TFRC penalizes the absence of an RTT sample with a very slow initial speed (1 packet per second), which delays slow-start significantly, resulting in sluggish performance. This patch mirrors the "Syn RTT" principle by adding a timestamp also onto the DCCP-Response, producing an RTT sample when the (Data)Ack completing the handshake arrives. Also changed the documentation to 'TFRC' since Syn RTTs are also used by CCID-4. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit a7d13fbf85375698879d16f118af77fbfcc2de44 Author: Gerrit Renker Date: Tue Jun 22 01:14:34 2010 +0000 dccp: remove unused function argument This removes an unused 'sk' argument from several option-inserting functions. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit 87cad5c385877ce45244886748564672fd6db035 Author: Eric Benard Date: Fri Jun 18 04:19:54 2010 +0000 net/fec: clean suspend/resume Commit 59d4289b83b11379d867e2f7146904b19cc96404 converted fec to dev_pm_ops but didn't update the suspend/resume functions thus leading to the following warning : "initialization from incompatible pointer type" when CONFIG_PM is set. This patch also fixe a few indentation and style around CONFIG_PM area. Signed-off-by: Eric Bénard Cc: netdev@vger.kernel.org Cc: davem@davemloft.net Cc: amit.kucheria@canonical.com Cc: s.hauer@pengutronix.de Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: David S. Miller commit d05f6cf01cc5241ddaca6e122021e64441fe08f3 Author: Divy Le Ray Date: Mon Jun 21 15:54:53 2010 +0000 cxgb3: request 7.10 firmware The driver requests FW 7.10 Bump up driver version. Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit 17acad30bff462ba32cbce30fc74164c341075df Author: Divy Le Ray Date: Mon Jun 21 15:54:48 2010 +0000 cxgb3: update FW to 7.10 Update FW to 7.10 Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit f9467eaec36a4ee13f5d282d2512f48e118a3120 Author: Joe Perches Date: Mon Jun 21 12:29:14 2010 +0000 net/core/pktgen.c: Use pr_ Add pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove "pktgen: " from formats Convert printks to pr_ Added func_enter() for debugging Moved version to end of string at module_init Coalesced long formats Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 01f2f3f6ef4d076c0c10a8a7b42624416d56b523 Author: Hagen Paul Pfeifer Date: Sat Jun 19 17:05:36 2010 +0000 net: optimize Berkeley Packet Filter (BPF) processing Gcc is currenlty not in the ability to optimize the switch statement in sk_run_filter() because of dense case labels. This patch replace the OR'd labels with ordered sequenced case labels. The sk_chk_filter() function is modified to patch/replace the original OPCODES in a ordered but equivalent form. gcc is now in the ability to transform the switch statement in sk_run_filter into a jump table of complexity O(1). Until this patch gcc generates a sequence of conditional branches (O(n) of 567 byte .text segment size (arch x86_64): 7ff: 8b 06 mov (%rsi),%eax 801: 66 83 f8 35 cmp $0x35,%ax 805: 0f 84 d0 02 00 00 je adb 80b: 0f 87 07 01 00 00 ja 918 811: 66 83 f8 15 cmp $0x15,%ax 815: 0f 84 c5 02 00 00 je ae0 81b: 77 73 ja 890 81d: 66 83 f8 04 cmp $0x4,%ax 821: 0f 84 17 02 00 00 je a3e 827: 77 29 ja 852 829: 66 83 f8 01 cmp $0x1,%ax [...] With the modification the compiler translate the switch statement into the following jump table fragment: 7ff: 66 83 3e 2c cmpw $0x2c,(%rsi) 803: 0f 87 1f 02 00 00 ja a28 809: 0f b7 06 movzwl (%rsi),%eax 80c: ff 24 c5 00 00 00 00 jmpq *0x0(,%rax,8) 813: 44 89 e3 mov %r12d,%ebx 816: e9 43 03 00 00 jmpq b5e 81b: 41 89 dc mov %ebx,%r12d 81e: e9 3b 03 00 00 jmpq b5e Furthermore, I reordered the instructions to reduce cache line misses by order the most common instruction to the start. Signed-off-by: Hagen Paul Pfeifer Signed-off-by: David S. Miller commit bd97a63f7d9892b4536f331d263c2695cc52d08c Author: Ben Hutchings Date: Fri Jun 25 07:06:29 2010 +0000 sfc: Log clearer error messages for hardware monitor Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 477e54eba4fd092704e50e65ade79463bd17fa85 Author: Ben Hutchings Date: Fri Jun 25 07:05:56 2010 +0000 sfc: Use Toeplitz IPv4 hash for RSS and hash insertion Insertion of the Falcon hash is unreliable. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 5d3a6fca955c18b066f01233f9faeb351c0d966b Author: Ben Hutchings Date: Fri Jun 25 07:05:43 2010 +0000 sfc: Move siena_nic_data::ipv6_rss_key to efx_nic::rx_hash_key We will use this hash key for Toeplitz IPv4 hashing too. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 604f6049ba2af86fe361d4cc320443d35b232df1 Author: Ben Hutchings Date: Fri Jun 25 07:05:33 2010 +0000 sfc: Fix reading of inserted hash The hash appears immediately before the packet data, not at the beginning of the buffer. This means we can easily use negative offsets from the start of packet data, so adjust the data and length at the top of __efx_rx_packet() instead of wherever we consume the hash. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 29046f9b1e36f6e3332ce2d8e366005fd177b37a Author: Vasanthy Kolluri Date: Thu Jun 24 10:52:26 2010 +0000 enic: Clean ups 1) Update copyright 2) Fix hardware queue descriptor field size CQ_ENET_RQ_DESC_FCOE_SOF_BITS 3) Include rtnetlink.h instead of if_link.h 4) Selectively flush writes to interrupt mask register 5) Use pci_enable_device_mem 6) Remove unused variables and header files 7) Fix size mismatch between memory alloc and free operations of a variable 8) Check for non null arguments to vic_provinfo_alloc Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit 506e1198413d28446f9a98792b2b38b6bf5f8295 Author: Vasanthy Kolluri Date: Thu Jun 24 10:52:08 2010 +0000 enic: Bug Fix: Handle surprise hardware removals Handle surprise hardware removals gracefully during devcmd issue and init, cleanup of queues. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit 1825aca667196f75b193e2d509ea96ffdc8db0ca Author: Vasanthy Kolluri Date: Thu Jun 24 10:51:59 2010 +0000 enic: Feature Add: Add loopback capability to enic devices Hardware has the loopback capability to queue the packets transmitted from a device to the receive queue of the same device. enic now supports the loopback capability. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit b5bab85c15ed3d1ae7f917a7c077086ac6c04572 Author: Vasanthy Kolluri Date: Thu Jun 24 10:51:51 2010 +0000 enic: Use receive queue buffer blocks of 32/64 entries Change the receive queue buffer allocations into blocks of 32 entries when ring size is less than 64, otherwise use 64 entries per block. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit 70feadf36df94dc0dc2f32fec4c131ecd75344f2 Author: Vasanthy Kolluri Date: Thu Jun 24 10:51:43 2010 +0000 enic: Add new firmware devcmds Add new firmware devcmds - CMD_PROXY_BY_BDF, CMD_PACKET_FILTER_ALL, CMD_ENABLE_WAIT. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit a7a79debcca02fbf908c0abed8d8fb25d0e51b48 Author: Vasanthy Kolluri Date: Thu Jun 24 10:50:56 2010 +0000 enic: Use (netdev|dev|pr)_ macro helpers for logging Replace all printk routines with the (netdev|dev|pr)_ macros that provide verbose logs. Signed-off-by: Joe Perches Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit 383ab92f11dd78d365ed05cf4d83ca2acc069a1f Author: Vasanthy Kolluri Date: Thu Jun 24 10:50:12 2010 +0000 enic: Clean up: Add wrapper routines for firmware devcmd calls Add wrapper routines that issue devcmds to firmware and ensure that a devcmd lock is held for each devcmd call. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit 99ef563901a18d44a6c2eadd2b958e2e83aeca51 Author: Vasanthy Kolluri Date: Thu Jun 24 10:50:00 2010 +0000 enic: Use a lighter reset operation for enic devices The port profile information for a dynamic enic device is set by the upper layers, that are oblivious to the device reset operation. We do not want a reset operation erase the network state of a dynamic enic device as there is no way to set up the port profile information again. Hence a lighter reset operation called hang reset is used. Hang reset, unlike soft reset does not reset the network state and resets the host side state only. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit f8cac14acff870203ea7f61f1a92c5486d1774fa Author: Vasanthy Kolluri Date: Thu Jun 24 10:49:51 2010 +0000 enic: Bug Fix: Change hardware ingress vlan rewrite mode The current ingress vlan rewrite mode setting lets the hardware strip off the tag control information of a packet received on native vlan. As a result, the priority bits are also lost. The fix is to change the ingress vlan rewrite mode setting such that the complete tag control information is retained for packets that belong to native vlan. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit 88132f55d74fdd97a7d459007b2bbb59e850f8c0 Author: Vasanthy Kolluri Date: Thu Jun 24 10:49:25 2010 +0000 enic: Feature Add: Replace LRO with GRO enic now uses the GRO mechanism instead of LRO to pass skbs to upper layers. Signed-off-by: Scott Feldman Signed-off-by: Vasanthy Kolluri Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller commit 72b8a169dbfa74e7d1d08b97435e61e711d7be0e Author: Michael Chan Date: Thu Jun 24 14:58:42 2010 +0000 cnic: Update version to 2.1.3. Signed-off-by: David S. Miller commit b177a5d5d876965b42788f3a05197ef385c84dcf Author: Michael Chan Date: Thu Jun 24 14:58:41 2010 +0000 cnic: Further unify kcq handling code. This eliminates some of the duplicate code for the various devices that require the same basic kcq handling. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 644b9d4f8b8d74f4d87f14dede5e331555d3e701 Author: Michael Chan Date: Thu Jun 24 14:58:40 2010 +0000 cnic: Restructure kcq processing. By doing more work in the common function cnic_get_kcqes(), and making full use of the kcq_info structure. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit e6c2889478f04b30e5a71d753734644c579472fa Author: Michael Chan Date: Thu Jun 24 14:58:39 2010 +0000 cnic: Unify kcq allocation for all devices. By creating a common data stucture kcq_info for all devices, the kcq (kernel completion queue) for all devices can be allocated by common code. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 66fee9ed03a4413ea054e437b65af6fd3583b4db Author: Michael Chan Date: Thu Jun 24 14:58:38 2010 +0000 cnic: Unify IRQ code for all hardware types. By creating a common cnic_doirq(). Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 520efdf44f0140eef9018518fdae5edfc86f3b6c Author: Michael Chan Date: Thu Jun 24 14:58:37 2010 +0000 cnic: Fine-tune CID memory space calculation. The current code makes assumptions about the CID (context ID) memory space and starting CID that may not be always correct when firmware changes. In particular, BNX2_ISCSI_START_CID may not always be fixed. We now calculate cp->max_cid_space and cp->iscsi_start_cid dynamically instead of using fixed constants. The unused cp->max_iscsi_conn is also eliminated. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 679db794679baae96ce0a2257daaeaedef4e8352 Author: Wey-Yi Guy Date: Mon Jun 21 12:15:17 2010 -0700 iwlwifi: add disable rf calibration support for 6000g2a and 6000g2b Radio calibration (chain noise and sensitivity) should be allowed to be disabled from debugfs if compiled with CONFIG_IWLWIFI_DEBUGFS. For both 6000g2a and 6000g2b, the parameters are missing in "cfg", which cause user can not disable the radio calibration manually; add the support to allow the operation. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 2b2129f15919e4921894f8d2af4834dc854977cd Author: Reinette Chatre Date: Fri Jun 18 16:40:21 2010 -0700 iwlagn: reduce severity of disconnected antennas warning This message is encountered regularly and we need to take a closer look at the circumstances under which it is printed before presenting errors to users. Signed-off-by: Reinette Chatre commit cfecc6b492162fb49209a83dc207f182b87ea27a Author: Wey-Yi Guy Date: Fri Jun 18 11:33:15 2010 -0700 iwlwifi: turn on RTS/CTS after aggregation become operational If RTS/CTS protection is needed for HT, wait until get operational notification from mac80211, then inform uCode to switch to RTS/CTS through RXON command. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 0ab84cff8befbea342576cd6dc21026d5c9244df Author: Johannes Berg Date: Fri Jun 18 01:38:56 2010 -0700 iwlwifi: read rfkill during resume When resuming from hibernate or suspend, the status of the rfkill switch isn't known since it might have been toggled while the system was asleep. Therefore, we need to read out the status at resume time to make sure the system knows about an up-to-date status. Reported-by: Mark Tung Tested-by: Mark Tung Signed-off-by: Johannes Berg Signed-off-by: Reinette Chatre commit 278c2f6faafebe28b9776918ce5fbaef9795c141 Author: Daniel Halperin Date: Mon Jun 14 13:10:29 2010 -0700 iwlwifi: update LQ for bcast station on channel change The rate table in the bcast LQ is computed only when the station is allocated, and chooses the lowest rate for the band. Because of when this occurs, this is the 2.4 GHz band and uses the 0x420a (CCK, 1 Mbps) rate. In 5 GHz beaconing mode, this rate will prevent beacons from being sent and any other packets from being received. We can fix this by re-initializing the bcast station's LQ command when the channel is changed. Signed-off-by: Daniel Halperin Signed-off-by: Reinette Chatre commit 680788aca3dcc24b932eb7a4219ab921ac5bf2d0 Author: Wey-Yi Guy Date: Thu Jun 17 15:25:00 2010 -0700 iwlwifi: add a mechanism to disable plcp error checking For some devices, especially the upcoming new devices, the plcp error rate is different. Before the correct error rate can be determine, also for the debugging purpose; add the mechanism to disable plcp error checking which cause radio reset happen. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 178d1596073e81927a24221dba6c55ae0048a207 Author: Wey-Yi Guy Date: Tue Jun 15 16:14:53 2010 -0700 iwlwifi: enable DC calibration based on config parameter Different devices have different calibration requirement, some need DC calibration and some don't; make it a cfg parameter for easy management. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 4e3243f549540235d180e446715a14c1b5827902 Author: Wey-Yi Guy Date: Fri Jun 18 11:33:16 2010 -0700 iwlwifi: name change from signal protection flag This bit need to be set for both RTS/CTS or CTS-to-self protection, if CTS-to-self is used, then uCode will check the RXON_FLG_SELF_CTS_EN status. Change the name from TX_CMD_FLG_RTS_CTS_MSK to TX_CMD_FLAG_PROT_REQUIRE_MSK to match the behavior of the bit setting. Also update comments to reflect which hardware uses which of the TX command flags. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit e691e19e05c2cef72cd7f81bcae4195c81d4bf51 Merge: 47399f1 062bee4 Author: Reinette Chatre Date: Fri Jun 25 14:47:02 2010 -0700 Merge branch 'wireless-2.6' into wireless-next-2.6 commit b51cae21ee66f77a368428e6bdf75a0c012c9fd7 Author: Chris Metcalf Date: Fri Jun 25 14:54:16 2010 -0400 Add wait4() back to the set of syscalls. The initial pass at the generic ABI assumed that wait4() could be easily expressed using waitid(). Although it's true that wait4() can be built on waitid(), it's awkward enough that it makes more sense to continue to include wait4 in the generic syscall ABI. Since there is already a deprecated wait4 in the ABI, this change converts that wait4 into old_wait, and puts wait4 in the next available slot for new supported syscalls, after the platform-specific syscalls at number 260. Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit 9c78965ca18594fe0a34a1a1b13781b10f85e4bc Merge: 139ef32 7e27d6e Author: Chris Metcalf Date: Fri Jun 25 14:38:16 2010 -0400 Merge branch 'master' into for-linus commit 12513b76a021e5b41a9d5d5981da75dfd6480890 Author: H Hartley Sweeten Date: Fri Jun 25 10:33:34 2010 -0700 Staging: dt3155: remove unused 32-bit and 8-bit global registers All of the board 32-bit registers and 8-bit i2c registers are either read before writing to them or they are just written to with a new value. There is no reason to keep a 'local' copy of any of them. As a first step to removing them, get rid of all the ones that are not used in the driver. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit 7d0f940ee0de7dc6355473e428335a4d74de43ad Author: H Hartley Sweeten Date: Fri Jun 25 09:59:33 2010 -0700 Staging: dt3155_drv.c: dereference dt3155_status[] Where used, dereference the global symbol dt3155_status[] as a local pointer. This improves the readability of the code and reduces the overall length of some of the really long lines. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit 4d8152be1804c21ff1698f62a788679664363ed0 Author: Randy Dunlap Date: Thu Jun 24 15:11:04 2010 -0700 Staging: solo: depends on SND Fix 56 undefined references to snd_*() functions. First 5 are: drivers/built-in.o: In function `solo_g723_exit': (.text+0xa4a4aa): undefined reference to `snd_card_free' drivers/built-in.o: In function `solo_snd_pcm_init': solo6010-g723.c:(.text+0xa4a677): undefined reference to `snd_pcm_new' solo6010-g723.c:(.text+0xa4a6b1): undefined reference to `snd_pcm_set_ops' solo6010-g723.c:(.text+0xa4a74d): undefined reference to `snd_pcm_lib_preallocate_pages_for_all' drivers/built-in.o: In function `solo_g723_init': (.text+0xa4a7f6): undefined reference to `snd_card_create' Signed-off-by: Randy Dunlap Cc: Ben Collins Signed-off-by: Greg Kroah-Hartman commit eeba34d97a2e391f85b30c88ba8d4b0f51f9f8c3 Author: Javier Martinez Canillas Date: Fri Jun 25 00:40:48 2010 -0400 Staging: spectra: remove non existing blk_fs_request wrapper The spectra driver doesn't compile with today linux-next The problem is that it tries to use a blk_fs_request macro. Searching for this macro I saw that it used to exist in linux/blkdev.h as #define blk_fs_request(rq) ((rq)->cmd_type == REQ_TYPE_FS) This patch solves the issue eliminating the unnecessary (and now inexistent) wrapper Signed-off-by: Javier Martinez Canillas Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 3afbe13cbe02ca9911435b274a256f5502bb36de Author: Mark Date: Fri Jun 25 13:15:26 2010 +0100 Staging: comedi: Coding style cleanups in adv_pci_dio.c This patch fixes up many coding style issues in adv_pci_dio.c found by checkpatch.pl Signed-off-by: Mark Rankilor Signed-off-by: Greg Kroah-Hartman commit 5e95efecb501fd93c7eed75d405fff1423c56239 Author: Charles Clément Date: Fri Jun 25 10:23:07 2010 -0700 Staging: vt6655: Add TODO entries on x86-64 pointers and .data size As suggested by Jiri Slaby. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit fe4f34bde28f5a9f3793cced5b4029eda5b78be2 Author: Charles Clément Date: Fri Jun 25 10:48:53 2010 -0700 Staging: vt6655: remove PUINT typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 671386bb23c57e5448f386a41101ed65ad1d488c Author: Michael Hennerich Date: Fri Jun 25 08:44:10 2010 -0700 Input: adxl34x - add support for ADXL346 orientation sensing Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger Signed-off-by: Dmitry Torokhov commit e27c729219ad24c8ac9a4b34cf192e56917565c5 Author: Michael Hennerich Date: Fri Jun 25 08:44:10 2010 -0700 Input: add driver for ADXL345/346 Digital Accelerometers This is a driver for the ADXL345/346 Three-Axis Digital Accelerometers. Signed-off-by: Michael Hennerich Signed-off-by: Chris Verges Signed-off-by: Luotao Fu Signed-off-by: Barry Song Signed-off-by: Mike Frysinger Signed-off-by: Dmitry Torokhov commit 9a15a07fe2175dc25cd928a354b3839f562ac8cc Merge: ffabd99 830f4c8 Author: Ingo Molnar Date: Fri Jun 25 16:16:44 2010 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core commit d70a011dbbaa6335a19deb63ec3eb613f48faafd Author: Tim Gardner Date: Fri Jun 25 14:46:56 2010 +0200 netfilter: complete the deprecation of CONFIG_NF_CT_ACCT CONFIG_NF_CT_ACCT has been deprecated for awhile and was originally scheduled for removal by 2.6.29. Removing support for this config option also stops this deprecation warning message in the kernel log. [ 61.669627] nf_conntrack version 0.5.0 (16384 buckets, 65536 max) [ 61.669850] CONFIG_NF_CT_ACCT is deprecated and will be removed soon. Please use [ 61.669852] nf_conntrack.acct=1 kernel parameter, acct=1 nf_conntrack module option or [ 61.669853] sysctl net.netfilter.nf_conntrack_acct=1 to enable it. Signed-off-by: Tim Gardner [Patrick: changed default value to 0] Signed-off-by: Patrick McHardy commit a8756201ba4189bca3ee1a6ec4e290f467ee09ab Author: Tim Gardner Date: Fri Jun 25 14:44:07 2010 +0200 netfilter: xt_connbytes: Force CT accounting to be enabled Check at rule install time that CT accounting is enabled. Force it to be enabled if not while also emitting a warning since this is not the default state. This is in preparation for deprecating CONFIG_NF_CT_ACCT upon which CONFIG_NETFILTER_XT_MATCH_CONNBYTES depended being set. Added 2 CT accounting support functions: nf_ct_acct_enabled() - Get CT accounting state. nf_ct_set_acct() - Enable/disable CT accountuing. Signed-off-by: Tim Gardner Acked-by: Jan Engelhardt Signed-off-by: Patrick McHardy commit 9c1be7e8cb1e33d4d7d4bed40466ee358fdf5a34 Author: Eric Bénard Date: Sat Jun 19 10:47:56 2010 +0200 ASoC: clean i.MX Kconfig Signed-off-by: Eric Bénard Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit e4295b40ee64da20a3e31921745baba65e10ab36 Author: Vladimir Zapolskiy Date: Thu Jun 24 17:38:51 2010 +0400 ASoC: uda134x: fix bias level setup on initialization On initialization ADC/DAC are enabled only for UDA1341, that's why bias_level shall be set to off explicitly, otherwise dapm is misinformed about bias_level on startup. Signed-off-by: Vladimir Zapolskiy Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit cc3202f5da3c81a99c5f3a605df527da7a77eed3 Author: Vladimir Zapolskiy Date: Thu Jun 24 17:38:50 2010 +0400 ASoC: uda134x: replace a macro with a value in platform struct. This change wipes out a hardcoded macro, which enables codec bias level control. Now is_powered_on_standby value shall be used instead. Signed-off-by: Vladimir Zapolskiy Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 830f4c803196eec181e209110885c4ac130f3805 Author: Gui Jianfeng Date: Fri Jun 25 10:15:28 2010 +0800 perf kvm: Get rid of unused guest_kallsyms guest_kallsyms is redundant here, remove it. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Yanmin Zhang LKML-Reference: <4C241140.9090008@cn.fujitsu.com> Signed-off-by: Gui Jianfeng Signed-off-by: Arnaldo Carvalho de Melo commit 39c9cf07077146b14ab077a0e27c869c6f0e6199 Author: Ben Hutchings Date: Wed Jun 23 11:31:28 2010 +0000 sfc: Record hardware RX hash on each skb where possible Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 2822235278c6385191a590c63098e728d0062987 Author: Ben Hutchings Date: Wed Jun 23 11:30:35 2010 +0000 sfc: Disable setting feature flags that are not implemented Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit c5d5f5fdc76baf0b8d074338c94bd443635ef9d0 Author: Ben Hutchings Date: Wed Jun 23 11:30:26 2010 +0000 sfc: Replace EFX_DRIVER_NAME with KBUILD_MODNAME Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 62776d034cc40c49bafdb3551a6ba35f78e3f08d Author: Ben Hutchings Date: Wed Jun 23 11:30:07 2010 +0000 sfc: Implement message level control Replace EFX_ERR() with netif_err(), EFX_INFO() with netif_info(), EFX_LOG() with netif_dbg() and EFX_TRACE() and EFX_REGDUMP() with netif_vdbg(). Replace EFX_ERR_RL(), EFX_INFO_RL() and EFX_LOG_RL() using explicit calls to net_ratelimit(). Implement the ethtool operations to get and set message level flags, and add a 'debug' module parameter for the initial value. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 0c605a2061670412d3b5580c92f1e161b1a693d2 Author: Ben Hutchings Date: Wed Jun 23 11:29:24 2010 +0000 sfc: Log MTD errors using partition name, not just net device name Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 5b98c1bfcfc745604985e6a50ef7481c39a9fcea Author: Ben Hutchings Date: Mon Jun 21 03:06:53 2010 +0000 sfc: Implement ethtool register dump operation Signed-off-by: Ben Hutchings Acked-by: Jeff Garzik Signed-off-by: David S. Miller commit 565b7b2d2e632b5792879c0c9cccdd9eecd31195 Author: Konstantin Khorenko Date: Thu Jun 24 21:54:58 2010 -0700 tcp: do not send reset to already closed sockets i've found that tcp_close() can be called for an already closed socket, but still sends reset in this case (tcp_send_active_reset()) which seems to be incorrect. Moreover, a packet with reset is sent with different source port as original port number has been already cleared on socket. Besides that incrementing stat counter for LINUX_MIB_TCPABORTONCLOSE also does not look correct in this case. Initially this issue was found on 2.6.18-x RHEL5 kernel, but the same seems to be true for the current mainstream kernel (checked on 2.6.35-rc3). Please, correct me if i missed something. How that happens: 1) the server receives a packet for socket in TCP_CLOSE_WAIT state that triggers a tcp_reset(): Call Trace: [] tcp_reset+0x12f/0x1e8 [] tcp_rcv_state_process+0x1c0/0xa08 [] tcp_v4_do_rcv+0x310/0x37a [] tcp_v4_rcv+0x74d/0xb43 [] ip_local_deliver_finish+0x0/0x259 [] ip_local_deliver+0x200/0x2f4 [] ip_rcv+0x64c/0x69f [] netif_receive_skb+0x4c4/0x4fa [] process_backlog+0x90/0xec [] net_rx_action+0xbb/0x1f1 [] __do_softirq+0xf5/0x1ce [] handle_IRQ_event+0x56/0xb0 [] call_softirq+0x1c/0x28 [] do_softirq+0x2c/0x85 [] do_IRQ+0x149/0x152 [] ret_from_intr+0x0/0xa [] __handle_mm_fault+0x6cd/0x1303 [] __handle_mm_fault+0x5a2/0x1303 [] cache_free_debugcheck+0x21f/0x22e [] do_page_fault+0x49a/0x7dc [] thread_return+0x89/0x174 [] audit_syscall_exit+0x341/0x35c [] error_exit+0x0/0x84 tcp_rcv_state_process() ... // (sk_state == TCP_CLOSE_WAIT here) ... /* step 2: check RST bit */ if(th->rst) { tcp_reset(sk); goto discard; } ... --------------------------------- tcp_rcv_state_process tcp_reset tcp_done tcp_set_state(sk, TCP_CLOSE); inet_put_port __inet_put_port inet_sk(sk)->num = 0; sk->sk_shutdown = SHUTDOWN_MASK; 2) After that the process (socket owner) tries to write something to that socket and "inet_autobind" sets a _new_ (which differs from the original!) port number for the socket: Call Trace: [] inet_bind_hash+0x33/0x5f [] inet_csk_get_port+0x216/0x268 [] inet_autobind+0x22/0x8f [] inet_sendmsg+0x27/0x57 [] do_sock_write+0xae/0xea [] sock_writev+0xdc/0xf6 [] _spin_lock_irqsave+0x9/0xe [] __pollwait+0x0/0xdd [] default_wake_function+0x0/0xe [] autoremove_wake_function+0x0/0x2e [] do_readv_writev+0x163/0x274 [] thread_return+0x13a/0x174 [] tcp_poll+0x0/0x1c9 [] audit_syscall_entry+0x180/0x1b3 [] sys_writev+0x49/0xe4 [] tracesys+0xd5/0xe0 3) sendmsg fails at last with -EPIPE (=> 'write' returns -EPIPE in userspace): F: tcp_sendmsg1 -EPIPE: sk=ffff81000bda00d0, sport=49847, old_state=7, new_state=7, sk_err=0, sk_shutdown=3 Call Trace: [] tcp_sendmsg+0xcb/0xe87 [] release_sock+0x10/0xae [] vgacon_cursor+0x0/0x1a7 [] inet_autobind+0x8b/0x8f [] do_sock_write+0xae/0xea [] sock_writev+0xdc/0xf6 [] _spin_lock_irqsave+0x9/0xe [] __pollwait+0x0/0xdd [] default_wake_function+0x0/0xe [] autoremove_wake_function+0x0/0x2e [] do_readv_writev+0x163/0x274 [] thread_return+0x13a/0x174 [] tcp_poll+0x0/0x1c9 [] audit_syscall_entry+0x180/0x1b3 [] sys_writev+0x49/0xe4 [] tracesys+0xd5/0xe0 tcp_sendmsg() ... /* Wait for a connection to finish. */ if ((1 << sk->sk_state) & ~(TCPF_ESTABLISHED | TCPF_CLOSE_WAIT)) { int old_state = sk->sk_state; if ((err = sk_stream_wait_connect(sk, &timeo)) != 0) { if (f_d && (err == -EPIPE)) { printk("F: tcp_sendmsg1 -EPIPE: sk=%p, sport=%u, old_state=%d, new_state=%d, " "sk_err=%d, sk_shutdown=%d\n", sk, ntohs(inet_sk(sk)->sport), old_state, sk->sk_state, sk->sk_err, sk->sk_shutdown); dump_stack(); } goto out_err; } } ... 4) Then the process (socket owner) understands that it's time to close that socket and does that (and thus triggers sending reset packet): Call Trace: ... [] dev_queue_xmit+0x343/0x3d6 [] ip_output+0x351/0x384 [] dst_output+0x0/0xe [] ip_queue_xmit+0x567/0x5d2 [] vprintk+0x21/0x33 [] check_poison_obj+0x2e/0x206 [] poison_obj+0x36/0x45 [] tcp_send_active_reset+0x15/0x14d [] dbg_redzone1+0x1c/0x25 [] tcp_send_active_reset+0x15/0x14d [] cache_alloc_debugcheck_after+0x189/0x1c8 [] tcp_transmit_skb+0x764/0x786 [] tcp_send_active_reset+0xf9/0x14d [] tcp_close+0x39a/0x960 [] inet_release+0x69/0x80 [] sock_release+0x4f/0xcf [] sock_close+0x2c/0x30 [] __fput+0xac/0x197 [] filp_close+0x59/0x61 [] sys_close+0x85/0xc7 [] tracesys+0xd5/0xe0 So, in brief: * a received packet for socket in TCP_CLOSE_WAIT state triggers tcp_reset() which clears inet_sk(sk)->num and put socket into TCP_CLOSE state * an attempt to write to that socket forces inet_autobind() to get a new port (but the write itself fails with -EPIPE) * tcp_close() called for socket in TCP_CLOSE state sends an active reset via socket with newly allocated port This adds an additional check in tcp_close() for already closed sockets. We do not want to send anything to closed sockets. Signed-off-by: Konstantin Khorenko Signed-off-by: David S. Miller commit 7a938f80264f2cbfb0c0841b450eab42a8093281 Author: Dmitry Baryshkov Date: Wed Jun 16 23:02:24 2010 +0000 broadcom: Add 5241 support This patch adds the 5241 PHY ID to the broadcom module. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: David S. Miller commit fcb26ec5b18d88bb22366799d056dc3630d0e895 Author: Dmitry Baryshkov Date: Wed Jun 16 23:02:23 2010 +0000 broadcom: move all PHY_ID's to header Move all PHY IDs to brcmphy.h header for completeness and unification of code. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: David S. Miller commit deb0d7c740a008a4e26806317497549b0e8907eb Author: Andrew Morton Date: Thu Jun 24 20:33:04 2010 -0700 net: fix "netpoll: Allow netpoll_setup/cleanup recursion" Remove rtnl_unlock() which had no corresponding rtnl_lock(). Signed-off-by: Andrew Morton Acked-by: Herbert Xu Signed-off-by: David S. Miller commit 69a4af606ed4836faa2ec69b1d217f384b8235e7 Author: Xiaolong CHEN Date: Thu Jun 24 19:10:40 2010 -0700 Input: adp5588-keys - support GPI events for ADP5588 devices A column or row configured as a GPI can be programmed to be part of the key event table and therefore also capable of generating a key event interrupt. A key event interrupt caused by a GPI follows the same process flow as a key event interrupt caused by a key press. GPIs configured as part of the key event table allow single key switches and other GPI interrupts to be monitored. As part of the event table, GPIs are represented by the decimal value 97 (0x61 or 1100001) through the decimal value 114 (0x72 or 1110010). See table below for GPI event number assignments for rows and columns. GPI Event Number Assignments for Rows Row0 Row1 Row2 Row3 Row4 Row5 Row6 Row7 97 98 99 100 101 102 103 104 GPI Event Number Assignments for Cols Col0 Col1 Col2 Col3 Col4 Col5 Col6 Col7 Col8 Col9 105 106 107 108 109 110 111 112 113 114 Signed-off-by: Xiaolong Chen Signed-off-by: Yuanbo Ye Signed-off-by: Tao Hu Acked-by: Michael Hennerich Signed-off-by: Dmitry Torokhov commit ffabd99e051e73344efe4e53d58f11643f180512 Author: Frederic Weisbecker Date: Thu May 27 16:27:47 2010 +0200 perf: Report lost events in perf trace debug mode Account and report lost events in perf trace debugging mode, useful to check the reliability of the traces. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Masami Hiramatsu Cc: Tom Zanussi commit 6fcf7ddbb73d677b3bb7b16f0fff1419cb8349e9 Author: Frederic Weisbecker Date: Thu May 27 15:46:25 2010 +0200 perf: Don't print traces when debugging ordering Errors due to ordering bugs are easily lost in the middle of traces. When we are in this mode, don't print the traces so that we don't miss the debugging messages. But display a comforting message if we didn't encounter any ordering problem. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras commit aa59a48596d8358a908bfb458300b5625cd47785 Author: Frederic Weisbecker Date: Thu Jun 24 21:36:19 2010 +0200 perf: Don't use 4 bytes as a default instruction breakpoint length 4 bytes is fine as a default access for data breakpoints. But instruction breakpoints should take the native pointer length, otherwise we get a -EINVAL in x86-64. Signed-off-by: Frederic Weisbecker Cc: Will Deacon Cc: Prasad Cc: Mahesh Salgaonkar Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Jason Wessel commit f7809daf64bf119fef70af172db6a0636fa51f92 Author: Frederic Weisbecker Date: Thu Jun 24 10:00:24 2010 +0200 x86: Support for instruction breakpoints Instruction breakpoints need to have a specific length of 0 to be working. Bring this support but also take care the user is not trying to set an unsupported length, like a range breakpoint for example. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Paul Mackerras Cc: Prasad Cc: Mahesh Salgaonkar Cc: Will Deacon Cc: Jason Wessel commit 0c4519e825c9e2b6a8310deff8582f8c35bfbba9 Author: Frederic Weisbecker Date: Thu Jun 24 21:21:27 2010 +0200 x86: Set resume bit before returning from breakpoint exception Instruction breakpoints trigger before the instruction executes, and returning back from the breakpoint handler brings us again to the instruction that breakpointed. This naturally bring to a breakpoint recursion. To solve this, x86 has the Resume Bit trick. When the cpu flags have the RF flag set, the next instruction won't trigger any instruction breakpoint, and once this instruction is executed, RF is cleared back. This let's us jump back to the instruction that triggered the breakpoint without recursion. Use this when an instruction breakpoint triggers. Signed-off-by: Frederic Weisbecker Cc: Will Deacon Cc: Prasad Cc: Mahesh Salgaonkar Cc: Paul Mackerras Cc: Ingo Molnar Cc: Jason Wessel commit 5cfaf214856eb934759ae500a0b812dd06a00bd9 Author: Nobuhiro Iwamatsu Date: Wed Jun 23 09:17:53 2010 +0900 perf: Fix argument of perf_arch_fetch_caller_regs "struct regs" was set to argument of perf_arch_fetch_caller_regs off-case. It should be "struct pt_regs". This fixes various build errors in archs that have CONFIG_PERF_EVENTS=y but no overriden implementation of perf_arch_fetch_caller_regs. cc1: warnings being treated as errors In file included from include/linux/ftrace_event.h:8, from include/trace/syscall.h:6, from include/linux/syscalls.h:75, from arch/sh/kernel/sys_sh32.c:9: include/linux/perf_event.h:937: error: 'struct regs' declared inside parameter list include/linux/perf_event.h:937: error: its scope is only this definition or declaration, which is probably not what you want include/linux/perf_event.h: In function 'perf_fetch_caller_regs': include/linux/perf_event.h:952: error: passing argument 1 of 'perf_arch_fetch_caller_regs' from incompatible pointer type Signed-off-by: Nobuhiro Iwamatsu Reported-by: Stephen Rothwell Cc: Paul Mackerras Cc: David Miller Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo LKML-Reference: Signed-off-by: Frederic Weisbecker commit 45a73372efe4a63f44aa2e1125d4a777c2fdc8d8 Author: Frederic Weisbecker Date: Wed Jun 23 23:00:37 2010 +0200 hw_breakpoints: Fix per task breakpoint tracking Freeing a perf event can happen in several ways. A task calls perf_event_exit_task() right before exiting. This helper will detach all the events from the task context and queue their removal through free_event() if they are child tasks. The task also loses its context reference there. Releasing the breakpoint slot from the constraint table is made from free_event() that calls release_bp_slot(). We count the number of breakpoints this task is running by looking at the task's perf_event_ctxp and iterating through its attached events. But at this time, the reference to this context has been cleaned up already. So looking at the event->ctx instead of task->perf_event_ctxp to count the remaining breakpoints should solve the problem. At least it would for child breakpoints, but not for parent ones. If the parent exits before the child, it will remove all its events from the context but free_event() will be called later, on fd release time. And checking the number of breakpoints the task has attached to its context at this time is unreliable as all events have been removed from the context. To solve this, we keep track of the list of per task breakpoints. On top of it, we maintain our array of numbers of breakpoints used by the tasks. We use the context address as a task id. So, instead of looking at the number of events attached to a context, we walk through our list of per task breakpoints and count the number of breakpoints that use the same ctx than the one to be reserved or released from the constraint table, and update the count on top of this result. In the meantime it solves a bad refcounting, it also solves a warning, reported by Paul. Badness at /home/paulus/kernel/perf/kernel/hw_breakpoint.c:114 NIP: c0000000000cb470 LR: c0000000000cb46c CTR: c00000000032d9b8 REGS: c000000118e7b570 TRAP: 0700 Not tainted (2.6.35-rc3-perf-00008-g76b0f13 ) MSR: 9000000000029032 CR: 44004424 XER: 000fffff TASK = c0000001187dcad0[3143] 'perf' THREAD: c000000118e78000 CPU: 1 GPR00: c0000000000cb46c c000000118e7b7f0 c0000000009866a0 0000000000000020 GPR04: 0000000000000000 000000000000001d 0000000000000000 0000000000000001 GPR08: c0000000009bed68 c00000000086dff8 c000000000a5bf10 0000000000000001 GPR12: 0000000024004422 c00000000ffff200 0000000000000000 0000000000000000 GPR16: 0000000000000000 0000000000000000 0000000000000018 00000000101150f4 GPR20: 0000000010206b40 0000000000000000 0000000000000000 00000000101150f4 GPR24: c0000001199090c0 0000000000000001 0000000000000000 0000000000000001 GPR28: 0000000000000000 0000000000000000 c0000000008ec290 0000000000000000 NIP [c0000000000cb470] .task_bp_pinned+0x5c/0x12c LR [c0000000000cb46c] .task_bp_pinned+0x58/0x12c Call Trace: [c000000118e7b7f0] [c0000000000cb46c] .task_bp_pinned+0x58/0x12c (unreliable) [c000000118e7b8a0] [c0000000000cb584] .toggle_bp_task_slot+0x44/0xe4 [c000000118e7b940] [c0000000000cb6c8] .toggle_bp_slot+0xa4/0x164 [c000000118e7b9f0] [c0000000000cbafc] .release_bp_slot+0x44/0x6c [c000000118e7ba80] [c0000000000c4178] .bp_perf_event_destroy+0x10/0x24 [c000000118e7bb00] [c0000000000c4aec] .free_event+0x180/0x1bc [c000000118e7bbc0] [c0000000000c54c4] .perf_event_release_kernel+0x14c/0x170 Reported-by: Paul Mackerras Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Prasad Cc: Mahesh Salgaonkar Cc: Will Deacon Cc: Jason Wessel commit 3fc9b584c28095fe0d46cfb8bddafdf93947042e Author: Charles Clément Date: Thu Jun 24 11:02:27 2010 -0700 Staging: vt6655: remove BYTE typedef Replace all occurrences with unsigned char type. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 2986db5fd31e312206d3ebfa4786aac04bdbe486 Author: Charles Clément Date: Thu Jun 24 11:02:26 2010 -0700 Staging: vt6655: remove WORD typedef Replace all occurrences with unsigned short type. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 0f4c60d61e9c10a0733eacd650c101189bdf75cd Author: Charles Clément Date: Thu Jun 24 11:02:25 2010 -0700 Staging: vt6655: remove DWORD typedef Replace all occurrences with unsigned long type, except for pointer fields that should be u32 in packed structures and 8-byte-aligned 8 byte long structure QWORD. Thanks to Jiri Slaby for pointing out that simply replacing by unsigned long is wrong on x86-64 arch. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 17701d14b613b8495cdd8b803c22d3f33d1face8 Author: H Hartley Sweeten Date: Thu Jun 24 09:31:13 2010 -0700 Staging: d53155_drv.c: cleanup fbuffer usage The global symbol dt3155_fbuffer[], declared in dt3155_isr.c, is really just a pointer to dt3155_status[].fbuffer. To improve readability, make some of the really long lines shorter, and make the buffer access more consistent, use &dt3155_status[].fbuffer to access the buffer structure. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit 9f79211cae935347891b918d345618eaca41d0b5 Author: Randy Dunlap Date: Wed Jun 23 20:28:15 2010 -0700 Staging: fix wlan-ng depends drivers/built-in.o: In function `wlan_free_wiphy': (.text+0x3f5eb5): undefined reference to `wiphy_unregister' drivers/built-in.o: In function `wlan_free_wiphy': (.text+0x3f5ec4): undefined reference to `wiphy_free' drivers/built-in.o: In function `wlan_create_wiphy': (.text+0x3f5f76): undefined reference to `wiphy_new' drivers/built-in.o: In function `wlan_create_wiphy': (.text+0x3f6024): undefined reference to `wiphy_register' drivers/built-in.o: In function `prism2_roamed': (.text+0x3f61f7): undefined reference to `cfg80211_roamed' drivers/built-in.o: In function `prism2_disconnected': (.text+0x3f6223): undefined reference to `cfg80211_disconnected' drivers/built-in.o: In function `prism2_connect_result': (.text+0x3f626d): undefined reference to `cfg80211_connect_result' drivers/built-in.o: In function `prism2_connect': (.text+0x3f62b6): undefined reference to `ieee80211_frequency_to_channel' drivers/built-in.o: In function `prism2_scan': (.text+0x3f6679): undefined reference to `ieee80211_frequency_to_channel' drivers/built-in.o: In function `prism2_scan': (.text+0x3f6873): undefined reference to `__ieee80211_get_channel' drivers/built-in.o: In function `prism2_scan': (.text+0x3f68cc): undefined reference to `cfg80211_inform_bss' drivers/built-in.o: In function `prism2_scan': (.text+0x3f6942): undefined reference to `cfg80211_scan_done' Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 8946a0864848fdbc6544b9e1e6cb81b7cb93026b Author: Randy Dunlap Date: Wed Jun 23 20:27:09 2010 -0700 Staging: zram: fix build errors, depends on BLOCK Fix 49 zram build errors in one swoop. Examples: drivers/staging/zram/zram_drv.c:225: error: dereferencing pointer to incomplete type drivers/staging/zram/zram_drv.c:226: error: implicit declaration of function 'bio_for_each_segment' drivers/staging/zram/zram_drv.c:226: error: expected ';' before '{' token drivers/staging/zram/zram_drv.c:281: error: implicit declaration of function 'bio_endio' drivers/staging/zram/zram_drv.c:285: error: implicit declaration of function 'bio_io_error' drivers/staging/zram/zram_drv.c:545: error: implicit declaration of function 'set_capacity' drivers/staging/zram/zram_drv.c:548: error: implicit declaration of function 'queue_flag_set_unlocked' drivers/staging/zram/zram_drv.c:548: error: 'QUEUE_FLAG_NONROT' undeclared (first use in this function) drivers/staging/zram/zram_drv.c:548: error: dereferencing pointer to incomplete type Signed-off-by: Randy Dunlap Cc: Nitin Gupta Signed-off-by: Greg Kroah-Hartman commit 4722a26cc61983295ad8e7a552999ec847aa0abd Author: Andres More Date: Wed Jun 23 20:38:10 2010 -0300 staging: vt6656: replace IS_ETH_ADDRESS_EQUAL with compare_ether_addr Code cleanup, removed custom macro to compare Ethernet addresses. Some checkpatch warnings on indentation were not resolved. The return value of compare_ether_addr was reversed, something to consider. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit cbf05091e53de6a879d16fcdb88ed9ab26295448 Author: Omar Ramirez Luna Date: Thu Jun 24 16:40:07 2010 +0300 staging: ti dspbridge: enable driver building Add Kconfig + Makefile for TI's DSP Bridge driver and expose it to the staging menu. For now, have tidspbridge depend on ARCH_OMAP3. That dependency should be relaxed as soon as required cleanups are applied. Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 47399f1a7d2059c89df7a1116024d0cd9bc240fa Author: Vasanthakumar Thiagarajan Date: Thu Jun 24 04:09:27 2010 -0700 ath9k: Wakeup the chip in an appropriate place in ath_paprd_calibrate() Move ath9k_ps_wakeup() down just before accessing hw registers. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 78a181725162c33cdc8907c3c224bd8b6b628f0e Author: Vasanthakumar Thiagarajan Date: Thu Jun 24 02:42:46 2010 -0700 ath9k: Remove unused paprd_txok Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit ca369eb494e45a3e3b8960775f88125fe1fbb0f2 Author: Vasanthakumar Thiagarajan Date: Thu Jun 24 02:42:44 2010 -0700 ath9k: Fix bug in paprd It is possbile that the transmission of paprd test frame might not get completed in 100ms if tx is stuck. Freeing this skb upon timeout in ath_paprd_calibrate() will result in accessing already freed memory when the associated pending buffer is drained in txq. This patch fixes this issue. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 75f64dd54a185150ebfc45e99351c890d4a2252f Author: Ondrej Zary Date: Wed Jun 23 12:57:15 2010 +0200 rt2500usb: fallback to SW encryption for TKIP+AES HW crypto in rt2500usb does not seem to support keys with different ciphers, which breaks TKIP+AES mode. Fall back to software encryption to fix it. This should fix long-standing problems with rt2500usb and WPA, such as: http://rt2x00.serialmonkey.com/phpBB/viewtopic.php?f=4&t=4834 https://bugzilla.redhat.com/show_bug.cgi?id=484888 Also tested that it does not break WEP, TKIP-only and AES-only modes. Signed-off-by: Ondrej Zary Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 98d2ff8bec82fc35fe2008a187a5fef9241dab10 Author: Juuso Oikarinen Date: Wed Jun 23 12:12:38 2010 +0300 nl80211: Add option to adjust transmit power This patch adds transmit power setting type and transmit power level attributes to NL80211_CMD_SET_WIPHY in order to facilitate adjusting of the transmit power level of the device. The added attributes allow selection of automatic, limited or fixed transmit power level, with the level definable in signed mBm format. Signed-off-by: Juuso Oikarinen Signed-off-by: John W. Linville commit fa61cf70a6ae1089e459e4b59b2e8d8e90d8535e Author: Juuso Oikarinen Date: Wed Jun 23 12:12:37 2010 +0300 cfg80211/mac80211: Update set_tx_power to use mBm instead of dBm units In preparation for a TX power setting interface in the nl80211, change the .set_tx_power function to use mBm units instead of dBm for greater accuracy and smaller power levels. Also, already in advance move the tx_power_setting enumeration to nl80211. This change affects the .tx_set_power function prototype. As a result, the corresponding changes are needed to modules using it. These are mac80211, iwmc3200wifi and rndis_wlan. Cc: Samuel Ortiz Cc: Jussi Kivilinna Signed-off-by: Juuso Oikarinen Acked-by: Samuel Ortiz Acked-by: Jussi Kivilinna Signed-off-by: John W. Linville commit a185045c8da1ec6627236b4ade0d949b15da43b3 Author: Sebastian Smolorz Date: Tue Jun 22 16:55:17 2010 +0200 at76c50x-usb: Extract bssid from authentication frame The driver at76c50x-usb is unable to authenticate with an AP since kernel 2.6.31 for the following reason: The join command of the firmware needs to be sent with the right bssid before any transmission can start. Before kernel 2.6.31 mac80211 informed its drivers about the changing bssid early enough for at76c50x-usb but during the development of 2.6.31 mac80211's behaviour changed. Now a new bssid is set after the association. This patch changes the tx routine of the driver at76c50x-usb in such a way that a new bssid is extracted from an authentication frame and the join command with that bssid is processed. Signed-off-by: Sebastian Smolorz Signed-off-by: John W. Linville commit 41b4b289adaaf53e563a2cde17c45c492608edb0 Author: Sebastian Smolorz Date: Tue Jun 22 16:53:37 2010 +0200 at76c50x-usb: Move function at76_join() several lines up This patch does a simple code move of at76_join() so that at76_mac80211_tx() follows at76_join() in the driver's source file. This is a preparatory patch for the following patch where we need to call at76_join() from at76_mac80211_tx() in order to authenticate successfully with a bssid. Signed-off-by: Sebastian Smolorz Signed-off-by: John W. Linville commit c937019761a758f2749b1f3a032b7a91fb044753 Author: John W. Linville Date: Mon Jun 21 17:14:07 2010 -0400 mac80211: avoid scheduling while atomic in mesh_rx_plink_frame While mesh_rx_plink_frame holds sta->lock... mesh_rx_plink_frame -> mesh_plink_inc_estab_count -> ieee80211_bss_info_change_notify ...but ieee80211_bss_info_change_notify is allowed to sleep. A driver taking advantage of that allowance can cause a scheduling while atomic bug. Similar paths exist for mesh_plink_dec_estab_count, so work around those as well. http://bugzilla.kernel.org/show_bug.cgi?id=16099 Also, correct a minor kerneldoc comment error (mismatched function names). Signed-off-by: John W. Linville Cc: stable@kernel.org commit de66bfd85c817146825eaafb39d5872463c09e8c Author: John W. Linville Date: Thu Jun 24 13:03:14 2010 -0400 minstrel_ht: move minstrel_mcs_groups declaration to header file Signed-off-by: John W. Linville Acked-by: Felix Fietkau commit 670b7f11ff1f8492f51716474cf582f55a2247ba Author: John W. Linville Date: Thu Jun 24 11:26:31 2010 -0400 wireless: mark reg_mutex as static Signed-off-by: John W. Linville commit d5ece2150a8a1715fea3272e057c45d98edb78ea Author: John W. Linville Date: Thu Jun 24 11:18:38 2010 -0400 minstrel_ht: make *idx unsigned in minstrel_downgrade_rate net/mac80211/rc80211_minstrel_ht.c:440:46: warning: incorrect type in argument 2 (different signedness) net/mac80211/rc80211_minstrel_ht.c:440:46: expected int *idx net/mac80211/rc80211_minstrel_ht.c:440:46: got unsigned int * net/mac80211/rc80211_minstrel_ht.c:446:46: warning: incorrect type in argument 2 (different signedness) net/mac80211/rc80211_minstrel_ht.c:446:46: expected int *idx net/mac80211/rc80211_minstrel_ht.c:446:46: got unsigned int * Signed-off-by: John W. Linville Acked-by: Felix Fietkau commit 1f0e890dba5b0f543fea47732116b1c65d55614e Author: Trond Myklebust Date: Thu Jun 24 15:11:43 2010 -0400 NFSv4: Clean up struct nfs4_state_owner The 'so_delegations' list appears to be unused. Also eliminate so_client. If we already have so_server, we can get to the nfs_client structure. Signed-off-by: Trond Myklebust commit cba9ba4b902270c22f8b9c5149a284216b633fc1 Author: J. Bruce Fields Date: Tue Jun 1 11:21:40 2010 -0400 nfsd4: fix delegation recall race use-after-free When the rarely-used callback-connection-changing setclientid occurs simultaneously with a delegation recall, we rerun the recall by requeueing it on a workqueue. But we also need to take a reference on the delegation in that case, since the delegation held by the rpc itself will be released by the rpc_release callback. Signed-off-by: J. Bruce Fields commit ac94bf582529343bb7f354d0eef6dc4e566bbbd5 Author: J. Bruce Fields Date: Mon May 31 19:06:39 2010 -0400 nfsd4: fix deleg leak on callback error Signed-off-by: J. Bruce Fields commit 292b4df62a5a05a077269535d24eaabc8831c79d Author: John W. Linville Date: Thu Jun 24 11:13:56 2010 -0400 mac80211: don't shadow mgmt variable in ieee80211_rx_h_action net/mac80211/rx.c:2059:39: warning: symbol 'mgmt' shadows an earlier one net/mac80211/rx.c:1916:31: originally declared here Signed-off-by: John W. Linville commit a3275e24aa97fe303c66e4ab06a67b12730a8c2f Author: John W. Linville Date: Thu Jun 24 11:08:37 2010 -0400 rtl8180: mark rtl8180_beacon_work static Signed-off-by: John W. Linville commit c9c6fe5033191d82e1d819105485c795062107fd Author: Russell King Date: Thu Jun 24 15:41:31 2010 +0100 ARM: Remove support for LinkUp Systems L7200 SDP. This hasn't been actively maintained for a long time, only receiving the occasional build update when things break. I doubt anyone has one of these on their desks anymore. Signed-off-by: Russell King commit 3e876935b805966f140bdae73f96bc4c3632c947 Author: Uwe Kleine-König Date: Thu Jun 10 18:02:25 2010 +0200 ARM: imx1: rename imx_uart[12]_device to follow a common naming scheme Note that these devices are specific for imx1 as only here three irqs are used. Signed-off-by: Uwe Kleine-König commit 8f785e8549fbf73995a7795651709b458300ed01 Author: Uwe Kleine-König Date: Thu Jun 10 17:48:04 2010 +0200 ARM: imx1: rename imx_i2c_device to follow a common naming scheme Signed-off-by: Uwe Kleine-König commit 68a9c5ba14856d3738c906764aa38336f02e2e11 Author: Uwe Kleine-König Date: Thu Jun 10 17:45:23 2010 +0200 ARM: imx1: rename imx_csi_device to match its .name Signed-off-by: Uwe Kleine-König commit e9ec2a17eea971f1af91a37a1c685afad0f5a8b4 Author: Uwe Kleine-König Date: Thu Jun 10 17:34:59 2010 +0200 ARM: imx: fold serial.c into devices.c ... and use cpp magic to reduce repetition. Signed-off-by: Uwe Kleine-König commit 9a763bfbe45d8d4afe953993907188322a49a4ec Author: Uwe Kleine-König Date: Thu Jun 10 17:11:06 2010 +0200 ARM: imx: get rid of mxc_gpio_init This function is defined once for each imx family and so is in the way when compiling a kernel for more than one SoC. Signed-off-by: Uwe Kleine-König commit 3aad49e138a9690969df52672c454e1d6d01b501 Author: Uwe Kleine-König Date: Thu Jun 10 15:59:54 2010 +0200 ARM: imx/mx1: fold crm_regs.h into its only consumer As crm_regs.h is GPL-v2 only don't allow "(at your option) any later version" for clock.c any more. Signed-off-by: Uwe Kleine-König commit d109167b9c1002770d194644d5580a1f3588f7fc Author: Uwe Kleine-König Date: Thu Jun 10 15:11:13 2010 +0200 ARM: imx: rename mach dir for mx21 and mx27 to mach-imx Finally all imx code should end up there, start with mach-mx2. While touching all files rename some files to use a hyphen instead of an underscore. Signed-off-by: Uwe Kleine-König commit f1d4cbef18999548ade1007bfb63cc1fa69c385e Author: Uwe Kleine-König Date: Mon Mar 8 17:29:31 2010 +0100 ARM: mxc: grammar fix Signed-off-by: Uwe Kleine-König commit ccfa7c269843001077df02d98918c6c9bde91395 Author: Uwe Kleine-König Date: Mon Mar 8 17:10:54 2010 +0100 ARM: mx3/mx31ads: fold board header in its only user Moreover remove unused definitions. Signed-off-by: Uwe Kleine-König commit b396dc459cf38a9070032918ea6ae220d7f03586 Author: Uwe Kleine-König Date: Mon Mar 8 16:57:19 2010 +0100 ARM: mx3/mx31_3ds: fold board header in its only user Moreover remove unused definitions. Signed-off-by: Uwe Kleine-König commit d57351a30fb02a345b9328adb73250310425421c Author: Uwe Kleine-König Date: Mon Mar 8 16:11:51 2010 +0100 ARM: mx3/qong: get rid of nearly empty header board-qong.h only defined a single symbol that was used only once. Signed-off-by: Uwe Kleine-König commit 1faeaab27b0b9d35acb3ce3a333cb38a30136a11 Author: Uwe Kleine-König Date: Mon Mar 8 16:07:30 2010 +0100 ARM: mx2/mx27ads: fold board header in its only user Moreover remove unused definitions. Signed-off-by: Uwe Kleine-König commit d393d43ff799a1ac3766cdbca9a6367cb8c02db9 Author: Uwe Kleine-König Date: Mon Mar 8 11:59:25 2010 +0100 ARM: mx2/mx21ads: fold board header in its only user Signed-off-by: Uwe Kleine-König commit 7b562d0f21b58195596d4800466221e7808d180e Author: Uwe Kleine-König Date: Mon Mar 8 11:58:53 2010 +0100 ARM: mx3/kzm_arm11_01: fold board header in its only user Signed-off-by: Uwe Kleine-König commit 5d3a136a0896c7939e0a8ad44f191be09fd31bcb Author: Uwe Kleine-König Date: Mon Mar 8 11:18:20 2010 +0100 ARM: imx: remove empty and unused board headers Signed-off-by: Uwe Kleine-König commit 8fdca37afc16028c4bab9a18d809464c012d3f9b Author: Uwe Kleine-König Date: Mon Mar 8 10:46:11 2010 +0100 ARM: mx2/mx27_3ds: document alternative names and remove empty header Signed-off-by: Uwe Kleine-König commit a02b0420ff54bb21850c6faedc86838aadf2a832 Author: Uwe Kleine-König Date: Fri Mar 5 11:04:45 2010 +0100 ARM: mx1/scb9328: fix type of uart1_mxc_exit to make compiler happy This fixes: arch/arm/mach-mx1/mach-scb9328.c:120: warning: initialization from incompatible pointer type Signed-off-by: Uwe Kleine-König commit 05a3185cad1bb4e1b2206fdca9041234c3662a25 Author: Uwe Kleine-König Date: Thu Mar 4 21:02:41 2010 +0100 ARM: mx1: don't use deprecated symbol names Signed-off-by: Uwe Kleine-König commit 75a9cac430a1bd2a5219c74508ca01b0ddfddc9a Author: Andres Salomon Date: Wed Jun 23 20:27:00 2010 -0400 x86, olpc: Add comment about implicit optimization barrier Signed-off-by: Andres Salomon Cc: H. Peter Anvin LKML-Reference: <20100618174653.7755a39a@dev.queued.net> Signed-off-by: Ingo Molnar commit e827e32efc313e1a061c81007e96fff439ccb802 Merge: 5898dd9 8c52311 Author: Takashi Iwai Date: Thu Jun 24 11:11:41 2010 +0200 Merge branch 'for-2.6.36' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc commit c04266889b591165bdea396b20313bebb83c0fd6 Author: Chase Douglas Date: Sun Jun 20 21:32:31 2010 -0400 HID: magicmouse: enable horizontal scrolling Mimicks OS X behavior. Signed-off-by: Chase Douglas Signed-off-by: Jiri Kosina commit 0b778e76c1e7ccf49f8980b594e72f984095fd26 Author: Chase Douglas Date: Sun Jun 20 21:32:30 2010 -0400 HID: magicmouse: add param for scroll speed The new scroll_speed param takes an integer value from 0 to 63, where 0 is slowest and 63 is fastest. The default of 32 remains the same. This parameter also affects scroll acceleration linearly. A second part of this change is a tightly coupled modification to the scroll acceleration. Previously, scroll acceleration could be reset without lifting the scroll finger. This is rather unintuitive and hard to control in the case where a user wants faster scrolling, but wants to hold the scroll touch for longer than a moment. Note that scroll acceleration levels are now 1-7, where 7 is slowest. In the previous implementation, there were 8 levels defined, but it was impossible to start at the slowest level. In order to keep the default scroll speed unchanged, only 7 levels are used now. Signed-off-by: Chase Douglas Acked-by: Michael Poole Signed-off-by: Jiri Kosina commit 8d93efb27ab8927ffc7a357f1b2d10039de50ed4 Author: Chase Douglas Date: Sun Jun 20 21:32:29 2010 -0400 HID: magicmouse: properly account for scroll movement in state Before this change, sequential scroll events would take a variable amount of movement due to incorrect accounting. This change ensures all scroll movements require a deterministic touch movement for an action to occur. Signed-off-by: Chase Douglas Acked-by: Michael Poole Signed-off-by: Jiri Kosina commit b415ec7041429bb2cde3419e9556049fe12bf27a Author: Takashi Iwai Date: Thu Jun 24 08:07:28 2010 +0200 ALSA: usb - Fix compile error with CONFIG_SND_DEBUG_VERBOSE=y Replaced the forgotten cval->mixer->ctrlif. Signed-off-by: Takashi Iwai commit 8244132ea89cdd128003f5b9980fab50d8d36d72 Merge: 7b2ff18 38000a9 Author: David S. Miller Date: Wed Jun 23 18:26:27 2010 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: net/ipv4/ip_output.c commit 7454c8f6b83be292dc22e1b47d4b6c28ac32a76d Author: Ohad Ben-Cohen Date: Wed Jun 23 16:13:22 2010 +0300 staging: ti dspbridge: add TODO file Add a general cleaning roadmap TODO file to TI's DSP Bridge staging driver. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 6280238c13e16a105fe658e1b6e68380cbc9f055 Author: Omar Ramirez Luna Date: Wed Jun 23 16:12:23 2010 +0300 staging: ti dspbridge: add header files Add TI's DSP Bridge driver header files Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 26f8db7d2e20218272cbf889edfdb8328b4cd9c3 Author: Omar Ramirez Luna Date: Wed Jun 23 16:02:02 2010 +0300 staging: ti dspbridge: add DOFF binaries loader Add TI's DSP Bridge DOFF binaries dynamic loader driver sources Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 6a88a4fe0937325f1fc3df835f3e9b1698992899 Author: Omar Ramirez Luna Date: Wed Jun 23 16:02:01 2010 +0300 staging: ti dspbridge: add services Add TI's DSP Bridge driver services code Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 7227b671f7dd2f0d0c7cc700b184f0cdf5d6ee65 Author: Omar Ramirez Luna Date: Wed Jun 23 16:02:00 2010 +0300 staging: ti dspbridge: add generic utilities Add TI's DSP Bridge generic utilities driver sources Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 5cc28e622f2f7ecb7711c370f99a2b7fb4226e2f Author: Omar Ramirez Luna Date: Wed Jun 23 16:01:59 2010 +0300 staging: ti dspbridge: add MMU support Add TI's DSP Bridge MMU support Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 7d55524d3039e3e70756ee0a45f2fe59b7ed3fd2 Author: Omar Ramirez Luna Date: Wed Jun 23 16:01:58 2010 +0300 staging: ti dspbridge: add resource manager Add TI's DSP Bridge resource manager driver sources Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit c4ca3d5a4b02b484fdb1bab59489699b94998fad Author: Omar Ramirez Luna Date: Wed Jun 23 16:01:57 2010 +0300 staging: ti dspbridge: add platform manager code Add TI's DSP Bridge platform manager driver sources Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 999e07d63289f7a401972cf390f569ffcd3d3a7b Author: Omar Ramirez Luna Date: Wed Jun 23 16:01:56 2010 +0300 staging: ti dspbridge: add core driver sources Add TI's DSP Bridge core driver sources Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 6c5fe838769302dfd656704065019be0633944c6 Author: Omar Ramirez Luna Date: Wed Jun 23 16:01:55 2010 +0300 staging: ti dspbridge: add driver documentation Add a README with a general overview of TI's DSP Bridge driver, a short explanations of how error codes are currently used, and a CONTRIBUTORS file with all past & present contributors. For additional information about TI's DSP Bridge, check out http://omapzoom.org/gf/project/omapbridge/docman/?subdir=3 Note: if by any chance we forgot to mention any contributor, please let us know and we will fix that. Signed-off-by: Omar Ramirez Luna Signed-off-by: Kanigeri, Hari Signed-off-by: Ameya Palande Signed-off-by: Guzman Lugo, Fernando Signed-off-by: Hebbar, Shivananda Signed-off-by: Ramos Falcon, Ernesto Signed-off-by: Felipe Contreras Signed-off-by: Anna, Suman Signed-off-by: Gupta, Ramesh Signed-off-by: Gomez Castellanos, Ivan Signed-off-by: Andy Shevchenko Signed-off-by: Armando Uribe De Leon Signed-off-by: Deepak Chitriki Signed-off-by: Menon, Nishanth Signed-off-by: Phil Carmody Signed-off-by: Ohad Ben-Cohen Signed-off-by: Greg Kroah-Hartman commit 6c2bfdc77f1169e546977334bb4567ed2b8ce91e Author: Andrea Gelmini Date: Wed Jun 23 12:08:09 2010 +0200 Staging: ti-st: Fix a typo in the Kconfig file Signed-off-by: Andrea Gelmini Signed-off-by: Greg Kroah-Hartman commit 194a636d7a623bb1a14d3210618e4118e081cafe Author: Prashant P. Shah Date: Wed Jun 23 12:17:02 2010 +0530 Staging: wl_cs.c: fixed style issues in wl_cs.c This is a patch to the wl_cs.c file that fixes braces, spaces parentheses, etc style issues found by the checkpatch.pl tool. Signed-off-by: Prashant P. Shah Signed-off-by: Greg Kroah-Hartman commit 8cd5778b77f36b90e6791c17473a8ffac6450ea3 Author: Prashant P. Shah Date: Wed Jun 23 12:16:41 2010 +0530 Staging: wl_cs.c: fixed invalid UTF-8 style issues in wl_cs.c This is a patch to the wl_cs.c file that corrects the invalid UTF-8 encoding style issues found by the checkpatch.pl tool. Signed-off-by: Prashant P. Shah Signed-off-by: Greg Kroah-Hartman commit 6d98be390ab55bb5f617d69aedf9bec27d039b3b Author: Prashant P. Shah Date: Wed Jun 23 12:15:06 2010 +0530 Staging: wl_cs.c: converted space to tabs in wl_cs.c This is a patch to the wl_cs.c file that converts spaces to tabs style issues found by the checkpatch.pl tool. Signed-off-by: Prashant P. Shah Signed-off-by: Greg Kroah-Hartman commit 55bb6ece160f4598a79dd484950461545f6e6638 Author: H Hartley Sweeten Date: Tue Jun 22 16:38:50 2010 -0700 Staging: dt3155: Cleanup memory mapped i/o access The macros ReadMReg and WriteMReg are really just private versions of the kernel's readl and writel functions. Use the kernel's functions instead. And since ioremap returns a (void __iomem *) not a (u8 *), change all the uses of dt3155_lbase to reflect this. While here, make dt3155_lbase static since it is only used in the dt3155_drv.c file. Also, remove the global variable dt3155_bbase since it is not used anywhere in the code. Where is makes sense, create a local 'mmio' variable instead of using dt3155_lbase[minor] to make the code more readable. This change also affects the {Read|Write}I2C functions so they are also modified as needed. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit 4b50fb4042a9e39cd24b411546020d6b56ff519b Author: Andres More Date: Tue Jun 22 21:57:42 2010 -0300 Staging: vt6656: replaced IS_BROADCAST_ADDRESS with is_broadcast_ether_addr Replaced and removed the custom definition. Minor checkpatch warnings on long lines and indentation were not cleared. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 6cda24f5dfed742b58d732d13b26ccf7a34785a3 Author: Andres More Date: Tue Jun 22 20:43:39 2010 -0300 Staging: vt6656: code cleanup of vt6656_disconnect() Fixed style and debugging printks. Not replaced PSDevice here, nor removed wireless_send_event() yet. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 054fa2267db683a42a84cbd32f8782ae020814b3 Author: Ben Collins Date: Tue Jun 22 22:30:01 2010 -0400 Staging: solo6x10: Add TODO Signed-off-by: Ben Collins Signed-off-by: Greg Kroah-Hartman commit ee6351f56aba7121f83acc8d1130d5066e5a7d48 Author: Ben Collins Date: Tue Jun 22 22:32:01 2010 -0400 Staging: solo6x10: Support for tw2865 in cascade/full modes Finally got ahold of a card with a tw2865 video/audio multiplexer and the spec sheet to go along with it. Signed-off-by: Ben Collins Signed-off-by: Greg Kroah-Hartman commit 7b2ff18ee7b0ec4bc3162f821e221781aaca48bd Author: Jiri Olsa Date: Tue Jun 15 01:07:31 2010 +0000 net - IP_NODEFRAG option for IPv4 socket this patch is implementing IP_NODEFRAG option for IPv4 socket. The reason is, there's no other way to send out the packet with user customized header of the reassembly part. Signed-off-by: Jiri Olsa Signed-off-by: David S. Miller commit 01fc3e86c6379cc4c78c529a1bad1b8179b726aa Author: Ursula Braun Date: Mon Jun 21 22:57:12 2010 +0000 qeth: handle missing z/VM authorization of OSX For z/VM guest operating systems, OSX CHPIDs can only be used, if LPAR and z/VM userID are explicitly authorized through the Service Element. Issue a message if this SE-authorization is missing. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 0132951e812ef7c4cf1e66e6187e7f894bb12a04 Author: Ursula Braun Date: Mon Jun 21 22:57:11 2010 +0000 qeth: specify correct function level for OSN devices OSN devices use the same function level as OSD devices. This patch adds OSN-devices to the initialization function for func_level. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 51aa165c9f27bbfff498e4d56f3eadf17d74c476 Author: Frank Blaschka Date: Mon Jun 21 22:57:10 2010 +0000 qeth: fix page breaks in hw headers Turning on memory debugging showed there could be page breaks in hardware headers. OSA does not allow this so we had to add code to bounce the header in case there is a page break. This patch also fixes a problem in case the skb->data part of a fragmented skb spreads multiple pages. Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 43a65303fe530afe4daf1c0fd6875fdba7090f91 Author: Carsten Otte Date: Mon Jun 21 22:57:09 2010 +0000 qeth: fix use after free for qeths debug area The function qeth_free_buffer_pool is called _after_ the per-card debug area has been released. This debug message is not all that usefull anyway, and thus gets removed. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 38593d019d08fef6d048bd7ab1db8076733e3709 Author: Carsten Otte Date: Mon Jun 21 22:57:08 2010 +0000 qeth: Fold qeth_qerr debug area This patch removes the qerr debug area. Most info that goes in here is logged to the card's local debug area already, those duplicates are removed. All other elements are moved to the card's local debug area. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit efd5d9a407f248bc7b684513a9ce9fe1fd19b478 Author: Carsten Otte Date: Mon Jun 21 22:57:07 2010 +0000 qeth: Fold qeth_misc debug area This patch removes the misc debug area. Instead of logging the entire skb we just log a pointer to it into the card's local debug area in qeth_core_get_next_skb. Other then that, this debug area is not used anywhere. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit d829eeef58ee571a68ab51c9a67f2a94f9a9ce6c Author: Carsten Otte Date: Mon Jun 21 22:57:06 2010 +0000 qeth: Fold qeth_sense debug area This patch removes the sense debug area completely. Despite the name this debug area makes no sense at all because it's unused completely. Ouch. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 847a50fd9f3d6a1ee8c8bf646aa8c9a61ea51550 Author: Carsten Otte Date: Mon Jun 21 22:57:05 2010 +0000 qeth: Fold qeth_trace debug area This patch removes the qeth_trace debug area. All relevant data is logged into either qeth_setup or into each card's own debug area. Superfluous information (such as the card number when logging into the card's own debug area) is removed without replacement. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit af039068ca43e29d29ca1b387cb0b3e10eae3b92 Author: Carsten Otte Date: Mon Jun 21 22:57:04 2010 +0000 qeth: Add new s390 debug feature for each qeth card This patch adds a debug area for each qeth card. This debug area will replace various other debug areas that are global for all cards handled by the device driver. On crash dump analysis this makes life easier when trying to find out what's going on with an interface. Also, the forest of debug areas for this device driver is significantly cleared up. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 8e96c51cb60689e1d804c4b23bc47a98a6b6efb3 Author: Carsten Otte Date: Mon Jun 21 22:57:03 2010 +0000 qeth: Rework qeth_dbf_longtext This patch decouples qeth_dbf_longtext from qeth's static debug array. The function only uses one member anyway. Signed-off-by: Carsten Otte Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 59b60e9724318dd757896742dcd68e516996bbc5 Author: Ursula Braun Date: Mon Jun 21 22:57:02 2010 +0000 smsgiucv: guarantee single iucv connect in thaw If another smsgiucv_app device exists, suspend / resume fails with iucv path list corruption, because the same iucv_path_connect is called twice. The patch introduces a flag to save connect status of the smsgiucv path to make sure iucv_path_connect in smsg_pm_restore_thaw is called only once. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 4eaef482df464d1038b75769d43ac06ce0d16cd2 Author: Amit Kumar Salecha Date: Tue Jun 22 03:19:05 2010 +0000 qlcnic: update version to 5.0.6 Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit d626ad4d84dba1e5bf176320e19765e6dc539b04 Author: Amit Kumar Salecha Date: Tue Jun 22 03:19:04 2010 +0000 qlcnic: mark context state freed after destroy After destroying recv ctx, context state remain same. Fix it by marking as FREED. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 68bf1c68a4b3d9ad0a98f3310f2f79dca075a035 Author: Amit Kumar Salecha Date: Tue Jun 22 03:19:03 2010 +0000 qlcnic: offload tx timeout recovery Offload tx timeout recovery to fw recovery func(check_health). In check_health, first check health of device, if it its ok, then do tx timeout recovery otherwise device recovery. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 52486a3ac86eabe5a2f283eb9682a69c14347213 Author: Amit Kumar Salecha Date: Tue Jun 22 03:19:02 2010 +0000 qlcnic: dont free host resources during fw recovery There is no need to free/alloc host resources during firmware recovery. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 8a15ad1fb14d67450742cf975a76e744b3189f4d Author: Amit Kumar Salecha Date: Tue Jun 22 03:19:01 2010 +0000 qlcnic: release device resources during interface down Previously we were allocating device resources during probe and release them during remove. Now alloc during interface up and release in interface down. This helps in device performance, as it doesn't need to keep track of inactive resources. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 42f65cbad4168958dff8a307bfe4b528409951d3 Author: Amit Kumar Salecha Date: Tue Jun 22 03:19:00 2010 +0000 qlcnic: fix mac address mgmt We first add mac address in driver local list and then send command to fw to add same. There are checks in driver to ensure send command doesn't fail before adding mac address in local list. But instead fix should be: Add mac address in fw and if it succeeds, add it in driver local list. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 900c6cfffac668199aaa30a20e31d07602f8a8ce Author: Amit Kumar Salecha Date: Tue Jun 22 03:18:59 2010 +0000 qlcnic: handshake with card after fw load Instead of delaying rcv handshake till interface comes up, do it just after fw load. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 9665982885f0e11ea9e3c5d9bfc7ead48d08c83f Author: Amit Kumar Salecha Date: Tue Jun 22 03:18:58 2010 +0000 qlcnic: cleanup skb allocation No need to maintian separate state for alloced and freed skb. This can be done by null check. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit e725a4945d6eedd400dd5d0ead293d980a2f76ec Author: Henrik Rydberg Date: Wed Jun 23 10:09:26 2010 -0700 Input: evdev - never leave the client buffer empty after write When the client buffer is very small and wraps around a lot, it may well be that a write increases the head such that head == tail. If this happens between the point where a poll is triggered and the actual data is being read, there will be no data to read. This is confusing to applications, which might end up closing the file. This patch solves the problem by making sure the client buffer is never empty after writing to it. Signed-off-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 6967b4d9de4a7cf3b00cd9a93981d3206d75a1d8 Author: Henrik Rydberg Date: Wed Jun 23 09:31:37 2010 -0700 Input: hid-input - use a larger event buffer for MT devices The MT devices produce a lot of data. Tell the underlying input device approximately how many events will be sent per synchronization, to allow for better buffering. The number is a template based on continuously reporting details for each finger on a single hand. Signed-off-by: Henrik Rydberg Acked-by: Jiri Kosina Signed-off-by: Dmitry Torokhov commit c13aea033cbeb181e7e135f280ecdfca49f90180 Author: Henrik Rydberg Date: Wed Jun 23 09:30:22 2010 -0700 Input: bcm5974 - set the average number of events per MT event packet The MT devices produce a lot of data. Tell the underlying input device approximately how many events will be sent per synchronization, to allow for better buffering. The number is a template based on continuously reporting details for each finger on a single hand. Signed-off-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 63a6404d8ae693e71ab27c4f9c4032aa29113e92 Author: Henrik Rydberg Date: Thu Jun 10 12:05:24 2010 -0700 Input: evdev - use driver hint to compute size of event buffer Some devices, in particular MT devices, produce a lot of data. This may lead to overflowing of the event queues in evdev driver, which by default are fairly small. Let the drivers hint the average number of events per packet generated by the device, and use that information when computing the buffer size evdev should use for the device. Signed-off-by: Henrik Rydberg Acked-by: Chase Douglas Signed-off-by: Dmitry Torokhov commit b58f7086d52c0ac6c879ee5aaf7c276e17768e5b Author: Henrik Rydberg Date: Wed Jun 23 09:17:56 2010 -0700 Input: evdev - convert to dynamic event buffer Allocate the event buffer dynamically, and prepare to compute the buffer size in a separate function. This patch defines the size computation to be identical to the current code, and does not contain any logical changes. Signed-off-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 406818ff347cbbdae2fb21fafd1939d00cf479c5 Author: Eric Dumazet Date: Wed Jun 23 13:00:48 2010 -0700 bridge: 64bit rx/tx counters Use u64_stats_sync infrastructure to provide 64bit rx/tx counters even on 32bit hosts. It is safe to use a single u64_stats_sync for rx and tx, because BH is disabled on both, and we use per_cpu data. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 16b8a4761cbe5082cd35641c066d7c4b6b83cdca Author: Eric Dumazet Date: Tue Jun 22 10:22:17 2010 -0700 net: Introduce u64_stats_sync infrastructure To properly implement 64bits network statistics on 32bit or 64bit hosts, we provide one new type and four methods, to ease conversions. Stats producer should use following template granted it already got an exclusive access to counters (include/linux/u64_stats_sync.h contains some documentation about details) u64_stats_update_begin(&stats->syncp); stats->bytes64 += len; stats->packets64++; u64_stats_update_end(&stats->syncp); While a consumer should use following template to get consistent snapshot : u64 tbytes, tpackets; unsigned int start; do { start = u64_stats_fetch_begin(&stats->syncp); tbytes = stats->bytes64; tpackets = stats->packets64; } while (u64_stats_fetch_retry(&stats->lock, syncp)); Suggested by David Miller, and comments courtesy of Nick Piggin. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 6afff0caa721211e8c04bdc7627ee3bff95bcb95 Author: John Fastabend Date: Wed Jun 16 14:18:12 2010 +0000 net: consolidate netif_needs_gso() checks netif_needs_gso() is checked twice in the TX path once, before submitting the skb to the qdisc and once after it is dequeued from the qdisc just before calling ndo_hard_start(). This opens a window for a user to change the gso/tso or tx checksum settings that can cause netif_needs_gso to be true in one check and false in the other. Specifically, changing TX checksum setting may cause the warning in skb_gso_segment() to be triggered if the checksum is calculated earlier. This consolidates the netif_needs_gso() calls so that the stack only checks if gso is needed in dev_hard_start_xmit(). Signed-off-by: John Fastabend Cc: Herbert Xu Signed-off-by: Jeff Kirsher Acked-by: Herbert Xu Signed-off-by: David S. Miller commit 1dc8d8c06d4002be4d1373fc06f25cd589be47e1 Author: Justin P. Mattock Date: Mon Jun 21 13:45:42 2010 -0700 net: Fix a typo in netlink.h Fix a typo in include/net/netlink.h should be finalize instead of finanlize Signed-off-by: Justin P. Mattock Signed-off-by: David S. Miller commit 17f085df92ba74a4dc88744cbc7a699c231f8728 Author: Bruce Allan Date: Thu Jun 17 18:59:48 2010 +0000 e1000e: disable gig speed when in S0->Sx transition Most of this workaround is necessary for all ICHx/PCH parts so one of the two MAC-type checks can be removed. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit dbcb9fec5c79780152e32282297de6ddb1f6a43b Author: Bruce Allan Date: Thu Jun 17 18:59:27 2010 +0000 e1000e: packet split should not be used with early receive Originally it was thought there were issues with ICHx/PCH parts with packet split when jumbo frames were enabled but in fact it is really only when early-receive is enabled (via ERT register) on these parts. Use packet split with jumbos but only when early-receive is not enabled. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit f2e2b3abe4f491130cfda814a8547783b08f10c2 Author: Bruce Allan Date: Thu Jun 17 18:59:06 2010 +0000 e1000e: do not touch PHY page 800 registers when link speed is 1000Mbps The PHY on 82577/82578 has issues when the registers on page 800 are accessed when in gigabit mode. Do not clear the Wakeup Control register when resetting the part since it is on page 800 (and will be cleared on reset anyway). Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 0c6bdb3084d015221270b418190b630553a38cf8 Author: Bruce Allan Date: Thu Jun 17 18:58:43 2010 +0000 e1000e: avoid polling h/w registers during link negotiation Avoid touching hardware registers when possible, otherwise link negotiation can get messed up when user-level scripts are rapidly polling the driver to see if/when link is up. Use the saved link state information instead when possible. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d0ee0ebe17cbeeccdf1e76e9f048c21f56f41e45 Author: John W. Linville Date: Wed Jun 23 14:20:45 2010 -0400 ath9k: declare MODULE_FIRMWARE for ath9k_htc Signed-off-by: John W. Linville commit 25ac8b0d06c4b3e26c7c4c18dc5c3fcc40be58a2 Author: John W. Linville Date: Wed Jun 23 10:33:45 2010 -0400 libertas: mark lbs_ret_802_11d_domain_info static Probably little risk of namespace polution, but good practice... :-) Signed-off-by: John W. Linville commit 9a75c2ff6d539da0a565b5d64605031950b0853e Author: Vivek Natarajan Date: Tue Jun 22 11:52:37 2010 +0530 ath9k: Add a module parameter to disable led blinking. Some vendors require the LED to be ON always irrespective of any radio activity. Introducing a module parameter to disable blinking, so that one can choose between always on or led blink during activity. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit ee031112d9eef5508f765ebc90ab488e01db002e Author: Luis R. Rodriguez Date: Mon Jun 21 18:38:51 2010 -0400 ath9k_hw: add an extra delay when reseting AR_RTC_RESET Without this we could start trying to work with the device without it being fully functional yet and loose some packets upon resume. Cc: Aeolus Yang Cc: Madhan Jaganathan signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d5c4d1930ce16b79990f8bb049d090eafd1fedde Author: Luis R. Rodriguez Date: Mon Jun 21 18:38:50 2010 -0400 ath9k_hw: dynamically choose the SERDES array for low power The array we use will vary depending on whether or not we are to go to lower power or not. The default values (iniPcieSerdes) are a copy or what go into the registers through the INI files. Cc: Aeolus Yang Cc: Madhan Jaganathan Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 6a0ec30ad4acae63a81526ca8c157f718904993b Author: Luis R. Rodriguez Date: Mon Jun 21 18:38:49 2010 -0400 ath9k_hw: add pcieSerDesWrite to disable SERDES ASPM tweaks This can be useful during testing of new ASPM tweaks which often have to be done through the PCI Serializer-Deserializer (SERDES). Cc: Aeolus Yang Cc: Madhan Jaganathan Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 653fe371226fcbcc41b4662d35d2207648a6075d Author: Luis R. Rodriguez Date: Mon Jun 21 18:38:48 2010 -0400 ath9k_hw: move LowPower array writes to ar9003_hw_configpcipowersave() The LowPower array writes disables the PLL when ASPM is enabled. The host driver makes quite a few calls to ath9k_hw_configpcipowersave() and these same calls also need to ensure the PLL is off when they issue it. Cc: Aeolus Yang Cc: Madhan Jaganathan Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 9a658d2b5c222b62919ab47b11c907c731ac180a Author: Luis R. Rodriguez Date: Mon Jun 21 18:38:47 2010 -0400 ath9k_hw: fix ASPM setting for AR9003 The AR_WA register should not be read when in sleep state so add a variable we can stash its value into for when we need to set it. Additionally the AR_WA_D3_TO_L1_DISABLE_REAL (bit 16) needs to be removed. Cc: Aeolus Yang Cc: Madhan Jaganathan signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 1047d5edd4838f27dc86f24676178f2249c446ea Author: Kiran Divekar Date: Fri Jun 4 23:20:42 2010 -0700 Libertas: Added 11d support using cfg80211 Added 11d support for libertas driver using cfg80211. This is based on Holger Shurig's initial work to add cfg80211 support libertas. (https://patchwork.kernel.org/patch/64286/) Please let us know, if there are any improvements comments. Code is added to send 11d enable command to firmware while initialisation and pass 11d specific information to firmware when notifier handler is called by cfg80211. Signed-off-by: Amitkumar Karwar Signed-off-by: Kiran Divekar Signed-off-by: John W. Linville commit e4fe4eafa41cf951fb8fe2b9725ae84c599668d8 Author: Kiran Divekar Date: Fri Jun 4 23:20:37 2010 -0700 Libertas: fix WARN_ON issues in cfg80211 support In following scenarios WARN_ON() in cfg80211 code was triggered. a) Driver unload or card removal. b) Disconnect from infra network c) Adhoc start/join d) Adhoc stop Added following fixes to avoid WARN_ON() in cfg80211 code. a) Ensured that cfg80211_disconnected() function defined in cfg80211 code will be called only in infra mode. b) Solved timing issue by moving cfg80211_disconnected() call inside lbs_cfg_disconnect(). c) Updated "wdev->ssid" in driver code after Adhoc join/start d) Removed unnecessory cfg80211_disconnected() call in lbs_remove_card. Signed-off-by: Amitkumar Karwar Signed-off-by: Kiran Divekar Signed-off-by: John W. Linville commit e86dc1ca4676445d9f0dfe35104efe0eb8a2f566 Author: Kiran Divekar Date: Mon Jun 14 22:01:26 2010 +0530 Libertas: cfg80211 support Holger Schurig's patch (https://patchwork.kernel.org/patch/64286/) is rebased to latest wireless-testing tree. (Includes patches from me originally posted as "libertas: fix build error due to undefined symbol" and "libertas: unmangle capability value". -- JWL) Signed-off-by: Amitkumar Karwar Signed-off-by: Kiran Divekar Tested-by: Amitkumar Karwar Signed-off-by: John W. Linville commit 4aaf504670e38da9cb929988cdce05648fa635a7 Author: Jiri Slaby Date: Tue Jun 22 11:25:03 2010 -0700 Input: tps6507x-ts - remove unneeded NULL test Stanse found that tsc is dereferenced earlier than checked for being NULL in tps6507x_ts_remove. Remove the test because there is no way for tsc to be NULL there. Signed-off-by: Jiri Slaby Signed-off-by: Dmitry Torokhov commit d4a86d81944d3cccb3f4a309230e835823a61252 Author: Takashi Iwai Date: Wed Jun 23 17:51:26 2010 +0200 ALSA: hda - Add missing ALC680_* definitions Also update the documentation. Signed-off-by: Takashi Iwai commit d1eb57f47b7f524c13112c891e87fb1f51029fd1 Author: Kailang Yang Date: Wed Jun 23 16:25:26 2010 +0200 ALSA: hda - Support ALC680 codec Signed-off-by: Kailang Yang Signed-off-by: Takashi Iwai commit 3d8d4dcfd423b01ef7ea7c3c97720764b7adb6df Author: Daniel Mack Date: Wed Jun 16 17:57:31 2010 +0200 ALSA: usb-audio: simplify control interface access As the control interface is now carried in struct snd_usb_audio, we can simplify the API a little and also drop the private ctrlif field from struct usb_mixer_interface. Also remove a left-over function prototype in pcm.h. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 157a57b6fae7d3c6d24b7623dcc6679c6d244621 Author: Daniel Mack Date: Wed Jun 16 17:57:30 2010 +0200 ALSA: usb-audio: move and add some comments Also add a list of open topics. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 21af7d8c0c0a88f6f9fc6993d73001b4caf23b08 Author: Daniel Mack Date: Wed Jun 16 17:57:29 2010 +0200 ALSA: usb-midi: whitespace fixes Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 69da9bcb98ccbfb5d5f751bc13418f1307332925 Author: Daniel Mack Date: Wed Jun 16 17:57:28 2010 +0200 ALSA: usb-audio: unify UAC macros and struct names Get rid of the last occurances of _v1 suffixes, and move the version number right after the "uac" string. Now things are consitent again. Sorry for the forth and back, but it just looks much nicer this way. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit f22aa94908352f40fce65b9a9180370fb09ecbe9 Author: Daniel Mack Date: Wed Jun 16 17:57:27 2010 +0200 ALSA: usb-audio: clean up includes in clock.c Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 1240e6b5532358257c52351639a8d2382fe58f84 Merge: c9ff921 a5c7d79 Author: Takashi Iwai Date: Wed Jun 23 16:07:34 2010 +0200 Merge branch 'fix/misc' into topic/misc commit 8c523115ae170840896ce6593a404ef0ffd3c7da Author: Jarkko Nikula Date: Mon Jun 21 14:15:00 2010 +0300 ASoC: RX-51: Add basic jack detection This patch adds GPIO jack detection to Nokia N900/RX-51. At the moment only SND_JACK_VIDEOOUT type is reported. More types could be reported after getting more audio features supported and necessary drivers integrated for implementing automated accessory detection. Signed-off-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 4eb5470326ca09c0eeae4502f52375d657a585c2 Author: Jarkko Nikula Date: Mon Jun 21 14:14:59 2010 +0300 ASoC: RX-51: Add Jack Function kcontrol Nokia RX-51/N900 has multifunction 4-pole audio-video jack that can be used as headphone, headset or audio-video connector. This patch implements the control 'Jack Function' which is used to select the desired function. At the moment only TV-out without audio is supported. Signed-off-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 3d5a4516238ff1da81f5c38a7ddd87127487c8ca Author: Eric Bénard Date: Sat Jun 19 19:33:39 2010 +0200 codecs/tlv320aic23: fix bias management for suspend/resume in tlv320aic23_set_bias_level, for the case SND_SOC_BIAS_ON, the comment says "vref/mid, osc on, dac unmute" but the code doesn't clear the corresponding bits, thus when resuming, several bits are not cleared preventing the codec from working. in tlv320aic23_suspend, clearing the active register is not needed as it will be done by tlv320aic23_set_bias_level, when setting bias to SND_SOC_BIAS_OFF Signed-off-by: Eric Bénard Cc: broonie@opensource.wolfsonmicro.com Cc: anuj.aggarwal@ti.com Cc: lrg@slimlogic.co.uk Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 76b0f1337690d223811c852ad3a5078eb89276c5 Author: Paul Mackerras Date: Wed Jun 23 15:46:55 2010 +1000 powerpc, hw_breakpoint: Cooperate better with other single-steppers The code we had to clear the MSR_SE bit was not doing anything because the caller (ultimately single_step_exception() in traps.c) had already cleared. Instead of trying to leave MSR_SE set if the TIF_SINGLESTEP flag is set (which indicates that the process is being single-stepped by ptrace), we instead return NOTIFY_DONE in that case, which means the caller will generate a SIGTRAP for the process. Signed-off-by: Paul Mackerras commit 574cb24899d35e71be1d8fb1add2c3306804e4bf Author: Paul Mackerras Date: Wed Jun 23 15:42:43 2010 +1000 powerpc, hw_breakpoint: Fix off-by-one in checking access address The code would accept an access to an address one byte past the end of the requested range as legitimate, due to having a "<=" rather than a "<". This fixes that and cleans up the code a bit. Signed-off-by: Paul Mackerras commit ec8acac84aea4245ae2cc999d56a68f0302cc847 Author: J. Bruce Fields Date: Wed Jun 16 13:03:04 2010 -0400 nfsd4: remove some debugging code This is overkill. Signed-off-by: J. Bruce Fields commit f41855929c9fdc3b4f2863ada9df3e0cf4231b5b Author: Linus Walleij Date: Tue Jun 22 18:06:42 2010 -0700 DMAENGINE: ste_dma40: support older silicon This makes sure the DMA40 driver will also work on the oldest silicon revisions that have the on-chip memory on another location in the DB8500 and also requires explicit suspend before starting or resuming a logical channel. Signed-off-by: Linus Walleij [added parenthesis to the definition of U8500_DMA_LCPA_BASE_ED] Signed-off-by: Dan Williams commit 6b7acd84426235c63a3c0f0b230a95064f97b0d4 Author: Jonas Aaberg Date: Sun Jun 20 21:26:59 2010 +0000 DMAENGINE: ste_dma40: support disabling physical channels This makes it possible to disable physical channels. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 595167253a20167efae704ff2a8f6e2ee66cf25f Author: Jonas Aaberg Date: Sun Jun 20 21:26:45 2010 +0000 DMAENGINE: ste_dma40: no disabled phy channels on ux500 Make sure we have no disabled physical channels when we start on the ux500 machines. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit d181b3a8cb2fc1732ad1826a5e6fdccab03e6a51 Author: Jonas Aaberg Date: Sun Jun 20 21:26:38 2010 +0000 DMAENGINE: ste_dma40: fix suspend bug This fixes a bug when suspending channels: first make the checks, then suspend the channel, not the other way around. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 8bc68fa51d7ed520cd4c69f74fb37add60b6ea47 Author: Jonas Aaberg Date: Sun Jun 20 21:26:30 2010 +0000 DMAENGINE: ste_dma40: add DB8500 memcpy channels This adds all available memcpy channels to the DB8500 in the ux500 platform (and fixes a typo). Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit ef934aea861323820cb39051e94a52319f456fbe Author: Jonas Aaberg Date: Sun Jun 20 21:26:22 2010 +0000 DMAENGINE: ste_dma40: no flow control on memcpy On memcpy DMA operations we don't need flow control. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 5aa12e8c9c57741606e52f43e62ab1b9dc8e9dcc Author: Jonas Aaberg Date: Sun Jun 20 21:26:14 2010 +0000 DMAENGINE: ste_dma40: arch updates for LCLA and LCPA This follows on the patch to allocate LCLA dynamically: the on-chip memory is needed for other things so now that that we're using it dynamically we can remove the LCLA resource altogether and free up some ESRAM memory. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 508849ade23c1167bfbdf557259398adfe7044b9 Author: Linus Walleij Date: Sun Jun 20 21:26:07 2010 +0000 DMAENGINE: ste_dma40: allocate LCLA dynamically Switch to allocating LCLA in memory instead of having a fixed address. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 1d392a7ba43300b0bde877de15121b261d7a6ce2 Author: Jonas Aaberg Date: Sun Jun 20 21:26:01 2010 +0000 DMAENGINE: ste_dma40: no premature stop Correct bug that could cause paused channels to stop. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 2123a61e174074b849fce2277412836b1b897942 Author: Jonas Aaberg Date: Sun Jun 20 21:25:54 2010 +0000 DMAENGINE: ste_dma40: interrupts only on dst We don't want interrupts when the source is done, only when the destination is done and everything is complete at the recieveing end of a transfer. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 0c32269d813c148194524fc8272f7ec1f7c90e6a Author: Jonas Aaberg Date: Sun Jun 20 21:25:46 2010 +0000 DMAENGINE: ste_dma40: avoid doing unnessecary suspend Avoid doing unnessecary suspend when modifying logical channels. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 2292b880e411276d127a020a1c35ca149fcca992 Author: Jonas Aaberg Date: Sun Jun 20 21:25:39 2010 +0000 DMAENGINE: ste_dma40: lock fix Fix up some locking issues found by enabling lock debugging. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 0d0f6b8bbb13e1287f4f2a271e4f4306789511a2 Author: Jonas Aaberg Date: Sun Jun 20 21:25:31 2010 +0000 DMAENGINE: ste_dma40: deny ops on non-alloc channels Added checks to deny operating on none-allocated channels. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 2a6143407d9114a0c5d16a7eed1a0892a4ce9f19 Author: Jonas Aaberg Date: Sun Jun 20 21:25:24 2010 +0000 DMAENGINE: ste_dma40: various cosmetic clean-ups This cleans up some extra newlines, removes some code duplication and moves the code to comply better with checkpatch. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit ff0b12baa50390ba6a963cb6f6162a94ed4fc333 Author: Jonas Aaberg Date: Sun Jun 20 21:25:15 2010 +0000 DMAENGINE: ste_dma40: improve allocation error handling Better error handling when channel allocation fails. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit c675b1b424446b52de00cad84ca3d823d29a3d0e Author: Jonas Aaberg Date: Sun Jun 20 21:25:08 2010 +0000 DMAENGINE: ste_dma40: use kmem cache Use kmem cache instead of own cache, reducing code duplication and bug sources. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit a8be8627a3a00859367d219848f2cd771d6aa925 Author: Per Friden Date: Sun Jun 20 21:24:59 2010 +0000 DMAENGINE: ste_dma40: moved freeing of client owned desc fixed typo and moved freeing of client owned desc to free_dma. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit ef1872ec652b3bc472d6c0995d0b64d5058878ea Author: Linus Walleij Date: Sun Jun 20 21:24:52 2010 +0000 DMAENGINE: ste_dma40: only write phy channel config first time We only need to write the configuration to a physical channel if it is free, else it is already written. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 941b77a3b6946dd6223a029007f695aa841b6d34 Author: Per Friden Date: Sun Jun 20 21:24:45 2010 +0000 DMAENGINE: ste_dma40: fixed lli_max=1 issue Fixed lli_max=1 issue in case of full lcla, currently this case is not properly handled. Signed-off-by: Jonas Aaberg Signed-off-by: Linus Walleij Signed-off-by: Dan Williams commit 5898dd9ebd158d9fd3c197fc640d0c104bef39a5 Author: Lars-Peter Clausen Date: Sat Jun 19 16:52:51 2010 +0200 ASoC: JZ4740: Add qi_lb60 board driver This patch adds ASoC support for the qi_lb60 board. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 3b097d64eafac6446d3c5d255830e2bbdd17edd3 Author: Lars-Peter Clausen Date: Tue Jun 22 00:46:31 2010 +0200 ASoC: Add JZ4740 codec driver This patch adds support for the JZ4740 internal codec. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 11bd3dd1b7c299815dbedef0982220f239425ae8 Author: Lars-Peter Clausen Date: Sat Jun 19 16:50:37 2010 +0200 ASoC: Add JZ4740 ASoC support This patch adds ASoC support for JZ4740 SoCs I2S module. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 6227157f0cceb092d3e9c6d16ac33f2539a10400 Author: Ben Collins Date: Thu Jun 17 13:28:19 2010 -0400 Staging: solo6x10: Add kconfig/kbuild fairy dust for solo6x10 Signed-off-by: Ben Collins Signed-off-by: Greg Kroah-Hartman commit faa4fd2a09517b39cc1f5d622453f97a59acfdac Author: Ben Collins Date: Thu Jun 17 13:27:26 2010 -0400 Staging: solo6x10: New driver (staging) for Softlogic 6x10 This driver supports Softlogic 6x10 based codec cards Signed-off-by: Ben Collins Signed-off-by: Greg Kroah-Hartman commit 412b2d08b93165303d698267d1eeac19e14e67a4 Author: Charles Clément Date: Tue Jun 22 08:54:42 2010 -0700 Staging: vt6655: remove DWORD_PTR pointer typedef Use unsigned long instead. Signed-off-by: Charles Clément commit dec572cbe67598080f7beb00279db1a5590cec35 Author: Charles Clément Date: Tue Jun 22 08:54:41 2010 -0700 Staging: vt6655: remove ULONG_PTR typedef Signed-off-by: Charles Clément commit e54d9eb95134120e992ed24ae895ff5b4f87a83e Author: Andres More Date: Mon Jun 21 15:35:43 2010 -0300 Staging: vt6656: code cleanup in vt6656_suspend()/vt6656_resume() Not changed PSDevice priv struct, just fixed style and removed printks. Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 79566eb2df013f0ed20e548f4be0f8afbe78f9a3 Author: Charles Clément Date: Mon Jun 21 10:39:51 2010 -0700 Staging: vt6655: move channel mapping code from card.c to channel.c Move functions managing the channel mapping to a new channel.c file, as done in the staging VT6656 driver. The function names contained in card.c were prefixed with CARD followed by the first letter of the return code, remove this and use more coherent function names. The following functions moved and were renamed: ChannelValid -> is_channel_valid CARDbSetChannel -> set_channel CARDvInitChannelTable -> init_channel_table CARDbyGetChannelMapping -> get_channel_mapping CARDvSetCountryInfo -> set_country_info CARDbySetSupportChannels -> set_support_channels CARDbChannelGetList -> channel_get_list CARDvSetCountryIE -> set_country_IE CARDbGetChannelMapInfo -> get_channel_map_info CARDvSetChannelMapInfo -> set_channel_map_info CARDvClearChannelMapInfo -> clear_channel_map_info CARDbyAutoChannelSelect -> auto_channel_select CARDbyGetChannelNumber -> get_channel_number Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 2a1a17498bcaea1580a4fa051286bc97d4c5e730 Author: Andres More Date: Mon Jun 21 11:27:24 2010 -0300 Staging: vt6656: removed '#if 0' definitions Removed code in .c files that was being skipped by the preprocessor Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit ae6eb75c63bcc21ffdb8c617a09d35b4a4ef11fe Author: John Sheehan Date: Fri Jun 18 18:39:15 2010 +0100 Staging: comedi: fix code warnings in s626.c A patch for s626.c to fix some of the warnings reported by the checkpatch.pl tool, namely, -suspect code indent for conditional statements -please, no space before tabs Signed-off-by: John Sheehan Signed-off-by: Greg Kroah-Hartman commit add74595e500d0b008a48a898d0dbe99e648c64b Author: John Sheehan Date: Fri Jun 18 18:38:01 2010 +0100 Staging: comedi: fix code style errors in s626.c A patch for s626.c to fix errors reported by checkpatch.pl tool, namely, -code indent should use tabs where possible -"foo * bar" should be "foo *bar" -trailing statements should be on next line Signed-off-by: John Sheehan Signed-off-by: Greg Kroah-Hartman commit 2fa5e380da8e3b34266861450c7dcd7e822fc485 Author: Jiri Kosina Date: Mon Jun 21 14:22:08 2010 +0200 Staging: rtl8192e: remove all code dependent on LINUX_VERSION_CODE Remove all code which is dead for in-kernel driver due to being ifdefed by LINUX_VERSION_CODE. While at it, also remove surrounding code which is commented out, or '#if 1' nops. Signed-off-by: Jiri Kosina Signed-off-by: Greg Kroah-Hartman commit 3ff16c257a103febb63a92f305043fc36c83e9ad Author: Andy Shevchenko Date: Tue Jun 15 17:25:38 2010 +0300 Staging: don't use custom hex_to_bin() implementation Signed-off-by: Andy Shevchenko Signed-off-by: Greg Kroah-Hartman commit 600cec3ed0a08f62712c6d3c5fea2fcb8b7e3675 Author: Matti Lammi Date: Tue Jun 15 09:56:27 2010 +0300 Staging: memrar: memrar_handler.c: Fixed whitespace and tab warnings Fixed several witespace and tab related warnings and errors reported by the chechpatch.pl tool. Signed-off-by: Matti Lammi Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 37523e84cbf1d82fcc8237ed10818d37b951144e Author: Uwe Kleine-König Date: Fri Jun 11 12:17:03 2010 +0200 staging/trivial: fix typos concerning "initiali[zs]e" Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 429ccf058bc201734a9a77b4126ee64930bad19b Author: Henri Häkkinen Date: Sat Jun 12 00:27:36 2010 +0300 staging:panel: Fixed coding conventions. Fixed coding convention issues as reported by checkpatch.pl tool on the file `panel.c'. Moved LCD special code handling from the function `lcd_write' into function `handle_lcd_special_code'. Also moved the handling of INPUT_ST_HIGH and INPUT_ST_FALLING states from the function `panel_process_input' into functions `input_state_high' and `input_state_falling'. Signed-off-by: Henri Häkkinen Acked-by: Willy Tarreau Signed-off-by: Greg Kroah-Hartman commit aa605fa410badcf6c67c6b2f8731dfa64e708bca Author: Prashant P. Shah Date: Thu Jun 10 22:07:04 2010 +0530 Staging: wl_cs.c: fixed space style issues in wl_cs.c This is a patch to the wl_cs.c file that fixes the space style issues found by the checkpatch.pl tool. Signed-off-by: Prashant P. Shah Signed-off-by: Greg Kroah-Hartman commit 3ec64b05711e402f20cf30e44d83146c864738db Author: Samuel Ortiz Date: Thu Jun 10 16:54:17 2010 +0200 Staging: rtl8192e: Do not autoconnect based on probe response Getting a probe response after sending a probe request to a specific SSID doesnt mean we're trying to associate with this SSID. wpa_supplicant should be the only one deciding when to join an SSID, not the kernel. Signed-off-by: Samuel Ortiz Signed-off-by: Greg Kroah-Hartman commit ae67b584b40883cf63492b9df2b06c035da84780 Author: Samuel Ortiz Date: Thu Jun 10 16:54:18 2010 +0200 Staging: rtl8192e: Do not send NULL BSSID events when not associated If we're not associated, we should not send wireless events to let userspace know that we just left an ESSID, simply because we havent yet joined it. If we keep on doing that, wpa_supplicant could receive such events while actually trying to join an ESSID, and thus decide to stop trying. This leads to a lot of connection failures as this driver seems to be sending GIWAP events quite a lot. Signed-off-by: Samuel Ortiz Signed-off-by: Greg Kroah-Hartman commit 96bd55bd67de2dddb1d917b7631e23b86a8b1cd4 Author: Samuel Ortiz Date: Thu Jun 10 16:54:16 2010 +0200 Staging: rtl8192e: Do not mess with carrier settings while scanning Toggling the link carrier is a non sense and is the grossest locking I can think of. Moreover, it's giving a completely inaccurate status to userspace who could for example decide to turn the interface down on carrier off detection. Signed-off-by: Samuel Ortiz Signed-off-by: Greg Kroah-Hartman commit b84206ee7e53f496e0e3ab2d57731a983996da83 Author: Stefan Lippers-Hollmann Date: Thu Jun 10 15:21:42 2010 +0200 Staging: rt3070: remove dead code While merging rt30[79]0 support into rt28[67]0, drivers/staging/rt3070/md4.h has been forgotten, while it isn't referenced from the remaining drivers anymore; remove it. Signed-off-by: Stefan Lippers-Hollmann Acked-by: Bartlomiej Zolnierkiewicz Cc: Matti Lammi Signed-off-by: Greg Kroah-Hartman commit f751ffab11050e2da24f90f052c8d8b6611f751d Author: Niadh Date: Mon Jun 7 00:09:18 2010 +0100 Staging: RT2860 Fixed all errors in mlme.h and all but one in rtmp.h. I have fixed all errors in mlme.h and fixed all bar one in rtmp.h. I think I can fix rtmp.h too by moving a brace up two lines, I just dont know if it will work. If someone can confirm it will work I will change it. Signed-off-by: Neil Munro Signed-off-by: Greg Kroah-Hartman commit 6e5db771e10fccde1e48bf665dc900372826bc38 Author: Bill Pemberton Date: Thu Jun 17 13:10:57 2010 -0400 Staging: xgifb: increase VBIOS_VER_MAX_LENGTH to 5 VBIOS_VER_MAX_LENGTH was set to 4, but the value "0.84" is strcpy'd into it. That value is 5 long including the trailing NULL. Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 6eed8dc793c3122471c8dc9a12e331386b783141 Author: Bill Pemberton Date: Thu Jun 17 13:10:56 2010 -0400 Staging: xgifb: remove externs in XGI_accel.c Remove 2 extern variables definations from XGI_accel.c that were defined in other .h files. Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit a9253883a6d34fd5087ebc461e862613f38d72ec Author: Bill Pemberton Date: Thu Jun 17 13:10:55 2010 -0400 Staging: xgifb: remove __KERNEL__ #ifdef in XGIfb.h The code inside this #ifdef declared a couple extern functions that weren't used anywhere, so remove the whole #ifdef Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit b06bce772768640039bd0eea51c52935f8bc701a Author: Bill Pemberton Date: Thu Jun 17 13:10:54 2010 -0400 Staging: xgifb: remove XGI.h This was not included anywhere and just defined a debugging macro. Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit a3e735a5a2fcf40819f26411e2605fde2064d6ca Author: Bill Pemberton Date: Thu Jun 17 13:10:53 2010 -0400 Staging: xgifb: Remove XGI_TV_PLUG typedef Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 716083c63bf31649e08df25a4f4548689451330d Author: Bill Pemberton Date: Thu Jun 17 13:10:52 2010 -0400 Staging: xgifb: Remove typedefs in XGIfb.h Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 80adad85ea26ace7c39c3aba9c23527f9e9e14da Author: Bill Pemberton Date: Thu Jun 17 13:10:51 2010 -0400 Staging: xgifb: Remove typedefs in vb_struct.h This removes all the remaining typedefs in vb_struct.h Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit e4147abe8b4bcc46811fc9d01ba79e850decb998 Author: Bill Pemberton Date: Thu Jun 17 13:10:50 2010 -0400 Staging: xgifb: Remove XGI_HW_DEVICE_INFO and PXGI_HW_DEVICE_INFO typedefs Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 1d9f9a9ba8a51fc6ac750aa33432a5a52eff039a Author: Bill Pemberton Date: Thu Jun 17 13:10:49 2010 -0400 Staging: xgifb: Remove XGI_DSReg and PXGI_DSReg typedefs Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 621a683fe8003850cb9e9257f379b7c020157912 Author: Bill Pemberton Date: Thu Jun 17 13:10:48 2010 -0400 Staging: xgifb: Remove XGI_LCD_TYPE and XGI_VB_CHIP_TYPE typedefs There is no need for these to be typedefs as a simple enum will do. Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 108afbf8aef6520f2f34b3add94b059b60c44139 Author: Bill Pemberton Date: Thu Jun 17 13:10:47 2010 -0400 Staging: xgifb: Remove SHORT, UCHAR, and LONG typedef Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 82d6eb5b2ecd4ccdd44a23115fc499ecefc77706 Author: Bill Pemberton Date: Thu Jun 17 13:10:46 2010 -0400 Staging: xgifb: Remove USHORT, ULONG, BOOLEAN, and VOID typedefs Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 490ce818c6ff60257b543207aa042991e32017af Author: Bill Pemberton Date: Thu Jun 17 13:10:45 2010 -0400 Staging: xgifb: Remove unused code Remove code that was removed using #if 0 Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit fc3678a6c0ee4eb59244a5ba2da58ca47fd20501 Author: Bill Pemberton Date: Thu Jun 17 13:10:44 2010 -0400 Staging: xgifb: Remove PUSHORT, PLONGU, and PVOID typedefs Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 274afb73bd14558d8363898c51d4ee708bba73b7 Author: Bill Pemberton Date: Thu Jun 17 13:10:43 2010 -0400 Staging: xgifb: Remove PUCHAR typedef PUCHAR was unsigned char *, use that instead Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit dda08c59680d5fce058430ad59678d27fa0448c2 Author: Bill Pemberton Date: Thu Jun 17 13:10:42 2010 -0400 Staging: xgifb: Remove defines for TRUE, FALSE, and NULL Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 1e59f7119f0a998e3d453614b3d074962b84bc83 Author: Bill Pemberton Date: Thu Jun 17 13:10:41 2010 -0400 Staging: xgifb: Remove port macros in osdef.h The port related macros in osdef.h are replaced with calls to out?() and in?(). This removes the last macros defined in osdef.h, so this file is no longer needed. Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit cc75bb02db530748515f0bf95039c4a15b3ef0be Author: Bill Pemberton Date: Thu Jun 17 13:10:40 2010 -0400 Staging: xgifb: Remove XGI_SetMemory and XGI_MemoryCopy These were just macros for memset and memcpy, so use those instead. Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit f2f58e14efe5d1de1003a05fbdb82a66fc22dfb8 Author: Bill Pemberton Date: Thu Jun 17 13:10:39 2010 -0400 Staging: xgifb: Remove use of LINUX_KERNEL define Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 84c7603c3888da8ee69802ad4f4647f94d18e2c5 Author: Bill Pemberton Date: Thu Jun 17 13:10:38 2010 -0400 Staging: xgifb: Remove use of LINUX_XF86 define Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 784cfe1d07259ba7faaa4f64a8d59c56d7a55641 Author: Bill Pemberton Date: Thu Jun 17 13:10:37 2010 -0400 Staging: xgifb: Remove use of TC define Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit af49a7c9ec9adab8da132e616471837663db5db1 Author: Bill Pemberton Date: Thu Jun 17 13:10:36 2010 -0400 Staging: xgifb: Remove use of WINCE_HEADER define Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit bf4fc6ac016eb27e5f99296394f231def05d0a96 Author: Bill Pemberton Date: Thu Jun 17 13:10:35 2010 -0400 Staging: xgifb: Remove code for WIN2000 Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 23aada9cc34759352e9a82c1a157d0e1ba3712bc Author: Bill Pemberton Date: Thu Jun 17 13:10:34 2010 -0400 Staging: xgifb: remove use of LINUX_VERSION_CODE Remove ifdefs that check LINUX_VERSION_CODE as this is not needed in the staging tree. Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit acf82e050150490e7a2d795594b2c6cb54243bfd Author: Bill Pemberton Date: Thu Jun 17 13:10:33 2010 -0400 Staging: xgifb: use %lx instead of %x in printk format This fixes compiler warning format '%x' expects type 'unsigned int', but argument 2 has type 'long unsigned int' Signed-off-by: Bill Pemberton Cc: Arnaud Patard Signed-off-by: Greg Kroah-Hartman commit 9303bbd3de3b25061de11e4d8c891fa9592fad8c Author: Benny Halevy Date: Tue May 25 09:50:23 2010 +0300 nfsd: nfs4callback encode_stateid helper function To be used also for the pnfs cb_layoutrecall callback Signed-off-by: Benny Halevy [nfsd4: fix cb_recall encoding] "nfsd: nfs4callback encode_stateid helper function" forgot to reserve more space after return from the new helper. Reported-by: Michael Groshans Signed-off-by: Benny Halevy Signed-off-by: J. Bruce Fields commit 4731030d58a146630f5e8a0519661a5344a60f45 Author: J. Bruce Fields Date: Tue Jun 22 16:17:12 2010 -0400 nfsd4: translate memory errors to delay, not serverfault If the server is out of memory is better for clients to back off and retry than to just error out. Signed-off-by: J. Bruce Fields commit 76407f76e0f71428f3c31faff004bff87fea51ba Author: J. Bruce Fields Date: Tue Jun 22 14:10:14 2010 -0400 nfsd4; fix session reference count leak Note the session has to be put() here regardless of what happens to the client. Signed-off-by: J. Bruce Fields commit e4cb3720bfcf8b57b4c5a2adbbb6b5967af53432 Author: Daniel Seither Date: Tue Jun 22 01:25:54 2010 +0200 Staging: batman-adv: record route for ICMP messages The standard layer 3 ping utility can use the record route (RR) option of IP to collect route data for sent ping messages (ping -R). This patch introduces comparable functionality for batman-adv ICMP messages. The patch adds a second batman ICMP packet format (icmp_packet_rr) such that up to 17 MAC addresses can be recorded (sufficient for up to 8 hops per direction). When no RR is wanted, the old icmp_packet without the RR overhead can be sent. Signed-off-by: Daniel Seither Signed-off-by: Marek Lindner [sven.eckelmann@gmx.de: Rework on top of current version] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 11f79decfd4e33e29694075a859f529e6d4321ad Author: Simon Wunderlich Date: Tue Jun 22 01:25:53 2010 +0200 Staging: batman-adv: bonding and interface alternating This patch adds interface alternating to the new bonding feature. By default, we now try to avoid forwarding packets on the receiving interface, instead choosing alternative interfaces. This feature works only on nodes which have multiple interfaces connected to the mesh. This approach should reduce problems of the half-duplex nature of WiFi Hardware and thus increase performance. Signed-off-by: Simon Wunderlich Acked-by: Marek Lindner [sven.eckelmann@gmx.de: Rework on top of current version] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit e35fd5ecde2ef0b247a607bc82c4b8f1de06d53b Author: Simon Wunderlich Date: Tue Jun 22 01:25:52 2010 +0200 Staging: batman-adv: Add bonding functionality This patch introduces bonding functionality to batman-advanced, targeted for the 0.3 release. As we are able to route the payload traffic as we want, we may use multiple interfaces on multihomed hosts to transfer data to achieve higher bandwidth. This can be considered as "light Multi Path Routing" for single hop connections. To detect which interfaces of a peer node belong to the same host, a new flag PRIMARIES_FIRST_HOP is introduced. This flag is set on the first hop of OGMs of the primary (first) interface, which is broadcasted on all interfaces. When receiving such an OGM, we can learn which interfaces belong to the same host (by assigning them to the primary originator). Bonding works by sending packets in a round-robin fashion to the available interfaces of a neighbor host, if multiple interfaces are available. The neighbor interfaces should be almost equally good to reach. To avoid interferences (i.e. sending on the same channel), only neighbor interfaces with different mac addresses and different outgoing interfaces are considered as candidates. Bonding is deactivated by default, and can be activated by echo 1 > /sys/class/net/bat0/mesh/bonding for each individual node. Signed-off-by: Simon Wunderlich [sven.eckelmann@gmx.de: Rework on top of current version] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit cf2d72ec5c66ac3ebe9d28c3d88314a958cc180e Author: Simon Wunderlich Date: Tue Jun 22 01:25:51 2010 +0200 Staging: batman-adv: 32bit sequence number and TTL for broadcasts This patch changes the sequence number range from 8 or 16 bit to 32 bit. This should avoid problems with the sequence number sliding window algorithm which we had seen in the past for broadcast floods or malicious packet injections. We can not assure 100% security with this patch, but it is quite an improvement over the old 16 bit sequence numbers: * expected window size can be increased (4096 -> 65536) * 64k packets in the right order would now be needed to cause a loop, which seems practically impossible. Furthermore, a TTL field has been added to the broadcast packet type, just to make sure. These changes required to increase the compatibility level once again. Signed-off-by: Simon Wunderlich [sven.eckelmann@gmx.de: Change atomic64_* back to atomic_*, Rework on top of current version] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 6856ba1f44522b381c9a60b7972dd0fb52c54093 Author: Simon Wunderlich Date: Tue Jun 22 01:25:50 2010 +0200 Staging: batman-adv: Add release information for version 2010.0.0 Signed-off-by: Simon Wunderlich Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 5a39195769febbc29a1d60d02f655ee32c252813 Author: Linus Lüssing Date: Tue Jun 22 01:25:49 2010 +0200 Staging: batman-adv: permit setting ogm interval to JITTER*2 When trying to set the originator interval to 40ms, we are asked to set it to a minimum value of 40ms. This patch permits setting an originator interval of JITTER*2 (40ms by default) now. Signed-off-by: Linus Lüssing Signed-off-by: Simon Wunderlich Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 8bfe3638747b2c2f842edf9eb2a407a22a9d537d Author: Sven Eckelmann Date: Tue Jun 22 01:25:48 2010 +0200 Staging: batman-adv: Ignore debugfs on kernels without debugfs support All code for debugfs is ignored when the creation of the batman-adv root directory in debugfs fails. It must also be ignored when the debugfs_create_dir tells us that debugfs is not implemented to prevent possible crashes in the future. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 42fa1b92ab3261ef60ef4f60ff6eff2a0585348d Author: Sven Eckelmann Date: Tue Jun 22 01:25:47 2010 +0200 Staging: batman-adv: Mark locally used symbols as static Functions and variables which are used only inside one object file can be declared as static. This helped to find unused functions/variables * mainIfAddr_default * main_if_was_up and functions with declarations but missing definitions * hash_debug * orig_find * send_own_packet_work Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 516c9a777819150bf3a9b709cd93325cf29a93bf Author: Joe Perches Date: Tue Jun 22 01:25:46 2010 +0200 Staging: batman-adv: Convert MAC_FMT to %pM Remove the last uses of MAC_FMT Signed-off-by: Joe Perches [sven.eckelmann@gmx.de: Adapted for current batman-adv version] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 1bcb164e5d28b316512cd06c5092bc6a03506417 Author: Marek Lindner Date: Tue Jun 22 01:25:45 2010 +0200 Staging: batman-adv: remove superfluous hint to "translation table" Signed-off-by: Marek Lindner [sven.eckelmann@gmx.de: Rework on top of current version] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 3a632cc71a8a0aea00db14c22f75d1a3846f9c4f Author: Marek Lindner Date: Tue Jun 22 01:25:44 2010 +0200 Staging: batman-adv: convert all sysfs files to single value files This patch removes the extra usage output which came when the sysfs files were read. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 4caecbc03931522bd4af165edb1cfcfc4d3d7887 Author: Sven Eckelmann Date: Tue Jun 22 01:25:43 2010 +0200 Staging: batman-adv: Move tables from sysfs to debugfs Files which represent more than a single attribute aren't allowed in sysfs. As we have some files which aren't essential and are lists or tables aggregated from data from different places inside batman-adv, we must place them in a filesystem without such a restriction. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit c41214328a7635dc35aa81d89ea579c8a2eb2769 Author: Sven Eckelmann Date: Tue Jun 22 01:25:42 2010 +0200 Staging: batman-adv: Move device for icmp injection to debugfs batctl uses /dev/batman-adv to send special batman-adv icmp packets to other nodes in the mesh. To get it working with multiple batX devices we must ensure that every mesh device can have their own socket which is used to inject those packets in exactly one mesh. The current implementation still doesn't allow to use complete separated meshes as we rely on structures which are not part of the private data of a batman device. Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 1055d76d91e69c8ea9fb748db4d4a53b6384df31 Author: Trond Myklebust Date: Wed Jun 16 09:52:27 2010 -0400 NFSv4.1: There is no need to init the session more than once... Set up a flag to ensure that is indeed the case. Signed-off-by: Trond Myklebust commit fe74ba3a8db003410e48863a5cafa6ac90674540 Author: Trond Myklebust Date: Wed Jun 16 09:52:27 2010 -0400 NFSv41: Cleanup for nfs4_alloc_session. There is no reason to change the nfs_client state every time we allocate a new session. Move that line into nfs4_init_client_minor_version. Signed-off-by: Trond Myklebust commit d77d76ffb638bd013782138cca6d8f4918c5afd6 Author: Trond Myklebust Date: Wed Jun 16 09:52:27 2010 -0400 NFSv41: Clean up exclusive create Signed-off-by: Trond Myklebust commit a4432345352c2be157ed844603147ac2c82f209c Author: Trond Myklebust Date: Wed Jun 16 09:52:27 2010 -0400 NFSv41: Deprecate nfs_client->cl_minorversion Signed-off-by: Trond Myklebust commit e047a10c1293ee0ab20258154e7f3ebf8ad502d6 Author: Trond Myklebust Date: Wed Jun 16 09:52:27 2010 -0400 NFSv41: Fix nfs_async_inode_return_delegation() ugliness Signed-off-by: Trond Myklebust commit c48f4f3541e67881c9eb7c46e052f5ece48ef530 Author: Trond Myklebust Date: Wed Jun 16 09:52:27 2010 -0400 NFSv41: Convert the various reboot recovery ops etc to minor version ops Signed-off-by: Trond Myklebust commit 97dc135947181a6670949a480da56c3ebf8d3715 Author: Trond Myklebust Date: Wed Jun 16 09:52:26 2010 -0400 NFSv41: Clean up the NFSv4.1 minor version specific operations Signed-off-by: Trond Myklebust commit a2118c33aad6c447ad5e0a60cfaea3939b52ce0a Author: Trond Myklebust Date: Wed Jun 16 09:52:26 2010 -0400 NFSv41: Don't store session state in the nfs_client->cl_state Signed-off-by: Trond Myklebust commit df8964554a4e19c8ddcc4d9c642c4d267662d770 Author: Trond Myklebust Date: Wed Jun 16 09:52:26 2010 -0400 NFSv41: Further cleanup for nfs4_sequence_done Instead of testing if the nfs_client has a session, we should be testing if the struct nfs4_sequence_res was set up with one. Signed-off-by: Trond Myklebust commit 035168ab39f66e4946d493f9ee20d11e154f332a Author: Trond Myklebust Date: Wed Jun 16 09:52:26 2010 -0400 NFSv4.1: Make nfs4_setup_sequence take a nfs_server argument In anticipation of the day when we have per-filesystem sessions, and also in order to allow the session to change in the event of a filesystem migration event. Signed-off-by: Trond Myklebust commit 71ac6da9944e2c9ec73ca64ca7bca74428858585 Author: Trond Myklebust Date: Wed Jun 16 09:52:26 2010 -0400 NFSv4.1: Merge the nfs41_proc_async_sequence() and nfs4_proc_sequence() Signed-off-by: Trond Myklebust commit aa5190d0ed7d042c6d7d89fe8101558a912eee73 Author: Trond Myklebust Date: Wed Jun 16 09:52:25 2010 -0400 NFSv4: Kill nfs4_async_handle_error() abuses by NFSv4.1 Signed-off-by: Trond Myklebust commit d185a334c748b3ca9de1f3a293fd8a9cf68378ab Author: Trond Myklebust Date: Wed Jun 16 09:52:25 2010 -0400 NFSv4.1: Simplify nfs41_sequence_done() Nobody uses the rpc_status parameter. It is not obvious why we need the struct nfs_client argument either, when we already have that information in the session. Signed-off-by: Trond Myklebust commit 2a6e26cdb8f17b1075c2dfd8f2f3c341bac4f441 Author: Trond Myklebust Date: Wed Jun 16 09:52:25 2010 -0400 NFSv4.1: Clean up nfs4_setup_sequence Firstly, there is little point in first zeroing out the entire struct nfs4_sequence_res, and then initialising all fields save one. Just initialise the last field to zero... Secondly, nfs41_setup_sequence() has only 2 possible return values: 0, or -EAGAIN, so there is no 'terminate rpc task' case. Signed-off-by: Trond Myklebust commit d5f8d3fe72594f2e896b407f78daf24f37ef4d53 Author: Trond Myklebust Date: Wed Jun 16 09:52:25 2010 -0400 NFSv41: Fix a memory leak in nfs41_proc_async_sequence() If the call to rpc_call_async() fails, then the arguments will not be freed, since there will be no call to nfs41_sequence_call_done Signed-off-by: Trond Myklebust commit e3e94084adb5610987283367574ebc771e8206e1 Author: K.Prasad Date: Tue Jun 15 11:36:12 2010 +0530 powerpc, hw_breakpoint: Discard extraneous interrupt due to accesses outside symbol length Many a times, the requested breakpoint length can be less than the fixed breakpoint length i.e. 8 bytes supported by PowerPC 64-bit server (Book III S) processors. This could lead to extraneous interrupts resulting in false breakpoint notifications. This detects and discards such interrupts for non-ptrace requests. We don't change ptrace behaviour to avoid breaking compatability. [Suggestion from Paul Mackerras to add a new flag in 'struct arch_hw_breakpoint' to identify extraneous interrupts] Signed-off-by: K.Prasad Signed-off-by: Paul Mackerras commit 06532a6743d83fac4b79389fc8c86c88cb4e3302 Author: K.Prasad Date: Tue Jun 15 11:35:41 2010 +0530 powerpc, hw_breakpoint: Enable hw-breakpoints while handling intervening signals A signal delivered between a hw_breakpoint_handler() and the single_step_dabr_instruction() will not have the breakpoint active while the signal handler is running -- the signal delivery will set up a new MSR value which will not have MSR_SE set, so we won't get the signal step interrupt until and unless the signal handler returns (which it may never do). To fix this, we restore the breakpoint when delivering a signal -- we clear the MSR_SE bit and set the DABR again. If the signal handler returns, the DABR interrupt will occur again when the instruction that we were originally trying to single-step gets re-executed. [Paul Mackerras pointed out the need to do this.] Signed-off-by: K.Prasad Signed-off-by: Paul Mackerras commit 2538c2d08f46141550a1e68819efa8fe31c6e3dc Author: K.Prasad Date: Tue Jun 15 11:35:31 2010 +0530 powerpc, hw_breakpoint: Handle concurrent alignment interrupts If an alignment interrupt occurs on an instruction that is being single-stepped, the alignment interrupt handler currently handles the single-step condition by unconditionally sending a SIGTRAP to the process. Other synchronous interrupts that result in the instruction being emulated do likewise. With hw_breakpoint support, the hw_breakpoint code needs to be able to intercept these single-step events as well as those where the instruction executes normally and a trace interrupt happens. Fix this by making emulate_single_step() use the existing single_step_exception() function instead of calling _exception() directly. We then make single_step_exception() use the abstracted clear_single_step() rather than clearing bits in the MSR image directly so that emulate_single_step() will continue to work correctly on Book 3E processors. Signed-off-by: K.Prasad Signed-off-by: Paul Mackerras commit 5aae8a53708025d4e718f0d2e7c2f766779ddc71 Author: K.Prasad Date: Tue Jun 15 11:35:19 2010 +0530 powerpc, hw_breakpoints: Implement hw_breakpoints for 64-bit server processors Implement perf-events based hw-breakpoint interfaces for PowerPC 64-bit server (Book III S) processors. This allows access to a given location to be used as an event that can be counted or profiled by the perf_events subsystem. This is done using the DABR (data breakpoint register), which can also be used for process debugging via ptrace. When perf_event hw_breakpoint support is configured in, the perf_event subsystem manages the DABR and arbitrates access to it, and ptrace then creates a perf_event when it is requested to set a data breakpoint. [Adopted suggestions from Paul Mackerras to - emulate_step() all system-wide breakpoints and single-step only the per-task breakpoints - perform arch-specific cleanup before unregistration through arch_unregister_hw_breakpoint() ] Signed-off-by: K.Prasad Signed-off-by: Paul Mackerras commit f7136c5150c29846d7a1d09109449d96b2f63445 Author: K.Prasad Date: Tue Jun 15 11:34:34 2010 +0530 hw_breakpoints: Allow arch-specific cleanup before breakpoint unregistration Certain architectures (such as PowerPC) have a need to clean up data structures before a breakpoint is unregistered. This introduces an arch-specific hook in release_bp_slot() along with a weak definition in the form of a stub function. Signed-off-by: K.Prasad Acked-by: Frederic Weisbecker Signed-off-by: Paul Mackerras commit 0016a4cf5582415849fafbf9f019dd9530824789 Author: Paul Mackerras Date: Tue Jun 15 14:48:58 2010 +1000 powerpc: Emulate most Book I instructions in emulate_step() This extends the emulate_step() function to handle a large proportion of the Book I instructions implemented on current 64-bit server processors. The aim is to handle all the load and store instructions used in the kernel, plus all of the instructions that appear between l[wd]arx and st[wd]cx., so this handles the Altivec/VMX lvx and stvx and the VSX lxv2dx and stxv2dx instructions (implemented in POWER7). The new code can emulate user mode instructions, and checks the effective address for a load or store if the saved state is for user mode. It doesn't handle little-endian mode at present. For floating-point, Altivec/VMX and VSX instructions, it checks that the saved MSR has the enable bit for the relevant facility set, and if so, assumes that the FP/VMX/VSX registers contain valid state, and does loads or stores directly to/from the FP/VMX/VSX registers, using assembly helpers in ldstfp.S. Instructions supported now include: * Loads and stores, including some but not all VMX and VSX instructions, and lmw/stmw * Atomic loads and stores (l[dw]arx, st[dw]cx.) * Arithmetic instructions (add, subtract, multiply, divide, etc.) * Compare instructions * Rotate and mask instructions * Shift instructions * Logical instructions (and, or, xor, etc.) * Condition register logical instructions * mtcrf, cntlz[wd], exts[bhw] * isync, sync, lwsync, ptesync, eieio * Cache operations (dcbf, dcbst, dcbt, dcbtst) The overflow-checking arithmetic instructions are not included, but they appear not to be ever used in C code. This uses decimal values for the minor opcodes in the switch statements because that is what appears in the Power ISA specification, thus it is easier to check that they are correct if they are in decimal. If this is used to single-step an instruction where a data breakpoint interrupt occurred, then there is the possibility that the instruction is a lwarx or ldarx. In that case we have to be careful not to lose the reservation until we get to the matching st[wd]cx., or we'll never make forward progress. One alternative is to try to arrange that we can return from interrupts and handle data breakpoint interrupts without losing the reservation, which means not using any spinlocks, mutexes, or atomic ops (including bitops). That seems rather fragile. The other alternative is to emulate the larx/stcx and all the instructions in between. This is why this commit adds support for a wide range of integer instructions. Signed-off-by: Paul Mackerras commit fe6fb552858f686f39e33d7b0a33fe56dacea0bf Author: Arnd Hannemann Date: Tue Jun 22 08:22:21 2010 +0200 netfilter: fix simple typo in KConfig for netfiltert xt_TEE Destination was spelled wrong in KConfig. Signed-off-by: Arnd Hannemann Signed-off-by: Patrick McHardy commit 600069daf792f497ae1e1da74e2fff6ac5de6c47 Author: Randy Dunlap Date: Tue Jun 22 08:13:31 2010 +0200 netfilter: xt_IDLETIMER needs kdev_t.h Add header file to fix build error: net/netfilter/xt_IDLETIMER.c:276: error: implicit declaration of function 'MKDEV' Signed-off-by: Randy Dunlap Signed-off-by: Patrick McHardy commit 0b2e918aa99fe6c3b8f163aa323a275ad8577828 Author: Tejun Heo Date: Mon Jun 21 23:53:31 2010 +0200 sched, cpuset: Drop __cpuexit from cpu hotplug callbacks Commit 3a101d05 (sched: adjust when cpu_active and cpuset configurations are updated during cpu on/offlining) added hotplug notifiers marked with __cpuexit; however, ia64 drops text in __cpuexit during link unlike x86. This means that functions which are referenced during init but used only for cpu hot unplugging afterwards shouldn't be marked with __cpuexit. Drop __cpuexit from those functions. Reported-by: Tony Luck Signed-off-by: Tejun Heo Acked-by: Tony Luck Cc: Peter Zijlstra LKML-Reference: <4C1FDF5B.1040301@kernel.org> Signed-off-by: Ingo Molnar commit 26ec037f9841e49cc5c615deb8e1e73e5beab2ca Author: Nick Chalk Date: Tue Jun 22 08:07:01 2010 +0200 IPVS: one-packet scheduling Allow one-packet scheduling for UDP connections. When the fwmark-based or normal virtual service is marked with '-o' or '--ops' options all connections are created only to schedule one packet. Useful to schedule UDP packets from same client port to different real servers. Recommended with RR or WRR schedulers (the connections are not visible with ipvsadm -L). Signed-off-by: Nick Chalk Signed-off-by: Simon Horman Signed-off-by: Patrick McHardy commit 9f61d85fd0fe91f9a17a9f304d67e55f8ae38b2e Author: Arnaldo Carvalho de Melo Date: Mon Jun 21 19:38:33 2010 -0300 perf ui: Move objdump_line specific stuff out of ui_browser By adding a ui_browser->refresh_entries() pure virtual member. Cc: Frédéric Weisbecker Cc: Stephane Eranian Cc: Tom Zanussi LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 1bd2c2159a32313ae1f872b6225601aed397524c Author: Javier Martinez Canillas Date: Sun Jun 6 21:03:05 2010 +0200 Staging: batman-adv: fix function prototype In today linux-next I got a compile warning in staging/batman-adv. This is due a struct bin_attribute read function prototype change and the driver was not updated. This patch solves the issue Signed-off-by: Javier Martinez Canillas Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit cf2d3fc9786ba005f9bde50a4e72a1d0b70472ff Author: Dan Carpenter Date: Sun Jun 6 21:03:04 2010 +0200 Staging: batman-adv: return -EFAULT on copy_to_user errors copy_to_user() returns the number of bites remaining but we want to return a negative error code here. Signed-off-by: Dan Carpenter Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 7b313fdf2303ddfaea6ae1aad09fb3ccdb884bcc Author: Sam Ravnborg Date: Sat Jun 19 17:19:25 2010 +0200 [IA64] beautify vmlinux.lds.h Use the same style as used for C code in vmlinux.lds.h. This is the same format as have been gradually introduced for other architectures in the kernel. This patch do not introduce any functional changes. Note: Use "git diff -w" to supress whitespace noise. Signed-off-by: Sam Ravnborg Signed-off-by: Tony Luck commit 13f499f076c67675e6e3022973729b5d906a84e9 Author: Arnaldo Carvalho de Melo Date: Mon Jun 21 18:04:02 2010 -0300 perf ui: Separate showing the entries from running the browser Another patch eroding the changes I had to move to a tree widget that doesn't requires adding all entries in an existing list/tree structure to a generic tree widget, but instead allows traversing just the entries that should appear on the screen on a given moment. Cc: Frédéric Weisbecker Cc: Stephane Eranian Cc: Tom Zanussi LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 309caa9cc6ff39d261264ec4ff10e29489afc8f8 Author: Russell King Date: Mon Jun 21 21:03:18 2010 +0100 ARM: Prohibit ioremap() on kernel managed RAM ARMv6 and above have a restriction whereby aliasing virtual:physical mappings must not have differing memory type and sharability attributes. Strictly, this covers the memory type (strongly ordered, device, memory), cache attributes (uncached, write combine, write through, write back read alloc, write back write alloc) and the shared bit. However, using ioremap() and its variants on system RAM results in mappings which differ in these attributes from the main system RAM mapping. Other architectures which similar restrictions approch this problem in the same way - they do not permit ioremap on main system RAM. Make ARM behave in the same way, with a WARN_ON() such that users can be traced and an alternative approach found. Signed-off-by: Russell King commit 57a58a2e4407859932c72fd9f57f89eff330d77a Author: Cyril Chemparathy Date: Tue May 18 12:51:21 2010 -0400 Davinci: tnetv107x evm board initial support Added support for tnetv107x evaluation module. Signed-off-by: Cyril Chemparathy Signed-off-by: Kevin Hilman commit d92c7962470b699ef7a697524b9a679846e9e15b Author: Cyril Chemparathy Date: Tue May 18 12:51:20 2010 -0400 Davinci: tnetv107x initial gpio support This patch adds support for the tnetv107x gpio controller. Key differences between davinci and tnetv107x controllers: - register map - davinci's controller is organized into banks of 32 gpios, tnetv107x has a single space with arrays of registers for in, out, direction, etc. - davinci's controller has separate set/clear registers for output, tnetv107x has a single direct mapped register. This patch does not yet add gpio irq support on this controller. Signed-off-by: Cyril Chemparathy Signed-off-by: Kevin Hilman commit 4d1e78480cc5b5937c9384e47a0b2b0cdf117da4 Author: Cyril Chemparathy Date: Tue May 18 12:51:19 2010 -0400 Davinci: tnetv107x soc support TNETV107X is a Texas Instruments SOC that shares a number of common features with the Davinci architecture. Some of the key differences between traditional Davincis and this new SOC are as follow: 1. The SOCs clock architecture includes a new spread-spectrum PLL. Some elements of the clock architecture are reused from Davinci (e.g. LPSC), but the PLL related code is overridden using existing interfaces in "struct clk". 2. The MMR layout on this SOC is substantially different from Davinci. Consequently, the fixed I/O map is a whole lot more convoluted (more so than DA8xx). The net impact here is that IO_ADDRESS() will not work on this SoC, and therefore all mappings have to be through ioremap(). Signed-off-by: Cyril Chemparathy Signed-off-by: Kevin Hilman commit 38db050e0bfc8c483e5d7b85feef23d46069ec18 Author: Cyril Chemparathy Date: Tue May 18 12:51:18 2010 -0400 Davinci: tnetv107x decompresser uart definitions Added definitions for tnetv107x uart base addresses, and modified base address selection for kernel decompressor to check for tnetv107x machine type. Signed-off-by: Cyril Chemparathy Signed-off-by: Kevin Hilman commit dc2eb76c40590a3c080294d1fbd000c8f70d88a9 Author: Cyril Chemparathy Date: Tue May 18 12:51:17 2010 -0400 Davinci: generalized debug macros This patch adopts a debug uart selection similar to the OMAP model. During the boot process, the uncompress code determines the physical and virtual base addresses of the board-specific debug uart. These addresses are then passed on to the in-kernel debug macros through a small chunk of memory placed just below the page tables (@0x80003ff8). Signed-off-by: Cyril Chemparathy Signed-off-by: Kevin Hilman commit f90754c15f47063671aea55268a9dd6a37b51492 Author: Juuso Oikarinen Date: Mon Jun 21 08:59:39 2010 +0300 mac80211: Add interface for driver to temporarily disable dynamic ps This mechanism introduced in this patch applies (at least) for hardware designs using a single shared antenna for both WLAN and BT. In these designs, the antenna must be toggled between WLAN and BT. In those hardware, managing WLAN co-existence with Bluetooth requires WLAN full power save whenever there is Bluetooth activity in order for WLAN to be able to periodically relinquish the antenna to be used for BT. This is because BT can only access the shared antenna when WLAN is idle or asleep. Some hardware, for instance the wl1271, are able to indicate to the host whenever there is BT traffic. In essence, the hardware will send an indication to the host whenever there is, for example, SCO traffic or A2DP traffic, and will send another indication when the traffic is over. The hardware gets information of Bluetooth traffic via hardware co-existence control lines - these lines are used to negotiate the shared antenna ownership. The hardware will give the antenna to BT whenever WLAN is sleeping. This patch adds the interface to mac80211 to facilitate temporarily disabling of dynamic power save as per request of the WLAN driver. This interface will immediately force WLAN to full powersave, hence allowing BT coexistence as described above. In these kind of shared antenna desings, when WLAN powersave is fully disabled, Bluetooth will not work simultaneously with WLAN at all. This patch does not address that problem. This interface will not change PSM state, so if PSM is disabled it will remain so. Solving this problem requires knowledge about BT state, and is best done in user-space. Signed-off-by: Juuso Oikarinen Signed-off-by: John W. Linville commit fb63bc41772259701a827e9a6117219a7393554f Author: Gertjan van Wingerde Date: Sun Jun 20 20:28:07 2010 +0200 mac80211: Fix compile warning in scan.c. Fix the following compile warning: CC [M] net/mac80211/scan.o net/mac80211/scan.c: In function 'ieee80211_request_internal_scan': net/mac80211/scan.c:749:23: warning: comparison between 'enum nl80211_band' and 'enum ieee80211_band' caused by the local variable band not being of the proper 'ieee80211_band' type. Signed-off-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit bb64d95e539fe09230d42b4634ac712ca5cb700b Author: Larry Finger Date: Sat Jun 19 08:29:08 2010 -0500 b43: Clarify logged message after fatal DMA error and switch to PIO mode The message following fatal DMA errors fails to indicate properly that the driver has switched to PIO mode. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 051cb98686ab84a89b713cb69093445ce6a95b3d Author: Wey-Yi Guy Date: Mon Jun 14 17:13:14 2010 -0700 iwlwifi: remove non-exist reference Remove the reference to non-exist function in iwlcore Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 936e8a734fea8f18d0d90846bb726fd5bd7e128b Author: Wey-Yi Guy Date: Mon Jun 14 17:09:56 2010 -0700 iwlwifi: code cleanup to remove un-necessary "goto" Break out of loop and log the error message when encounter error; this is better approach than using "goto". Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit f84ac08db25f60a6973cac1a90f392b286054e2f Author: Wey-Yi Guy Date: Mon Jun 14 17:09:55 2010 -0700 iwlwifi: move calibration from iwlcore to iwlagn All the calibrations are "agn" only functions, move from iwlcore to iwlagn. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit f3aebeeebc9a18aa548f8c1da18f6cda28d8b732 Author: Wey-Yi Guy Date: Mon Jun 14 17:09:54 2010 -0700 iwlwifi: move _agn statistics related structure agn and 3945 has different statistics_notif data structure; since 3945 has it statistics_notif data structure inside the _3945 portion of iwl_priv, it make sense to move the agn statistics_notif into _agn portion. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 278fc73c0c6014bc2f55bce898bdeaa322bf4aba Author: Wey-Yi Guy Date: Mon Jun 14 17:09:53 2010 -0700 iwlwifi: move agn specific rx related code to iwl-agn-rx.c To avoid having unnecessary functions in iwlcore.ko, those that are not shared by agn and 3945, move agn specific rx related code to iwl-agn-rx.c. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 8756371589e7d3ad15f1a385e1c09f5ae706b75e Author: Jay Sternberg Date: Mon Jun 14 14:40:40 2010 -0700 iwlwifi: display ucode SW Error in hex errors are defined in hex but displayed as decimal. displaying as hex debugging easier and eliminated having to manually convert. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre commit 09034cb77ec8530728dd672db7580faeaa29df10 Author: Johannes Berg Date: Mon Jun 14 08:32:38 2010 -0700 iwlwifi: return ucode errors from station management When station management calls to ucode return an error we could previously do nothing, but now that almost all calls are synchronous we can actually let the error bubble up. Use EIO as the error as it best indicates a problem with the device. Signed-off-by: Johannes Berg Signed-off-by: Reinette Chatre commit e666674eec98752d82388ae009e9039a62e744e7 Author: Johannes Berg Date: Mon Jun 14 08:32:24 2010 -0700 iwlwifi: use sync commands for keys Key management can use sync commands instead of asynchronous ones to have better error checking. Also add checks that the commands all should have the mutex held. Signed-off-by: Johannes Berg Signed-off-by: Reinette Chatre commit 4620fefa59d8aeae400b21d60d9a86aa11ebffa7 Author: Johannes Berg Date: Wed Jun 16 03:30:27 2010 -0700 iwlagn: use mutex for aggregation Now that the ampdu_action callback can sleep, we can use the mutex to properly protect the aggregation data, and return useful errors if they should happen. Also, add some sleep and mutex debugging so we won't call any of the functions that now require being able to sleep and/or the mutex to be held in an invalid context. Signed-off-by: Johannes Berg Acked-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 4b94dba029887effd8675164e782cb12889668b1 Author: Grazvydas Ignotas Date: Thu Jun 17 16:45:28 2010 +0300 ASoC: pandora: fix CLKX polarity After mass production started it was found that several boards exhibit noise problems during sound playback. After some investigation it was determined that CLKX polarity is set incorrectly, and even if most boards can tolerate the wrong setting, there are some that don't. Fix polarity setup in the board file. As the clock settings for input and output now match, merge in and out functions and structures to simplify code. Signed-off-by: Grazvydas Ignotas Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 46b0a07a45b07ed5ca8053bbb6ec522982d1a1dd Author: Arnaldo Carvalho de Melo Date: Mon Jun 21 13:36:20 2010 -0300 perf ui: Introduce ui_browser->seek to support multiple list structures So that we can use the ui_browser on things like an rb_tree, etc. Cc: Frédéric Weisbecker Cc: Stephane Eranian Cc: Tom Zanussi LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 8c694d2559acf09bfd8b71fe1795e740063ad803 Author: Arnaldo Carvalho de Melo Date: Mon Jun 21 12:44:42 2010 -0300 perf ui: Introduce routine ui_browser__is_current_entry Will be used in more places in the new tree widget. Cc: Frédéric Weisbecker Cc: Stephane Eranian Cc: Tom Zanussi LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 0b3fa399bef02f3658295f8dd334fc26a59c3a95 Author: Stefan Achatz Date: Fri Jun 18 16:42:25 2010 +0200 HID: roccat: remove obsolete kone_abi_version sysfs attribute The newest version of the accompanying userland tools cuts backward compatibility and uses libudev to find its devices superseding the quirky kone_abi_version sysfs attribute. Therefore it should be removed. Signed-off-by: Stefan Achatz Signed-off-by: Jiri Kosina commit cab6b16aca4ac12f731a523fe14770add2f9394a Author: Stefan Achatz Date: Sun Jun 20 19:19:06 2010 +0200 HID: roccat: fix offset errors in bin_attribute read Fixing wrong calculated offsets in bin_attribute read functions. Signed-off-by: Stefan Achatz Signed-off-by: Jiri Kosina commit 69ad78208ecf4c392f3d323ed050423847c24104 Author: Sjur Braendeland Date: Thu Jun 17 06:55:41 2010 +0000 caif: Add debug connection type for CAIF. Added new CAIF protocol type CAIFPROTO_DEBUG for accessing CAIF debug on the ST Ericsson modems. There are two debug servers on the modem, one for radio related debug (CAIF_RADIO_DEBUG_SERVICE) and the other for communication/application related debug (CAIF_COM_DEBUG_SERVICE). The debug connection can contain trace debug printouts or interactive debug used for debugging and test. Debug connections can be of type STREAM or SEQPACKET. Signed-off-by: Sjur Braendeland Signed-off-by: David S. Miller commit 2aa40aef9debc77d55cc87a50d335b6fe97fbeb0 Author: Sjur Braendeland Date: Thu Jun 17 06:55:40 2010 +0000 caif: Use link layer MTU instead of fixed MTU Previously CAIF supported maximum transfer size of ~4050. The transfer size is now calculated dynamically based on the link layers mtu size. Signed-off-by: Sjur Braendeland@stericsson.com Signed-off-by: David S. Miller commit a7da1f55a826c621251874e7684c234972fc3216 Author: Sjur Braendeland Date: Thu Jun 17 06:55:39 2010 +0000 caif: Bugfix - RFM must support segmentation. CAIF Remote File Manager may send or receive more than 4050 bytes. Due to this The CAIF RFM service have to support segmentation. Signed-off-by: Sjur Braendeland@stericsson.com Signed-off-by: David S. Miller commit b1c74247b9e29ae3bfdf133862328c309bc9cf14 Author: Sjur Braendeland Date: Thu Jun 17 06:55:38 2010 +0000 caif: Bugfix not all services uses flow-ctrl. Flow control is not used by all CAIF services. The usage of flow control is now part of the gerneal initialization function for CAIF Services. Signed-off-by: Sjur Braendeland@stericsson.com Signed-off-by: David S. Miller commit 3b2b65d68fc87b02ac393a031a4ebb3de84a8218 Author: Stefan Richter Date: Sun Jun 20 22:54:22 2010 +0200 firewire: cdev: extend fw_cdev_event_iso_interrupt documentation Add information regarding the 2.6.32 update to the xmit variant of fw_cdev_event_iso_interrupt. Signed-off-by: Stefan Richter commit e205597d188a9ea69ce43f740a14f07b3f5b996a Author: Stefan Richter Date: Sun Jun 20 22:53:55 2010 +0200 firewire: cdev: fix ABI for FCP and address range mapping, add fw_cdev_event_request2 The problem: A target-like userspace driver, e.g. AV/C target or SBP-2/3 target, needs to be able to act as responder and requester. In the latter role, it needs to send requests to nods from which it received requests. This is currently impossible because fw_cdev_event_request lacks information about sender node ID. Reported-by: Jay Fenlason Libffado + libraw1394 + firewire-core is currently unable to drive two or more audio devices on the same bus. Reported-by: Arnold Krille This is because libffado requires destination node ID of FCP requests and sender node ID of FCP responses to match. It even prohibits libffado from working with a bus on which libraw1394 opens a /dev/fw* as default ioctl device that does not correspond with the audio device. This is because libraw1394 does not receive the sender node ID from the kernel. Moreover, fw_cdev_event_request makes it impossible to tell unicast and broadcast write requests apart. The fix: Add a replacement of struct fw_cdev_event_request request, boringly called struct fw_cdev_event_request2. The new event will be sent to a userspace client instead of the old one if the client claims compatibility with ABI version 4 or later. libraw1394 needs to be extended to make use of the new event, in order to properly support libffado and other FCP or address range mapping users who require correct sender node IDs. Further notes: While we are at it, change back the range of possible values of fw_cdev_event_request.tcode to 0x0...0xb like in ABI version <= 3. The preceding change "firewire: expose extended tcode of incoming lock requests to (userspace) drivers" expanded it to 0x0...0x17 which could catch sloppily coded clients by surprise. The extended range of codes is only used in the new fw_cdev_event_request2.tcode. Jay and I also suggested an alternative approach to fix the ABI for incoming requests: Add an FW_CDEV_IOC_GET_REQUEST_INFO ioctl which can be called after reception of an fw_cdev_event_request, before issuing of the closing FW_CDEV_IOC_SEND_RESPONSE ioctl. The new ioctl would reveal the vital information about a request that fw_cdev_event_request lacks. Jay showed an implementation of this approach. The former event approach adds 27 LOC of rather trivial code to core-cdev.c, the ioctl approach 34 LOC, some of which is nontrivial. The ioctl approach would certainly also add more LOC to userspace programs which require the expanded information on inbound requests. This approach is probably only on the lighter-weight side in case of clients that want to be compatible with kernels that lack the new capability, like libraw1394. However, the code to be added to such libraw1394-like clients in case of the event approach is a straight- forward additional switch () case in its event handler. Signed-off-by: Stefan Richter commit c82f91f2663e79b150afd896ec72e798ba4e243d Author: Jay Fenlason Date: Tue May 18 10:57:33 2010 -0400 firewire: expose extended tcode of incoming lock requests to (userspace) drivers When a remote device does a LOCK_REQUEST, the core does not pass the extended tcode to userspace. This patch makes it use the juju-specific tcodes listed in firewire-constants.h for incoming requests. Signed-off-by: Jay Fenlason This matches how tcode in the API for outbound requests is treated. Affects kernelspace and userspace drivers alike, but at the moment there are no kernespace drivers that receive lock requests. Split out from a combo patch, slightly reordered, changelog reworded. Signed-off-by: Stefan Richter commit 604f45167824e18ad5766e51ecf1d4d65f15118d Author: Stefan Richter Date: Sun Jun 20 22:52:55 2010 +0200 firewire: cdev: freeze FW_CDEV_VERSION due to libraw1394 bug libraw1394 v2.0.0...v2.0.5 takes FW_CDEV_VERSION from an externally installed header file and uses it to declare its own implementation level in FW_CDEV_IOC_GET_INFO. This is wrong; it should set the real version for which it was actually written. If we add features to the kernel ABI that require the kernel to check a client's implementation level, we can not trust the client version if it was set from FW_CDEV_VERSION. Hence freeze FW_CDEV_VERSION at the current value (no damage has been done yet), clearly document FW_CDEV_VERSION as a dummy version and what clients are expected to do with fw_cdev_get_info.version, and use a new defined constant (which is not placed into the exported header file) as kernel implementation level. Note, in order to check in client program source code which features are present in an externally installed linux/firewire-cdev.h, use preprocessor directives like #ifdef FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE or #ifdef FW_CDEV_EVENT_ISO_RESOURCE_ALLOCATED instead of a check of FW_CDEV_VERSION. Signed-off-by: Stefan Richter commit 0244f57302f7e8bebd2f1ab58767eac2e9f678a6 Author: Stefan Richter Date: Sun Jun 20 22:52:27 2010 +0200 firewire: cdev: count references of cards during inbound transactions If a request comes in to an address range managed by a userspace driver i.e. client, the card instance of request and response may differ from the card instance of the client device. Therefore we need to take a reference of the card until the response was sent. I thought about putting the reference counting into core-transaction.c, but the various high-level drivers besides cdev clients (firewire-net, firewire-sbp2, firedtv) use the card pointer in their fw_address_handler address_callback method only to look up devices of which they already hold the necessary references. So this seems to be a specific firewire-cdev issue which is better addressed locally. We do not need the reference - in case of FCP_REQUEST or FCP_RESPONSE requests because then the firewire-core will send the split transaction response for us already in the context of the request handler, - if it is the same card as the client device's because we hold a card reference indirectly via teh client->device reference. To keep things simple, we take the reference nevertheless. Jay Fenlason wrote: > there's no way for the core to tell cdev "this card is gone, > kill any inbound transactions on it", while cdev holds the transaction > open until userspace issues a SEND_RESPONSE ioctl, which may be a very, > very long time. But when it does, it calls fw_send_response(), which > will dereference the card... > > So how unhappy are we about userspace potentially holding a fw_card > open forever? While termination of inbound transcations at card removal could be implemented, it is IMO not worth the effort. Currently, the effect of holding a reference of a card that has been removed is to block the process that called the pci_remove of the card. This is - either a user process ran by root. Root can find and kill processes that have /dev/fw* open, if desired. - a kernel thread (which one?) in case of hot removal of a PCCard or ExpressCard. The latter case could be a problem indeed. firewire-core's card shutdown and card release should probably be improved not to block in shutdown, just to defer freeing of memory until release. This is not a new problem though; the same already always happens with the client->device->card without the need of inbound transactions or other special conditions involved, other than the client not closing the file. Signed-off-by: Stefan Richter commit 08bd34c98d631fe85744d4c920c80f48a1d95f54 Author: Jay Fenlason Date: Tue May 18 14:02:45 2010 -0400 firewire: cdev: fix responses to nodes at different card My box has two firewire cards in it: card0 and card1. My application opens /dev/fw0 (card 0) and allocates an address space. The core makes the address space available on both cards. Along comes the remote device, which sends a READ_QUADLET_REQUEST to card1. The request gets passed up to my application, which calls ioctl_send_response(). ioctl_send_response() then calls fw_send_response() with card0, because that's the card it's bound to. Card0's driver drops the response, because it isn't part of a transaction that it has outstanding. So in core-cdev: handle_request(), we need to stash the card of the inbound request in the struct inbound_transaction_resource and use that card to send the response to. The hard part will be refcounting the card correctly so it can't get deallocated while we hold a pointer to it. Here's a trivial patch, which does not do the card refcounting, but at least demonstrates what the problem is. Note that we can't depend on the fact that the core-cdev:client structure holds a card open, because in this case the card it holds open is not the card the request came in on. ..and there's no way for the core to tell cdev "this card is gone, kill any inbound transactions on it", while cdev holds the transaction open until userspace issues a SEND_RESPONSE ioctl, which may be a very, very long time. But when it does, it calls fw_send_response(), which will dereference the card... So how unhappy are we about userspace potentially holding a fw_card open forever? Signed-off-by: Jay Fenlason Reference counting to be addressed in a separate change. Signed-off-by: Stefan Richter (whitespace) commit bdfe273ee54b29498851fc8058516037d284270c Author: Clemens Ladisch Date: Mon Jun 14 11:46:25 2010 +0200 firewire: cdev: fix race in iso context creation Protect the client's iso context pointer against a race that can happen when more than one creation call is executed at the same time. Signed-off-by: Clemens Ladisch Signed-off-by: Stefan Richter commit 33e553fe2b4a983ef34a57ab1440d8d33397bb12 Author: Stefan Richter Date: Sun Jun 20 22:50:35 2010 +0200 firewire: remove an unused function argument void (*fw_address_callback_t)(..., int speed, ...) is the speed that a remote node chose to transmit a request to us. In case of split transactions, firewire-core will transmit the response at that speed. Upper layer drivers on the other hand (firewire-net, -sbp2, firedtv, and userspace drivers) cannot do anything useful with that speed datum, except log it for debug purposes. But data that is merely potentially (not even actually) used for debug purposes does not belong into the API. Signed-off-by: Stefan Richter commit 56d04cb189f955e5167c27944d61aa57ad69b598 Author: Stefan Richter Date: Tue Jun 8 00:20:10 2010 +0200 firewire: core: remove an unnecessary zero initialization All of the fields of the iso_interrupt_event instance are overwritten right after it was allocated. Signed-off-by: Stefan Richter commit b45416656f55d880ab5a976be11bca720eff16c4 Author: Mark Brown Date: Sun Jun 20 14:05:46 2010 +0100 ASoC: Fix sorting of DA7210 entries in Kconfig Signed-off-by: Mark Brown commit ae86e81e434072be28ff4e9c1be3cc2562be8749 Author: Stefan Richter Date: Tue Jun 15 01:22:45 2010 +0200 firewire: core: remove unused variable which caused gcc 4.6 to warn about variable 'destination' set but not used. Since the hardware ensures that we receive only response packets with proper destination node ID (in a given bus generation), we have no use for destination here in the core as well as in upper layers. (This is different with request packets. There we pass destination node ID to upper layers because they may for example need to check whether this was an unicast or broadcast request.) Reported-and-Tested-By: Justin P. Mattock Signed-off-by: Stefan Richter commit 5030c807907ae90ad21e9220c1a9d592558deba2 Author: Stefan Richter Date: Tue Jun 15 02:00:11 2010 +0200 ieee1394: remove unused variables which caused gcc 4.6 to warn about variable 'XYZ' set but not used. sbp2.c, unit_characteristics: The underlying problem which was spotted here --- an incomplete implementation --- is already 50% fixed in drivers/firewire/sbp2.c which observes mgt_ORB_timeout but not yet ORB_size. raw1394.c, length_conflict; dv1394.c, ts_off: Impossible to tell why these variables are there. We can safely remove them though because we don't need a compiler warning to realize that we are dealing with (at least stylistically) flawed code here. dv1394.c, packet_time: This was used in debug macro that is only compiled in with DV1394_DEBUG_LEVEL >= 2 defined at compile-time. Just drop it since nobody debugs dv1394 anymore. Avoids noise in regular kernel builds. dv1394.c, ohci; eth1394.c, priv: These variables clearly can go away. Somebody wanted to use them but then didn't (or not anymore). Note, all of this code is considered to be at its end of life and is thus not really meant to receive janitorial updates anymore. But if we can easily remove noisy warnings from kernel builds, we should. Reported-by: Justin P. Mattock Signed-off-by: Stefan Richter commit 0fcff4e39323f466a47684d7c8ffa77e1be86c8a Author: Stefan Richter Date: Sat Jun 12 20:35:52 2010 +0200 firewire: rename CSR access driver methods Rather than "read a Control and Status Registers (CSR) Architecture register" I prefer to say "read a Control and Status Register". Signed-off-by: Stefan Richter commit b384cf18873da1ed100662aa7373edf5883a1c24 Author: Stefan Richter Date: Sat Jun 12 20:35:21 2010 +0200 firewire: core: combine some repeated code All of these CSRs have the same read/ write/ aynthing-else handling, except for CSR_PRIORITY_BUDGET which might not be implemented. The CSR_CYCLE_TIME read handler implementation accepted 4-byte-sized block write requests before this change but this is just silly; the register is only required to support quadlet read and write requests like the other r/w CSR core and Serial-Bus-dependent registers. Signed-off-by: Stefan Richter commit c8a94ded57e9cc2498d401b2f5c856213a3e19fb Author: Stefan Richter Date: Sat Jun 12 20:34:50 2010 +0200 firewire: normalize STATE_CLEAR/SET CSR access interface Push the maintenance of STATE_CLEAR/SET.abdicate down into the card driver. This way, the read/write_csr_reg driver method works uniformly across all CSR offsets. Signed-off-by: Stefan Richter commit db3c9cc105ee844f6cd7a1beb9926fb8e9a093ae Author: Stefan Richter Date: Sat Jun 12 20:30:21 2010 +0200 firewire: replace get_features card driver hook by feature variables in the fw_card struct. The hook appeared to be an unnecessary abstraction in the card driver interface. Cleaner would be to pass those feature flags as arguments to fw_card_initialize() or fw_card_add(), but the FairnessControl register is in the SCLK domain and may therefore not be accessible while Link Power Status is off, i.e. before the card->driver->enable call from fw_card_add(). Signed-off-by: Stefan Richter commit e847cc832bab50aad939a0c30414cd986637564d Author: Stefan Richter Date: Sat Jun 12 20:29:07 2010 +0200 firewire: drop sizeof expressions from some request size arguments In case of fw_card_bm_work()'s lock request, the present sizeof expression is going to be wrong if somebody changes the fw_card's DMA scratch buffer's size in the future. In case of quadlet write requests, sizeof(u32) is just silly; it's 4. In case of SBP-2 ORB pointer write requests, 8 is arguably quicker to understand as the correct and only possible value than sizeof(some_datum). Signed-off-by: Stefan Richter commit 65b2742ac002f554f6ca0c2eab84cc62400eafdf Author: Stefan Richter Date: Sat Jun 12 20:26:51 2010 +0200 firewire: 'add CSR_... support' addendum Add a comment on which of the conflicting NODE_IDS specifications we implement. Reduce a comment on rather irrelevant register bits that can all be looked up in the spec (or from now on in the code history). Directly include the required indirectly included bug.h. Signed-off-by: Stefan Richter commit c14c643b3d91cc741425c058968672228c310927 Author: Bruce Allan Date: Wed Jun 16 13:28:34 2010 +0000 e1000e: update driver version number Also separate out an _EXTRAVERSION similar to the core kernel. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 451152d97f3f4bababcb9c68b22c3d94bcdda67f Author: Bruce Allan Date: Wed Jun 16 13:28:11 2010 +0000 e1000e: update copyright information Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit e52997f96008fda655d7ec3aa4297d1272e8a385 Author: Bruce Allan Date: Wed Jun 16 13:27:49 2010 +0000 e1000e: enable support for EEE on 82579 This patch enables IEEE802.3az (a.k.a. Energy Efficient Ethernet) on the new 82579 LOMs. An optional module parameter is provided to disable the feature if desired. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d3738bb8203acf8552c3ec8b3447133fc0938ddd Author: Bruce Allan Date: Wed Jun 16 13:27:28 2010 +0000 e1000e: initial support for 82579 LOMs Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit eb7700dc0344564b0b9857d1f5e331a0dd629e92 Author: Bruce Allan Date: Wed Jun 16 13:27:05 2010 +0000 e1000e: fix check for manageability on ICHx/PCH Do not check for all the bits in E1000_FWSM_MODE_MASK when checking for manageability on 82577/82578; only check if iAMT is enabled. Both of the manageability checks (for 82577/82578 and ICHx) must check the firmware valid bit too since the other bits are only valid when the latter is set. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 8c7bbb925337705dd1459070ac620aeec6a29666 Author: Bruce Allan Date: Wed Jun 16 13:26:41 2010 +0000 e1000e: separate out PHY statistics register updates The 82577/82578 parts have half-duplex statistics in PHY registers. These need only be read when in half-duplex and should all be read at once rather than one at a time to prevent excessive cycles of acquiring/releasing the PHY semaphore. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 3f0c16e84438d657d29446f85fe375794a93f159 Author: Bruce Allan Date: Wed Jun 16 13:26:17 2010 +0000 e1000e: cleanup e1000_sw_lcd_config_ich8lan() Do not acquire and release the PHY unnecessarily for parts that return from this workaround without actually accessing the PHY registers. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 3af50481eee6bb278da9050266ff31804e7a57d6 Author: Bruce Allan Date: Wed Jun 16 13:25:55 2010 +0000 e1000e: cleanup ethtool loopback setup code Refactor the loopback setup code to first handle the only 10/100 PHY supported by the driver if applicable and then handle the 1Gig PHYs in a switch statement for PHY-specific setups. Signed-off-by: Bruce Allan Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 20c0da65d72598ced2bfd4d4ca9a5aca1c93f5b9 Author: Dimitris Michailidis Date: Fri Jun 18 10:05:35 2010 +0000 cxgb4: minor cleanup Remove an unused flag and replace couple constants with enums. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit a0881cab6c0a1c8ad48a4ab0b971c8e786dadf1c Author: Dimitris Michailidis Date: Fri Jun 18 10:05:34 2010 +0000 cxgb4: update FW definitions Update to latest FW API. Most changes here pertain to port types and querying FW for parameter values. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 91e9a1ec91243391e6f8f24ff4c5fbd4dfd67292 Author: Dimitris Michailidis Date: Fri Jun 18 10:05:33 2010 +0000 cxgb4: add a missing error interrupt Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit f68707b805b7794bb7b208e327fbe0473c470d0b Author: Dimitris Michailidis Date: Fri Jun 18 10:05:32 2010 +0000 cxgb4: propagate link initialization errors to .ndo_open's callers Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 9be793bfa38436f9142de219b6eef4d8dfa96606 Author: Dimitris Michailidis Date: Fri Jun 18 10:05:31 2010 +0000 cxgb4: switch to 64 bit inteface statistics Implement ndo_get_stats64, remove ndo_get_stats. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit f21ce1c3516728e767165a3b52b6c249ad6e52c6 Author: Dimitris Michailidis Date: Fri Jun 18 10:05:30 2010 +0000 cxgb4: set dev_id to the port number Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 204dc3c0b1bea10a7d811970fd41ceabaef31267 Author: Dimitris Michailidis Date: Fri Jun 18 10:05:29 2010 +0000 cxgb4: implement EEH Implement the pci_error_handlers methods for EEH. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 02b5fb8e14923ff9111de1a00004ccd593adaedb Author: Dimitris Michailidis Date: Fri Jun 18 10:05:28 2010 +0000 cxgb4: rearrange initialization code in preparation for EEH Split some existing initialization code into a separate function for use by EEH next. No functional changes. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 900a659687aa6349e52f7b1e3f922b77afe89b90 Author: Dimitris Michailidis Date: Fri Jun 18 10:05:27 2010 +0000 cxgb4: dynamically determine flash size and FW image location Handle the larger flash memories on newer boards: - get the size and number of sectors by probing the flash - writes and erases can take longer, adjust the timeouts for these operations - the FW image can be at different locations depending on flash size, find its location dynamically as well. Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 20630c7f5966419dd6a1f00b669a7771e228510a Author: Stuart Longland Date: Fri Jun 18 12:56:10 2010 +1000 ASoC: Fix overflow bug in SOC_DOUBLE_R_SX_TLV When SX_TLV widgets are read, if the gain is set to a value below 0dB, the mixer control is erroniously read as being at maximum volume. The value read out of the CODEC register is never sign-extended, and when the minimum value is subtracted (read; added, since the minimum is negative) the result is a number greater than the maximum allowed value for the control, and hence it saturates. Solution: Mask the result so that it "wraps around", emulating sign-extension. Signed-off-by: Stuart Longland Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit e6dc269b402d9fa1562276345931943683e16ebd Author: Simon Wunderlich Date: Sun Jun 6 21:28:20 2010 +0200 Staging: batman-adv: convert vis_interval into define vis_interval does not neccesarily needs to be a variable, as there is no way to change it anyway (and probably no need to). We can therefore remove yet another global variable. Thanks Marek for pointing this out. Signed-off-by: Simon Wunderlich [sven.eckelmann@gmx.de: Rework on top of current version] Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 8af60a8cf06f071a85b6101c86249cce92fa4203 Author: Marek Lindner Date: Sun Jun 6 21:28:18 2010 +0200 Staging: batman-adv: Add information about batman-adv sysfs entries Add documents about new sysfs entries in * /sys/class/net//batman-adv/mesh_iface * /sys/class/net//mesh/vis_mode Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 96d592ed599434d2d5f339a1d282871bc6377d2c Author: Linus Lüssing Date: Sun Jun 6 21:28:17 2010 +0200 Staging: batman-adv: Adding netfilter-bridge hooks batman-adv is receiving and sending the packets of its own ether type on a very early/low level. Therefore we need to add explicit hooks to give netfilter/ebtables a chance to filter them. Reported-by: Antonio Quartulli Signed-off-by: Linus Lüssing Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 186305aa1284ac0cae88e18b837c33d5a4a84afc Author: Marek Lindner Date: Sun Jun 6 21:28:13 2010 +0200 Staging: batman-adv: remove redundant struct declaration The hardif_attr and the bat_attr struct share the same attributes, hence it is not necessary to specify 2 different structs. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann Signed-off-by: Greg Kroah-Hartman commit 7ddd5d02799e1bb7e14ccb87bff16261a80efa27 Author: Huang Weiyi Date: Sat Jun 5 22:42:59 2010 +0800 Staging: MSM: remove duplicated #include Remove duplicated #include('s) in drivers/staging/msm/mddihost.h drivers/staging/msm/msm_fb_def.h drivers/staging/msm/staging-devices.c Signed-off-by: Huang Weiyi Signed-off-by: Greg Kroah-Hartman commit b8564d7b3855660e01faa7ba7a4e0303e5a13dfd Author: Huang Weiyi Date: Sat Jun 5 22:43:09 2010 +0800 Staging: XGI: remove duplicated #include Remove duplicated #include('s) in drivers/staging/xgifb/XGI_main_26.c drivers/staging/xgifb/vb_init.c Signed-off-by: Huang Weiyi Signed-off-by: Greg Kroah-Hartman commit ab17a4ac32ac914cc6d65f25b21bdcaf453c35cf Author: Javier Martinez Canillas Date: Sat Jun 5 21:41:00 2010 -0400 Staging: pohmelfs: fix compile warning A really trivial patch to solve a warning when compiling staging/pohmelfs Signed-off-by: Javier Martinez Canillas Acked-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman commit a46f9087e634224b3d0a6560e223425816846dff Author: H Hartley Sweeten Date: Tue Jun 8 10:36:57 2010 -0500 Staging: dt3155: remove DT_3155_* errno defines Remove the DT_3155_{SUCCESS/FAILURE} errno defines and use the kernel provided ones. Signed-off-by: H Hartley Sweeten Cc: Scott Smedley Signed-off-by: Greg Kroah-Hartman commit 0f3ff30b9384ffa1b435f263234531582080b100 Author: H Hartley Sweeten Date: Mon Jun 7 13:25:37 2010 -0500 Staging: dt3155: fix different address spaces noise in dt3155_drv.c This fixes the different address spaces noise when copying data to/from user space to kernel space. Signed-off-by: H Hartley Sweeten Signed-off-by: Greg Kroah-Hartman commit f932e3a361731b403b1c2982197cea7e3d8e0e66 Author: Marin Mitov Date: Sun Jun 6 14:16:07 2010 +0300 Staging: dt3155v4l: correcting a pointer mismatch bug and cleanups The third argument of dma_alloc_coherent() is of type dma_addr_t and is defined as u64 for x86_64, while the member 'device_base' of struct dma_coherent_mem is defined as u32. While at it, clean up the code. Now if dev->dma_mem != NULL all the fields/members are already properly initialized. Signed-off-by: Marin Mitov Signed-off-by: Greg Kroah-Hartman commit 616f58f6ec5e5777c343499ad65a34e671533e4b Author: Mike Gilks Date: Thu Jun 3 18:29:23 2010 +0800 staging: rtl8192u: fix checkpatch.pl issues to line 514 Fixed most problems pointed out by checkpatch.pl in file r8192U_core.c up to line 500 Signed-off-by: Mike Gilks Signed-off-by: Greg Kroah-Hartman commit 70eef90e494aa3a941cbc3c4e196dc367e01b089 Author: Nanakos Chrysostomos Date: Thu May 27 19:20:41 2010 +0000 Staging: dt3155: dt3155_isr.c: Fix checkpatch.pl issues. Fix resolves checkpatch.pl issues. Signed-off-by: Nanakos Chrysostomos Signed-off-by: Greg Kroah-Hartman commit 0374e91c90ee74d4419ac91fb2030d96ee16d544 Author: Andreas Herrmann Date: Fri May 28 13:59:52 2010 +0200 Staging: rtl81xx: Fix build problems when CONFIG_CRYPTO=n Select CONFIG_CRYPTO for all rtl81xx wireless drivers ... to avoid build problems like: ERROR: "crypto_destroy_tfm" [drivers/staging/rtl8187se/r8187se.ko] undefined! ERROR: "crypto_alloc_base" [drivers/staging/rtl8187se/r8187se.ko] undefined! ERROR: "crypto_destroy_tfm" [drivers/staging/rtl8192u/r8192u_usb.ko] undefined! ERROR: "crypto_alloc_base" [drivers/staging/rtl8192u/r8192u_usb.ko] undefined! ERROR: "crypto_destroy_tfm" [drivers/staging/rtl8192su/r8192s_usb.ko] undefined! ERROR: "crypto_alloc_base" [drivers/staging/rtl8192su/r8192s_usb.ko] undefined! ERROR: "crypto_destroy_tfm" [drivers/staging/rtl8192e/r8192e_pci.ko] undefined! ERROR: "crypto_alloc_base" [drivers/staging/rtl8192e/r8192e_pci.ko] undefined! when drivers are built as modules but CONFIG_CRYPTO=n. Signed-off-by: Andreas Herrmann Signed-off-by: Greg Kroah-Hartman commit 6167944d8a28c6a405babc4ae0f830be80a13fbb Author: Scott Kidder Date: Wed May 26 23:38:45 2010 -0500 Staging: crystalhd: removed kfree(NULL) checks Removed kfree(NULL checks) that were not necessary Signed-off-by: Scott Kidder Signed-off-by: Greg Kroah-Hartman commit ef079a76fe78d713eb695a222601fccb3e706f0f Author: Nanakos Chrysostomos Date: Thu May 27 16:19:52 2010 +0000 Staging: dream: pmem.c: Fix checkpatch.pl issues. This patch resolves checkpatch.pl issues in the pmem.c file. Signed-off-by: Nanakos Chrysostomos Acked-by: Pavel Machek Signed-off-by: Greg Kroah-Hartman commit 231ded903f2f30b2bcdbf6672c7197187e3bb1ee Author: Scott Kidder Date: Fri May 28 00:21:51 2010 -0500 Staging: cx25821: added KERN_ facility levels Fixed issues found by checkpatch.pl including adding KERN_ facility levels to printk() calls and C99 comments. Signed-off-by: Scott Kidder Signed-off-by: Greg Kroah-Hartman commit fa3620c515491ed94a403c1d4374fcc19350d7f3 Author: Matti Lammi Date: Thu Jun 17 11:41:33 2010 +0300 Staging: otus: Removed one unnecessary space Nothing special really, just a small fix. Signed-off-by: Matti Lammi Signed-off-by: Greg Kroah-Hartman commit cc7e7d38e9170719f780dd16312eef216714ad35 Author: Dan Carpenter Date: Mon Jun 7 23:44:57 2010 +0200 Staging: otus: fix strcpy() overflow wrq->name is only 16 characters long but "IEEE 802.11-MIMO" is 16 characters + a NULL character, so it's too long. This patch changes it to "IEEE 802.11abgn". Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit 84f8008a7d1a44aa7c37d0ea367802e07e7daac0 Author: Joe Perches Date: Mon Jun 7 12:11:35 2010 -0700 Staging: otus: TODO: Don't bother, for documentation purposes only On Mon, 2010-06-07 at 12:02 -0700, Luis R. Rodriguez wrote: > this driver is unmaintained and its only purpose is as a > source of documentation for developers working on ar9170 and carl9170. > Once carl9170 gets 11n support and merged upstream then this driver > can be removed. Then the TODO file should be updated. Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit b55515cf729a33e49ecbc4f623ead33c735b5a65 Author: Scott Kidder Date: Wed May 26 22:36:15 2010 -0500 Staging: otus: fix style issues in zdusb.c This is a patch to zdusb.c that fixes whitespace, C99 comment, and other style issues found by the checkpatch.pl tool Signed-off-by: Scott Kidder Signed-off-by: Greg Kroah-Hartman commit 594578979d0e25e178e0243eca9aa53499b89b05 Author: Dan Carpenter Date: Thu Jun 17 14:08:47 2010 +0200 Staging: wlan-ng: silence a sparse warning This doesn't change the behavior. It just silences a sparse warning. drivers/staging/wlan-ng/hfa384x_usb.c:2810:62: warning: dubious: !x | !y The point of the bitwise OR is so that a logical OR could short circuit the second call to test_and_set_bit(). Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit 25ebc2f42b07d5aab3b336f5970b8d52b00dd3e2 Merge: cb3126e 2e04bb7 Author: Greg Kroah-Hartman Date: Fri Jun 18 15:31:26 2010 -0700 Merge branch 'staging-next' into work commit 2e04bb7b284198f26e129b03e03459a7045cb8b6 Author: Greg Kroah-Hartman Date: Fri Jun 18 15:30:28 2010 -0700 Staging: winbond: fix build errors Some errors crept in due to a previous patch that I missed. This fixes them up so the driver continues to build, sorry about that. Signed-off-by: Greg Kroah-Hartman commit cb3126e60ffc1b7658a6ff4f6874585098bf9887 Author: Karl Relton Date: Thu Jun 3 23:04:06 2010 +0100 Staging: wlan-ng: Switch from wext to cfg80211 Switch driver over from wext to cfg80211 interface. Some Notes: - This patch moves the driver wholesale from wext to cfg80211. Wext support is still provided through the cfg80211 provided wext compatability layer. - Currently only infrastructure mode is implemented. Ad hoc mode is not yet implemented, but can be added. - It does not support connecting to a specified bssid, instead roaming is handled by the card itself. This matches the behaviour of the existing driver. - It has been tested using NetworkManager (via wpa_supplicant) configured to use the wext compatability layer, and then again with the native nl80211 layer. Signed-off-by: Karl Relton Signed-off-by: Greg Kroah-Hartman commit 9c770f3b881c5066ff014968473ffbbafee82247 Author: Jiri Kosina Date: Wed May 26 16:20:41 2010 +0200 Staging: cxt1e1: remove code guarded by GENERIC_HDLC_VERSION Current linux kernel has GENERIC_HDLC_VERSION equal to 4, no need to have dead code in-kernel which was there for ancient kernel versions. Signed-off-by: Jiri Kosina Signed-off-by: Greg Kroah-Hartman commit bb71770cdb19f2cabb77afb329025ba460d05ebc Author: Jiri Kosina Date: Wed May 26 13:33:55 2010 +0200 Staging: rtl8192su: remove all code dependent on LINUX_VERSION_CODE Remove all code which is dead for in-kernel driver due to being ifdefed by LINUX_VERSION_CODE. While at it, also remove surrounding code which is commented out, or '#if 1' nops. Signed-off-by: Jiri Kosina Signed-off-by: Greg Kroah-Hartman commit 5749df14aef6d3fd7146f17e4f0c61526a53766e Author: Jiri Kosina Date: Wed May 26 13:39:04 2010 +0200 Staging: cxt1e1: remove all code dependent on LINUX_VERSION_CODE Remove all code which is dead for in-kernel driver due to being ifdefed by LINUX_VERSION_CODE. While at it, also remove surrounding code which is commented out, or '#if 1' nops. Signed-off-by: Jiri Kosina Signed-off-by: Greg Kroah-Hartman commit 41a38d9e632f7c9ec5ad8fc627567d97f4302c4a Author: Ben Hutchings Date: Tue May 25 04:25:57 2010 +0100 Staging: rtl8192su: Fix procfs code for interfaces not named wlan0 The current code creates directories in procfs named after interfaces, but doesn't handle renaming. This can result in name collisions and consequent WARNINGs. It also means that the interface name cannot reliably be used to remove the directory - in fact the current code doesn't even try, and always uses "wlan0"! Since the name of a proc_dir_entry is embedded in it, use that when removing it. Add a netdev notifier to catch interface renaming, and remove and re-add the directory at this point. Signed-off-by: Ben Hutchings commit 9a3dfa0555130952517b9a9c3918729495aa709a Author: Ben Hutchings Date: Tue May 25 04:20:30 2010 +0100 Staging: rtl8192su: Clean up in case of an error in module initialisation Currently various resources may be leaked in case of an error. Signed-off-by: Ben Hutchings Signed-off-by: Greg Kroah-Hartman commit 37a18632b00f0d1627556c532f719ad5a08b369f Author: Julia Lawall Date: Sat May 22 10:27:02 2010 +0200 Staging: dream: camera: Use memdup_user Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 7c0ace54887872ebd99fefdfe85d273295a09426 Author: Julia Lawall Date: Wed May 26 17:59:11 2010 +0200 Staging: vme: bridges: Add missing unlocks Add a spin_unlock and mutex_unlock missing on the error path. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression E1; @@ * spin_lock(E1,...); <+... when != E1 if (...) { ... when != E1 * return ...; } ...+> * spin_unlock(E1,...); // Signed-off-by: Julia Lawall Signed-off-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit 45f9f018967c3fc112a03a99a8fdfad3621407a7 Author: Nanakos Chrysostomos Date: Fri May 28 10:54:45 2010 +0000 Staging: vme: devices: vme_user.c: Fix checkpatch.pl issues. Fix resolves checkpatch.pl issues for vme_user.c file. Signed-off-by: Nanakos Chrysostomos Signed-off-by: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit e3613299b53dd35b99610d26779064965e0f091a Author: Matthias Brugger Date: Thu May 20 23:54:34 2010 +0200 Staging: adis16255: missing spacess in log messages added Signed-off-by: Matthias Brugger Signed-off-by: Greg Kroah-Hartman commit 00ae79463e026b8bc45c93a87aadf118f04069e0 Author: Barry Song <21cnbao@gmail.com> Date: Fri Jun 4 17:19:54 2010 +0800 Staging: iio: adis16209/220/240/350: tuning spi delay to make hardware more stable Signed-off-by: Barry Song <21cnbao@gmail.com> Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3fd66da1d529c65488a84f54d8da7bed972fd14f Author: Barry Song <21cnbao@gmail.com> Date: Fri Jun 4 17:19:53 2010 +0800 Staging: iio: adis16400: fix some minor issues and clean-up 1. move adis16400_spi_read_burst() to adis16400_ring.c since it is only called there 2. add the lost calling to adis16400_self_test() 3. codes cleanup Signed-off-by: Barry Song <21cnbao@gmail.com> Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit ee9a691e08360a22a8eaefb1289bc2e9cfd493a0 Author: Barry Song <21cnbao@gmail.com> Date: Fri Jun 4 17:19:52 2010 +0800 Staging: iio: adis16300: fix some minor issues and clean-up 1. add delay between spi transfers 2. move burst read to ring function 3. clean-up Signed-off-by: Barry Song <21cnbao@gmail.com> Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit fd699c76552bbfa66631f019be415a87dbb08237 Author: Andres Salomon Date: Fri Jun 18 17:46:53 2010 -0400 x86, olpc: Add support for calling into OpenFirmware Add support for saving OFW's cif, and later calling into it to run OFW commands. OFW remains resident in memory, living within virtual range 0xff800000 - 0xffc00000. A single page directory entry points to the pgdir that OFW actually uses, so rather than saving the entire page table, we grab and install that one entry permanently in the kernel's page table. This is currently only used by the OLPC XO. Note that this particular calling convention breaks PAE and PAT, and so cannot be used on newer x86 hardware. Signed-off-by: Andres Salomon LKML-Reference: <20100618174653.7755a39a@dev.queued.net> Signed-off-by: H. Peter Anvin commit 05d0b0889ca9d033a960542af7f8a13b3ad4f630 Author: H. Peter Anvin Date: Fri Jun 18 14:36:26 2010 -0700 x86, vdso: Error out if the vdso contains external references The vdso is a piece of userspace code which is supposed to be fully self-contained. Any external (undefined) reference is an error, and should be caught at compile time. This was giving us trouble when compiling with -Os on gcc 4.5.0, for example (failed inline). The need to do a buildtime check was pointed out by Andi Kleen. Reported-by: Andi Kleen LKML-Reference: Signed-off-by: H. Peter Anvin commit d7a0380dc3e6607d30ccdfc3cfc2ccee0d966716 Author: Jiri Slaby Date: Wed Jun 16 22:30:42 2010 +0200 x86-64, mm: Initialize VDSO earlier on 64 bits When initrd is in use and a driver does request_module() in its module_init (i.e. __initcall or device_initcall), a modprobe process is created with VDSO mapping. But VDSO is inited even in __initcall, i.e. on the same level (at the same time), so it may not be inited yet (link order matters). Move the VDSO initialization code earlier by switching to something before rootfs_initcall where initrd is loaded as rootfs. Specifically to subsys_initcall. Do it for standard 64-bit path (init_vdso_vars) and for compat (sysenter_setup), just in case people have 32-bit initrd and ia32 emulation built-in. i386 (pure 32-bit) is not affected, since sysenter_setup() is called from check_bugs()->identify_boot_cpu() in start_kernel() before rest_init()->kernel_thread(kernel_init) where even kernel_init() calls do_basic_setup()->do_initcalls(). What this patch fixes are early modprobe crashes such as: Unpacking initramfs... Freeing initrd memory: 9324k freed modprobe[368]: segfault at 7fff4429c020 ip 00007fef397e160c \ sp 00007fff442795c0 error 4 in ld-2.11.2.so[7fef397df000+1f000] Signed-off-by: Jiri Slaby LKML-Reference: <1276720242-13365-1-git-send-email-jslaby@suse.cz> Signed-off-by: H. Peter Anvin commit 794e7d9df26a42b05320a92cef76cd2c150a91e6 Author: Dan Carpenter Date: Wed Jun 16 15:32:07 2010 +0200 Staging: iio: add file pointer to sysfs callbacks The sysfs attribute call backs take a file pointer these days. This was added in 2c3c8bea6088 "sysfs: add struct file* to bin_attr callbacks" Signed-off-by: Dan Carpenter Cc: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit de6c37ad2a602d0123699774cf4b2e3f561846bd Author: Jonathan Cameron Date: Mon Jun 7 20:54:07 2010 +0100 Staging: iio: Add mailing list to the TODO file. As suggested by Charles Clement Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1cb6c1f59431f16e46f0d07398cc789ee0a26731 Author: Mike Frysinger Date: Sun May 23 03:10:35 2010 -0400 Staging: iio: pull in slab.h for kmalloc funcs These drivers use kzalloc() but don't include slab.h. They currently build though because the spi.h header will pull in slab.h for us. But rather than rely on that behavior forever, include slab.h explicitly. Signed-off-by: Mike Frysinger Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c608cb012e150d5c24b400ea89000105134bd564 Author: Mike Frysinger Date: Sun May 23 03:10:30 2010 -0400 Staging: iio: kill off spurious semicolons A bunch of IIO files contain spurious semicolons after function definitions and case statements and if statements. Guess people really like this thing, but kill them anyways so they'll stop spreading via copy & paste with new drivers. Signed-off-by: Mike Frysinger Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 98a62bb7bc55c239c6ecc21e2fdbfa5df7690b30 Author: Mike Frysinger Date: Sun May 23 03:00:02 2010 -0400 Staging: iio: standardize kconfig/makefile spacing/style Standardize the spacing/style across the IIO build files: - comment block in Kconfigs - newlines at ends of files - trailing lines at ends of files - indent with one tab, not spaces or mixed Signed-off-by: Mike Frysinger Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 00ac9ba01d1868de1fc4645d952381966afa3ec2 Author: Nitin Gupta Date: Tue Jun 1 13:31:26 2010 +0530 Staging: zram: Rename ramzswap to zram in documentation Related changes: - Included example to show usage as generic (non-swap) disk with ext4 filesystem. - Renamed rzscontrol to zramconfig to match with new device naming. Signed-off-by: Nitin Gupta Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit f1e3cfff4d58767a76fe71e18bffdeed10318b4e Author: Nitin Gupta Date: Tue Jun 1 13:31:25 2010 +0530 Staging: zram: Rename ramzswap to zram in code Automated renames in code: - rzs* -> zram* - RZS* -> ZRAM* - ramzswap* -> zram* Manual changes: - Edited comments/messages mentioning "swap" Signed-off-by: Nitin Gupta Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit 16a4bfb9e9dfefbd28ee170fa3e259bc88d81eb5 Author: Nitin Gupta Date: Tue Jun 1 13:31:24 2010 +0530 Staging: Rename ramzswap files to zram Related changes: - Modify revelant Kconfig and Makefile accordingly. - Change include filenames in code. - Remove dependency on CONFIG_SWAP in Kconfig as zram usage is no longer limited to swap disks. Signed-off-by: Nitin Gupta Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit a1dd52afa94238d361d70502b219409ea115e235 Author: Nitin Gupta Date: Tue Jun 1 13:31:23 2010 +0530 Staging: ramzswap: Support generic I/O requests Currently, ramzwap devices (/dev/ramzswapX) can only be used as swap disks since it was hard-coded to consider only the first request in bio vector. Now, we iterate over all the segments in an incoming bio which allows us to handle all kinds of I/O requests. ramzswap devices can still handle PAGE_SIZE aligned and multiple of PAGE_SIZE sized I/O requests only. To ensure that we get always get such requests only, we set following request_queue attributes to PAGE_SIZE: - physical_block_size - logical_block_size - io_min - io_opt Note: physical and logical block sizes were already set equal to PAGE_SIZE and that seems to be sufficient to get PAGE_SIZE aligned I/O. Since we are no longer limited to handling swap requests only, the next few patches rename ramzswap to zram. So, the devices will then be called /dev/zram{0, 1, 2, ...} Usage/Examples: 1) Use as /tmp storage - mkfs.ext4 /dev/zram0 - mount /dev/zram0 /tmp 2) Use as swap: - mkswap /dev/zram0 - swapon /dev/zram0 -p 10 # give highest priority to zram0 Performance: - I/O benchamark done with 'dd' command. Details can be found here: http://code.google.com/p/compcache/wiki/zramperf Summary: - Maximum read speed (approx): - ram disk: 1200 MB/sec - zram disk: 600 MB/sec - Maximum write speed (approx): - ram disk: 500 MB/sec - zram disk: 160 MB/sec Issues: - Double caching: We can potentially waste memory by having two copies of a page -- one in page cache (uncompress) and second in the device memory (compressed). However, during reclaim, clean page cache pages are quickly freed, so this does not seem to be a big problem. - Stale data: Not all filesystems support issuing 'discard' requests to underlying block devices. So, if such filesystems are used over zram devices, we can accumulate lot of stale data in memory. Even for filesystems to do support discard (example, ext4), we need to see how effective it is. - Scalability: There is only one (per-device) de/compression buffer stats. This can lead to significant contention, especially when used for generic (non-swap) purposes. Signed-off-by: Nitin Gupta Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit 36e574fed5578aeee0ce4c7359bc17cc0b8e0b57 Author: Naveen Jain Date: Wed Jun 9 07:20:40 2010 -0500 Staging: ti-st: fix protocol counting Older mechanism of counting the number of protocols registered with ST was slow, in-efficient. It used to check the protocol data for NULL for each registration/unregistration. With this change, counting protocols in maintained by a single counter protos_registered. Counting protocols is not just for debug purposes Signed-off-by: Naveen Jain Signed-off-by: Greg Kroah-Hartman commit e2a53282859fab0e428a243cbe9ca8d727d9d840 Author: Naveen Jain Date: Wed Jun 9 03:45:33 2010 -0500 Staging: ti-st: add version info to sysfs Add version information to be available under the sysfs group for kim. Signed-off-by: Naveen Jain Signed-off-by: Greg Kroah-Hartman commit b38fc2d965c3182c1855f868144a41a137e07983 Author: Naveen Jain Date: Wed Jun 9 03:45:32 2010 -0500 Staging: ti-st: cleanup sysfs code Remove the older way of communicating with user-space daemon UIM. The older way involved creating of a new kobj and pid sysfs file under it, and sending signal using that pid. Now we communicate via rfkill to user-space UIM. Background: UIM is the user-space daemon which upon notification from ldisc driver, opens the tty, sets default baud and then installs (tiocsetd) the ldisc. Signed-off-by: Naveen Jain Signed-off-by: Greg Kroah-Hartman commit 4f62e69b2b346053e581b11d7374c5082833a6a9 Author: Pavan Savoy Date: Mon May 24 19:44:09 2010 +0530 Staging: Update TI-ST's TODO Update the TODO of TI-ST to make sure it reflects current list of activities that need to be done. Also point it out to the user-space app code relevant to it. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 702422bd2d3f44e454a97ca7054edde84cc18126 Author: R.M. Thomas Date: Fri Jun 18 12:29:49 2010 -0700 Staging: easycap: add easycap driver This adds the easycap USB video adapter driver to the staging directory. Signed-off-by: Greg Kroah-Hartman commit 178f16db8f24b87fc5f3d16f426ed41c397b96a9 Merge: 013a468 bf46b9a Author: Greg Kroah-Hartman Date: Fri Jun 18 12:13:11 2010 -0700 Merge git://git.infradead.org/users/dwmw2/spectra-2.6 into work commit 543708be320d7df692d24b349ca01a947b340764 Author: Johannes Berg Date: Fri Jun 18 12:32:20 2010 +0200 mac80211: fix sw scan bracketing Currently, detection in hwsim and ath9k can detect that two sw scans are in flight at the same time, which isn't really true. It is caused by a race condition, because the scan complete callback is called too late, after the lock has been dropped, so that a new scan can be started before it is called. It is also called too early semantically, as it is currently called _after_ the return to the operating channel -- it should be before so that drivers know this is the operating channel again. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8223d2f540c96f46f762fbd93f59a08bb80601c1 Author: Johannes Berg Date: Fri Jun 18 12:31:56 2010 +0200 mac80211_hwsim: fix fake_hw_scan Since mac80211 will not set the max_scan parameters if hw scan is enabled, hwsim needs to do it so that cfg80211 won't reject the scan. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2fcc9f731b598a6c70dca277776c66c9cf9d7a3b Author: Uwe Kleine-König Date: Fri Jun 18 09:38:55 2010 +0200 wireless: move regulatory_init to .init.text regulatory_init is only called by cfg80211_init which is in .init.text, too. Signed-off-by: Uwe Kleine-König Signed-off-by: John W. Linville commit f884e3879b7a098565e963e771cb342b67b1f5cd Author: Uwe Kleine-König Date: Fri Jun 18 09:38:54 2010 +0200 cfg80211: move cfg80211_exit to .exit.text cfg80211_exit is only used as module_exit function, so it can go to .exit.text saving a few bytes when CONFIG_CFG80211=y. Signed-off-by: Uwe Kleine-König Signed-off-by: John W. Linville commit 4e63f768c3b85ae2b3ea6251231fd5cc46ec598d Author: Sujith Date: Thu Jun 17 10:29:01 2010 +0530 ath9k_htc: Update supported product list This patch adds USB IDs for some more supported devices. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 1baf8a90bd5ad61bc0c55521cc097586531e7eb7 Author: Justin P. Mattock Date: Tue Jun 15 22:33:51 2010 -0700 wireless:hostap_ap.c Fix warning: variable 'fc' set but not used The below patch fixes a warning message when compiling with gcc 4.6.0 CC [M] drivers/net/wireless/hostap/hostap_ap.o drivers/net/wireless/hostap/hostap_ap.c: In function 'hostap_ap_tx_cb_assoc': drivers/net/wireless/hostap/hostap_ap.c:691:6: warning: variable 'fc' set but not used Signed-off-by: Justin P. Mattock Signed-off-by: John W. Linville commit deda484cd7aacecb5e372f9f649a9b7a9eaebf30 Author: Justin P. Mattock Date: Tue Jun 15 22:33:50 2010 -0700 wireless:hostap_main.c warning: variable 'iface' set but not used The patch below fixes a warning message Im seeing with gcc 4.6.0 CC [M] drivers/net/wireless/hostap/hostap_main.o drivers/net/wireless/hostap/hostap_main.c: In function 'hostap_set_multicast_list_queue': drivers/net/wireless/hostap/hostap_main.c:744:27: warning: variable 'iface' set but not used Signed-off-by: Justin P. Mattock Signed-off-by: John W. Linville commit 013a468c4504738856d67118492ce7b7fff53a48 Author: Charles Clément Date: Tue Jun 15 10:39:24 2010 -0700 Staging: vt6655: struct pci_driver cleanup Rename driver struct and callbacks to vt6655_* instead of device_* and add __devinit/__devexit directives. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 0d74395177b38db079caf57b5d27c3cc0ee59ef3 Author: Uwe Kleine-König Date: Fri Jun 11 12:17:04 2010 +0200 Staging: vt665*: fix typos concerning "management" Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 2555cd9f9331a3a2ba79bd7263c7f334895d9cfa Author: Timofey Trofimov Date: Sat May 22 20:42:54 2010 +0400 Staging: vt6656: fix coding style issues in 80211mgr.c This is a patch to the 80211mgr.c file that fixes up warnings found by the checkpatch.pl tool Signed-off-by: Timofey Trofimov Signed-off-by: Greg Kroah-Hartman commit d500648ef675d9abfc02ffb96b09141bc9f76dba Author: Otavio Salvador Date: Fri May 21 19:08:14 2010 -0300 Staging: vt6656: fix up built-in compilation together with rt2870 Fix this build error: drivers/staging/vt6656/built-in.o: In function `rotr1': (.text+0x1a878): multiple definition of `rotr1' drivers/staging/rt2870/built-in.o:(.text+0x106c2): first defined here drivers/staging/vt6656/built-in.o: In function `tkip_sbox': (.text+0x1a848): multiple definition of `tkip_sbox' drivers/staging/rt2870/built-in.o:(.text+0x10697): first defined here drivers/staging/vt6656/built-in.o: In function `xor_32': (.text+0x1ec24): multiple definition of `xor_32' drivers/staging/rt2870/built-in.o:(.text+0x111c4): first defined here drivers/staging/vt6656/built-in.o: In function `xor_128': (.text+0x1ec00): multiple definition of `xor_128' drivers/staging/rt2870/built-in.o:(.text+0x111dd): first defined here Signed-off-by: Otavio Salvador Signed-off-by: Greg Kroah-Hartman commit d9d1ccb51f60cc211e0aa8d132bc3487053b2b1d Author: Andres More Date: Wed May 26 20:00:36 2010 -0300 Staging: vt6656: code cleanup, resolved checkpatch findings in headers Resolved whitespace-related checkpatch findings in .h files Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit 33d33e42b647095b01b1223c7b88718584129d2e Author: Andres More Date: Wed May 19 23:50:00 2010 -0300 Staging: vt6656: code cleanup, fixed 'for' statements Resolved checkpatch findings, but some long lines warnings. ERROR: space required before the open parenthesis '(' ERROR: spaces required around that Signed-off-by: Andres More Signed-off-by: Greg Kroah-Hartman commit afb97d9a265f6001411df43d3ea523338c73c83f Author: Greg Kroah-Hartman Date: Fri Jun 18 10:30:21 2010 -0700 Staging: vt6655: fix up U32 conversion Commit 902d2411298a6e0b8a473a0163aa4bf6d5c8a073 converted U32 to u32 which you would think would be just fine. Unfortunatly, it seems that VIA only builds their code on a 32bit processor (which makes sense if you think about it), but this doesn't work on x86-64. So fix up the few places where this really wanted to be an unsigned long width. Cc: Charles Clément Cc: Forest Bond , Cc: Andres More Signed-off-by: Greg Kroah-Hartman commit cf160bc9269fecba0a10e9957e8591fcc293dddf Author: Charles Clément Date: Thu Jun 3 09:15:54 2010 -0700 Staging: vt6655: include linux/ headers instead of asm/ Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 9d828c458f77043ddd9626ee0cfa688dda99c0eb Author: Charles Clément Date: Sat Jun 5 15:13:49 2010 -0700 Staging: vt6655: remove PDWORD typedef Use unsigned long * instead. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 15df6c2b922de3088203ad90347a30d31ccca67e Author: Charles Clément Date: Sat Jun 5 15:13:48 2010 -0700 Staging: vt6655: remove PWORD typedef Use unsigned short * instead. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 2989e96f17f2dcbd73aee37856899c2885df0686 Author: Charles Clément Date: Sat Jun 5 15:13:47 2010 -0700 Staging: vt6655: remove PBYTE typedef Use unsigned char * instead. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit b2e876b6089160e5ecaed859eb1b87cd4913793e Author: Charles Clément Date: Wed Jun 2 09:52:03 2010 -0700 Staging: vt6655: remove custom ULONGLONG typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit e3fd16d0819e3b316a4fe316e5f32032df61e9db Author: Charles Clément Date: Wed Jun 2 09:52:02 2010 -0700 Staging: vt6655: remove custom ULONG typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit b6e95cd52a81079abc1def7867e27bf541953089 Author: Charles Clément Date: Wed Jun 2 09:52:01 2010 -0700 Staging: vt6655: remove custom UINT typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 800acdbdf83efe6a2b4dbe61e3ab676b5c99d153 Author: Charles Clément Date: Wed Jun 2 09:52:00 2010 -0700 Staging: vt6655: remove custom USHORT typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 5c9824e124f67c2590e1dbd33045603c36168609 Author: Charles Clément Date: Wed Jun 2 09:51:59 2010 -0700 Staging: vt6655: remove custom UCHAR typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit b83cc2ed466f1b9938521d73fefe8b34baf265ea Author: Charles Clément Date: Tue Jun 1 12:38:57 2010 -0700 Staging: vt6655: remove custom LONG typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 7ca3019525e6e3ba727e36dfdc07d8e8d487a5e2 Author: Charles Clément Date: Tue Jun 1 12:38:56 2010 -0700 Staging: vt6655: remove custom INT typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 0c93a98a0e9073e0ffa7aea1e515a5e146e798a7 Author: Charles Clément Date: Tue Jun 1 12:38:55 2010 -0700 Staging: vt6655: removed custom SHORT typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 5a4197bdda7914558fdc24f63d4ed6c64c5e54b3 Author: Charles Clément Date: Tue Jun 1 12:38:54 2010 -0700 Staging: vt6655: removed custom CHAR typedef Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 902d2411298a6e0b8a473a0163aa4bf6d5c8a073 Author: Charles Clément Date: Fri May 28 12:34:21 2010 -0700 Staging: vt6655: remove U32 custom macro Remove custom macro for unsigned 32-bit integers, replace by u32. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit c17ce8c21d809c62b427bf8e2d2672ebe0904fd2 Author: Charles Clément Date: Fri May 28 12:34:20 2010 -0700 Staging: vt6655: remove U16 custom macro Remove custom macro for unsigned 16-bit integers. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 737c3d708c845ab39bfeb1b656e51e84d5771035 Author: Charles Clément Date: Fri May 28 12:34:19 2010 -0700 Staging: vt6655: remove U8 custom macro Remove custom macro for unsigned 8-bit integers. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit ec28c7fab4c5e5e5c168f0b48bc10bfc7f9896d5 Author: Charles Clément Date: Fri May 28 12:34:18 2010 -0700 Staging: vt6655: remove I8 custom macro Remove custom macro for signed 8-bit integers. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 8fa5dd133ed38cb412c42f7daca2f6de3fdbbce8 Author: Charles Clément Date: Fri May 28 09:17:44 2010 -0700 Staging: vt6655: remove unused OUT definition Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 8fee12e4d1fbf03a44594b4c3951cb0f86958d7a Author: Charles Clément Date: Fri May 21 12:55:33 2010 -0700 Staging: vt6655: remove double definition of Calcu_LinkQual Calcu_LinkQual is already defined a couple lines earlier. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 6b1e6b8f957386e60e3fac15a64518c8f7ce5a69 Author: Charles Clément Date: Thu May 20 11:08:55 2010 -0700 Staging: vt6655: remove unused argument in ChannelValid function Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 2ef98c606516be4efb176c3c5e339b769ca1833a Author: Charles Clément Date: Wed May 19 11:30:54 2010 -0700 Staging: vt6655: use compare_ether_addr instead of custom macro Replace custom macro IS_ETH_ADDRESS_EQUAL by compare_ether_addr from . Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 8b0591e5017ea2a78f5181fd136e1b281323e5a3 Author: Charles Clément Date: Wed May 19 11:30:53 2010 -0700 Staging: vt6655: use is_zero_ether_addr instead of custom macro Replace custom macro IS_NULL_ADDRESS by is_zero_ether_addr from . Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit ca9e12acda7ab451ab481d29911af7ee27c512cf Author: Charles Clément Date: Wed May 19 11:30:52 2010 -0700 Staging: vt6655: use is_broadcast_ether_addr instead of custom macro Replace custom macro IS_BROADCAST_ADDRESS by is_broadcast_ether_addr from . Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 670ea81eadf68fa68023731e3f747fd6b0c61dd4 Author: Charles Clément Date: Wed May 19 11:30:51 2010 -0700 Staging: vt6655: use is_multicast_ether_addr instead of custom macro Replace custom macro IS_MULTICAST_ADDRESS by is_multicast_ether_addr from . Remove linux/if_ether.h include as it is included in linux/etherdevice.h already. Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit c92069f3d74c9b62dcffb359a4ae00388290d338 Author: Charles Clément Date: Wed May 19 09:53:17 2010 -0700 Staging: vt6655: use ETH_ZLEN macro instead of custom one Replace custom minimum packet lenght definition MIN_PACKET_LEN by ETH_ZLEN from . Signed-off-by: Charles Clément Signed-off-by: Greg Kroah-Hartman commit 3a4d1b9096cce99f3dd8870cc87980dcabf6787e Author: Timofey Trofimov Date: Tue May 25 18:19:54 2010 +0400 Staging: winbond: fix some checkpatch.pl issues in phy_calibration.c This is a patch to the phy_calibration.c that fixes up almost all warnings and errors (except 80 characters limit and lack of tabs errors) found by the checkpatch.pl tool Signed-off-by: Timofey Trofimov Signed-off-by: Greg Kroah-Hartman commit 07bbf350483e75823ff9c21d213d63a8bbf751ca Author: Adam Latham Date: Fri May 21 06:22:09 2010 +0100 Staging: winbond: Fix for brace style, length and whitespace in mac_structures.h This patch fixes line length, brace style and whitespace issues in the mac_structures.h file found by the checkpatch.pl tool Signed-off-by: Adam Latham Signed-off-by: Greg Kroah-Hartman commit cb016cc48a011cbe23c4c742a577108853b66e3f Author: Adam Latham Date: Wed May 19 06:55:26 2010 +0100 Staging: winbond: Fix C99 Comment issues in mac_structures.h This patch fixes the use of //C99 comments in the mac_structures.h found by the checkpatch.pl tool Signed-off-by: Adam Latham Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit 15f0beb16937acef2bbfd1d7541612c2e7b0d37c Author: Tobias Klauser Date: Thu May 20 10:39:38 2010 +0200 Staging: hv: Storage class should be before const qualifier The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser Cc: Haiyang Zhang Cc: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3cc544df9373c7947be35f30ddee9725710994b0 Author: Gustavo Silva Date: Fri Jun 18 00:01:34 2010 -0500 Staging: comedi: drivers: fix coding style issues in pcl812.c This is a patch to the pcl812.c file that fixes up the following issues: ERROR: code indent should use tabs where possible x 27 WARNING: line over 80 characters x 37 WARNING: please, no space before tabs x 13 WARNING: braces {} are not necessary for single statement blocks x 2 WARNING: printk() should include KERN_ facility level x 22 WARNING: braces {} are not necessary for any arm of this statement x 5 Signed-off-by: Gustavo Silva Acked-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 8af8b28326f2b4565705125506ce8947e08587b1 Merge: e26d6b8 0915512 Author: Michal Marek Date: Fri Jun 18 14:24:16 2010 +0200 Merge branch 'setlocalversion-speedup' into kbuild/kbuild commit bfde744863eab22a3a400c9003f4f555c903f61d Author: Tom Zanussi Date: Thu Jun 17 23:40:06 2010 -0500 perf scripts perl: Makefile fix Fix a typo introduced by recent Makefile changes, in f9af3a4. Without it, Perl scripting support won't get compiled in. Cc: Frédéric Weisbecker Cc: Ingo Molnar Cc: Stephane Eranian LKML-Reference: <1276836006.7762.15.camel@tropicana> Signed-off-by: Tom Zanussi Signed-off-by: Arnaldo Carvalho de Melo commit c882e0feb937af4e5b991cbd1c81536f37053e86 Author: Robert Schöne Date: Mon Jun 14 13:37:20 2010 +0200 x86, perf: Add power_end event to process_*.c cpu_idle routine Systems using the idle thread from process_32.c and process_64.c do not generate power_end events which could be traced using perf. This patch adds the event generation for such systems. Signed-off-by: Robert Schoene Acked-by: Arjan van de Ven Cc: Peter Zijlstra LKML-Reference: <1276515440.5441.45.camel@localhost> Signed-off-by: Ingo Molnar commit 8b8f79b927b6b302bb65fb8c56e7a19be5fbdbef Author: Marcin Slusarz Date: Sun Jun 13 23:56:54 2010 +0200 x86, kmmio/mmiotrace: Fix double free of kmmio_fault_pages After every iounmap mmiotrace has to free kmmio_fault_pages, but it can't do it directly, so it defers freeing by RCU. It usually works, but when mmiotraced code calls ioremap-iounmap multiple times without sleeping between (so RCU won't kick in and start freeing) it can be given the same virtual address, so at every iounmap mmiotrace will schedule the same pages for release. Obviously it will explode on second free. Fix it by marking kmmio_fault_pages which are scheduled for release and not adding them second time. Signed-off-by: Marcin Slusarz Tested-by: Marcin Kocielnicki Tested-by: Shinpei KATO Acked-by: Pekka Paalanen Cc: Stuart Bennett Cc: Marcin Kocielnicki Cc: nouveau@lists.freedesktop.org Cc: LKML-Reference: <20100613215654.GA3829@joi.lan> Signed-off-by: Ingo Molnar commit 646b1db4956ba8bf748b835b5eba211133d91c2e Merge: 0f2c3de 7e27d6e Author: Ingo Molnar Date: Fri Jun 18 10:53:12 2010 +0200 Merge commit 'v2.6.35-rc3' into perf/core Merge reason: Go from -rc1 base to -rc3 base, merge in fixes. commit 8d1f431cbec115a780cd551ab1b4955c125f8d31 Author: Oleg Nesterov Date: Fri Jun 11 20:04:46 2010 +0200 sched: Fix the racy usage of thread_group_cputimer() in fastpath_timer_check() fastpath_timer_check()->thread_group_cputimer() is racy and unneeded. It is racy because another thread can clear ->running before thread_group_cputimer() takes cputimer->lock. In this case thread_group_cputimer() will set ->running = true again and call thread_group_cputime(). But since we do not hold tasklist or siglock, we can race with fork/exit and copy the wrong results into cputimer->cputime. It is unneeded because if ->running == true we can just use the numbers in cputimer->cputime we already have. Change fastpath_timer_check() to copy cputimer->cputime into the local variable under cputimer->lock. We do not re-check ->running under cputimer->lock, run_posix_cpu_timers() does this check later. Note: we can add more optimizations on top of this change. Signed-off-by: Oleg Nesterov Signed-off-by: Peter Zijlstra LKML-Reference: <20100611180446.GA13025@redhat.com> Signed-off-by: Ingo Molnar commit 0bdd2ed4138ec04e09b4f8165981efc99e439f55 Author: Oleg Nesterov Date: Fri Jun 11 01:10:18 2010 +0200 sched: run_posix_cpu_timers: Don't check ->exit_state, use lock_task_sighand() run_posix_cpu_timers() doesn't work if current has already passed exit_notify(). This was needed to prevent the races with do_wait(). Since ea6d290c ->signal is always valid and can't go away. We can remove the "tsk->exit_state == 0" in fastpath_timer_check() and convert run_posix_cpu_timers() to use lock_task_sighand(). Note: it makes sense to take group_leader's sighand instead, the sub-thread still uses CPU after release_task(). But we need more changes to do this. Signed-off-by: Oleg Nesterov Signed-off-by: Peter Zijlstra LKML-Reference: <20100610231018.GA25942@redhat.com> Signed-off-by: Ingo Molnar commit bfac7009180901f57f20a73c53c3e57b1ce75a1b Author: Oleg Nesterov Date: Fri Jun 11 01:09:56 2010 +0200 sched: thread_group_cputime: Simplify, document the "alive" check thread_group_cputime() looks as if it is rcu-safe, but in fact this was wrong until ea6d290c which pins task->signal to task_struct. It checks ->sighand != NULL under rcu, but this can't help if ->signal can go away. Fortunately the caller either holds ->siglock, or it is fastpath_timer_check() which uses current and checks exit_state == 0. - Since ea6d290c commit tsk->signal is stable, we can read it first and avoid the initialization from INIT_CPUTIME. - Even if tsk->signal is always valid, we still have to check it is safe to use next_thread() under rcu_read_lock(). Currently the code checks ->sighand != NULL, change it to use pid_alive() which is commonly used to ensure the task wasn't unhashed before we take rcu_read_lock(). Add the comment to explain this check. - Change the main loop to use the while_each_thread() helper. Signed-off-by: Oleg Nesterov Signed-off-by: Peter Zijlstra LKML-Reference: <20100610230956.GA25921@redhat.com> Signed-off-by: Ingo Molnar commit 48286d5088a3ba76de40a6b70221632a49cab7a1 Author: Oleg Nesterov Date: Fri Jun 11 01:09:52 2010 +0200 sched: Remove the obsolete exit_state/signal hacks account_group_xxx() functions check ->exit_state to ensure that current->signal is valid and can't go away. This is not needed since ea6d290c, task->signal is pinned to task_struct. The comment and another hack in account_group_exec_runtime() refers to task_rq_unlock_wait() which was already removed by b7b8ff63. Signed-off-by: Oleg Nesterov Signed-off-by: Peter Zijlstra LKML-Reference: <20100610230952.GA25914@redhat.com> Signed-off-by: Ingo Molnar commit c32b4fce799d3a6157df9048d03e429956c58818 Author: Oleg Nesterov Date: Fri Jun 11 01:09:48 2010 +0200 sched: task_tick_rt: Remove the obsolete ->signal != NULL check Remove the obsolete ->signal != NULL check in watchdog(). Since ea6d290c ->signal can't be NULL. Signed-off-by: Oleg Nesterov Signed-off-by: Peter Zijlstra LKML-Reference: <20100610230948.GA25911@redhat.com> Signed-off-by: Ingo Molnar commit a44702e8858a071aa0f2365113ea4a2e51c8b575 Author: Oleg Nesterov Date: Fri Jun 11 01:09:44 2010 +0200 sched: __sched_setscheduler: Read the RLIMIT_RTPRIO value lockless __sched_setscheduler() takes lock_task_sighand() to access task->signal. This is not needed since ea6d290c, ->signal can't go away. Signed-off-by: Oleg Nesterov Signed-off-by: Peter Zijlstra LKML-Reference: <20100610230944.GA25903@redhat.com> Signed-off-by: Ingo Molnar commit b6b12294405e6ec029e627c49adf3193829a2685 Author: Michael Neuling Date: Thu Jun 10 12:06:21 2010 +1000 sched: Fix comments to make them DocBook happy Docbook fails in sched_fair.c due to comments added in the asymmetric packing patch series. This fixes these errors. No code changes. Signed-off-by: Michael Neuling Signed-off-by: Peter Zijlstra LKML-Reference: <24737.1276135581@neuling.org> Signed-off-by: Ingo Molnar commit 694f5a1112959a6996cabdb6f8d3003e87dac8a7 Author: Michael Neuling Date: Thu Jun 10 09:03:37 2010 +1000 sched: Fix fix_small_capacity The CPU power test is the wrong way around in fix_small_capacity. This was due to a small changes made in the posted patch on lkml to what was was taken upstream. This patch fixes asymmetric packing for POWER7. Signed-off-by: Michael Neuling Signed-off-by: Peter Zijlstra LKML-Reference: <12629.1276124617@neuling.org> Signed-off-by: Ingo Molnar commit 4cb6948e5365ab874bb71ac35fb6b7c6dd305765 Merge: 89275d5 7e27d6e Author: Ingo Molnar Date: Fri Jun 18 10:46:31 2010 +0200 Merge commit 'v2.6.35-rc3' into sched/core Merge reason: Update to the latest -rc. commit 43793207fdcede490edf26a813a92b11ef434a13 Author: Eric Bénard Date: Thu Jun 17 15:44:01 2010 +0200 ASoC: eukrea-tlv320: add support for our i.MX25 board * tdm slot has to be configured to get sound working on i.MX25 Signed-off-by: Eric Bénard Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit ba22a15ae8018606234b3c2c99e3ae1b922b3f60 Author: Lars Lindley Date: Wed May 19 15:07:30 2010 +0100 Staging: et131x: Small format/style tidyups I fixed indentation in one place and two long lines, a space and a brace found by checkpatch.pl and fixed some long lines and whitespace around an =. Signed-off-by: Lars Lindley Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 80370692f60b4d5dfa243cb0fbd0a87a42a939a8 Author: Ian Abbott Date: Mon Jun 14 12:49:27 2010 +0100 Staging: Comedi: drivers: Remove comment copied from skel.c The dmm32at.c and comedi_bond.c comedi driver files contain an instructional comment block copied over from skel.c about how to format a driver comment block. This comment was modified in skel.c by a previous patch in this series to stop Comedi's 'dump_doc' script treating it as an actual driver comment block. There isn't any need to repeat this comment block in the other source files, so rather than modify it, this patch just removes it from those files. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 9a390f38b6a84d5a11c89a116363db3fe587598b Author: Ian Abbott Date: Mon Jun 14 12:49:26 2010 +0100 Staging: comedi: drivers: skel: Add whitespace to example comment block The Comedi team have a script 'dump_doc' to extract text from the driver comment block (starting with line 'Driver:') in (most of) the comedi driver source files. This was recently updated to allow and strip off a " * " prefix at the start of each line (well actually, it uses the perl substitution 's/^ ?\* ?//'). The skel.c file contains an instructional comment block about how to format this driver comment block, but the updated 'dump_doc' script mistakenly treats this as a valid driver comment block. This patch adds some extra whitespace to stop the instructional comment block being treated as a valid driver comment block by Comedi's 'dump_doc' script. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 389cd417e3b0f707ecd933b8fd26e910898ac2fc Author: Ian Abbott Date: Mon Jun 14 12:25:05 2010 +0100 Staging: comedi: drivers: das08: Add whitespace to driver comment block Previous whitespace changes to das08.c removed some whitespace from a "driver comment block" that the Comedi team would like to keep. "Header continuation lines" in this comment block should be indented with whitespace. (This is after the " * " at the start of each line.) Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 3420f6b4c1ac731e80d0911e0092705992cef14f Author: Gustavo Silva Date: Wed Jun 16 01:01:07 2010 -0500 Staging: comedi: drivers: fix coding style issues in quatech_daqp_cs.c This is a patch to the quatech_daqp_cs.c file that fixes up the following issues: ERROR: code indent should use tabs where possible x 1 WARNING: line over 80 characters x 1 WARNING: braces {} are not necessary for single statement blocks x 10 WARNING: printk() should include KERN_ facility level x 6 Signed-off-by: Gustavo Silva Signed-off-by: Greg Kroah-Hartman commit 8b83e005d11bce0f9a59d9be337a285e6cc487a6 Author: Gustavo Silva Date: Wed Jun 16 00:36:54 2010 -0500 Staging: comedi: drivers: fix coding style issues in pcmda12.c This is a patch to the pcmda12.c file that fixes up five printk() warning issues Signed-off-by: Gustavo Silva Signed-off-by: Greg Kroah-Hartman commit 4c68fb42c2a39b89daca2b7175eb93ffe6860da4 Author: Gustavo Silva Date: Wed Jun 16 00:17:52 2010 -0500 Staging: comedi: drivers: fix coding style issues in pcl816.c This is a patch to the pcl816.c file that fixes up the following issues: ERROR: code indent should use tabs where possible x 2 WARNING: line over 80 characters x 34 WARNING: please, no space before tabs x 1 WARNING: braces {} are not necessary for single statement blocks x 6 WARNING: printk() should include KERN_ facility level x 15 WARNING: braces {} are not necessary for any arm of this statement x 1 Signed-off-by: Gustavo Silva Signed-off-by: Greg Kroah-Hartman commit 8f4e80af3aa509902bd2319c3b5512580f64868f Author: Gustavo Silva Date: Sat Jun 12 19:15:22 2010 -0500 Staging: comedi: drivers: Fix coding style issues in pcl711.c This is a patch to the pcl711.c file that fixes up printk() warning issues. Signed-off-by: Gustavo Silva Signed-off-by: Greg Kroah-Hartman commit b6241fda0a25062cecc88cefd43658460cfe26a4 Author: Gustavo Silva Date: Sat Jun 12 16:39:18 2010 -0500 Staging: comedi: drivers: fix coding style issues in me4000.c This is a patch to the me4000.c file that fixes up the following issues: ERROR: space required after that close brace '}' x 13 ERROR: spaces required around that ':' (ctx:VxV) x 3 WARNING: line over 80 characters x 96 WARNING: braces {} are not necessary for any arm of this statement x 2 Signed-off-by: Gustavo Silva Signed-off-by: Greg Kroah-Hartman commit bb9c03d8a6893517737b16fdbeb54be3c73b3023 Merge: 4de5782 abf52f8 Author: David S. Miller Date: Thu Jun 17 14:19:06 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 56b8421ceef7f2dae95b882034ebf6958bad58f6 Author: Arun Thomas Date: Thu Jun 10 23:38:29 2010 +0200 Staging: comedi: Remove typedefs Remove all remaining typedefs from comedi drivers Signed-off-by: Arun Thomas Signed-off-by: Greg Kroah-Hartman commit 727b286b44ea359d66f47d241cc2cdad36ed7bdc Author: Arun Thomas Date: Sun Jun 6 22:23:31 2010 +0200 Staging: comedi: Remove COMEDI_PCI_INITCLEANUP macro Move the PCI devinit/devexit routines to the respective C source files instead of calling COMEDI_PCI_INITCLEANUP Signed-off-by: Arun Thomas Signed-off-by: Greg Kroah-Hartman commit 7114a28011f9d5f3d981731ad341177c21f9d948 Author: Arun Thomas Date: Sun Jun 6 22:23:30 2010 +0200 Staging: comedi: Remove COMEDI_INITCLEANUP macro Move the init/exit routines to the respective C source files instead of calling COMEDI_INITCLEANUP Signed-off-by: Arun Thomas Signed-off-by: Greg Kroah-Hartman commit 90f703d30dd3e0c16ff80f35e34e511385a05ad5 Author: Arun Thomas Date: Sun Jun 6 22:23:29 2010 +0200 Staging: comedi: Remove COMEDI_MODULES_MACRO Add MODULE_AUTHOR, MODULE_LICENSE, and MODULE_DESCRIPTION calls to the respective C source files instead of calling COMEDI_MODULES_MACRO Signed-off-by: Arun Thomas Signed-off-by: Greg Kroah-Hartman commit 88d8ed4b643d2064a663b2f07426963289def676 Author: Maurice Dawson Date: Fri Jun 4 13:07:06 2010 +0100 Staging: comedi: fix printk() coding style issue in ni_labpc.c This is a patch to the ni_labpc.c file that fixes all, printk() should include KERN-facility level, warnings found by the checkpatch.pl tool Signed-off-by: Maurice Dawson Signed-off-by: Greg Kroah-Hartman commit 0c55484dcae163aa28736a0da7e33fe747f3e302 Author: Bob Beattie Date: Fri Jun 4 00:19:02 2010 +0100 Staging: comedi: drivers: fix space coding style in am9513.h This is a patch to the file am9513.h that fixes missing space warnings found by the checkpatch.pl tool. Signed-off-by: Bob Beattie Signed-off-by: Greg Kroah-Hartman commit daca497d8035cdb649b37ef1c962f1f0de8f16d9 Author: John Sheehan Date: Fri May 28 16:33:25 2010 +0100 Staging: comedi: fix code warnings in s626.c A patch for s626.c to fix some of the warnings reported by the checkpatch.pl tool, namely, printk() should include KERN_ facility level unnecessary whitespace before a quoted newline Signed-off-by: John Sheehan Signed-off-by: Greg Kroah-Hartman commit 6fd071cccf4127f1e81767a819720d8915b2a800 Author: John Sheehan Date: Thu May 27 12:41:38 2010 +0100 Staging: comedi: fix code style errors in unioxx5.c A patch for unioxx5.c which fixes "trailing statements should be on next line" errors raised by the chechpatch.pl tool Signed-off-by: John Sheehan Signed-off-by: Greg Kroah-Hartman commit 4c67da06f0248fc0ee0fcbf65afd887b023b4591 Author: Mark Rankilor Date: Thu May 27 17:39:15 2010 +0800 Staging: comedi: Fixed long lines in gsc_hpdi.c This patch fixes some long line lengths in gsc_hpdi.c as found by the checkpatch.pl tool Signed-off-by: Mark Rankilor Signed-off-by: Greg Kroah-Hartman commit 2f6df34cd3455245c44b420d7c3fb11d1137df79 Author: Mark Rankilor Date: Mon May 24 17:59:10 2010 +0800 Staging: comedi: Checkpatch cleanups in adl_pci9111.c This patch cleans up some various warnings generated from checkpatch.pl Signed-off-by: Mark Rankilor Signed-off-by: Greg Kroah-Hartman commit f25bd6bfdf9bccd8164c151b027f9c14ec07960b Author: Dan Carpenter Date: Sat May 22 22:42:38 2010 +0200 Staging: comedi: cleanup: remove unneeded null checks These checks are obviously pointless because kfree() can handle null dereferences. But really the main problem is that if the pointers were null that would cause problems on the ealier lines. The dereferences would cause an oops and the _release() functions use ->priv to determine which IRQ to free. I looked into it and quite a few of the detach functions assume link->priv is non-null. It seems like we can remove these checks. Signed-off-by: Dan Carpenter Signed-off-by: Greg Kroah-Hartman commit c5da20905c8ce21a73a9b443e5d7ef0dc623cff0 Author: Ian Abbott Date: Wed May 19 14:10:04 2010 +0100 Staging: comedi: serial2002: Use NULL instead of 0 for pointers Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 668f272e57e80ece987bed273096f8e3a707123c Author: Ian Abbott Date: Wed May 19 14:10:03 2010 +0100 Staging: comedi: serial2002: Reduce stack usage on 'open' Reduce stack usage in serial_2002_open() by allocating dig_in_config, dig_out_config, chan_in_config, and chan_out_config temporary arrays using kcalloc() and freeing them when done with. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit fa3b5d9ab0487f58b45d55a37070aa0d417f59d5 Author: Ian Abbott Date: Wed May 19 14:10:02 2010 +0100 Staging: comedi: serial2002: Fix memory leak on detach The comedi device 'detach' method for the serial2002 driver has an off-by-one error in its loop for freeing data belonging to its subdevices. Fix it. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 9e7f2256883c954691e5d395d471e0f125f6b30b Author: Ian Abbott Date: Wed May 19 14:10:01 2010 +0100 Staging: comedi: serial2002: handle allocation failures on 'open' The comedi device 'open' method for the serial2002 driver frees any old 'maxdata_list' and 'range_table_list' arrays belonging to a subdevice and allocates them again, but was missing checks for allocation failure. If an allocation fails, free the 'maxdata_list' and 'range_table_list' arrays for all subdevices and return an error. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 3c17ba0743d75f9888d905ddf9f8551c7dd36493 Author: Ian Abbott Date: Wed May 19 14:10:00 2010 +0100 Staging: comedi: Allow 'open' driver method to fail Some comedi drivers should return an error from their 'open' method when something goes wrong. Change the prototype of the 'open' method in 'struct comedi_device' to allow this, and change the drivers that use it. Propagate any error to the 'open' file operation. The corresponding 'close' method won't be called when the 'open' method fails, so drivers failing the 'open' need to clean up any mess they created. The dt9812 and serial2002 drivers can now return an error on 'open'. The jr3_pci driver also uses the 'open' method but doesn't fail it. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit abf52f86aa0a49a7377350cafa8f218c4cd227e7 Merge: 6a0076e 021570e Author: John W. Linville Date: Thu Jun 17 16:21:14 2010 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 Conflicts: net/mac80211/mlme.c commit 3d34023a99d35440d6a22fb0b4547fc9817b7b40 Author: Cody Harmon Date: Tue May 18 23:03:40 2010 -0700 Staging: comedi: ni_tio: fixed brace coding style issues and a few errors Fixed code style and placed KERN_ERR in printk statement. Signed-off-by: Cody Harmon Signed-off-by: Greg Kroah-Hartman commit 091b4242ebb789e826cbde573a0fee9f60fe998b Author: Samuel Richardson Date: Mon May 17 19:08:18 2010 +0100 Staging: comedi: fixed brace coding style issue in ni_tio.c This is a patch to the ni_tio.c file that fixes a brace warning found by the checkpatch.pl tool Signed-off-by: Samuel Richardson Signed-off-by: Greg Kroah-Hartman commit f7154de220f14073ef0d76638f85e254ad2e202f Author: Herton Ronaldo Krzesinski Date: Thu Jun 17 14:15:06 2010 -0300 ALSA: hda - add ideapad model for Conexant 5051 codec Lenovo IdeaPad Y430 has an additional subwoofer connected at pin 0x1b, which isn't muted when headphone is plugged in. This adds additional support to the extra subwoofer via new ideapad model. Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: Takashi Iwai commit 0f2c3de2ba110626515234d5d584fb1b0c0749a2 Author: Andy Isaacson Date: Fri Jun 11 20:36:15 2010 -0700 perf session: fix error message on failure to open perf.data If we cannot open our data file, print strerror(errno) for a more comprehensible error message; and only suggest 'perf record' on ENOENT. In particular, this fixes the nonsensical advice when: % sudo perf record sleep 1 [ perf record: Woken up 1 times to write data ] [ perf record: Captured and wrote 0.009 MB perf.data (~381 samples) ] % perf trace failed to open file: perf.data (try 'perf record' first) % Cc: Ingo Molnar LPU-Reference: <20100612033615.GA24731@hexapodia.org> Signed-off-by: Andy Isaacson Signed-off-by: Arnaldo Carvalho de Melo commit 84c104ad429c8a474b93dd374815d1c238032fa8 Author: Andy Isaacson Date: Fri Jun 11 19:44:04 2010 -0700 perf debug: fix hex dump partial final line The loop counter math in trace_event was much more complicated than necessary, resulting in incorrectly decoding the human-readable portion of the partial last line of hexdump in "perf trace -D" output: . 0020: 00 00 00 00 00 00 00 00 2f 73 62 69 6e 2f 69 6e ......../sbin/i . 0030: 69 74 00 00 00 00 00 00 /sbin/i With this fixed (and simpler!) code, we get the correct output: . 0020: 00 00 00 00 00 00 00 00 2f 73 62 69 6e 2f 69 6e ......../sbin/in . 0030: 69 74 00 00 00 00 00 00 it...... Cc: Ingo Molnar LPU-Reference: <20100612024404.GA24469@hexapodia.org> Signed-off-by: Andy Isaacson Signed-off-by: Arnaldo Carvalho de Melo commit 4de57826810fd2cfeb2ab5c7d003ff9116b8f7ee Author: Amit Kumar Salecha Date: Thu Jun 17 02:56:42 2010 +0000 qlcnic: fix register access For certain set of register, base window addresses are not defined. In such cases window should not set. Return with error for such cases to avoid NMI. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit ef71ff833acfd3795c3af1bb800ac186561508ef Author: Rajesh K Borundia Date: Thu Jun 17 02:56:41 2010 +0000 qlcnic: fix race in tx stop queue There is a race between netif_stop_queue and netif_stopped_queue check. So check once again if buffers are available to avoid race. With above logic we can also get rid of tx lock in process_cmd_ring. Signed-off-by: Rajesh K Borundia Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 8f891387aa73b85d2ea8d953e04dac224f687e52 Author: schacko Date: Thu Jun 17 02:56:40 2010 +0000 qlcnic: seperate interrupt for TX Earlier all poll routine can process rx and tx, But now one poll routine to process rx + tx and other for rx only. Last msix vector will be used for separate tx interrupt. o This is supported from fw version 4.4.2. o Bump version 5.0.5 Signed-off-by: Sony Chacko Signed-off-by: David S. Miller commit 7f9a0c34d26b1ce8a512555ca144e622dea4dc44 Author: Sritej Velaga Date: Thu Jun 17 02:56:39 2010 +0000 qlcnic: change driver description o Remove extra printing of mac address o This driver also supports NIC only Qlogic adapters. Signed-off-by: Sritej Velaga Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 469c221f97879c0e01967df813ab58dab1d5d64a Author: Sucheta Chakraborty Date: Thu Jun 17 02:56:38 2010 +0000 qlcnic: fix device soft reset During device soft reset, don't halt every device block. Access to some blocks is required during recovery. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 9ed7e1b85cd55dc46cb9410a23086bdaa2ff3eb9 Author: Chase Douglas Date: Mon Jun 14 15:26:30 2010 -0400 perf probe: Add kernel source path option The probe plugin requires access to the source code for some operations. The source code must be in the exact same location as specified by the DWARF tags, but sometimes the location is an absolute path that cannot be replicated by a normal user. This change adds the -s|--source option to allow the user to specify the root of the kernel source tree. Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Masami Hiramatsu LKML-Reference: <1276543590-10486-1-git-send-email-chase.douglas@canonical.com> Signed-off-by: Chase Douglas Signed-off-by: Arnaldo Carvalho de Melo commit cfc21cc641dae17a4ebda29ed093134358449577 Author: Kirill Smelkov Date: Mon Jun 14 16:00:47 2010 +0400 perf tools: .gitignore += config.make config.make.autogen These are local-configuration files and should be ignored. LKML-Reference: <1276516847-25817-1-git-send-email-kirr@landau.phys.spbu.ru> Signed-off-by: Kirill Smelkov Signed-off-by: Arnaldo Carvalho de Melo commit a1ac1d3c085420ea8c809ebbee3bb212ed3616bd Author: Stephane Eranian Date: Thu Jun 17 11:39:01 2010 +0200 perf record: Add option to avoid updating buildid cache There are situations where there is enough information in the perf.data to process the samples. Updating the buildid cache may add unecessary overhead in terms of disk space and time (copying large elf images). A persistent option to do this already exists via the perfconfig file, simply do: [buildid] dir = /dev/null This patch provides a way to suppress builid cache updates on a per-run basis. It addds a new option, -N, to perf record. Buildids are still generated in the perf.data file. Cc: David S. Miller Cc: Frédéric Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra LKML-Reference: <4c19ef89.93ecd80a.40dc.fffff8e9@mx.google.com> Signed-off-by: Stephane Eranian Signed-off-by: Arnaldo Carvalho de Melo commit 70c3856b2f1304e0abc65f1b96a8c60ddfc0fb9e Author: Eric B Munson Date: Mon Jun 14 14:56:33 2010 +0100 perf symbols: Function descriptor symbol lookup Currently symbol resolution does not work for 64-bit programs on architectures that use function descriptors such as ppc64. The problem is that a symbol doesn't point to a text address, it points to a data area that contains (amongst other things) a pointer to the text address. We look for a section called ".opd" which is the function descriptor area. To create the full symbol table, when we see a symbol in the function descriptor section we load the first pointer and use that as the text address. Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra LKML-Reference: <1276523793-15422-1-git-send-email-ebmunson@us.ibm.com> Signed-off-by: Anton Blanchard Signed-off-by: Eric B Munson Signed-off-by: Arnaldo Carvalho de Melo commit cf103a14dd2ab23f847e998c8881ea4a5f8090bf Author: Stephane Eranian Date: Wed Jun 16 20:59:01 2010 +0200 perf record: Avoid synthesizing mmap() for all processes in per-thread mode A bug was introduced by commit c45c6ea2e5c57960dc67e00294c2b78e9540c007. Perf record was scanning /proc/PID to create synthetic PERF_RECOR_MMAP entries even though it was running in per-thread mode. There was a bogus check to select what mmaps to synthesize. We only need all processes in system-wide mode. Cc: David S. Miller Cc: Frédéric Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian LKML-Reference: <4c192107.4f1ee30a.4316.fffff98e@mx.google.com> Signed-off-by: Stephane Eranian Signed-off-by: Arnaldo Carvalho de Melo commit be6f9f006a1fb4d46a0c0b01179862375f0d53bd Author: Uwe Kleine-König Date: Tue Jan 26 22:22:20 2010 +0100 ARM: zImage: annotate debug functions about corrupted registers Signed-off-by: Uwe Kleine-König commit bd06cac82c2af96f2e64a0e994e11bfe41b77e8d Author: Uwe Kleine-König Date: Thu Jun 17 09:42:20 2010 +0200 fix typos concerning "precedence" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 21b2841df19dd223dad198cdf47e77ea7ac25b56 Author: Uwe Kleine-König Date: Tue Jan 26 22:08:09 2010 +0100 ARM: zImage: fix comments for cache_on, cache_off and cache_clean_flush This adds missing registers to the list of corrupted registers and removes a wrong comment about r9 on entry While at it the formatting of the comment to cache_off is changed to resemble the other two. Acked-by: Eric Miao Signed-off-by: Uwe Kleine-König commit dcf1b0be1877ae1dc13ea93d4277a6c456cfe9f5 Author: Jiri Kosina Date: Thu Jun 17 11:18:31 2010 +0200 trivial: don't touch drivers/staging This is a partial revert of 421f91d21ad6f ("fix typos concerning "initiali[zs]e"), as we don't want to touch staging drivers from other trees than staging itself. Signed-off-by: Jiri Kosina commit 63fa71872bdec70f4a82e562fc34f8d87e174774 Author: Uwe Kleine-König Date: Tue Jan 26 22:18:09 2010 +0100 ARM: zImage: __armv3_mpu_cache_flush: respect should-be-zero specification Probably the register content for cache operations is "don't care" in practice, but as r1 is explicitly zeroed, use that one. Acked-by: Eric Miao Signed-off-by: Uwe Kleine-König commit 4a8d57a54fb21f32ee17e0a61ca54c7a6f8f83da Author: Uwe Kleine-König Date: Tue Jan 26 22:14:23 2010 +0100 ARM: zImage: some comments for __armv3_mpu_cache_on __armv3_mpu_cache_on seems broken. As there is noone around who knows about these machines just keep the code as is but point out the strange things. Signed-off-by: Uwe Kleine-König commit 88237c25aa4fe0dad177ae11214136ad78bc908f Author: Uwe Kleine-König Date: Fri Jan 29 21:37:24 2010 +0100 ARM: zImage: don't hard code the stack size twice Acked-by: Eric Miao Acked-by: Nicolas Pitre Signed-off-by: Uwe Kleine-König commit c9ff921abecda352e987a6aae169118a3fc9aa5d Author: Andy Shevchenko Date: Tue Jun 15 17:26:28 2010 +0300 ALSA: alsa: riptide: don't use own hex_to_bin() method Signed-off-by: Andy Shevchenko Signed-off-by: Takashi Iwai commit c68cd6cc21eb329c47ff020ff7412bf58176984e Author: Patrick McHardy Date: Thu Jun 17 06:12:26 2010 +0200 netfilter: nf_nat: support user-specified SNAT rules in LOCAL_IN 2.6.34 introduced 'conntrack zones' to deal with cases where packets from multiple identical networks are handled by conntrack/NAT. Packets are looped through veth devices, during which they are NATed to private addresses, after which they can continue normally through the stack and possibly have NAT rules applied a second time. This works well, but is needlessly complicated for cases where only a single SNAT/DNAT mapping needs to be applied to these packets. In that case, all that needs to be done is to assign each network to a seperate zone and perform NAT as usual. However this doesn't work for packets destined for the machine performing NAT itself since its corrently not possible to configure SNAT mappings for the LOCAL_IN chain. This patch adds a new INPUT chain to the NAT table and changes the targets performing SNAT to be usable in that chain. Example usage with two identical networks (192.168.0.0/24) on eth0/eth1: iptables -t raw -A PREROUTING -i eth0 -j CT --zone 1 iptables -t raw -A PREROUTING -i eth0 -j MARK --set-mark 1 iptables -t raw -A PREROUTING -i eth1 -j CT --zone 2 iptabels -t raw -A PREROUTING -i eth1 -j MARK --set-mark 2 iptables -t nat -A INPUT -m mark --mark 1 -j NETMAP --to 10.0.0.0/24 iptables -t nat -A POSTROUTING -m mark --mark 1 -j NETMAP --to 10.0.0.0/24 iptables -t nat -A INPUT -m mark --mark 2 -j NETMAP --to 10.0.1.0/24 iptables -t nat -A POSTROUTING -m mark --mark 2 -j NETMAP --to 10.0.1.0/24 iptables -t raw -A PREROUTING -d 10.0.0.0/24 -j CT --zone 1 iptables -t raw -A OUTPUT -d 10.0.0.0/24 -j CT --zone 1 iptables -t raw -A PREROUTING -d 10.0.1.0/24 -j CT --zone 2 iptables -t raw -A OUTPUT -d 10.0.1.0/24 -j CT --zone 2 iptables -t nat -A PREROUTING -d 10.0.0.0/24 -j NETMAP --to 192.168.0.0/24 iptables -t nat -A OUTPUT -d 10.0.0.0/24 -j NETMAP --to 192.168.0.0/24 iptables -t nat -A PREROUTING -d 10.0.1.0/24 -j NETMAP --to 192.168.0.0/24 iptables -t nat -A OUTPUT -d 10.0.1.0/24 -j NETMAP --to 192.168.0.0/24 Signed-off-by: Patrick McHardy commit 49e4b8476f89956ec64b8b9fb7074cb4309a1169 Author: Ajit Khaparde Date: Mon Jun 14 04:56:07 2010 +0000 be2net: enable ipv6 tso support Add ipv6 support to the be2net driver. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit d29c0c5c332131f1151cf33995e2f01299b9234f Author: Herbert Xu Date: Mon Jun 14 20:21:04 2010 +0000 udp: Add UFO to NETIF_F_SOFTWARE_GSO This patch adds UFO to the list of GSO features with a software fallback. This allows UFO to be used even if the hardware does not support it. In particular, this allows us to test the UFO fallback, as it has been reported to not work in some cases. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 3924773a5a82622167524bdd48799dc0452c57f8 Author: David S. Miller Date: Wed Jun 16 16:18:25 2010 -0700 net: Export cred_to_ucred to modules. AF_UNIX references this, and can be built as a module, so... Signed-off-by: David S. Miller commit 5f9f0a412f16b2b849624f1b760477fb35ceff4a Author: Nicolas Ferre Date: Fri Jun 11 12:53:14 2010 +0100 ARM: 6169/1: AT91: add new at91 chips in at91sam9g45 family This is the basic support for at91sam9g46, at91sam9m10 and at91sam9m11. Those are just very basic cpu macros and clock definition. Signed-off-by: Patrice Vilchez Signed-off-by: Nicolas Ferre Acked-by: Andrew Victor Signed-off-by: Russell King commit 8a5c9e39379610bf347241c64132d7ee073c3959 Author: Dmitry Eremin-Solenikov Date: Thu Jun 3 13:57:55 2010 +0100 ARM: 6163/1: at91sam9g20ek: add fixed-value regulator for wm8731 If CONFIG_REGULATOR is enabled, wm8731 fails on AT91SAM9G20EK board, since codec driver requires several voltage supplies and none are provided currently. As requires voltages are hardwired to 3V3, use fixed voltage regulator for this chip. Signed-off-by: Dmitry Eremin-Solenikov Acked-by: Andrew Victor Signed-off-by: Russell King commit 5e886f68e5b1c0a62c64cbc3707304259ba46183 Author: Dmitry Eremin-Solenikov Date: Thu Jun 3 13:56:32 2010 +0100 ARM: 6162/1: at91sam9g20ek: add fixed-value regulator for wm8731 If CONFIG_REGULATOR is enabled, wm8731 fails on AT91SAM9G20EK board, since codec driver requires several voltage supplies and none are provided currently. As requires voltages are hardwired to 3V3, use fixed voltage regulator for this chip. Signed-off-by: Dmitry Eremin-Solenikov Acked-by: Andrew Victor Signed-off-by: Russell King commit 4f4c5e36e7cd26c9b5bf89d66caeee5fc3d75362 Author: Harro Haan Date: Mon Mar 1 18:01:56 2010 +0100 ARM: 5967/1: at91_udc.c use spinlocks instead of local_irq_xxx The locking code of this driver is reworked for preempt-rt. For more info see: http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20100203/09cdb3b4/attachment.el http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20100203/3ad44e30/attachment.el First applied: "at91_udc HW glitch" http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=5966/1 Reviewed-by: H Hartley Sweeten Signed-off-by: Harro Haan Signed-off-by: Russell King commit 6616f7888c6088324727363276f6de05a1dca6fc Author: Eric W. Biederman Date: Sun Jun 13 03:35:48 2010 +0000 af_unix: Allow connecting to sockets in other network namespaces. Remove the restriction that only allows connecting to a unix domain socket identified by unix path that is in the same network namespace. Crossing network namespaces is always tricky and we did not support this at first, because of a strict policy of don't mix the namespaces. Later after Pavel proposed this we did not support this because no one had performed the audit to make certain using unix domain sockets across namespaces is safe. What fundamentally makes connecting to af_unix sockets in other namespaces is safe is that you have to have the proper permissions on the unix domain socket inode that lives in the filesystem. If you want strict isolation you just don't create inodes where unfriendlys can get at them, or with permissions that allow unfriendlys to open them. All nicely handled for us by the mount namespace and other standard file system facilities. I looked through unix domain sockets and they are a very controlled environment so none of the work that goes on in dev_forward_skb to make crossing namespaces safe appears needed, we are not loosing controll of the skb and so do not need to set up the skb to look like it is comming in fresh from the outside world. Further the fields in struct unix_skb_parms should not have any problems crossing network namespaces. Now that we handle SCM_CREDENTIALS in a way that gives useable values across namespaces. There does not appear to be any operational problems with encouraging the use of unix domain sockets across containers either. Signed-off-by: Eric W. Biederman Acked-by: Daniel Lezcano Acked-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 7361c36c5224519b258219fe3d0e8abc865d8134 Author: Eric W. Biederman Date: Sun Jun 13 03:34:33 2010 +0000 af_unix: Allow credentials to work across user and pid namespaces. In unix_skb_parms store pointers to struct pid and struct cred instead of raw uid, gid, and pid values, then translate the credentials on reception into values that are meaningful in the receiving processes namespaces. Signed-off-by: Eric W. Biederman Acked-by: Pavel Emelyanov Signed-off-by: David S. Miller commit a0fb007bf0c7de9ae361a9ad3821df4c69d4d2d9 Author: Hartley Sweeten Date: Mon Jun 14 16:54:16 2010 +0100 ARM: 6174/1: ep93xx: clear devcfg bits before setting them The ep93xx core helper function ep93xx_devcfg_set_clear should mask the clear_bits before setting the new set_bits in case the clear_bits are a mask value that also includes the set_bits. Signed-off-by: H Hartley Sweeten Acked-by: Ryan Mallon Signed-off-by: Russell King commit 16bcf78f8cac9cc3057c6ce3800490cb6e684ce8 Author: Hartley Sweeten Date: Thu Jun 10 16:19:08 2010 +0100 ARM: 6168/1: ep93xx: move physmap flash registration into core.c Create a core.c __init function to handle the physmap flash registration for all the ep93xx platforms. Also, modify all the ep93xx platforms to use this new function. This simplifies all the ep93xx platform init code and reduces the size of the kernel when including multiple ep93xx boards. Signed-off-by: H Hartley Sweeten Acked-by: Ryan Mallon Acked-by: Martin Guy Acked-by: Hubert Feurstein Signed-off-by: Russell King commit 6ea4b7418dfd07dc76d20a3c3bf632ee7b59a2c4 Author: Hartley Sweeten Date: Wed Jun 9 21:15:12 2010 +0100 ARM: 6167/1: ep93xx: register backlight driver Add the platform registration for the ep93xx backlight driver that is now merged. Since the pwm BRIGHT signal only functions if the video system is operating, register the backlight when the framebuffer device is registered. Signed-off-by: H Hartley Sweeten Acked-by: Ryan Mallon Signed-off-by: Russell King commit 257b5358b32f17e0603b6ff57b13610b0e02348f Author: Eric W. Biederman Date: Sun Jun 13 03:32:34 2010 +0000 scm: Capture the full credentials of the scm sender. Start capturing not only the userspace pid, uid and gid values of the sending process but also the struct pid and struct cred of the sending process as well. This is in preparation for properly supporting SCM_CREDENTIALS for sockets that have different uid and/or pid namespaces at the different ends. Signed-off-by: Eric W. Biederman Acked-by: Serge E. Hallyn Signed-off-by: David S. Miller commit b47030c71dfd6c8cd5cb6e551b6f7f7cfc96f6a6 Author: Eric W. Biederman Date: Sun Jun 13 03:31:06 2010 +0000 af_netlink: Add needed scm_destroy after scm_send. scm_send occasionally allocates state in the scm_cookie, so I have modified netlink_sendmsg to guarantee that when scm_send succeeds scm_destory will be called to free that state. Signed-off-by: Eric W. Biederman Reviewed-by: Daniel Lezcano Acked-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 109f6e39fa07c48f580125f531f46cb7c245b528 Author: Eric W. Biederman Date: Sun Jun 13 03:30:14 2010 +0000 af_unix: Allow SO_PEERCRED to work across namespaces. Use struct pid and struct cred to store the peer credentials on struct sock. This gives enough information to convert the peer credential information to a value relative to whatever namespace the socket is in at the time. This removes nasty surprises when using SO_PEERCRED on socket connetions where the processes on either side are in different pid and user namespaces. Signed-off-by: Eric W. Biederman Acked-by: Daniel Lezcano Acked-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 3f551f9436c05a3b5eccdd6e94733df5bb98d2a5 Author: Eric W. Biederman Date: Sun Jun 13 03:28:59 2010 +0000 sock: Introduce cred_to_ucred To keep the coming code clear and to allow both the sock code and the scm code to share the logic introduce a fuction to translate from struct cred to struct ucred. Signed-off-by: Eric W. Biederman Acked-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 5c1469de7545a35a16ff2b902e217044a7d2f8a5 Author: Eric W. Biederman Date: Sun Jun 13 03:28:03 2010 +0000 user_ns: Introduce user_nsmap_uid and user_ns_map_gid. Define what happens when a we view a uid from one user_namespace in another user_namepece. - If the user namespaces are the same no mapping is necessary. - For most cases of difference use overflowuid and overflowgid, the uid and gid currently used for 16bit apis when we have a 32bit uid that does fit in 16bits. Effectively the situation is the same, we want to return a uid or gid that is not assigned to any user. - For the case when we happen to be mapping the uid or gid of the creator of the target user namespace use uid 0 and gid as confusing that user with root is not a problem. Signed-off-by: Eric W. Biederman Acked-by: Serge E. Hallyn Signed-off-by: David S. Miller commit 812e876e842488221aa54cb4587a8a33445cfa9e Author: Eric W. Biederman Date: Sun Jun 13 03:27:04 2010 +0000 scm: Reorder scm_cookie. Reorder the fields in scm_cookie so they pack better on 64bit. Signed-off-by: Eric W. Biederman Acked-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 434d7b380f2bfc2161b9aaee2cada177a4a4261f Author: Anirban Chakraborty Date: Wed Jun 16 09:07:36 2010 +0000 qlcnic: Bumped up version number Changed the driver version number to 5.0.4 Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 0e33c6649eea99f03d6b444d93fe67d856f1b10d Author: Anirban Chakraborty Date: Wed Jun 16 09:07:27 2010 +0000 qlcnic: Fix a bug in setting up NIC partitioning mode The driver was not detecting the presence of NIC partitioning capability of the firmware properly. Now, it checks the eswitch set bit in the FW capabilities register and accordingly sets the driver mode as NPAR capable or not. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 8c76368174ed2359739f1b7b8a9c042b1ef839c4 Author: Florian Westphal Date: Wed Jun 16 14:42:15 2010 -0700 syncookies: check decoded options against sysctl settings Discard the ACK if we find options that do not match current sysctl settings. Previously it was possible to create a connection with sack, wscale, etc. enabled even if the feature was disabled via sysctl. Also remove an unneeded call to tcp_sack_reset() in cookie_check_timestamp: Both call sites (cookie_v4_check, cookie_v6_check) zero "struct tcp_options_received", hand it to tcp_parse_options() (which does not change tcp_opt->num_sacks/dsack) and then call cookie_check_timestamp(). Even if num_sacks/dsacks were changed, the structure is allocated on the stack and after cookie_check_timestamp returns only a few selected members are copied to the inet_request_sock. Signed-off-by: Florian Westphal Signed-off-by: David S. Miller commit 6d9fb90032c707a395148830a4c9aa9705a73f79 Author: Rabin Vincent Date: Thu Jun 3 07:56:36 2010 +0100 ARM: 6160/1: ux500: add DB8500 pin configs Add pin config macros for the pins on the DB8500. Acked-by: Linus Walleij Acked-by: Srinidhi Kasagar Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit ea05a57f6d34cb9e3a422ef165b515e9a1cd844a Author: Rabin Vincent Date: Thu Jun 3 07:58:42 2010 +0100 ARM: 6161/1: mop500: add basic pin configuration Use the newly added infrastructure to configure the SSP0 and I2C[0-3] pins on the MOP500 board. The u8500_init_devices() call needed to be moved up in order to register the GPIO device first. Acked-by: Linus Walleij Acked-by: Srinidhi Kasagar Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 2917947a673763be5f94313a59e5f28ee01b3d9d Author: Linus Walleij Date: Tue Jun 1 08:26:49 2010 +0100 ARM: 6153/1: nomadik MTU to use dynamic shift and mult assignment This removes the hard-coded shift values for the MTU timer, since the different platforms using this has very different running frequencies doing this dynamically is a better idea. Also take this opportunity to make a more through shutdown of the MTU clockevent when requested. Acked-by: Alessandro Rubini Signed-off-by: Linus Walleij Signed-off-by: Russell King commit f6aa01c2b8950a29503e93fc8b91f0d64f440c34 Author: Rabin Vincent Date: Wed Jun 16 06:12:13 2010 +0100 ARM: 6177/1: nomadik-gpio: fix "ignoring return value" warning arch/arm/plat-nomadik/gpio.c: In function 'nmk_gpio_remove': arch/arm/plat-nomadik/gpio.c:630: warning: ignoring return value of 'gpiochip_remove', declared with attribute warn_unused_result Because this function is marked __exit and this code can't be built as a module, this function is never used. So just remove it, fixing the warning in the process. Acked-by: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 0d2aec9cd356254649fa2aa6bb5fb4d20cfded2c Author: Rabin Vincent Date: Wed Jun 16 06:10:43 2010 +0100 ARM: 6176/1: nomadik-gpio: implement to_irq So that gpio_to_irq() works. Acked-by: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 4d4e20f77c6170eaec61976e0a165bdff6b09d79 Author: Rabin Vincent Date: Wed Jun 16 06:09:34 2010 +0100 ARM: 6175/1: nomadik-gpio: implement set_wake So that set_irq_wake() works. Cc: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 33f45ea91706f8fdde04bd6c2245f679403ec63f Author: Rabin Vincent Date: Wed Jun 2 06:09:52 2010 +0100 ARM: 6156/1: nomadik-gpio: switch to core_initcall Move the platform driver registration to a core_initcall, instead of an arch_initcall. This will allow us to use gpio related calls in init_machine() (which is an arch_initcall) after adding the gpio platform devices. Cc: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 378be0663dbb2de033ae7a1231227be09e6ad0a3 Author: Rabin Vincent Date: Wed Jun 2 06:06:29 2010 +0100 ARM: 6155/1: nomadik-gpio: add pin configuration API Add a pin configuration API to all pin-related configuration to be specified with a single macro and groups of pins to be configured at one go. Based on the PXA MFP implementation. Cc: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 6f9a974cf6fdd189ff383c8b75c22c65dab20b52 Author: Rabin Vincent Date: Wed Jun 2 05:50:28 2010 +0100 ARM: 6154/1: nomadik-gpio: refactor nmk_gpio_set_mode Extract out a portion of nmk_gpio_set_mode() that can be called with the lock already held. This will be used from the pincfg API. Cc: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 81a3c2989227e025b715e18299431395083b39e5 Author: Rabin Vincent Date: Thu May 27 12:39:23 2010 +0100 ARM: 6149/1: nomadik-gpio: add function to configure sleep mode behaviour Cc: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 5b327edf03c037ea6dc49a98a2b7f7186298ad1e Author: Rabin Vincent Date: Thu May 27 12:29:50 2010 +0100 ARM: 6148/1: nomadik-gpio: add function to configure pullup/pulldown Cc: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 6647c6c0b62ae14ca994c5776ddb084820bea808 Author: Rabin Vincent Date: Thu May 27 12:22:42 2010 +0100 ARM: 6147/1: nomadik-gpio: set val in ->direction_output() The ->direction_output() callback needs to set the value it was passed, in addition to setting the direction as output. On this peripheral, we can't set the value before setting the direction, so set it after. Acked-by: Alessandro Rubini Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 5c0c1f08abf094273f40a6d6fd4519fcacc6c58d Author: Rabin Vincent Date: Fri May 28 04:37:38 2010 +0100 ARM: 6150/1: gic: implement set_type Implement set_type() to allow configuration of the trigger type. Cc: Abhijeet Dharmapurikar Acked-by: Linus Walleij Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 23016bf0d25d62c45d8b8f61d55b290d704f7a79 Author: Venkatesh Pallipadi Date: Thu Jun 3 23:22:28 2010 -0400 x86: Look for IA32_ENERGY_PERF_BIAS support The new IA32_ENERGY_PERF_BIAS MSR allows system software to give hardware a hint whether OS policy favors more power saving, or more performance. This allows the OS to have some influence on internal hardware power/performance tradeoffs where the OS has previously had no influence. The support for this feature is indicated by CPUID.06H.ECX.bit3, as documented in the Intel Architectures Software Developer's Manual. This patch discovers support of this feature and displays it as "epb" in /proc/cpuinfo. Signed-off-by: Venkatesh Pallipadi LKML-Reference: Signed-off-by: Len Brown Signed-off-by: H. Peter Anvin commit 6a0076e02a884e86c762a7b63cb50c2e30067491 Author: Bruno Randolf Date: Wed Jun 16 19:12:39 2010 +0900 ath5k: report PHY error frames only for chips which need it Only report PHY error frames for ANI on chipsets which do not have PHY error counters in hardware. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 8786123b51984c518436911048668f9673f30cdf Author: Bruno Randolf Date: Wed Jun 16 19:12:34 2010 +0900 ath5k: review RX descriptor functions Reviewed RX descriptor functions against the HAL sources. Some minor changes: - check size before making changes to the descriptor - whitespace - add comments about 5210 timestamps. this needs to be adressed later! - FIFO overrun error only available on 5210 - rs_phyerr should not be OR'ed - clear the whole ath5k_rx_status structure before using, instead of zeroing specific fields. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 1884a3678c97c953dcfc2ee17bd43e354514d657 Author: Bruno Randolf Date: Wed Jun 16 19:12:28 2010 +0900 ath5k: take descriptor differences between 5210 and 5211 into account There are some differences between 5210 and 5211 descriptors which we did not take into account before. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 2237e928840c9a1d8bc5143daf28c419d9ca0bda Author: Bruno Randolf Date: Wed Jun 16 19:12:22 2010 +0900 ath5k: update 5210/5211 frame types Update 5210 frame types to match the HAL. We have to apply the same bitshift to the constants as we use later. Add 5211 specific frame types. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 03417bc605ef03cd851f13e36581cf2e1304755d Author: Bruno Randolf Date: Wed Jun 16 19:12:17 2010 +0900 ath5k: review and add comments for descriptors I carefully reviewed desh.h against the HAL sources. Added comments and made differences between 5210, 5211 and 5212 more clear by adding _521x to the defines which are specific to that chipset. Renamed some defines. No functional changes. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 62412a8f0ded6e5741c67c24f9e7c5b2bc33e042 Author: Bruno Randolf Date: Wed Jun 16 19:12:12 2010 +0900 ath5k: remove pointless rx error overlay struct ath5k_hw_rx_error was only used once, where we could easily just use ath5k_hw_rx_status as well, so remove it. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 2847109f73ac1b1e2d7517f9eac7f00c4e60b917 Author: Bruno Randolf Date: Wed Jun 16 19:12:07 2010 +0900 ath5k: cosmetic changes in ath5k_hw_proc_5212_rx_status() Just whitespace and indentation. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit a66681935455bfbb95dfe42aa3182e3f5b1ff1b4 Author: Bruno Randolf Date: Wed Jun 16 19:12:01 2010 +0900 ath5k: use direct function calls for descriptors when possible Use direct function calls for ath5k_hw_setup_rx_desc() and ath5k_hw_setup_mrr_tx_desc() instead of a function pointer which always pointed to the same function in the case of ath5k_hw_setup_rx_desc() and which is easily unified in the case of ath5k_hw_setup_mrr_tx_desc(). Also simplify the initialization function for the remaining function pointers. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 02a78b42f84b61c689a22f4429d73f92a972bc83 Author: Bruno Randolf Date: Wed Jun 16 19:11:56 2010 +0900 ath5k: move checks and stats into new function Create a new function ath5k_receive_frame_ok() which checks for errors, updates error statistics and tells us if we want to further "receive" this frame or not. This way we can avoid a goto and have a cleaner separation between buffer handling and other things. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 8a89f063e79bcbd38d01bb25948840fe909e62cd Author: Bruno Randolf Date: Wed Jun 16 19:11:51 2010 +0900 ath5k: split descriptor handling and frame receive Move frame reception into it's own function to have a clearer separation between buffer and descriptor handling and things that are done when we actually receive a frame. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit b16062facbf9952d9d69621a6bf87e1188973ccd Author: Bruno Randolf Date: Wed Jun 16 19:11:46 2010 +0900 ath5k: unify rx descriptor error handling There is no reason for a special handling (return) here, just break like we do with the checks before. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 39d63f2a3f95dce96e65f88c0a4560c3ca857a5f Author: Bruno Randolf Date: Wed Jun 16 19:11:41 2010 +0900 ath5k: reset more pointers after we free skbs After we free skbs for receive or transmit descriptors, make sure we have no pointers to the now invalid memory address. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 0452d4a508d7701d37ecf5d018f38e3422acb5d2 Author: Bruno Randolf Date: Wed Jun 16 19:11:35 2010 +0900 ath5k: print more errors when decriptor setup fails Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 265faadd6a01b9462bbc3ead26a3e32a717525c5 Author: Bruno Randolf Date: Wed Jun 16 19:11:30 2010 +0900 ath5k: fix rx descriptor debugging In the debug ouptut rx_status_0 was printed twice instead of rx_status_1. Also make the debug message more clear. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit beade6363cbb5308ba9918d7547aa574ae08a8bd Author: Bruno Randolf Date: Wed Jun 16 19:11:25 2010 +0900 ath5k: fix some comment typos Fix comment about dma sizes, brackets were missing. Replace 'insure' with 'ensure'. Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 9e4e43f20f808babd1b4ecd65266748ed1673c1e Author: Bruno Randolf Date: Wed Jun 16 19:11:17 2010 +0900 ath5k: rename ath5k_txbuf_free() to ath5k_txbuf_free_skb() Rename ath5k_txbuf_free() to ath5k_txbuf_free_skb() since this is what it does: it frees the skb and not the buf. Same for ath5k_rxbuf_free(). Signed-off-by: Bruno Randolf Acked-by: Bob Copeland Signed-off-by: John W. Linville commit 8d67a0310f7cba4796e5d5df99ed59408ac0b767 Author: Bruno Randolf Date: Wed Jun 16 19:11:12 2010 +0900 ath5k: more debug prints for resets Add a debug print for every case of reset. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit c086abae5baa2df449ea5247011e8b7d52bb13f4 Author: ubuntu@tjworld.net Date: Mon Mar 23 20:29:28 2009 +0000 ipw2200: Enable LED by default BugLink: http://bugs.launchpad.net/bugs/21367 Enable LED by default and update the MODULE_PARM_DESC. The original reason for defaulting to disabled was documented in 2005 and noted, "The LED code has been reported to hang some systems when running ifconfig and is therefore disabled by default." This no longer appears applicable and users have been requesting this be enabled for several years. Signed-off-by: TJ Signed-off-by: Tim Gardner Signed-off-by: Andy Whitcroft Acked-by: Stefan Bader Signed-off-by: Leann Ogasawara Signed-off-by: John W. Linville commit 7484bdc0569b3f9ddced42ed8d29de640135d9df Author: Leann Ogasawara Date: Tue Jun 15 14:01:51 2010 -0700 p54usb: Comment out duplicate Medion MD40900 device id The Medion MD40900 device id [0x0cde, 0x0006] is defined twice. Comment out the duplicate. Originally-by: Ben Collins Signed-off-by: Leann Ogasawara Signed-off-by: John W. Linville commit 3d3b33bd991890603fdfb4877d708cbc01d2acb2 Author: John W. Linville Date: Wed Jun 16 14:41:36 2010 -0400 zd1211rw: change ZD_REGDOMAIN_JAPAN_* naming ZD_REGDOMAIN_JAPAN_ADD and ZD_REGDOMAIN_JAPAN_GW_US54GXS seem a little verbose to me... Signed-off-by: John W. Linville commit 317fe0e6c5dc9448bcef41a2e31fecfd3dba7f55 Author: Eric Dumazet Date: Wed Jun 16 04:52:13 2010 +0000 inetpeer: restore small inet_peer structures Addition of rcu_head to struct inet_peer added 16bytes on 64bit arches. Thats a bit unfortunate, since old size was exactly 64 bytes. This can be solved, using an union between this rcu_head an four fields, that are normally used only when a refcount is taken on inet_peer. rcu_head is used only when refcnt=-1, right before structure freeing. Add a inet_peer_refcheck() function to check this assertion for a while. We can bring back SLAB_HWCACHE_ALIGN qualifier in kmem cache creation. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 71184ba482f800254f0a825e3c8b1752a1a7a36d Author: Kouhei Sutou Date: Wed Jun 16 21:53:59 2010 +0900 zd1211rw: add 0x49 -> JP regulatory domain map 0x49 is used by PLANEX GW-US54GXS (2019:5303). Signed-off-by: Kouhei Sutou Signed-off-by: John W. Linville commit 638c5945aca0649a9b827a4211683932308f9cc7 Author: Uwe Kleine-König Date: Fri Jun 11 12:16:58 2010 +0200 fix typos concerning "associate" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit f1bbbb6912662b9f6070c5bfc4ca9eb1f06a9d5b Merge: fd0961f 7e27d6e Author: Jiri Kosina Date: Wed Jun 16 18:08:13 2010 +0200 Merge branch 'master' into for-next commit fd0961ff67727482bb20ca7e8ea97b83e9de2ddb Author: Uwe Kleine-König Date: Fri Jun 11 12:16:56 2010 +0200 fix typos concerning "instead" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 421f91d21ad6f799dc7b489bb33cc560ccc56f98 Author: Uwe Kleine-König Date: Fri Jun 11 12:17:00 2010 +0200 fix typos concerning "initiali[zs]e" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 65155b3708137fabee865dc4da822763c0c41208 Author: Uwe Kleine-König Date: Fri Jun 11 12:17:01 2010 +0200 fix typos concerning "management" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 85dd08ebf1d208c391c48243e30e286808f684d8 Author: Uwe Kleine-König Date: Fri Jun 11 12:16:55 2010 +0200 fix typos concerning "first" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 46cd09a7de52cad464d35a75924b79984646288d Author: Uwe Kleine-König Date: Fri Jun 11 12:16:57 2010 +0200 fix typos concerning "acquire" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 732bee7af3102cad811fb047dee8d15966efe569 Author: Uwe Kleine-König Date: Fri Jun 11 12:16:59 2010 +0200 fix typos concerning "hierarchy" Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit 22c1d8b4f8f04882046ebe592f9a9eaea443cb45 Author: Christoph Egger Date: Wed Jun 9 13:21:08 2010 +0200 Remove dead CONFIG_SIBYTE_BCM1480_PROF CONFIG_SIBYTE_BCM1480_PROF doesn't exist in Kconfig, therefore removing all references for it from the source code. Signed-off-by: Christoph Egger Signed-off-by: Jiri Kosina commit 2fda16d79316eb37a3e0e09f0084623905221be8 Author: Joe Perches Date: Mon Jun 7 20:50:33 2010 -0700 arch/cris: Remove unnecessary kmalloc casts And separate declaration from allocation Still no error checking on failure, but it probably doesn't matter. Signed-off-by: Joe Perches Acked-by: Jesper Nilsson Signed-off-by: Jiri Kosina commit 66517915e0954ee027b889f452511945f7a9f3ec Author: Peter Huewe Date: Tue Jun 15 17:38:55 2010 +0200 ASoC: Fix I2C dependency for SND_FSI_AK4642 and SND_FSI_DA7210 The config option SND_FSI_AK4642 selects SND_SOC_AK4642 which in turn enables the compilation of ak4642.c - however this codec uses I2C to communicate with the HW. Same applies to DA7210. Consequently when I2C is not set, the compilation fails [1] This patch fixes this issues, by adding a depencdency on the related HW- controller. Signed-off-by: Peter Huewe Signed-off-by: Mark Brown commit f1df5aec68946e427eb4884c4d80e3259361478c Author: Mark Brown Date: Tue Jun 15 15:14:31 2010 +0100 ASoC: Pay attention to write errors in volsw_2r_sx Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 158132c9abbccce802def10e5ffaf044b266a6e1 Author: Brijesh Singh Date: Wed Jun 16 09:28:26 2010 +0300 UBI: improve delete-compatible volumes handling When a delete-compatible volume is found, it is first added to the 'corr' list, which contains "corrupted" PEBs which should be erased, and then it is added to the used volumes tree. However, the second step should not be done. This does not cause problems in practice, because we never access delete-compattible volumes, but it is still not the right thing to do. [Artem: amended the commit message and few prints] Signed-off-by: Brijesh Singh Signed-off-by: Artem Bityutskiy commit 5e833bc4166ea524c00a95e777e4344844ed189f Author: Lee Nipper Date: Wed Jun 16 15:29:15 2010 +1000 crypto: talitos - fix ahash for multiple of blocksize Correct ahash_process_req() to properly handle cases where the total hash amount is a multiple of the blocksize. The SEC must have some data to hash during the very last descriptor operation; so up to one whole blocksize of data is buffered until the final hash. Signed-off-by: Lee Nipper Signed-off-by: Herbert Xu commit fdb93f8ac39aa5902f3d264edd50dffcabfdd13b Author: David S. Miller Date: Tue Jun 15 21:50:14 2010 -0700 gadget/rndis: dev_get_stats() now returns rtnl_link_stats64. Based upon a report by Stephen Rothwell. Signed-off-by: David S. Miller commit 5f2f89209500623ccb4713ec4af7de86fd30a9e4 Author: Eric Dumazet Date: Tue Jun 15 21:47:39 2010 -0700 inetpeer: do not use zero refcnt for freed entries Followup of commit aa1039e73cc2 (inetpeer: RCU conversion) Unused inet_peer entries have a null refcnt. Using atomic_inc_not_zero() in rcu lookups is not going to work for them, and slow path is taken. Fix this using -1 marker instead of 0 for deleted entries. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit d5f31fbfd8fa3836a918592032853c41d1797c3d Author: Herbert Xu Date: Tue Jun 15 21:44:29 2010 -0700 netpoll: Use correct primitives for RCU dereferencing Now that RCU debugging checks for matching rcu_dereference calls and rcu_read_lock, we need to use the correct primitives or face nasty warnings. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 9f70b0fcecd134890affe627aa2823591313a413 Author: Herbert Xu Date: Tue Jun 15 21:43:48 2010 -0700 bridge: Add const to dummy br_netpoll_send_skb The version of br_netpoll_send_skb used when netpoll is off is missing a const thus causing a warning. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 5933dd2f028cdcbb4b3169dca594324704ba10ae Author: Eric Dumazet Date: Tue Jun 15 18:16:43 2010 -0700 net: NET_SKB_PAD should depend on L1_CACHE_BYTES In old kernels, NET_SKB_PAD was defined to 16. Then commit d6301d3dd1c2 (net: Increase default NET_SKB_PAD to 32), and commit 18e8c134f4e9 (net: Increase NET_SKB_PAD to 64 bytes) increased it to 64. While first patch was governed by network stack needs, second was more driven by performance issues on current hardware. Real intent was to align data on a cache line boundary. So use max(32, L1_CACHE_BYTES) instead of 64, to be more generic. Remove microblaze and powerpc own NET_SKB_PAD definitions. Thanks to Alexander Duyck and David Miller for their comments. Suggested-by: David Miller Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit a95d8c88bea0c93505e1d143d075f112be2b25e3 Author: Eric Dumazet Date: Sun Jun 13 23:22:43 2010 +0000 ipfrag : frag_kfree_skb() cleanup Third param (work) is unused, remove it. Remove __inline__ and inline qualifiers. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit d27f9b35827ec91d71d3561c127a0a8135fb470d Author: Eric Dumazet Date: Sun Jun 13 23:02:24 2010 +0000 ip_frag: Remove some atomic ops Instead of doing one atomic operation per frag, we can factorize them. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 2bbdf389a9432270147c8e8e35b021ad61772f65 Author: Florian Westphal Date: Sun Jun 13 11:29:39 2010 +0000 ipv6: syncookies: do not skip ->iif initialization When syncookies are in effect, req->iif is left uninitialized. In case of e.g. link-local addresses the route lookup then fails and no syn-ack is sent. Rearrange things so ->iif is also initialized in the syncookie case. want_cookie can only be true when the isn was zero, thus move the want_cookie check into the "!isn" branch. Cc: Glenn Griffin Signed-off-by: Florian Westphal Signed-off-by: David S. Miller commit 82695d9b186dcefe9bd119b53521deec20858f19 Author: Ben Hutchings Date: Tue Jun 15 15:08:48 2010 -0700 net: Fix error in comment on net_device_ops::ndo_get_stats ndo_get_stats still returns struct net_device_stats *; there is no struct net_device_stats64. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 4fcc3d3409b0ab37c1f790e04a1f7c984b436167 Author: Sonic Zhang Date: Fri Jun 11 17:44:31 2010 +0800 netdev:bfin_mac: reclaim and free tx skb as soon as possible after transfer SKBs hold onto resources that can't be held indefinitely, such as TCP socket references and netfilter conntrack state. So if a packet is left in TX ring for a long time, there might be a TCP socket that cannot be closed and freed up. Current blackfin EMAC driver always reclaim and free used tx skbs in future transfers. The problem is that future transfer may not come as soon as possible. This patch start a timer after transfer to reclaim and free skb. There is nearly no performance drop with this patch. TX interrupt is not enabled because of a strange behavior of the Blackfin EMAC. If EMAC TX transfer control is turned on, endless TX interrupts are triggered no matter if TX DMA is enabled or not. Since DMA walks down the ring automatically, TX transfer control can't be turned off in the middle. The only way is to disable TX interrupt completely. Signed-off-by: Sonic Zhang Signed-off-by: David S. Miller commit aa1039e73cc2cf834e99c09d2033d5d2675357b9 Author: Eric Dumazet Date: Tue Jun 15 08:23:14 2010 +0000 inetpeer: RCU conversion inetpeer currently uses an AVL tree protected by an rwlock. It's possible to make most lookups use RCU 1) Add a struct rcu_head to struct inet_peer 2) add a lookup_rcu_bh() helper to perform lockless and opportunistic lookup. This is a normal function, not a macro like lookup(). 3) Add a limit to number of links followed by lookup_rcu_bh(). This is needed in case we fall in a loop. 4) add an smp_wmb() in link_to_pool() right before node insert. 5) make unlink_from_pool() use atomic_cmpxchg() to make sure it can take last reference to an inet_peer, since lockless readers could increase refcount, even while we hold peers.lock. 6) Delay struct inet_peer freeing after rcu grace period so that lookup_rcu_bh() cannot crash. 7) inet_getpeer() first attempts lockless lookup. Note this lookup can fail even if target is in AVL tree, but a concurrent writer can let tree in a non correct form. If this attemps fails, lock is taken a regular lookup is performed again. 8) convert peers.lock from rwlock to a spinlock 9) Remove SLAB_HWCACHE_ALIGN when peer_cachep is created, because rcu_head adds 16 bytes on 64bit arches, doubling effective size (64 -> 128 bytes) In a future patch, this is probably possible to revert this part, if rcu field is put in an union to share space with rid, ip_id_count, tcp_ts & tcp_ts_stamp. These fields being manipulated only with refcnt > 0. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 7b34a4644b4342896e0c1967b8f953213ea4a990 Author: Michael Chan Date: Tue Jun 15 08:57:03 2010 +0000 cnic: Fix cnic_cm_abort() error handling. Fix the code that handles the error case when cnic_cm_abort() cannot proceed normally. We cannot just set the csk->state and we must go through cnic_ready_to_close() to handle all the conditions. We also add error return code in cnic_cm_abort(). Signed-off-by: Michael Chan Signed-off-by: Eddie Wai Signed-off-by: David S. Miller commit 943189f1d564e69201f7d71e77f5608a701e3e55 Author: Michael Chan Date: Tue Jun 15 08:57:02 2010 +0000 cnic: Refactor and fix cnic_ready_to_close(). Combine RESET_RECEIVED and RESET_COMP logic and fix race condition between these 2 events and cnic_cm_close(). In particular, we need to (test_and_clear_bit(SK_F_OFFLD_COMPLETE, &csk->flags)) before we update csk->state. Signed-off-by: Michael Chan Signed-off-by: Eddie Wai Signed-off-by: David S. Miller commit a1e621bf6d03621de207cd416f6a21969dd0601c Author: Michael Chan Date: Tue Jun 15 08:57:01 2010 +0000 cnic: Refactor code in cnic_cm_process_kcqe(). Move chip-specific code to the respective chip's ->close_conn() functions for better code organization. Signed-off-by: Michael Chan Signed-off-by: Eddie Wai Signed-off-by: David S. Miller commit ed99daa5a0de4df9ed579ce36ff8b1373b6dbe47 Author: Michael Chan Date: Tue Jun 15 08:57:00 2010 +0000 cnic: Return error code in cnic_cm_close() if unsuccessful. So that bnx2i can handle the error condition immediately and not have to wait for timeout. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 2850062af1e00b3aab9f2ae486eda3e61d4aaeb9 Author: Alexander Duyck Date: Tue Jun 15 09:25:48 2010 +0000 ixgbe: update set_rx_mode to fix issues w/ macvlan This change corrects issues where macvlan was not correctly triggering promiscuous mode on ixgbe due to the filters not being correctly set. It also corrects the fact that VF rar filters were being overwritten when the PF was reset. CC: Shirley Ma Signed-off-by: Alexander Duyck Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 16fb62b6b4d57339a0ec931b3fb8c8d0ca6414e8 Merge: a3433f3 f9181f4 Author: David S. Miller Date: Tue Jun 15 13:49:24 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 commit 3260e5293727f16ffdce9a6a6203fd9a6b149e58 Author: Michael Bohan Date: Mon Jun 14 13:06:56 2010 -0700 arm: mm: Don't free prohibited memmap entries The VM subsystem assumes that there are valid memmap entries to the bank end aligned to MAX_ORDER_NR_PAGES. It will try and read these page structs, and so we cannot free any memmap entries that it may inspect. Signed-off-by: Michael Bohan Signed-off-by: Daniel Walker commit 923a081c72fa2dccb7ea7070bd8e0f4dc99ceff8 Author: Pavel Machek Date: Wed Jun 2 11:11:12 2010 -0700 Add GPIO support for HTC Dream. Signed-off-by: Pavel Machek [dwalker@codeaurora.org: renamed to trout, checkpatch cleanup] Signed-off-by: Daniel Walker commit d7ca21393d39cb2e73dfc4c516e7be37ba01789e Author: Sujith Date: Tue Jun 15 10:24:37 2010 +0530 ath9k_htc: Fix ampdu_action callback Now that ampdu_action() can sleep, remove all the driver hacks and just issue WMI commands to the target. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 9a2af8892a74573cec4bea2149843a93442a12de Author: Luis R. Rodriguez Date: Mon Jun 14 20:17:36 2010 -0400 ath9k_hw: avoid setting cwmin/cwmax to 0 for IBSS for AR9003 IBSS requires the cwmin and cwmax to be respected when we reset the txqueues on AR9003 otherwise the distribution of beacons will be balanced towards the AR9003 card first preventing equal contention for air time for other peers on the IBSS. Without this IBSS will work but only the AR9003 card will be be issuing beacons on the IBSS. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e4a0ab3487d847ce8044a2d49f82391ea7d6489e Author: Ivo van Doorn Date: Mon Jun 14 22:14:19 2010 +0200 rt2x00: Synchronize WCID initialization with legacy driver Legacy rt2870 driver handles WCID differently then we expected, the BSSID and Cipher value are 3 bit values, while the 4th bit should be set elsewhere in an extended field. After this, rt2800usb reports frames have been decrypted successfully, indicating that the Hardware decryption now is working correctly. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 04f1e34d3c4ce8db05524cf527659eed1635ab20 Author: Ivo van Doorn Date: Mon Jun 14 22:13:56 2010 +0200 rt2x00: Enable HW crypto by default Hardware cryptography seems to be working on a 11G network with WPA/WPA2 cryptography enabled. WEP still needs to be tested... Signed-of-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit e6474c3c6d4839c73f363a0f44a347d804534758 Author: Ivo van Doorn Date: Mon Jun 14 22:13:37 2010 +0200 rt2x00: Limit TX done looping to number of TX ring entries Similar to rt2800pci, remove the check for duplicate register reading, and instead limit the for-loop to the maximum number of TX entries inside a queue. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit a5ea2f0255fe48af4864b41385fc28b4bc785ba6 Author: Ivo van Doorn Date: Mon Jun 14 22:13:15 2010 +0200 rt2x00: Update author rt2800lib rt2800lib has been under development of the rt2x00 project, so add it to the author string for the module information. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit e1b4d7b735c564444d0db668a65c547ad1d29058 Author: Ivo van Doorn Date: Mon Jun 14 22:12:54 2010 +0200 rt2x00: Enable fallback rates for rt61pci and rt73usb Explicitly enable the usage of fallback rates for the transmission of frames with rt61pci and rt73usb hardware. Note that for txdone reporting, only rt61pci is capable of reporting the fallback rates, for USB it is not possible to determine the number of retries. However the device will use the fallback rates, so it might still help in the performance. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 3d2bc1036a64bc015671283833430035f7dbbed0 Author: Helmut Schaa Date: Mon Jun 14 22:12:26 2010 +0200 rt2x00: Fix tx status reporting when falling back to the lowest rate In some corner cases the reported tx rates/retries didn't match the really used ones. The hardware lowers the tx rate on each consecutive retry by 1 (but won't fall back from MCS to legacy rates) _until_ it reaches the lowest one. In case the frame wasn't sent succesful the number of retries is 7 and if a rate index <7 was used the previous code reported negative rate indexes which were then ignored by the rate control algorithm and mac80211. Instead, report the remaining number of retries to have happened with the lowest rate (index 0). This should give the rate control algorithm slightly more accurate information about the used tx rates/retries. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 3f2bee249926194313f7001bdfedb9c9634a48fc Author: Helmut Schaa Date: Mon Jun 14 22:12:01 2010 +0200 rt2x00: provide mac80211 a suitable max_rates value Set up max_rates and max_rate_tries with suitable values even if we do not support the whole functionality. As rt2800 has a global fallback table we cannot specify more then one tx rate per frame but since the hw will try several different rates (based on the fallback table) we should still initialize max_rates to the maximum number of rates we are going to try. Otherwise mac80211 will truncate our reported tx rates and the rc algortihm will end up with incorrect data choosing unsuitable rates for tx. This improves throughput on rt2800 devices considerable. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit a3f84ca4b8dc31d0034a8b23194a4470766c938c Author: Helmut Schaa Date: Mon Jun 14 22:11:32 2010 +0200 rt2x00: Fix typo in rt2800_config_txpower Fix typo in rt2800_config_txpower. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 3afa626a05a1d9fceedb397a66e85c13e3ff2c26 Author: Helmut Schaa Date: Mon Jun 14 22:11:09 2010 +0200 rt2x00: Fix TX_STA_FIFO handling Currently rt2800pci will read TX_STA_FIFO until the previously read value matches the current value. However, it is obvious that TX_STA_FIFO only contains values that can easily be the same for multiple consecutive frames (especially when communicating with only one other STA). Hence, we often ended up with reading only the first entry and ignoring the rest. One result was that when the TX_STA_FIFO contained multiple entires, only the first one was read and properly handled while the others remained in the tx queue. Thus, drop this check but introduce a maximum number of reads. All legacy drivers use the size of the tx ring as limit but state that the TX_STA_FIFO has only 16 entries. So, let's just stick with the tx ring size for now. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 52b58facff34318e8d98617480fc188edfc71386 Author: Helmut Schaa Date: Mon Jun 14 22:10:42 2010 +0200 rt2x00: Add comment about BBP1_TX_POWER Add a comment about the meaning of BBP1_TX_POWER stating all possible values. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 2606e4223e21c047521cdd3f849db59c2ef99e6a Author: Helmut Schaa Date: Mon Jun 14 22:10:09 2010 +0200 rt2x00: Fix IEEE80211_TX_CTL_MORE_FRAMES handling IEEE80211_TX_CTL_MORE_FRAMES indicates that more frames are queued for tx but has nothing to do with fragmentation. Hence, don't set ENTRY_TXD_MORE_FRAG but only ENTRY_TXD_BURST to not kick the tx queues immediately. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ecb7cab59a2b8c0ec1aab6ac903def1d5a81d32b Author: Helmut Schaa Date: Mon Jun 14 22:09:41 2010 +0200 rt2x00: only set TXDONE_FALLBACK in rt2800pci if the frame was retried TXDONE_FALLBACK expresses that fallback rates were used for retries. Hence, it only makes sense to set the flag if retries > 0. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit fd6dcb883a0e34de90c64a9352c5225066ee7d72 Author: Helmut Schaa Date: Mon Jun 14 22:09:09 2010 +0200 rt2x00: don't use TXDONE_FALLBACK as success indicator TXDONE_FALLBACK doesn't express if the frame was sent successful or not. It only tells us that the hw used fallback rates for retries. Hence, don't use TXDONE_FALLBACK as success indicator. Before this patch we reported success to the rate control algorithm which was wrong in a number of cases and might have lead to improper tx rate selections. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 46678b197a4a61f9c3701fb346b93acbf2ea9c61 Author: Helmut Schaa Date: Mon Jun 14 22:08:30 2010 +0200 rt2x00: clarify meaning of txdone flags Update the documentation of the available txdone flags to better express how they should be used. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9190252c952a33efa1ceff4ef35188f8a27b81cb Author: Jouni Malinen Date: Fri Jun 11 10:27:33 2010 -0700 mac80211: Use a separate CCMP PN receive counter for management frames When management frame protection (IEEE 802.11w) is used, we must use a separate counter for tracking received CCMP packet number for the management frames. The previously used NUM_RX_DATA_QUEUESth queue was shared with data frames when QoS was not used and that can cause problems in detecting replays incorrectly for robust management frames. Add a new counter just for robust management frames to avoid this issue. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 05e48e8e437148298f4673e1efe81f9ead5f41d7 Author: Jouni Malinen Date: Mon Jun 14 11:55:56 2010 -0700 mac80211: Protect Deauthentication frame when using MFP When management frame protection (IEEE 802.11w) is used, Deauthentication frame needs to be protected when the pairwise key is configured. mac80211 was removing the station entry (and its keys) before actually sending out the Deauthentication frame. Fix this by reordering the code to send the frame before the station entry gets removed. This matches an earlier change that handled the Disassociation frame processing, but missed Deauthentication frames. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit ff61638105db6f5832ef8700436ba6aa6d3a2fda Author: Juuso Oikarinen Date: Wed Jun 9 09:51:52 2010 +0300 mac80211: Fix ps-qos network latency handling The ps-qos latency handling is broken. It uses predetermined latency values to select specific dynamic PS timeouts. With common AP configurations, these values overlap with beacon interval and are therefore essentially useless (for network latencies less than the beacon interval, PSM is disabled.) This patch remedies the problem by replacing the predetermined network latency values with one high value (1900ms) which is used to go trigger full psm. For backwards compatibility, the value 2000ms is still mapped to a dynamic ps timeout of 100ms. Currently also the mac80211 internal value for storing user space configured dynamic PSM values is incorrectly in the driver visible ieee80211_conf struct. Move it to the ieee80211_local struct. Signed-off-by: Juuso Oikarinen Signed-off-by: John W. Linville commit a3433f35a55f7604742cae620c6dc6edfc70db6a Author: Changli Gao Date: Sat Jun 12 14:01:43 2010 +0000 tcp: unify tcp flag macros unify tcp flag macros: TCPHDR_FIN, TCPHDR_SYN, TCPHDR_RST, TCPHDR_PSH, TCPHDR_ACK, TCPHDR_URG, TCPHDR_ECE and TCPHDR_CWR. TCBCB_FLAG_* are replaced with the corresponding TCPHDR_*. Signed-off-by: Changli Gao ---- include/net/tcp.h | 24 ++++++------- net/ipv4/tcp.c | 8 ++-- net/ipv4/tcp_input.c | 2 - net/ipv4/tcp_output.c | 59 ++++++++++++++++----------------- net/netfilter/nf_conntrack_proto_tcp.c | 32 ++++++----------- net/netfilter/xt_TCPMSS.c | 4 -- 6 files changed, 58 insertions(+), 71 deletions(-) Signed-off-by: David S. Miller commit f350a0a87374418635689471606454abc7beaa3a Author: Jiri Pirko Date: Tue Jun 15 06:50:45 2010 +0000 bridge: use rx_handler_data pointer to store net_bridge_port pointer Register net_bridge_port pointer as rx_handler data pointer. As br_port is removed from struct net_device, another netdev priv_flag is added to indicate the device serves as a bridge port. Also rcuized pointers are now correctly dereferenced in br_fdb.c and in netfilter parts. Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit a35e2c1b6d90544b3c688783869817628e5f9607 Author: Jiri Pirko Date: Tue Jun 15 03:27:57 2010 +0000 macvlan: use rx_handler_data pointer to store macvlan_port pointer V2 Register macvlan_port pointer as rx_handler data pointer. As macvlan_port is removed from struct net_device, another netdev priv_flag is added to indicate the device serves as a macvlan port. Signed-off-by: Jiri Pirko Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 93e2c32b5cb2ad92ceb1d7a4684f20a0d25bf530 Author: Jiri Pirko Date: Thu Jun 10 03:34:59 2010 +0000 net: add rx_handler data pointer Add possibility to register rx_handler data pointer along with a rx_handler. Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 91d2c34a4eed32876ca333b0ca44f3bc56645805 Author: Herbert Xu Date: Thu Jun 10 16:12:50 2010 +0000 bridge: Fix netpoll support There are multiple problems with the newly added netpoll support: 1) Use-after-free on each netpoll packet. 2) Invoking unsafe code on netpoll/IRQ path. 3) Breaks when netpoll is enabled on the underlying device. This patch fixes all of these problems. In particular, we now allocate proper netpoll structures for each underlying device. We only allow netpoll to be enabled on the bridge when all the devices underneath it support netpoll. Once it is enabled, we do not allow non-netpoll devices to join the bridge (until netpoll is disabled again). This allows us to do away with the npinfo juggling that caused problem number 1. Incidentally this patch fixes number 2 by bypassing unsafe code such as multicast snooping and netfilter. Reported-by: Qianfeng Zhang Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit c18370f5b2949d9cca519355f33690b75e1e7c8b Author: Herbert Xu Date: Thu Jun 10 16:12:49 2010 +0000 netpoll: Add netpoll_tx_running This patch adds the helper netpoll_tx_running for use within ndo_start_xmit. It returns non-zero if ndo_start_xmit is being invoked by netpoll, and zero otherwise. This is currently implemented by simply looking at the hardirq count. This is because for all non-netpoll uses of ndo_start_xmit, IRQs must be enabled while netpoll always disables IRQs before calling ndo_start_xmit. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 8fdd95ec162a8fbac7f41d6f54f90402fe3e8cb1 Author: Herbert Xu Date: Thu Jun 10 16:12:48 2010 +0000 netpoll: Allow netpoll_setup/cleanup recursion This patch adds the functions __netpoll_setup/__netpoll_cleanup which is designed to be called recursively through ndo_netpoll_seutp. They must be called with RTNL held, and the caller must initialise np->dev and ensure that it has a valid reference count. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 4247e161b12f8dffb7ee3ee07bc5e61f714ebe2d Author: Herbert Xu Date: Thu Jun 10 16:12:47 2010 +0000 netpoll: Add ndo_netpoll_setup This patch adds ndo_netpoll_setup as the initialisation primitive to complement ndo_netpoll_cleanup. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit dbaa154178341689faaa08fbf40b94ae5ca1d6c0 Author: Herbert Xu Date: Thu Jun 10 16:12:46 2010 +0000 netpoll: Add locking for netpoll_setup/cleanup As it stands, netpoll_setup and netpoll_cleanup have no locking protection whatsoever. So chaos ensures if two entities try to perform them on the same device. This patch adds RTNL to the equation. The code has been rearranged so that bits that do not need RTNL protection are now moved to the top of netpoll_setup. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit de85d99eb7b595f6751550184b94c1e2f74a828b Author: Herbert Xu Date: Thu Jun 10 16:12:44 2010 +0000 netpoll: Fix RCU usage The use of RCU in netpoll is incorrect in a number of places: 1) The initial setting is lacking a write barrier. 2) The synchronize_rcu is in the wrong place. 3) Read barriers are missing. 4) Some places are even missing rcu_read_lock. 5) npinfo is zeroed after freeing. This patch fixes those issues. As most users are in BH context, this also converts the RCU usage to the BH variant. Signed-off-by: Herbert Xu Acked-by: Paul E. McKenney Signed-off-by: David S. Miller commit 36655042f9873efc2a90d251b9aef9b6b79d75d8 Author: Herbert Xu Date: Thu Jun 10 16:12:43 2010 +0000 bridge: Remove redundant npinfo NULL setting Now that netpoll always zaps npinfo we no longer need to do it in bridge. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit c04ec8063d3a89e5ae933c7b4be04476fe65c6de Author: Herbert Xu Date: Thu Jun 10 16:12:42 2010 +0000 netpoll: Set npinfo to NULL even with ndo_netpoll_cleanup Since we have to NULL npinfo regardless of whether there is a ndo_netpoll_cleanup, it makes sense to do this unconditionally in netpoll_cleanup rather than having every driver do it by themselves. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit c6ac12a6159c802ae8b757dd13563564e64333df Author: Jan Kara Date: Tue Jun 15 12:19:59 2010 -0400 ext4: update ctime when changing the file's permission by setfacl ext4 didn't update the ctime of the file when its permission was changed. Steps to reproduce: # touch aaa # stat -c %Z aaa 1275289822 # setfacl -m 'u::x,g::x,o::x' aaa # stat -c %Z aaa 1275289822 <- unchanged But, according to the spec of the ctime, ext4 must update it. Port of ext3 patch by Miao Xie . CC: linux-ext4@vger.kernel.org Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit f9181f4ffc71d7b7dd1906c9a11d51d6659220ae Merge: 0902b46 1ab6c16 Author: Patrick McHardy Date: Tue Jun 15 17:31:06 2010 +0200 Merge branch 'master' of /repos/git/net-next-2.6 Conflicts: include/net/netfilter/xt_rateest.h net/bridge/br_netfilter.c net/netfilter/nf_conntrack_core.c Signed-off-by: Patrick McHardy commit e71fa370428aa80e3acc3a49f8df1e76e7719347 Author: Mark Brown Date: Tue Jun 15 15:14:00 2010 +0100 ASoC: Default WM2000 ANC and speaker to enabled The most useful configuration for the WM2000 is to enable the ANC so turn that on by default, and since we're not reflecting chip default state also enable the speaker output by default. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 0902b469bd25065aa0688c3cee6f11744c817e7c Author: Luciano Coelho Date: Tue Jun 15 15:04:00 2010 +0200 netfilter: xtables: idletimer target implementation This patch implements an idletimer Xtables target that can be used to identify when interfaces have been idle for a certain period of time. Timers are identified by labels and are created when a rule is set with a new label. The rules also take a timeout value (in seconds) as an option. If more than one rule uses the same timer label, the timer will be restarted whenever any of the rules get a hit. One entry for each timer is created in sysfs. This attribute contains the timer remaining for the timer to expire. The attributes are located under the xt_idletimer class: /sys/class/xt_idletimer/timers/