Re: exception tables in 2.5.55

From: Greg Ungerer (gerg@snapgear.com)
Date: Sun Jan 12 2003 - 22:12:25 EST


Hi All,

Rusty Russell wrote:
> You can now make kernel/extable.o depend on this configuration option
> (whatever you decide it should be).
>
> And surround kernel/module.c's search_module_extables with the same
> option.
>
> It's trivial, just CC: me when you send to Linus, and I'll re-xmit if
> he drops it.

Heres a patch for it. Pretty strait forward, if everyone is
happy with this I will run with it...

Tested and working on m68knommu architecture.

Regards
Greg

diff -Naur linux-2.5.56/kernel/Makefile linux-2.5.56-uc0/kernel/Makefile
--- linux-2.5.56/kernel/Makefile Sat Jan 11 06:11:36 2003
+++ linux-2.5.56-uc0/kernel/Makefile Mon Jan 13 13:03:45 2003
@@ -10,7 +10,7 @@
              exit.o itimer.o time.o softirq.o resource.o \
              sysctl.o capability.o ptrace.o timer.o user.o \
              signal.o sys.o kmod.o workqueue.o futex.o pid.o \
- rcupdate.o intermodule.o extable.o params.o
+ rcupdate.o intermodule.o params.o

  obj-$(CONFIG_GENERIC_ISA_DMA) += dma.o
  obj-$(CONFIG_SMP) += cpu.o
@@ -22,6 +22,7 @@
  obj-$(CONFIG_BSD_PROCESS_ACCT) += acct.o
  obj-$(CONFIG_SOFTWARE_SUSPEND) += suspend.o
  obj-$(CONFIG_COMPAT) += compat.o
+obj-$(CONFIG_MMU) += extable.o

  ifneq ($(CONFIG_IA64),y)
  # According to Alan Modra <alan@linuxcare.com.au>, the
-fno-omit-frame-pointer is
diff -Naur linux-2.5.56/kernel/module.c linux-2.5.56-uc0/kernel/module.c
--- linux-2.5.56/kernel/module.c Sat Jan 11 06:12:11 2003
+++ linux-2.5.56-uc0/kernel/module.c Mon Jan 13 13:06:00 2003
@@ -1438,6 +1438,7 @@
          .show = m_show
  };

+#ifdef CONFIG_MMU
  /* Given an address, look for it in the module exception tables. */
  const struct exception_table_entry *search_module_extables(unsigned
long addr)
  {
@@ -1460,6 +1461,7 @@
             we cannot unload the module, hence no refcnt needed. */
          return e;
  }
+#endif /* CONFIG_MMU */

  /* Is this a valid kernel address? We don't grab the lock: we are
oopsing. */
  int module_text_address(unsigned long addr)

------------------------------------------------------------------------
Greg Ungerer -- Chief Software Wizard EMAIL: gerg@snapgear.com
SnapGear Pty Ltd PHONE: +61 7 3435 2888
825 Stanley St, FAX: +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia WEB: www.SnapGear.com

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



This archive was generated by hypermail 2b29 : Wed Jan 15 2003 - 22:00:43 EST