This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Shallow copy error in scheduler deps?


On 10/20/2015 03:43 AM, Konstantin Vladimirov wrote:
Hi,

--- sched-int.h ---

/* Information about the dependency.  */
struct _dep
{
....
   struct dep_replacement *replace;
....
};

typedef dep_def *dep_t;

--- sched-deps.c ---

static void
copy_dep (dep_t to, dep_t from)
{
   memcpy (to, from, sizeof (*to)); // oops?
}

This might be source of double free problems, etc. I can not build
exact reproduction for x86 or arm, but I stepped on it in scheduler
code for private backend. Is it worth filing as a bug, or is it part
of design?
I don't think it's by design. It'll certainly help if you can thoroughly describe the path by which you get the double-free.

Conceptually I agree with you, but I'd have to sit down with a debugger to really be sure.

Jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]