public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] timer: Added usleep[_range] timer
@ 2010-07-28 19:33 Patrick Pannuto
  2010-07-28 19:33 ` [PATCH 1/4] " Patrick Pannuto
                   ` (4 more replies)
  0 siblings, 5 replies; 21+ messages in thread
From: Patrick Pannuto @ 2010-07-28 19:33 UTC (permalink / raw)
  To: linux-kernel; +Cc: ppannuto, apw, corbet

After writing both documentation and a checkpatch rule explaining
why the usleep API should never be used, it occurred to me that
perhaps such an API should never be added :) - at least not in its
previous form.

This iteration is similar, with the notable difference that now
usleep has a "built-in slack" of 200%. This is analogous to msleep,
which has a built-in slack of 0.4% (since it relies on legacy timers,
which have a built-in slack of 0.4%). 200% slack is significantly
greater than 0.4%, but the scale of usleep is also significantly
different than that of msleep, and I believe 200% to be a sane
default.

It is my opinion that this interface will most often mirror what
developers actually intend - indeed some people who have begun
trying to use the API raised this point -, however, I would like
some input as it is possibly confusing that the API will "double
your sleep" by default.

The usleep_range API is still included, since it provides an
interface to override the "default slack" of 200% by providing
an explicit range, or to allow callers to specify an even larger
slack if possible.


This patch series is NOT based off of tip (read: it will conflict
with the previous usleep patch in -mm) since it is slighly
different, and Andrew Morton lamented to loss of the detailed
changelog info in the previous iteration - it is included here.

This series also includes the "full set", that is
   1: Adds the usleep[_range] API
   2: Adds timers-howto documentation
   3: Checkpatch: prefer usleep over udelay
   4: Checkpatch: warn about unexpectedly long msleep's


*** Changes in v2
   * Add "default slack" to usleep
   * Fix missing usec->nsec for delta in do_usleep_range
   * Fix Documentation typos
   * Better checkpatch regex's


^ permalink raw reply	[flat|nested] 21+ messages in thread
* [PATCH v3 0/4] Add usleep_range
@ 2010-08-02 22:01 Patrick Pannuto
  2010-08-02 22:01 ` [PATCH 4/4] Checkpatch: warn about unexpectedly long msleep's Patrick Pannuto
  0 siblings, 1 reply; 21+ messages in thread
From: Patrick Pannuto @ 2010-08-02 22:01 UTC (permalink / raw)
  To: linux-kernel; +Cc: ppannuto, apw, corbet, arjan, linux-arm-msm

Changes from v2:

	* Remove usleep API
		It seemed the weak consensus that the best way to
		force callers to consider the cost / implications
		of the underlying hrtimers was to leave only the
		range API as an option. Given the dangers of an
		implicit slack coupled with the potential
		proliferation of interrupts with no slack, forcing
		callers to supply a range seems the best choice.

	* Documentation updated to reflect changes

	* Fix checkpatch warnings to point to the correct file

[PATCH v3 1/4] timer: Added usleep_range timer
[PATCH v3 2/4] Documentation: Add timers/timers-howto.txt
[PATCH v3 3/4] Checkpatch: prefer usleep_range over udelay
[PATCH v3 4/4] Checkpatch: warn about unexpectedly long msleep's

^ permalink raw reply	[flat|nested] 21+ messages in thread
* [PATCH 0/4 -tip] delay documentation and checkpatch additions
@ 2010-07-27 22:39 Patrick Pannuto
  2010-07-27 22:39 ` [PATCH 4/4] Checkpatch: warn about unexpectedly long msleep's Patrick Pannuto
  0 siblings, 1 reply; 21+ messages in thread
From: Patrick Pannuto @ 2010-07-27 22:39 UTC (permalink / raw)
  To: linux-kernel; +Cc: ppannuto

This patchset depends on:
commit 22b8f15c2f7130bb0386f548428df2ffd4e81903
Author: Patrick Pannuto <ppannuto@codeaurora.org>
Date:   Mon Jul 19 15:09:26 2010 -0700

    timer: Added usleep[_range] timer

on tip/master


The series first introduces some documentation explaining the various
linux delay mechanisms, and then adds some checkpatch rules to help
pick the most appropriate timer.


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2010-08-04  7:08 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-28 19:33 [PATCH v2 0/4] timer: Added usleep[_range] timer Patrick Pannuto
2010-07-28 19:33 ` [PATCH 1/4] " Patrick Pannuto
2010-07-28 20:23   ` Andrew Morton
2010-07-28 20:47     ` Patrick Pannuto
2010-07-28 20:58       ` Andrew Morton
2010-07-28 21:04         ` Arjan van de Ven
2010-07-28 21:11           ` Patrick Pannuto
2010-07-28 21:22           ` Andrew Morton
2010-07-28 21:25             ` Arjan van de Ven
2010-07-28 21:05         ` Patrick Pannuto
2010-07-28 21:23           ` Andrew Morton
2010-07-28 21:26             ` Arjan van de Ven
2010-07-28 19:33 ` [PATCH 2/4] Documentation: Add timers/timers-howto.txt Patrick Pannuto
2010-07-28 19:33 ` [PATCH 3/4] Checkpatch: prefer usleep over udelay Patrick Pannuto
2010-07-28 20:24   ` Andrew Morton
2010-07-28 19:33 ` [PATCH 4/4] Checkpatch: warn about unexpectedly long msleep's Patrick Pannuto
2010-07-28 20:24   ` Andrew Morton
2010-07-28 20:48     ` Patrick Pannuto
2010-08-03 19:12 ` [PATCH v2 0/4] timer: Added usleep[_range] timer Pavel Machek
  -- strict thread matches above, loose matches on Subject: below --
2010-08-02 22:01 [PATCH v3 0/4] Add usleep_range Patrick Pannuto
2010-08-02 22:01 ` [PATCH 4/4] Checkpatch: warn about unexpectedly long msleep's Patrick Pannuto
2010-07-27 22:39 [PATCH 0/4 -tip] delay documentation and checkpatch additions Patrick Pannuto
2010-07-27 22:39 ` [PATCH 4/4] Checkpatch: warn about unexpectedly long msleep's Patrick Pannuto

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox