lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 17 Jul 2008 13:06:52 +0200
From:	Petr Tesarik <ptesarik@...e.cz>
To:	Alexey Dobriyan <adobriyan@...il.com>
Cc:	Roland McGrath <roland@...hat.com>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	Ingo Molnar <mingo@...e.hu>, linux-kernel@...r.kernel.org,
	hch@...radead.org
Subject: Re: [PATCH 01/23] tracehook: add linux/tracehook.h

On Thu, 2008-07-17 at 12:48 +0400, Alexey Dobriyan wrote:
> On Thu, Jul 17, 2008 at 12:27:55AM -0700, Roland McGrath wrote:
> > The aim is to formalize and consolidate all the places that the core
> > kernel code and the arch code now ties into the ptrace implementation.
> > 
> > These patches mostly don't cause any functional change.  They just
> > move the details of ptrace logic out of core code into tracehook.h
> > inlines, where they are mostly compiled away to the same as before.
> 
> > All that changes is that everything is thoroughly documented
> 
> This is fine.
> 
> > and any future reworking of ptrace, or addition of something new,
> > would not have to touch core code all over, just change the tracehook.h
> > inlines.
> 
> And this is suprising wish given one can't predict how exactly those
> "future reworking" will look like.
> 
> > The new linux/ptrace.h inlines are used by the following patches in the
> > new tracehook_*() inlines.  Using these helpers for the ptrace event
> > stops makes it simple to change or disable the old ptrace implementation
> > of these stops conditionally later.
> 
> Call them "utrace_*" from the start?

Ah, maybe justified, because I don't expect any other re-implementation
of the same after utrace is finished, but -- there's still the old
ptrace implementation, so _not_ mentioning utrace seems a bit better to
me.

> > --- a/include/linux/ptrace.h
> > +++ b/include/linux/ptrace.h
> > @@ -121,6 +121,39 @@ static inline void ptrace_unlink(struct task_struct *child)
> >  int generic_ptrace_peekdata(struct task_struct *tsk, long addr, long data);
> >  int generic_ptrace_pokedata(struct task_struct *tsk, long addr, long data);
> >  
> > +/**
> > + * task_ptrace - return %PT_* flags that apply to a task
> > + * @task:	pointer to &task_struct in question
> > + *
> > + * Returns the %PT_* flags that apply to @task.
> > + */
> > +static inline int task_ptrace(struct task_struct *task)
> > +{
> > +	return task->ptrace;
> > +}
> 
> Pointless 1:1 wrapper unless you're going to #ifdef ->ptrace later.

And that's exactly what's going to happen. Look at Roland's git. ;)

Petr


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ