From: "Sturm, Michael" <michael.sturm@intel.com>
To: mark.kettenis@xs4all.nl, palves@redhat.com, eliz@gnu.org
Cc: gdb-patches@sourceware.org
Subject: [ping][PATCH v4 0/5] Add support for PKRU register to GDB and GDBServer.
Date: Tue, 07 Feb 2017 14:29:00 -0000 [thread overview]
Message-ID: <5899D9BF.6080404@intel.com> (raw)
In-Reply-To: <1485954205-18536-1-git-send-email-michael.sturm@intel.com>
Hello Pedro, All,
Can this version of the series be merged? Looking forward to your
review/comments!
Thanks and Regards,
Michael
On 01/02/2017 14:03, Michael Sturm wrote:
> This patch series adds support for the registers added by the
> Memory Protection Keys for Userspace (PKU aka PKEYs).
> Native and remote debugging are covered by this patch.
>
> The feedback I got during the first review of this patch raised
> questions regarding the naming of XSTATE masks and target descriptors.
> in addition, Walfred started working on patches that included renaming
> of XSTATE masks and target descriptors. These patches have been submitted
> by now.
> (https://sourceware.org/ml/gdb-patches/2016-04/msg00329.html)
> (https://sourceware.org/ml/gdb-patches/2016-04/msg00328.html)
>
> Adressed in V4:
> Updated copyrights to 2017 throughout the series.
>
> * [PATCH v3 2/5] Change xstate_bv handling to use 8 bytes of data
> Moved explanatory text from Changelog to commit log.
> * [PATCH v3 3/5] Rename target descriptions to reflect actual content
> Removed unneccessary new expedites. Added fs_base/gs_base registers.
> * [PATCH v3 5/5] Add support for Intel PKRU register to GDB and GDBserver
> Changed returned type of i386_pkru_regnum_p to bool.
> Removed "Contributed by..." text.
> Include stddef.h instead of stdio.h in test source file.
> Check for actual value in pkru read back test.
>
> Adressed in V3:
> * [PATCH v2 1/5] Sync up x86-gcc-cpuid.h with cpuid.h from gcc-6 branch
> Added copyright blurb that got lost by accident.
> * PATCH v2 2/5] Change xstate_bv handling to use 8 bytes of data
> Shortened description of changes in Changelog.
> * [PATCH v2 5/5] Add support for Intel PKRU register to GDB and GDBserver
> Corrected spurious change in NEWS and some missing spaces in comments.
> Removed some code in the test and improved the output as pointed out by Luis..
>
> Adressed in V2:
> * [Patch v2 1/5] New patch to sync cpuid bits with GCC as suggested by
> Pedro.
> * [PATCH v2 2/5] Change xstate_bv handling to use 8 bytes of data:
> Read/write xstate_bc values using endianess-aware functions.
> * [PATCH v2 3/5] Rename target descriptions to reflect actual content:
> Addressed comments by Pedro regarding wording in Changelog.
> * [PATCH v2 4/5] Add target description for avx-avx512:
> Addressed comments by Pedro regarding Changelog.
> Fixed wording of comments regarding MPX on x32.
> Removed MPX from comment in x32*.xml files.
> * [PATCH v2 5/5] Add support for Intel PKRU register to GDB and GDBserver:
> Adressed comments by Pedro regarding Changelog.
> Added missing renames in GDBserver ipa-related files.
> Changed test for PKU following comments by Pedro.
>
>
> I'd like to answer Pedro's question regarding the approach of
> adding PKRU to amd64-avx-mpx_avx512-* tdesc and renaming _without_
> keeping a copy without PKU:
> Q: "Is that really the right thing to do? What about machines that
> _don't_ support pkru? Shouldn't we keep the older descriptions
> for those?
> A: The first machine to support PKU will have the xstate mask
> X86_XSTATE_AVX_MPX_AVX512_PKU_MASK.
> The nearest existing xstate masks without PKU are
> X86_XSTATE_AVX_AVX512_MASK, which was introduced in patch 4 of
> this series, and X86_XSTATE_AVX_MPX_MASK.
> I've only kept X86_XSTATE_AVX_MPX_AVX512_MASK in patch 4,
> because it is reused in patch 5 to be renamed to
> X86_XSTATE_AVX_MPX_AVX512_PKU_MASK.
>
> Michael Sturm (5):
> Sync up x86-gcc-cpuid.h with cpuid.h from gcc-6 branch.
> Change xstate_bv handling to use 8 bytes of data.
> Rename target descriptions to reflect actual content of description.
> Add target description for avx-avx512.
> Add support for Intel PKRU register to GDB and GDBserver.
>
> gdb/NEWS | 4 +
> gdb/amd64-linux-nat.c | 1 +
> gdb/amd64-linux-tdep.c | 30 ++-
> gdb/amd64-linux-tdep.h | 7 +-
> gdb/amd64-tdep.c | 28 +-
> gdb/amd64-tdep.h | 1 +
> gdb/common/x86-xstate.h | 21 +-
> gdb/doc/gdb.texinfo | 4 +
> gdb/features/Makefile | 64 +++--
> gdb/features/i386/32bit-pkeys.xml | 13 +
> gdb/features/i386/64bit-pkeys.xml | 13 +
> gdb/features/i386/amd64-avx-avx512-linux.c | 288 +++++++++++++++++++++
> gdb/features/i386/amd64-avx-avx512-linux.xml | 20 ++
> gdb/features/i386/amd64-avx-avx512.c | 279 ++++++++++++++++++++
> gdb/features/i386/amd64-avx-avx512.xml | 17 ++
> ...12-linux.c => amd64-avx-mpx-avx512-pku-linux.c} | 11 +-
> ...inux.xml => amd64-avx-mpx-avx512-pku-linux.xml} | 4 +-
> .../{amd64-avx512.c => amd64-avx-mpx-avx512-pku.c} | 11 +-
> ...d64-avx512.xml => amd64-avx-mpx-avx512-pku.xml} | 3 +-
> gdb/features/i386/i386-avx-avx512-linux.c | 170 ++++++++++++
> gdb/features/i386/i386-avx-avx512-linux.xml | 19 ++
> gdb/features/i386/i386-avx-avx512.c | 165 ++++++++++++
> gdb/features/i386/i386-avx-avx512.xml | 17 ++
> ...512-linux.c => i386-avx-mpx-avx512-pku-linux.c} | 11 +-
> ...linux.xml => i386-avx-mpx-avx512-pku-linux.xml} | 4 +-
> .../{i386-avx512.c => i386-avx-mpx-avx512-pku.c} | 11 +-
> ...i386-avx512.xml => i386-avx-mpx-avx512-pku.xml} | 3 +-
> .../{x32-avx512-linux.c => x32-avx-avx512-linux.c} | 192 ++++++--------
> ...2-avx512-linux.xml => x32-avx-avx512-linux.xml} | 3 +-
> .../i386/{x32-avx512.c => x32-avx-avx512.c} | 190 ++++++--------
> .../i386/{x32-avx512.xml => x32-avx-avx512.xml} | 3 +-
> gdb/gdbserver/Makefile.in | 50 ++--
> gdb/gdbserver/configure.srv | 25 +-
> gdb/gdbserver/i387-fp.c | 51 +++-
> gdb/gdbserver/linux-amd64-ipa.c | 15 +-
> gdb/gdbserver/linux-i386-ipa.c | 10 +-
> gdb/gdbserver/linux-x86-low.c | 45 +++-
> gdb/gdbserver/linux-x86-tdesc.h | 29 ++-
> gdb/i386-linux-nat.c | 2 +-
> gdb/i386-linux-tdep.c | 14 +-
> gdb/i386-linux-tdep.h | 6 +-
> gdb/i386-tdep.c | 76 +++++-
> gdb/i386-tdep.h | 14 +-
> gdb/i387-tdep.c | 116 ++++++++-
> gdb/i387-tdep.h | 5 +
> gdb/nat/x86-gcc-cpuid.h | 108 ++++----
> .../{x32-avx512.dat => amd64-avx-avx512-linux.dat} | 15 +-
> .../{amd64-avx512.dat => amd64-avx-avx512.dat} | 12 +-
> ...inux.dat => amd64-avx-mpx-avx512-pku-linux.dat} | 6 +-
> ...x512-linux.dat => amd64-avx-mpx-avx512-pku.dat} | 7 +-
> gdb/regformats/i386/i386-avx-avx512-linux.dat | 71 +++++
> gdb/regformats/i386/i386-avx-avx512.dat | 70 +++++
> ...vx512.dat => i386-avx-mpx-avx512-pku-linux.dat} | 8 +-
> ...vx512-linux.dat => i386-avx-mpx-avx512-pku.dat} | 8 +-
> gdb/regformats/i386/x32-avx-avx512-linux.dat | 153 +++++++++++
> gdb/regformats/i386/x32-avx-avx512.dat | 150 +++++++++++
> gdb/testsuite/gdb.arch/i386-pkru.c | 90 +++++++
> gdb/testsuite/gdb.arch/i386-pkru.exp | 69 +++++
> gdb/x86-linux-nat.c | 20 +-
> 59 files changed, 2351 insertions(+), 501 deletions(-)
> create mode 100644 gdb/features/i386/32bit-pkeys.xml
> create mode 100644 gdb/features/i386/64bit-pkeys.xml
> create mode 100644 gdb/features/i386/amd64-avx-avx512-linux.c
> create mode 100644 gdb/features/i386/amd64-avx-avx512-linux.xml
> create mode 100644 gdb/features/i386/amd64-avx-avx512.c
> create mode 100644 gdb/features/i386/amd64-avx-avx512.xml
> rename gdb/features/i386/{amd64-avx512-linux.c => amd64-avx-mpx-avx512-pku-linux.c} (97%)
> rename gdb/features/i386/{amd64-avx512-linux.xml => amd64-avx-mpx-avx512-pku-linux.xml} (83%)
> rename gdb/features/i386/{amd64-avx512.c => amd64-avx-mpx-avx512-pku.c} (98%)
> rename gdb/features/i386/{amd64-avx512.xml => amd64-avx-mpx-avx512-pku.xml} (87%)
> create mode 100644 gdb/features/i386/i386-avx-avx512-linux.c
> create mode 100644 gdb/features/i386/i386-avx-avx512-linux.xml
> create mode 100644 gdb/features/i386/i386-avx-avx512.c
> create mode 100644 gdb/features/i386/i386-avx-avx512.xml
> rename gdb/features/i386/{i386-avx512-linux.c => i386-avx-mpx-avx512-pku-linux.c} (96%)
> rename gdb/features/i386/{i386-avx512-linux.xml => i386-avx-mpx-avx512-pku-linux.xml} (82%)
> rename gdb/features/i386/{i386-avx512.c => i386-avx-mpx-avx512-pku.c} (96%)
> rename gdb/features/i386/{i386-avx512.xml => i386-avx-mpx-avx512-pku.xml} (87%)
> rename gdb/features/i386/{x32-avx512-linux.c => x32-avx-avx512-linux.c} (61%)
> rename gdb/features/i386/{x32-avx512-linux.xml => x32-avx-avx512-linux.xml} (85%)
> rename gdb/features/i386/{x32-avx512.c => x32-avx-avx512.c} (60%)
> rename gdb/features/i386/{x32-avx512.xml => x32-avx-avx512.xml} (89%)
> rename gdb/regformats/i386/{x32-avx512.dat => amd64-avx-avx512-linux.dat} (90%)
> rename gdb/regformats/i386/{amd64-avx512.dat => amd64-avx-avx512.dat} (90%)
> rename gdb/regformats/i386/{x32-avx512-linux.dat => amd64-avx-mpx-avx512-pku-linux.dat} (91%)
> rename gdb/regformats/i386/{amd64-avx512-linux.dat => amd64-avx-mpx-avx512-pku.dat} (92%)
> create mode 100644 gdb/regformats/i386/i386-avx-avx512-linux.dat
> create mode 100644 gdb/regformats/i386/i386-avx-avx512.dat
> rename gdb/regformats/i386/{i386-avx512.dat => i386-avx-mpx-avx512-pku-linux.dat} (81%)
> rename gdb/regformats/i386/{i386-avx512-linux.dat => i386-avx-mpx-avx512-pku.dat} (84%)
> create mode 100644 gdb/regformats/i386/x32-avx-avx512-linux.dat
> create mode 100644 gdb/regformats/i386/x32-avx-avx512.dat
> create mode 100644 gdb/testsuite/gdb.arch/i386-pkru.c
> create mode 100644 gdb/testsuite/gdb.arch/i386-pkru.exp
>
Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Christian Lamprechter
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928
next prev parent reply other threads:[~2017-02-07 14:29 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-01 13:04 [PATCH " Michael Sturm
2017-02-01 13:03 ` [PATCH 3/5] Rename target descriptions to reflect actual content of description Michael Sturm
2017-02-01 13:03 ` [PATCH 1/5] Sync up x86-gcc-cpuid.h with cpuid.h from gcc-6 branch Michael Sturm
2017-02-01 13:03 ` [PATCH 2/5] Change xstate_bv handling to use 8 bytes of data Michael Sturm
2017-02-01 13:04 ` [PATCH 4/5] Add target description for avx-avx512 Michael Sturm
2017-02-10 15:44 ` Pedro Alves
2017-02-01 13:04 ` [PATCH 5/5] Add support for Intel PKRU register to GDB and GDBserver Michael Sturm
2017-02-01 13:09 ` Eli Zaretskii
2017-02-03 9:20 ` Sturm, Michael
2017-02-10 15:46 ` Pedro Alves
2017-06-19 20:15 ` Simon Marchi
2017-06-20 7:07 ` Tedeschi, Walfred
2017-06-20 8:49 ` Simon Marchi
2017-06-20 10:07 ` Yao Qi
2017-06-20 10:53 ` Tedeschi, Walfred
2017-06-20 11:03 ` Yao Qi
2017-06-20 11:04 ` Tedeschi, Walfred
2017-06-22 11:17 ` Tedeschi, Walfred
[not found] ` <CAH=s-POWw-duRWLMAGrU_gqWfH5HEo9eCiRK-y7NgBt8jFp0_Q@mail.gmail.com>
2017-06-22 11:53 ` Tedeschi, Walfred
2017-02-07 14:29 ` Sturm, Michael [this message]
2017-02-17 13:47 ` [pushed] Add support for PKRU register to GDB and GDBServer Sturm, Michael
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5899D9BF.6080404@intel.com \
--to=michael.sturm@intel.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
--cc=mark.kettenis@xs4all.nl \
--cc=palves@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox