Thread (1 message) 1 message, 1 author, 2007-07-19

Re: [PATCH 2.6.22-git5] via-rhine: Disable rx_copybreak on archs that don't allow unaligned DMA access

From: Andrew Morton <akpm@linux-foundation.org>
Date: 2007-07-19 01:20:00
Also in: linux-arch

(mailing lsits and cc's added - I trust that's OK)

(Please always cc mailing list(s) on patches)

On Sat, 14 Jul 2007 14:10:52 -0500
Dustin Marquess [off-list ref] wrote:
quoted hunk
From: Dustin Marquess <redacted>

Patch to disable the rx_copybreak feature on hardware architectures that
don't allow unaligned DMA access.

#ifdef code taken from tulip_core.c.  Problem pointed out by Ivan
Kokshaysky.

Signed-off-by: Dustin Marquess <redacted>
---

diff -uprN a/drivers/net/via-rhine.c b/drivers/net/via-rhine.c
--- a/drivers/net/via-rhine.c   2007-07-14 13:51:18.475341321 -0500
+++ b/drivers/net/via-rhine.c   2007-07-14 13:56:40.684678999 -0500
@@ -42,7 +42,13 @@ static int max_interrupt_work = 20;

  /* Set the copy breakpoint for the copy-only-tiny-frames scheme.
     Setting to > 1518 effectively disables this feature. */
+#if defined(__alpha__) || defined(__arm__) || defined(__hppa__) \
+       || defined(CONFIG_SPARC) || defined(__ia64__) \
+       || defined(__sh__) || defined(__mips__)
+static int rx_copybreak = 1518;
+#else
  static int rx_copybreak;
+#endif
I guess the patch makes sense, but boy that conditional does suck.

It would be much better to go into each of those architecture's
arch/foo/Kconfig and define a new CONFIG_NO_UNALIGNED_DMA or whatever, and
to then use that config variable here, in tulip_core.c and wherever else
we're doing this.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help