>> +EXPORT_SYMBOL(ex_handler_default); > > Why not EXPORT_SYMBOL_GPL() ? > > We do not care about external modules. I thought the guideline was that new features are GPL, but changes to existing features shouldn't break by adding new GPL requirements. The point is moot though because the shared hallucinations wore off this morning and I realized that having the "handler" be a pointer to a function can't work. We're storing the 32-bit signed offset from the extable to the target address. This is fine if the table and the address are close together. But for modules we have an exception table wherever vmalloc() loaded the module, and a function back in the base kernel. So back to your ".long 0" for the default case. And if we want to allow modules to use any of the new handlers, then we can't use relative function pointers for them either. So I'm looking at making the new field just a simple integer and using it to index an array of function pointers (like in v7). Unless someone has a better idea? -Tony ��.n������g����a����&ޖ)���)��h���&������梷�����Ǟ�m������)������^�����������v���O��zf������