linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Till Immanuel Patzschke <tip@inw.de>
To: chas williams <chas@locutus.cmf.nrl.navy.mil>
Cc: Mitchell Blank Jr <mitch@sfgoth.com>,
	linux-atm-general@lists.sourceforge.net,
	linux-kernel@vger.kernel.org
Subject: Re: [ATM] first pass at fixing atm spinlock
Date: Mon, 17 Mar 2003 17:13:38 -0800	[thread overview]
Message-ID: <3E7672C2.635C7D58@inw.de> (raw)
In-Reply-To: 200303172325.h2HNPpGi015350@locutus.cmf.nrl.navy.mil

Hi Chas,

good job, cleaning the ATM stuff up -- on the note below: I've been having lots of
problems w/ the close and "dangeling" vccs, since in my scenarios traffic was
coming in AFTER the close.  I tried to defer the destruction and it got rid of the
bad crashes.  The ones left are more subtle - getting sporadic messages "device
already in use" since close worked, but open fails, since the VCC list is still
linked... (Are you sure - and sorry for asking) there is no place this structure
sleeps and therefor "jumps" the sequence?
Anyway, how about re-doing the VCC stuff mor in the way you did it for the
HE device driver - having an array, indexed by a pvc hash -- and one could easily
move that code into the drivers since it is unlikely to have a receiving PVC on
one card and the sending part (of the same PVC) on a different one...
There is only one ATM card - as far as I know the PCE/A200-E - which allows
arbitrary PVCs.  All others start at 0.0 counting up, or splitting bits like the
HE...

Besides, I am happy to give your changes a try on our SMP system (2.4.20) once you
have a version for 2.4. ready.  I am using PPPoA trying to utilise as many PVCs as
possible (up to 4096).

BTW: Have you addressed the difficulty that, depending on the ATM board, some
packet receives are handled while still in the IRQ and others (the newer/better)
ones always go through a tasklet?

Another note on the PPPoA driver -- it creates/destroys the tasklet for each PVC
(on open/close) potentially resulting in lots of allocated tasklet structures if
you do heavy logon/logoff w/ PPPoA.  I have a version having a single tasklet for
doing all the work, but since you've changed some of the locks, I'd like to try it
first before I'll submit.

Keep continuing the you great work!
Thanks

Immanuel
chas williams wrote:

> >sock/vcc combo can't go away while a processor's bh still is using a reference
> >to the vcc.  I think this has been the result of many of the reported SMP
> >crashes (it's probably not that hard to trigger; just close an ATM socket
> >that's receiving a flood of traffic)
>
> i dont know.  i believe all of the adapters do a synchronous close.  after
> the close finishes, no more traffic should arrive for a particular vcc.
> the bottom halfs (halves?) should not have references to vcc after a close()
> for it finishes.


  reply	other threads:[~2003-03-18  1:02 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <OFAFD4106C.6053931B-ON85256CE0.004F1DD6@gdeb.com>
2003-03-17 22:24 ` [ATM] first pass at fixing atm spinlock chas williams
2003-03-17 23:01   ` Mitchell Blank Jr
2003-03-17 23:25     ` chas williams
2003-03-18  1:13       ` Till Immanuel Patzschke [this message]
2003-03-18 16:11         ` chas williams
2003-03-19 10:57       ` Mitchell Blank Jr
2003-03-19 15:13         ` chas williams
2003-03-19 17:11       ` [Linux-ATM-General] " Duncan Sands

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=3E7672C2.635C7D58@inw.de \
    --to=tip@inw.de \
    --cc=chas@locutus.cmf.nrl.navy.mil \
    --cc=linux-atm-general@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mitch@sfgoth.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).