)]}'
{
  "log": [
    {
      "commit": "dbc11f539df7c9a32424b78afb0314c68d5e7d0b",
      "tree": "b220af9c4cc12b7811beb5b7ef90047468cb0c5f",
      "parents": [
        "1c56f838a9d0b25d68363bca133722c5330707b3"
      ],
      "author": {
        "name": "Olaf Hering",
        "email": "olaf@aepfle.de",
        "time": "Sun Feb 25 20:04:18 2007 +0100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Mar 09 15:03:24 2007 +1100"
      },
      "message": "[POWERPC] Include stddef.h in asm-powerpc/current.h to get offsetof\n\nOn Tue, Oct 31, Hugh Dickins wrote:\n\n\u003e +++ linux/include/asm-powerpc/current.h\t2006-10-30 19:27:05.000000000 +0000\n\n\u003e +static inline struct task_struct *get_current(void)\n\u003e +{\n\u003e +\tstruct task_struct *task;\n\u003e +\n\u003e +\t__asm__ __volatile__(\"ld %0,%1(13)\"\n\u003e +\t: \"\u003dr\" (task)\n\u003e +\t: \"i\" (offsetof(struct paca_struct, __current)));\n\nThis breaks compile of 2.6.18.8:\n\n  CC [M]  drivers/media/video/pwc/pwc-uncompress.o\nIn file included from /home/olaf/kernel/linux-2.6.18.8/drivers/media/video/pwc/pwc-uncompress.c:29:\ninclude2/asm/current.h: In function \u0027get_current\u0027:\ninclude2/asm/current.h:23: warning: implicit declaration of function \u0027offsetof\u0027\ninclude2/asm/current.h:23: error: expected expression before \u0027struct\u0027\nmake[5]: *** [drivers/media/video/pwc/pwc-uncompress.o] Error 1\n\nSigned-off-by: Olaf Hering \u003colaf@aepfle.de\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "5fe8e8b88e68e517637e3f8287f1fee89e2d9252",
      "tree": "5b7d1878e9d16107d7c8fcfa0d866d660372161d",
      "parents": [
        "302439d2167e0f1e01a6480ac40c06063f4e16a1"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Tue Oct 31 18:39:31 2006 +0000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Nov 01 14:52:48 2006 +1100"
      },
      "message": "[POWERPC] Make current preempt-safe\n\nRepeated -j20 kernel builds on a G5 Quad running an SMP PREEMPT kernel\nwould often collapse within a day, some exec failing with \"Bad address\".\nIn each case examined, load_elf_binary was doing a kernel_read, but\ngeneric_file_aio_read\u0027s access_ok saw current-\u003ethread.fs.seg as USER_DS\ninstead of KERNEL_DS.\n\nobjdump of filemap.o shows gcc 4.1.0 emitting \"mr r5,r13 ... ld r9,416(r5)\"\nhere for get_paca()-\u003e__current, instead of the expected and much more usual\n\"ld r9,416(r13)\"; I\u0027ve seen other gcc4s do the same, but perhaps not gcc3s.\n\nSo, if the task is preempted and rescheduled on a different cpu in between\nthe mr and the ld, r5 will be looking at a different paca_struct from the\none it\u0027s now on, pick up the wrong __current, and perhaps the wrong seg.\nPresumably much worse could happen elsewhere, though that split is rare.\n\nOther architectures appear to be safe (x86_64\u0027s read_pda is more limiting\nthan get_paca), but ppc64 needs to force \"current\" into one instruction.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "88ced0314938814e1772b4d0d7ab20c52e4472b6",
      "tree": "3e06de882c0bf5706ee7a8994e06eb8c9ed3feca",
      "parents": [
        "e1333803c3a8fb167ba67ffc5540dbb53fa7deb3"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Dec 16 22:43:46 2005 +0100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Jan 09 15:13:08 2006 +1100"
      },
      "message": "[PATCH] powerpc: sanitize header files for user space includes\n\ninclude/asm-ppc/ had #ifdef __KERNEL__ in all header files that\nare not meant for use by user space, include/asm-powerpc does\nnot have this yet.\n\nThis patch gets us a lot closer there. There are a few cases\nwhere I was not sure, so I left them out. I have verified\nthat no CONFIG_* symbols are used outside of __KERNEL__\nany more and that there are no obvious compile errors when\nincluding any of the headers in user space libraries.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "584224e4095d8abcf2bef38efacc291be9a44c20",
      "tree": "4f4e37fe772880c85c03ea08fdd2c46aab92eb08",
      "parents": [
        "c5ff700116a56a870ef40cc4ac6f19bf2530b466"
      ],
      "author": {
        "name": "David Gibson",
        "email": "david@gibson.dropbear.id.au",
        "time": "Wed Nov 09 13:04:06 2005 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Nov 10 11:23:53 2005 +1100"
      },
      "message": "[PATCH] powerpc: Merge current.h\n\nThis patch merges current.h.  This is a one-big-ifdef merge, but both\nversions are so tiny, I think we can live with it.  While we\u0027re at it,\nwe get rid of the fairly pointless redirection through get_current()\nin the ppc64 version.\n\nBuilt and booted on POWER5 LPAR (ARCH\u003dpowerpc \u0026 ARCH\u003dppc64).  Built\nfor 32-bit pmac (ARCH\u003dpowerpc \u0026 ARCH\u003dppc).\n\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    }
  ]
}
