You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
1
(3) |
2
|
3
(5) |
4
(9) |
5
(4) |
6
|
|
7
(1) |
8
(8) |
9
(8) |
10
(12) |
11
(12) |
12
(10) |
13
(4) |
|
14
(8) |
15
(9) |
16
(16) |
17
(12) |
18
(5) |
19
(5) |
20
(5) |
|
21
|
22
(13) |
23
(5) |
24
(13) |
25
(1) |
26
(3) |
27
(3) |
|
28
|
29
(1) |
30
(3) |
31
(9) |
|
|
|
|
From: <sv...@va...> - 2017-05-10 23:14:39
|
Author: iraisr
Date: Thu May 11 00:14:31 2017
New Revision: 16358
Log:
Add Linux specific ioctl wrapper for CDROMREADMODE1
Fixes BZ#360429
Original patch by: Vasantha Ganesh K <vas...@tu...>
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-linux.c
trunk/include/vki/vki-linux.h
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Thu May 11 00:14:31 2017
@@ -111,6 +111,7 @@
barrier implementation
358697 valgrind.h: Some code remains even when defining NVALGRIND
359202 Add musl libc configure/compile
+360429 unhandled ioctl 0x530d with no size/direction hints (CDROMREADMODE1)
367942 Segfault vgPlain_do_sys_sigaction (m_signals.c:1138)
368863 WARNING: unhandled arm64-linux syscall: 100 (get_robust_list)
368865 WARNING: unhandled arm64-linux syscall: 272 (kcmp)
Modified: trunk/coregrind/m_syswrap/syswrap-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-linux.c Thu May 11 00:14:31 2017
@@ -6943,8 +6943,13 @@
PRE_MEM_WRITE( "ioctl(CDROMSUBCHNL)", ARG3,
sizeof(struct vki_cdrom_subchnl));
break;
- case VKI_CDROMREADMODE2:
- PRE_MEM_READ( "ioctl(CDROMREADMODE2)", ARG3, VKI_CD_FRAMESIZE_RAW0 );
+ case VKI_CDROMREADMODE1: /*0x530d*/
+ PRE_MEM_READ("ioctl(CDROMREADMODE1)", ARG3, VKI_CD_FRAMESIZE_RAW1);
+ PRE_MEM_WRITE("ioctl(CDROMREADMODE1)", ARG3, VKI_CD_FRAMESIZE_RAW1);
+ break;
+ case VKI_CDROMREADMODE2: /*0x530c*/
+ PRE_MEM_READ("ioctl(CDROMREADMODE2)", ARG3, VKI_CD_FRAMESIZE_RAW0);
+ PRE_MEM_WRITE("ioctl(CDROMREADMODE2)", ARG3, VKI_CD_FRAMESIZE_RAW0);
break;
case VKI_CDROMREADTOCHDR:
PRE_MEM_WRITE( "ioctl(CDROMREADTOCHDR)", ARG3,
@@ -9691,6 +9696,12 @@
case VKI_CDROMVOLREAD:
POST_MEM_WRITE(ARG3, sizeof(struct vki_cdrom_volctrl));
break;
+ case VKI_CDROMREADMODE1:
+ POST_MEM_WRITE(ARG3, VKI_CD_FRAMESIZE_RAW1);
+ break;
+ case VKI_CDROMREADMODE2:
+ POST_MEM_WRITE(ARG3, VKI_CD_FRAMESIZE_RAW0);
+ break;
case VKI_CDROMREADRAW:
POST_MEM_WRITE(ARG3, VKI_CD_FRAMESIZE_RAW);
break;
Modified: trunk/include/vki/vki-linux.h
==============================================================================
--- trunk/include/vki/vki-linux.h (original)
+++ trunk/include/vki/vki-linux.h Thu May 11 00:14:31 2017
@@ -1883,6 +1883,8 @@
(struct cdrom_subchnl) */
#define VKI_CDROMREADMODE2 0x530c /* Read CDROM mode 2 data (2336 Bytes)
(struct cdrom_read) */
+#define VKI_CDROMREADMODE1 0x530d /* Read CDROM mode 1 data (2048 Bytes)
+ (struct cdrom_read) */
#define VKI_CDROMREADAUDIO 0x530e /* (struct cdrom_read_audio) */
#define VKI_CDROMMULTISESSION 0x5310 /* Obtain the start-of-last-session
address of multi session disks
@@ -2009,6 +2011,7 @@
#define VKI_CD_HEAD_SIZE 4 /* header (address) bytes per raw data frame */
#define VKI_CD_FRAMESIZE_RAW 2352 /* bytes per frame, "raw" mode */
#define VKI_CD_FRAMESIZE_RAW0 (VKI_CD_FRAMESIZE_RAW-VKI_CD_SYNC_SIZE-VKI_CD_HEAD_SIZE) /*2336*/
+#define VKI_CD_FRAMESIZE_RAW1 2048 /* bytes per frame, mode 1*/
//----------------------------------------------------------------------
// From linux-2.6.8.1/include/linux/soundcard.h
|
|
From: <sv...@va...> - 2017-05-10 18:09:43
|
Author: iraisr
Date: Wed May 10 19:09:36 2017
New Revision: 16357
Log:
Update list of ignored files in drd/tests.
Follow up to r16343.
Modified:
trunk/drd/tests/ (props changed)
|
|
From: <sv...@va...> - 2017-05-10 18:07:02
|
Author: iraisr
Date: Wed May 10 19:06:56 2017
New Revision: 16356
Log:
Updated 3_12_BUGSTATUS.txt.
Modified:
trunk/docs/internals/3_12_BUGSTATUS.txt
Modified: trunk/docs/internals/3_12_BUGSTATUS.txt
==============================================================================
--- trunk/docs/internals/3_12_BUGSTATUS.txt (original)
+++ trunk/docs/internals/3_12_BUGSTATUS.txt Wed May 10 19:06:56 2017
@@ -188,8 +188,6 @@
372861 Test pselect_alarm for Bug 359871 seg faults on RHEL 4
[has a suggested solution]
-377891 Update Xen 4.6 domctl wrappers
-
378892 Unhandled amd64-linux syscall: 324
=== Syscalls/ioctls on OSX =============================================
@@ -580,9 +578,6 @@
[Ivosh will fix it as it is annoying]
**
-377891 Update Xen 4.6 domctl wrappers
-
-**
n-i-bz major perf problems w/ stack registration + stack recycling
Should be fixed. Try again with ./mach gtest
|
|
From: <sv...@va...> - 2017-05-10 18:04:24
|
Author: iraisr
Date: Wed May 10 19:04:17 2017
New Revision: 16355
Log:
Implement additional Xen hypercalls
Fixes BZ#373086
Patch by: Mihai DONȚU <mih...@gm...>
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-xen.c
trunk/include/vki/vki-xen-domctl.h
trunk/include/vki/vki-xen-x86.h
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed May 10 19:04:17 2017
@@ -136,6 +136,7 @@
372794 LibVEX (arm32 front end): 'Assertion szBlg2 <= 3' failed
373046 Stacks registered by core are never deregistered
373069 memcheck/tests/leak_cpp_interior fails with GCC 5.1+
+373086 Implement additional Xen hypercalls
373192 Calling posix_spawn in glibc 2.24 completely broken
373488 Support for fanotify API on ARM64 architecture
== 368864 WARNING: unhandled arm64-linux syscall: 262 (fanotify_init)
Modified: trunk/coregrind/m_syswrap/syswrap-xen.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-xen.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-xen.c Wed May 10 19:04:17 2017
@@ -729,6 +729,7 @@
case 0x00000009:
case 0x0000000a:
case 0x0000000b:
+ case 0x0000000c:
break;
default:
bad_intf_version(tid, layout, arrghs, status, flags,
@@ -790,6 +791,12 @@
(Addr)domctl->u.hvmcontext_partial.buffer.p,
VKI_HVM_SAVE_LENGTH(CPU));
break;
+ case VKI_HVM_SAVE_CODE(MTRR):
+ if ( domctl->u.hvmcontext_partial.buffer.p )
+ PRE_MEM_WRITE("XEN_DOMCTL_gethvmcontext_partial *buffer",
+ (Addr)domctl->u.hvmcontext_partial.buffer.p,
+ VKI_HVM_SAVE_LENGTH(MTRR));
+ break;
default:
bad_subop(tid, layout, arrghs, status, flags,
"__HYPERVISOR_domctl_gethvmcontext_partial type",
@@ -1273,7 +1280,7 @@
case 0x000000b:
if (domctl->u.monitor_op_0000000b.op == VKI_XEN_DOMCTL_MONITOR_OP_ENABLE ||
domctl->u.monitor_op_0000000b.op == VKI_XEN_DOMCTL_MONITOR_OP_ENABLE) {
- switch(domctl->u.monitor_op_0000000b.event) {
+ switch (domctl->u.monitor_op_0000000b.event) {
case VKI_XEN_DOMCTL_MONITOR_EVENT_WRITE_CTRLREG:
__PRE_XEN_DOMCTL_READ(monitor_op, monitor_op_0000000b, u.mov_to_cr);
break;
@@ -1283,6 +1290,8 @@
case VKI_XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST:
__PRE_XEN_DOMCTL_READ(monitor_op, monitor_op_0000000b, u.guest_request);
break;
+ case VKI_XEN_DOMCTL_MONITOR_OP_GET_CAPABILITIES:
+ break;
}
}
Modified: trunk/include/vki/vki-xen-domctl.h
==============================================================================
--- trunk/include/vki/vki-xen-domctl.h (original)
+++ trunk/include/vki/vki-xen-domctl.h Wed May 10 19:04:17 2017
@@ -37,6 +37,7 @@
* - 0x00000009: Xen 4.3 & 4.4
* - 0x0000000a: Xen 4.5
* - 0x0000000b: Xen 4.6
+ * - 0x0000000c: Xen 4.7
*
* When adding a new subop be sure to include the variants used by all
* of the above, both here and in syswrap-xen.c
@@ -553,6 +554,28 @@
};
+struct vki_xen_domctl_monitor_op {
+ vki_uint32_t op;
+#define VKI_XEN_DOMCTL_MONITOR_OP_ENABLE 0
+#define VKI_XEN_DOMCTL_MONITOR_OP_DISABLE 1
+#define VKI_XEN_DOMCTL_MONITOR_OP_GET_CAPABILITIES 2
+#define VKI_XEN_DOMCTL_MONITOR_OP_EMULATE_EACH_REP 3
+ vki_uint32_t event;
+ union {
+ struct {
+ vki_uint8_t index;
+ vki_uint8_t sync;
+ vki_uint8_t onchangeonly;
+ } mov_to_cr;
+ struct {
+ vki_uint8_t extended_capture;
+ } mov_to_msr;
+ struct {
+ vki_uint8_t sync;
+ } guest_request;
+ } u;
+};
+
struct vki_xen_domctl {
vki_uint32_t cmd;
vki_uint32_t interface_version; /* XEN_DOMCTL_INTERFACE_VERSION */
Modified: trunk/include/vki/vki-xen-x86.h
==============================================================================
--- trunk/include/vki/vki-xen-x86.h (original)
+++ trunk/include/vki/vki-xen-x86.h Wed May 10 19:04:17 2017
@@ -270,6 +270,19 @@
VKI_DECLARE_HVM_SAVE_TYPE(CPU, 2, struct vki_hvm_hw_cpu);
+struct vki_hvm_hw_mtrr {
+#define VKI_MTRR_VCNT 8
+#define VKI_NUM_FIXED_MSR 11
+ vki_uint64_t msr_pat_cr;
+ /* mtrr physbase & physmask msr pair*/
+ vki_uint64_t msr_mtrr_var[VKI_MTRR_VCNT*2];
+ vki_uint64_t msr_mtrr_fixed[VKI_NUM_FIXED_MSR];
+ vki_uint64_t msr_mtrr_cap;
+ vki_uint64_t msr_mtrr_def_type;
+};
+
+VKI_DECLARE_HVM_SAVE_TYPE(MTRR, 14, struct vki_hvm_hw_mtrr);
+
#endif // __VKI_XEN_H
/*--------------------------------------------------------------------*/
|
|
From: <sv...@va...> - 2017-05-10 17:37:43
|
Author: iraisr
Date: Wed May 10 18:37:35 2017
New Revision: 16354
Log:
Update Xen 4.6 domctl wrappers
Fixes BZ#377891
Patch by: Antony Saba <aw...@gm...>
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-xen.c
trunk/include/vki/vki-xen-domctl.h
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed May 10 18:37:35 2017
@@ -168,6 +168,7 @@
and FUTEX_WAKE_BITSET, check only 4 args for FUTEX_WAKE_BITSET,
and 2 args for FUTEX_TRYLOCK_PI
377717 Fix massive space leak when reading compressed debuginfo sections
+377891 Update Xen 4.6 domctl wrappers
377930 fcntl syscall wrapper is missing flock structure check
378524 libvexmultiarch_test regression on s390x and ppc64
378535 Valgrind reports INTERNAL ERROR in execve syscall wrapper
Modified: trunk/coregrind/m_syswrap/syswrap-xen.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-xen.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-xen.c Wed May 10 18:37:35 2017
@@ -728,6 +728,7 @@
case 0x00000008:
case 0x00000009:
case 0x0000000a:
+ case 0x0000000b:
break;
default:
bad_intf_version(tid, layout, arrghs, status, flags,
@@ -806,20 +807,114 @@
break;
case VKI_XEN_DOMCTL_test_assign_device:
- __PRE_XEN_DOMCTL_READ(test_assign_device, assign_device, machine_sbdf);
+ switch (domctl->interface_version) {
+ case 0x00000007: /* pre-4.6 */
+ case 0x00000008:
+ case 0x00000009:
+ case 0x0000000a:
+ __PRE_XEN_DOMCTL_READ(test_assign_device, assign_device_00000007, machine_sbdf);
+ break;
+ case 0x0000000b:
+ __PRE_XEN_DOMCTL_READ(test_assign_device, assign_device_0000000b, dev);
+ __PRE_XEN_DOMCTL_READ(test_assign_device, assign_device_0000000b, flag);
+ switch (domctl->u.assign_device_0000000b.dev) {
+ case VKI_XEN_DOMCTL_DEV_PCI:
+ __PRE_XEN_DOMCTL_READ(test_assign_device, assign_device_0000000b, u.pci);
+ break;
+ case VKI_XEN_DOMCTL_DEV_DT:
+ __PRE_XEN_DOMCTL_READ(test_assign_device, assign_device_0000000b, u.dt);
+ PRE_MEM_READ("XEN_DOMTCL_test_assign_device.dt",
+ (Addr)domctl->u.assign_device_0000000b.u.dt.path.p,
+ domctl->u.assign_device_0000000b.u.dt.size);
+ break;
+ default:
+ bad_subop(tid, layout, arrghs, status, flags,
+ "__HYPERVISOR_domctl_test_assign_device dev",
+ domctl->u.assign_device_0000000b.dev);
+ break;
+ }
+ break;
+ }
break;
case VKI_XEN_DOMCTL_assign_device:
- __PRE_XEN_DOMCTL_READ(assign_device, assign_device, machine_sbdf);
+ switch (domctl->interface_version) {
+ case 0x00000007: /* pre-4.6 */
+ case 0x00000008:
+ case 0x00000009:
+ case 0x0000000a:
+ __PRE_XEN_DOMCTL_READ(assign_device, assign_device_00000007, machine_sbdf);
+ break;
+ case 0x0000000b:
+ __PRE_XEN_DOMCTL_READ(assign_device, assign_device_0000000b, dev);
+ __PRE_XEN_DOMCTL_READ(assign_device, assign_device_0000000b, flag);
+ switch (domctl->u.assign_device_0000000b.dev) {
+ case VKI_XEN_DOMCTL_DEV_PCI:
+ __PRE_XEN_DOMCTL_READ(assign_device, assign_device_0000000b, u.pci);
+ break;
+ case VKI_XEN_DOMCTL_DEV_DT:
+ __PRE_XEN_DOMCTL_READ(assign_device, assign_device_0000000b, u.dt);
+ PRE_MEM_READ("XEN_DOMTCL_assign_device.dt",
+ (Addr)domctl->u.assign_device_0000000b.u.dt.path.p,
+ domctl->u.assign_device_0000000b.u.dt.size);
+ break;
+ default:
+ bad_subop(tid, layout, arrghs, status, flags,
+ "__HYPERVISOR_domctl_assign_device dev",
+ domctl->u.assign_device_0000000b.dev);
+ break;
+ }
+ break;
+ }
break;
case VKI_XEN_DOMCTL_deassign_device:
- __PRE_XEN_DOMCTL_READ(deassign_device, assign_device, machine_sbdf);
+ switch (domctl->interface_version) {
+ case 0x00000007: /* pre-4.6 */
+ case 0x00000008:
+ case 0x00000009:
+ case 0x0000000a:
+ __PRE_XEN_DOMCTL_READ(deassign_device, assign_device_00000007, machine_sbdf);
+ break;
+ case 0x0000000b:
+ __PRE_XEN_DOMCTL_READ(deassign_device, assign_device_0000000b, dev);
+ __PRE_XEN_DOMCTL_READ(deassign_device, assign_device_0000000b, flag);
+ switch (domctl->u.assign_device_0000000b.dev) {
+ case VKI_XEN_DOMCTL_DEV_PCI:
+ __PRE_XEN_DOMCTL_READ(deassign_device, assign_device_0000000b, u.pci);
+ break;
+ case VKI_XEN_DOMCTL_DEV_DT:
+ __PRE_XEN_DOMCTL_READ(deassign_device, assign_device_0000000b, u.dt);
+ PRE_MEM_READ("XEN_DOMTCL_assign_device.dt",
+ (Addr)domctl->u.assign_device_0000000b.u.dt.path.p,
+ domctl->u.assign_device_0000000b.u.dt.size);
+ break;
+ default:
+ bad_subop(tid, layout, arrghs, status, flags,
+ "__HYPERVISOR_domctl_deassign_device dev",
+ domctl->u.assign_device_0000000b.dev);
+ break;
+ }
+ break;
+ }
break;
case VKI_XEN_DOMCTL_settscinfo:
- __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info, info.tsc_mode);
- __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info, info.gtsc_khz);
- __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info, info.incarnation);
- __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info, info.elapsed_nsec);
+ switch (domctl->interface_version) {
+ case 0x00000007: /* pre-4.6 */
+ case 0x00000008:
+ case 0x00000009:
+ case 0x0000000a:
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_00000007, info.tsc_mode);
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_00000007, info.gtsc_khz);
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_00000007, info.incarnation);
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_00000007, info.elapsed_nsec);
+ break;
+ case 0x0000000b:
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_0000000b, tsc_mode);
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_0000000b, gtsc_khz);
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_0000000b, incarnation);
+ __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info_0000000b, elapsed_nsec);
+ break;
+ }
break;
case VKI_XEN_DOMCTL_irq_permission:
@@ -1136,8 +1231,20 @@
break;
case VKI_XEN_DOMCTL_mem_event_op:
- PRE_XEN_DOMCTL_READ(mem_event_op, op);
- PRE_XEN_DOMCTL_READ(mem_event_op, mode);
+ //case VKI_XEN_DOMCTL_vm_event_op: /* name change in 4.6 */
+ switch (domctl->interface_version) {
+ case 0x00000007: /* pre-4.6 */
+ case 0x00000008:
+ case 0x00000009:
+ case 0x0000000a:
+ __PRE_XEN_DOMCTL_READ(mem_event_op, mem_event_op_00000007, op);
+ __PRE_XEN_DOMCTL_READ(mem_event_op, mem_event_op_00000007, mode);
+ break;
+ case 0x0000000b:
+ __PRE_XEN_DOMCTL_READ(vm_event_op, vm_event_op_0000000b, op);
+ __PRE_XEN_DOMCTL_READ(vm_event_op, vm_event_op_0000000b, mode);
+ break;
+ }
break;
case VKI_XEN_DOMCTL_debug_op:
@@ -1161,6 +1268,28 @@
domctl->u.vcpu_msrs.msr_count);
break;
+ case VKI_XEN_DOMCTL_monitor_op:
+ switch (domctl->interface_version) {
+ case 0x000000b:
+ if (domctl->u.monitor_op_0000000b.op == VKI_XEN_DOMCTL_MONITOR_OP_ENABLE ||
+ domctl->u.monitor_op_0000000b.op == VKI_XEN_DOMCTL_MONITOR_OP_ENABLE) {
+ switch(domctl->u.monitor_op_0000000b.event) {
+ case VKI_XEN_DOMCTL_MONITOR_EVENT_WRITE_CTRLREG:
+ __PRE_XEN_DOMCTL_READ(monitor_op, monitor_op_0000000b, u.mov_to_cr);
+ break;
+ case VKI_XEN_DOMCTL_MONITOR_EVENT_MOV_TO_MSR:
+ __PRE_XEN_DOMCTL_READ(monitor_op, monitor_op_0000000b, u.mov_to_msr);
+ break;
+ case VKI_XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST:
+ __PRE_XEN_DOMCTL_READ(monitor_op, monitor_op_0000000b, u.guest_request);
+ break;
+ }
+ }
+
+ break;
+ }
+ break;
+
default:
bad_subop(tid, layout, arrghs, status, flags,
"__HYPERVISOR_domctl", domctl->cmd);
@@ -1669,6 +1798,7 @@
case 0x00000008:
case 0x00000009:
case 0x0000000a:
+ case 0x0000000b:
break;
default:
return;
@@ -1720,10 +1850,23 @@
break;
case VKI_XEN_DOMCTL_gettscinfo:
- __POST_XEN_DOMCTL_WRITE(settscinfo, tsc_info, info.tsc_mode);
- __POST_XEN_DOMCTL_WRITE(settscinfo, tsc_info, info.gtsc_khz);
- __POST_XEN_DOMCTL_WRITE(settscinfo, tsc_info, info.incarnation);
- __POST_XEN_DOMCTL_WRITE(settscinfo, tsc_info, info.elapsed_nsec);
+ switch (domctl->interface_version) {
+ case 0x00000007: /* pre-4.6 */
+ case 0x00000008:
+ case 0x00000009:
+ case 0x0000000a:
+ __POST_XEN_DOMCTL_WRITE(gettscinfo, tsc_info_00000007, out_info);
+ POST_MEM_WRITE((Addr)domctl->u.tsc_info_00000007.out_info.p,
+ sizeof(vki_xen_guest_tsc_info_t));
+ break;
+ case 0x0000000b:
+ __POST_XEN_DOMCTL_WRITE(gettscinfo, tsc_info_0000000b, tsc_mode);
+ __POST_XEN_DOMCTL_WRITE(gettscinfo, tsc_info_0000000b, gtsc_khz);
+ __POST_XEN_DOMCTL_WRITE(gettscinfo, tsc_info_0000000b, incarnation);
+ __POST_XEN_DOMCTL_WRITE(gettscinfo, tsc_info_0000000b, elapsed_nsec);
+ break;
+ }
+ break;
break;
case VKI_XEN_DOMCTL_getvcpuinfo:
@@ -1959,10 +2102,42 @@
break;
case VKI_XEN_DOMCTL_mem_event_op:
- POST_XEN_DOMCTL_WRITE(mem_event_op, port);
+ //case VKI_XEN_DOMCTL_vm_event_op: /* name change in 4.6 */
+ switch (domctl->interface_version) {
+ case 0x00000007: /* pre-4.6 */
+ case 0x00000008:
+ case 0x00000009:
+ case 0x0000000a:
+ __POST_XEN_DOMCTL_WRITE(mem_event_op, mem_event_op_00000007, port);
+ break;
+ case 0x0000000b:
+ __POST_XEN_DOMCTL_WRITE(vm_event_op, vm_event_op_0000000b, port);
+ break;
+ }
+ break;
- break;
+ case VKI_XEN_DOMCTL_monitor_op:
+ switch (domctl->interface_version) {
+ case 0x000000b:
+ if (domctl->u.monitor_op_0000000b.op == VKI_XEN_DOMCTL_MONITOR_OP_GET_CAPABILITIES) {
+ switch(domctl->u.monitor_op_0000000b.event) {
+ case VKI_XEN_DOMCTL_MONITOR_EVENT_WRITE_CTRLREG:
+ __POST_XEN_DOMCTL_WRITE(monitor_op, monitor_op_0000000b, u.mov_to_cr);
+ break;
+ case VKI_XEN_DOMCTL_MONITOR_EVENT_MOV_TO_MSR:
+ __POST_XEN_DOMCTL_WRITE(monitor_op, monitor_op_0000000b, u.mov_to_msr);
+ break;
+ case VKI_XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST:
+ __POST_XEN_DOMCTL_WRITE(monitor_op, monitor_op_0000000b, u.guest_request);
+ break;
+ }
+ }
+
+ break;
+ }
+ break;
}
+
#undef POST_XEN_DOMCTL_WRITE
#undef __POST_XEN_DOMCTL_WRITE
}
Modified: trunk/include/vki/vki-xen-domctl.h
==============================================================================
--- trunk/include/vki/vki-xen-domctl.h (original)
+++ trunk/include/vki/vki-xen-domctl.h Wed May 10 18:37:35 2017
@@ -36,6 +36,7 @@
* - 0x00000008: Xen 4.2
* - 0x00000009: Xen 4.3 & 4.4
* - 0x0000000a: Xen 4.5
+ * - 0x0000000b: Xen 4.6
*
* When adding a new subop be sure to include the variants used by all
* of the above, both here and in syswrap-xen.c
@@ -99,6 +100,7 @@
#define VKI_XEN_DOMCTL_debug_op 54
#define VKI_XEN_DOMCTL_gethvmcontext_partial 55
#define VKI_XEN_DOMCTL_mem_event_op 56
+#define VKI_XEN_DOMCTL_vm_event_op 56 /* name change in 4.6 */
#define VKI_XEN_DOMCTL_mem_sharing_op 57
#define VKI_XEN_DOMCTL_disable_migrate 58
#define VKI_XEN_DOMCTL_gettscinfo 59
@@ -116,6 +118,7 @@
#define VKI_XEN_DOMCTL_cacheflush 71
#define VKI_XEN_DOMCTL_get_vcpu_msrs 72
#define VKI_XEN_DOMCTL_set_vcpu_msrs 73
+#define VKI_XEN_DOMCTL_monitor_op 77 /* new in 4.6 */
#define VKI_XEN_DOMCTL_gdbsx_guestmemio 1000
#define VKI_XEN_DOMCTL_gdbsx_pausevcpu 1001
#define VKI_XEN_DOMCTL_gdbsx_unpausevcpu 1002
@@ -351,6 +354,22 @@
typedef struct vki_xen_guest_tsc_info vki_xen_guest_tsc_info_t;
DEFINE_VKI_XEN_GUEST_HANDLE(vki_xen_guest_tsc_info_t);
+struct vki_xen_domctl_tsc_info_00000007 {
+ VKI_XEN_GUEST_HANDLE_64(vki_xen_guest_tsc_info_t) out_info; /* OUT */
+ vki_xen_guest_tsc_info_t info; /* IN */
+};
+
+/* 4.6 removed the output pointer */
+struct vki_xen_domctl_tsc_info_0000000b {
+ /* IN/OUT */
+ vki_uint32_t tsc_mode;
+ vki_uint32_t gtsc_khz;
+ vki_uint32_t incarnation;
+ vki_uint32_t pad;
+ vki_xen_uint64_aligned_t elapsed_nsec;
+};
+
+
struct vki_xen_domctl_hvmcontext {
vki_uint32_t size; /* IN/OUT size of buffer */
VKI_XEN_GUEST_HANDLE_64(vki_uint8) buffer; /* IN/OUT */
@@ -366,10 +385,6 @@
typedef struct vki_xen_domctl_hvmcontext_partial vki_xen_domctl_hvmcontext_partial_t;
DEFINE_VKI_XEN_GUEST_HANDLE(vki_xen_domctl_hvmcontext_partial_t);
-struct vki_xen_domctl_tsc_info {
- VKI_XEN_GUEST_HANDLE_64(vki_xen_guest_tsc_info_t) out_info; /* OUT */
- vki_xen_guest_tsc_info_t info; /* IN */
-};
struct vki_xen_domctl_pin_mem_cacheattr {
vki_xen_uint64_aligned_t start, end; /* IN */
@@ -425,22 +440,44 @@
vki_uint32_t size;
};
-struct vki_xen_domctl_assign_device {
+/* vki_xen_domctl_assign_device_00000007 is the same up to version 0x0000000b */
+struct vki_xen_domctl_assign_device_00000007 {
vki_uint32_t machine_sbdf; /* machine PCI ID of assigned device */
};
+#define VKI_XEN_DOMCTL_DEV_PCI 0
+#define VKI_XEN_DOMCTL_DEV_DT 1
+struct vki_xen_domctl_assign_device_0000000b {
+ vki_uint32_t dev; /* XEN_DOMCTL_DEV_* */
+ union {
+ struct {
+ vki_uint32_t machine_sbdf; /* machine PCI ID of assigned device */
+ } pci;
+ struct {
+ vki_uint32_t size; /* Length of the path */
+ VKI_XEN_GUEST_HANDLE_64(vki_uint8) path; /* path to the device tree node */
+ } dt;
+ } u;
+ /* IN */
+//#define XEN_DOMCTL_DEV_RDM_RELAXED 1
+ vki_uint32_t flag; /* flag of assigned device */
+};
+
struct vki_xen_domctl_debug_op {
vki_uint32_t op; /* IN */
vki_uint32_t vcpu; /* IN */
};
typedef struct vki_xen_domctl_debug_op vki_xen_domctl_debug_op_t;
-struct vki_xen_domctl_mem_event_op {
+struct vki_xen_domctl_mem_event_op_00000007 {
vki_uint32_t op; /* IN */
vki_uint32_t mode; /* IN */
vki_uint32_t port; /* OUT */
};
+/* only a name change in 4.6 */
+typedef struct vki_xen_domctl_mem_event_op_00000007 vki_xen_domctl_vm_event_op_0000000b;
+
struct vki_xen_domctl_set_access_required {
vki_uint8_t access_required; /* IN */
};
@@ -468,6 +505,54 @@
VKI_XEN_GUEST_HANDLE_64(vki_xen_domctl_vcpu_msr_t) msrs;
};
+#define VKI_XEN_DOMCTL_MONITOR_OP_ENABLE 0
+#define VKI_XEN_DOMCTL_MONITOR_OP_DISABLE 1
+#define VKI_XEN_DOMCTL_MONITOR_OP_GET_CAPABILITIES 2
+
+#define VKI_XEN_DOMCTL_MONITOR_EVENT_WRITE_CTRLREG 0
+#define VKI_XEN_DOMCTL_MONITOR_EVENT_MOV_TO_MSR 1
+#define VKI_XEN_DOMCTL_MONITOR_EVENT_SINGLESTEP 2
+#define VKI_XEN_DOMCTL_MONITOR_EVENT_SOFTWARE_BREAKPOINT 3
+#define VKI_XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST 4
+
+struct vki_xen_domctl_monitor_op_0000000b {
+ vki_uint32_t op; /* vki_xen_DOMCTL_MONITOR_OP_* */
+
+ /*
+ * When used with ENABLE/DISABLE this has to be set to
+ * the requested vki_xen_DOMCTL_MONITOR_EVENT_* value.
+ * With GET_CAPABILITIES this field returns a bitmap of
+ * events supported by the platform, in the format
+ * (1 << vki_xen_DOMCTL_MONITOR_EVENT_*).
+ */
+ vki_uint32_t event;
+
+ /*
+ * Further options when issuing vki_xen_DOMCTL_MONITOR_OP_ENABLE.
+ */
+ union {
+ struct {
+ /* Which control register */
+ vki_uint8_t index;
+ /* Pause vCPU until response */
+ vki_uint8_t sync;
+ /* Send event only on a change of value */
+ vki_uint8_t onchangeonly;
+ } mov_to_cr;
+
+ struct {
+ /* Enable the capture of an extended set of MSRs */
+ vki_uint8_t extended_capture;
+ } mov_to_msr;
+
+ struct {
+ /* Pause vCPU until response */
+ vki_uint8_t sync;
+ } guest_request;
+ } u;
+};
+
+
struct vki_xen_domctl {
vki_uint32_t cmd;
vki_uint32_t interface_version; /* XEN_DOMCTL_INTERFACE_VERSION */
@@ -499,14 +584,16 @@
//struct vki_xen_domctl_arch_setup arch_setup;
struct vki_xen_domctl_settimeoffset settimeoffset;
//struct vki_xen_domctl_disable_migrate disable_migrate;
- struct vki_xen_domctl_tsc_info tsc_info;
+ struct vki_xen_domctl_tsc_info_00000007 tsc_info_00000007;
+ struct vki_xen_domctl_tsc_info_0000000b tsc_info_0000000b;
//struct vki_xen_domctl_real_mode_area real_mode_area;
struct vki_xen_domctl_hvmcontext hvmcontext;
struct vki_xen_domctl_hvmcontext_partial hvmcontext_partial;
struct vki_xen_domctl_address_size address_size;
//struct vki_xen_domctl_sendtrigger sendtrigger;
//struct vki_xen_domctl_get_device_group get_device_group;
- struct vki_xen_domctl_assign_device assign_device;
+ struct vki_xen_domctl_assign_device_00000007 assign_device_00000007;
+ struct vki_xen_domctl_assign_device_0000000b assign_device_0000000b;
//struct vki_xen_domctl_bind_pt_irq bind_pt_irq;
//struct vki_xen_domctl_memory_mapping memory_mapping;
//struct vki_xen_domctl_ioport_mapping ioport_mapping;
@@ -516,7 +603,8 @@
//struct vki_xen_domctl_set_target set_target;
//struct vki_xen_domctl_subscribe subscribe;
struct vki_xen_domctl_debug_op debug_op;
- struct vki_xen_domctl_mem_event_op mem_event_op;
+ struct vki_xen_domctl_mem_event_op_00000007 mem_event_op_00000007;
+ vki_xen_domctl_vm_event_op_0000000b vm_event_op_0000000b;
//struct vki_xen_domctl_mem_sharing_op mem_sharing_op;
#if defined(__i386__) || defined(__x86_64__)
struct vki_xen_domctl_cpuid cpuid;
@@ -532,6 +620,7 @@
struct vki_xen_domctl_cacheflush cacheflush;
//struct vki_xen_domctl_gdbsx_pauseunp_vcpu gdbsx_pauseunp_vcpu;
//struct vki_xen_domctl_gdbsx_domstatus gdbsx_domstatus;
+ struct vki_xen_domctl_monitor_op_0000000b monitor_op_0000000b;
vki_uint8_t pad[128];
} u;
};
|
|
From: <sv...@va...> - 2017-05-10 16:18:20
|
Author: petarj
Date: Wed May 10 17:18:12 2017
New Revision: 16353
Log:
mips64: finetune cvm_atomic_thread test
Remove unnecessary logs from the expected output.
Modified:
trunk/none/tests/mips64/cvm_atomic_thread.c
trunk/none/tests/mips64/cvm_atomic_thread.stdout.exp
Modified: trunk/none/tests/mips64/cvm_atomic_thread.c
==============================================================================
--- trunk/none/tests/mips64/cvm_atomic_thread.c (original)
+++ trunk/none/tests/mips64/cvm_atomic_thread.c Wed May 10 17:18:12 2017
@@ -311,8 +311,6 @@
long long int* p2[N];
pid_t child, pc2;
- printf("parent, pre-fork\n");
-
for (i = 0; i < N; i++) {
page[i] = mmap( 0, sysconf(_SC_PAGESIZE),
PROT_READ|PROT_WRITE,
@@ -342,7 +340,6 @@
if (child == 0) {
/* --- CHILD --- */
- printf("child\n");
for (i = 0; i < NNN; i++) {
atomic_saa(p1[0], i);
atomic_saad(p2[0], i + 98765 ); /* ensure we hit the upper 32 bits */
@@ -377,8 +374,6 @@
}
/* --- PARENT --- */
- printf("parent\n");
-
for (i = 0; i < NNN; i++) {
atomic_saa(p1[0], i);
atomic_saad(p2[0], i + 98765); /* ensure we hit the upper 32 bits */
Modified: trunk/none/tests/mips64/cvm_atomic_thread.stdout.exp
==============================================================================
--- trunk/none/tests/mips64/cvm_atomic_thread.stdout.exp (original)
+++ trunk/none/tests/mips64/cvm_atomic_thread.stdout.exp Wed May 10 17:18:12 2017
@@ -1,7 +1,3 @@
-parent, pre-fork
-child
-parent, pre-fork
-parent
Store Atomic Add: 32 bit 2156643710, 64 bit 12633614303292
Load Atomic Add: 32 bit 2156643710, 64 bit 12633614303292
Load Atomic Swap: 32 bit 3456986, 64 bit 3555751
|
|
From: Mineeva, T. A <tat...@in...> - 2017-05-10 16:13:39
|
Hello Ivo, Could you please explain how to connect to Valgrind SVN through 'socat' tunneling? Also, do I understand correctly that the Git repository does not update along with the svn trunk yet? The latest Git commit I can pull is from March, 4, "Convert release-HOWTO.txt from SVN to GIT". Regards, Tanya -----Original Message----- From: Knapp, Rashawn L Sent: Thursday, March 30, 2017 12:41 AM To: Ivo Raisr <iv...@iv...>; Mineeva, Tatyana A <tat...@in...> Cc: val...@li... Subject: RE: [Valgrind-developers] Valgrind repository access and AVX-512 development progress Thank you everyone who offered svn and git access help. For now, we have resolved the git clone issue; we will tackle the svn checkout late. We did need to contact corporate system administrators and we were able to resolve our git clone issue using, as Ivo suggests, socat and configuration file creations which identify the correct proxy server and protocol. The difficult part was that this was not straightforward for us as the process on our end was different this time for this public git repo. Regards, -Rashawn -----Original Message----- From: Ivo Raisr [mailto:iv...@iv...] Sent: Wednesday, March 29, 2017 2:30 PM To: Mineeva, Tatyana A <tat...@in...> Cc: val...@li... Subject: Re: [Valgrind-developers] Valgrind repository access and AVX-512 development progress 2017-03-29 18:21 GMT+02:00 Julian Seward <js...@ac...>: > On 29/03/17 17:54, Mineeva, Tatyana A wrote: >> Our team cannot access the Valgrind Subversion repository: >> $ svn co svn://svn.valgrind.org/valgrind/trunk valgrind >> svn: Can't connect to host 'svn.valgrind.org': Connection timed out >> Is the this repository functional, or should we switch to the git repository? > > The SVN repo works fine. I've been using it this afternoon and > committed to it just a few minutes ago. So as Eliot says, this is > probably a corporate firewall problem. Such things have happened before. Indeed, corporate proxy problem. Unfortunately svn.valgrind.org does not offer access via http:// (which would allow to specify http proxy at hand). So in our corporate settings, I ended up with a horrible hack using 'socat' tunneling. I can share details if you are interested. >> We do not currently have success cloning the Valgrind git repository: >> $ git clone git://sourceware.org/git/valgrind.git >> Cloning into 'valgrind'... >> fatal: unable to connect to sourceware.org: >> sourceware.org[0: 209.132.180.131]: errno=Connection timed out > > I don't know. Ivo might know more. Ivo? Two commets here: 1) valgrind.git at sourceware.org is still unofficial, testing repo. And it will remain so until migration from SVN to GIT happens, which is bound after 3.13 release is done. 2) Again, your corporate firewall is blocking access here. I. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Valgrind-developers mailing list Val...@li... https://lists.sourceforge.net/lists/listinfo/valgrind-developers -------------------------------------------------------------------- Joint Stock Company Intel A/O Registered legal address: Krylatsky Hills Business Park, 17 Krylatskaya Str., Bldg 4, Moscow 121614, Russian Federation This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. |
|
From: <sv...@va...> - 2017-05-10 12:52:48
|
Author: iraisr
Date: Wed May 10 13:52:40 2017
New Revision: 16352
Log:
Reduce the number of compiler warnings on MIPS platforms.
Patch by: Tamara Vlahovic <tam...@im...>
Partially fixes BZ#370028.
Modified:
trunk/memcheck/mc_main.c
Modified: trunk/memcheck/mc_main.c
==============================================================================
--- trunk/memcheck/mc_main.c (original)
+++ trunk/memcheck/mc_main.c Wed May 10 13:52:40 2017
@@ -277,9 +277,12 @@
return (start_of_this_sm(a) == a);
}
+STATIC_ASSERT(SM_CHUNKS % 2 == 0);
+
typedef
- struct {
+ union {
UChar vabits8[SM_CHUNKS];
+ UShort vabits16[SM_CHUNKS/2];
}
SecMap;
@@ -1383,7 +1386,7 @@
&& nBits == 64 && VG_IS_8_ALIGNED(a))) {
SecMap* sm = get_secmap_for_reading(a);
UWord sm_off16 = SM_OFF_16(a);
- UWord vabits16 = ((UShort*)(sm->vabits8))[sm_off16];
+ UWord vabits16 = sm->vabits16[sm_off16];
if (LIKELY(vabits16 == VA_BITS16_DEFINED))
return V_BITS64_DEFINED;
if (LIKELY(vabits16 == VA_BITS16_UNDEFINED))
@@ -1536,7 +1539,7 @@
&& nBits == 64 && VG_IS_8_ALIGNED(a))) {
SecMap* sm = get_secmap_for_reading(a);
UWord sm_off16 = SM_OFF_16(a);
- UWord vabits16 = ((UShort*)(sm->vabits8))[sm_off16];
+ UWord vabits16 = sm->vabits16[sm_off16];
if (LIKELY( !is_distinguished_sm(sm) &&
(VA_BITS16_DEFINED == vabits16 ||
VA_BITS16_UNDEFINED == vabits16) )) {
@@ -1544,10 +1547,10 @@
/* is mapped, and is addressible. */
// Convert full V-bits in register to compact 2-bit form.
if (LIKELY(V_BITS64_DEFINED == vbytes)) {
- ((UShort*)(sm->vabits8))[sm_off16] = (UShort)VA_BITS16_DEFINED;
+ sm->vabits16[sm_off16] = VA_BITS16_DEFINED;
return;
} else if (V_BITS64_UNDEFINED == vbytes) {
- ((UShort*)(sm->vabits8))[sm_off16] = (UShort)VA_BITS16_UNDEFINED;
+ sm->vabits16[sm_off16] = VA_BITS16_UNDEFINED;
return;
}
/* else fall into the slow case */
@@ -1744,7 +1747,7 @@
if (lenA < 8) break;
PROF_EVENT(MCPE_SET_ADDRESS_RANGE_PERMS_LOOP8A);
sm_off16 = SM_OFF_16(a);
- ((UShort*)(sm->vabits8))[sm_off16] = vabits16;
+ sm->vabits16[sm_off16] = vabits16;
a += 8;
lenA -= 8;
}
@@ -1817,7 +1820,7 @@
if (lenB < 8) break;
PROF_EVENT(MCPE_SET_ADDRESS_RANGE_PERMS_LOOP8B);
sm_off16 = SM_OFF_16(a);
- ((UShort*)(sm->vabits8))[sm_off16] = vabits16;
+ sm->vabits16[sm_off16] = vabits16;
a += 8;
lenB -= 8;
}
@@ -2760,7 +2763,7 @@
sm = get_secmap_for_writing_low(a);
sm_off16 = SM_OFF_16(a);
- ((UShort*)(sm->vabits8))[sm_off16] = VA_BITS16_UNDEFINED;
+ sm->vabits16[sm_off16] = VA_BITS16_UNDEFINED;
}
#endif
}
@@ -2804,7 +2807,7 @@
sm = get_secmap_for_writing_low(a);
sm_off16 = SM_OFF_16(a);
- ((UShort*)(sm->vabits8))[sm_off16] = VA_BITS16_NOACCESS;
+ sm->vabits16[sm_off16] = VA_BITS16_NOACCESS;
//// BEGIN inlined, specialised version of MC_(helperc_b_store8)
//// Clear the origins for a+0 .. a+7.
@@ -3633,9 +3636,9 @@
/* Now we know that the entire address range falls within a
single secondary map, and that that secondary 'lives' in
the main primary map. */
- SecMap* sm = get_secmap_for_writing_low(a_lo);
- UWord v_off = SM_OFF(a_lo);
- UShort* p = (UShort*)(&sm->vabits8[v_off]);
+ SecMap* sm = get_secmap_for_writing_low(a_lo);
+ UWord v_off16 = SM_OFF_16(a_lo);
+ UShort* p = &sm->vabits16[v_off16];
p[ 0] = VA_BITS16_UNDEFINED;
p[ 1] = VA_BITS16_UNDEFINED;
p[ 2] = VA_BITS16_UNDEFINED;
@@ -3686,9 +3689,9 @@
/* Now we know that the entire address range falls within a
single secondary map, and that that secondary 'lives' in
the main primary map. */
- SecMap* sm = get_secmap_for_writing_low(a_lo);
- UWord v_off = SM_OFF(a_lo);
- UShort* p = (UShort*)(&sm->vabits8[v_off]);
+ SecMap* sm = get_secmap_for_writing_low(a_lo);
+ UWord v_off16 = SM_OFF_16(a_lo);
+ UShort* p = &sm->vabits16[v_off16];
p[ 0] = VA_BITS16_UNDEFINED;
p[ 1] = VA_BITS16_UNDEFINED;
p[ 2] = VA_BITS16_UNDEFINED;
@@ -3830,9 +3833,9 @@
/* Now we know that the entire address range falls within a
single secondary map, and that that secondary 'lives' in
the main primary map. */
- SecMap* sm = get_secmap_for_writing_low(a_lo);
- UWord v_off = SM_OFF(a_lo);
- UShort* p = (UShort*)(&sm->vabits8[v_off]);
+ SecMap* sm = get_secmap_for_writing_low(a_lo);
+ UWord v_off16 = SM_OFF_16(a_lo);
+ UShort* p = &sm->vabits16[v_off16];
p[ 0] = VA_BITS16_UNDEFINED;
p[ 1] = VA_BITS16_UNDEFINED;
p[ 2] = VA_BITS16_UNDEFINED;
@@ -3867,9 +3870,9 @@
/* Now we know that the entire address range falls within a
single secondary map, and that that secondary 'lives' in
the main primary map. */
- SecMap* sm = get_secmap_for_writing_low(a_lo);
- UWord v_off = SM_OFF(a_lo);
- UShort* p = (UShort*)(&sm->vabits8[v_off]);
+ SecMap* sm = get_secmap_for_writing_low(a_lo);
+ UWord v_off16 = SM_OFF_16(a_lo);
+ UShort* p = &sm->vabits16[v_off16];
p[ 0] = VA_BITS16_UNDEFINED;
p[ 1] = VA_BITS16_UNDEFINED;
p[ 2] = VA_BITS16_UNDEFINED;
@@ -3982,7 +3985,7 @@
PROF_EVENT(MCPE_MAKE_STACK_UNINIT_128_NO_O_ALIGNED_16);
SecMap* sm = get_secmap_for_writing_low(a_lo);
UWord v_off = SM_OFF(a_lo);
- UInt* w32 = (UInt*)(&sm->vabits8[v_off]);
+ UInt* w32 = ASSUME_ALIGNED(UInt*, &sm->vabits8[v_off]);
w32[ 0] = VA_BITS32_UNDEFINED;
w32[ 1] = VA_BITS32_UNDEFINED;
w32[ 2] = VA_BITS32_UNDEFINED;
@@ -4015,10 +4018,10 @@
/* Now we know that the entire address range falls within a
single secondary map, and that that secondary 'lives' in
the main primary map. */
- SecMap* sm = get_secmap_for_writing_low(a_lo);
- UWord v_off = SM_OFF(a_lo);
- UShort* w16 = (UShort*)(&sm->vabits8[v_off]);
- UInt* w32 = (UInt*)(&w16[1]);
+ SecMap* sm = get_secmap_for_writing_low(a_lo);
+ UWord v_off16 = SM_OFF_16(a_lo);
+ UShort* w16 = &sm->vabits16[v_off16];
+ UInt* w32 = ASSUME_ALIGNED(UInt*, &w16[1]);
/* The following assertion is commented out for obvious
performance reasons, but was verified as valid when
running the entire testsuite and also Firefox. */
@@ -4769,7 +4772,7 @@
for (j = 0; j < nULongs; j++) {
sm = get_secmap_for_reading_low(a + 8*j);
sm_off16 = SM_OFF_16(a + 8*j);
- vabits16 = ((UShort*)(sm->vabits8))[sm_off16];
+ vabits16 = sm->vabits16[sm_off16];
// Convert V bits from compact memory form to expanded
// register form.
@@ -4831,7 +4834,7 @@
sm = get_secmap_for_reading_low(a);
sm_off16 = SM_OFF_16(a);
- vabits16 = ((UShort*)(sm->vabits8))[sm_off16];
+ vabits16 = sm->vabits16[sm_off16];
// Handle common case quickly: a is suitably aligned, is mapped, and
// addressible.
@@ -4965,7 +4968,7 @@
sm = get_secmap_for_reading_low(a);
sm_off16 = SM_OFF_16(a);
- vabits16 = ((UShort*)(sm->vabits8))[sm_off16];
+ vabits16 = sm->vabits16[sm_off16];
// To understand the below cleverness, see the extensive comments
// in MC_(helperc_STOREV8).
@@ -4974,7 +4977,7 @@
return;
}
if (!is_distinguished_sm(sm) && VA_BITS16_UNDEFINED == vabits16) {
- ((UShort*)(sm->vabits8))[sm_off16] = (UShort)VA_BITS16_DEFINED;
+ sm->vabits16[sm_off16] = VA_BITS16_DEFINED;
return;
}
PROF_EVENT(MCPE_STOREV64_SLOW2);
@@ -4986,7 +4989,7 @@
return;
}
if (!is_distinguished_sm(sm) && VA_BITS16_DEFINED == vabits16) {
- ((UShort*)(sm->vabits8))[sm_off16] = (UShort)VA_BITS16_UNDEFINED;
+ sm->vabits16[sm_off16] = VA_BITS16_UNDEFINED;
return;
}
PROF_EVENT(MCPE_STOREV64_SLOW3);
|
|
From: <sv...@va...> - 2017-05-10 09:12:11
|
Author: sewardj
Date: Wed May 10 10:12:01 2017
New Revision: 16351
Log:
Even more bug list updates, to catch up with recently reported bugs.
Modified:
trunk/NEWS
trunk/docs/internals/3_12_BUGSTATUS.txt
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed May 10 10:12:01 2017
@@ -105,6 +105,8 @@
348616 Wine/valgrind: noted but unhandled ioctl 0x5390 [..] (DVD_READ_STRUCT)
352395 Please provide SVN revision info in --version -v
352767 Wine/valgrind: noted but unhandled ioctl 0x5307 [..] (CDROMSTOP)
+356374 Assertion 'DRD_(g_threadinfo)[tid].pt_threadid !=
+ INVALID_POSIX_THREADID' failed
358213 helgrind/drd bar_bad testcase hangs or crashes with new glibc pthread
barrier implementation
358697 valgrind.h: Some code remains even when defining NVALGRIND
@@ -147,6 +149,7 @@
375839 Temporary storage exhausted, with long sequence of vfmadd231ps insns
== 377159 "vex: the `impossible' happened" still present
== 375150 Assertion 'tres.status == VexTransOK' failed
+ == 378068 valgrind crashes on AVX2 function in FFmpeg
376142 Segfaults on MIPS Cavium Octeon boards
376279 disInstr(arm64): unhandled instruction 0xD50320FF
376455 Solaris: unhandled syscall lgrpsys(180)
@@ -166,6 +169,7 @@
and 2 args for FUTEX_TRYLOCK_PI
377717 Fix massive space leak when reading compressed debuginfo sections
377930 fcntl syscall wrapper is missing flock structure check
+378524 libvexmultiarch_test regression on s390x and ppc64
378535 Valgrind reports INTERNAL ERROR in execve syscall wrapper
378673 Update libiberty demangler
378931 Add ISA 3.0B additional isnstructions, add OV32, CA32 setting support
@@ -178,7 +182,7 @@
379390 unhandled syscall: mach:70 (host_create_mach_voucher_trap)
379473 MIPS: add support for rdhwr cycle counter register
379504 remove TileGX/Linux port
-356374 Assertion 'DRD_(g_threadinfo)[tid].pt_threadid != INVALID_POSIX_THREADID' failed
+
Release 3.12.0 (20 October 2016)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Modified: trunk/docs/internals/3_12_BUGSTATUS.txt
==============================================================================
--- trunk/docs/internals/3_12_BUGSTATUS.txt (original)
+++ trunk/docs/internals/3_12_BUGSTATUS.txt Wed May 10 10:12:01 2017
@@ -33,6 +33,8 @@
377066 Some Valgrind unit tests fail to compile on Ubuntu 16.10 with
PIE enabled by default
+379525 Support more x86 nop opcodes
+
AMD XOP-prefixed insns:
(carried over)
@@ -80,6 +82,8 @@
373990 Potential shift left overflow in guest_arm_toIR.c
[suggested fix available]
+378249 Valgrind Crashed on raspberian armv71 instrtuction set
+
=== VEX/arm64 ==========================================================
368868 disInstr(arm64): unhandled instruction 0xD53BE000 = cntfrq_el0 (ARMv8)
@@ -91,6 +95,8 @@
371503 disInstr(arm64): unhandled instruction 0xF89F0000 (prfum)
+377966 disInstr(arm64): unhandled instruction 0xD50B7425
+
=== VEX/x86 ============================================================
=== VEX/mips ===========================================================
@@ -182,6 +188,10 @@
372861 Test pselect_alarm for Bug 359871 seg faults on RHEL 4
[has a suggested solution]
+377891 Update Xen 4.6 domctl wrappers
+
+378892 Unhandled amd64-linux syscall: 324
+
=== Syscalls/ioctls on OSX =============================================
(carried over)
@@ -259,6 +269,13 @@
371770 Memleak trace back for overwritten or freed memory pointers
[wishlist]
+377463 Uninitialized parameters to VALGRIND_MAKE_MEM_NOACCESS() not warned
+ about. [wishlist]
+
+378622 False positive with GCC 6.3.1 and -funswitch-loops (-O3)
+
+378627 False positive with GCC 6.3.1 and -fno-ipa-cp-clone (-O3)
+
=== Tools/DRD ==========================================================
(carried over)
@@ -390,6 +407,9 @@
376870 The impossible happened on Mavericks 10.9
+379373 Syscall param msg->desc.port.name points to uninitialised byte(s)
+ on macOS 10.12
+
=== other/Win32 ========================================================
=== other/*BSD =========================================================
@@ -422,6 +442,8 @@
368873 Please add FreeBSD to supported OS list
+378430 www: update Valgrind alias mirrors
+
=== Uncategorised/run ==================================================
(carried over)
@@ -439,6 +461,8 @@
377006 valgrind/memcheck segfaults under certain kernel versions (amd64)
but not others.
+379273 Phone restarts when run with valgrind
+
=== Uncategorised/build ================================================
(carried over)
@@ -454,6 +478,10 @@
377066 Some Valgrind unit tests fail to compile on Ubuntu 16.10 with
PIE enabled by default
+379502 Checking the code of Valgrind dynamic analyzer by a static analyzer
+
+379537 Client requests can't be used in C++11 constexpr functions
+
=== Intel Compiler problems ============================================
(carried over)
@@ -480,6 +508,8 @@
Mon 6 Mar 21:02:39 CET 2017
+Wed 10 May 10:24:16 CEST 2017
+
========================================================================
========================================================================
========================================================================
@@ -541,11 +571,18 @@
372828 vex amd64->IR: 0x66 0x4D 0xF 0x38 0xF6 0xD2 0x66 0x4D
**
+374963 increase valgrind's load address to prevent mmap failure
+maybe change to 0x5800'0000
+
+**
377066 Some Valgrind unit tests fail to compile on Ubuntu 16.10 with
PIE enabled by default
[Ivosh will fix it as it is annoying]
**
+377891 Update Xen 4.6 domctl wrappers
+
+**
n-i-bz major perf problems w/ stack registration + stack recycling
Should be fixed. Try again with ./mach gtest
@@ -595,9 +632,23 @@
373990 Potential shift left overflow in guest_arm_toIR.c
[suggested fix available]
-**
-374963 increase valgrind's load address to prevent mmap failure
-maybe change to 0x5800'0000
+*
+377966 disInstr(arm64): unhandled instruction 0xD50B7425
+
+*
+378430 www: update Valgrind alias mirrors
+
+*
+378622 False positive with GCC 6.3.1 and -funswitch-loops (-O3)
+
+*
+378627 False positive with GCC 6.3.1 and -fno-ipa-cp-clone (-O3)
+
+*
+378892 Unhandled amd64-linux syscall: 324
+
+*
+379525 Support more x86 nop opcodes
*
n-i-bz Remove limit on strd's negative immediates
|
|
From: <sv...@va...> - 2017-05-10 06:59:41
|
Author: sewardj
Date: Wed May 10 07:59:34 2017
New Revision: 16350
Log:
Update and prioritise fix-list for 3.13.
Modified:
trunk/docs/internals/3_12_BUGSTATUS.txt
Modified: trunk/docs/internals/3_12_BUGSTATUS.txt
==============================================================================
--- trunk/docs/internals/3_12_BUGSTATUS.txt (original)
+++ trunk/docs/internals/3_12_BUGSTATUS.txt Wed May 10 07:59:34 2017
@@ -483,49 +483,127 @@
========================================================================
========================================================================
========================================================================
-Should take in:
+Should fix for 3.13:
+** = higher priority, do these first
+* = lower priority, do these if time available
+
+**
+352364 ppc64: --expensive-definedness-checks=yes is not quite working here
+
+**
360415 amd64 instructions ADCX and ADOX are not implemented in VEX
[has a plausible patch]
-339596 AMD64 xop instructions unsupported. vex amd64->IR: unhandled instruction bytes: 0x8F 0xE8 0x78 0xCD 0xC1 0x4 0xC5 0xF9
- [has plausible patches]
+**
+360429 Warning: noted but unhandled ioctl 0x530d with no size/direction hints.
+ (has patch, should take)
-322935 disInstr(arm): unhandled instruction: 0xF1010200, valgrind: Unrecognised instruction on Raspbian
- [should document that Raspian is not supported]
+**
+362223 assertion failed when .valgrindrc is a directory instead of a file
+ [really easy to fix]
-360429 Warning: noted but unhandled ioctl 0x530d with no size/direction hints.
- [has patch, should take]
+**
+(carried over)
+367543 bt/btc/btr/bts x86/x86_64 instructions are poorly-handled wrt flags
+ [Z flag behaviour is wrong]
-368791 unhandled syscall: 167 (swapon, amd64-linux)
- [hoist mips64-linux specific wrapper as a linux specific one]
+**
+(carried over)
+368507 valgrind throws std::bad_alloc on memory allocations larger
+ than 34255421416 bytes
+ (increase usable address space post release, on trunk)
+
+**
+368868 disInstr(arm64): unhandled instruction 0xD53BE000 = cntfrq_el0 (ARMv8)
+ (should fix this for 3.12.1)
+
+**
+369459 valgrind on arm64 violates the ARMv8 spec (ldxr/stxr)
+ (is mostly fixed)
+
+**
+370028 Reduce the number of compiler warnings on MIPS platforms
+(easy patch)
+
+**
+371491 handleAddrOverrides() is truncating the segment base address when
+ ASO prefix is used
+ [has patch, easy fix]
+
+**
+371503 disInstr(arm64): unhandled instruction 0xF89F0000
+
+**
+372188 vex amd64->IR: 0x66 0xF 0x3A 0x62 0x4A 0x10 0x10 0x48 (PCMPxSTRx $0x10)
+**
+372828 vex amd64->IR: 0x66 0x4D 0xF 0x38 0xF6 0xD2 0x66 0x4D
+
+**
+377066 Some Valgrind unit tests fail to compile on Ubuntu 16.10 with
+ PIE enabled by default
+ [Ivosh will fix it as it is annoying]
+
+**
+n-i-bz major perf problems w/ stack registration + stack recycling
+Should be fixed. Try again with ./mach gtest
+
+*
+371989 PCMPISTRM $0x72 validity bit propagation is imprecise
+(at least comment on it)
+
+*
+322935 disInstr(arm): unhandled instruction: 0xF1010200, valgrind:
+ Unrecognised instruction on Raspbian
+ [should document that Raspian is not supported]
+
+*
+(carried over)
+353192 Debug info/data section not detected on AMD64
+ [To do with rwx, combined code+data sections]
+
+*
+(carried over)
+358980 32 byte leak reported when code uses dlopen and links against pthread
+
+*
+(carried over)
+364279 False "Uninitialized" on atomic_compare_exchange
+
+*
368529 Android arm target link error, missing atexit and pthread_atfork
[has patch, should take]
-362223 assertion failed when .valgrindrc is a directory instead of a file
- [really easy to fix]
+*
+368791 unhandled syscall: 167 (swapon, amd64-linux)
+ [hoist mips64-linux specific wrapper as a linux specific one]
+*
369723 __builtin_longjmp not supported in clang/llvm on Android arm64 target
[has patch at android-review.googlesource.com]
-371491 handleAddrOverrides() is truncating the segment base address when
- ASO prefix is used
- [has patch, easy fix]
+*
+369854 Valgrind reports an Invalid Read in __intel_new_memcpy
+ Should be handled by --partial-loads-ok=yes
+
+*
+371396 helgrind and drd pth_cond_destroy_busy testcase hang with
+ new glibc cond var implementation (workaround committed as 16097)
+*
373990 Potential shift left overflow in guest_arm_toIR.c
[suggested fix available]
+**
374963 increase valgrind's load address to prevent mmap failure
- [has patch, requested documentation update]
+maybe change to 0x5800'0000
-377066 Some Valgrind unit tests fail to compile on Ubuntu 16.10 with
- PIE enabled by default
- [Ivosh will fix it as it is annoying]
+*
+n-i-bz Remove limit on strd's negative immediates
+ [dev@, Michael Daniels, 19 Nov 2015, easy fix, should land]
-368507 valgrind throws std::bad_alloc on memory allocations larger
- than 34255421416 bytes
- [should take in after 3.13]
+--------------------
========================================================================
========================================================================
|
Author: iraisr
Date: Wed May 10 06:43:03 2017
New Revision: 16349
Log:
Fix compilation problems with some unit tests on Ubuntu 16.10+.
Compiler produces position independent executables (PIE) by default
which gets in the way of some unit tests.
Fixes BZ#377066.
Modified:
trunk/NEWS
trunk/configure.ac
trunk/exp-bbv/tests/amd64-linux/Makefile.am
trunk/memcheck/tests/amd64-linux/Makefile.am
trunk/memcheck/tests/amd64/Makefile.am
trunk/none/tests/amd64/Makefile.am
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed May 10 06:43:03 2017
@@ -156,6 +156,8 @@
== 371668
376956 syswrap of SNDDRV and DRM_IOCTL_VERSION causing some addresses
to be wrongly marked as addressable
+377066 Some Valgrind unit tests fail to compile on Ubuntu 16.10 with
+ PIE enabled by default
377376 memcheck/tests/linux/getregset fails with glibc2.24
377427 PPC64, lxv instruction failing on odd destination register
377478 PPC64: ISA 3.0 setup fixes
Modified: trunk/configure.ac
==============================================================================
--- trunk/configure.ac (original)
+++ trunk/configure.ac Wed May 10 06:43:03 2017
@@ -2177,6 +2177,28 @@
AM_CONDITIONAL([HAVE_ASM_CONSTRAINT_P], [test x$ac_have_asm_constraint_p = xyes])
+# Does this compiler support -no-pie?
+# On Ubuntu 16.10+, gcc produces position independent executables (PIE) by
+# default. However this gets in the way with some tests, we use -no-pie
+# for these.
+
+AC_MSG_CHECKING([if gcc accepts -no-pie])
+
+safe_CFLAGS=$CFLAGS
+CFLAGS="-no-pie"
+
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ]], [[
+ return 0;
+]])], [
+AC_SUBST([FLAG_NO_PIE], ["-no-pie"])
+AC_MSG_RESULT([yes])
+], [
+AC_SUBST([FLAG_NO_PIE], [""])
+AC_MSG_RESULT([no])
+])
+CFLAGS=$safe_CFLAGS
+
+
# We want to use use the -Ttext-segment option to the linker.
# GNU (bfd) ld supports this directly. Newer GNU gold linkers
# support it as an alias of -Ttext. Sadly GNU (bfd) ld's -Ttext
Modified: trunk/exp-bbv/tests/amd64-linux/Makefile.am
==============================================================================
--- trunk/exp-bbv/tests/amd64-linux/Makefile.am (original)
+++ trunk/exp-bbv/tests/amd64-linux/Makefile.am Wed May 10 06:43:03 2017
@@ -40,3 +40,10 @@
check_PROGRAMS += ll
ll_SOURCES = ll.S
endif
+
+clone_test_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+complex_rep_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+fldcw_check_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+ll_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+million_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+rep_prefix_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
Modified: trunk/memcheck/tests/amd64-linux/Makefile.am
==============================================================================
--- trunk/memcheck/tests/amd64-linux/Makefile.am (original)
+++ trunk/memcheck/tests/amd64-linux/Makefile.am Wed May 10 06:43:03 2017
@@ -23,4 +23,4 @@
AM_CCASFLAGS += @FLAG_M64@
defcfaexpr_SOURCES = defcfaexpr.S
-
+defcfaexpr_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
Modified: trunk/memcheck/tests/amd64/Makefile.am
==============================================================================
--- trunk/memcheck/tests/amd64/Makefile.am (original)
+++ trunk/memcheck/tests/amd64/Makefile.am Wed May 10 06:43:03 2017
@@ -63,6 +63,7 @@
AM_CXXFLAGS += @FLAG_M64@
AM_CCASFLAGS += @FLAG_M64@
+fxsave_amd64_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
insn_pcmpistri_CFLAGS = $(AM_CFLAGS)
if VGCONF_OS_IS_SOLARIS
insn_pcmpistri_CFLAGS += --std=c99
@@ -70,4 +71,4 @@
more_x87_fp_CFLAGS = $(AM_CFLAGS) -O -ffast-math -mfpmath=387 \
-mfancy-math-387
more_x87_fp_LDADD = -lm
-
+shr_edx_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
Modified: trunk/none/tests/amd64/Makefile.am
==============================================================================
--- trunk/none/tests/amd64/Makefile.am (original)
+++ trunk/none/tests/amd64/Makefile.am Wed May 10 06:43:03 2017
@@ -172,7 +172,9 @@
# generic C ones
amd64locked_CFLAGS = $(AM_CFLAGS) -O
bug132918_LDADD = -lm
-fxtract_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_OVERFLOW@
+cmpxchg_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+fcmovnu_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+fxtract_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_OVERFLOW@ @FLAG_NO_PIE@
insn_basic_SOURCES = insn_basic.def
insn_basic_LDADD = -lm
insn_mmx_SOURCES = insn_mmx.def
@@ -194,6 +196,10 @@
fma4_CFLAGS += -D__EXTENSIONS__
endif
fma4_LDADD = -lm
+jrcxz_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+looper_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+sbbmisc_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
+shrld_CFLAGS = $(AM_CFLAGS) @FLAG_NO_PIE@
.def.c: $(srcdir)/gen_insn_test.pl
$(PERL) $(srcdir)/gen_insn_test.pl < $< > $@
|
|
From: <sv...@va...> - 2017-05-10 05:39:13
|
Author: iraisr
Date: Wed May 10 06:38:57 2017
New Revision: 16348
Log:
Reduce the number of compiler warnings on MIPS platforms.
Patch by: Aleksandar Rikalo <ale...@im...>
Partially fixes BZ#370028.
Modified:
trunk/coregrind/m_libcbase.c
Modified: trunk/coregrind/m_libcbase.c
==============================================================================
--- trunk/coregrind/m_libcbase.c (original)
+++ trunk/coregrind/m_libcbase.c Wed May 10 06:38:57 2017
@@ -753,24 +753,26 @@
d++;
sz--;
}
+ UInt* d4 = ASSUME_ALIGNED(UInt*, d);
if (sz == 0)
return destV;
c4 = uc;
c4 |= (c4 << 8);
c4 |= (c4 << 16);
while (sz >= 16) {
- ((UInt*)d)[0] = c4;
- ((UInt*)d)[1] = c4;
- ((UInt*)d)[2] = c4;
- ((UInt*)d)[3] = c4;
- d += 16;
+ d4[0] = c4;
+ d4[1] = c4;
+ d4[2] = c4;
+ d4[3] = c4;
+ d4 += 4;
sz -= 16;
}
while (sz >= 4) {
- ((UInt*)d)[0] = c4;
- d += 4;
+ d4[0] = c4;
+ d4 += 1;
sz -= 4;
}
+ d = (UChar*) d4;
while (sz >= 1) {
d[0] = c;
d++;
@@ -824,7 +826,8 @@
#define BM_SWAP(a, b) \
swaptype != 0 \
? bm_swapfunc(a, b, es, swaptype) \
- : (void)BM_EXCH(*(Word*)(a), *(Word*)(b), t)
+ : (void)BM_EXCH(*ASSUME_ALIGNED(Word*, (a)), \
+ *ASSUME_ALIGNED(Word*, (b)), t)
#define BM_VECSWAP(a, b, n) \
if (n > 0) bm_swapfunc(a, b, n, swaptype)
@@ -833,7 +836,7 @@
if (swaptype != 0) \
pv = a, BM_SWAP(pv, pm); \
else \
- pv = (Char*)&v, v = *(Word*)pm
+ pv = (Char*)&v, v = *ASSUME_ALIGNED(Word*, pm)
static Char* bm_med3 ( Char* a, Char* b, Char* c,
Int (*cmp)(const void*, const void*) ) {
@@ -848,7 +851,7 @@
Word t;
for ( ; n > 0; a += sizeof(Word), b += sizeof(Word),
n -= sizeof(Word))
- BM_EXCH(*(Word*)a, *(Word*)b, t);
+ BM_EXCH(*ASSUME_ALIGNED(Word*, a), *ASSUME_ALIGNED(Word*, b), t);
} else {
Char t;
for ( ; n > 0; a += 1, b += 1, n -= 1)
|