All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ed Tomlinson <tomlins@cam.org>
To: Keith Owens <kaos@ocs.com.au>, tlan@stud.ntnu.no
Cc: Ed Tomlinson <tomlins@cam.org>, linux-kernel@vger.kernel.org
Subject: Re: missing symbol do_softirq in net moduels for pre-2
Date: Sat, 9 Jun 2001 13:20:19 -0400	[thread overview]
Message-ID: <01060913201900.01845@oscar> (raw)
In-Reply-To: <16799.992106264@ocs4.ocs-net>
In-Reply-To: <16799.992106264@ocs4.ocs-net>

On Saturday 09 June 2001 13:04, Keith Owens wrote:
> On Sat, 9 Jun 2001 18:56:24 +0200,
>
> =?iso-8859-1?Q?Thomas_Lang=E5s?= <tlan@stud.ntnu.no> wrote:
> >Keith Owens:
> >> >Built -pre2 and noticed most of the modules in net/* are getting
> >> >a missing symbol for do_softirq.
> >>
> >> http://www.tux.org/lkml/#s8-8
> >
> >I got the same error on -pre1, and tried the info in the link, didn't
> > help:
> >
> >root@test4:/usr/src# depmod -ae
> >depmod: *** Unresolved symbols in
> > /lib/modules/2.4.6-pre1/kernel/net/ipv4/netfilter/ip_tables.o depmod:    
> >     do_softirq
>
> It was missing in 6-pre1.  It should have been fixed in 6-pre2.

The fix to export ksyms for do_softirq is _in_ pre2...  its just not working.

from ksyms in pre2:
/* software interrupts */
EXPORT_SYMBOL(tasklet_hi_vec);
EXPORT_SYMBOL(tasklet_vec);
EXPORT_SYMBOL(bh_task_vec);
EXPORT_SYMBOL(init_bh);
EXPORT_SYMBOL(remove_bh);
EXPORT_SYMBOL(tasklet_init);
EXPORT_SYMBOL(tasklet_kill);
EXPORT_SYMBOL(__run_task_queue);
EXPORT_SYMBOL(do_softirq);
EXPORT_SYMBOL(tasklet_schedule);
EXPORT_SYMBOL(tasklet_hi_schedule);

in the arch code for softirq we now have:

+#define local_bh_enable()                                              \
+do {                                                                   \
+       unsigned int *ptr = &local_bh_count(smp_processor_id());        \
+                                                                       \
+       if (!--*ptr)                                                    \
+               __asm__ __volatile__ (                                  \
+                       "cmpl $0, -8(%0);"                              \
+                       "jnz 2f;"                                       \
+                       "1:;"                                           \
+                                                                       \
+                       ".section .text.lock,\"ax\";"                   \
+                       "2: pushl %%eax; pushl %%ecx; pushl %%edx;"     \
+                       "call do_softirq;"

What has to happen to get assembly code to version the symbol?

Ed Tomlinson

  reply	other threads:[~2001-06-09 17:20 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-06-09 15:07 missing symbol do_softirq in net moduels for pre-2 Ed Tomlinson
2001-06-09 16:17 ` Keith Owens
2001-06-09 16:56   ` Thomas Langås
2001-06-09 17:04     ` Keith Owens
2001-06-09 17:20       ` Ed Tomlinson [this message]
2001-06-09 18:13         ` Wayne Whitney
2001-06-09 18:28           ` Keith Owens
2001-06-09 16:56   ` Wayne Whitney
2001-06-09 17:04     ` Ed Tomlinson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=01060913201900.01845@oscar \
    --to=tomlins@cam.org \
    --cc=kaos@ocs.com.au \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tlan@stud.ntnu.no \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.