<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/arch/alpha/include, branch v3.2.41</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/arch/alpha/include?h=v3.2.41</id>
<link rel='self' href='https://git.amat.us/linux/atom/arch/alpha/include?h=v3.2.41'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-09-12T02:37:14Z</updated>
<entry>
<title>Redefine ATOMIC_INIT and ATOMIC64_INIT to drop the casts</title>
<updated>2012-09-12T02:37:14Z</updated>
<author>
<name>Mel Gorman</name>
<email>mgorman@suse.de</email>
</author>
<published>2012-08-19T02:41:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=55add10c00b8ddd4cc091fa7e5dc974a0985fd90'/>
<id>urn:sha1:55add10c00b8ddd4cc091fa7e5dc974a0985fd90</id>
<content type='text'>
commit 67a806d9499353fabd5b5ff07337f3aa88a1c3ba upstream.

The following build error occurred during an alpha build:

  net/core/sock.c:274:36: error: initializer element is not constant

Dave Anglin says:
&gt; Here is the line in sock.i:
&gt;
&gt; struct static_key memalloc_socks = ((struct static_key) { .enabled =
&gt; ((atomic_t) { (0) }) });

The above line contains two compound literals.  It also uses a designated
initializer to initialize the field enabled.  A compound literal is not a
constant expression.

The location of the above statement isn't fully clear, but if a compound
literal occurs outside the body of a function, the initializer list must
consist of constant expressions.

Signed-off-by: Mel Gorman &lt;mgorman@suse.de&gt;
Signed-off-by: Fengguang Wu &lt;fengguang.wu@intel.com&gt;
Signed-off-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Acked-by: Matt Turner &lt;mattst88@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>alpha: Don't export SOCK_NONBLOCK to user space.</title>
<updated>2012-09-12T02:37:14Z</updated>
<author>
<name>Michael Cree</name>
<email>mcree@orcon.net.nz</email>
</author>
<published>2012-08-19T02:40:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c93f5803e234956a070c7c443fb5a4620d012cc8'/>
<id>urn:sha1:c93f5803e234956a070c7c443fb5a4620d012cc8</id>
<content type='text'>
commit a2fa3ccd7b43665fe14cb562761a6c3d26a1d13f upstream.

Currently we export SOCK_NONBLOCK to user space but that conflicts with
the definition from glibc leading to compilation errors in user programs
(e.g.  see Debian bug #658460).

The generic socket.h restricts the definition of SOCK_NONBLOCK to the
kernel, as does the MIPS specific socket.h, so let's do the same on
Alpha.

Signed-off-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Acked-by: Matt Turner &lt;mattst88@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>alpha: fix 32/64-bit bug in futex support</title>
<updated>2012-03-12T19:31:25Z</updated>
<author>
<name>Andrew Morton</name>
<email>akpm@linux-foundation.org</email>
</author>
<published>2012-03-05T22:59:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ac42356c793d135643350b6ea19d97250f533900'/>
<id>urn:sha1:ac42356c793d135643350b6ea19d97250f533900</id>
<content type='text'>
commit 62aca403657fe30e5235c5331e9871e676d9ea0a upstream.

Michael Cree said:

: : I have noticed some user space problems (pulseaudio crashes in pthread
: : code, glibc/nptl test suite failures, java compiler freezes on SMP alpha
: : systems) that arise when using a 2.6.39 or later kernel on Alpha.
: : Bisecting between 2.6.38 and 2.6.39 (using glibc/nptl test suite as
: : criterion for good/bad kernel) eventually leads to:
: :
: : 8d7718aa082aaf30a0b4989e1f04858952f941bc is the first bad commit
: : commit 8d7718aa082aaf30a0b4989e1f04858952f941bc
: : Author: Michel Lespinasse &lt;walken@google.com&gt;
: : Date:   Thu Mar 10 18:50:58 2011 -0800
: :
: :     futex: Sanitize futex ops argument types
: :
: :     Change futex_atomic_op_inuser and futex_atomic_cmpxchg_inatomic
: :     prototypes to use u32 types for the futex as this is the data type the
: :     futex core code uses all over the place.
: :
: : Looking at the commit I see there is a change of the uaddr argument in
: : the Alpha architecture specific code for futexes from int to u32, but I
: : don't see why this should cause a problem.

Richard Henderson said:

: futex_atomic_cmpxchg_inatomic(u32 *uval, u32 __user *uaddr,
:                               u32 oldval, u32 newval)
: ...
:         :       "r"(uaddr), "r"((long)oldval), "r"(newval)
:
:
: There is no 32-bit compare instruction.  These are implemented by
: consistently extending the values to a 64-bit type.  Since the
: load instruction sign-extends, we want to sign-extend the other
: quantity as well (despite the fact it's logically unsigned).
:
: So:
:
: -        :       "r"(uaddr), "r"((long)oldval), "r"(newval)
: +        :       "r"(uaddr), "r"((long)(int)oldval), "r"(newval)
:
: should do the trick.

Michael said:

: This fixes the glibc test suite failures and the pulseaudio related
: crashes, but it does not fix the java compiiler lockups that I was (and
: are still) observing.  That is some other problem.

Reported-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Tested-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Acked-by: Phil Carmody &lt;ext-phil.2.carmody@nokia.com&gt;
Cc: Richard Henderson &lt;rth@twiddle.net&gt;
Cc: Michel Lespinasse &lt;walken@google.com&gt;
Cc: Ivan Kokshaysky &lt;ink@jurassic.park.msu.ru&gt;
Reviewed-by: Matt Turner &lt;mattst88@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>alpha: wire up sendmmsg syscall</title>
<updated>2011-11-01T00:30:51Z</updated>
<author>
<name>Michael Cree</name>
<email>mcree@orcon.net.nz</email>
</author>
<published>2011-11-01T00:10:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a8aff21ecc8c455687c5bb2b98cb04dce3eea7c7'/>
<id>urn:sha1:a8aff21ecc8c455687c5bb2b98cb04dce3eea7c7</id>
<content type='text'>
Signed-off-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Reviewed-by: Matt Turner &lt;mattst88@gmail.com&gt;
Cc: Richard Henderson &lt;rth@twiddle.net&gt;
Cc: Ivan Kokshaysky &lt;ink@jurassic.park.msu.ru&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>alpha: wire up accept4 syscall</title>
<updated>2011-11-01T00:30:51Z</updated>
<author>
<name>Michael Cree</name>
<email>mcree@orcon.net.nz</email>
</author>
<published>2011-11-01T00:09:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0a8c384ebe4cc1c462076732dbffb595e7e81d5c'/>
<id>urn:sha1:0a8c384ebe4cc1c462076732dbffb595e7e81d5c</id>
<content type='text'>
Somehow wiring up the accept4 syscall on Alpha was missed long ago.
This commit rectifies that oversight.

Signed-off-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Reviewed-by: Matt Turner &lt;mattst88@gmail.com&gt;
Cc: Richard Henderson &lt;rth@twiddle.net&gt;
Cc: Ivan Kokshaysky &lt;ink@jurassic.park.msu.ru&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-3.2' of git://linux-nfs.org/~bfields/linux</title>
<updated>2011-10-25T13:42:01Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-10-25T13:42:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1442d1678ca7e53574fd403ba7bee6f4125d920c'/>
<id>urn:sha1:1442d1678ca7e53574fd403ba7bee6f4125d920c</id>
<content type='text'>
* 'for-3.2' of git://linux-nfs.org/~bfields/linux: (103 commits)
  nfs41: implement DESTROY_CLIENTID operation
  nfsd4: typo logical vs bitwise negate for want_mask
  nfsd4: allow NFS4_SHARE_SIGNAL_DELEG_WHEN_RESRC_AVAIL | NFS4_SHARE_PUSH_DELEG_WHEN_UNCONTENDED
  nfsd4: seq-&gt;status_flags may be used unitialized
  nfsd41: use SEQ4_STATUS_BACKCHANNEL_FAULT when cb_sequence is invalid
  nfsd4: implement new 4.1 open reclaim types
  nfsd4: remove unneeded CLAIM_DELEGATE_CUR workaround
  nfsd4: warn on open failure after create
  nfsd4: preallocate open stateid in process_open1()
  nfsd4: do idr preallocation with stateid allocation
  nfsd4: preallocate nfs4_file in process_open1()
  nfsd4: clean up open owners on OPEN failure
  nfsd4: simplify process_open1 logic
  nfsd4: make is_open_owner boolean
  nfsd4: centralize renew_client() calls
  nfsd4: typo logical vs bitwise negate
  nfs: fix bug about IPv6 address scope checking
  nfsd4: more robust ignoring of WANT bits in OPEN
  nfsd4: move name-length checks to xdr
  nfsd4: move access/deny validity checks to xdr code
  ...
</content>
</entry>
<entry>
<title>alpha: unbreak osf_setsysinfo(SSI_NVPAIRS, [SSIN_UACPROC, UAC_SIGBUS])</title>
<updated>2011-08-25T23:25:33Z</updated>
<author>
<name>Sergei Trofimovich</name>
<email>slyfox@gentoo.org</email>
</author>
<published>2011-08-25T22:59:02Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2df7a7d1cd07626dd235ca102830ebfc6c01a09e'/>
<id>urn:sha1:2df7a7d1cd07626dd235ca102830ebfc6c01a09e</id>
<content type='text'>
The bug was accidentally found by the following program:

    #include &lt;asm/sysinfo.h&gt;
    #include &lt;asm/unistd.h&gt;
    #include &lt;sys/syscall.h&gt;
    static int setsysinfo(unsigned long op, void *buffer, unsigned long size,
                          int *start, void *arg, unsigned long flag) {
        return syscall(__NR_osf_setsysinfo, op, buffer, size, start, arg, flag);
    }

    int main(int argc, char **argv) {
        short x[10];
        unsigned int buf[2] = { SSIN_UACPROC, UAC_SIGBUS, };
        setsysinfo(SSI_NVPAIRS, buf, 1, 0, 0, 0);

        int  *y = (int*) (x+1);
        *y = 0;
        return 0;
    }

The program shoud fail on SIGBUS, but didn't.

The patch is a second part of userspace flag fix (commit 745dd2405e28
"Alpha: Rearrange thread info flags fixing two regressions").

Deleted outdated out-of-sync 'UAC_SHIFT' (the cause of bug) in favour of
'ALPHA_UAC_SHIFT'.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Sergei Trofimovich &lt;slyfox@gentoo.org&gt;
Acked-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Cc: Richard Henderson &lt;rth@twiddle.net&gt;
Cc: Ivan Kokshaysky &lt;ink@jurassic.park.msu.ru&gt;
Cc: Matt Turner &lt;mattst88@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>locks: move F_INPROGRESS from fl_type to fl_flags field</title>
<updated>2011-08-19T17:25:34Z</updated>
<author>
<name>J. Bruce Fields</name>
<email>bfields@redhat.com</email>
</author>
<published>2011-07-26T20:28:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=710b7216964d6455cf1b215c43b03a1a79008c7d'/>
<id>urn:sha1:710b7216964d6455cf1b215c43b03a1a79008c7d</id>
<content type='text'>
F_INPROGRESS isn't exposed to userspace.  To me it makes more sense in
fl_flags....

Reviewed-by: Jeff Layton &lt;jlayton@redhat.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
</content>
</entry>
<entry>
<title>atomic: cleanup asm-generic atomic*.h inclusion</title>
<updated>2011-07-26T23:49:47Z</updated>
<author>
<name>Arun Sharma</name>
<email>asharma@fb.com</email>
</author>
<published>2011-07-26T23:09:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7847777a45f9f8bfc8617dbf107bde1ecb59caee'/>
<id>urn:sha1:7847777a45f9f8bfc8617dbf107bde1ecb59caee</id>
<content type='text'>
After changing all consumers of atomics to include &lt;linux/atomic.h&gt;, we
ran into some compile time errors due to this dependency chain:

linux/atomic.h
  -&gt; asm/atomic.h
    -&gt; asm-generic/atomic-long.h

where atomic-long.h could use funcs defined later in linux/atomic.h
without a prototype.  This patches moves the code that includes
asm-generic/atomic*.h to linux/atomic.h.

Archs that need &lt;asm-generic/atomic64.h&gt; need to select
CONFIG_GENERIC_ATOMIC64 from now on (some of them used to include it
unconditionally).

Compile tested on i386 and x86_64 with allnoconfig.

Signed-off-by: Arun Sharma &lt;asharma@fb.com&gt;
Cc: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
Acked-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>atomic: move atomic_add_unless to generic code</title>
<updated>2011-07-26T23:49:47Z</updated>
<author>
<name>Arun Sharma</name>
<email>asharma@fb.com</email>
</author>
<published>2011-07-26T23:09:07Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f24219b4e90cf70ec4a211b17fbabc725a0ddf3c'/>
<id>urn:sha1:f24219b4e90cf70ec4a211b17fbabc725a0ddf3c</id>
<content type='text'>
This is in preparation for more generic atomic primitives based on
__atomic_add_unless.

Signed-off-by: Arun Sharma &lt;asharma@fb.com&gt;
Signed-off-by: Hans-Christian Egtvedt &lt;hans-christian.egtvedt@atmel.com&gt;
Reviewed-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
Acked-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
