mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Re: [patch 134/149] x86, paravirt: Add a global synchronization point  for pvclock
@ 2010-07-14  0:02 H. Peter Anvin
  0 siblings, 0 replies; 63+ messages in thread
From: H. Peter Anvin @ 2010-07-14  0:02 UTC (permalink / raw)
  To: Jeremy Fitzhardinge
  Cc: Linus Torvalds, Peter Palfrader, Avi Kivity, Greg KH,
	linux-kernel, stable, stable-review, akpm, alan, Glauber Costa,
	Zachary Amsden, Marcelo Tosatti

I believe that's how it is actually implemented though, and I believe we'd have failures all over if that was not true.

"Jeremy Fitzhardinge" <jeremy@goop.org> wrote:

>On 07/13/2010 03:14 PM, H. Peter Anvin wrote:
>> Actually, I believe volatile operations (including asm volatile) are
>> strictly ordered *with respect to other volatile operations*. 
>
>The documentation makes no reference to that property; in fact it
>suggests it is outright not true:
>
>    Note that even a volatile `asm' instruction can be moved relative to
>    other
>    code, including across jump instructions.  For example, on many targets
>    there is a system register which can be set to control the rounding
>    mode of floating point operations.  You might try setting it with a
>    volatile `asm', like this PowerPC example:
>
>                asm volatile("mtfsf 255,%0" : : "f" (fpenv));
>                sum = x + y;
>
>    This will not work reliably, as the compiler may move the addition
>    back before the volatile `asm'.  To make it work you need to add an
>    artificial dependency to the `asm' referencing a variable in the
>    code you don't want moved, for example:
>
>             asm volatile ("mtfsf 255,%1" : "=X"(sum): "f"(fpenv));
>             sum = x + y;
>
>    Similarly, you can't expect a sequence of volatile `asm'
>    instructions to remain perfectly consecutive.
>    [...]
>    An `asm' instruction without any output operands will be treated
>    identically to a volatile `asm' instruction.
>
>>  As such I
>> would think we'd want to keep the "memory" clobber here, to make it
>> strictly ordered with regards to *all* memory operations.
>>   
>
>That would keep its overall effect consistent.
>
>    J

-- 
Sent from my mobile phone.  Please pardon any lack of formatting.

^ permalink raw reply	[flat|nested] 63+ messages in thread
* [patch 000/149] 2.6.32.16 stable review
@ 2010-07-01 17:51 Greg KH
  2010-07-01 17:32 ` [patch 134/149] x86, paravirt: Add a global synchronization point for pvclock Greg KH
  0 siblings, 1 reply; 63+ messages in thread
From: Greg KH @ 2010-07-01 17:51 UTC (permalink / raw)
  To: linux-kernel, stable; +Cc: stable-review, torvalds, akpm, alan

This is the start of the stable review cycle for the 2.6.32.16 release.
There are 149 patches in this series, all will be posted as a response
to this one.  If anyone has any issues with these being applied, please
let me know.  If anyone is a maintainer of the proper subsystem, and
wants to add a Signed-off-by: line to the patch, please respond with it.

Responses should be made by Sat, July 3, 17:00:00 UTC UTC.
Anything received after that time might be too late.

The whole patch series can be found in one patch at:
        kernel.org/pub/linux/kernel/v2.6/stable-review/patch-2.6.32.16-rc1.gz
and the diffstat can be found below.

thanks,

greg k-h

 Documentation/hwmon/ltc4245                 |    4 +-
 Documentation/networking/3c509.txt          |   12 +-
 Makefile                                    |    2 +-
 arch/arm/common/sa1111.c                    |    9 +-
 arch/arm/mm/copypage-feroceon.c             |    4 +-
 arch/arm/mm/copypage-v4wb.c                 |    4 +-
 arch/arm/mm/copypage-v4wt.c                 |    4 +-
 arch/arm/mm/copypage-xsc3.c                 |    4 +-
 arch/arm/mm/fault.c                         |    3 +
 arch/arm/mm/init.c                          |    6 +-
 arch/arm/vfp/vfphw.S                        |    2 +-
 arch/blackfin/include/asm/cache.h           |    2 +
 arch/frv/include/asm/cache.h                |    2 +
 arch/m68k/include/asm/cache.h               |    2 +
 arch/mn10300/include/asm/cache.h            |    2 +
 arch/parisc/math-emu/decode_exc.c           |    1 +
 arch/powerpc/kvm/powerpc.c                  |    3 +-
 arch/powerpc/lib/string.S                   |    4 +-
 arch/powerpc/oprofile/op_model_cell.c       |    2 +-
 arch/powerpc/platforms/pseries/smp.c        |    6 +
 arch/s390/kvm/kvm-s390.c                    |    4 +-
 arch/x86/include/asm/kvm_host.h             |    1 +
 arch/x86/include/asm/msr-index.h            |    5 +-
 arch/x86/kernel/amd_iommu.c                 |    2 +-
 arch/x86/kernel/cpu/perf_event.c            |    5 +-
 arch/x86/kernel/pvclock.c                   |   24 +++
 arch/x86/kernel/setup.c                     |   11 ++
 arch/x86/kernel/tboot.c                     |    1 +
 arch/x86/kvm/mmu.c                          |   10 +-
 arch/x86/kvm/vmx.c                          |   32 +++--
 arch/x86/kvm/x86.c                          |   55 ++++---
 arch/x86/oprofile/nmi_int.c                 |   10 +-
 arch/x86/xen/suspend.c                      |    4 +-
 arch/xtensa/include/asm/cache.h             |    1 +
 drivers/acpi/video_detect.c                 |    2 +-
 drivers/ata/libata-core.c                   |    7 +-
 drivers/ata/libata-sff.c                    |    2 +-
 drivers/ata/sata_nv.c                       |    5 +-
 drivers/ata/sata_via.c                      |   13 ++
 drivers/base/cpu.c                          |    2 +-
 drivers/char/ipmi/ipmi_si_intf.c            |   11 +-
 drivers/clocksource/sh_cmt.c                |   21 ++-
 drivers/firewire/core-card.c                |   24 +++-
 drivers/gpu/drm/drm_edid.c                  |    2 +-
 drivers/gpu/drm/i915/i915_gem.c             |   19 +++
 drivers/gpu/drm/i915/intel_lvds.c           |    4 +
 drivers/gpu/drm/radeon/radeon_atombios.c    |    2 +-
 drivers/gpu/drm/radeon/radeon_cp.c          |    1 +
 drivers/gpu/drm/radeon/radeon_drv.h         |    2 +
 drivers/gpu/drm/radeon/radeon_state.c       |    7 +
 drivers/hid/hid-core.c                      |    1 +
 drivers/hid/hid-gyration.c                  |    1 +
 drivers/hid/hid-ids.h                       |    1 +
 drivers/hwmon/ltc4245.c                     |   18 +--
 drivers/input/mouse/psmouse-base.c          |   14 ++-
 drivers/md/dm-exception-store.h             |    2 +-
 drivers/md/md.c                             |   29 ++++
 drivers/md/raid1.c                          |    9 +-
 drivers/md/raid10.c                         |    2 +-
 drivers/media/video/gspca/stv06xx/stv06xx.c |    2 -
 drivers/net/arcnet/com20020-pci.c           |    4 +-
 drivers/net/atl1e/atl1e_ethtool.c           |    2 +
 drivers/net/can/sja1000/sja1000.c           |   20 ++-
 drivers/net/can/sja1000/sja1000.h           |    1 +
 drivers/net/mlx4/icm.c                      |    3 +-
 drivers/net/pppol2tp.c                      |    3 +-
 drivers/net/tulip/Kconfig                   |    4 +
 drivers/net/tulip/dmfe.c                    |   21 +++
 drivers/net/tulip/tulip_core.c              |   32 +++-
 drivers/net/ucc_geth.c                      |   12 +-
 drivers/net/via-velocity.c                  |    8 +-
 drivers/net/virtio_net.c                    |    3 +-
 drivers/net/wireless/ath/ar9170/hw.h        |    1 +
 drivers/net/wireless/ath/ar9170/main.c      |    2 +-
 drivers/net/wireless/ath/ar9170/usb.c       |   10 ++
 drivers/net/wireless/ath/ath5k/base.c       |    4 +-
 drivers/net/wireless/ath/ath9k/hw.c         |    7 +-
 drivers/net/wireless/ath/ath9k/hw.h         |    1 +
 drivers/net/wireless/ath/ath9k/main.c       |    4 +-
 drivers/net/wireless/ath/ath9k/pci.c        |    1 +
 drivers/net/wireless/iwlwifi/iwl-5000.c     |   23 +++-
 drivers/net/wireless/iwlwifi/iwl-agn-rs.c   |   24 +++-
 drivers/net/wireless/iwlwifi/iwl-agn.c      |   74 +++++++--
 drivers/net/wireless/iwlwifi/iwl-dev.h      |    3 +-
 drivers/net/wireless/iwlwifi/iwl-tx.c       |   18 ++-
 drivers/net/wireless/p54/p54usb.c           |    1 +
 drivers/net/wireless/rtl818x/rtl8180_dev.c  |    1 +
 drivers/net/wireless/wl12xx/wl1251_sdio.c   |    1 +
 drivers/oprofile/cpu_buffer.c               |   63 ++------
 drivers/pci/quirks.c                        |   14 ++-
 drivers/rtc/rtc-cmos.c                      |    5 +-
 drivers/rtc/rtc-s3c.c                       |    5 +-
 drivers/scsi/qla2xxx/qla_isr.c              |   28 ++--
 drivers/staging/comedi/drivers/ni_mio_cs.c  |    2 +-
 drivers/staging/rtl8192su/r8192U_core.c     |    1 +
 drivers/staging/vt6655/device_main.c        |    2 +
 drivers/usb/class/cdc-acm.c                 |    6 +-
 drivers/usb/gadget/fsl_udc_core.c           |    2 +-
 drivers/usb/host/ehci-hub.c                 |   17 ++
 drivers/usb/host/xhci-hcd.c                 |   54 ++++++-
 drivers/usb/host/xhci-ring.c                |   37 ++++-
 drivers/usb/serial/cp210x.c                 |   11 ++
 drivers/usb/serial/ftdi_sio.c               |    4 +
 drivers/usb/serial/ir-usb.c                 |    2 +
 drivers/usb/serial/kl5kusb105.c             |    1 +
 drivers/usb/serial/kobil_sct.c              |    3 +-
 drivers/usb/serial/mos7840.c                |    1 -
 drivers/usb/serial/option.c                 |  226 +++++++++++++++++++++++++++
 drivers/usb/serial/visor.c                  |    1 +
 drivers/usb/storage/unusual_devs.h          |   15 ++
 drivers/xen/xenbus/xenbus_xs.c              |    2 +-
 fs/btrfs/acl.c                              |    3 +
 fs/cifs/cifsproto.h                         |    6 +-
 fs/cifs/dir.c                               |   20 ++-
 fs/cifs/file.c                              |   11 +-
 fs/exofs/dir.c                              |    2 +-
 fs/ext4/move_extent.c                       |    3 +
 fs/ext4/resize.c                            |    3 +-
 fs/fs-writeback.c                           |   14 ++-
 fs/gfs2/file.c                              |    7 +
 fs/jbd/journal.c                            |    2 +-
 fs/jbd2/journal.c                           |    3 +-
 fs/libfs.c                                  |    3 +-
 fs/namespace.c                              |    9 +-
 fs/nfsd/nfssvc.c                            |    2 +-
 include/linux/fs.h                          |    4 +-
 include/linux/pci_ids.h                     |    1 +
 include/linux/swap.h                        |   10 --
 include/linux/tboot.h                       |    1 +
 include/net/sctp/structs.h                  |    1 +
 kernel/compat.c                             |   25 ++--
 kernel/mutex.c                              |    7 +
 kernel/perf_event.c                         |   40 +++--
 kernel/posix-timers.c                       |   11 +-
 kernel/signal.c                             |    6 +-
 mm/filemap.c                                |   10 +-
 mm/hugetlb.c                                |    2 +-
 net/mac80211/Kconfig                        |    9 +
 net/mac80211/rx.c                           |    3 +-
 net/mac80211/tx.c                           |    5 +-
 net/sctp/sm_make_chunk.c                    |   62 +++++++-
 net/tipc/bearer.c                           |   37 +----
 net/tipc/bearer.h                           |    2 +-
 net/tipc/net.c                              |   25 +---
 net/wireless/core.h                         |    2 +
 net/wireless/nl80211.c                      |   37 +----
 net/wireless/util.c                         |   33 ++++
 net/wireless/wext-compat.c                  |    5 +-
 security/keys/keyring.c                     |   18 +-
 security/keys/process_keys.c                |    6 +-
 sound/pci/hda/hda_intel.c                   |   11 +-
 sound/pci/hda/patch_realtek.c               |    1 +
 sound/pci/hda/patch_sigmatel.c              |    2 +-
 sound/soc/codecs/wm8350.c                   |    4 +-
 sound/soc/codecs/wm8400.c                   |   18 +-
 sound/soc/codecs/wm8990.c                   |   18 +-
 156 files changed, 1251 insertions(+), 489 deletions(-)

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

end of thread, other threads:[~2010-07-27 17:53 UTC | newest]

Thread overview: 63+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-14  0:02 [patch 134/149] x86, paravirt: Add a global synchronization point for pvclock H. Peter Anvin
  -- strict thread matches above, loose matches on Subject: below --
2010-07-01 17:51 [patch 000/149] 2.6.32.16 stable review Greg KH
2010-07-01 17:32 ` [patch 134/149] x86, paravirt: Add a global synchronization point for pvclock Greg KH
2010-07-07 12:47   ` Peter Palfrader
2010-07-07 13:51     ` Glauber Costa
2010-07-07 14:33       ` Peter Palfrader
2010-07-07 15:15         ` Gleb Natapov
2010-07-07 20:05           ` Peter Palfrader
2010-07-08  5:31             ` Gleb Natapov
2010-07-08  8:51               ` Peter Palfrader
2010-07-08 11:03                 ` Gleb Natapov
2010-07-07 18:15         ` Glauber Costa
2010-07-07 20:11           ` Zachary Amsden
2010-07-07 21:08             ` Glauber Costa
2010-07-08  9:41     ` Avi Kivity
2010-07-13 10:23       ` Peter Palfrader
2010-07-13 13:23         ` Avi Kivity
2010-07-13 14:19           ` Peter Palfrader
2010-07-13 15:57             ` Avi Kivity
2010-07-13 16:22               ` Peter Palfrader
2010-07-13 16:34                 ` Avi Kivity
2010-07-13 16:40                   ` Avi Kivity
2010-07-13 16:45                     ` Avi Kivity
2010-07-13 17:25                       ` Peter Palfrader
2010-07-13 17:50                         ` Linus Torvalds
2010-07-13 17:59                           ` Linus Torvalds
2010-07-13 18:21                             ` Jeremy Fitzhardinge
2010-07-13 22:14                               ` H. Peter Anvin
2010-07-13 23:49                                 ` Jeremy Fitzhardinge
2010-07-14  0:15                                   ` Linus Torvalds
2010-07-14 17:19                                     ` Jeremy Fitzhardinge
2010-07-14 17:30                                       ` H. Peter Anvin
2010-07-14 17:34                                         ` Jeremy Fitzhardinge
2010-07-14 17:45                                           ` H. Peter Anvin
2010-07-14 17:57                                             ` Jeremy Fitzhardinge
2010-07-14 18:08                                               ` H. Peter Anvin
2010-07-14 18:15                                                 ` Jeremy Fitzhardinge
2010-07-14 18:19                                                   ` H. Peter Anvin
2010-07-14 20:58                                                     ` Jeremy Fitzhardinge
2010-07-14 18:23                                                   ` Linus Torvalds
2010-07-14 18:18                                                 ` H.J. Lu
2010-07-14 19:00                                                   ` H. Peter Anvin
2010-07-14 19:32                                                     ` H.J. Lu
2010-07-14 19:36                                                       ` H. Peter Anvin
2010-07-14 19:40                                                         ` H.J. Lu
2010-07-14 21:11                                                           ` Jeremy Fitzhardinge
2010-07-14 19:58                                                             ` H. Peter Anvin
2010-07-14 20:33                                                             ` H. Peter Anvin
2010-07-14 20:16                                               ` Avi Kivity
2010-07-14 20:40                                                 ` Jeremy Fitzhardinge
2010-07-14 20:45                                                   ` Zachary Amsden
2010-07-14 20:54                                                     ` Zachary Amsden
2010-07-14 21:11                                                     ` Jeremy Fitzhardinge
2010-07-16  4:48                                                     ` H. Peter Anvin
2010-07-14 20:50                                                   ` H. Peter Anvin
2010-07-14 21:11                                                     ` Jeremy Fitzhardinge
2010-07-13 18:23                             ` Peter Palfrader
2010-07-13 16:53                   ` Peter Palfrader
2010-07-13 16:34               ` Linus Torvalds
2010-07-13 18:04                 ` Avi Kivity
2010-07-13 18:15                   ` Linus Torvalds
2010-07-27 17:46                     ` Jeremy Fitzhardinge
2010-07-27 17:52                       ` H. Peter Anvin
2010-07-13 18:25                   ` Peter Palfrader

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

all inboxes | Powered by JetHome®