)]}'
{
  "log": [
    {
      "commit": "5a0d0e65379256b4da2c9092e197a2c761f51c01",
      "tree": "4dbac2b5498ad7ce1bd88d8bdfe6303169b9560c",
      "parents": [
        "b2300b9efe1b8174833e17f37e975c9da00c388a"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Oct 10 21:33:22 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:58 2008 +0200"
      },
      "message": "[S390] Move private simple udelay function to arch/s390/lib/delay.c.\n\nMove cio\u0027s private simple udelay function to lib/delay.c and turn it\ninto something much more readable. So we have all implementations\nat one place.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d3d238c7744d08c36a114a59cb537d4c0c6c9a86",
      "tree": "df5d69d40dbdaf5e5014a6ce41909e7236a196c1",
      "parents": [
        "95b866d5afcafee00fc9ad70665e48c86d8c4e0f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Oct 03 21:54:59 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 03 21:55:54 2008 +0200"
      },
      "message": "[S390] nohz: Fix __udelay.\n\nThis fixes a regression that came with 934b2857cc576ae53c92a66e63fce7ddcfa74691\n(\"[S390] nohz/sclp: disable timer on synchronous waits.\").\nIf udelay() gets called from a disabled context it sets the clock comparator\nto a value where it expects the next interrupt. When the interrupt happens\nthe clock comparator gets not reset and therefore the interrupt condition\ndoesn\u0027t get cleared. The result is an endless timer interrupt loop.\n\nIn addition this patch fixes also the following:\n\nrcutorture reveals that our __udelay implementation is still buggy,\nsince it might schedule tasklets, but prevents their execution:\n\nNOHZ: local_softirq_pending 42\nNOHZ: local_softirq_pending 02\nNOHZ: local_softirq_pending 142\nNOHZ: local_softirq_pending 02\n\nTo fix this we make sure that only the clock comparator interrupt\nis enabled when the enabled wait psw is loaded.\nAlso no code gets called anymore which might schedule tasklets.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "934b2857cc576ae53c92a66e63fce7ddcfa74691",
      "tree": "4a8e261d16739624bb91ed9f56062ec5f7401227",
      "parents": [
        "3a95e8eb34f595a0144adb6e5513d456319bd8a5"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Aug 01 16:39:11 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:30 2008 +0200"
      },
      "message": "[S390] nohz/sclp: disable timer on synchronous waits.\n\nsclp_sync_wait wait synchronously for an sclp interrupt and disables\ntimer interrupts. However on the irq enter paths there is an extra\ncheck if a timer interrupt would be due and calls the timer callback.\nThis would schedule softirqs in the wrong context.\nSo introduce local_tick_enable/disable which prevents this.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ccf183e469be89e065ed389da9d3f50bd2faa215",
      "tree": "50616cdaf8c01e37bee660e9c8281c708bca007a",
      "parents": [
        "fd781fa25c9e9c6fd1599df060b05e7c4ad724e5"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Apr 30 13:38:42 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Apr 30 13:38:46 2008 +0200"
      },
      "message": "[S390] uaccess_mvcos: #ifdef config dependent code.\n\narch/s390/lib/uaccess_mvcos.c:166:\n warning: \u0027strnlen_user_mvcos\u0027 defined but not used\narch/s390/lib/uaccess_mvcos.c:186:\n warning: \u0027strncpy_from_user_mvcos\u0027 defined but not used\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "47494f6a84cdae2740b62e1d86a1860df85d9bbb",
      "tree": "c48f8da0a20949b480fd1658c1ea5da4a78a5e5c",
      "parents": [
        "1e489518da2a49604df2c3281034097274324be9"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Wed Apr 30 13:38:38 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Apr 30 13:38:44 2008 +0200"
      },
      "message": "[S390] remove -traditional\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCC: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3f12ebce6a004c8e9bf639801842f67e578ee7c6",
      "tree": "ab498a639b84511e56e2c2051e46c804744a1477",
      "parents": [
        "a806170e29c5468b1d641a22518243bdf1b8d58b"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Apr 17 07:46:27 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Apr 17 07:47:06 2008 +0200"
      },
      "message": "[S390] uaccess: Always access the correct address space.\n\nThe current uaccess page table walk code assumes at a few places that\nany access is a user space access. This is not correct if somebody\nhas issued a set_fs(KERNEL_DS) in advance.\nAdd code which checks which address space we are in and with this make\nsure we access the correct address space. This way we get also rid of\nthe dirty\nif (!currrent-mm)\n\treturn -EFAULT;\nhack in futex_atomic_cmpxchg_pt.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "5a62b192196af9a798e2f2f4c6a1324e7edf2f4b",
      "tree": "0aa96ba3153b257000be22e49befbde2b5bd6917",
      "parents": [
        "d7b906897e9caae452947e33674df0a2d6f7e10f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Apr 17 07:46:25 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Apr 17 07:47:05 2008 +0200"
      },
      "message": "[S390] Convert s390 to GENERIC_CLOCKEVENTS.\n\nThis way we get rid of s390\u0027s NO_IDLE_HZ and use the generic dynticks\nvariant instead. In addition we get high resolution timers for free.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "504e75d0ed3389747e40a4aaa4b1f4e569576665",
      "tree": "7e27688729d6cff7b654e87403d3176a358cfce0",
      "parents": [
        "457fb605834504af294916411be128a9b21fc3f6"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Mar 20 17:33:38 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 20 17:33:46 2008 +0100"
      },
      "message": "[S390] futex: let futex_atomic_cmpxchg_pt survive early functional tests.\n\na0c1e9073ef7428a14309cba010633a6cd6719ea \"futex: runtime enable pi and\nrobust functionality\" introduces a test wether futex in atomic stuff\nworks or not.\nIt does that by writing to address 0 of the kernel address space. This\nwill crash on older machines where addressing mode switching is enabled\nbut where the mvcos instruction is not available. Page table walking is\ndone by hand and therefore the code tries to access current-\u003emm which\nis NULL.\nTherefore add an extra check, so we survive the early test.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d5b02b3ff1d9a2e1074f559c84ed378cfa6fc3c0",
      "tree": "09cc1de46973bb4a8cd35a2d64d587f1144f38fd",
      "parents": [
        "39f73b2886be3a255d8f4cd669c8c7e7957afbd9"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Feb 19 15:29:34 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Feb 19 15:29:35 2008 +0100"
      },
      "message": "[S390] Fix futex_atomic_cmpxchg_std inline assembly.\n\nAdd missing exception table entry so that the kernel can handle\nproctection exceptions as well on the cs instruction. Currently only\nspecification exceptions are handled correctly.\nThe missing entry allows user space to crash the kernel.\n\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "894cdde26b538c77b9943bc72f0570abf6e58e37",
      "tree": "335f75460bd947c4969c9b7a1ec5764b98bf1d2b",
      "parents": [
        "dab5209cd878c146d9f6923f061d1c2725ff210f"
      ],
      "author": {
        "name": "Hisashi Hifumi",
        "email": "hifumi.hisashi@oss.ntt.co.jp",
        "time": "Sat Jan 26 14:11:28 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Sat Jan 26 14:11:31 2008 +0100"
      },
      "message": "[S390] do local_irq_restore while spinning in spin_lock_irqsave.\n\nIn s390\u0027s spin_lock_irqsave, interrupts remain disabled while\nspinning. In other architectures like x86 and powerpc, interrupts are\nre-enabled while spinning if IRQ is not masked before spin_lock_irqsave\nis called.\n\nThe following patch re-enables interrupts through local_irq_restore\nwhile spinning for a lock acquisition.\nThis can improve system response.\n\n[heiko.carstens@de.ibm.com: removed saving of pc]\n\nSigned-off-by: Hisashi Hifumi \u003chifumi.hisashi@oss.ntt.co.jp\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3b4beb31759765efdda9f9431aebfedf828bbfe0",
      "tree": "9d8a7de6c484f8f2bbda874f41ebcad4af7c9d53",
      "parents": [
        "9f4b0ba81f158df459fa2cfc98ab1475c090f29c"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Sat Jan 26 14:11:03 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Sat Jan 26 14:11:14 2008 +0100"
      },
      "message": "[S390] Remove owner_pc member from raw_spinlock_t.\n\nUsed to contain the address of the holder of the lock. But since the\nspinlock code is not inlined anymore all locks contain the same address\nanyway. And since in addtition nobody complained about that for ages\nits obviously unused. So remove it.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "190a1d722a59725706daf832bc8a511ed62f249d",
      "tree": "fa4441d0f7833062687e7816e09ec73600ac8523",
      "parents": [
        "3610cce87af0693603db171d5b6f6735f5e3dc5b"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Oct 22 12:52:48 2007 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Oct 22 12:52:49 2007 +0200"
      },
      "message": "[S390] 4level-fixup cleanup\n\nGet independent from asm-generic/4level-fixup.h\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e4aa402e7a3b6b87d8df6243a37171cdcd2f01c2",
      "tree": "7827fd9c19c5d190cd72e649c4a37975a705f2b6",
      "parents": [
        "6f3fa3f0eb8fe4675f8543dd4be3365577e1d487"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Oct 22 12:52:46 2007 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Oct 22 12:52:49 2007 +0200"
      },
      "message": "[S390] Introduce follow_table in uaccess_pt.c\n\nDefine and use follow_table inline in uaccess_pt.c to simplify\nthe code.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b460cbc581a53cc088ceba80608021dd49c63c43",
      "tree": "83c28d0adbc15f4157c77b40fa60c40a71cb8673",
      "parents": [
        "3743ca05ff464b8a9e345c08a6c9ce30485f9805"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Thu Oct 18 23:39:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: define is_global_init() and is_container_init()\n\nis_init() is an ambiguous name for the pid\u003d\u003d1 check.  Split it into\nis_global_init() and is_container_init().\n\nA cgroup init has it\u0027s tsk-\u003epid \u003d\u003d 1.\n\nA global init also has it\u0027s tsk-\u003epid \u003d\u003d 1 and it\u0027s active pid namespace\nis the init_pid_ns.  But rather than check the active pid namespace,\ncompare the task structure with \u0027init_pid_ns.child_reaper\u0027, which is\ninitialized during boot to the /sbin/init process and never changes.\n\nChangelog:\n\n\t2.6.22-rc4-mm2-pidns1:\n\t- Use \u0027init_pid_ns.child_reaper\u0027 to determine if a given task is the\n\t  global init (/sbin/init) process. This would improve performance\n\t  and remove dependence on the task_pid().\n\n\t2.6.21-mm2-pidns2:\n\n\t- [Sukadev Bhattiprolu] Changed is_container_init() calls in {powerpc,\n\t  ppc,avr32}/traps.c for the _exception() call to is_global_init().\n\t  This way, we kill only the cgroup if the cgroup\u0027s init has a\n\t  bug rather than force a kernel panic.\n\n[akpm@linux-foundation.org: fix comment]\n[sukadev@us.ibm.com: Use is_global_init() in arch/m32r/mm/fault.c]\n[bunk@stusta.de: kernel/pid.c: remove unused exports]\n[sukadev@us.ibm.com: Fix capability.c to work with threaded init]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nAcked-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Herbert Poetzel \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83c54070ee1a2d05c89793884bea1a03f2851ed4",
      "tree": "dc732f5a9b93fb7004ed23f551bd98b77cc580e0",
      "parents": [
        "d0217ac04ca6591841e5665f518e38064f4e65bd"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Jul 19 01:47:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:41 2007 -0700"
      },
      "message": "mm: fault feedback #2\n\nThis patch completes Linus\u0027s wish that the fault return codes be made into\nbit flags, which I agree makes everything nicer.  This requires requires\nall handle_mm_fault callers to be modified (possibly the modifications\nshould go further and do things like fault accounting in handle_mm_fault --\nhowever that would be for another patch).\n\n[akpm@linux-foundation.org: fix alpha build]\n[akpm@linux-foundation.org: fix s390 build]\n[akpm@linux-foundation.org: fix sparc build]\n[akpm@linux-foundation.org: fix sparc64 build]\n[akpm@linux-foundation.org: fix ia64 build]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Bryan Wu \u003cbryan.wu@analog.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nCc: Richard Curnow \u003crc@rc0.org.uk\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nAcked-by: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n[ Still apparently needs some ARM and PPC loving - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a88367088a6b9964d99694b30d80720f019bea2",
      "tree": "6fe082e731cdf56983934e11ebfcfc1d10664e5b",
      "parents": [
        "285f67227b63309d699f5bda25ba34962503398f"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jul 10 11:24:14 2007 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jul 10 11:24:47 2007 +0200"
      },
      "message": "[S390] Bogomips calculation for 64 bit.\n\nThe bogomips calculation triggered via reading from /proc/cpuinfo\ncan return incorrect values if the qrnnd assembly is called with a\npointer in %r2 with any of the upper 32 bits set.\nFix this by using 64 bit division / remainder operation provided by\ngcc instead of calling the assembly.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "cb8c181f288a1157bc717cc7a02412d4d1dc19bc",
      "tree": "cfc2ee0d9644d43ab7728a8e563be320d3348a45",
      "parents": [
        "efd1e8d569b3d35a3a636683c2a9ebffec9c1fcf"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Apr 10 22:10:39 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:53 2007 -0700"
      },
      "message": "[S390]: Fix build on 31-bit.\n\nAllow s390 to properly override the generic\n__div64_32() implementation by:\n\n1) Using obj-y for div64.o in s390\u0027s makefile instead\n   of lib-y\n\n2) Adding the weak attribute to the generic implementation.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bf6f6aa46feada857a52cb67d99a7c2fe4a70e87",
      "tree": "930dbd9bcd693cd7f3487fe8072bb0548131ff51",
      "parents": [
        "489c80ba8aa9dde8244897cba33a9372c897e531"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Feb 21 10:55:00 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Feb 21 10:55:00 2007 +0100"
      },
      "message": "[S390] prevent softirqs if delay is called disabled\n\nThe new delay implementation uses the clock comparator and an external\ninterrupt even if it is called disabled for interrupts. To do this\nall external interrupt source except clock comparator are switched of\nbefore enabling external interrupts. The external interrupt at the\nend of the delay period may not execute softirqs or we can end up in a\ndead-lock.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "4d284cac76d0bfebc42d76b428c4e44d921200a9",
      "tree": "e99d659aea9c747a3d5b4b4341f84a5cbead265b",
      "parents": [
        "162e006ef59266b9ebf34e3d15ca1f3d9ee956d7"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Feb 05 21:18:53 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:18:53 2007 +0100"
      },
      "message": "[S390] Avoid excessive inlining.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "31ee4b2f40994e8b21691f85cdd4052551a789b7",
      "tree": "1bb167e720e25a2ea9a5168b21cc882f85b18fa8",
      "parents": [
        "31cb4bd31a48f62105d037ad53192b94d4c08f53"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:18:31 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:18:31 2007 +0100"
      },
      "message": "[S390] Calibrate delay and bogomips.\n\nPreset the bogomips number to the cpu capacity value reported by\nstore system information in SYSIB 1.2.2. This value is constant\nfor a particular machine model and can be used to determine\nrelative performance differences between machines.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d54853ef8cb17296ac7bce9c77430fb7c80532d0",
      "tree": "649e14d532e17231225a042a7c9a3d9207ad91ee",
      "parents": [
        "c1821c2e9711adc3cd298a16b7237c92a2cee78d"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:18:19 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:18:19 2007 +0100"
      },
      "message": "[S390] ETR support.\n\nThis patch adds support for clock synchronization to an external time\nreference (ETR). The external time reference sends an oscillator\nsignal and a synchronization signal every 2^20 microseconds to keep\nthe TOD clocks of all connected servers in sync. For availability\ntwo ETR units can be connected to a machine. If the clock deviates\nfor more than the sync-check tolerance all cpus get a machine check\nthat indicates that the clock is out of sync. For the lovely details\nhow to get the clock back in sync see the code below.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c1821c2e9711adc3cd298a16b7237c92a2cee78d",
      "tree": "9155b089db35a37d95863125ea4c5f918bd7801b",
      "parents": [
        "86aa9fc2456d8a662f299a70bdb70987209170f0"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "geraldsc@de.ibm.com",
        "time": "Mon Feb 05 21:18:17 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:18:17 2007 +0100"
      },
      "message": "[S390] noexec protection\n\nThis provides a noexec protection on s390 hardware. Our hardware does\nnot have any bits left in the pte for a hw noexec bit, so this is a\ndifferent approach using shadow page tables and a special addressing\nmode that allows separate address spaces for code and data.\n\nAs a special feature of our \"secondary-space\" addressing mode, separate\npage tables can be specified for the translation of data addresses\n(storage operands) and instruction addresses. The shadow page table is\nused for the instruction addresses and the standard page table for the\ndata addresses.\nThe shadow page table is linked to the standard page table by a pointer\nin page-\u003elru.next of the struct page corresponding to the page that\ncontains the standard page table (since page-\u003eprivate is not really\nprivate with the pte_lock and the page table pages are not in the LRU\nlist).\nDepending on the software bits of a pte, it is either inserted into\nboth page tables or just into the standard (data) page table. Pages of\na vma that does not have the VM_EXEC bit set get mapped only in the\ndata address space. Any try to execute code on such a page will cause a\npage translation exception. The standard reaction to this is a SIGSEGV\nwith two exceptions: the two system call opcodes 0x0a77 (sys_sigreturn)\nand 0x0aad (sys_rt_sigreturn) are allowed. They are stored by the\nkernel to the signal stack frame. Unfortunately, the signal return\nmechanism cannot be modified to use an SA_RESTORER because the\nexception unwinding code depends on the system call opcode stored\nbehind the signal stack frame.\n\nThis feature requires that user space is executed in secondary-space\nmode and the kernel in home-space mode, which means that the addressing\nmodes need to be switched and that the noexec protection only works\nfor user space.\nAfter switching the addressing modes, we cannot use the mvcp/mvcs\ninstructions anymore to copy between kernel and user space. A new\nmvcos instruction has been added to the z9 EC/BC hardware which allows\nto copy between arbitrary address spaces, but on older hardware the\npage tables need to be walked manually.\n\nSigned-off-by: Gerald Schaefer \u003cgeraldsc@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "2b67fc46061b2171fb8fbb55d1ac717abd533569",
      "tree": "d4e9db6e7d51d2fc3cf782bf11e24ed7fbc544a0",
      "parents": [
        "55dff5224abeb734b12c1661c34ccf534955bee7"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Feb 05 21:16:47 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Feb 05 21:16:47 2007 +0100"
      },
      "message": "[S390] Get rid of a lot of sparse warnings.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d8ad075ef60ca33f1bd8e227eed2202108fd6cd8",
      "tree": "af7763b3cef733e8b98c72067aa457d74af33f5b",
      "parents": [
        "de338a3795bbcb3c3d77591f65118cbec776cc39"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Jan 09 10:18:50 2007 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jan 09 10:18:50 2007 +0100"
      },
      "message": "[S390] don\u0027t call handle_mm_fault() if in an atomic context.\n\nThere are several places in the futex code where a spin_lock is held\nand still uaccesses happen. Deadlocks are avoided by increasing the\npreempt count. The pagefault handler will then not take any locks\nbut will immediately search the fixup tables.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "22155914b66b348b7113a0b3baf96a72bd3f643d",
      "tree": "95e2f8b62a4b13d9364d42656ccb2e1e9cef3ea3",
      "parents": [
        "bff19b1d0b2c62882ca4b8f900b52f410c09e967"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Dec 08 15:53:49 2006 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Dec 08 15:53:49 2006 +0100"
      },
      "message": "[S390] uaccess_pt: add missing down_read() and convert to is_init().\n\nDoesn\u0027t seem to be a good idea to duplicate code :)\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a866374aecc90c7d90619727ccd851ac096b2fc7",
      "tree": "eabae0b36b5281dcef20563470c7f05549689b8c",
      "parents": [
        "6edaf68a87d17570790fd55f0c451a29ec1d6703"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:32:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: pagefault_{disable,enable}()\n\nIntroduce pagefault_{disable,enable}() and use these where previously we did\nmanual preempt increments/decrements to make the pagefault handler do the\natomic thing.\n\nCurrently they still rely on the increased preempt count, but do not rely on\nthe disabled preemption, this might go away in the future.\n\n(NOTE: the extra barrier() in pagefault_disable might fix some holes on\n       machines which have too many registers for their own good)\n\n[heiko.carstens@de.ibm.com: s390 fix]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "59f35d53fde3987d071ea1c9bf1c9ba29fcb69fe",
      "tree": "50853c1bf3ad3af080707fb2e6b3722d3d86db9e",
      "parents": [
        "d57de5a36791cb1b7285649c62f183b0d3505f7d"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "geraldsc@de.ibm.com",
        "time": "Mon Dec 04 15:40:45 2006 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Dec 04 15:40:45 2006 +0100"
      },
      "message": "[S390] Add dynamic size check for usercopy functions.\n\nUse a wrapper for copy_to/from_user to chose the best usercopy method.\nThe mvcos instruction is better for sizes greater than 256 bytes, if\nmvcos is not available a page table walk is better for sizes greater\nthan 1024 bytes. Also removed the redundant copy_to/from_user_std_small\nfunctions.\n\nSigned-off-by: Gerald Schaefer \u003cgeraldsc@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3c1fcfe229e99752c74efb945a4a3f560be04204",
      "tree": "44085d9b599e06a92426141811a6f712beac17aa",
      "parents": [
        "cdc39363d33506b0e067d41fc91f89d186bdf7f7"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Sat Sep 30 23:27:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:22 2006 -0700"
      },
      "message": "[PATCH] Directed yield: direct yield of spinlocks for s390.\n\nUse the new diagnose 0x9c in the spinlock implementation for s390.  It\nyields the remaining timeslice of the virtual cpu that tries to acquire a\nlock to the virtual cpu that is the current holder of the lock.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "94c12cc7d196bab34aaa98d38521549fa1e5ef76",
      "tree": "8e0cec0ed44445d74a2cb5160303d6b4dfb1bc31",
      "parents": [
        "25d83cbfaa44e1b9170c0941c3ef52ca39f54ccc"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Sep 28 16:56:43 2006 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Sep 28 16:56:43 2006 +0200"
      },
      "message": "[S390] Inline assembly cleanup.\n\nMajor cleanup of all s390 inline assemblies. They now have a common\ncoding style. Quite a few have been shortened, mainly by using register\nasm variables. Use of the EX_TABLE macro helps  as well. The atomic ops,\nbit ops and locking inlines new use the Q-constraint if a newer gcc\nis used.  That results in slightly better code.\n\nThanks to Christian Borntraeger for proof reading the changes.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "52149ba6b0ddf3e9d965257cc0513193650b3ea8",
      "tree": "af8097516b3cd9d9f2397080e4cf81414fd4172a",
      "parents": [
        "51dced544e3964b684afc99282ceceaa384b16a8"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Sep 28 16:56:03 2006 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Sep 28 16:56:03 2006 +0200"
      },
      "message": "[S390] user readable uninitialised kernel memory.\n\nA user space program can read uninitialised kernel memory\nby appending to a file from a bad address and then reading\nthe result back. The cause is the copy_from_user function\nthat does not clear the remaining bytes of the kernel\nbuffer after it got a fault on the user space address.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d9f7a745d55527d0d41684b22506a86c4381f7f1",
      "tree": "ea8870ef06c3723ad59b78aac97bfe8152894c72",
      "parents": [
        "1fce518e8e7de62597c823d6d795cafc694e7910"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Sep 28 16:55:39 2006 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Sep 28 16:55:39 2006 +0200"
      },
      "message": "[S390] __div64_32 for 31 bit.\n\nThe clocksource infrastructure introduced with commit\nad596171ed635c51a9eef829187af100cbf8dcf7 broke 31 bit s390.\nThe reason is that the do_div() primitive for 31 bit always\nhad a restriction: it could only divide an unsigned 64 bit\ninteger by an unsigned 31 bit integer. The clocksource code\nnow uses do_div() with a base value that has the most\nsignificant bit set. The result is that clock-\u003ecycle_interval\nhas a funny value which causes the linux time to jump around\nlike mad.\nThe solution is \"obvious\": implement a proper __div64_32\nfunction for 31 bit s390.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6c2a9e6df60478e712f3c3d98b5047778a82a3d7",
      "tree": "6768eb3991f4f1616b211a21ccf1b8e27820ae79",
      "parents": [
        "d02765d1af743567398eb6d523dea0ba5e5e7e8e"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "geraldsc@de.ibm.com",
        "time": "Wed Sep 20 15:59:44 2006 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Sep 20 15:59:44 2006 +0200"
      },
      "message": "[S390] Use alternative user-copy operations for new hardware.\n\nThis introduces new user-copy operations which are optimized for\ncopying more than 256 Bytes on new hardware.\n\nSigned-off-by: Gerald Schaefer \u003cgeraldsc@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d02765d1af743567398eb6d523dea0ba5e5e7e8e",
      "tree": "9a39c21d9924a8d81ce85254cd3d013dbe50d23e",
      "parents": [
        "6837a8c352efcc5efc70424e9bfd94ff9bfa9a47"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "geraldsc@de.ibm.com",
        "time": "Wed Sep 20 15:59:42 2006 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Sep 20 15:59:42 2006 +0200"
      },
      "message": "[S390] Make user-copy operations run-time configurable.\n\nIntroduces a struct uaccess_ops which allows setting user-copy\noperations at run-time.\n\nSigned-off-by: Gerald Schaefer \u003cgeraldsc@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "af313e5a4f56b248767d667c3c2436dda767df77",
      "tree": "7cc495fcd98841375a3f3a6a574dd6d9fcd7a7c2",
      "parents": [
        "dc709bd190c130b299ac19d596594256265c042a"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Aug 30 14:33:30 2006 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Aug 30 14:33:30 2006 +0200"
      },
      "message": "[S390] broken copy_in_user function.\n\nThe copy_in_user primitive does not work as advertised. If the source\nand target area are available copy_in_user copies one byte too much.\nIf one of the memory areas is not available it does not copy as much\ndata as it can, but up to 257 bytes less.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d2c993d845781d160a7ef759a3e65c6892c4a270",
      "tree": "f63be38ab83363282c519048849663201f664818",
      "parents": [
        "7e560814de1972e1bfc780616841d7a0032ca467"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jul 12 16:41:55 2006 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Jul 12 16:41:55 2006 +0200"
      },
      "message": "[S390] Fix sparse warnings.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "96567161de0ceed45cd2eb0e5380e3c797f5c0f4",
      "tree": "eb1cf052c95b95052e281f9a0d33ea025ce39dc5",
      "parents": [
        "6a88231fc7da311e4da4ce2011d1a132c80c145a"
      ],
      "author": {
        "name": "Christian Ehrhardt",
        "email": "ehrhardt@de.ibm.com",
        "time": "Thu Mar 09 17:33:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 09 19:47:38 2006 -0800"
      },
      "message": "[PATCH] s390: Increase spinlock retry code performance\n\nCurrently the code tries up to spin_retry times to grab a lock using the cs\ninstruction.  The cs instruction has exclusive access to a memory region\nand therefore invalidates the appropiate cache line of all other cpus.  If\nthere is contention on a lock this leads to cache line trashing.  This can\nbe avoided if we first check wether a cs instruction is likely to succeed\nbefore the instruction gets actually executed.\n\nSigned-off-by: Christian Ehrhardt \u003cehrhardt@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "331c46591414f7f92b1cec048009abe89892ee79",
      "tree": "ce19fbf200bcef3d0802f59fb5aed5b17005c089",
      "parents": [
        "e96fb230cc97760e448327c0de612cfba94ca7bf"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "geraldsc@de.ibm.com",
        "time": "Tue Mar 07 21:55:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 08 14:14:01 2006 -0800"
      },
      "message": "[PATCH] s390: fix strnlen_user return value\n\nstrnlen_user is supposed to return then length count + 1 if no terminating \\0\nis found, and it should return 0 on exception.  Found by David Howells\n\u003cdhowells@redhat.com\u003e.\n\nSigned-off-by: Gerald Schaefer \u003cgeraldsc@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e35a6619e7be59aa38249346327c89207663bb37",
      "tree": "937b4ef45b317dd1b6854c9c5682af3ddeb55faf",
      "parents": [
        "5a1342f77304da8dc698e0ecf09925438764d80f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Feb 14 13:53:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Feb 14 16:09:35 2006 -0800"
      },
      "message": "[PATCH] s390: fix __delay implementation\n\nFix __delay implementation.  Called with an argument \"1\" or \"0\" it would\nloop nearly forever (since (1/2)-1 \u003d 0xffffffff).\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e018ba1fceee5bd306e31f6e3a60934d5f143ac5",
      "tree": "cafd9ebb51ec0158b0f9affcd040ea36c216272b",
      "parents": [
        "5ceba75f121004335616befd2045c8a6b75b2bc4"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Feb 01 03:06:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 08:53:23 2006 -0800"
      },
      "message": "[PATCH] s390: Remove CVS generated information\n\n- Remove all CVS generated information like e.g. revision IDs from\n  drivers/s390 and include/asm-s390 (none present in arch/s390).\n\n- Add newline at end of arch/s390/lib/Makefile to avoid diff message.\n\nAcked-by: Andreas Herrmann \u003caherrman@de.ibm.com\u003e\nAcked-by: Frank Pavlic \u003cpavlic@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0152fb37603e3a776768794030b809ae77027aa4",
      "tree": "dc1df7a4e474e6e8c4b6987a22e09c727bb97433",
      "parents": [
        "68c119177890afff4759abda8da2b4ff5e06efa1"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Sat Jan 14 13:21:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jan 14 18:27:09 2006 -0800"
      },
      "message": "[PATCH] s390: spinlock fixes\n\nRemove useless spin_retry_counter and fix compilation for UP kernels.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "347a8dc3b815f0c0fa62a1df075184ffe4cbdcf1",
      "tree": "a6ec76690127e87fe6efa42b6238caadd6c07e7b",
      "parents": [
        "9bbc8346fb21fad3f678220b067450e436e45dbf"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jan 06 00:19:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:53 2006 -0800"
      },
      "message": "[PATCH] s390: cleanup Kconfig\n\nSanitize some s390 Kconfig options.  We have ARCH_S390, ARCH_S390X,\nARCH_S390_31, 64BIT, S390_SUPPORT and COMPAT.  Replace these 6 options by\nS390, 64BIT and COMPAT.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb1c8f93d869b34cacb8b8932e2b83d96a19d720",
      "tree": "a006d078aa02e421a7dc4793c335308204859d36",
      "parents": [
        "4327edf6b8a7ac7dce144313947995538842d8fd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 10 00:25:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:21 2005 -0700"
      },
      "message": "[PATCH] spinlock consolidation\n\nThis patch (written by me and also containing many suggestions of Arjan van\nde Ven) does a major cleanup of the spinlock code.  It does the following\nthings:\n\n - consolidates and enhances the spinlock/rwlock debugging code\n\n - simplifies the asm/spinlock.h files\n\n - encapsulates the raw spinlock type and moves generic spinlock\n   features (such as -\u003ebreak_lock) into the generic code.\n\n - cleans up the spinlock code hierarchy to get rid of the spaghetti.\n\nMost notably there\u0027s now only a single variant of the debugging code,\nlocated in lib/spinlock_debug.c.  (previously we had one SMP debugging\nvariant per architecture, plus a separate generic one for UP builds)\n\nAlso, i\u0027ve enhanced the rwlock debugging facility, it will now track\nwrite-owners.  There is new spinlock-owner/CPU-tracking on SMP builds too.\nAll locks have lockup detection now, which will work for both soft and hard\nspin/rwlock lockups.\n\nThe arch-level include files now only contain the minimally necessary\nsubset of the spinlock code - all the rest that can be generalized now\nlives in the generic headers:\n\n include/asm-i386/spinlock_types.h       |   16\n include/asm-x86_64/spinlock_types.h     |   16\n\nI have also split up the various spinlock variants into separate files,\nmaking it easier to see which does what. The new layout is:\n\n   SMP                         |  UP\n   ----------------------------|-----------------------------------\n   asm/spinlock_types_smp.h    |  linux/spinlock_types_up.h\n   linux/spinlock_types.h      |  linux/spinlock_types.h\n   asm/spinlock_smp.h          |  linux/spinlock_up.h\n   linux/spinlock_api_smp.h    |  linux/spinlock_api_up.h\n   linux/spinlock.h            |  linux/spinlock.h\n\n/*\n * here\u0027s the role of the various spinlock/rwlock related include files:\n *\n * on SMP builds:\n *\n *  asm/spinlock_types.h: contains the raw_spinlock_t/raw_rwlock_t and the\n *                        initializers\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  asm/spinlock.h:       contains the __raw_spin_*()/etc. lowlevel\n *                        implementations, mostly inline assembly code\n *\n *   (also included on UP-debug builds:)\n *\n *  linux/spinlock_api_smp.h:\n *                        contains the prototypes for the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n *\n * on UP builds:\n *\n *  linux/spinlock_type_up.h:\n *                        contains the generic, simplified UP spinlock type.\n *                        (which is an empty structure on non-debug builds)\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  linux/spinlock_up.h:\n *                        contains the __raw_spin_*()/etc. version of UP\n *                        builds. (which are NOPs on non-debug, non-preempt\n *                        builds)\n *\n *   (included on UP-non-debug builds:)\n *\n *  linux/spinlock_api_up.h:\n *                        builds the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n */\n\nAll SMP and UP architectures are converted by this patch.\n\narm, i386, ia64, ppc, ppc64, s390/s390x, x64 was build-tested via\ncrosscompilers.  m32r, mips, sh, sparc, have not been tested yet, but should\nbe mostly fine.\n\nFrom: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\n\n  Booted and lightly tested on a500-44 (64-bit, SMP kernel, dual CPU).\n  Builds 32-bit SMP kernel (not booted or tested).  I did not try to build\n  non-SMP kernels.  That should be trivial to fix up later if necessary.\n\n  I converted bit ops atomic_hash lock to raw_spinlock_t.  Doing so avoids\n  some ugly nesting of linux/*.h and asm/*.h files.  Those particular locks\n  are well tested and contained entirely inside arch specific code.  I do NOT\n  expect any new issues to arise with them.\n\n If someone does ever need to use debug/metrics with them, then they will\n  need to unravel this hairball between spinlocks, atomic ops, and bit ops\n  that exist only because parisc has exactly one atomic instruction: LDCW\n  (load and clear word).\n\nFrom: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\n\n   ia64 fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjanv@infradead.org\u003e\nSigned-off-by: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nSigned-off-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Mikael Pettersson \u003cmikpe@csd.uu.se\u003e\nSigned-off-by: Benoit Boissinot \u003cbenoit.boissinot@ens-lyon.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0013a85454c281faaf064ccb576e373a2881aac8",
      "tree": "06fc1af0a321631e89ad0f589214e291bd91d19a",
      "parents": [
        "47003497dd819b10874a2291e54df7dc5cf8be57"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Fri Sep 09 20:57:26 2005 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Fri Sep 09 20:57:26 2005 +0200"
      },
      "message": "kbuild: m68k,parisc,ppc,ppc64,s390,xtensa use generic asm-offsets.h support\n\nDelete obsoleted parts form arch makefiles and rename to asm-offsets.h\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "951f22d5b1f0eaae35dafc669e3774a0c2084d10",
      "tree": "66c0131b576dadb98026da11d624df453c4c9a7c",
      "parents": [
        "8449d003f323ca7a00eec38905d984ba5ec83a29"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Jul 27 11:44:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:26:04 2005 -0700"
      },
      "message": "[PATCH] s390: spin lock retry\n\nSplit spin lock and r/w lock implementation into a single try which is done\ninline and an out of line function that repeatedly tries to get the lock\nbefore doing the cpu_relax().  Add a system control to set the number of\nretries before a cpu is yielded.\n\nThe reason for the spin lock retry is that the diagnose 0x44 that is used to\ngive up the virtual cpu is quite expensive.  For spin locks that are held only\nfor a short period of time the costs of the diagnoses outweights the savings\nfor spin locks that are held for a longer timer.  The default retry count is\n1000.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
