2006-10-18 09:22:18

by Amol Lad

[permalink] [raw]
Subject: 2.6.19-rc2 : Is something missing in Documentation/dontdiff ?


I did following:

1. To start with linux-2.6.19-rc2-orig and linux-2.6.19-rc2 are
identical
2. cd linux-2.6.19-rc2; make allmodconfig; make
3. diff -uprN -X linux-2.6.19-rc2-orig/Documentation/dontdiff
linux-2.6.19-rc2-orig linux-2.6.19-rc2 > /tmp/patch

The above generates 2MB patch file. What is wrong ?

It seems a new folder is created: linux-2.6.19-rc2/usr/include

diff -uprN -X linux-2.6.19-rc2-orig/Documentation/dontdiff linux-2.6.19-rc2-orig/usr/include/asm-generic/atomic.h linux-2.6.19-rc2/usr/include/asm-generic/atomic.h
--- linux-2.6.19-rc2-orig/usr/include/asm-generic/atomic.h 1970-01-01 05:30:00.000000000 +0530
+++ linux-2.6.19-rc2/usr/include/asm-generic/atomic.h 2006-10-18 14:18:47.000000000 +0530
@@ -0,0 +1,117 @@
+#ifndef _ASM_GENERIC_ATOMIC_H
+#define _ASM_GENERIC_ATOMIC_H
+/*
+ * Copyright (C) 2005 Silicon Graphics, Inc.
+ * Christoph Lameter <[email protected]>
+ *
+ * Allows to provide arch independent atomic definitions without the need to
+ * edit all arch specific atomic.h files.
+ */
+
+#include <asm/types.h>
+
+/*
+ * Suppport for atomic_long_t
+ *
+ * Casts for parameters are avoided for existing atomic functions in order to
+ * avoid issues with cast-as-lval under gcc 4.x and other limitations that the
+ * macros of a platform may have.
+ */
+
+#if BITS_PER_LONG == 64
+
+typedef atomic64_t atomic_long_t;
+
+#define ATOMIC_LONG_INIT(i) ATOMIC64_INIT(i)
+
+static __inline__ long atomic_long_read(atomic_long_t *l)
+{
+ atomic64_t *v = (atomic64_t *)l;
+
+ return (long)atomic64_read(v);
+}
+
+static __inline__ void atomic_long_set(atomic_long_t *l, long i)
+{
+ atomic64_t *v = (atomic64_t *)l;
+
+ atomic64_set(v, i);
+}
+
+static __inline__ void atomic_long_inc(atomic_long_t *l)
+{
+ atomic64_t *v = (atomic64_t *)l;
+
+ atomic64_inc(v);
+}
+
+static __inline__ void atomic_long_dec(atomic_long_t *l)
+{
+ atomic64_t *v = (atomic64_t *)l;
+
+ atomic64_dec(v);
+}
+
+static __inline__ void atomic_long_add(long i, atomic_long_t *l)
+{
+ atomic64_t *v = (atomic64_t *)l;
+
+ atomic64_add(i, v);
+}
+
+static __inline__ void atomic_long_sub(long i, atomic_long_t *l)
+{
+ atomic64_t *v = (atomic64_t *)l;
+
+ atomic64_sub(i, v);
+}
+
+#else
+
+typedef atomic_t atomic_long_t;
+
+#define ATOMIC_LONG_INIT(i) ATOMIC_INIT(i)
+static __inline__ long atomic_long_read(atomic_long_t *l)
+{
+ atomic_t *v = (atomic_t *)l;
+
+ return (long)atomic_read(v);
+}
+
+static __inline__ void atomic_long_set(atomic_long_t *l, long i)
+{
+ atomic_t *v = (atomic_t *)l;
+
+ atomic_set(v, i);
+}
+
+static __inline__ void atomic_long_inc(atomic_long_t *l)
+{
+ atomic_t *v = (atomic_t *)l;
+
+ atomic_inc(v);
+}
+
+static __inline__ void atomic_long_dec(atomic_long_t *l)
+{
+ atomic_t *v = (atomic_t *)l;
+
+ atomic_dec(v);
+}
+
+static __inline__ void atomic_long_add(long i, atomic_long_t *l)
+{
+ atomic_t *v = (atomic_t *)l;
+
+ atomic_add(i, v);
+}
+
+static __inline__ void atomic_long_sub(long i, atomic_long_t *l)
+{
+ atomic_t *v = (atomic_t *)l;
+
+ atomic_sub(i, v);
+}
+
+#endif
+#endif

..........
..........


2006-10-18 09:53:37

by Paul Mundt

[permalink] [raw]
Subject: Re: 2.6.19-rc2 : Is something missing in Documentation/dontdiff ?

On Wed, Oct 18, 2006 at 02:55:37PM +0530, Amol Lad wrote:
> 1. To start with linux-2.6.19-rc2-orig and linux-2.6.19-rc2 are
> identical
> 2. cd linux-2.6.19-rc2; make allmodconfig; make
> 3. diff -uprN -X linux-2.6.19-rc2-orig/Documentation/dontdiff
> linux-2.6.19-rc2-orig linux-2.6.19-rc2 > /tmp/patch
>
> The above generates 2MB patch file. What is wrong ?
>
> It seems a new folder is created: linux-2.6.19-rc2/usr/include
>
This should also be excluded..