Re: [Patch 4/4] module: trim exception table in module_free()

From: Amerigo Wang
Date: Wed May 27 2009 - 01:46:51 EST


Rusty Russell wrote:
__ex_table ends up with two entries:

Contents of section __ex_table:
0000 0c000000 00000000 0e000000 00000000 ................
0010 10000000 0a000000 12000000 0a000000 ................

The first is for the __put_user in .text (extable_not_init()) and the second is for the one in .init.text (init()).

Depending on how the module gets allocated, the one referring to .init.text may be first or last.

Hmm, I understand now. The problem is that we don't know which entries
are for __init, and which are not...

(You can see here why we haven't fixed this: exceptions in __init in modules are rare, perhaps non-existent).
Agreed.
Is it possible to put extable for __init in a separate section?

Thanks for your explanation!

--
To unsubscribe from this list: send the line "unsubscribe linux-alpha" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html