public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "tromey at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c/59850] Support sparse-style pointer address spaces (type attributes)
Date: Thu, 03 Jul 2014 20:36:00 -0000	[thread overview]
Message-ID: <bug-59850-4-RUgmfyocdB@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-59850-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59850

--- Comment #26 from Tom Tromey <tromey at gcc dot gnu.org> ---
(In reply to PaX Team from comment #23)
> some data points based on my experience with the 'checker' gcc plugin in PaX:

Hi.  Thanks for your reply.

I didn't easily find a git repository holding the checker plugin source.
Is it available somewhere?

> 1. the C address space infrastructure available since gcc 4.6 can be sort of
> coerced into implementing the __user/__kernel/etc address spaces and it
> works reasonably well (i'd say even better than sparse as it produces no
> false positives in my experience and caught real bugs such as CVE-2014-0038).

FWIW I looked into the existing C address space stuff in gcc and after
some deliberation decided not to use it.  It wasn't directly applicable
and tricks like taking some subset of the address space values for use
by the attribute would have meant difficult-to-test patches to various
back ends.

Your code apparently hijacks the target hook, which seems pretty clever,
though I guess more suitable in a plugin than in gcc proper.

> 2. __force itself presents a problem as its semantics isn't well defined and
> only sparse knows how to model it. in gcc it cannot be an attribute as
> attributes apply to the outermost variable/etc, e.g., you can't use them on
> a pointee in a pointer context.

Could you elaborate on this?
I think I looked at all the sparse test cases here and I don't recall
encountering any real issues (for address space I had to have a hack to
deal with function return types, but this didn't seem to affect force).
If you have extra tests not in sparse, that would be super.


  parent reply	other threads:[~2014-07-03 20:36 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-17  5:05 [Bug c/59850] New: " hpa at zytor dot com
2014-01-17  8:03 ` [Bug c/59850] " josh at joshtriplett dot org
2014-02-01  5:26 ` tromey at gcc dot gnu.org
2014-02-01 18:39 ` josh at joshtriplett dot org
2014-02-03  8:20 ` tromey at gcc dot gnu.org
2014-02-05 14:45 ` tromey at gcc dot gnu.org
2014-02-05 15:55 ` josh at joshtriplett dot org
2014-02-05 16:50 ` hpa at zytor dot com
2014-02-05 17:51 ` tromey at gcc dot gnu.org
2014-02-05 18:11 ` tromey at gcc dot gnu.org
2014-02-05 20:06 ` josh at joshtriplett dot org
2014-02-05 20:07 ` josh at joshtriplett dot org
2014-02-05 20:08 ` josh at joshtriplett dot org
2014-02-05 20:12 ` tromey at gcc dot gnu.org
2014-02-06  0:08 ` josh at joshtriplett dot org
2014-02-06  4:44 ` hpa at zytor dot com
2014-02-21  3:09 ` tromey at gcc dot gnu.org
2014-02-21  3:37 ` tromey at gcc dot gnu.org
2014-02-21  4:19 ` josh at joshtriplett dot org
2014-02-21 14:58 ` tromey at gcc dot gnu.org
2014-06-27  4:33 ` tromey at gcc dot gnu.org
2014-06-27 11:24 ` manu at gcc dot gnu.org
2014-06-27 14:24 ` manu at gcc dot gnu.org
2014-06-29  2:26 ` tromey at gcc dot gnu.org
2014-07-03 20:36 ` tromey at gcc dot gnu.org [this message]
2014-07-03 20:48 ` josh at joshtriplett dot org
2014-07-03 21:03 ` tromey at gcc dot gnu.org
2014-07-09 14:10 ` tromey at gcc dot gnu.org
2014-07-09 14:31 ` tromey at gcc dot gnu.org
2014-07-30 23:24 ` tromey at gcc dot gnu.org
2014-08-08 16:10 ` tromey at gcc dot gnu.org
2022-09-26 22:47 ` dmalcolm at gcc dot gnu.org
2022-10-03 15:02 ` mpolacek at gcc dot gnu.org
2022-10-03 16:16 ` hpa at zytor dot com

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=bug-59850-4-RUgmfyocdB@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).