From: Martin Habets <errandir_news@mph.eclipse.co.uk>
To: sparclinux@vger.kernel.org
Subject: Re: [RFT] [SPARC] Emulate cmpxchg like parisc
Date: Sat, 26 May 2007 19:39:09 +0000 [thread overview]
Message-ID: <20070526193908.GA18103@palantir8> (raw)
In-Reply-To: <20070525201143.GB14171@fattire.cabal.ca>
On Fri, May 25, 2007 at 10:00:36PM -0700, David Miller wrote:
> From: Martin Habets <errandir_news@mph.eclipse.co.uk>
> Date: Sat, 26 May 2007 01:24:40 +0100
>
> > Hi Kyle,
> >
> > 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?
Work? It's not going to work. DRM checks the architecture in
drm_cpu_valid(), and won't run I guess.
> Userland cannot disable interrupts and it can't take the magic lock
> the kernel uses to provide mutual exclusion for the emulated
> cmpxchg().
>
> All userland can do is not try to use the atomic operations and always
> go into the kernel, which defeats the entire point of the cmpxchg().
>
> 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.
>
> Sparc 32-bit barely has PCI let alone 3D graphics cards.
>
> If it's a build issue, simply disallow DRM to be turned on for
> SPARC32.
LOL, that was my initial approach until I saw Kyle's code.
Here's the patch I was preparing for that:
---
The DRM code does not build clean for sparc32 because it depends on
cmpxchg() which is not available. Even if it would build, it would
not run anyways because of the check in drm_cpu_valid().
So the best solution is to remove DRM for sparc32.
Patch against 2.6.21 attached.
Martin
Signed-off-by: Martin Habets <errandir_news@mph.eclipse.co.uk>
---
Index: 2.6.21_drm/drivers/char/drm/Kconfig
=================================--- 2.6.21_drm.orig/drivers/char/drm/Kconfig 2007-05-23 22:35:32.000000000 +0100
+++ 2.6.21_drm/drivers/char/drm/Kconfig 2007-05-23 22:37:25.000000000 +0100
@@ -6,7 +6,7 @@
#
config DRM
tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
- depends on (AGP || AGP=n) && PCI
+ depends on (AGP || AGP=n) && PCI && !SPARC32
help
Kernel-level support for the Direct Rendering Infrastructure (DRI)
introduced in XFree86 4.0. If you say Y here, you need to select
next prev parent reply other threads:[~2007-05-26 19:39 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 [this message]
2007-05-26 20:32 ` Dave Airlie
2007-05-26 22:46 ` David Miller
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=20070526193908.GA18103@palantir8 \
--to=errandir_news@mph.eclipse.co.uk \
--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.