)]}'
{
  "log": [
    {
      "commit": "54ce9256ad705ae8b628edfadce161aa7099922d",
      "tree": "1bd2e4d49d9b2db9ce2862a3318210dedba69997",
      "parents": [
        "9daeaa370526df1c19eba4780247bb7155541e38"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Fri Apr 13 15:37:57 2012 +0200"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 21 21:09:32 2012 +0200"
      },
      "message": "um: Remove unused variables\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "c6b17bbd39bdb0f110c09675280630fa1a7d25a0",
      "tree": "246633774e5093ce9e875f346434000441e73720",
      "parents": [
        "d3985d9ac6eeaf447a40d18b78a7e5443f95d790"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 10 19:02:28 2012 -0500"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Sun Mar 25 00:29:55 2012 +0100"
      },
      "message": "um: use the right ifdef around exports in user_syms.c\n\n... the same one that controls whether elf_aux.o is included into the\nbuild, bringing the vsyscall_e... into it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "966e803ab12538faf2b236dbe83f7fb796a031d6",
      "tree": "508ab798c9ce5cc0f6f53a2fd9f0b0942a4b32b0",
      "parents": [
        "a10c95d84c2d04a4bfb02104644bbf2811b99690"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:12:19 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:15:27 2011 +0100"
      },
      "message": "um: unify ptrace_user.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "1bbd5f21f426d99660ea8120b79595a282e5ff8a",
      "tree": "f9980460722d4f89ca468c7af92502daa82d8c1a",
      "parents": [
        "c5cc32fe14ccbc19484202d20cf7d6bad45e3567"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:09:49 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:15:17 2011 +0100"
      },
      "message": "um: merge os-Linux/tls.c into arch/x86/um/os-Linux/tls.c\n\nit\u0027s i386-specific; moreover, analogs on other targets have\nincompatible interface - PTRACE_GET_THREAD_AREA does exist\nelsewhere, but struct user_desc does *not*\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "510c72a3cf51c9463db64eb6c21347f4940a202f",
      "tree": "948235a6eb749b9ec7a195eda7dfedbaff2834cb",
      "parents": [
        "17e052093bcd21eaf9eb6e792cd76fdc4f0e3505"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:08:29 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:15:12 2011 +0100"
      },
      "message": "um: take chan_*.h and line.h to arch/um/drivers\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "17e052093bcd21eaf9eb6e792cd76fdc4f0e3505",
      "tree": "34e641a73c6b128396b4114f25f8d8133563e53d",
      "parents": [
        "0a9e70b1cd0f7ee82a65d19edfcd31664ef65f69"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:08:19 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:15:11 2011 +0100"
      },
      "message": "um: take register_winch_irq() into the caller of is_skas_winch()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "5c48b108ecbf6505d929e64d50dace13ac2bdf34",
      "tree": "016904f84fbe05aa301c5cdfe712d90f6bb828fe",
      "parents": [
        "7bbe7204e93734fe79d8aac3e08a7cb4624b5004"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:06:39 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:15:05 2011 +0100"
      },
      "message": "um: take arch/um/sys-x86 to arch/x86/um\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "62982ad6b013a35c2e49caab2b90855d3ad4531d",
      "tree": "a382ec74d4f9d6762c86eae92fb2a4e31d7c6301",
      "parents": [
        "0de021f797e7bd785796071aab8e14827c87d6bf"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:05:39 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:15:01 2011 +0100"
      },
      "message": "um: sysdep/barrier.h is not used for anything\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "0de021f797e7bd785796071aab8e14827c87d6bf",
      "tree": "6c8f39ead5398234ced44965a1539f662101596f",
      "parents": [
        "ab1c0cc7c96c17ea903ca6d3e42e7d2696b32b6c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:05:29 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:15:00 2011 +0100"
      },
      "message": "um: shared/process.h is empty now; kill it\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "ab1c0cc7c96c17ea903ca6d3e42e7d2696b32b6c",
      "tree": "9a72e06cab7b6dd293b16048d2928695c935ea46",
      "parents": [
        "248b74c79ebb9fb55e146797a808836d90418c4b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:05:19 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:59 2011 +0100"
      },
      "message": "um: finish conversion to mcontext_t\n\nnow we don\u0027t mix host and guest signal frame layouts anymore; moreover,\nwe don\u0027t need host\u0027s struct sigcontext at all.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "248b74c79ebb9fb55e146797a808836d90418c4b",
      "tree": "2d043bee58d2d8995ca4ccedf9d00513a13297cb",
      "parents": [
        "05c46db4d7d51af969e09f9f1adbff66ee2e84b4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:05:09 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:59 2011 +0100"
      },
      "message": "um: start switching the references to host mcontext_t to its userland type\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "05c46db4d7d51af969e09f9f1adbff66ee2e84b4",
      "tree": "ade36b7da93e8e297a40312cd5047196ab8dccd5",
      "parents": [
        "dd768c56da44f6c06486da3b33b41e9c13e985c5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:04:59 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:58 2011 +0100"
      },
      "message": "um: take userland definition of barrier() to user.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "00361683ce562402a189362f43370a459b166645",
      "tree": "2e0ca27bb455c671331113efcb2d1b78c14844b3",
      "parents": [
        "e87df986ed053d25dbd57b8b137edec5022874f8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:04:39 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:57 2011 +0100"
      },
      "message": "um: fill the handlers array at build time\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "e87df986ed053d25dbd57b8b137edec5022874f8",
      "tree": "93a955eb7136ddfb30f9a1c99038976729823af4",
      "parents": [
        "d5c7e8b4ec4795ed0b8943cad8f87801fde371d7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:04:29 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:56 2011 +0100"
      },
      "message": "um: simplify set_handler()\n\nFor one thing, we always block the same signals (IRQ ones - IO, WINCH, VTALRM),\nso there\u0027s no need to pass sa_mask elements in arguments.  For another, the\nflags depend only on whether it\u0027s an IRQ signal or not (we add SA_RESTART\nfor them).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "d5c7e8b4ec4795ed0b8943cad8f87801fde371d7",
      "tree": "129e234c88d0297caecdb49f285a053babaa94b3",
      "parents": [
        "9b25fcbdc64369f4cce41e73fc0f57f3fd367d20"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:04:19 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:55 2011 +0100"
      },
      "message": "um: don\u0027t bother blocking SIGARLM and SIGUSR1\n\nWe used to generate those, but we hadn\u0027t done that for a long\ntime.  No need to bother blocking them for signal handlers.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "9b25fcbdc64369f4cce41e73fc0f57f3fd367d20",
      "tree": "6248094684197d5c4f5dadf152cfcd4d4f712276",
      "parents": [
        "adcfb9852d8f2ddba908da0d023c280e23a40452"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:04:09 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:54 2011 +0100"
      },
      "message": "um: switch stub_segv_handler to SA_SIGINFO variant, get rid of magic crap in there\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "51d34749051a6369093e5067ef67c17f17694921",
      "tree": "765e499c73e2797cc5d525f1b4cf590f17aa4132",
      "parents": [
        "7eb122555c8583e1601b7a620c5a88c1e06c3eac"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:03:49 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:53 2011 +0100"
      },
      "message": "um: merge arch/um/os-Linux/sys-{i386,x86_64}\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "7eb122555c8583e1601b7a620c5a88c1e06c3eac",
      "tree": "025b581845d16e22cf0ffb5c8d5853a670100588",
      "parents": [
        "5d40de0f6e726dc9c48fb35815e0a6153e59e1dc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:03:39 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:52 2011 +0100"
      },
      "message": "um: merge hard_handler() instances, switch to use of SA_SIGINFO\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "5d40de0f6e726dc9c48fb35815e0a6153e59e1dc",
      "tree": "0a746d283d83d824eb88cbe19783d2939bd6e5ab",
      "parents": [
        "6582b7f7743da6ce3e3714e9e8b18e0e073d4acd"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:03:29 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:52 2011 +0100"
      },
      "message": "um: kill dead code around uaccess\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "078073a3d48ce7c140f1538d249da3ac545065a6",
      "tree": "064e0baa9b1a6d97d5dbbbfae388a297303fba65",
      "parents": [
        "4de1c5f65c7dd4965a2a58b93205b747d7826110"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Aug 18 20:01:29 2011 +0100"
      },
      "committer": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Nov 02 14:14:44 2011 +0100"
      },
      "message": "um: -include user.h for USER_OBJ, trim includes\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\n"
    },
    {
      "commit": "fbfe9c847edf57ac8232aeafb290f272289893a3",
      "tree": "da25f3f4ece74b9fa328ce3884f19ff18eff516d",
      "parents": [
        "b40997b872cdb70140f127af6069f00a86b6cf81"
      ],
      "author": {
        "name": "Ingo van Lil",
        "email": "inguin@gmx.de",
        "time": "Wed Sep 14 16:21:23 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 14 18:09:37 2011 -0700"
      },
      "message": "um: Save FPU registers between task switches\n\nSome time ago Jeff prepared 42daba316557 (\"uml: stop saving process FP\nstate\") for UML to stop saving the process FP state between task\nswitches.  The assumption was that since with SKAS0 every guest process\nruns inside a host process context the host OS will take care of keeping\nthe proper FP state.\n\nUnfortunately this is not true for multi-threaded applications, where\nall guest threads share a single host process context yet all may use\nthe FPU on their own.  Although I haven\u0027t verified it I suspect things\nto be even worse in SKAS3 mode where all guest processes run inside a\nsingle host process.\n\nThe patch reintroduces the saving and restoring of the FP context\nbetween task switches.\n\n[richard@nod.at: Ingo posted this patch in 2009, sadly it was never applied\nand got lost. Now in 2011 the problem was reported by Gunnar.]\n\nSigned-off-by: Ingo van Lil \u003cinguin@gmx.de\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReported-by: \u003cgunnarlindroth@hotmail.com\u003e\nTested-by: \u003cgunnarlindroth@hotmail.com\u003e\nCc: Stanislav Meduna \u003cstano@meduna.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b743ac54e54ca18fb7164a97cc77cf1ccee0b0f7",
      "tree": "a9dced710d289d1594ec2a27ca2a88cef5186ac1",
      "parents": [
        "2a6d0ac182688d4d23357ece744978706c044aad"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "um: disable scan_elf_aux() on x86_64\n\nReusing the host\u0027s vDSO makes only sense on x86_32.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a6d0ac182688d4d23357ece744978706c044aad",
      "tree": "6a8daa134fe8af112b0d234b4ca417a16e59d5e5",
      "parents": [
        "9a8beb93067764344523386e0e5388d3fd78add7"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "dave@gnu.org",
        "time": "Mon Jul 25 17:12:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "uml: free resources\n\nWhen creating the temp file there\u0027s a memory and file descriptor leak upon\nerror.\n\nSigned-off-by: Davidlohr Bueso \u003cdave@gnu.org\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReviewed-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2fdf2130926f07881c75e3905ece472c37d7703f",
      "tree": "3e9e9c3334f7277aa116800efe6719713e23fdc5",
      "parents": [
        "7a99ae7c57d2de5cad9562bed32addf064521116"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jul 25 17:12:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "uml: helper.c warning corrections\n\nFix this warning:\n\n  arch/um/os-Linux/helper.c: In function `helper_child\u0027:\n  arch/um/os-Linux/helper.c:38:7: warning: ignoring return value of `write\u0027, declared with attribute warn_unused_result\n\n[richard@nod.at: happens only with -D_FORTIFY_SOURCE\u003d2]\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f956b3e40ad7b9f7c0d33b80fe78f57fedb74f49",
      "tree": "44e5b311271d6da81df967de711a78e042d16af9",
      "parents": [
        "22e9b917ab7ccd98046ad9428fb28967f0744605"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:47 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "um: fix _FORTIFY_SOURCE\u003d2 support for kernel modules\n\nWhen UML is compiled with _FORTIFY_SOURCE we have to export all _chk()\nfunctions which are used in modules.  For now it\u0027s only the case for\n__sprintf_chk().\n\nTested-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nReported-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nAcked-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db271cf03f5fe39feab8e1b1818c0880c7290c5c",
      "tree": "4624b82259d3ea5c9ddf832fb78c8958dcba0e46",
      "parents": [
        "607647ab04cb7c23616fb5c5dc8bad86f410226d"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue May 24 17:13:04 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:42 2011 -0700"
      },
      "message": "um: fix crash while os_dump_core()\n\nos_dump_core() emits SIGTERM to terminate all UML processes.  Kernel\nthreads have to exit on SIGTERM instead of calling last_ditch_exit().\nMultiple calls to last_ditch_exit() can cause a crash.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d634f194d4e2e58d57927c812aca097e67a2287d",
      "tree": "ca17ff43725293ea0bda7a7d7e8ed23ad4f89e14",
      "parents": [
        "2525e70d492f8c7bbe1292db8fcd973607a56ac6"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue May 24 17:13:01 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:41 2011 -0700"
      },
      "message": "um: add earlyprintk support\n\nUser Mode Linux can also benefit from earlyprintk.  UML\u0027s earlyprintk\nwrites kernel messages directly to stdout.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2525e70d492f8c7bbe1292db8fcd973607a56ac6",
      "tree": "b9bb4bc7fd9311a859f518f0b12c101d5c80fb26",
      "parents": [
        "0ce451acb1872eab0fcf22753f93f51567e812fa"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue May 24 17:13:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:40 2011 -0700"
      },
      "message": "um: remove SIGHUP handler\n\nThe UML kernel ignores SIGHUP anyway.  This handler is in vain.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ce451acb1872eab0fcf22753f93f51567e812fa",
      "tree": "cb9658d9faeec3fbb1d089c94da32f009bf9ff93",
      "parents": [
        "8aebe21e0f805b9c411a51e716bb34aa61c0cad6"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue May 24 17:13:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:40 2011 -0700"
      },
      "message": "um: fix UML_LIB_PATH\n\nUML_LIB_PATH is hardcoded to /usr/lib/uml/, on 64bit systems UML_LIB_PATH\nneeds to be /usr/lib64/uml/.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2db21997f43907f54500edaf063253ca2a186f9",
      "tree": "c98cabccfd71dea17520553fd534335a3d1c0a82",
      "parents": [
        "d6c438b6cd733834a3cec55af8577a8fc3548016"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue May 17 15:44:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 18 02:55:23 2011 -0700"
      },
      "message": "um: fix abort\n\nos_dump_core() uses abort() to terminate UML in case of an fatal error.\n\nglibc\u0027s abort() calls raise(SIGABRT) which makes use of tgkill().\ntgkill() has no effect within UML\u0027s kernel threads because they are not\npthreads.  As fallback abort() executes an invalid instruction to\nterminate the process.  Therefore UML gets killed by SIGSEGV and leaves a\nugly log entry in the host\u0027s kernel ring buffer.\n\nTo get rid of this we use our own abort routine.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "482db6df1746c4fa7d64a2441d4cb2610249c679",
      "tree": "9e18f6c3121bbceeb520c9b5f43f1e629f0f93cd",
      "parents": [
        "b7f50cfa3630b6e079929ffccfd442d65064ee1f"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue Oct 26 14:21:13 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 26 16:52:03 2010 -0700"
      },
      "message": "um: fix global timer issue when using CONFIG_NO_HZ\n\nThis fixes a issue which was introduced by fe2cc53e (\"uml: track and make\nup lost ticks\").\n\ntimeval_to_ns() returns long long and not int.  Due to that UML\u0027s timer\ndid not work properlt and caused timer freezes.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nAcked-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "005a59ec745d23f60222f7712adde48f64d7d3c8",
      "tree": "094788ffb7b6b0e19d93283968e7ded8579f521c",
      "parents": [
        "51102ee5b8853d230e534cbcd0d888f0134738a3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Apr 21 01:27:08 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 09 16:47:25 2010 -0400"
      },
      "message": "Deal with missing exports for hostfs\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "fb967ecc584c20c74a007de749ca597068b0fcac",
      "tree": "6b597433e4945584c0050f9e481ba4bb65e6c879",
      "parents": [
        "032093bd44ac935ed3792ef592f94497d491cd8b"
      ],
      "author": {
        "name": "Liu Aleaxander",
        "email": "aleaxander@gmail.com",
        "time": "Tue Jun 29 15:05:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 29 15:29:32 2010 -0700"
      },
      "message": "um: os-linux/mem.c needs sys/stat.h\n\nThe os-linux/mem.c file calls fchmod function, which is declared in sys/stat.h\nheader file, so include it.  Fixes build breakage under FC13.\n\nSigned-off-by: Liu Aleaxander \u003cAleaxander@gmail.com\u003e\nAcked-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f3c1fa4c3f52ef65005ae5162e5173e875b8c0c",
      "tree": "a8a1c7c333481e108de78a854d85a7bb9f84e43b",
      "parents": [
        "13bd8e4673d527a9e48f41956b11d391e7c2cfe0"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@web.de",
        "time": "Mon Apr 19 17:46:23 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Apr 19 17:46:23 2010 +0900"
      },
      "message": "uml: Fix build breakage after slab.h changes\n\nWe now have to to include linux/slab.h explicitly for kmalloc \u0026\nfriends.  Files that build against host headers already get their\nprototypes via um_malloc.h, linux/slab.h may even be unavailable.\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@web.de\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "edf382bc6d4429d796fc3b26f7a33eaeca9db8ec",
      "tree": "3e93b95c064cab1687d110bb124997d9d3578b52",
      "parents": [
        "4765d681a4dccdc6ded7dd20329f5498aa53b0d0"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinderrajput@gmail.com",
        "time": "Sun Sep 20 14:41:40 2009 +0530"
      },
      "committer": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinderrajput@gmail.com",
        "time": "Sun Sep 20 15:59:20 2009 +0530"
      },
      "message": "includecheck fix: um, helper.c\n\nfix the following \u0027make includecheck\u0027 warning:\n\n  arch/um/os-Linux/helper.c: linux/limits.h is included more than once.\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nCc: jdike@addtoit.com\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nLKML-Reference: \u003c1247064950.4382.45.camel@ht.satnam\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\n"
    },
    {
      "commit": "5062910a06ee979002edbf58ab65481c81242df4",
      "tree": "b3c961d2fc0058d400cf78617d11714af19d1180",
      "parents": [
        "dc71768742b39bca298e9ca6c91e575cd4b140e6"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Mar 31 15:23:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:16 2009 -0700"
      },
      "message": "uml: improve error messages\n\nThese error messages are from check_sysemu(), not check_ptrace().\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00699e8472cc0209d57b5c5614bc2ec98e665004",
      "tree": "8091019be80b9c3981ba5cde96318c073cd45242",
      "parents": [
        "86d6f2bf61eb2a28fa63c0a19330d36226426477"
      ],
      "author": {
        "name": "akpm@linux-foundation.org",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Mar 12 14:31:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 12 16:20:23 2009 -0700"
      },
      "message": "uml: fix WARNING: vmlinux: \u0027memcpy\u0027 exported twice\n\nFix the following warning on x86_64:\n\nLD vmlinux.o\nMODPOST vmlinux.o\nWARNING: vmlinux: \u0027memcpy\u0027 exported twice. Previous export was in vmlinux\n\nFor x86_64, this symbol is already exported from arch/um/sys-x86_64/ksyms.c.\n\nReported-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nTested-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "17c324fa80914e5b39d423dfd1a3cd61a3ec9866",
      "tree": "b8a4d8ed638870ded8efa116cf9d1c8cab62b3bd",
      "parents": [
        "6cbeba55c5cbd042040d6114471637e8b10d4a6b"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Thu Dec 04 15:07:33 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Dec 04 15:07:33 2008 -0800"
      },
      "message": "um: Kill directly reference of netdev-\u003epriv\n\nSimply replace netdev-\u003epriv with netdev_priv().\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec82c32d45644998a28abad0a6a9ccdd721a054e",
      "tree": "191b1828648cd3a6faf54438e9748e212211bc9b",
      "parents": [
        "887c57d480ee9dbfec53f2539359dd289f50acab"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 04:14:29 2008 -0400"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Oct 22 22:55:22 2008 -0700"
      },
      "message": "x86, um: get rid of arch/um/os symlink\n\nwe can get DEV_NULL defined for arch/um/drivers/null.c in less\nconvoluted ways, TYVM...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "887c57d480ee9dbfec53f2539359dd289f50acab",
      "tree": "248852c418ea5a30d51c882f42d3a5020d6c5e52",
      "parents": [
        "aa7bd942498512d6b77d1d0da846a8ecdd5d6186"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 04:12:10 2008 -0400"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Oct 22 22:55:22 2008 -0700"
      },
      "message": "x86, um: get rid of excessive includes of uml-config.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "d2efa6d5ce14f92d13e2710f7343687a9acfd324",
      "tree": "ac206ab4734b64e6fc04402b3289e72f102162df",
      "parents": [
        "b25f29b0da23f4f784f9bcae954b157e1f45cc69"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Oct 15 22:01:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:30 2008 -0700"
      },
      "message": "uml: remove the dead TTY_LOG code\n\nRemove the dead CONFIG_TTY_LOG (no kconfig option).\n\nReported-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99764fa4ceeecba8b9e0a8a5565b418a2e94f83b",
      "tree": "aecf842728e5dfc80743662d87c089b24896f8ed",
      "parents": [
        "4a5675820436e4ad738dd442c1cc8a165101509b"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Wed Jul 23 21:28:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:24 2008 -0700"
      },
      "message": "UML: make several more things static\n\n- Make some variables and functions static, since they don\u0027t need to be\n  global.\n\n- Remove an unused function - arch/um/kernel/time.c::sched_clock().\n\n- Clean the style a bit as complained by checkpatch.pl.\n\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1ef9167ca4494a8c6d71d0031c73e9c8841eadd",
      "tree": "a4c5a1420501a54ddd5bcf44ff7224e3293e8d3e",
      "parents": [
        "14c8a77e1bbd693446dad297d2ae2dd22f187e4f"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Thu Jun 12 15:21:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 18:05:40 2008 -0700"
      },
      "message": "uml: work around broken host PTRACE_SYSEMU\n\nFedora broke PTRACE_SYSEMU again, and UML crashes as a result when it\ndoesn\u0027t need to.  This patch makes the PTRACE_SYSEMU check fail gracefully\nand makes UML fall back to PTRACE_SYSCALL.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "14c8a77e1bbd693446dad297d2ae2dd22f187e4f",
      "tree": "4767de6a56617b08a4469ffc1ba73401dbf979e3",
      "parents": [
        "529a4f4ec90ffd9394fdfc22bea7a858ae343171"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Thu Jun 12 15:21:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 18:05:40 2008 -0700"
      },
      "message": "uml: remove include of asm/user.h\n\nI allowed an include of asm/user.h to sneak back in.  This patch replaces\nit with sys/user.h.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6d8adf477439e7086224bc9674c6b6638780783",
      "tree": "edf874835e3c146430f73869f0d2857dd6a30e4f",
      "parents": [
        "3d5ede6f776bdb1483bcd086f79c3bf41fed3865"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 05 22:46:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:10 2008 -0700"
      },
      "message": "uml: PATH_MAX needs limits.h\n\nInclude limits.h to get a definition of PATH_MAX.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3d5ede6f776bdb1483bcd086f79c3bf41fed3865",
      "tree": "7a864fd7a848ae719bf7c838c5717f63af29f4a8",
      "parents": [
        "8bfd04b974689f700bbd053ad6e66b0a95fb80c9"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Thu Jun 05 22:46:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:10 2008 -0700"
      },
      "message": "uml: stub needs to tolerate SIGWINCH\n\nWe lost the marking of SIGWINCH as being OK to receive during stub\nexecution, causing a panic should that happen.\n\nCc: Benedict Verheyen \u003cbenedict.verheyen@gmail.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "40fb16a360d9c6459afee91dc793c1e3374feb94",
      "tree": "bbe5f8a4185ac6784d82ee8c938bb246518f6791",
      "parents": [
        "9f31287b443f30a591539e448fb628e3827a8f61"
      ],
      "author": {
        "name": "Tom Spink",
        "email": "tspink@gmail.com",
        "time": "Thu Jun 05 22:46:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:10 2008 -0700"
      },
      "message": "uml: deal with inaccessible address space start\n\nThis patch makes os_get_task_size locate the bottom of the address space,\nas well as the top.  This is for systems which put a lower limit on mmap\naddresses.  It works by manually scanning pages from zero onwards until a\nvalid page is found.\n\nBecause the bottom of the address space may not be zero, it\u0027s not\nsufficient to assume the top of the address space is the size of the\naddress space.  The size is the difference between the top address and\nbottom address.\n\n[jdike@addtoit.com: changed the name to reflect that this function is\nsupposed to return the top of the process address space, not its size and\nchanged the return value to reflect that.  Also some minor formatting\nchanges]\nSigned-off-by: Tom Spink \u003ctspink@gmail.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06e1e4ffbd1932e288839b3140cda6b8141eb684",
      "tree": "c76ad0854f28a0600885301e25e8e7197e4e924c",
      "parents": [
        "34397892a3d677d857fdaf8dec66a66b07dde0b5"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Thu Jun 05 22:46:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 06 11:29:10 2008 -0700"
      },
      "message": "uml: deal with host time going backwards\n\nProtection against the host\u0027s time going backwards (eg, ntp activity on\nthe host) by keeping track of the time at the last tick and if it\u0027s\ngreater than the current time, keep time stopped until the host catches\nup.\n\nCc: Nix \u003cnix@esperi.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3787fa6df5bb6e80b274ff805e10b6a9bfc4588c",
      "tree": "82f7ba3ab8434929c72d7fc5fa5b352cd500aa70",
      "parents": [
        "296cd66f7f6e130fe08e6880ecb13c3fc615a8db"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Wed May 21 06:32:11 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 21 16:55:58 2008 -0700"
      },
      "message": "fix include order in sys-i386/registers.c\n\nWe want sys/ptrace.h before any includes of linux/ptrace.h and\nasm/user.h pulls the latter.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe2cc53ee013a4d4d0317d418e7019fe6533a5a8",
      "tree": "7a173e2703c638b8eab4a2a6762c256114acec60",
      "parents": [
        "3d88958e01e71bb14a367db75f12f7a59c068f02"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon May 12 14:02:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:22 2008 -0700"
      },
      "message": "uml: track and make up lost ticks\n\nAlarm delivery could be noticably late in the !CONFIG_NOHZ case because lost\nticks weren\u0027t being taken into account.  This is now treated more carefully,\nwith the time between ticks being calculated and the appropriate number of\nticks delivered to the timekeeping system.\n\nCc: Nix \u003cnix@esperi.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5d33e4d7fd9a52d2673e5c730eab81856e100a74",
      "tree": "c4d5014fa21ebde900441b4a5b51092a09c47823",
      "parents": [
        "60a2988aea701a6424809a5432bf068667aac177"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon May 12 14:01:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:22 2008 -0700"
      },
      "message": "uml: random driver fixes\n\nThe random driver would essentially hang if the host\u0027s /dev/random returned\n-EAGAIN.  There was a test of need_resched followed by a schedule inside the\nloop, but that didn\u0027t help and it\u0027s the wrong way to work anyway.\n\nThe right way is to ask for an interrupt when there is input available from\nthe host and handle it then rather than polling.\n\nNow, when the host\u0027s /dev/random returns -EAGAIN, the driver asks for a wakeup\nwhen there\u0027s randomness available again and sleeps.  The interrupt routine\njust wakes up whatever processes are sleeping on host_read_wait.\n\nThere is an atomic_t, host_sleep_count, which counts the number of processes\nwaiting for randomness.  When this reaches zero, the interrupt is disabled.\n\nAn added complication is that async I/O notification was only recently added\nto /dev/random (by me), so essentially all hosts will lack it.  So, we use the\nsigio workaround here, which is to have a separate thread poll on the\ndescriptor and send an interrupt when there is input on it.  This mechanism is\nactivated when a process gets -EAGAIN (activating this multiple times is\nharmless, if a bit wasteful) and deactivated by the last process still\nwaiting.\n\nThe module name was changed from \"random\" to \"hw_random\" in order for udev to\nrecognize it.\n\nThe sigio workaround needed some changes.  sigio_broken was added for cases\nwhen we know that async notification doesn\u0027t work.  This is now called from\nmaybe_sigio_broken, which deals with pts devices.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43f5b3085fdd27c4edf535d938b2cb0ccead4f75",
      "tree": "63eabda9f505ed0a07e0a12fd828674cde8f7861",
      "parents": [
        "484f1e2c1ea58c6a4352313f7ee4edd4b52deecd"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon May 12 14:01:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:22 2008 -0700"
      },
      "message": "uml: fix build when SLOB is enabled\n\nReintroduce uml_kmalloc for the benefit of UML libc code.  The\nprevious tactic of declaring __kmalloc so it could be called directly\nfrom the libc side of the house turned out to be getting too intimate\nwith slab, and it doesn\u0027t work with slob.\n\nSo, the uml_kmalloc wrapper is back.  It calls kmalloc or whatever\nthat translates into, and libc code calls it.\n\nkfree is left alone since that still works, leaving a somewhat\ninconsistent API.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "47906dd9e63ba1a8cb188e9e786c5928674fbbd3",
      "tree": "34db787b1b1de132e374cbce25994ac652ccf57e",
      "parents": [
        "46d7b522ebf486edbd096965d534cc6465e9e309"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon May 12 14:01:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:21 2008 -0700"
      },
      "message": "uml: tidy ptrace interface\n\nTidy the ptrace interface code.  Removed a bunch of unused macros.\nStarted converting register sets from arrays of longs to structures.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "96cee3044dca2e6510ca7cc276d1eac34a1cfd51",
      "tree": "b34789b8268f71f8c72e885428ee81791d6be756",
      "parents": [
        "53c258787427ea43ebfa76fefa6534cae507e521"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon May 12 14:01:48 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:21 2008 -0700"
      },
      "message": "uml: style fixes\n\nA few random style fixes.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "53c258787427ea43ebfa76fefa6534cae507e521",
      "tree": "6054ebe6156c629234fcd5523a702b6703e0f017",
      "parents": [
        "c714a534d85576af21b06be605ca55cb2fb887ee"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon May 12 14:01:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:21 2008 -0700"
      },
      "message": "uml: redo host capability detection and disabling\n\nRedo how host capabilities are recorded at startup and disabled on the\ncommand line.\n\nThere are now explicit variables saying what\u0027s been disabled by the\ncommand line rather than the implicitness of the have_* variable being\nzero.  The capability variables now start at zero and are set to one\nas their capabilities are found to be present on the host.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4415d8a5aaec2008833e1c474b38627c0bc738ca",
      "tree": "ec6c96b7fe46b43f96bf0248ad95420cb7424d07",
      "parents": [
        "074a0db8e17ae271736148809c5f9d47dec2d993"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Mon Apr 28 02:13:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:28 2008 -0700"
      },
      "message": "arch/um/os-Linux/sys-i386/task_size.c: improve a bit\n\nImprove this code a bit: check sigaction\u0027s return value and remove a useless\nfflush().\n\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "626c59f5edb284027bfe25cc15e7de2f532090b5",
      "tree": "bcc981233e1f44dcb68566f3e63732b6125ad050",
      "parents": [
        "3595726ac349ca9682703535e9a999c4f08c2d80"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Mon Apr 28 02:13:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:28 2008 -0700"
      },
      "message": "arch/um/os-Linux/start_up.c: various improvements.\n\n - lets ptrace_child become void\n - adds checking for the return value of change_sig\n - moves errors info into stderr instead of stdout.\n\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "297e1b256b1090adbb4357608be3d4301e76c0ce",
      "tree": "829f9286cd447de2a035c6a08f2cb31276e34d64",
      "parents": [
        "4a27214d7be31e122db4102166f49ec15958e8e9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 18:59:42 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 26 19:21:16 2008 +0200"
      },
      "message": "uml: fix build error\n\nfix:\n\n arch/um/os-Linux/helper.c: In function \u0027run_helper\u0027:\n arch/um/os-Linux/helper.c:73: error: \u0027PATH_MAX\u0027 undeclared (first use in this function)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2f56debd77a8f52f1ac1d3c3d89cc7ce5e083230",
      "tree": "353847d10aa0d5bc1de2707ecd8fa2391ad096f3",
      "parents": [
        "e4d06b3f904ddfab4531a1e23f1f5e1bd284b605"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Sat Feb 23 15:23:49 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:12:15 2008 -0800"
      },
      "message": "uml: fix FP register corruption\n\nCommit ee3d9bd4de1ed93d2a7ee41c331ed30a1c7b8acd (\"uml: simplify SIGSEGV\nhandling\"), while greatly simplifying the kernel SIGSEGV handler that\nruns in the process address space, introduced a bug which corrupts FP\nstate in the process.\n\nPreviously, the SIGSEGV handler called the sigreturn system call by hand - it\ncouldn\u0027t return through the restorer provided to it because that could try to\ncall the libc restorer which likely wouldn\u0027t exist in the process address\nspace.  So, it blocked off some signals, including SIGUSR1, on entry to the\nSIGSEGV handler, queued a SIGUSR1 to itself, and invoked sigreturn.  The\nSIGUSR1 was delivered, and was visible to the UML kernel after sigreturn\nfinished.\n\nThe commit eliminated the signal masking and the call to sigreturn.  The\nhandler simply hits itself with a SIGTRAP to let the UML kernel know that it\nis finished.  UML then restores the process registers, which effectively\nlongjmps the process out of the signal handler, skipping sigreturn\u0027s restoring\nof register state and the signal mask.\n\nThe bug is that the host apparently sets used_fp to 0 when it saves the\nprocess FP state in the sigcontext on the process signal stack.  Thus, when\nthe process is longjmped out of the handler, its FP state is corrupt because\nit wasn\u0027t saved on the context switch to the UML kernel.\n\nThis manifested itself as sleep hanging.  For some reason, sleep uses floating\npoint in order to calculate the sleep interval.  When a page fault corrupts\nits FP state, it is faked into essentially sleeping forever.\n\nThis patch saves the FP state before entering the SIGSEGV handler and restores\nit afterwards.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "11a7ac23a2d7464a74ceb7b97dbae4d5a0208576",
      "tree": "9b4f26d1675ef802b82b01a8780a58d21c17bd2a",
      "parents": [
        "5134d8fea06ab51459fd095d091d1e6f73a44553"
      ],
      "author": {
        "name": "Jim Meyering",
        "email": "meyering@redhat.com",
        "time": "Fri Feb 08 04:22:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:43 2008 -0800"
      },
      "message": "uml: improved error handling while locating temp dir\n\n* arch/um/os-Linux/mem.c (make_tempfile): Don\u0027t deref NULL upon failed malloc.\n\n* arch/um/os-Linux/mem.c (make_tempfile): Handle NULL tempdir.\nDon\u0027t let a long tempdir (e.g., via TMPDIR) provoke heap corruption.\n\n[ jdike - formatting cleanups, deleted obsolete comment ]\n\nSigned-off-by: Jim Meyering \u003cmeyering@redhat.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5134d8fea06ab51459fd095d091d1e6f73a44553",
      "tree": "504a84a9290a40f0c98b7c5731b7df82cb357ebe",
      "parents": [
        "536788fe2d28e11db6aeda74207d95d750fb761f"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Feb 08 04:22:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:42 2008 -0800"
      },
      "message": "uml: style fixes in arch/um/os-Linux\n\nStyle changes under arch/um/os-Linux:\n\tinclude trimming\n\tCodingStyle fixes\n\tsome printks needed severity indicators\n\nmake_tempfile turns out not to be used outside of mem.c, so it is now static.\nIts declaration in tempfile.h is no longer needed, and tempfile.h itself is no\nlonger needed.\n\ncreate_tmp_file was also made static.\n\ncheckpatch moans about an EXPORT_SYMBOL in user_syms.c which is part of a\nmacro definition - this is copying a bit of kernel infrastructure into the\nlibc side of UML because the kernel headers can\u0027t be included there.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "536788fe2d28e11db6aeda74207d95d750fb761f",
      "tree": "73df2d3a46c542c71d3a84c20c8fd1ce617386a3",
      "parents": [
        "2f569afd9ced9ebec9a6eb3dbf6f83429be0a7b4"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Feb 08 04:22:07 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:42 2008 -0800"
      },
      "message": "uml: runtime host VMSPLIT detection\n\nCalculate TASK_SIZE at run-time by figuring out the host\u0027s VMSPLIT - this is\nneeded on i386 if UML is to run on hosts with varying VMSPLITs without\nrecompilation.\n\nTASK_SIZE is now defined in terms of a variable, task_size.  This gets rid of\nan include of pgtable.h from processor.h, which can cause include loops.\n\nOn i386, task_size is calculated early in boot by probing the address space in\na binary search to figure out where the boundary between usable and non-usable\nmemory is.  This tries to make sure that a page that is considered to be in\nuserspace is, or can be made, read-write.  I\u0027m concerned about a system-global\nVDSO page in kernel memory being hit and considered to be a userspace page.\n\nOn x86_64, task_size is just the old value of CONFIG_TOP_ADDR.\n\nA bunch of config variable are gone now.  CONFIG_TOP_ADDR is directly replaced\nby TASK_SIZE.  NEST_LEVEL is gone since the relocation of the stubs makes it\nirrelevant.  All the HOST_VMSPLIT stuff is gone.  All references to these in\narch/um/Makefile are also gone.\n\nI noticed and fixed a missing extern in os.h when adding os_get_task_size.\n\nNote: This has been revised to fix the 32-bit UML on 64-bit host bug that\nMiklos ran into.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "576c013df0ac9ad1f217452c14ddde246bb1a70d",
      "tree": "462f11121cd5157516a094fa843480c8a44f29e0",
      "parents": [
        "b54988325c4cbf8bd92c0def53387ab6516d0920"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:31 2008 -0800"
      },
      "message": "uml: move register initialization\n\nCalling init_registers inside the skas3 checking causes mysterious crashes if\nit doesn\u0027t happen because the skas3 checking is bypassed.  This patch moves it\nto os_early_checks.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b54988325c4cbf8bd92c0def53387ab6516d0920",
      "tree": "d8b86e3087c5c15fd713c4cee79e047973d3298e",
      "parents": [
        "95906b24fbe4d22e5861f67fe1e8274c7ecfeda1"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:31 2008 -0800"
      },
      "message": "uml: add newlines to printks\n\nSome printks were missing newlines.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf53d85ec20c228e0efdadbdb12c0f92283fcfd0",
      "tree": "de724ce6fa140fbc26b2f98fcfffbc5384bd8553",
      "parents": [
        "80e39311ff3d7d2267ea8d259aab8dc9d5a59d61"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:18 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: implement O_APPEND\n\nThe .a flags in openflags never had an implementation.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3a24ebf0cb2ca44fdcdb5cae9ed2e778e5170f97",
      "tree": "fe67635a8efdd58fade83eb573a0ed88c9c816b1",
      "parents": [
        "cfef8f34e7cf57f3d278ceda79c85112dec13dc6"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: remove init_irq_signals\n\ninit_irq_signals doesn\u0027t need to be called from the context of a new process.\nIt initializes handlers, which are useless in process context.  With that call\ngone, init_irq_signals has only one caller, so it can be inlined into\ninit_new_thread_signals.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cfef8f34e7cf57f3d278ceda79c85112dec13dc6",
      "tree": "5ddaf58aa91905cfda2917d6264e24fb950ab88f",
      "parents": [
        "d7b88513c504e49d450b0f89f80ba9d451a3c804"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: signal handling tidying\n\nThis patch tidies the signal handling code slightly.\n\npending is renamed to signals_pending for symmetry with signals_enabled.\n\nremove_sigstack was unused, so can be deleted.\n\nThe value of change_sig was never used, so it is now void and the\nreturn value is not calculated any more.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6a2d1f7024f93e4622cd7ba633666a63ccce49e",
      "tree": "c51eb5112312cf70af9786a4fa5b650efa516de8",
      "parents": [
        "75ada8ffe08cef9b506a796ba6f9ce2071dcf0d7"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: clean up sig_handler_common_skas\n\nsig_handler_common_skas needs significant modernization, starting with\nits name and storage class.\n\nThere is no need to hide the true type of the sigcontext pointer, so\nthe void * dummy parameter can be replaced with a sigcontext *sc.\n\nThe array of uml_pt_regs structs used in the page fault case are gone,\nreplaced by a local variable.  This is also used in the non-segfault\ncase instead of the copy in the task_struct.  Since it\u0027s local, the\nspecial handling of the is_user flag can go away.\n\nThere hasn\u0027t been any special treatment of SIGUSR1 in ages, so the\nline that enables it can be deleted.\n\nThe special treatment of SIGSEGV similarly goes away, but to\ncompensate, SA_NODEFER is added to sa_mask when registering a signal\nhandler.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "75ada8ffe08cef9b506a796ba6f9ce2071dcf0d7",
      "tree": "ee7702a687fc3857f8c5190bca4f7c5f3c1497d2",
      "parents": [
        "e06173bde0ec9830a296720f8cd7cb2f17b76fa4"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:12 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: move sig_handler_common_skas\n\nThis patch moves sig_handler_common_skas from\narch/um/os-Linux/skas/trap.c to its only caller in\narch/um/os-Linux/signal.c.  trap.c is now empty, so it can be removed.\n\nThis is code movement only - the significant cleanup needed here is\ndone in the next patch.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e06173bde0ec9830a296720f8cd7cb2f17b76fa4",
      "tree": "2921ec692006b07a2ff2fadcf5e392d160b1c766",
      "parents": [
        "a9b71b6c5473d2c1526deac0a1a207fe476f6088"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:12 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: don\u0027t allow processes to call into stub\n\nKill a process that tries to branch into a stub and execute a system\ncall.  There are no security implications here - a system call in a\nstub is treated the same as a system call anywhere else.  But if a\nprocess is trying to branch into a stub, either it is trying something\nnasty or it has gone haywire, so it\u0027s a good idea to get rid of it in\neither case.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1aa351a308d2c3ddb92b6cc45083fc54271d0010",
      "tree": "8694809fe286285fa4afbacd5d69e9097d5baf62",
      "parents": [
        "fce8c41c9f68b9af36f3076bae8f1d469a6e7aab"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:10 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: tidy helper code\n\nStyle fixes to arch/um/os/helper.c and tidying up the breakpoint fix a\nbit.\n\nhelper.c gets all the usual style fixes -\n\t updated copyright\n\t all printks get severities\n\nAlso -\n\t errval changes to err in helper_child\n\t fixed an obsolete comment\n\t run_helper was killing a child process which is guaranteed to\nbe dead or dying anyway\n\nRemoved the nohang and pname arguments from helper_wait and fixed the\ndeclaration and callers.  nohang was used only in the slirp driver and\nI don\u0027t think it was needed.  I think pname was a bit of overkill in\nputting out an error message when something goes wrong.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fce8c41c9f68b9af36f3076bae8f1d469a6e7aab",
      "tree": "3580fd114bcef42a898c838f5a58ddcb2d29ae99",
      "parents": [
        "0983a88b9f0ceffb2116ce92c7b273ce2aec7b93"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: use barrier() instead of mb()\n\nsignals_enabled and pending have requirements on the order in which they are\nmodified.  This used to be done by declaring them volatile and putting an mb()\nwhere the ordering requirements were in effect.\n\nAfter getting a better (I hope) understanding of how to do this correctly, the\nvolatile declarations are gone and the mb()\u0027s replaced by barrier()\u0027s.\n\nOne of the mb()\u0027s was deleted because I see no problematic writes that could\nbe re-ordered past that point.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0983a88b9f0ceffb2116ce92c7b273ce2aec7b93",
      "tree": "cf63f0646f64eecc80e5e3cd8d9c16252a751d8e",
      "parents": [
        "8efa3c9d545ab6adc5c5e001cbd7aee60909b3da"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: install panic notifier earlier\n\nIt turns out that if there\u0027s a panic early enough, UML will just sit there in\nthe LED-blinking loop because the panic notifier hadn\u0027t been installed yet.\n\nThis patch installs it earlier.\n\nIt also fixes the problem which exposed the hang, namely that if you give UML\na zero-sized initrd, it will ask alloc_bootmem for zero bytes, and that will\ncause the panic.\n\nWhile I was in initrd.c, I gave it a style makeover.\n\nPrompted by checkpatch, I moved a couple extern declarations of uml_exitcode\nto kern_util.h.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8efa3c9d545ab6adc5c5e001cbd7aee60909b3da",
      "tree": "1ec5750233c242168f17a9669ff4ba4aa113a2e6",
      "parents": [
        "0b4e273fb83bce5dd8e166a4defb16ebdd215abf"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:07 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: eliminate setjmp_wrapper\n\nsetjmp_wrapper existed to provide setjmp to kernel code when UML used libc\u0027s\nsetjmp and longjmp.  Now that UML has its own implementation, this isn\u0027t\nneeded and kernel code can invoke setjmp directly.\n\ndo_buffer_op is massively cleaned up since it is no longer a callback from\nsetjmp_wrapper and given a va_list from which it must extract its arguments.\n\nThe actual setjmp is moved from buffer_op to do_op_one_page because the copy\noperation is inside an atomic section (kmap_atomic to kunmap_atomic) and it\nshouldn\u0027t be longjmp-ed out of.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1adfd6095e1c654dce5a692db5aa5a2b2a8d6b0d",
      "tree": "229d0af90109b55bf59fe648947d66c4f044cf5a",
      "parents": [
        "bf8fde785b872282e7e86d9ea8a9c4e543985bb3"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:05 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: style fixes in file.c\n\narch/um/os-Linux/file.c needed some style work -\n\tupdated the copyright\n\tcleaned up the includes\n\tCodingStyle fixes\n\tadded some missing CATCH_EINTRs\n\tos_set_owner was unused, so it is gone\n\tall printks now have severities\n\tfcntl(F_GETFL) was being called without checking the return\n\tremoved an obsolete comment\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf8fde785b872282e7e86d9ea8a9c4e543985bb3",
      "tree": "cb813edfbb04c8474caab0f8a26a8512a503cf82",
      "parents": [
        "7b5cc6ee6cf9001775c348bac09814a45f1276b7"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:04 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: miscellaneous code cleanups\n\nCode tidying -\n\tthe pid field of struct irq_fd isn\u0027t used, so it is removed\n     \tos_set_fd_async needed to read flags before changing them, it\ndoesn\u0027t need a pid passed in because it can call getpid itself, and a\nblock of unused code needed deleting\n\tos_get_exec_close was unused, so it is removed\n\tptrace_child called _exit for historical reasons which are no\nlonger valid, so just calls exit instead\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fee64d3c153f1d5c28f91214b4d0db54d3f1fe0a",
      "tree": "5a846181005cdb4513d8284c4b1f036afaa78ff8",
      "parents": [
        "260c0cb886c304b760835b6033bf876a7701eb91"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:02 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: syle fixes in arch/um/os-Linux\n\nStyle fixes in arch/um/os-Linux/irq.c and arch/um/os-Linux/sigio.c:\n\tUpdated copyrights\n\ttrimmed includes\n\tadded severity indicators to printks\n\tCodingStyle fixes\n\tturned an bunch of panics into printks\n\tcall some libc functions directly instead of going through the\nos_* wrappers\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e6f2ac480ce398ade2fd6b5e02d00d1265f1e0f",
      "tree": "25f5589189170c20a765d4e6f0c56b42ad58ea20",
      "parents": [
        "d25f2e1235aab716c9fd6ba36c42503627a3a0e3"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:58 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: kill processes instead of panicing kernel\n\nUML was panicing in the case of failures of libc calls which shouldn\u0027t happen.\n This is an overreaction since a failure from libc doesn\u0027t normally mean that\nkernel data structures are in an unknown state.  Instead, the current process\nshould just be killed if there is no way to recover.\n\nThe case that prompted this was a failure of PTRACE_SETREGS restoring the same\nstate that was read by PTRACE_GETREGS.  It appears that when a process tries\nto load a bogus value into a segment register, it segfaults (as expected) and\nthe value is actually loaded and is seen by PTRACE_GETREGS (not expected).\n\nThis case is fixed by forcing a fatal SIGSEGV on the process so that it\nimmediately dies.  fatal_sigsegv was added for this purpose.  It was declared\nas noreturn, so in order to pursuade gcc that it actually does not return, I\nadded a call to os_dump_core (and declared it noreturn) so that I get a core\nfile if somehow the process survives.\n\nAll other calls in arch/um/os-Linux/skas/process.c got the same treatment,\nwith failures causing the process to die instead of a kernel panic, with some\nexceptions.\n\nuserspace_tramp exits with status 1 if anything goes wrong there.  That will\ncause start_userspace to return an error.  copy_context_skas0 and\nmap_stub_pages also now return errors instead of panicing.  Callers of thes\nfunctions were changed to check for errors and do something appropriate.\nUsually that\u0027s to return an error to their callers.\ncheck_skas3_ptrace_faultinfo just exits since that\u0027s too early to do anything\nelse.\n\nsave_registers, restore_registers, and init_registers now return status\ninstead of panicing on failure, with their callers doing something\nappropriate.\n\nThere were also duplicate declarations of save_registers and restore_registers\nin os.h - these are gone.\n\nI noticed and fixed up some whitespace damage.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d25f2e1235aab716c9fd6ba36c42503627a3a0e3",
      "tree": "5eaabe739be50f1417707fb6eef2da75dc567a30",
      "parents": [
        "ee3d9bd4de1ed93d2a7ee41c331ed30a1c7b8acd"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:57 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: use ptrace directly in libc code\n\nSome register accessor cleanups -\n\tuserspace() was calling restore_registers and save_registers for no\nreason, since userspace() is on the libc side of the house, and these\nadd no value over calling ptrace directly\n\tinit_thread_registers and get_safe_registers were the same thing,\nso init_thread_registers is gone\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ee3d9bd4de1ed93d2a7ee41c331ed30a1c7b8acd",
      "tree": "f49369c9f941066bdb8bbb2b4fd9d40bf2fda292",
      "parents": [
        "ca77b555c0aafa3070fbb67592abaaa1b8d31913"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:56 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: simplify SIGSEGV handling\n\nSimplify the page fault stub by not masking signals while it is running.  This\nallows it to signal that it is done by executing an instruction which will\ngenerate a SIGTRAP (int3 on x86) rather than running sigreturn by hand after\nqueueing a blocked SIGUSR1.\n\nuserspace_tramp now no longer puts anything in the SIGSEGV sa_mask, but it\ndoes add SA_NODEFER to sa_flags so that SIGSEGV is still enabled after the\nsignal handler fails to run sigreturn.\n\nSIGWINCH is just blocked so that we don\u0027t have to deal with it and the signal\nmasks used by wait_stub_done are updated to reflect the smaller number of\nsignals that it has to worry about.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b7e967484f4197d799e14b844b78118e93192c6",
      "tree": "61896d643c3a4b302d709a02aa0b7c140c2d8805",
      "parents": [
        "291248fd6e371bcbfb8a77689c5d741a1527488f"
      ],
      "author": {
        "name": "Karol Swietlicki",
        "email": "magotari@gmail.com",
        "time": "Mon Feb 04 22:30:50 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:26 2008 -0800"
      },
      "message": "uml: convert functions to void\n\nThis patch changes a few functions into returning void.  The return values\nwere not used anyway, so I think it should not be a problem.  Also removed a\nlittle leftover bit from TT mode.\n\nSigned-off-by: Karol Swietlicki \u003cmagotari@gmail.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab8cda4347e2ffed658e522c9398932509c278bd",
      "tree": "de01014501146ae28fd5c76c0759ddd9bf1982d5",
      "parents": [
        "8299ca5ce10c9532848bd2e5526ba975f8d80d1d"
      ],
      "author": {
        "name": "Lucas Woods",
        "email": "woodzy@gmail.com",
        "time": "Mon Feb 04 22:30:49 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:26 2008 -0800"
      },
      "message": "arch/um: remove duplicate includes\n\nSigned-off-by: Lucas Woods \u003cwoodzy@gmail.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "edea138584d7586a3b93b6d5ab5ec021d18e11e9",
      "tree": "0c5a5dd14256d675c8c64c8abdda86053f72abc8",
      "parents": [
        "0ba7fe03b638a084a4e15e21d2e585ba321ad9c8"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:46 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:26 2008 -0800"
      },
      "message": "uml: tidy kern_util.h\n\nTidy kern_util.h.  It turns out that most of the function declarations\naren\u0027t used, so they can go away.  os.h no longer includes\nkern_util.h, so files which got it through os.h now need to include it\ndirectly.  A number of other files never needed it, so these includes\nare deleted.\n\nThe structure which was used to pass signal handlers from the kernel\nside to the userspace side is gone.  Instead, the handlers are\ndeclared here, and used directly from libc code.  This allows\narch/um/os-Linux/trap.c to be deleted, with its remnants being moved\nto arch/um/os-Linux/skas/trap.c.\n\narch/um/os-Linux/tty.c had its inclusions changed, and it needed some\nstyle attention, so it got tidied.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0a9290ecf0dbb89958cb3a3f78964015a7de402",
      "tree": "1a987905fe5047cd74966149fc11689713cd7bea",
      "parents": [
        "9226b8384776798986640ce07764d17ba66aa54f"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Mon Feb 04 22:30:41 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:25 2008 -0800"
      },
      "message": "uml: const and other tidying\n\nThis patch also does some improvements for uml code.  Improvements include\ndropping unnecessary cast, killing some unnecessary code and still some\nconstifying for pointers etc..\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c9a3072d13e4b8a6549ecc1db6390a55c7ee2ddf",
      "tree": "7b3eee2e8b71d844b27ed6a1c8d852915934e7f9",
      "parents": [
        "4d18de45fa921600e1b3770c3a7cb106ab48cd9d"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Mon Feb 04 22:30:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:24 2008 -0800"
      },
      "message": "uml: code tidying under arch/um/os-Linux\n\nThis patch contains varied fixes and improvements for some files under\narch/um/os-Linux/, such as a typo fix in a perror message, a missing\nargument fix for a printf, some constifying for pointers and so on.\n\n[ jdike - made sigprocmask failure return -errno instead of -1 ]\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4dbed85a35ed37d9608f4f32e5d69efa775d6223",
      "tree": "67ab558db8ccaf8d706a25e5ce87b78be241cffb",
      "parents": [
        "5867a78f41f84e5388448da62c183255dc22601f"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "stf_xl@wp.pl",
        "time": "Mon Dec 17 16:19:46 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Dec 17 19:28:15 2007 -0800"
      },
      "message": "uml: stop gdb from deleting breakpoints when running UML\n\nSometimes when UML is debugged gdb miss breakpoints.\n\nWhen process traced by gdb do fork, debugger remove breakpoints from\nchild address space. There is possibility to trace more than one fork,\nbut this not work with UML, I guess (only guess) there is a deadlock -\ngdb waits for UML and UML waits for gdb.\n\nWhen clone() is called with SIGCHLD and CLONE_VM flags, gdb see this\nas PTRACE_EVENT_FORK not as PTRACE_EVENT_CLONE and remove breakpoints\nfrom child and at the same time from traced process, because either\nhave the same address space.\n\nMaybe it is possible to do fix in gdb, but I\u0027m not sure if there is\neasy way to find out if traced and child processes share memory. So I\ndo fix for UML, it simply do not call clone() with both SIGCHLD and\nCLONE_VM flags together.  Additionally __WALL flag is used for\nwaitpid() to assure not miss clone and normal process events.\n\n[ jdike - checkpatch fixes ]\n\nSigned-off-by: Stanislaw Gruszka \u003cstf_xl@wp.pl\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0a765329ed656ef08915c8be4aba9031ba467ee4",
      "tree": "06fda066d6206674a650339ac1bfaaad4e3b632a",
      "parents": [
        "b00296fb781acfafa93687000cdef72b8922bb40"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Sat Dec 01 12:16:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Dec 03 08:13:17 2007 -0800"
      },
      "message": "uml: after_sleep_interval should return something\n\nI forgot to have an int-returning function actually return something.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "364e3a3d8a26aae058cf1c257457ad1f6b1cfe4c",
      "tree": "1e5c04d671c5fcc8c2e25c37b08378e95a7e4e11",
      "parents": [
        "9fc89c2dea7ca7915e6606e49167cdca2f3c4e30"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Nov 28 16:21:51 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Nov 29 09:24:53 2007 -0800"
      },
      "message": "uml: fix !NO_HZ busy-loop\n\nWith NO_HZ disabled, the UML idle loop effectively becomes a busy loop, as\nit will sleep for no time.\n\nThe cause was forgetting to restart the tick after waking up from sleep.\nIt was disabled before sleeping, and the remaining time used as the\ninterval to sleep.  So, the tick needs to be restarted when nanosleep\nfinishes.\n\nThis is done by introducing after_sleep_interval, which is empty in the\nNO_HZ case, but which sets the tick starting in the !NO_HZ case.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d4d5d205b653fe68c898d42e7a27a7363a4fb3ba",
      "tree": "2a453594731bf41e7ac41f3205c4819449b534e8",
      "parents": [
        "df9d177aa28d50e64bae6fbd6b263833079e3571"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Nov 14 16:58:51 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Nov 14 18:45:37 2007 -0800"
      },
      "message": "uml: fix recvmsg return value checking\n\nStupid bug - we need to compare the return value of recvmsg to the value of\niov_len, not its size.  This caused port_helper processes not to be killed on\nshutdown on x86_64 because the pids weren\u0027t being passed out properly.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a24864a1d52a97e345a6bd4862a057f98364d098",
      "tree": "a1c07cfa857d818d4a58217fdec40d765d349a4f",
      "parents": [
        "cb8fa61c2b8b29d422d7310f064d60022f18f89b"
      ],
      "author": {
        "name": "Lepton Wu",
        "email": "ytht.net@gmail.com",
        "time": "Tue Oct 16 01:27:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:09 2007 -0700"
      },
      "message": "uml: definitively kill subprocesses on panic\n\nIn a stock 2.6.22.6 kernel, poweroff a user mode linux guest (2.6.22.6 running\nin skas0 mode) will halt the host linux.  I think the reason is the kernel\nthread abort because of a bug.  Then the sys_reboot in process of user mode\nlinux guest is not trapped by the user mode linux kernel and is executed by\nhost.  I think it is better to make sure all of our children process to quit\nwhen user mode linux kernel abort.\n\n[ jdike - the kernel process needs to ignore SIGTERM, plus the waitpid/kill\nloop is needed to make sure that all of our children are dead before the\nkernel exits ]\n\nSigned-off-by: Lepton Wu \u003cytht.net@gmail.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54ae36f24b103e521dd683f66fe72b0584ccb7e2",
      "tree": "1504968363c0935479ebd28e710562d8046dd884",
      "parents": [
        "605c1e57690fddbd11347ec6788ff77c527994dd"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:09 2007 -0700"
      },
      "message": "uml: fix stub address calculations\n\nThe calculation of CONFIG_STUB_CODE and CONFIG_STUB_DATA didn\u0027t take into\naccount anything but 3G/1G and 2G/2G, leaving the other vmsplits out in the\ncold.\n\nI\u0027d rather not duplicate the four known host vmsplit cases for each of these\nsymbols.  I\u0027d also like to calculate them based on the highest userspace\naddress.\n\nThe Kconfig language seems not to allow calculation of hex constants, so I\nmoved this to as-layout.h.  CONFIG_STUB_CODE, CONFIG_STUB_DATA, and\nCONFIG_STUB_START are now gone.  In their place are STUB_CODE, STUB_DATA, and\nSTUB_START in as-layout.h.\n\ni386 and x86_64 seem to differ as to whether an unadorned constant is an int\nor a long, so I cast them to unsigned long so they can be printed\nconsistently.  However, they are also used in stub.S, where C types don\u0027t work\nso well.  So, there are ASM_ versions of these constants for use in stub.S.  I\nalso ifdef-ed the non-asm-friendly portion of as-layout.h.\n\nWith this in place, most of the rest of this patch is changing CONFIG_STUB_*\nto STUB_*, except in stub.S, where they are changed to ASM_STUB_*.\n\ndefconfig has the old symbols deleted.\n\nI also print these addresses out in case there is any problem mapping them on\nthe host.\n\nThe two stub.S files had some trailing whitespace, so that is cleaned up here.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b53f35a8093e6aed7e8e880eaa0b89a3d2fdfb0a",
      "tree": "50e19688753650e27b1f7fc1d48eb8683666e6b7",
      "parents": [
        "cd1ae0e49bdd814cfaa2e5ab28cff21a30e20085"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: network driver MTU cleanups\n\nA bunch of MTU-related cleanups in the network code.\n\nFirst, there is the addition of the notion of a maximally-sized packet, which\nis the MTU plus headers.  This is used to size the skb that will receive a\npacket.  This allows ether_adjust_skb to go away, as it was used to resize the\nskb after it was allocated.\n\nSince the skb passed into the low-level read routine is no longer resized, and\npossibly reallocated, there, they (and the write routines) don\u0027t need to get\nan sk_buff **.  They just need the sk_buff * now.  The callers of\nether_adjust_skb still need to do the skb_put, so that\u0027s now inlined.\n\nThe MAX_PACKET definitions in most of the drivers are gone.\n\nThe set_mtu methods were all the same and did nothing, so they can be\nremoved.\n\nThe ethertap driver had a typo which doubled the size of the packet rather\nthan adding two bytes to it.  It also wasn\u0027t defining its setup_size, causing\na zero-byte kmalloc and crash when the invalid pointer returned from kmalloc\nwas dereferenced.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd1ae0e49bdd814cfaa2e5ab28cff21a30e20085",
      "tree": "1b993b9de4cb9a8578022a4014063c3e87ec996e",
      "parents": [
        "1a80521990a0e30e61a92994a009adc52161b070"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:29 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: network formatting\n\nStyle and other non-functional changes in the UML networking code, including\n\tinclude tidying\n\tstyle violations\n\tcopyright updates\n\tprintks getting severities\n\tuserspace code calling libc directly rather than using the os_*\nwrappers\n\nThere\u0027s also a exit path cleanup in the pcap driver.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1a80521990a0e30e61a92994a009adc52161b070",
      "tree": "3cf900adf9383ff68fd66cd74cfaf0e0ce483845",
      "parents": [
        "61b63c556c0877ee6d3832ee641bc427ff4d94d6"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: use *SEC_PER_*SEC constants\n\nThere are various uses of powers of 1000, plus the odd BILLION constant in the\ntime code.  However, there are perfectly good definitions of *SEC_PER_*SEC in\nlinux/time.h which can be used instaed.\n\nThese are replaced directly in kernel code.  Userspace code imports those\nconstants as UM_*SEC_PER_*SEC and uses these.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "61b63c556c0877ee6d3832ee641bc427ff4d94d6",
      "tree": "e35a047a7b11f349d3d68ac18639bc33801ec001",
      "parents": [
        "5f734614fc6218db352d26571ab4d1604620199c"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: eliminate SIGALRM\n\nNow that ITIMER_REAL is no longer used, there is no need for any use of\nSIGALRM whatsoever.  This patch removes all mention of it.\n\nIn addition, real_alarm_handler took a signal argument which is now always\nSIGVTALRM.  So, that is gone.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f734614fc6218db352d26571ab4d1604620199c",
      "tree": "ff1323d87862c0522ef83568543f46b46eac941a",
      "parents": [
        "b160fb6309dc907cbd8849e549d83badb86dd35b"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: time build fix\n\nPut back an implementation of timeval_to_ns in arch/um/os-Linux/time.c.\ntglx pointed out in his review of tickless support that there was a\nperfectly good implementation of it in linux/time.h.  The problem is that\nthis is userspace code which can\u0027t pull in kernel headers and there doesn\u0027t\nseem to be a libc version.\n\nSo, I\u0027m copying the version from linux/time.h rather than resurrecting my\nversion.  This causes some declaration changes as it now returns a signed\nvalue rather than an unsigned value.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b160fb6309dc907cbd8849e549d83badb86dd35b",
      "tree": "b4a69cc1b96b4aa83aa971c35af5a23e5e07b56f",
      "parents": [
        "d2753a6d199791a6abc75d9f657e3457fe61705f"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: eliminate interrupts in the idle loop\n\nNow, the idle loop now longer needs SIGALRM firing - it can just sleep for the\nrequisite amount of time and fake a timer interrupt when it finishes.\n\nAny use of ITIMER_REAL now goes away.  disable_timer only turns off\nITIMER_VIRTUAL.  switch_timers is no longer needed, so it, and all calls, goes\naway.\n\ndisable_timer now returns the amount of time remaining on the timer.\ndefault_idle uses this to tell idle_sleep how long to sleep.  idle_sleep will\ncall alarm_handler if nanosleep returns 0, which is the case if it didn\u0027t\nreturn early due to an interrupt.  Otherwise, it just returns.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d2753a6d199791a6abc75d9f657e3457fe61705f",
      "tree": "c4cda30f216d6c045ca2b83bee1fa6bc4dfc3de3",
      "parents": [
        "791a644a8d73a9b95515f074afbb3caa0a9964fa"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:25 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: tickless support\n\nEnable tickless support.\n\nCONFIG_TICK_ONESHOT and CONFIG_NO_HZ are enabled.\n\nitimer_clockevent gets CLOCK_EVT_FEAT_ONESHOT and an implementation of\n.set_next_event.\n\nCONFIG_UML_REAL_TIME_CLOCK goes away because it only makes sense when there is\na clock ticking away all the time.  timer_handler now just calls do_IRQ once\nwithout trying to figure out how many ticks to emulate.\n\nThe idle loop now needs to turn ticking on and off.\n\nUserspace ticks keep happening as usual.  However, the userspace loop keep\ntrack of when the next wakeup should happen and suppresses process ticks until\nthat happens.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "31ccc1f524b626abcf5e043ad32b881219223c34",
      "tree": "419284a887fad9dab58969531cf6c53ca0402944",
      "parents": [
        "d83d2aa9485d996cfd89f04389b419c6727faacb"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Tue Oct 16 01:27:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:08 2007 -0700"
      },
      "message": "uml: GENERIC_CLOCKEVENTS support\n\nEnable CONFIG_GENERIC_CLOCKEVENTS.\n\ntimer_irq gets its name changed to timer_handler, and becomes the recipient of\ntimer signals.\n\nThe clock_event_device is set up to imitate the current ticking clock, i.e.\nCLOCK_EVT_FEAT_ONESHOT is not enabled yet.\n\ndisable_timer now doesn\u0027t ignore SIGALRM and SIGVTALRM because that breaks\ndelay calibration.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "78a26e25ce4837a03ac3b6c32cdae1958e547639"
}
