On Tue, 27 Sep 2016 10:52:48 -0600
Ross Zwisler wrote:
> On Sun, Sep 25, 2016 at 07:18:37PM -0600, Stephen Bates wrote:
> > The documentation for dax is not up to date with respect to the struct
> > page support available in some of the device drivers that utilize
> > it.
> >
> > Signed-off-by:
On Fri, 30 Sep 2016, Waiman Long wrote:
> + WRITE_ONCE(state->owner, current);
> + preempt_disable();
> + for (;;) {
> + ret = futex_trylock(uaddr, vpid, &uval, true);
Did you actually read what I said? You CANNOT access userspace in a preempt
disabled region without disabl
On 9/27/2016 10:35 AM, Frederic Weisbecker wrote:
On 8/16/2016 5:19 PM, Chris Metcalf wrote:
Here is a respin of the task-isolation patch set.
Again, I have been getting email asking me when and where this patch
will be upstreamed so folks can start using it. I had been thinking
the obvious pa
The futex_pi_state structure will be overloaded in later patches to
store state information about non-PI futexes. So the structure name
itself is no longer a good description of its purpose. So its name
is changed to futex_state, a more generic name.
Some of the functions that process the futex st
Unlike other futexes, TP futexes do not accept the specification of
a timeout value. To align with the other futexes, timeout support is
now added. However, the timeout isn't as precise as the other futex
types due to the fact that timer expiration can't be detected when
the thread is waiting in t
This patch adds a new document file on how to use the TP futexes.
Signed-off-by: Waiman Long
---
Documentation/00-INDEX |2 +
Documentation/tp-futex.txt | 147
2 files changed, 149 insertions(+), 0 deletions(-)
create mode 100644 Documentati
As the futex_state structure will be overloaded in later patches
to be used by non-PI futexes, it is necessary to add a type field to
distinguish among different types of futexes.
Signed-off-by: Waiman Long
---
kernel/futex.c | 14 ++
1 files changed, 10 insertions(+), 4 deletions(
A new futex implementation called throughput-optimized (TP) futexes
is introduced. The goal of this new futex type is to maximize locking
throughput at the expense of fairness and deterministic latency. Its
throughput is higher than that of the wait-wake futexes especially
on systems with a large n
Two new helper functions (task_pi_list_add & task_pi_list_del)
are created to consolidate all the pure pi_state_list addition and
insertion codes. The set_owner argument in task_pi_list_add() will
be needed in a later patch.
Signed-off-by: Waiman Long
---
kernel/futex.c | 67 ++
Two new helper functions cmpxchg_futex_value() and get_futex_value()
are added to access and change the futex value without the hash
bucket lock. As a result, page fault is enabled and the page will
be faulted in if not present yet.
Signed-off-by: Waiman Long
---
kernel/futex.c | 15 +
As there are three different ways for a TP futex waiter in the kernel
to acquire the lock. It may be useful to pass this information out so
that user space has a better view of what is happening in the kernel.
With this change, different non-negative values will now be returned
depending on how the
The current TP futexes has no guarantee that the top waiter
(serialization mutex owner) can get the lock within a finite time.
As a result, lock starvation can happen.
A lock handoff mechanism is added to the TP futexes to prevent lock
starvation from happening. The idea is that the top waiter can
The TP futexes don't have code to handle the death of futex
owners. There are 2 different cases that need to be considered.
As top waiter gets a reference to the task structure of the futex
owner, the task structure will never go away even if the owner dies.
When the futex owner died while the top
v2->v3:
- Use the abbreviation TP for the new futexes instead of TO.
- Make a number of changes accordingly to review comments from
ThomasG, PeterZ and MikeG.
- Breaks the main futex patch into smaller pieces to make them easier
to review.
- Integrate the microbenchmark into the "p
This microbenchmark simulates how the use of different futex types
can affect the actual performanace of userspace mutex locks. The
usage is:
perf bench futex mutex
Three sets of simple mutex lock and unlock functions are implemented
using the wait-wake, PI and TP futexes respectively. T
Currently, the futex state objects can only be located indirectly as
hash bucket => futex_q => futex state
Actually it can be beneficial in some cases to locate the futex state
object directly from the hash bucket without the futex_q middleman.
Therefore, a new list head to link the futex
A new futex_setup_timer() helper function is added to consolidate all
the hrtimer_sleeper setup code.
Signed-off-by: Waiman Long
---
kernel/futex.c | 67 +++-
1 files changed, 37 insertions(+), 30 deletions(-)
diff --git a/kernel/futex.c b/k
On 09/26/2016 12:40 PM, Shuah Khan wrote:
> This patch series contains the last 2 patches to complete moving runnable
> code from Documentation to selftests, samples, and tools.
>
> The first patch moves blackfin gptimers-example to samples and removes
> CONFIG_BUILD_DOCSRC.
>
> The second one up
Off-commit comment: this is a line-by-line, title-by-title,
section-by-section, comment-by-comment conversion of the DocBook
80211.tmpl file to RST.
The 80211.tmpl file has also been deleted, and removed from the
DocBook/Makefile list -- I'm not sure this should be done.
I'm sure that reorganizat
Signed-off-by: Florian Margaine
---
.../actions-and-configuration.rst | 9 +
.../80211/cfg80211-subsystem/data-path-helpers.rst | 9 +
.../cfg80211-subsystem/device-registration.rst | 9 +
Documentation/80211/cfg80211-subsystem/index.rst | 14 +
.../regulatory-enfor
> If you continue discussing after that point,
I guess that such a condition is not needed.
> then you make a clear statement that it isn't an accident.
I hope that most of my software development activities are not "an accident".
Is the intent for any update suggestion (like the renaming of a
On Fri, 2016-09-30 at 11:49 +0200, Michal Hocko wrote:
> [CC Mike and Mel as they have seen some accounting oddities
> when doing performance testing. They can share details but
> essentially the system time just gets too high]
>
> For your reference the email thread started
> http://lkml.kernel
> I don't like out labels, but that's my opinion.
Thanks for this acknowledgement that you have still got a special opinion
about such an identifier.
> There is nothing in CodingStyle which says you can't do it.
Does the terse description there try to suggest also to choose
better identifiers
SF Markus Elfring writes:
>> When someone tells you that you are wasting their time,
>
> This information can be useful to some degree
Yes. If you continue discussing after that point, then you make a clear
statement that it isn't an accident. You are deliberately wasting their
time.
A lot of
On Fri, Sep 30, 2016 at 01:32:23PM +0200, SF Markus Elfring wrote:
> > I specifically did not say that "out:" or "error:" labels are bad names.
>
> Did you inform me once that you had also a special opinion about an identifier
> like "out"?
I don't like out labels, but that's my opinion. There i
> When someone tells you that you are wasting their time,
This information can be useful to some degree
> then that is not a subject for further discussion.
I got an other impression. I guess that there are constraints for such a
response
which can become interesting for further considerations
SF Markus Elfring writes:
>> go around bothering everyone with waste of time cleanup patches.
>
> I find it still debatable if the shown software development efforts
> are really "wasted".
When someone tells you that you are wasting their time, then that is not
a subject for further discussion.
> Again, I wrote the paragraph in CodingStyle.
This is obvious from the corresponding commit "add some more error
handling guidelines" (ea04036032edda6f771c1381d03832d2ed0f6c31
on 2014-12-02).
> I just said that it's a good idea to think about label names
I agree also to such a desire.
> inst
[CC Mike and Mel as they have seen some accounting oddities
when doing performance testing. They can share details but
essentially the system time just gets too high]
For your reference the email thread started
http://lkml.kernel.org/r/20160823143330.gl23...@dhcp22.suse.cz
I suspect this is mai
On Fri, Sep 30, 2016 at 08:37:36AM +, Levy, Amir (Jer) wrote:
> On Fri, Sep 30 2016, 09:40 AM, David Miller wrote:
> > From: Greg KH
> > Date: Fri, 30 Sep 2016 08:30:05 +0200
> >
> > > On Fri, Sep 30, 2016 at 01:55:55AM -0400, David Miller wrote:
> > >> From: Amir Levy
> > >> Date: Wed, 28 S
On Fri, Sep 30 2016, 09:40 AM, David Miller wrote:
> From: Greg KH
> Date: Fri, 30 Sep 2016 08:30:05 +0200
>
> > On Fri, Sep 30, 2016 at 01:55:55AM -0400, David Miller wrote:
> >> From: Amir Levy
> >> Date: Wed, 28 Sep 2016 17:44:22 +0300
> >>
> >> > This driver enables Thunderbolt Networking on
31 matches
Mail list logo