aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-04-04timekeeping: Delay update of clock->cycle_lastThomas Gleixner1-1/+3
For calculating the new timekeeper values store the new cycle_last value in the timekeeper and update the clock->cycle_last just when we actually update the new values. Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04timekeeping: Store cycle_last value in timekeeper struct as wellThomas Gleixner2-2/+4
For implementing a shadow timekeeper and a split calculation/update region we need to store the cycle_last value in the timekeeper and update the value in the clocksource struct only in the update region. Add the extra storage to the timekeeper. Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04ntp: Remove ntp_lock, using the timekeeping locks to protect ntp stateJohn Stultz1-37/+4
In order to properly handle the NTP state in future changes to the timekeeping lock management, this patch moves the management of all of the ntp state under the timekeeping locks. This allows us to remove the ntp_lock. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04timekeeping: Simplify tai updating from do_adjtimexJohn Stultz1-5/+4
Since we are taking the timekeeping locks, just go ahead and update any tai change directly, rather then dropping the lock and calling a function that will just take it again. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04timekeeping: Hold timekeepering locks in do_adjtimex and hardppsJohn Stultz1-2/+17
In moving the NTP state to be protected by the timekeeping locks, be sure to acquire the timekeeping locks prior to calling ntp functions. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04timekeeping: Move ADJ_SETOFFSET to top level do_adjtimex()John Stultz2-11/+11
Since ADJ_SETOFFSET adjusts the timekeeping state, process it as part of the top level do_adjtimex() function in timekeeping.c. This avoids deadlocks that could occur once we change the ntp locking rules. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04ntp: Rework do_adjtimex to take timespec and tai argumentsJohn Stultz3-16/+17
In order to change the locking rules, we need to provide the timespec and tai values rather then having the ntp logic acquire these values itself. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04ntp: Move timex validation to timekeeping do_adjtimex call.John Stultz3-5/+8
Move logic that does not need the ntp state to be done in the timekeeping do_adjtimex() call. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04ntp: Move do_adjtimex() and hardpps() functions to timekeeping.cJohn Stultz4-12/+36
In preparation for changing the ntp locking rules, move do_adjtimex and hardpps accessor functions to timekeeping.c, but keep the code logic in ntp.c. This patch also introduces a ntp_internal.h file so timekeeping specific interfaces of ntp.c can be more limitedly shared with timekeeping.c. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-04ntp: Split out timex validation from do_adjtimexJohn Stultz1-12/+27
Split out the timex validation done in do_adjtimex into a separate function. This will help simplify logic in following patches. Cc: Thomas Gleixner <[email protected]> Cc: Richard Cochran <[email protected]> Cc: Prarit Bhargava <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-04-03Merge branch 'fortglx/3.10/time' of ↵Thomas Gleixner130-968/+1676
git://git.linaro.org/people/jstultz/linux into timers/core
2013-03-28ARM: bcm281xx: Add timer driver (driver portion)Christian Daudt4-5/+215
This adds support for the Broadcom timer, used in the following SoCs: BCM11130, BCM11140, BCM11351, BCM28145, BCM28155 Updates from V6: - Split DT portion into a separate patch Updates from V5: - Rebase to latest arm-soc/for-next Updates from V4: - Switch code to use CLOCKSOURCE_OF_DECLARE Updates from V3: - Migrate to 3.9 timer framework updates Updates from V2: - prepend static fns + fields with kona_ Updates from V1: - Rename bcm_timer.c to bcm_kona_timer.c - Pull .h into bcm_kona_timer.c - Make timers static - Clean up comment block - Switched to using clockevents_config_and_register - Added an error to the get_timer loop if it repeats too much - Added to Documentation/devicetree/bindings/arm/bcm/bcm,kona-timer.txt - Added missing readl to timer_disable_and_clear Note: bcm,kona-timer was kept as the 'compatible' field to make it specific enough for when there are multiple bcm timers (bcm,timer is too generic). Signed-off-by: Christian Daudt <[email protected]> Acked-by: Arnd Bergmann <[email protected]> Acked-by: John Stultz <[email protected]> Reviewed-by: Stephen Warren <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-25timekeeping: __timekeeping_set_tai_offset can be staticFengguang Wu1-1/+1
Yet again, the kbuild test robot saves the day, noting I left out defining __timekeeping_set_tai_offset as static. It even sent me this patch. Reported-by: Fengguang Wu <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-25tick: Change log level of NOHZ: local_softirq_pending messageRado Vrbovsky1-2/+2
The "NOHZ: local_softirq_pending" message is a largely informational message. This makes extra work for customers that have a policy of investigating all kernel log messages logged at <= KERN_ERR log level. This patch sets the message to a different log level. [ tglx: Use pr_warn() ] Signed-off-by: Rado Vrbovsky <[email protected]> Cc: Don Zickus <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
2013-03-25hrtimer/trivial: Fix comment text in hrtimer.cDavid Daney1-2/+4
The comments mention HRTIMER_ABS and HRTIMER_REL, these symbols don't exist, the proper names are HRTIMER_MODE_ABS and HRTIMER_MODE_REL. Signed-off-by: David Daney <[email protected]> Cc: Jiri Kosina <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
2013-03-22timekeeping: Split timekeeper_lock into lock and seqcountThomas Gleixner1-59/+73
We want to shorten the seqcount write hold time. So split the seqlock into a lock and a seqcount. Open code the seqwrite_lock in the places which matter and drop the sequence counter update where it's pointless. Signed-off-by: Thomas Gleixner <[email protected]> [jstultz: Merge fixups from CLOCK_TAI collisions] Signed-off-by: John Stultz <[email protected]>
2013-03-22timekeeping: Move lock out of timekeeper structThomas Gleixner2-57/+53
Make the lock a separate entity. Preparatory patch for shadow timekeeper structure. Signed-off-by: Thomas Gleixner <[email protected]> [Merged with CLOCK_TAI changes] Signed-off-by: John Stultz <[email protected]>
2013-03-22timekeeping: Make jiffies_lock internalThomas Gleixner3-1/+3
Nothing outside of the timekeeping core needs that lock. Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-22timekeeping: Calc stuff onceThomas Gleixner1-3/+4
Calculate the cycle interval shifted value once. No functional change, just makes the code more readable. Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-22hrtimer: Add hrtimer support for CLOCK_TAIJohn Stultz5-3/+44
Add hrtimer support for CLOCK_TAI, as well as posix timer interfaces. Signed-off-by: John Stultz <[email protected]>
2013-03-22timekeeping: Add CLOCK_TAI clockidJohn Stultz4-4/+43
This add a CLOCK_TAI clockid and the needed accessors. CC: Thomas Gleixner <[email protected]> CC: Eric Dumazet <[email protected]> CC: Richard Cochran <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-22timekeeping: Move TAI managment into timekeeping core from ntpJohn Stultz4-8/+59
Currently NTP manages the TAI offset. Since there's plans for a CLOCK_TAI clockid, push the TAI management into the timekeeping core. CC: Thomas Gleixner <[email protected]> CC: Eric Dumazet <[email protected]> CC: Richard Cochran <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-22clockevents: Add missing tick_check_broadcast_expired() for CLOCKEVENTS=nThomas Gleixner1-0/+1
Fengs build robot reports: arch/arm/kernel/process.c: In function 'cpu_idle': arch/arm/kernel/process.c:211:4: error: implicit declaration of function 'tick_check_broadcast_expired' [-Werror=implicit-function-declaration] Add the missing inline function for non clockevent builds Reported-by: Wu Fengguang <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
2013-03-15timekeeping: utilize the suspend-nonstop clocksource to count suspended timeFeng Tang1-7/+51
There are some new processors whose TSC clocksource won't stop during suspend. Currently, after system resumes, kernel will use persistent clock or RTC to compensate the sleep time, but with these nonstop clocksources, we could skip the special compensation from external sources, and just use current clocksource for time recounting. This can solve some time drift bugs caused by some not-so-accurate or error-prone RTC devices. The current way to count suspended time is first try to use the persistent clock, and then try the RTC if persistent clock can't be used. This patch will change the trying order to: suspend-nonstop clocksource -> persistent clock -> RTC When counting the sleep time with nonstop clocksource, use an accurate way suggested by Jason Gunthorpe to cover very large delta cycles. Signed-off-by: Feng Tang <[email protected]> [jstultz: Small optimization, avoiding re-reading the clocksource] Signed-off-by: John Stultz <[email protected]>
2013-03-15x86: tsc: Add support for new S3_NONSTOP featureFeng Tang1-1/+5
Add support for new S3_NONSTOP feature Signed-off-by: Feng Tang <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-15clocksource: Add new feature flag CLOCK_SOURCE_SUSPEND_NONSTOPFeng Tang1-0/+1
Some x86 processors have a TSC clocksource, which continues to run even when system is suspended. Also most OMAP platforms have a 32 KHz timer which has similar capability. Add a feature flag so that it could be utilized. Signed-off-by: Feng Tang <[email protected]> Signed-off-by: John Stultz <[email protected]>
2013-03-15x86: Add cpu capability flag X86_FEATURE_NONSTOP_TSC_S3Feng Tang2-0/+13
On some new Intel Atom processors (Penwell and Cloverview), there is a feature that the TSC won't stop in S3 state, say the TSC value won't be reset to 0 after resume. This feature makes TSC a more reliable clocksource and could benefit the timekeeping code during system suspend/resume cycle, so add a flag for it. Signed-off-by: Feng Tang <[email protected]> [jstultz: Fix checkpatch warning] Signed-off-by: John Stultz <[email protected]>
2013-03-15x86: Do full rtc synchronization with ntpPrarit Bhargava4-83/+55
Every 11 minutes ntp attempts to update the x86 rtc with the current system time. Currently, the x86 code only updates the rtc if the system time is within +/-15 minutes of the current value of the rtc. This was done originally to avoid setting the RTC if the RTC was in localtime mode (common with Windows dualbooting). Other architectures do a full synchronization and now that we have better infrastructure to detect when the RTC is in localtime, there is no reason that x86 should be software limited to a 30 minute window. This patch changes the behavior of the kernel to do a full synchronization (year, month, day, hour, minute, and second) of the rtc when ntp requests a synchronization between the system time and the rtc. I've used the RTC library functions in this patchset as they do all the required bounds checking. Cc: Thomas Gleixner <[email protected]> Cc: John Stultz <[email protected]> Cc: [email protected] Cc: Matt Fleming <[email protected]> Cc: David Vrabel <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Andi Kleen <[email protected]> Cc: [email protected] Signed-off-by: Prarit Bhargava <[email protected]> [jstultz: Tweak commit message, fold in build fix found by fengguang Also add select RTC_LIB to X86, per new dependency, as found by prarit] Signed-off-by: John Stultz <[email protected]>
2013-03-15timekeeping: Use inject_offset in warp_clockJohn Stultz1-3/+3
When warping the clock (from a local time RTC), use timekeeping_inject_offset() to atomically add the offset. This avoids any minor time error caused by the delay between reading the time, and then setting the adjusted time. Signed-off-by: John Stultz <[email protected]>
2013-03-15timekeeping: Avoid adjust kernel time once hwclock kept in UTC timeDong Zhu1-5/+6
If the Hardware Clock kept in local time,kernel will adjust the time to be UTC time.But if Hardware Clock kept in UTC time,system will make a dummy settimeofday call first (sys_tz.tz_minuteswest = 0) to make sure the time is not shifted,so at this point I think maybe it is not necessary to set the kernel time once the sys_tz.tz_minuteswest is zero. Signed-off-by: Dong Zhu <[email protected]> [jstultz: Updated to merge with conflicting changes ] Signed-off-by: John Stultz <[email protected]>
2013-03-13x86: Use tick broadcast expired checkThomas Gleixner1-0/+12
Avoid going back into deep idle if the tick broadcast IPI is about to fire. Signed-off-by: Thomas Gleixner <[email protected]> Cc: John Stultz <[email protected]> Cc: Arjan van de Veen <[email protected]> Cc: [email protected] Link: http://lkml.kernel.org/r/[email protected]
2013-03-13arm: Use tick broadcast expired checkThomas Gleixner1-1/+10
Avoid going back into deep idle if the tick broadcast IPI is about to fire. Signed-off-by: Thomas Gleixner <[email protected]> Cc: LAK <[email protected]> Cc: John Stultz <[email protected]> Cc: Arjan van de Veen <[email protected]> Cc: Lorenzo Pieralisi <[email protected]> Tested-by: Santosh Shilimkar <[email protected]> Cc: Jason Liu <[email protected]> Link: http://lkml.kernel.org/r/[email protected]
2013-03-13tick: Provide a check for a forced broadcast pendingThomas Gleixner2-0/+18
On the CPU which gets woken along with the target CPU of the broadcast the following happens: deep_idle() <-- spurious wakeup broadcast_exit() set forced bit enable interrupts <-- Nothing happens disable interrupts broadcast_enter() <-- Here we observe the forced bit is set deep_idle() Now after that the target CPU of the broadcast runs the broadcast handler and finds the other CPU in both the broadcast and the forced mask, sends the IPI and stuff gets back to normal. So it's not actually harmful, just more evidence for the theory, that hardware designers have access to very special drug supplies. Now there is no point in going back to deep idle just to wake up again right away via an IPI. Provide a check which allows the idle code to avoid the deep idle transition. Signed-off-by: Thomas Gleixner <[email protected]> Cc: LAK <[email protected]> Cc: John Stultz <[email protected]> Cc: Arjan van de Veen <[email protected]> Cc: Lorenzo Pieralisi <[email protected]> Tested-by: Santosh Shilimkar <[email protected]> Cc: Jason Liu <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
2013-03-13tick: Handle broadcast wakeup of multiple cpusThomas Gleixner1-1/+58
Some brilliant hardware implementations wake multiple cores when the broadcast timer fires. This leads to the following interesting problem: CPU0 CPU1 wakeup from idle wakeup from idle leave broadcast mode leave broadcast mode restart per cpu timer restart per cpu timer go back to idle handle broadcast (empty mask) enter broadcast mode programm broadcast device enter broadcast mode programm broadcast device So what happens is that due to the forced reprogramming of the cpu local timer, we need to set a event in the future. Now if we manage to go back to idle before the timer fires, we switch off the timer and arm the broadcast device with an already expired time (covered by forced mode). So in the worst case we repeat the above ping pong forever. Unfortunately we have no information about what caused the wakeup, but we can check current time against the expiry time of the local cpu. If the local event is already in the past, we know that the broadcast timer is about to fire and send an IPI. So we mark ourself as an IPI target even if we left broadcast mode and avoid the reprogramming of the local cpu timer. This still leaves the possibility that a CPU which is not handling the broadcast interrupt is going to reach idle again before the IPI arrives. This can't be solved in the core code and will be handled in follow up patches. Reported-by: Jason Liu <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Cc: LAK <[email protected]> Cc: John Stultz <[email protected]> Cc: Arjan van de Veen <[email protected]> Cc: Lorenzo Pieralisi <[email protected]> Tested-by: Santosh Shilimkar <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
2013-03-13tick: Avoid programming the local cpu timer if broadcast pendingThomas Gleixner1-2/+26
If the local cpu timer stops in deep idle, we arm the broadcast device and get woken by an IPI. Now when we return from deep idle we reenable the local cpu timer unconditionally before handling the IPI. But that's a pointless exercise: the timer is already expired and the IPI is on the way. And it's an expensive exercise as we use the forced reprogramming mode so that we do not lose a timer event. This forced reprogramming will loop at least once in the retry. To avoid this reprogramming, we mark the cpu in a pending bit mask before we send the IPI. Now when the IPI target cpu wakes up, it will see the pending bit set and skip the reprogramming. The reprogramming of the cpu local timer will happen in the IPI handler which runs the cpu local timer interrupt function. Reported-by: Jason Liu <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Cc: LAK <[email protected]> Cc: John Stultz <[email protected]> Cc: Arjan van de Veen <[email protected]> Cc: Lorenzo Pieralisi <[email protected]> Tested-by: Santosh Shilimkar <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
2013-03-13Merge commit 'v3.9-rc2' into timers/coreThomas Gleixner312-1347/+4039
Fold in upstream fixes. Signed-off-by: Thomas Gleixner <[email protected]>
2013-03-11Merge branch 'perf-urgent-for-linus' of ↵Linus Torvalds4-14/+40
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull perf fixes from Ingo Molnar: "Misc minor fixes mostly related to tracing" * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: s390: Fix a header dependencies related build error tracing: update documentation of snapshot utility tracing: Do not return EINVAL in snapshot when not allocated tracing: Add help of snapshot feature when snapshot is empty ftrace: Update the kconfig for DYNAMIC_FTRACE
2013-03-11Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netLinus Torvalds84-696/+843
Pull networking fixes from David Miller: 1) Missing cancel of work items in mac80211 MLME, from Ben Greear. 2) Fix DMA mapping handling in iwlwifi by using coherent DMA for command headers, from Johannes Berg. 3) Decrease the amount of pressure on the page allocator by using order 1 pages less in iwlwifi, from Emmanuel Grumbach. 4) Fix mesh PS broadcast OOPS in mac80211, from Marco Porsch. 5) Don't forget to recalculate idle state in mac80211 monitor interface, from Felix Fietkau. 6) Fix varargs in netfilter conntrack handler, from Joe Perches. 7) Need to reset entire chip when command queue fills up in iwlwifi, from Emmanuel Grumbach. 8) The TX antenna value must be valid when calibrations are performed in iwlwifi, fix from Dor Shaish. 9) Don't generate netfilter audit log entries when audit is disabled, from Gao Feng. 10) Deal with DMA unit hang on e1000e during power state transitions, from Bruce Allan. 11) Remove BUILD_BUG_ON check from igb driver, from Alexander Duyck. 12) Fix lockdep warning on i2c handling of igb driver, from Carolyn Wyborny. 13) Fix several TTY handling issues in IRDA ircomm tty driver, from Peter Hurley. 14) Several QFQ packet scheduler fixes from Paolo Valente. 15) When VXLAN encapsulates on transmit, we have to reset the netfilter state. From Zang MingJie. 16) Fix jiffie check in net_rx_action() so that we really cap the processing at 2HZ. From Eric Dumazet. 17) Fix erroneous trigger of IP option space exhaustion, when routers are pre-specified and we are looking to see if we can insert a timestamp, we will have the space. From David Ward. 18) Fix various issues in benet driver wrt waiting for firmware to finish POST after resets or errors. From Gavin Shan and Sathya Perla. 19) Fix TX locking in SFC driver, from Ben Hutchings. 20) Like the VXLAN fix above, when we encap in a TUN device we have to reset the netfilter state. This should fix several strange crashes reported by Dave Jones and others. From Eric Dumazet. 21) Don't forget to clean up MAC address resources when shutting down a port in mlx4 driver, from Yan Burman. 22) Fix divide by zero in vmxnet3 driver, from Bhavesh Davda. 23) Fix device statistic regression in tg3 when the driver is using phylib, from Nithin Sujir. 24) Fix info leak in several netlink handlers, from Mathias Krause. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (79 commits) 6lowpan: Fix endianness issue in is_addr_link_local(). rrunner.c: fix possible memory leak in rr_init_one() dcbnl: fix various netlink info leaks rtnl: fix info leak on RTM_GETLINK request for VF devices bridge: fix mdb info leaks tg3: Update link_up flag for phylib devices ipv6: stop multicast forwarding to process interface scoped addresses bridging: fix rx_handlers return code netlabel: fix build problems when CONFIG_IPV6=n drivers/isdn: checkng length to be sure not memory overflow net/rds: zero last byte for strncpy bnx2x: Fix SFP+ misconfiguration in iSCSI boot scenario bnx2x: Fix intermittent long KR2 link up time macvlan: Set IFF_UNICAST_FLT flag to prevent unnecessary promisc mode. team: unsyc the devices addresses when port is removed bridge: add missing vid to br_mdb_get() Fix: sparse warning in inet_csk_prepare_forced_close afkey: fix a typo MAINTAINERS: Update qlcnic maintainers list netlabel: correctly list all the static label mappings ...
2013-03-11Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/umlLinus Torvalds11-41/+42
Pull UML fixes from Richard Weinberger: "This update brings various fixes. Nothing special... In my local queue I have some more fixes which will be sent later to you. 3.9 uncovered strange UML issues. :(" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml: um: Use tty_port in SIGWINCH handler um: Use tty_port_operations->destruct um: fix build failure due to mess-up of sig_info protorype um: add missing declaration of 'getrlimit()' and friends net : enable tx time stamping in the vde driver. hostfs: fix a not needed double check
2013-03-11Merge branch 'for-linus' of ↵Linus Torvalds8-40/+185
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input Pull input updates from Dmitry Torokhov: "Except for the largish change to the ALPS driver adding "Dolphin V1" support and Wacom getting a new signature of yet another device, the rest are straightforward driver fixes." * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: mms114 - Fix regulator enable and disable paths Input: ads7864 - check return value of regulator enable Input: tc3589x-keypad - fix keymap size Input: wacom - add support for 0x10d Input: ALPS - update documentation for recent touchpad driver mods Input: ALPS - add "Dolphin V1" touchpad support Input: ALPS - remove unused argument to alps_enter_command_mode() Input: cypress_ps2 - fix trackpadi found in Dell XPS12
2013-03-11s390: Fix a header dependencies related build errorLi Zefan1-0/+1
Commit 877c685607925238e302cd3aa38788dca6c1b226 ("perf: Remove include of cgroup.h from perf_event.h") caused this build failure if PERF_EVENTS is enabled: In file included from arch/s390/include/asm/perf_event.h:9:0, from include/linux/perf_event.h:24, from kernel/events/ring_buffer.c:12: arch/s390/include/asm/cpu_mf.h: In function 'qctri': arch/s390/include/asm/cpu_mf.h:61:12: error: 'EINVAL' undeclared (first use in this function) cpu_mf.h had an implicit errno.h dependency, which was added indirectly via cgroups.h but not anymore. Add it explicitly. Reported-by: Fengguang Wu <[email protected]> Tested-by: Fengguang Wu <[email protected]> Signed-off-by: Li Zefan <[email protected]> Cc: Martin Schwidefsky <[email protected]> Cc: Heiko Carstens <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]>
2013-03-11um: Use tty_port in SIGWINCH handlerRichard Weinberger5-18/+22
The tty below tty_port might get destroyed by the tty layer while we hold a reference to it. So we have to carry tty_port around... Signed-off-by: Richard Weinberger <[email protected]>
2013-03-11um: Use tty_port_operations->destructRichard Weinberger3-14/+14
As we setup the SIGWINCH handler in tty_port_operations->activate it makes sense to tear down it in ->destruct. Signed-off-by: Richard Weinberger <[email protected]>
2013-03-11um: fix build failure due to mess-up of sig_info protorypeSergei Trofimovich1-1/+1
arch/um/os-Linux/signal.c:18:8: error: conflicting types for 'sig_info' In file included from /home/slyfox/linux-2.6/arch/um/os-Linux/signal.c:12:0: arch/um/include/shared/as-layout.h:64:15: note: previous declaration of 'sig_info' was here Signed-off-by: Sergei Trofimovich <[email protected]> CC: Jeff Dike <[email protected]> CC: Richard Weinberger <[email protected]> CC: "Martin Pärtel" <[email protected]> CC: Al Viro <[email protected]> CC: [email protected] CC: [email protected] CC: [email protected] Signed-off-by: Richard Weinberger <[email protected]>
2013-03-11um: add missing declaration of 'getrlimit()' and friendsSergei Trofimovich1-0/+2
arch/um/os-Linux/start_up.c: In function 'check_coredump_limit': arch/um/os-Linux/start_up.c:338:16: error: storage size of 'lim' isn't known arch/um/os-Linux/start_up.c:339:2: error: implicit declaration of function 'getrlimit' [-Werror=implicit-function-declaration] Signed-off-by: Sergei Trofimovich <[email protected]> CC: Jeff Dike <[email protected]> CC: Richard Weinberger <[email protected]> CC: Al Viro <[email protected]> CC: [email protected] CC: [email protected] CC: [email protected] Signed-off-by: Richard Weinberger <[email protected]>
2013-03-11net : enable tx time stamping in the vde driver.Paul Chavent1-0/+2
This new version moves the skb_tx_timestamp in the main uml driver. This should avoid the need to call this function in each transport (vde, slirp, tuntap, ...). It also add support for ethtool get_ts_info. Signed-off-by: Paul Chavent <[email protected]> Acked-by: Richard Cochran <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2013-03-11hostfs: fix a not needed double checkMarco Stornelli1-8/+1
With the commit 3be2be0a32c18b0fd6d623cda63174a332ca0de1 we removed vmtruncate, but actaully there is no need to call inode_newsize_ok() because the checks are already done in inode_change_ok() at the begin of the function. Signed-off-by: Marco Stornelli <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2013-03-10Input: mms114 - Fix regulator enable and disable pathsMark Brown1-9/+25
When it uses regulators the mms114 driver checks to see if it managed to acquire regulators and ignores errors. This is not the intended usage and not great style in general. Since the driver already refuses to probe if it fails to allocate the regulators simply make the enable and disable calls unconditional and add appropriate error handling, including adding cleanup of the regulators if setup_reg() fails. Signed-off-by: Mark Brown <[email protected]> Acked-by: Joonyoung Shim <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-03-10Input: ads7864 - check return value of regulator enableMark Brown1-1/+6
At least print a warning if we can't power the device up. Signed-off-by: Mark Brown <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2013-03-10Input: tc3589x-keypad - fix keymap sizeRabin Vincent1-4/+4
The keymap size used by tc3589x is too low, leading to the driver overwriting other people's memory. Fix this by making the driver use the automatically allocated keymap provided by matrix_keypad_build_keymap() instead of allocating one on its own. Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>