From: David Miller <davem@davemloft.net>
To: sparclinux@vger.kernel.org
Subject: Re: [RFT] [SPARC] Emulate cmpxchg like parisc
Date: Sat, 26 May 2007 22:46:35 +0000 [thread overview]
Message-ID: <20070526.154635.71109810.davem@davemloft.net> (raw)
In-Reply-To: <20070525201143.GB14171@fattire.cabal.ca>
From: Kyle McMartin <kyle@parisc-linux.org>
Date: Sat, 26 May 2007 10:45:09 -0400
> On Fri, May 25, 2007 at 10:00:36PM -0700, David Miller wrote:
> > > After some minor fixes this builds, and the DRM drivers also
> > > build again. I cannot test this since I do not have a machine with
> > > PCI or these cards.
> > > Removed your name in the comment, as that went out of fashion after
> > > we started using proper versioning systems.
> > >
> > > I've got a ppc->sparc32 compiler if that would help...
> >
> > So how in the world is something like this going to "work" with DRM?
> > Userland cannot disable interrupts and it can't take the magic lock
> > the kernel uses to provide mutual exclusion for the emulated
> > cmpxchg().
> >
>
> Hi David,
>
> My knowledge of the DRM is weak, but as I understand it, the only time
> it is used is by the ioctl handlers, and not by userspace. I've added
> Dave Airlie to the CC list, hopefully he can enlighten us as to where
> else cmpxchg is used.
>
> > Unless something %100 inside of the kernel will be the only consumers
> > of this, I'd recommend not adding it. You can't let anything part of
> > a userland API try to make use of it, and DRM definitely falls into
> > that category.
> >
>
> istr there was a contentious thread on linux-arch about using cmpxchg in
> generic code a while ago. So it's possible architectures with crappy
> atomic support will need some kind of hack like this to even be able to
> use generic code in the future.
For purely kernel stuff it's fine, because the lock and the interrupt
disabling will be used consistently by all accesses.
But the words that operate on cmpxchg() in DRM are exported to
userspace, and therefore cannot make use of the locking scheme
that atomically challenged platforms need to make use of in
the kernel.
next prev parent reply other threads:[~2007-05-26 22:46 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-25 20:11 [RFT] [SPARC] Emulate cmpxchg like parisc Kyle McMartin
2007-05-26 0:24 ` Martin Habets
2007-05-26 5:00 ` David Miller
2007-05-26 5:14 ` Tom "spot" Callaway
2007-05-26 14:45 ` Kyle McMartin
2007-05-26 19:39 ` Martin Habets
2007-05-26 20:32 ` Dave Airlie
2007-05-26 22:46 ` David Miller [this message]
2007-05-26 22:59 ` David Miller
2007-05-26 23:00 ` David Miller
2007-05-26 23:41 ` Kyle McMartin
2007-05-27 0:04 ` David Miller
2007-05-28 0:07 ` Martin Habets
2007-05-28 2:49 ` David Miller
2007-05-28 3:11 ` Kyle McMartin
2007-05-28 3:16 ` David Miller
2007-05-28 23:37 ` Martin Habets
2007-05-29 8:12 ` David Miller
2007-05-29 13:18 ` Kyle McMartin
2007-05-29 20:30 ` Martin Habets
2007-05-29 20:59 ` David Miller
2007-05-29 21:08 ` Kyle McMartin
2007-05-30 19:38 ` Martin Habets
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=20070526.154635.71109810.davem@davemloft.net \
--to=davem@davemloft.net \
--cc=sparclinux@vger.kernel.org \
/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.