)]}'
{
  "log": [
    {
      "commit": "9786a8f3cbc61f990266e23ffdb338ee3118b03d",
      "tree": "c987811d30508728f954cc8aaa14de1f7fa5b44a",
      "parents": [
        "d67b569f5f620c0fb95d5212642746b7ba9d29e4"
      ],
      "author": {
        "name": "Bodo Stroesser",
        "email": "bstroesser@fujitsu-siemens.com",
        "time": "Thu Jul 07 17:56:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:44 2005 -0700"
      },
      "message": "[PATCH] uml: Proper clone support for skas0\n\nThis patch implements the clone-stub mechanism, which allows skas0 to run\nwith proc_mm\u003d\u003d0, even if the clib in UML uses modify_ldt.\n\nNote: There is a bug in skas3.v7 host patch, that avoids UML-skas from\nrunning properly on a SMP-box.  In full skas3, I never really saw problems,\nbut in skas0 they showed up.\n\nMore commentary by jdike - What this patch does is makes sure that the host\nparent of each new host process matches the UML parent of the corresponding\nUML process.  This ensures that any changed LDTs are inherited.  This is\ndone by having clone actually called by the UML process from its stub,\nrather than by the kernel.  We have special syscall stubs that are loaded\nonto the stub code page because that code must be completely\nself-contained.  These stubs are given C interfaces, and used like normal C\nfunctions, but there are subtleties.  Principally, we have to be careful\nabout stack variables in stub_clone_handler after the clone.  The code is\nwritten so that there aren\u0027t any - everything boils down to a fixed\naddress.  If there were any locals, references to them after the clone\nwould be wrong because the stack just changed.\n\nSigned-off-by: Bodo Stroesser \u003cbstroesser@fujitsu-siemens.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d67b569f5f620c0fb95d5212642746b7ba9d29e4",
      "tree": "c7ef10c906dd83911e10988c6cea6d7d5644e072",
      "parents": [
        "1322ad41513f8f9196801f53cc0851df056f3478"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Thu Jul 07 17:56:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:44 2005 -0700"
      },
      "message": "[PATCH] uml: skas0 - separate kernel address space on stock hosts\n\nUML has had two modes of operation - an insecure, slow mode (tt mode) in\nwhich the kernel is mapped into every process address space which requires\nno host kernel modifications, and a secure, faster mode (skas mode) in\nwhich the UML kernel is in a separate host address space, which requires a\npatch to the host kernel.\n\nThis patch implements something very close to skas mode for hosts which\ndon\u0027t support skas - I\u0027m calling this skas0.  It provides the security of\nthe skas host patch, and some of the performance gains.\n\nThe two main things that are provided by the skas patch, /proc/mm and\nPTRACE_FAULTINFO, are implemented in a way that require no host patch.\n\nFor the remote address space changing stuff (mmap, munmap, and mprotect),\nwe set aside two pages in the process above its stack, one of which\ncontains a little bit of code which can call mmap et al.\n\nTo update the address space, the system call information (system call\nnumber and arguments) are written to the stub page above the code.  The\n%esp is set to the beginning of the data, the %eip is set the the start of\nthe stub, and it repeatedly pops the information into its registers and\nmakes the system call until it sees a system call number of zero.  This is\nto amortize the cost of the context switch across multiple address space\nupdates.\n\nWhen the updates are done, it SIGSTOPs itself, and the kernel process\ncontinues what it was doing.\n\nFor a PTRACE_FAULTINFO replacement, we set up a SIGSEGV handler in the\nchild, and let it handle segfaults rather than nullifying them.  The\nhandler is in the same page as the mmap stub.  The second page is used as\nthe stack.  The handler reads cr2 and err from the sigcontext, sticks them\nat the base of the stack in a faultinfo struct, and SIGSTOPs itself.  The\nkernel then reads the faultinfo and handles the fault.\n\nA complication on x86_64 is that this involves resetting the registers to\nthe segfault values when the process is inside the kill system call.  This\nbreaks on x86_64 because %rcx will contain %rip because you tell SYSRET\nwhere to return to by putting the value in %rcx.  So, this corrupts $rcx on\nreturn from the segfault.  To work around this, I added an\narch_finish_segv, which on x86 does nothing, but which on x86_64 ptraces\nthe child back through the sigreturn.  This causes %rcx to be restored by\nsigreturn and avoids the corruption.  Ultimately, I think I will replace\nthis with the trick of having it send itself a blocked signal which will be\nunblocked by the sigreturn.  This will allow it to be stopped just after\nthe sigreturn, and PTRACE_SYSCALLed without all the back-and-forth of\nPTRACE_SYSCALLing it through sigreturn.\n\nThis runs on a stock host, so theoretically (and hopefully), tt mode isn\u0027t\nneeded any more.  We need to make sure that this is better in every way\nthan tt mode, though.  I\u0027m concerned about the speed of address space\nupdates and page fault handling, since they involve extra round-trips to\nthe child.  We can amortize the round-trip cost for large address space\nupdates by writing all of the operations to the data page and having the\nchild execute them all at the same time.  This will help fork and exec, but\nnot page faults, since they involve only one page.\n\nI can\u0027t think of any way to help page faults, except to add something like\nPTRACE_FAULTINFO to the host.  There is PTRACE_SIGINFO, but UML doesn\u0027t use\nsiginfo for SIGSEGV (or anything else) because there isn\u0027t enough\ninformation in the siginfo struct to handle page faults (the faulting\noperation type is missing).  Adding that would make PTRACE_SIGINFO a usable\nequivalent to PTRACE_FAULTINFO.\n\nAs for the code itself:\n\n- The system call stub is in arch/um/kernel/sys-$(SUBARCH)/stub.S.  It is\n  put in its own section of the binary along with stub_segv_handler in\n  arch/um/kernel/skas/process.c.  This is manipulated with run_syscall_stub\n  in arch/um/kernel/skas/mem_user.c.  syscall_stub will execute any system\n  call at all, but it\u0027s only used for mmap, munmap, and mprotect.\n\n- The x86_64 stub calls sigreturn by hand rather than allowing the normal\n  sigreturn to happen, because the normal sigreturn is a SA_RESTORER in\n  UML\u0027s address space provided by libc.  Needless to say, this is not\n  available in the child\u0027s address space.  Also, it does a couple of odd\n  pops before that which restore the stack to the state it was in at the\n  time the signal handler was called.\n\n- There is a new field in the arch mmu_context, which is now a union.\n  This is the pid to be manipulated rather than the /proc/mm file\n  descriptor.  Code which deals with this now checks proc_mm to see whether\n  it should use the usual skas code or the new code.\n\n- userspace_tramp is now used to create a new host process for every UML\n  process, rather than one per UML processor.  It checks proc_mm and\n  ptrace_faultinfo to decide whether to map in the pages above its stack.\n\n- start_userspace now makes CLONE_VM conditional on proc_mm since we need\n  separate address spaces now.\n\n- switch_mm_skas now just sets userspace_pid[0] to the new pid rather\n  than PTRACE_SWITCH_MM.  There is an addition to userspace which updates\n  its idea of the pid being manipulated each time around the loop.  This is\n  important on exec, when the pid will change underneath userspace().\n\n- The stub page has a pte, but it can\u0027t be mapped in using tlb_flush\n  because it is part of tlb_flush.  This is why it\u0027s required for it to be\n  mapped in by userspace_tramp.\n\nOther random things:\n\n- The stub section in uml.lds.S is page aligned.  This page is written\n  out to the backing vm file in setup_physmem because it is mapped from\n  there into user processes.\n\n- There\u0027s some confusion with TASK_SIZE now that there are a couple of\n  extra pages that the process can\u0027t use.  TASK_SIZE is considered by the\n  elf code to be the usable process memory, which is reasonable, so it is\n  decreased by two pages.  This confuses the definition of\n  USER_PGDS_IN_LAST_PML4, making it too small because of the rounding down\n  of the uneven division.  So we round it to the nearest PGDIR_SIZE rather\n  than the lower one.\n\n- I added a missing PT_SYSCALL_ARG6_OFFSET macro.\n\n- um_mmu.h was made into a userspace-usable file.\n\n- proc_mm and ptrace_faultinfo are globals which say whether the host\n  supports these features.\n\n- There is a bad interaction between the mm.nr_ptes check at the end of\n  exit_mmap, stack randomization, and skas0.  exit_mmap will stop freeing\n  pages at the PGDIR_SIZE boundary after the last vma.  If the stack isn\u0027t\n  on the last page table page, the last pte page won\u0027t be freed, as it\n  should be since the stub ptes are there, and exit_mmap will BUG because\n  there is an unfreed page.  To get around this, TASK_SIZE is set to the\n  next lowest PGDIR_SIZE boundary and mm-\u003enr_ptes is decremented after the\n  calls to init_stub_pte.  This ensures that we know the process stack (and\n  all other process mappings) will be below the top page table page, and\n  thus we know that mm-\u003enr_ptes will be one too many, and can be\n  decremented.\n\nThings that need fixing:\n\n- We may need better assurrences that the stub code is PIC.\n\n- The stub pte is set up in init_new_context_skas.\n\n- alloc_pgdir is probably the right place.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "29d56cfe3ca599ddc3ae9156e7e469c044d97b96",
      "tree": "7790477f5b138c249725fe8ecf9dc07794e9d1eb",
      "parents": [
        "fc47a0d18a1994b4a18d2235fcde1b75dfa72552"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Sat Jun 25 14:55:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:36 2005 -0700"
      },
      "message": "[PATCH] uml: hot-unplug code cleanup\n\nClean up the hot-unplugging code.  There is now an id procedure which is\ncalled to figure out what device we\u0027re talking to.  The error messages from\nthat are now done from mconsole_remove instead of the driver.  remove is now\ncalled with the device number, after it has been checked, so doesn\u0027t need to\ndo sanity checking on it.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fc47a0d18a1994b4a18d2235fcde1b75dfa72552",
      "tree": "fd551126b4ae4a4a6e9be99773cf04a7eacc4b72",
      "parents": [
        "026549d28469f7d4ca7e5a4707f0d2dc4f2c164c"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Sat Jun 25 14:55:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:35 2005 -0700"
      },
      "message": "[PATCH] uml: time initialization tidying\n\nuser_time_init_skas and user_time_init_tt were essentially the same.  So, this\nmerges them, deleting the mode-specific functions and declarations.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "36ca1195ad7f760a6af3814cb002bd3a3d4b4db1",
      "tree": "570a895d2af09f464d7f9fea2fe78e7fe0f73cb7",
      "parents": [
        "8447f3f4659d91c2f11a1476522369c9d6ae6ada"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Jun 13 15:52:10 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 13 20:58:43 2005 -0700"
      },
      "message": "[PATCH] uml: build cleanups\n\nFix a build failure when CONFIG_MODE_SKAS is disabled and make a Makefile\ncomment fit in 80 columns.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da00d9a5466558ccd9e7b7d04b13d7cb9160c876",
      "tree": "4edc27caa63126e902da3752f58adb8ee792762c",
      "parents": [
        "3df59529ad1045da61698bb5dd8ebaa547aeb46f"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Jun 08 15:48:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Wed Jun 08 16:21:12 2005 -0700"
      },
      "message": "[PATCH] uml: compile fixes for gcc 4\n\nThis is a bunch of compile fixes provoked by building UML with gcc 4.  There\nare a bunch of signedness mismatches, a couple of uninitialized references,\nand a botched C99 structure initialization which had somehow gone unnoticed.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b3461034d7d46455060c8476910be22b6b0fc313",
      "tree": "d5ebcf803116eb3c5800189ebb065df28c994d07",
      "parents": [
        "37fce857bec00d26d0e8251c909da2bd8736c949"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sat May 28 15:52:00 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat May 28 16:46:13 2005 -0700"
      },
      "message": "[PATCH] uml: stack dump fix\n\nCopy (and adapt) to UML the stack code dumper used in i386 when\nCONFIG_FRAME_POINTER is enabled.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a2e4b972c99685d9d7b869c4bf8d8b258ff5b60c",
      "tree": "3b0c8efe20b574ed59937cd00cd0affecff7165c",
      "parents": [
        "6770cb61ff6d557613a8382b28f9b0a919fb112f"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Sat May 28 15:51:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat May 28 16:46:11 2005 -0700"
      },
      "message": "[PATCH] uml: remove 2_5compat.h\n\nRemove old useless header that was used in Ye Olde Times during 2.4-\u003e2.5\nporting to abstract differences.  It\u0027s definitions are no more used anyway, so\nlet\u0027s finally kill it.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ba9950c820e556e39cd26581826b5581a64fb641",
      "tree": "4ba37ce6b1852e95619ad3e6bd97a2032dd4c1fc",
      "parents": [
        "46f4e1b7d5fa3ddf2486bf69716c404147e38ebf"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri May 20 13:59:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri May 20 15:48:17 2005 -0700"
      },
      "message": "[PATCH] uml: small fixes left over from rc4\n\nSome changes that I sent in didn\u0027t make 2.6.12-rc4 for some reason.  This\nadds them back.  We have\n\tan x86_64 definition of TOP_ADDR\n\ta reimplementation of the x86_64 csum_partial_copy_from_user\n\tsome syntax fixes in arch/um/kernel/ptrace.c\n\tremoval of a CFLAGS definition in the x86_64 Makefile\n\tsome include changes in the x86_64 ptrace.c and user-offsets.h\n\ta syntax fix in elf-x86_64.h\nAlso moved an include in the i386 and x86_64 Makefiles to make the symlinks\nwork, and some small fixes from Al Viro.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "16c11163019879c0e1e69d3ec7d4574a80e9c77e",
      "tree": "7387cc2c3c7d0c67391ce5390bd6048639a0790e",
      "parents": [
        "8bef3e0a06c00bd44760361f84b08e30cd1bff0e"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri May 06 21:30:45 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri May 06 22:09:29 2005 -0700"
      },
      "message": "[PATCH] uml: command line handling cleanup\n\nCommand line handling cleanups - a couple of things made static and an\nunused declaration removed from header.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3a0a64e6c917b2ccc311cf978cc9d7eef7b31c47",
      "tree": "121b7de957b5cc73f8d0f1cd5fd70dcd1de04261",
      "parents": [
        "7c5131a501e9e8549f74d807c37fde76008ef95a"
      ],
      "author": {
        "name": "Bodo Stroesser",
        "email": "bstroesser@fujitsu-siemens.com",
        "time": "Thu May 05 16:15:40 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:39 2005 -0700"
      },
      "message": "[PATCH] uml: header and code cleanup\n\nRemove some definitions and declarations from arch/um/include/skas_ptrace.h,\nas they have moved to arch/um/include/sysdep/skas_ptrace.h\n\nAlso, remove PTRACE_SIGPENDING support in UML at all.\n\nSigned-off-by: Bodo Stroesser \u003cbstroesser@fujitsu-siemens.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "51a6b0c59a6170fc6a40221ef9b261b82856d315",
      "tree": "aeb5e5ff3862f2f9a0fa02ab67b0a807262ad1d6",
      "parents": [
        "5fd861b682785f650114f4df53060d1be7fedecd"
      ],
      "author": {
        "name": "Bodo Stroesser",
        "email": "bstroesser@fujitsu-siemens.com",
        "time": "Thu May 05 16:15:38 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:38 2005 -0700"
      },
      "message": "[PATCH] uml: s390 preparation, sighandler interface abstraction\n\ns390 passes parameters in registers.  So the only safe way to find out the\naddress of signal context, error-address and error-type (trap_no), which are\npassed to signal handlers as parameters, is to declare these parameters.\n\nSo I inserted an subarch-specific macro which holds the declaration of\nparameters for signal handlers.\n\nSigned-off-by: Bodo Stroesser \u003cbstroesser@fujitsu-siemens.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7d37c6d52fce13008f20344790a81a6a5a0003b3",
      "tree": "ebf98bc32d8c0e29627f7be8a4dd349a32efff1d",
      "parents": [
        "c52ac046757deebc514483e407dca39a9c774aa3"
      ],
      "author": {
        "name": "Bodo Stroesser",
        "email": "bstroesser@fujitsu-siemens.com",
        "time": "Thu May 05 16:15:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:38 2005 -0700"
      },
      "message": "[PATCH] uml: s390 preparation, checksumming done in arch code\n\nChecksum handling largely depends on the subarch.\n\nThus, I renamed i386 arch_csum_partial in arch/um/sys-i386/checksum.S back to\ncsum_partial, removed csum_partial from arch/um/kernel/checksum.c and shifted\nEXPORT_SYMBOL(csum_partial) to arch/um/sys-i386/ksyms.c.\n\nThen, csum_partial_copy_to and csum_partial_copy_from were shifted from\narch/um/kernel/checksum.c to arch/um/include/sysdep-i386/checksum.h and\ninserted in the calling functions csum_partial_copy_from_user() and\ncsum_and_copy_to_user().\n\nNow, arch/um/kernel/checksum.c is empty and removed.\n\nSigned-off-by: Bodo Stroesser \u003cbstroesser@fujitsu-siemens.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cd2ee4a30cc0775d8b54e5b958613361a7cacfec",
      "tree": "edea72ea7d723a1c35675632850916d77084581b",
      "parents": [
        "c578455a3eccf4dd7bd111e77129c301d6d67914"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Thu May 05 16:15:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:36 2005 -0700"
      },
      "message": "[PATCH] uml: Fix SIGWINCH relaying\n\nThis makes SIGWINCH work again, and fixes a couple of SIGWINCH-associated\ncrashes.  First, the sigio thread disables SIGWINCH because all hell breaks\nloose if it ever gets one and tries to call the signal handling code.  Second,\nthere was a problem with deferencing tty structs after they were freed.  The\nSIGWINCH support for a tty wasn\u0027t being turned off or freed after the tty went\naway.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c578455a3eccf4dd7bd111e77129c301d6d67914",
      "tree": "b52def020bd10e1b8bffcf90e1e2a3c1b35010c8",
      "parents": [
        "ea66e8a3b6c4760e8fbf59b1becb6bd8e3dd5376"
      ],
      "author": {
        "name": "Bodo Stroesser",
        "email": "bstroesser@fujitsu-siemens.com",
        "time": "Thu May 05 16:15:31 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:36 2005 -0700"
      },
      "message": "[PATCH] uml: S390 preparation, abstract host page fault data\n\nThis patch removes the arch-specific fault/trap-infos from thread and\nskas-regs.\n\nIt adds a new struct faultinfo, that is arch-specific defined in\nsysdep/faultinfo.h.\n\nThe structure is inserted in thread.arch and thread.regs.skas and\nthread.regs.tt\n\nNow, segv and other trap-handlers can copy the contents from regs.X.faultinfo\nto thread.arch.faultinfo with one simple assignment.\n\nAlso, the number of macros necessary is reduced to\n\nFAULT_ADDRESS(struct faultinfo)\n    extracts the faulting address from faultinfo\n\nFAULT_WRITE(struct faultinfo)\n    extracts the \"is_write\" flag\n\nSEGV_IS_FIXABLE(struct faultinfo)\n    is true for the fixable segvs, i.e. (TRAP \u003d\u003d 14)\n    on i386\n\nUPT_FAULTINFO(regs)\n    result is (struct faultinfo *) to the faultinfo\n    in regs-\u003eskas.faultinfo\n\nGET_FAULTINFO_FROM_SC(struct faultinfo, struct sigcontext *)\n    copies the relevant parts of the sigcontext to\n    struct faultinfo.\n\nOn SIGSEGV, call user_signal() instead of handle_segv(), if the architecture\nprovides the information needed in PTRACE_FAULTINFO, or if PTRACE_FAULTINFO is\nmissing, because segv-stub will provide the info.\n\nThe benefit of the change is, that in case of a non-fixable SIGSEGV, we can\ngive user processes a SIGSEGV, instead of possibly looping on pagefault\nhandling.\n\nSince handle_segv() sikked arch_fixup() implicitly by passing ip\u003d\u003d0 to segv(),\nI changed segv() to call arch_fixup() only, if !is_user.\n\nSigned-off-by: Bodo Stroesser \u003cbstroesser@fujitsu-siemens.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a31769ed3ee82198fd530cb1d79ee9c7f8eeb1d1",
      "tree": "d512ffff086b47597e7bb1b431aa65353b113cc5",
      "parents": [
        "6bae32d395b532959703462c21248fbeb9894e95"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@parcelfarce.linux.theplanet.co.uk",
        "time": "Thu May 05 16:15:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:35 2005 -0700"
      },
      "message": "[PATCH] uml: cross-build support : kernel_offsets\n\nThe next group of helpers is a bit trickier - they want the constants similar\nto those in user-offsets.h, but we need target sc.h for it.  So we can\u0027t put\nthat into user-offsets (sc.h depends on it) and need the second generated\nheader for that stuff (kernel-offsets.h.  BFD...\n\nSigned-off-by: Al Viro \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7d87e14c236d6c4cab66d87cf0bc1e0f0375d308",
      "tree": "0c0826cdc102286b541e3e56b59c81752d34c90d",
      "parents": [
        "434498d5323445b59167fd7aa5633b74ebbce901"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Sun May 01 08:59:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:59:12 2005 -0700"
      },
      "message": "[PATCH] consolidate sys_shmat\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b97b77cca627b2e3e6d0015e2e14b1d1c12de0c8",
      "tree": "3fa7a55e316624a72764e5c7eead52b92a500a88",
      "parents": [
        "80f9507886076de0cadfdf2b87701e68156829c2"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sun May 01 08:58:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:56 2005 -0700"
      },
      "message": "[PATCH] uml: redo console locking\n\nFix some console locking problems (including scheduling in atomic) and various\nreorderings and cleanup in that code.  Not yet ready for 2.6.12 probably.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "80f9507886076de0cadfdf2b87701e68156829c2",
      "tree": "d9830aeda24b0a004938bae36db3e8efba84b7db",
      "parents": [
        "ddcd6b175793839e51fdd55debb670a9f512c448"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sun May 01 08:58:55 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:55 2005 -0700"
      },
      "message": "[PATCH] uml: fix syscall table by including $(SUBARCH)\u0027s one, for x86-64\n\nReuse asm-x86-64/unistd.h to build our syscall table, like x86-64 already\ndoes.\n\nLike for i386, we must add some #defines for all the (right!) changes UML does\nto x86-64 syscall table.\n\nNote: I noted a bogus:\n\t[ __NR_sched_yield ] \u003d (syscall_handler_t *) yield,\n\nwhile doing this patch (which could only be a workaround for some strange bug,\nbut I would ignore this possibility).  I\u0027m changing this without notice.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5e7b83ffc67e15791d9bf8b2a18e4f5fd0eb69b8",
      "tree": "21d245a8ebe9a36748b1f76ff9050ceeaeba926c",
      "parents": [
        "e9c527163d31da9f616e989a90429729525c5233"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sun May 01 08:58:55 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:55 2005 -0700"
      },
      "message": "[PATCH] uml: fix syscall table by including $(SUBARCH)\u0027s one, for i386\n\nSplit the i386 entry.S files into entry.S and syscall_table.S which is\nincluded in the previous one (so actually there is no difference between them)\nand use the syscall_table.S in the UML build, instead of tracking by hand the\nsyscall table changes (which is inherently error-prone).\n\nWe must only insert the right #defines to inject the changes we need from the\ni386 syscall table (for instance some different function names); also, we\ndon\u0027t implement some i386 syscalls, as ioperm(), nor some TLS-related ones\n(yet to provide).\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9c340d80f66faaea3522812d0d8c91d6a1b48a22",
      "tree": "35ee317dd45aab96021256b8fdb06c90a05b3002",
      "parents": [
        "43117a08280e40be43e181c51cce296ef4b4c7e5"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sat Apr 16 15:25:39 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:25:39 2005 -0700"
      },
      "message": "[PATCH] uml: fix compilation for __CHOOSE_MODE addition\n\nI had added the __CHOOSE_MODE syntax to fix some warnings with newer GCC\u0027s\nin the uml-fix-cond-expr-as-lvalues-warning patch.\n\nHere is the update from the version I sent to make it work also when only\none mode (TT or SKAS) is enabled.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
