On Fri, Mar 20, 2015 at 11:59:41AM +1030, Rusty Russell wrote:
> Quentin Casasnovas <quentin.casasno...@oracle.com> writes:
> > Prints a warning when a section references a section outside a strict
> > white-list.  This will be useful to print a warning if __ex_table
> > references a non-executable section.
> 
> Hi Quentin,
> 
>         Really pleasant to read these patches; nice work!
>

Thanks! :)

> > diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
> > index d439856..7094a57 100644
> > --- a/scripts/mod/modpost.c
> > +++ b/scripts/mod/modpost.c
> > @@ -925,7 +925,8 @@ enum mismatch {
> >  
> >  struct sectioncheck {
> >     const char *fromsec[20];
> > -   const char *tosec[20];
> > +   const char *bad_tosec[20];
> > +   const char *good_tosec[20];
> >     enum mismatch mismatch;
> >     const char *symbol_white_list[20];
> 
> My only gripe is that these fields are undocumented.  You maintain
> the status quo, but some comments indicating what the mean would be
> nice.  Perhaps as a separate patch.
>

Derp, I was sure I had sent a patch following your comment..  Please find
one attached to this e-mail.  It should apply cleanly on top of this
series.

> In case you need it (for the whole series):
>         Acked-by: Rusty Russell <ru...@rustcorp.com.au>
>

Thanks again!

May I aks who's supposed to take the series?  Or maybe it needs more
acking?

Quentin
>From acab15181879a18140ca3afa69776292e830ea72 Mon Sep 17 00:00:00 2001
From: Quentin Casasnovas <quentin.casasno...@oracle.com>
Date: Mon, 13 Apr 2015 10:55:38 +0200
Subject: [PATCH] modpost: document the use of struct section_check.

struct section_check is used as a generic way of describing what
relocations are authorized/forbidden when running modpost.  This commit
tries to describe how each field is used.

Signed-off-by: Quentin Casasnovas <quentin.casasno...@oracle.com>
---
 scripts/mod/modpost.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index dfe9c3c..7b56ae5 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -930,6 +930,26 @@ enum mismatch {
 	EXTABLE_TO_NON_TEXT,
 };
 
+/**
+ * Describe how to match sections on different criterias:
+ *
+ * @fromsec: Array of sections to be matched.
+ *
+ * @bad_tosec: Relocations applied to a section in @fromsec to a section in
+ * this array is forbidden (black-list).  Can be empty.
+ *
+ * @good_tosec: Relocations applied to a section in @fromsec must be
+ * targetting sections in this array (white-list).  Can be empty.
+ *
+ * @mistmatch: Type of mismatch.
+ *
+ * @symbol_white_list: Do not match a relocation to a symbol in this list
+ * even if it is targetting a section in @bad_to_sec.
+ *
+ * @handler: Specific handler to call when a match is found.  If NULL,
+ * default_mismatch_handler() will be called.
+ *
+ */
 struct sectioncheck {
 	const char *fromsec[20];
 	const char *bad_tosec[20];
-- 
2.0.5

Reply via email to