Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1737294
| From | Boqun Feng <boqun.feng@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command |
| Date | 2017-09-22 11:00 +0200 |
| Message-ID | <usrYu-3Z9-19@gated-at.bofh.it> (permalink) |
| References | <urz21-2JM-1@gated-at.bofh.it> <usmP7-13n-1@gated-at.bofh.it> <usrvs-3Q3-11@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
[Multipart message — attachments visible in raw view] - view raw
On Fri, Sep 22, 2017 at 10:24:41AM +0200, Peter Zijlstra wrote: > On Fri, Sep 22, 2017 at 11:22:06AM +0800, Boqun Feng wrote: > > > The idea is in membarrier_private_expedited(), we go through all ->curr > > on each CPU and > > > > 1) If it's a userspace task and its ->mm is matched, we send an ipi > > > > 2) If it's a kernel task, we skip > > > > (Because there will be a smp_mb() implied by mmdrop(), when it > > switchs to userspace task). > > > > 3) If it's a userspace task and its ->mm is not matched, we take > > the corresponding rq->lock and check rq->curr again, if its ->mm > > matched, we send an ipi, otherwise we do nothing. > > > > (Because if we observe rq->curr is not matched with rq->lock > > held, when a task having matched ->mm schedules in, the rq->lock > > pairing along with the smp_mb__after_spinlock() will guarantee > > it observes all memory ops before sys_membarrir()). > > 3) is an insta DoS. OK, fair enough. Regards, Boqun
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[RFC PATCH v3 1/2] membarrier: Provide register expedited private command Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2017-09-20 00:20 +0200
[RFC PATCH 2/2] membarrier: selftest: Test private expedited cmd Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2017-09-20 00:20 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Boqun Feng <boqun.feng@gmail.com> - 2017-09-22 05:30 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Boqun Feng <boqun.feng@gmail.com> - 2017-09-22 05:40 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2017-09-22 07:30 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Peter Zijlstra <peterz@infradead.org> - 2017-09-22 10:30 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Boqun Feng <boqun.feng@gmail.com> - 2017-09-22 11:00 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Boqun Feng <boqun.feng@gmail.com> - 2017-09-22 11:10 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2017-09-22 17:10 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Boqun Feng <boqun.feng@gmail.com> - 2017-09-24 15:40 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2017-09-24 16:30 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Boqun Feng <boqun.feng@gmail.com> - 2017-09-25 14:20 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Peter Zijlstra <peterz@infradead.org> - 2017-09-25 14:30 +0200
Re: [RFC PATCH v3 1/2] membarrier: Provide register expedited private command Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2017-09-25 14:50 +0200
csiph-web