Displaying 20 results from an estimated 651 matches for "smp_wmb".
2016 Jan 05
3
[PATCH v2 22/32] s390: define __smp_xxx
...wrote:
> > > This defines __smp_xxx barriers for s390,
> > > for use by virtualization.
> > >
> > > Some smp_xxx barriers are removed as they are
> > > defined correctly by asm-generic/barriers.h
> > >
> > > Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> > > unconditionally on this architecture.
> > >
> > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> > > Acked-by: Arnd Bergmann <arnd at arndb.de>
> > > ---
> > > arch/s390/include/asm/barri...
2016 Jan 05
3
[PATCH v2 22/32] s390: define __smp_xxx
...wrote:
> > > This defines __smp_xxx barriers for s390,
> > > for use by virtualization.
> > >
> > > Some smp_xxx barriers are removed as they are
> > > defined correctly by asm-generic/barriers.h
> > >
> > > Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> > > unconditionally on this architecture.
> > >
> > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> > > Acked-by: Arnd Bergmann <arnd at arndb.de>
> > > ---
> > > arch/s390/include/asm/barri...
2016 Jan 05
2
[PATCH v2 22/32] s390: define __smp_xxx
...390,
> > > > > for use by virtualization.
> > > > >
> > > > > Some smp_xxx barriers are removed as they are
> > > > > defined correctly by asm-generic/barriers.h
> > > > >
> > > > > Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> > > > > unconditionally on this architecture.
> > > > >
> > > > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> > > > > Acked-by: Arnd Bergmann <arnd at arndb.de>
> > > > &g...
2016 Jan 05
2
[PATCH v2 22/32] s390: define __smp_xxx
...390,
> > > > > for use by virtualization.
> > > > >
> > > > > Some smp_xxx barriers are removed as they are
> > > > > defined correctly by asm-generic/barriers.h
> > > > >
> > > > > Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> > > > > unconditionally on this architecture.
> > > > >
> > > > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> > > > > Acked-by: Arnd Bergmann <arnd at arndb.de>
> > > > &g...
2012 Feb 08
18
[PATCH 0 of 4] Prune outdated/impossible preprocessor symbols, and update VIOAPIC emulation
Patch 1 removes CONFIG_SMP
Patch 2 removes separate smp_{,r,w}mb()s as a result of patch 1
Patch 4 removes __ia64__ defines from the x86 arch tree
Patch 3 is related to patch 4 and changes the VIOAPIC to emulate
version 0x20 as a performance gain. It preceeds Patch 4 so as to be
more clear about the functional change.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
2016 Jan 05
0
[PATCH v2 22/32] s390: define __smp_xxx
...fines __smp_xxx barriers for s390,
> > > > for use by virtualization.
> > > >
> > > > Some smp_xxx barriers are removed as they are
> > > > defined correctly by asm-generic/barriers.h
> > > >
> > > > Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> > > > unconditionally on this architecture.
> > > >
> > > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> > > > Acked-by: Arnd Bergmann <arnd at arndb.de>
> > > > ---
> > > >...
2016 Jan 05
0
[PATCH v2 22/32] s390: define __smp_xxx
...> for use by virtualization.
> > > > > >
> > > > > > Some smp_xxx barriers are removed as they are
> > > > > > defined correctly by asm-generic/barriers.h
> > > > > >
> > > > > > Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> > > > > > unconditionally on this architecture.
> > > > > >
> > > > > > Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> > > > > > Acked-by: Arnd Bergmann <arnd at arndb.de>
&g...
2017 Feb 15
2
[PATCH v2 0/3] x86/vdso: Add Hyper-V TSC page clocksource support
...le now and no bugs were reported there should
be something.
Actually, we already have an implementation of TSC page update in KVM
(see arch/x86/kvm/hyperv.c, kvm_hv_setup_tsc_page()) and the update does
the following:
0) stash seq into seq_prev
1) seq = 0 making all reads from the page invalid
2) smp_wmb()
3) update tsc_scale, tsc_offset
4) smp_wmb()
5) set seq = seq_prev + 1
As far as I understand this helps with situations you described above as
guest will notice either invalid value of 0 or seq change. In case the
implementation in real Hyper-V is the same we're safe with compile
barriers o...
2017 Feb 15
2
[PATCH v2 0/3] x86/vdso: Add Hyper-V TSC page clocksource support
...le now and no bugs were reported there should
be something.
Actually, we already have an implementation of TSC page update in KVM
(see arch/x86/kvm/hyperv.c, kvm_hv_setup_tsc_page()) and the update does
the following:
0) stash seq into seq_prev
1) seq = 0 making all reads from the page invalid
2) smp_wmb()
3) update tsc_scale, tsc_offset
4) smp_wmb()
5) set seq = seq_prev + 1
As far as I understand this helps with situations you described above as
guest will notice either invalid value of 0 or seq change. In case the
implementation in real Hyper-V is the same we're safe with compile
barriers o...
2015 Apr 08
3
[PATCH] virtio_ring: Update weak barriers to use dma_wmb/rmb
This change makes it so that instead of using smp_wmb/rmb which varies
depending on the kernel configuration we can can use dma_wmb/rmb which for
most architectures should be equal to or slightly more strict than
smp_wmb/rmb.
The advantage to this is that these barriers are available to uniprocessor
builds as well so the performance should improve un...
2015 Apr 08
3
[PATCH] virtio_ring: Update weak barriers to use dma_wmb/rmb
This change makes it so that instead of using smp_wmb/rmb which varies
depending on the kernel configuration we can can use dma_wmb/rmb which for
most architectures should be equal to or slightly more strict than
smp_wmb/rmb.
The advantage to this is that these barriers are available to uniprocessor
builds as well so the performance should improve un...
2017 Feb 17
1
[PATCH v2 0/3] x86/vdso: Add Hyper-V TSC page clocksource support
...t;> Actually, we already have an implementation of TSC page update in KVM
>> (see arch/x86/kvm/hyperv.c, kvm_hv_setup_tsc_page()) and the update does
>> the following:
>>
>> 0) stash seq into seq_prev
>> 1) seq = 0 making all reads from the page invalid
>> 2) smp_wmb()
>> 3) update tsc_scale, tsc_offset
>> 4) smp_wmb()
>> 5) set seq = seq_prev + 1
>
> I hope they handle the case where seq_prev overflows and becomes 0 :)
>
>> As far as I understand this helps with situations you described above as
>> guest will notice eithe...
2017 Feb 17
1
[PATCH v2 0/3] x86/vdso: Add Hyper-V TSC page clocksource support
...t;> Actually, we already have an implementation of TSC page update in KVM
>> (see arch/x86/kvm/hyperv.c, kvm_hv_setup_tsc_page()) and the update does
>> the following:
>>
>> 0) stash seq into seq_prev
>> 1) seq = 0 making all reads from the page invalid
>> 2) smp_wmb()
>> 3) update tsc_scale, tsc_offset
>> 4) smp_wmb()
>> 5) set seq = seq_prev + 1
>
> I hope they handle the case where seq_prev overflows and becomes 0 :)
>
>> As far as I understand this helps with situations you described above as
>> guest will notice eithe...
2016 Jan 04
2
[PATCH v2 22/32] s390: define __smp_xxx
On Thu, Dec 31, 2015 at 09:08:38PM +0200, Michael S. Tsirkin wrote:
> This defines __smp_xxx barriers for s390,
> for use by virtualization.
>
> Some smp_xxx barriers are removed as they are
> defined correctly by asm-generic/barriers.h
>
> Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> unconditionally on this architecture.
>
> Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> Acked-by: Arnd Bergmann <arnd at arndb.de>
> ---
> arch/s390/include/asm/barrier.h | 15 +++++++++------
> 1 file changed, 9 insertions...
2016 Jan 04
2
[PATCH v2 22/32] s390: define __smp_xxx
On Thu, Dec 31, 2015 at 09:08:38PM +0200, Michael S. Tsirkin wrote:
> This defines __smp_xxx barriers for s390,
> for use by virtualization.
>
> Some smp_xxx barriers are removed as they are
> defined correctly by asm-generic/barriers.h
>
> Note: smp_mb, smp_rmb and smp_wmb are defined as full barriers
> unconditionally on this architecture.
>
> Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
> Acked-by: Arnd Bergmann <arnd at arndb.de>
> ---
> arch/s390/include/asm/barrier.h | 15 +++++++++------
> 1 file changed, 9 insertions...
2016 Jan 05
1
[PATCH v2 22/32] s390: define __smp_xxx
...ichael S. Tsirkin wrote:
>
> arch/s390/kernel/vdso.c: smp_mb();
>
> Looking at
> Author: Christian Borntraeger <borntraeger at de.ibm.com>
> Date: Fri Sep 11 16:23:06 2015 +0200
>
> s390/vdso: use correct memory barrier
>
> By definition smp_wmb only orders writes against writes. (Finish all
> previous writes, and do not start any future write). To protect the
> vdso init code against early reads on other CPUs, let's use a full
> smp_mb at the end of vdso init. As right now smp_wmb is implemented
> as fu...
2016 Jan 05
1
[PATCH v2 22/32] s390: define __smp_xxx
...ichael S. Tsirkin wrote:
>
> arch/s390/kernel/vdso.c: smp_mb();
>
> Looking at
> Author: Christian Borntraeger <borntraeger at de.ibm.com>
> Date: Fri Sep 11 16:23:06 2015 +0200
>
> s390/vdso: use correct memory barrier
>
> By definition smp_wmb only orders writes against writes. (Finish all
> previous writes, and do not start any future write). To protect the
> vdso init code against early reads on other CPUs, let's use a full
> smp_mb at the end of vdso init. As right now smp_wmb is implemented
> as fu...
2016 Jan 04
4
[PATCH 1/3] checkpatch.pl: add missing memory barriers
...ckpatch.pl
> index 2b3c228..0245bbe 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -5116,7 +5116,14 @@ sub process {
> ? }
> ? }
> ?# check for memory barriers without a comment.
> - if ($line =~ /\b(mb|rmb|wmb|read_barrier_depends|smp_mb|smp_rmb|smp_wmb|smp_read_barrier_depends)\(/) {
> +
> + my @barriers = ('mb', 'rmb', 'wmb', 'read_barrier_depends');
> + my @smp_barriers = ('smp_store_release', 'smp_load_acquire', 'smp_store_mb');
> +
> + @smp_barriers = (@smp_barriers, ma...
2016 Jan 04
4
[PATCH 1/3] checkpatch.pl: add missing memory barriers
...ckpatch.pl
> index 2b3c228..0245bbe 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -5116,7 +5116,14 @@ sub process {
> ? }
> ? }
> ?# check for memory barriers without a comment.
> - if ($line =~ /\b(mb|rmb|wmb|read_barrier_depends|smp_mb|smp_rmb|smp_wmb|smp_read_barrier_depends)\(/) {
> +
> + my @barriers = ('mb', 'rmb', 'wmb', 'read_barrier_depends');
> + my @smp_barriers = ('smp_store_release', 'smp_load_acquire', 'smp_store_mb');
> +
> + @smp_barriers = (@smp_barriers, ma...
2023 May 23
4
[PATCH 3/3] fork, vhost: Use CLONE_THREAD to fix freezer/ps regression
...this looks a bit confusing. Shouldn't we do
if (!node) {
schedule();
continue;
}
just to make the code a bit more clear? If node == NULL then
llist_reverse_order() and llist_for_each_entry_safe() will do nothing.
But this is minor.
/* make sure flag is seen after deletion */
smp_wmb();
llist_for_each_entry_safe(work, work_next, node, node) {
clear_bit(VHOST_WORK_QUEUED, &work->flags);
I am not sure about smp_wmb + clear_bit. Once we clear VHOST_WORK_QUEUED,
vhost_work_queue() can add this work again and change work->node->next.
That is why we use _safe, but...