)]}'
{
  "log": [
    {
      "commit": "538e1b2dd4aafbc5ea2dadecdaa0e9a51a2358d9",
      "tree": "f989f2f3377da4aaea8da5541d75d23f2b6821d6",
      "parents": [
        "508634a73d7a431c26e39d592feb439e461245a3"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Mon Jan 07 04:13:18 2019 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Mon Jan 07 04:26:12 2019 +0000"
      },
      "message": "[klibc] Kbuild.install: Copy UAPI headers instead of reinstalling them\n\nSince the UAPI/KAPI header split in Linux 3.7, we have needed\nKLIBCKERNELSRC to point to the installed UAPI headers.  Invoking\n\"make headers_install\" in this directory doesn\u0027t work.\n\nThe previously proposed fix was to invoke make in the parent\ndirectory.  But since we require the headers to be installed\nalready, we can copy the install tree instead.  Make sure to\ndereference any symbolic links while doing this.\n\nReported-by: Thomas Meyer \u003cthomas@m3y3r.de\u003e\nReported-by: Luis R. Rodriguez \u003cmcgrof@kernel.org\u003e\nLink: https://www.zytor.com/pipermail/klibc/2019-January/004033.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "508634a73d7a431c26e39d592feb439e461245a3",
      "tree": "8e72bf282d6c4996094943293940ff2a6314a5bb",
      "parents": [
        "39878a1b56ed31642aec925e4c86cbd69ce0dd65"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 06 20:54:43 2019 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Mon Jan 07 04:26:03 2019 +0000"
      },
      "message": "[klibc] Makefile: Update help text for KLIBCKERNELSRC\n\nSince the UAPI/KAPI header split in Linux 3.7, we have needed\nKLIBCKERNELSRC to point to the installed UAPI headers.  The \"sample\ninvocation\" has been updated to reflect this but the rest of the help\ntext has not.\n\nLink: https://www.zytor.com/pipermail/klibc/2019-January/004032.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "39878a1b56ed31642aec925e4c86cbd69ce0dd65",
      "tree": "657f7a35944b5f3ed40db898997e736c7a7fa75f",
      "parents": [
        "3cba7636442f0ad076fb6c16230c6935353ce9c0"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 06 20:50:56 2019 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Mon Jan 07 04:25:53 2019 +0000"
      },
      "message": "[klibc] Kbuild: Remove KLIBCKERNELOBJ variable\n\nSince the UAPI/KAPI header split in Linux 3.7, we have needed\nKLIBCKERNELSRC to point to the installed UAPI headers.  This makes\nKLIBCKERNELOBJ and the extra header directories based on it completely\nredundant.\n\nLink: https://www.zytor.com/pipermail/klibc/2019-January/004031.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "3cba7636442f0ad076fb6c16230c6935353ce9c0",
      "tree": "c7803ddc221414be69e856dabdb60597fa723e7c",
      "parents": [
        "e0e3efd87fa1286800dafb1fba4c64d1329efddb"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 06 21:11:05 2019 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Mon Jan 07 04:25:33 2019 +0000"
      },
      "message": "[klibc] Makefile: Add dependencies on $(KLIBCKERNELSRC)\n\nThe error message for a missing $(KLIBCKERNELSRC) won\u0027t appear\nunless it\u0027s specified as a target or something depends on it.\n\nMake the klcc and klibc targets depend on it.\n\nLink: https://www.zytor.com/pipermail/klibc/2019-January/004030.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "e0e3efd87fa1286800dafb1fba4c64d1329efddb",
      "tree": "0d489607de0202af96bf163bec3aa9d5239ec362",
      "parents": [
        "31f0d5525f39cd9427b6bac904f847178bb4d266"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 06 03:44:40 2019 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 06 19:31:04 2019 +0000"
      },
      "message": "[klibc] Disable PIE\n\nWe link all executables as non-relocatable, so it makes no sense to\ngenerate PIE code.  In addition, PIE code on i386 requires a working\nGOT which we don\u0027t generate.\n\nLink: https://www.zytor.com/pipermail/klibc/2019-January/004028.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "31f0d5525f39cd9427b6bac904f847178bb4d266",
      "tree": "3fc63ad172f53b3d1a8c005c319bab34c9f122e0",
      "parents": [
        "7b49d9729ff6b3118c57eb6fe52c4f186016cfa0"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 06 03:19:51 2019 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 06 19:30:47 2019 +0000"
      },
      "message": "[klibc] i386: Use -Ttext-segment to avoid address collision\n\nBuilding klibc for i386 with binutils 2.31 adds an extra\n.note.gnu.property section to klibc.so, the address of which is not\naffected by the -Ttext option.  Loading a klibc executable then\nfails with the following kernel log message:\n\n9409 (sh.shared): Uhuuh, elf segment at 0000000000600000 requested but the memory is mapped already\n\nI don\u0027t exactly see why this is happening, but it is triggered by the\nnew section and the collision can be avoided by passing -Ttext-segment\ninstead of -Ttext, similarly to x86_64.\n\nLink: https://www.zytor.com/pipermail/klibc/2019-January/004027.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "7b49d9729ff6b3118c57eb6fe52c4f186016cfa0",
      "tree": "40a70781a0acf1e7201c9e7b53ae70d3cb7c0ad4",
      "parents": [
        "ab00e92e990a4ff8a1a6c5c6c6ac3eda3816f18f"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sat Jan 05 20:59:33 2019 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sat Jan 05 21:19:38 2019 +0000"
      },
      "message": "[klibc] x86_64: Use -Ttext-segment to avoid address collision\n\nBuilding klibc for x86_64 with binutils 2.31 adds an extra\n.note.gnu.property section to klibc.so, the address of which is not\naffected by the -Ttext option.  Loading a klibc executable then\nfails with the following kernel log message:\n\n9409 (sh.shared): Uhuuh, elf segment at 0000000000200000 requested but the memory is mapped already\n\nI don\u0027t exactly see why this is happening, but it is triggered by the\nnew section and the collision can be avoided by passing -Ttext-segment\ninstead of -Ttext.  A similar change was applied to MIPS recently.\n\nLink: https://www.zytor.com/pipermail/klibc/2019-January/004024.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "ab00e92e990a4ff8a1a6c5c6c6ac3eda3816f18f",
      "tree": "4a47786ceefea38b6119d7a0f31413e3ebb745f2",
      "parents": [
        "84cad740a960b17a78cb1e8c03c1d892a56c9d12"
      ],
      "author": {
        "name": "James Clarke",
        "email": "jrtc27@jrtc27.com",
        "time": "Wed Jul 18 22:30:42 2018 +0100"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] Fix sparc assembly when compiled as PIC\n\nSome distributions default to PIE for their compilers, which on sparc is passed\non to the assembler. Since the behaviour of %hi/%lo changes under PIC to become\nGOT offsets, the current assembly files need adapting to not try to use a GOT\noffset as an absolute address.\n\nReferences: https://bugs.debian.org/885852\nLink: https://www.zytor.com/pipermail/klibc/2018-July/004001.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "84cad740a960b17a78cb1e8c03c1d892a56c9d12",
      "tree": "179372674640f7dd890a83c4f480fef25bd5d365",
      "parents": [
        "61344f556b9e92d0121467eeff5bdd92f92c0483"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jul 15 21:53:39 2018 +0100"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] Never clean files in quilt status directory\n\nThe top-level \"distclean\" and \"mrproper\" targets delete zero-size\nfiles in the source, perhaps assumed to be stamp files.  This is fine\nfor actual source direcgtories, but disastrous for a quilt status\ndirectory.\n\nFor each patch, quilt stores the previous versions of the modified\nfiles in a subdirectory of .pc.  If the patch creates a file, this\nfile will be empty.  Removing it effectively removes the file creation\nfrom the patch.\n\nThe .git directory is already excluded from the clean rules for\na similar reason, so do the same for .pc.\n\nLink: https://www.zytor.com/pipermail/klibc/2018-July/003999.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "61344f556b9e92d0121467eeff5bdd92f92c0483",
      "tree": "d61af665bb02aa9d3e49074cebfe16dbb50a319c",
      "parents": [
        "9bfe94c405b6ae3f7a5c04c0d4cd539867ad2b85"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jul 15 21:27:09 2018 +0100"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] x86_64: Reduce ld max-page-size option again\n\nBuilding klibc with binutils 2.30 results in the following layout\nfor klibc.so:\n\nIdx Name          Size      VMA               LMA               File off  Algn\n  0 .text         0000d1ff  0000000000200200  0000000000200200  00000200  2**2\n                  CONTENTS, ALLOC, LOAD, READONLY, CODE\n  1 .rodata       000031af  0000000000300000  0000000000300000  00100000  2**5\n                  CONTENTS, ALLOC, LOAD, READONLY, DATA\n  2 .data.rel.ro  00000990  0000000000403660  0000000000403660  00103660  2**5\n                  CONTENTS, ALLOC, LOAD, DATA\n  3 .data         00000140  0000000000404000  0000000000404000  00104000  2**5\n                  CONTENTS, ALLOC, LOAD, DATA\n  4 .bss          000042f8  0000000000404140  0000000000404140  00104140  2**5\n                  ALLOC\n\nThe .text and .rodata sections have each been padded to the specified\nmaximum page size of 1 MB, causing the following sections to overlap\nthe executable.\n\nThis causes all klibc executables to crash immediately.\n\nSince there\u0027s no architectural page size betwen 4 KB and 2MB, set\nmax-page-size to 4 KB.\n\nLink: https://www.zytor.com/pipermail/klibc/2018-July/003998.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "9bfe94c405b6ae3f7a5c04c0d4cd539867ad2b85",
      "tree": "a32210892fc28c6ba7358a3c642dd6a84c82e246",
      "parents": [
        "d8d26edbf94316286900ecf363382b0fcc2d76b2"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Tue Jul 17 02:55:19 2018 +0100"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] Add RISC-V (RV64) port\n\nRISC-V is pretty boring.  I\u0027ve cribbed most of this from the MIPS and\nAArch64 ports.\n\nI ran into difficulty with initialisation of the gp,register, which I\nthink has to be process-global - the psABI says that signal handlers\ncan rely on it, and they could come from any module.  This means that\nklibc.so and the executable using it need to agree on a single value.\nCurrently they don\u0027t, and this causes gp-relative addressing to go\nwrong.\n\ngp-relative addressing is introduced by \"relaxation\" in the linker,\nso I\u0027ve disabled that for now.\n\nLink: https://www.zytor.com/pipermail/klibc/2018-July/003997.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "d8d26edbf94316286900ecf363382b0fcc2d76b2",
      "tree": "b3b4c88b4cb6b7f69b8dcd2b4d17736a40517166",
      "parents": [
        "edee9092e32482a06cc441cf47ae78b5e7c4a621"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Mon Jul 16 18:24:08 2018 +0100"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] rename, renameat: Use renameat2() system call\n\nNew architectures only define the renameat2() system call, which was\nadded in Linux 3.15.  Define rename() and renameat() as wrappers for\nit if necessary.\n\nLink: https://www.zytor.com/pipermail/klibc/2018-July/003996.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "edee9092e32482a06cc441cf47ae78b5e7c4a621",
      "tree": "7e1b96347304bd1405eba234f55bfa68109389a3",
      "parents": [
        "56bfd58fdce4fc32a2be2981655252840c9c02cb"
      ],
      "author": {
        "name": "Greg Thelen",
        "email": "gthelen@google.com",
        "time": "Tue Jun 26 22:38:32 2018 -0700"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] add more PHONY targets to $(PHONY)\n\nmake-3.81 excludes PHONY dependencies from $?, make 3.82+ includes them.\nThis leads to always rebuilding klibc targets that depend on .PHONY\ndependencies.  From the make 3.82 release notes\nhttps://lists.gnu.org/archive/html/info-gnu/2010-07/msg00023.html:\n    * WARNING: Backward-incompatibility!\n      The \u0027$?\u0027 variable now contains all prerequisites that caused the target to\n      be considered out of date, even if they do not exist (previously only\n      existing targets were provided in $?).\n\nLinux fixed this with commit 4f1933620f57 (\"kbuild: change kbuild to not\nrely on incorrect GNU make behavior\").\n\nSimilar to Linux, klibc if_changed already excludes $(PHONY) from $?\nwhen determining if a target is up-to-date.  Klibc also has a $(PHONY)\nlist of phony targets.  But klibc does not add many .PHONY targets to\n$(PHONY).\n\nChanges in this patch:\n- add previously defined .PHONY targets to PHONY, so existing if_changed\n  filtering applies to them as well\n- declare $(PHONY) targets as .PHONY\n\nSigned-off-by: Greg Thelen \u003cgthelen@google.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-June/003995.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "56bfd58fdce4fc32a2be2981655252840c9c02cb",
      "tree": "dff8cef66a7067190f1e75e45f520b557b51e676",
      "parents": [
        "ee59de58cd3ebe9e98d19aeaadb39915b0b235fc"
      ],
      "author": {
        "name": "Benjamin Drung",
        "email": "benjamin.drung@profitbricks.com",
        "time": "Wed Jun 13 11:48:39 2018 +0200"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] mount_main: Fix empty string check\n\ngcc 7.3.0 complains:\n\n```\nusr/utils/mount_main.c: In function ‘print_mount’:\nusr/utils/mount_main.c:46:46: warning: comparison between pointer and zero character constant [-Wpointer-compare]\n   if (mnt-\u003emnt_type !\u003d NULL \u0026\u0026 mnt-\u003emnt_type !\u003d \u0027\\0\u0027)\n                                              ^~\nusr/utils/mount_main.c:46:32: note: did you mean to dereference the pointer?\n   if (mnt-\u003emnt_type !\u003d NULL \u0026\u0026 mnt-\u003emnt_type !\u003d \u0027\\0\u0027)\n                                ^\nusr/utils/mount_main.c:48:46: warning: comparison between pointer and zero character constant [-Wpointer-compare]\n   if (mnt-\u003emnt_opts !\u003d NULL \u0026\u0026 mnt-\u003emnt_opts !\u003d \u0027\\0\u0027)\n                                              ^~\nusr/utils/mount_main.c:48:32: note: did you mean to dereference the pointer?\n   if (mnt-\u003emnt_opts !\u003d NULL \u0026\u0026 mnt-\u003emnt_opts !\u003d \u0027\\0\u0027)\n                                ^\n```\n\nLink: https://www.zytor.com/pipermail/klibc/2018-June/003994.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "ee59de58cd3ebe9e98d19aeaadb39915b0b235fc",
      "tree": "a82773fd1aaaec3e0b93f96bd5b0efdbbd691039",
      "parents": [
        "8b15382a33823d38599347e90022abfcdc70fc68"
      ],
      "author": {
        "name": "Benjamin Drung",
        "email": "benjamin.drung@profitbricks.com",
        "time": "Wed Dec 13 23:04:29 2017 +0100"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] ipconfig: Implement classless static routes\n\nImplement classless static routes support as specified in RFC3442.\n\nBug-Debian: https://bugs.debian.org/884716\nBug-Ubuntu: https://launchpad.net/bugs/1526956\nSigned-off-by: Benjamin Drung \u003cbenjamin.drung@profitbricks.com\u003e\nLink: https://salsa.debian.org/kernel-team/klibc/merge_requests/2\nLink: https://www.zytor.com/pipermail/klibc/2018-June/003993.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "8b15382a33823d38599347e90022abfcdc70fc68",
      "tree": "e7098515d8e0194db98873019677167a88fa866f",
      "parents": [
        "edf92a18d1f1725896c928cbcf580abc268f307c"
      ],
      "author": {
        "name": "James Cowgill",
        "email": "james.cowgill@mips.com",
        "time": "Fri Mar 02 08:36:45 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] mips64: remove __unused from __jmp_buf\n\nThis field is not needed. Probably it was copied straight from the\n32-bit mips __jmp_buf.\n\nSigned-off-by: James Cowgill \u003cjames.cowgill@mips.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-March/003984.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "edf92a18d1f1725896c928cbcf580abc268f307c",
      "tree": "abaf9477ff6c4a655faae3f166629d37cc146c30",
      "parents": [
        "59f3f33338f371b3a30163406fbb5fe323503939"
      ],
      "author": {
        "name": "James Cowgill",
        "email": "james.cowgill@mips.com",
        "time": "Fri Mar 02 08:33:03 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] mips: don\u0027t save floating point registers in setjmp / longjmp\n\nDon\u0027t bother saving any floating point registers in setjmp or restoring\nthem in longjmp. This causes issues when compiling for the FPXX ABI, and\nis unnessesary as klibc does not support floating point code.\nAdditionally, remove the unused parts of __jmp_buf.\n\nSigned-off-by: James Cowgill \u003cjames.cowgill@mips.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-March/003983.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "59f3f33338f371b3a30163406fbb5fe323503939",
      "tree": "96ac1bce6b71f5119c40a8398928669e04beea10",
      "parents": [
        "048bfb0df170d4a43142adcee8a2dffdfc2c1e9f"
      ],
      "author": {
        "name": "James Cowgill",
        "email": "james.cowgill@mips.com",
        "time": "Fri Mar 02 08:33:02 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] mips/mips64: simplify crt0 code\n\nVarious simplifications and adjustments to the MIPS crt0 files:\n- Use NESTED(__start, 0, ra) - this has no effect on the code, but is\n  arguably more correct since we have no real stack frame.\n- Don\u0027t allocate extra stack space. We need none on 64-bit, and only 16\n  bytes on 32-bit.\n- Align the stack pointer in the (unlikely) event it is misaligned.\n- Don\u0027t load the gp register - it is useless in non-PIC code.\n- Use jal in 64-bit code.\n- Crash if __libc_start returns (teq should causes a trap exception).\n\nSigned-off-by: James Cowgill \u003cjames.cowgill@mips.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-March/003982.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "048bfb0df170d4a43142adcee8a2dffdfc2c1e9f",
      "tree": "ef045626fe32342c8302efa890babe8cc2972f09",
      "parents": [
        "0a14ced5d7d0c23ece5d2828cbdff6cb1c589b8d"
      ],
      "author": {
        "name": "James Cowgill",
        "email": "james.cowgill@mips.com",
        "time": "Fri Mar 02 08:33:01 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] mips: use -Ttext-segment when linking shared library\n\nMost architectures use the -Ttext option to move the klibc shared\nlibrary out of the way of the normal load address. Unfortunately MIPS\nhas some extra sections which are positioned before the .text section\nand are therefore not repositioned by the -Ttext option.\n\nFix this by using the -Ttext-segment option. Instead of changing the\naddress of the .text section, this option changes the .text segment\nwhich happens to include all the special MIPS sections. After this we\ncan drop the linker script which we no longer need.\n\nSigned-off-by: James Cowgill \u003cjames.cowgill@mips.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-March/003981.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "0a14ced5d7d0c23ece5d2828cbdff6cb1c589b8d",
      "tree": "df4ae89b8628352296d0490decd73dfae50d7e1d",
      "parents": [
        "994adfcbd9bfcb45967b834c962db20b875fbd6c"
      ],
      "author": {
        "name": "James Cowgill",
        "email": "james.cowgill@mips.com",
        "time": "Fri Mar 02 14:48:21 2018 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] mips64: compile with -mno-abicalls\n\nBy default, the MIPS toolchain compiles all code as PIC. Since klibc\nlinks everything at static addresses, we don\u0027t need PIC code so use\n-mno-abicalls to disable it. To fix subsequent link errors, use\n-Ttext-segment to adjust the base address of klibc to a more sensible\nlocation.\n\nThis fixes a bug in the shared library form of klibc where programs\nwould segfault in the syscall handler because we tried to store into the\n\"errno\" variable without setting up the gp register. This is only required\nunder the PIC ABI.\n\nSigned-off-by: James Cowgill \u003cjames.cowgill@mips.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-March/003985.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "994adfcbd9bfcb45967b834c962db20b875fbd6c",
      "tree": "133cc31dd268e30bed9ce1bc988bd7ba38d46fb4",
      "parents": [
        "6888a69d8735e508d62285c613fc521d418c30a1"
      ],
      "author": {
        "name": "Greg Thelen",
        "email": "gthelen@google.com",
        "time": "Sun Feb 25 23:16:35 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] remove some \u0027make -s\u0027 build spew\n\nUse $(kecho) to remove \u0027GEN klcc/klibc.config\u0027 log message from\n\u0027make --silent\u0027 output.\n\nSigned-off-by: Greg Thelen \u003cgthelen@google.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-February/003979.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "6888a69d8735e508d62285c613fc521d418c30a1",
      "tree": "e7509d6e070df608b5b327fe3e0011b4a1329cb9",
      "parents": [
        "f00d99cb73813d94730900e46752612a9ce4fadb"
      ],
      "author": {
        "name": "Greg Thelen",
        "email": "gthelen@google.com",
        "time": "Sun Feb 25 23:16:34 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] use more consistent quoting\n\nSigned-off-by: Greg Thelen \u003cgthelen@google.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-February/003978.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "f00d99cb73813d94730900e46752612a9ce4fadb",
      "tree": "abf7b0f3e2e419c5eeb7e42d1db96e4c5b4bc98e",
      "parents": [
        "d015414c70bf8ec7464135e67557d6e7f2df662b"
      ],
      "author": {
        "name": "Greg Thelen",
        "email": "gthelen@google.com",
        "time": "Sun Feb 25 23:16:33 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] remove unused variables\n\nFix compilation warnings:\n  $KLIBC/usr/klibc/asprintf.c: In function \u0027asprintf\u0027:\n  $KLIBC/usr/klibc/asprintf.c:14:8: warning: unused variable \u0027p\u0027 [-Wunused-variable]\n    char *p;\n\n  $KLIBC/usr/klibc/asprintf.c:13:6: warning: unused variable \u0027bytes\u0027 [-Wunused-variable]\n    int bytes;\n\n  $KLIBC/usr/utils/readlink.c: In function \u0027main\u0027:\n  $KLIBC/usr/utils/readlink.c:20:6: warning: unused variable \u0027i\u0027 [-Wunused-variable]\n    int i;\n\nSigned-off-by: Greg Thelen \u003cgthelen@google.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-February/003977.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "d015414c70bf8ec7464135e67557d6e7f2df662b",
      "tree": "a337cb4edd67fd751daf30d9636abf132713a60e",
      "parents": [
        "8cb2792d8f7317c336ccc98f99199ae579ac84c6"
      ],
      "author": {
        "name": "Greg Thelen",
        "email": "gthelen@google.com",
        "time": "Sun Feb 25 23:16:32 2018 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] include sys/types.h in more places\n\nInclude sys/types.h to avoid compilation warnings:\n\n  In file included from $LINUX/usr/include/linux/byteorder/little_endian.h:12:0,\n                   from $LINUX/usr/include/asm/byteorder.h:5,\n                   from $KLIBC/usr/klibc/../include/klibc/endian.h:11,\n                   from $KLIBC/usr/klibc/../include/endian.h:8,\n                   from $KLIBC/usr/klibc/pread.c:7:\n  $LINUX/usr/include/linux/types.h:22:0: warning: \"__bitwise\" redefined\n\n  In file included from $KLIBC/usr/klibc/../include/klibc/endian.h:10:0,\n                   from $KLIBC/usr/klibc/../include/endian.h:8,\n                   from $KLIBC/usr/klibc/pread.c:7:\n  $KLIBC/usr/klibc/../include/klibc/compiler.h:144:0: note: this is the location of the previous definition\n\n  In file included from $LINUX/usr/include/linux/byteorder/little_endian.h:12:0,\n                   from $LINUX/usr/include/asm/byteorder.h:5,\n                   from $KLIBC/usr/klibc/../include/klibc/endian.h:11,\n                   from $KLIBC/usr/klibc/../include/endian.h:8,\n                   from $KLIBC/usr/klibc/pwrite.c:7:\n  $LINUX/usr/include/linux/types.h:22:0: warning: \"__bitwise\" redefined\n\n  In file included from $KLIBC/usr/klibc/../include/klibc/endian.h:10:0,\n                   from $KLIBC/usr/klibc/../include/endian.h:8,\n                   from $KLIBC/usr/klibc/pwrite.c:7:\n  $KLIBC/usr/klibc/../include/klibc/compiler.h:144:0: note: this is the location of the previous definition\n\nSigned-off-by: Greg Thelen \u003cgthelen\u003egoogle.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2018-February/003976.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "8cb2792d8f7317c336ccc98f99199ae579ac84c6",
      "tree": "c10b3b5462ee515863d761d2416986cec0976129",
      "parents": [
        "10059fddba9f8bec6aeb0d37d217df6d65e64c3b"
      ],
      "author": {
        "name": "Mathieu Trudel-Lapierre",
        "email": "mathieu.trudel-lapierre@canonical.com",
        "time": "Tue Jan 24 10:05:12 2017 -0500"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] ipconfig: Set broadcast when sending DHCPREQUEST and DHCPDISCOVER\n\nWe need to do this, since our devices are probably not configured yet and\nthere may be more than one device we\u0027re trying to do DHCP on on the same\nnetwork. Otherwise, things might be dropped.\n\nPatch is originally from here:\nhttps://bugs.launchpad.net/ubuntu/+source/klibc/+bug/1327412/comments/5\n... but the reporter \"patpat\" has not provided contact information, and\nthis is independently verifiable by looking at RFC 2131, section 4.1,\npage 24.\n\nReferences: https://bugs.debian.org/733988\nReferences: https://bugs.launchpad.net/bugs/1327412\nLink: https://www.zytor.com/pipermail/klibc/2017-December/003974.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "10059fddba9f8bec6aeb0d37d217df6d65e64c3b",
      "tree": "ada6171cc3fced7a373b8847bdc076c3540fd7e3",
      "parents": [
        "c4b811a1e4647224ddc717fac59900d16d0e9d4d"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sun Jan 17 19:50:28 2016 +0000"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] run-init: Add dry-run mode\n\ninitramfs-tools wants to validate the real init program before running\nit, as there is no way out once it has exec\u0027d run-init.  This is\ncomplicated by the increasing use of symlinks for /sbin/init and for\n/sbin itself.  We can\u0027t simply resolve them with \u0027readlink -f\u0027 because\nany absolute symlinks will be resolved using the wrong root.  Add a\ndry-run mode (-n option) to run-init that goes as far as possible to\nvalidate that the given init is executable.\n\nReferences: https://bugs.debian.org/810965\nLink: https://www.zytor.com/pipermail/klibc/2017-December/003973.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "c4b811a1e4647224ddc717fac59900d16d0e9d4d",
      "tree": "faf0ff22df1302ed587ca9a0ca8ffe5db1e5174e",
      "parents": [
        "6b621b8705ce5901dcf49607c8a3523c9e521901"
      ],
      "author": {
        "name": "Baptiste Jonglez",
        "email": "baptiste.jonglez@imag.fr",
        "time": "Thu Sep 14 09:22:21 2017 -0700"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:08:04 2019 +0000"
      },
      "message": "[klibc] nfsmount: support nfsvers\u003d and vers\u003d options\n\nThe standard mount option nowadays to specify NFS version is \"nfsvers\", as\ndocumented in nfs(5) on modern Linux systems.  Up to now, nfsmount only\nsupported the old \"v2\" or \"v3\" boolean options.\n\nExtend option parsing to support both \"nfsvers\u003dX\" and \"vers\u003dX\", with X\nbeing equal to either 2 or 3 (nfsmount does not support NFSv4 at present).\nIf both the new option \"nfsvers\u003dX\" and old option \"vX\" are passed, the\nversion specified by \"nfsvers\" takes precedence.\n\nTested with initramfs-tools on Debian stretch, it can now successfully\nmount the root on NFS using nfsmount, with the following kernel command\nline:\n\n    root\u003d/dev/nfs nfsroot\u003dserver:path,nfsvers\u003d3\n\nWithout this patch, such a command line would cause Debian\u0027s initrd to\nloop with the following error message:\n\n  Begin: Retrying nfs mount ... nfsmount: bad option \u0027nfsvers\u0027\n\nSigned-off-by: Baptiste Jonglez \u003cbaptiste.jonglez@imag.fr\u003e\nLink: https://www.zytor.com/pipermail/klibc/2017-September/003959.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "6b621b8705ce5901dcf49607c8a3523c9e521901",
      "tree": "51410286b6c5ff97a34af882e1edd0534a66156f",
      "parents": [
        "31810c21e6e7ee7c0478e80cee35b0b7e51de826"
      ],
      "author": {
        "name": "Alfonso Sanchez-beato",
        "email": "alfonso.sanchez-beato@canonical.com",
        "time": "Wed May 31 08:34:04 2017 +0200"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 03:06:15 2019 +0000"
      },
      "message": "[klibc] Add support for reboot syscall argument\n\nAdd support to the reboot command so an argument for the 4th parameter\nof the syscall can be passed around. This can be useful in, say, devices\nthat follow Android partitions conventions, so we can do things like\nrebootinig to the kernel in recovery partition with \"reboot recovery\".\n\nReferences: https://bugs.launchpad.net/ubuntu/+source/klibc/+bug/1692494\nLink: https://www.zytor.com/pipermail/klibc/2017-May/003957.html\nLink: https://bugs.debian.org/863761\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "31810c21e6e7ee7c0478e80cee35b0b7e51de826",
      "tree": "6c6d715b47fe3e5153563c7a518f9130224184d4",
      "parents": [
        "4d19974d7020488f63651244e1f9f51727c3f66c"
      ],
      "author": {
        "name": "Jay Vosburgh",
        "email": "jay.vosburgh@canonical.com",
        "time": "Fri Feb 03 16:36:51 2017 -0800"
      },
      "committer": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 02 02:23:46 2019 +0000"
      },
      "message": "[klibc] ipconfig: handle multiple interfaces correctly\n\n\t When configuring multiple interfaces, the existing logic in\nipconfig can fail if DHCP replies are received out of the expected order,\nor if one or more interfaces never receive replies.\n\n\tThe current ipconfig logic uses a single packet socket to handle\nall incoming DHCP replies.  If, for example, the host has two interfaces,\nA and B, and only B will be sent a DHCP reply, the order of events goes\nsomething like this:\n\nipconfig sends DHCP on A\nipconfig sends DHCP on B\nsystem receives DHCP response to B\nipconfig attempts to receive DHCP reply for A; the available packet does\nnot match A\u0027s XID, et al, and is discarded.\n\n\tThis will repeat until ipconfig times out and gives up.\n\n\tThe failure can come and go with different kernel versions, as the\nkernel version affects the order in which the devices appear.  In the\nabove example, if interface B is first, then the sequence will work.\n\n\tThe solution is to use a packet socket per interface.  This avoids\nthe need to queue packets being read for the \"wrong\" interface or other\nschemes to peek incoming packets.\n\nSigned-off-by: Jay Vosburgh \u003cjay.vosburgh@canonical.com\u003e\nLink: https://www.zytor.com/pipermail/klibc/2017-February/003945.html\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\n"
    },
    {
      "commit": "4d19974d7020488f63651244e1f9f51727c3f66c",
      "tree": "15f41dfd38e01f1a6c6152e649d1a0c6007d8450",
      "parents": [
        "cf9c7d2382eadc5699d3e4032b3e1774eccc36da"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 13:26:01 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 13:26:01 2016 -0800"
      },
      "message": "[klibc] fwrite: fix typo in comment\n\nFix typo in comment, no code change.\n\nReported-by: Gilles Espinasse \u003cg.esp@free.fr\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "cf9c7d2382eadc5699d3e4032b3e1774eccc36da",
      "tree": "5ffd6e3c9e8f0995c09adcdc74e8a936508fad07",
      "parents": [
        "17fabd540aeb5019909a024243c6d26610cab307"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 02:39:07 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 02:41:00 2016 -0800"
      },
      "message": "[klibc] fwrite: flush before a large write to allow better bypass\n\nIf we are doing a large write, flush the buffer preemptively, so we\ndon\u0027t end up double-buffering a sequence of BUFSIZ writes simply\nbecause we started out with something in the buffer.\n\nThis doesn\u0027t increase the number of system calls, since we will always\nneed to do two system calls in this case.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "17fabd540aeb5019909a024243c6d26610cab307",
      "tree": "f69edc766d9602dcfa3e56d6822de01789673989",
      "parents": [
        "aa5948f9f394c9357fce8ee3e7ad7b7f10fa63b1"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 01:55:04 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 01:55:04 2016 -0800"
      },
      "message": "[klibc] Make asprintf() a simple wrapper around vasprintf()\n\nSince we have vasprintf() anyway, save about a hundred bytes (on\nx86-64) by making asprintf() a typical stdarg wrapper function.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "aa5948f9f394c9357fce8ee3e7ad7b7f10fa63b1",
      "tree": "13d471f53a728aacae09908bda416677d58e1f8e",
      "parents": [
        "b4babe7a3618705a283fc9458de19aba1d12401d"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 01:52:06 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Feb 01 01:52:06 2016 -0800"
      },
      "message": "[klibc] stdlib.h: include \u003cfcntl.h\u003e for inline of posix_grantpt()\n\nSince namespace pollution is not a major concern in klibc, add\n\u003cfcntl.h\u003e to support the inline of posix_grantpt().\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "b4babe7a3618705a283fc9458de19aba1d12401d",
      "tree": "d338b88f5ec3eb7ce11785b0654ce2d563902263",
      "parents": [
        "b7536497ab08689ebe12c03558379982dc61ac0c"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Jan 26 15:58:49 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Jan 26 15:58:49 2016 -0800"
      },
      "message": "[klibc] Make posix_openpt() an inline\n\nThis function is so trivial that there is no reason to not make it an\ninline.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "b7536497ab08689ebe12c03558379982dc61ac0c",
      "tree": "63c7d6c273ad8f35c403626578e0b6c0f5ab8a46",
      "parents": [
        "26e26f48cf9255c44514b8d36e351ecf3c6260b2"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Jan 26 15:49:43 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Jan 26 15:49:43 2016 -0800"
      },
      "message": "[klibc] accept.c: fix file header\n\nCorrect the filename in the header.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "26e26f48cf9255c44514b8d36e351ecf3c6260b2",
      "tree": "27b959b2380edd52173c9ba032da059843bff222",
      "parents": [
        "cf8147c43a60d9eb6a6713d16f30364a698a6936"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Jan 15 11:30:01 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Jan 15 11:30:01 2016 -0800"
      },
      "message": "[klibc] Remove open_cloexec()\n\nThe kernel now (since 2.6.23) allows O_CLOEXEC to be passed directly\nto open(), so there is no reason to have open_cloexec() anymore.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "cf8147c43a60d9eb6a6713d16f30364a698a6936",
      "tree": "0060aa600ef88e900329b69575e77b77685c2e49",
      "parents": [
        "4a7ac3d2d9602d06b301cca62e2382f17fa6d43b"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 18:31:40 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 18:35:16 2016 -0800"
      },
      "message": "[klibc] Add accept4(), handle fallback from accept() to accept4()\n\nAdd support for the accept4() system call.\n\nSome architectures now have accept4() but not accept(), so introduce a\nstandard fallback.  However, since accept() is a socketcall, we have\nto do some special hacks.\n\nWhile we are at it, handle conditional socketcall stubs based on\ntheir existence \u003clinux/net.h\u003e, analogous to \u003casm/unistd.h\u003e.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "4a7ac3d2d9602d06b301cca62e2382f17fa6d43b",
      "tree": "00d42115da4d6cbc15b56697b611fe87396a0437",
      "parents": [
        "7671eacc1ad3b8582dce1ec6f1e295c517f514ff"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 18:24:18 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 18:24:18 2016 -0800"
      },
      "message": "[klibc] Remove sys/socketcalls.h\n\nWe no longer generate assembly stubs for socketcalls on any\narchitecture, so \u003clinux/net.h\u003e is perfectly usable as is.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "7671eacc1ad3b8582dce1ec6f1e295c517f514ff",
      "tree": "9a78230f97704ff9927183c2a3e4e0d5404c06c9",
      "parents": [
        "0016a343f734cfe002dd45ab97a67b857ffe2e6d"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 18:01:55 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 18:01:55 2016 -0800"
      },
      "message": "[klibc] Remove obsolete getpt() function\n\ngetpt() has long since been obsolete; instead use\nposix_openpt(O_RDWR|O_NOCTTY).\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "0016a343f734cfe002dd45ab97a67b857ffe2e6d",
      "tree": "732029c9471d3653ed834ce0949b4397e10b286b",
      "parents": [
        "5125a8b74971fc22fdc74cfc9dc8e04a4f5c0e4b"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 06 01:21:27 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:51:26 2016 -0800"
      },
      "message": "[klibc] gzip: Fix silent fallback to decompression\n\nIf the gzip utilities are built without support for compression,\nthey will always attempt to carry out decompression even if the\ncommand name and options don\u0027t imply that.  Instead they should\nfail with an explicit error in this case.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "5125a8b74971fc22fdc74cfc9dc8e04a4f5c0e4b",
      "tree": "dc6d2a1078d9e42945029e2434ff5bb193ce7e00",
      "parents": [
        "547065c81db978d1c3ddd26d495dd7d29fa9bcca"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 06 01:20:02 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:50:50 2016 -0800"
      },
      "message": "[klibc] dash: mkbuiltins: Fix sort order harder\n\nLC_COLLATE can be overriden by LC_ALL, so set LC_ALL instead when\nrunning sort.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "547065c81db978d1c3ddd26d495dd7d29fa9bcca",
      "tree": "64519126932913b36d3477e0f4eb1a59ea1eeec2",
      "parents": [
        "76e7a4a89826c76b9ebbe9d6015ab16aadbe3dcd"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 06 01:19:55 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:50:46 2016 -0800"
      },
      "message": "[klibc] Install headers with consistent mode\n\nCurrently we ensure the installed headers are readable by everyone,\nbut write permissions will depend on the current umask.  Turn off the\ngroup and other writable bits to ensure consistent results.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "76e7a4a89826c76b9ebbe9d6015ab16aadbe3dcd",
      "tree": "1cf032cfb02f330b35755e7e18a326fb3b97e6a9",
      "parents": [
        "4d9db8a092aee0dfaebb65e0b4f054a40d92cbd9"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 06 01:09:36 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:48:54 2016 -0800"
      },
      "message": "[klibc] mount: Implement -o defaults\n\nThis is needed to support mounting non-root filesystems in\ninitramfs-tools.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "4d9db8a092aee0dfaebb65e0b4f054a40d92cbd9",
      "tree": "f6f7e43371ae4dc8659b9a17fb00e6d6bdbbecc7",
      "parents": [
        "32b36eb98fafad924f3f69904d74d2f2168a4753"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 06 01:09:16 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:48:48 2016 -0800"
      },
      "message": "[klibc] readlink: Add -f option\n\nThis is needed to support mounting non-root filesystems in\ninitramfs-tools.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "32b36eb98fafad924f3f69904d74d2f2168a4753",
      "tree": "2a7acf96c589792dc534db8efd0646e9c052182e",
      "parents": [
        "ce358438679db7488f36706feaf64d6d5ab84ad6"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 06 01:08:47 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:48:43 2016 -0800"
      },
      "message": "[klibc] Implement realpath()\n\nThis is needed as the basis for the readlink -f option.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "ce358438679db7488f36706feaf64d6d5ab84ad6",
      "tree": "9920fc5566cc07062103a4d46241f6d06c19358c",
      "parents": [
        "75895304280f597f46551deb8b87c27ac18a013c"
      ],
      "author": {
        "name": "Aurelien Jarno",
        "email": "aurelien@aurel32.net",
        "time": "Wed Jan 06 00:44:16 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:45:55 2016 -0800"
      },
      "message": "[klibc] ppc64: fix struct stat\n\nOn ppc64 the struct stat defined by klibc matches the kernel one.\nHowever it contains implicit padding before the st_rdev field due to the\n64-bit alignement. For internal reasons, klibc defines st_rdev as a pair\nof 32-bit values (using the __stdev64 macro). They only need to be\n32-bit aligned and as a consequence st-\u003est_rdev is incorrectly defined.\n\nThe solution is to add an explicit padding in the structure. This fixes\nthe resume binary on ppc64 BE and LE, and probably other things.\n\nSigned-off-by: Aurelien Jarno \u003caurelien@aurel32.net\u003e\nLink: http://lkml.kernel.org/r/20160106004416.GG28542@decadent.org.uk\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "75895304280f597f46551deb8b87c27ac18a013c",
      "tree": "d511c4f513fb9082bebb45071049a3503fceb166",
      "parents": [
        "3fefc6a404a970a911417d0345618a7e9abfef70"
      ],
      "author": {
        "name": "Helge Deller",
        "email": "deller@gmx.de",
        "time": "Wed Jan 06 00:43:50 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:45:50 2016 -0800"
      },
      "message": "[klibc] Add pread and pwrite 32bit syscall wrappers for parisc\n\nOn the hppa arch (32bit userspace and 32 or 64bit kernel), the fstype\nprogram fails to detect the filesystem.  The reason for this failure\nis, that fstype calls the pread() syscall, which has on some\narchitectures with 32bit userspace a different calling syntax.  I\nnoticed this bug on hppa, but I assume s390 (32bit) and others might\nrun into similiar issues.\n\nSigned-off-by: Helge Deller \u003cdeller@gmx.de\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "3fefc6a404a970a911417d0345618a7e9abfef70",
      "tree": "d2020627c7733863bb76b266525d7e856c109a01",
      "parents": [
        "6e2976b9d103fb37a6a06e5bccb323fa5ab1c53b"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Wed Jan 06 00:43:25 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:45:36 2016 -0800"
      },
      "message": "[klibc] MIPS: Update archfcntl.h\n\nUpdate usr/include/arch/mips/archfcntl.h from kernel headers:\n\n- Add definitions of O_PATH, O_TMPFILE\n- Update value of O_SYNC to include __O_SYNC\n- Add definitions of F_{SET,GET}OWN_EX, F_GETOWNER_UIDS,\n  F_OFD_{GETLK,SETLK,SETLKW}, F_OWNER_{TID,PID,PGRP}\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "6e2976b9d103fb37a6a06e5bccb323fa5ab1c53b",
      "tree": "e7592ae122440705aca9b7db94a86a2e872322f1",
      "parents": [
        "f7fc5bed64d20699fbcc15751f1ac2caf8028847"
      ],
      "author": {
        "name": "Mauricio Faria de Oliveira",
        "email": "mauricfo@linux.vnet.ibm.com",
        "time": "Wed Jan 06 00:43:10 2016 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:45:31 2016 -0800"
      },
      "message": "[klibc] ppc64: ELFv2: Load TOC value in system call stub\n\nThis fixes a segmentation fault in the system call\u0027s error handling path with\ndynamically-linked binaries on PowerPC64 little endian.  The system call stub\nwasn\u0027t loading up r2 with the appropriate TOC value in its global entry point.\n\nThe r2 setup code comes from the FUNC_START macro in gcc [1] and an equivalent\none can also be found in the LOCALENTRY macro in glibc [2].\n\nOn the ELFv2 ABI (see [1]):\n - The global entry point is expected to load up r2 with the appropriate TOC\n   value for this function.\n - The local entry point expects r2 to be set up to the current TOC.\n\nThe problem happened with dynamically-linked binaries because:\n - the system call is an indirect call (via global entry point) from the binary\n   to the shared library, landing in the syscall stub  (which didn\u0027t load up r2\n   with the TOC of the shared library)\n - its branch to __syscall_error is a direct call (via local entry point) within\n   the shared library, landing in the function (which expects r2 to be set up to\n   that TOC)\n - when the function attempts to store errno (in an address relative to the TOC),\n   that address incorrectly pointed to a read-only segment -- segmentation fault.\n\nThe problem didn\u0027t happen with statically-linked binaries because the TOC value\nwasn\u0027t different on that case.\n\nThanks and credits to Alan Modra and Ulrich Weigand, for helping with this and\npointing out the solution.\n\n[1] https://gcc.gnu.org/ml/gcc-patches/2013-11/msg01141.html\n[2] https://www.sourceware.org/ml/libc-alpha/2013-11/msg00315.html\n\nSigned-off-by: Mauricio Faria de Oliveira \u003cmauricfo@linux.vnet.ibm.com\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "f7fc5bed64d20699fbcc15751f1ac2caf8028847",
      "tree": "9e95637cfdc5f13f767df609d4aadc6661781d62",
      "parents": [
        "9b625887a59c03c244b43550b576529f209dde11"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:07:00 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 17:07:00 2016 -0800"
      },
      "message": "[klibc] Update README.klibc\n\nIn README.klibc:\n\n- Clarify the new kernel header creation process\n- Change mips64 to Working\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "9b625887a59c03c244b43550b576529f209dde11",
      "tree": "8bf5422467a001521b31484ce7123a19e5fdbd96",
      "parents": [
        "bc18ea796db39b8d3575948b3d0de28daee38261"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 16:43:50 2016 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 05 16:43:50 2016 -0800"
      },
      "message": "[klibc] i386: remove special handling of socketcall\n\nAs of kernel 4.3, i386 now has direct system calls for sockets, so\ndrop the special handling for i386 socketcall.  If built on older\nkernels, it will still generate socketcall stubs although they will be\nless efficient.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "bc18ea796db39b8d3575948b3d0de28daee38261",
      "tree": "20e7f1894fc0173e88f10ce0cc5cd0b842fac432",
      "parents": [
        "3438d861da2e6939a6b0d454ffe247c19ead5993"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Nov 05 08:52:33 2015 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Nov 05 14:22:01 2015 -0800"
      },
      "message": "[klibc] Inline __arch_libcinit()\n\n__arch_libcinit() is only ever used as part of __libc_init(), so we\nmight as well make it an inline function.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "3438d861da2e6939a6b0d454ffe247c19ead5993",
      "tree": "f5a403d9b99a2886ce902bb1d0b4eabd5f17b6d0",
      "parents": [
        "ccd50880175e79fb9bc544c96d72b8971303cc0a"
      ],
      "author": {
        "name": "Dejan Latinovic",
        "email": "Dejan.Latinovic@imgtec.com",
        "time": "Thu Mar 05 16:51:45 2015 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Mar 05 16:51:45 2015 -0800"
      },
      "message": "add-mips64-support-arch-mips64-specific\n\nDescription: Adding mips64 specific chagnes.\nModeled on mips 32 and adapted for 64 bit ABI.\n - MCONFIG:  using existing klibc.ld scrpit\n - crt0.S:   adapted gp initialization\n - setjmp.S: do not save floating-point state\n"
    },
    {
      "commit": "ccd50880175e79fb9bc544c96d72b8971303cc0a",
      "tree": "89048160c6ac82f3f12cb4ee418934aef8e2cf9c",
      "parents": [
        "493f9a99220aed4eb7c6e3dd9018c037d45b13e2"
      ],
      "author": {
        "name": "Dejan Latinovic",
        "email": "Dejan.Latinovic@imgtec.com",
        "time": "Thu Mar 05 16:51:44 2015 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Mar 05 16:51:44 2015 -0800"
      },
      "message": "add-mips64-support-arch-mips32\n\nDescription: Add mips64 support, using existing mips32 code.\n - using mips32 assembler source files: pipe.S vfork.S syscall.S\n - sysstub.ph: copied over from klibc/arch/mips\n"
    },
    {
      "commit": "493f9a99220aed4eb7c6e3dd9018c037d45b13e2",
      "tree": "3900c556cef177b0b162b8fc99a3a83a0506bfe3",
      "parents": [
        "68848113de73373a7a7ed3aec4ce8d1213e18b35"
      ],
      "author": {
        "name": "Dejan Latinovic",
        "email": "Dejan.Latinovic@imgtec.com",
        "time": "Thu Mar 05 16:51:44 2015 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Thu Mar 05 16:51:44 2015 -0800"
      },
      "message": "add-mips64-support-headers\n\nDescription: Added header files for mips64.\nModeled on mips 32 header files and adapted for 64 bit ABI.\n - archsetjmp.h: do not save floating-point state\n - asm.h:        Symbolic register names for 64 bit ABI\n"
    },
    {
      "commit": "68848113de73373a7a7ed3aec4ce8d1213e18b35",
      "tree": "7b675dd0fff26af92adc5065a5ae1dc11cabbfcd",
      "parents": [
        "7763dd33e5b8eed4b9e3c583c02c10176fd550d3"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Jul 09 11:26:40 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Jul 09 11:26:40 2014 -0700"
      },
      "message": "[klibc] 2.0.4 released, next version is 2.0.5\n"
    },
    {
      "commit": "7763dd33e5b8eed4b9e3c583c02c10176fd550d3",
      "tree": "b4ff39fb18ef0ed2b921e601d5c9a6322409796e",
      "parents": [
        "6eb77ce795189d39fc0f7bc12eb8d7be11e46718"
      ],
      "author": {
        "name": "Thorsten Glaser",
        "email": "tg@mirbsd.org",
        "time": "Wed Jun 11 10:02:14 2014 +0200"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Jul 09 08:21:02 2014 -0700"
      },
      "message": "[klibc] isatty(): use TCGETS instead of TIOCGPGRP, like dietlibc does\n\nWhile all “real” ttys may support TIOCGPGRP, /dev/console doesn’t;\nusing TCGETS here allows Linux booted with init\u003d/bin/mksh-static\nto have working interactive command line (PS1, editing, etc).\n\n[ hpa: TCGETS matches glibc, so go with it ]\n\nReported-by: Dominik George \u003cd.george@tarent.de\u003e\nSigned-off-by: Thorsten Glaser \u003ct.glaser@tarent.de\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "6eb77ce795189d39fc0f7bc12eb8d7be11e46718",
      "tree": "19b418e54081aa40c1e5e4ccf478dabdeb7e9b61",
      "parents": [
        "06e395cd75dc79289ae789c146795189c32babd8"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 13:29:30 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 13:29:30 2014 -0700"
      },
      "message": "[klibc] x86-64: disable the use of SSE\n\nDisable the use of SSE registers.  This reduces the size of the code\nbecause it means the varadic functions don\u0027t need to marshall\nparameters in the SSE registers.  Since klibc doesn\u0027t support floating\npoint, this is a significant size win.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "06e395cd75dc79289ae789c146795189c32babd8",
      "tree": "190e1f8741d57b040ea5ee7c38bfde6deef6208b",
      "parents": [
        "1ba3e80738407d13bc4a71812578848b6f657e23"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 13:23:49 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 13:23:49 2014 -0700"
      },
      "message": "readlink: Reduce size by calling _fwrite() instead of puts()\n\nWe know how long the output is, so we might as well call _fwrite()\ndirectly, with the explicit termination set to \\n instead of \\0.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "1ba3e80738407d13bc4a71812578848b6f657e23",
      "tree": "22ffe9a3ecab966ed601b1183f6ca486f220164c",
      "parents": [
        "4a66f39cb53fde78c4518615382be83a9e2bff0b"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 09:34:45 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 09:34:45 2014 -0700"
      },
      "message": "readlink: Handle multiple input arguments\n\nHandle multiple links as parguments passed to readlink().\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "4a66f39cb53fde78c4518615382be83a9e2bff0b",
      "tree": "f68542d62d5fc87e9ddb6af6983f251ef0213ed5",
      "parents": [
        "a51893a6d52a8cdf247cb1bd10dd8987d4d7eb49"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 09:27:38 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Apr 15 09:27:38 2014 -0700"
      },
      "message": "readlink: Better buffer handling\n\n- Allow PATH_MAX bytes, not just a hard-coded 128 bytes\n- Just allocate the buffer on the stack, no need for malloc()\n- Use puts() rather than printf()\n\nReported-by: Rafi Rubin \u003crafi@seas.upenn.edu\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "a51893a6d52a8cdf247cb1bd10dd8987d4d7eb49",
      "tree": "40236fab3b43770c581b5cc849724536e091e31a",
      "parents": [
        "e845d9b10c5699ef5f2f41a117f2211508f3d6bf"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 16:51:10 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 16:51:10 2014 -0700"
      },
      "message": "[klibc] fwrite: use memrchr() to find the final \u0027\\n\u0027 in _IOLBF mode\n\nIn line buffered mode, we need to split the write at the final \u0027\\n\u0027\n(which usually, but not always, is the last character in the string.)\n\nUse memrchr() instead of open-coding it.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "e845d9b10c5699ef5f2f41a117f2211508f3d6bf",
      "tree": "61232f1ac743ddaf687afc2e0d57b7791e0896f7",
      "parents": [
        "aed6821b52456a4c538c9097999adba451e49248"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 16:41:47 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 16:41:47 2014 -0700"
      },
      "message": "[klibc] Remove obsolete enum _IO_file_flags\n\nThis enum is not used anywhere.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "aed6821b52456a4c538c9097999adba451e49248",
      "tree": "7e551716a5a5114c86aa2e6854e9c5740ba21dbe",
      "parents": [
        "fe3dff23a604af5c96060574bcdb4e723b977627"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 16:00:01 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 16:00:01 2014 -0700"
      },
      "message": "[klibc] Move architecture-specific initialization to arch/\n\nMove out architecture-specific initialization code (currently only for\ni386) into the arch/ directory and define a configuration variable\n_KLIBC_HAS_ARCHINIT to indicate its presence.\n\nFor consistency, change __init_stdio() to __libc_init_stdio().\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "fe3dff23a604af5c96060574bcdb4e723b977627",
      "tree": "6dbd6582f20b7641a9aabb978a8160dcf021b6ab",
      "parents": [
        "c830ba8d7d4f1653b36321c103c02251528e47d6"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 15:58:53 2014 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 09 15:58:53 2014 -0700"
      },
      "message": "[klibc] \u003csys/auxv.h\u003e: add missing dependency \u003cklibc/extern.h\u003e\n\n__extern is defined in \u003cklibc/extern.h\u003e\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "c830ba8d7d4f1653b36321c103c02251528e47d6",
      "tree": "3181eba42b614c70bb13980d4c4963243ece8700",
      "parents": [
        "45e09deb6a0a4fcb3a56efb7e18807b2800e358f"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jan 24 20:31:26 2014 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jan 24 20:31:26 2014 -0800"
      },
      "message": "[klibc] i386: use the vdso for system calls on i386\n\nUse the system call entry point in the vdso for system calls on i386.\nThe vdso can provide either int $0x80, sysenter or syscall depending\non the CPU.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "45e09deb6a0a4fcb3a56efb7e18807b2800e358f",
      "tree": "12f35ecc704e565935515b9e3c49b6f805fefeae",
      "parents": [
        "e0c108682e87aaf0567cb851e1a7918a0d3cd650"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jan 24 20:26:04 2014 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Jan 24 20:28:23 2014 -0800"
      },
      "message": "auxv: convert auxiliary vector into an array; define getauxval()\n\nConvert the ELF auxiliary vector into an array.  Define getauxval() as\nan inline accessor to that array.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "e0c108682e87aaf0567cb851e1a7918a0d3cd650",
      "tree": "6ee9e5b29ac87914bbd44e9b890eda328eab863c",
      "parents": [
        "c6fc1a4b086a5d6504bc5e1048f039f7a644d73b"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Dec 03 10:57:09 2013 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Dec 03 10:57:09 2013 -0800"
      },
      "message": "[klibc] 2.0.3 released, next version is 2.0.4\n"
    },
    {
      "commit": "c6fc1a4b086a5d6504bc5e1048f039f7a644d73b",
      "tree": "7239e3f427fb4899a7324bf3cb4cb694861373b9",
      "parents": [
        "71a849a7e2d5e73321e986fa91d1f34b387e71ba"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Dec 03 18:15:58 2013 +1100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Dec 03 10:53:46 2013 -0800"
      },
      "message": "[klibc] gzip: Fix typo CONFIG_KLIB_ZIP -\u003e CONFIG_KLIBC_ZIP\n\nWe were using CONFIG_KLIB_ZIP in a couple of places where we\nmeant to use CONFIG_KLIBC_ZIP. I also added the option to\nthe defconfig.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "71a849a7e2d5e73321e986fa91d1f34b387e71ba",
      "tree": "51176cc5fc1f371d2514baf3c7968ce3aa8c6691",
      "parents": [
        "cb90a942dcb20ca34ea6d7b2f3df80d28378d871"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Dec 03 18:14:58 2013 +1100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Dec 03 10:53:38 2013 -0800"
      },
      "message": "[klibc] nfsmount: memset uses sizeof pointer as length\n\ngcc picked up a couple of suspicious memset lengths which turned\nout to be real bugs.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "cb90a942dcb20ca34ea6d7b2f3df80d28378d871",
      "tree": "58b497f3e0bbcb44c750b75bcfb3290ab612da3e",
      "parents": [
        "87ad992e1ae0036436646610a23feb4c2895593f"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Dec 03 18:19:06 2013 +1100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Dec 03 10:53:31 2013 -0800"
      },
      "message": "[klibc] ppc64: build with -mcmodel\u003dsmall\n\nIf available, use -mcmodel\u003dsmall. klibc is small enough that we\nshould never hit the limits of the small memory model.\n\nThis produces better code, for example:\n\n000000000f003890 \u003c.strcasecmp\u003e:\nf003890:       3c a2 ff fe     addis   r5,r2,-2\n...\nf003898:       38 c5 23 58     addi    r6,r5,9048\n...\nf0038ac:       7d 46 50 ae     lbzx    r10,r6,r10\n\nvs:\n\n000000000f0037c4 \u003c.strcasecmp\u003e:\nf0037c4:       e8 c2 81 48     ld      r6,-32440(r2)\nf0037dc:       7d 46 50 ae     lbzx    r10,r6,r10\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "87ad992e1ae0036436646610a23feb4c2895593f",
      "tree": "b06a552922d9173b50046d7699b5ffbc441eb0ee",
      "parents": [
        "3892f676f83d4da24f6417846645272d367a97a7"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Tue Dec 03 18:18:03 2013 +1100"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Dec 03 10:53:19 2013 -0800"
      },
      "message": "[klibc] ppc64: Add ppc64le support\n\nAdd PowerPC 64bit little endian support.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "3892f676f83d4da24f6417846645272d367a97a7",
      "tree": "93e2a9fa2ece3082d13a7e6cbeb88e54c68f2158",
      "parents": [
        "3de648dd97d9d6086598aa80206a3007a13ed61b"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:48:04 2013 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:48:04 2013 -0800"
      },
      "message": "[klibc] poll, select: fix style problems\n\nFix whitespace style problems in poll.c and select.c.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "3de648dd97d9d6086598aa80206a3007a13ed61b",
      "tree": "eba991485200cf66781e9d7f218fac597e2122da",
      "parents": [
        "45647d9f97cac184d399eae9bcbe24aef2223f70"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:41:55 2013 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:46:47 2013 -0800"
      },
      "message": "[klibc] arm64: Fix struct stat\n\nUse actual struct timespec fields in struct stat, and use the proper\n__stdev64 macro for the dev_t fields.\n\nAlso fix bizarre formatting.\n\nCc: Neil Williams \u003ccodehelp@debian.org\u003e\nCc: Anil Singhar \u003canil.singhar@linaro.org\u003e\nCc: Steve Capper \u003csteve.capper@linaro.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "45647d9f97cac184d399eae9bcbe24aef2223f70",
      "tree": "16724706e18f1ce3af7764031cc4425c05519ceb",
      "parents": [
        "e4a2c914446ba907c5aaccf6ae1d089a09d21df7"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:33:40 2013 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:33:40 2013 -0800"
      },
      "message": "[klibc] arm64: remove useless \u003cklibc/asmmacros.h\u003e file\n\n\u003cklibc/asmmacros.h\u003e is a file specific to arm32; the file is empty on\narm64 so we can just drop it.\n\nCc: Neil Williams \u003ccodehelp@debian.org\u003e\nCc: Anil Singhar \u003canil.singhar@linaro.org\u003e\nCc: Steve Capper \u003csteve.capper@linaro.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "e4a2c914446ba907c5aaccf6ae1d089a09d21df7",
      "tree": "93fd680c0a74bd74eda1e33a862000aee2fec667",
      "parents": [
        "8858e8319655ef38398e0833b71d65b0e620a061"
      ],
      "author": {
        "name": "Steve Capper",
        "email": "steve.capper@linaro.org",
        "time": "Mon Nov 11 17:04:12 2013 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:31:31 2013 -0800"
      },
      "message": "[klibc] arm64: Add arm64 support\n\nBased on work by Neil Williams (codehelp@debian.org) and Anil Singhar\n(anil.singhar@linaro.org), this patch adds arm64 support.\n\nOriginally-by: Neil Williams \u003ccodehelp@debian.org\u003e\nOriginally-by: Anil Singhar \u003canil.singhar@linaro.org\u003e\nSigned-off-by: Steve Capper \u003csteve.capper@linaro.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "8858e8319655ef38398e0833b71d65b0e620a061",
      "tree": "d8431b21d87ede6779870bcba6005dcf2374ea76",
      "parents": [
        "0c7359e8787c60b7143b3e366d31b2c2409cba3a"
      ],
      "author": {
        "name": "Steve Capper",
        "email": "steve.capper@linaro.org",
        "time": "Mon Nov 11 17:04:11 2013 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:31:13 2013 -0800"
      },
      "message": "[klibc] syscalls: Add syscalls needed by arm64\n\narm64 uses generic syscalls, and does not include the \"noat\",\n\"noflags\", and \"deprecated\" syscalls.\n\nThis patch adds substitution functions for system calls not available\non arm64.\n\nOriginally-by: Neil Williams \u003ccodehelp@debian.org\u003e\nOriginally-by: Anil Singhar \u003canil.singhar@linaro.org\u003e\nSigned-off-by: Steve Capper \u003csteve.capper@linaro.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "0c7359e8787c60b7143b3e366d31b2c2409cba3a",
      "tree": "5c37eb02b8bf5d1d8699cbe3f70075a3d432983c",
      "parents": [
        "25a66fa8d8623fae267f6807b56438cd7c40e034"
      ],
      "author": {
        "name": "Steve Capper",
        "email": "steve.capper@linaro.org",
        "time": "Mon Nov 11 17:04:10 2013 +0000"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Mon Nov 11 19:30:11 2013 -0800"
      },
      "message": "[klibc] syscalls: Fixup some of the -at syscall declarations\n\nmknodat and mkdirat contain a spurious repeated parameter, linkat\nis missing the final int flags parameter, symlinkat has the first\ntwo parameters transposed, and fchmodat is missing the flags\nparameter and is declared in the wrong header.\n\nAlso declarations are missing for utimensat and fchownat.\n\nThis patch fixes up these syscall declarations.\n\nOriginally-by: Neil Williams \u003ccodehelp@debian.org\u003e\nOriginally-by: Anil Singhar \u003canil.singhar@linaro.org\u003e\nSigned-off-by: Steve Capper \u003csteve.capper@linaro.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "25a66fa8d8623fae267f6807b56438cd7c40e034",
      "tree": "b13672ec27b6fab7639ab1a1a7591c9e9d733580",
      "parents": [
        "686f1931b7dc102c32b59db638a3082d5c2251e5"
      ],
      "author": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Wed Aug 21 17:31:25 2013 +0200"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Wed Aug 21 17:32:16 2013 +0200"
      },
      "message": "README.klibc: update build information\n\nIt seems this file was still conveying the old way to build klibc\nand hence confusing the users, simplify and reword build instructions.\n\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "686f1931b7dc102c32b59db638a3082d5c2251e5",
      "tree": "0fe720ca45d26d9413168ba19f00ba255c6285df",
      "parents": [
        "ddd013b7f83367317cf16d529936bc6abdd4ed80"
      ],
      "author": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jun 10 18:15:43 2013 -0400"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Wed Aug 21 11:50:43 2013 +0200"
      },
      "message": "tests: Fix sscanf integer tests\n\nDrop the double tests that klibc doesn\u0027t care about\nand that where hence failing in the first place.\n\nCheck the returned integer values too.\n\nFixes Bug: https://bugs.gentoo.org/show_bug.cgi?id\u003d464908\n\nReported-by: Mike Pagano \u003cmpagano@gentoo.org\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "ddd013b7f83367317cf16d529936bc6abdd4ed80",
      "tree": "232c57e8d726a7224848b07b0ca1c3c83fdd0cac",
      "parents": [
        "f05ff116bb9edbbb81d82fa47b78e630ce878470"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Oct 05 12:08:23 2012 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Oct 05 12:08:23 2012 -0700"
      },
      "message": "[klibc] 2.0.2 released, next version is 2.0.3\n"
    },
    {
      "commit": "f05ff116bb9edbbb81d82fa47b78e630ce878470",
      "tree": "4dc3cecc686c37922c3a90f80eca17d5d7a93bcf",
      "parents": [
        "ac8f53aa182d6f423f1833e4bcc8d7d06adda03b"
      ],
      "author": {
        "name": "Bill Pringlemeir",
        "email": "bpringle@sympatico.ca",
        "time": "Tue Oct 02 13:29:52 2012 -0400"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Wed Oct 03 18:41:43 2012 +0200"
      },
      "message": "[klibc] [PATCH] fix ARM longjmp with zero \u0027val\u0027.\n\nWe need to set the condition codes on the ARM.  The previous version was\nusing a left over condition code from the caller.  Also, use conditional\nexecution to eliminate branch and reduce size.\n\nSigned-off-by: Bill Pringlemeir \u003cbpringle@sympatico.ca\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "ac8f53aa182d6f423f1833e4bcc8d7d06adda03b",
      "tree": "65fbf58b18658a18c918bd56e91a80ba766b7b7d",
      "parents": [
        "a756665f42b1f160714039f2562868bb5ba340e0"
      ],
      "author": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 15:16:15 2012 +0200"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 15:16:15 2012 +0200"
      },
      "message": "[klibc] dash: resync with latest git\n\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "a756665f42b1f160714039f2562868bb5ba340e0",
      "tree": "2020852a31caba8d7f1b808ac8682802b5631b0b",
      "parents": [
        "127b17bb38dbfc95386a52b2159f059221d33497"
      ],
      "author": {
        "name": "Christoph Mathys",
        "email": "eraserix@gmail.com",
        "time": "Tue Jul 03 17:36:01 2012 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 15:14:32 2012 +0200"
      },
      "message": "[klibc] [BUILTIN] Add support for ulimit -r\n\nI recently found myself in need to have dash support \u0027ulimit -r\u0027 to\nset maximum realtime priority. Attached is a patch that adds the\nparameter to the builtin ulimit command and updates the manpage.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "127b17bb38dbfc95386a52b2159f059221d33497",
      "tree": "45ac87bd9ab06be96ea841aaa90a141ed84bc890",
      "parents": [
        "0dbcedacde2847e254373fce6f80c63e003a69ca"
      ],
      "author": {
        "name": "Jim Meyering",
        "email": "jim@meyering.net",
        "time": "Tue Jul 03 17:32:33 2012 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 15:14:16 2012 +0200"
      },
      "message": "[klibc] Avoid overflow for very long variable name\n\nOtherwise, this:\n  $ perl -le \u0027print \"v\"x(2**31+1) .\"\u003d1\"\u0027 | dash\nprovokes integer overflow:\n\n  (gdb) bt\n  #0  doformat (dest\u003d0x61d580, f\u003d0x416a08 \"%s: %d: %s: \", ap\u003d0x7fffffffd308)\n      at output.c:310\n  #1  0x00000000004128c1 in outfmt (file\u003d0x61d580, fmt\u003d0x416a08 \"%s: %d: %s: \")\n      at output.c:257\n  #2  0x000000000040382e in exvwarning2 (msg\u003d0x417339 \"Out of space\",\n      ap\u003d0x7fffffffd468) at error.c:125\n  #3  0x000000000040387e in exverror (cond\u003d1, msg\u003d0x417339 \"Out of space\",\n      ap\u003d0x7fffffffd468) at error.c:156\n  #4  0x0000000000403938 in sh_error (msg\u003d0x417339 \"Out of space\") at error.c:172\n  #5  0x000000000040c970 in ckmalloc (nbytes\u003d18446744071562067984)\n      at memalloc.c:57\n  #6  0x000000000040ca78 in stalloc (nbytes\u003d18446744071562067972)\n      at memalloc.c:132\n  #7  0x000000000040ece9 in grabstackblock (len\u003d18446744071562067972)\n      at memalloc.h:67\n  #8  0x00000000004106b5 in readtoken1 (firstc\u003d118, syntax\u003d0x419522 \"\",\n      eofmark\u003d0x0, striptabs\u003d0) at parser.c:1040\n  #9  0x00000000004101a4 in xxreadtoken () at parser.c:826\n  #10 0x000000000040fe1d in readtoken () at parser.c:697\n  #11 0x000000000040edcc in parsecmd (interact\u003d0) at parser.c:145\n  #12 0x000000000040c679 in cmdloop (top\u003d1) at main.c:224\n  #13 0x000000000040c603 in main (argc\u003d2, argv\u003d0x7fffffffd9f8) at main.c:178\n\n  #8  0x00000000004106b5 in readtoken1 (firstc\u003d118, syntax\u003d0x419522 \"\",\n      eofmark\u003d0x0, striptabs\u003d0) at parser.c:1040\n  1040    grabstackblock(len);\n  (gdb) p len\n  $30 \u003d -2147483644\n\nSigned-off-by: Jim Meyering \u003cmeyering@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "0dbcedacde2847e254373fce6f80c63e003a69ca",
      "tree": "eae88e10913dbd7cccc330ea48ef5202c0fc7180",
      "parents": [
        "8152eb01350c92ad0481602d6e74aeaec0251e23"
      ],
      "author": {
        "name": "Colin Watson",
        "email": "cjwatson@ubuntu.com",
        "time": "Tue Sep 25 12:31:16 2012 +0100"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 15:04:49 2012 +0200"
      },
      "message": "[klibc] include: [sys/time.h] fix for Linux 3.5.1\n\nFrom 3.5.1, \u003clinux/time.h\u003e does not even define FD_ZERO etc.\n\nWith Linux 3.5.1, \u0027make test\u0027 fails with:\n\n  usr/klibc/tests/select.c: In function ‘main’:\n  usr/klibc/tests/select.c:31:14: error: ‘FD_SETSIZE’ undeclared (first use in this function)\n  usr/klibc/tests/select.c:31:14: note: each undeclared identifier is reported only once for each function it appears in\n\nThis is due to Linux commit 8ded2bbc1845e19c771eb55209aab166ef011243.\nHandle it by making sure that FD_SETSIZE is defined.\n\nSigned-off-by: Colin Watson \u003ccjwatson@ubuntu.com\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "8152eb01350c92ad0481602d6e74aeaec0251e23",
      "tree": "44ed6b895a28e2f2f1b1e8c35f3b7c4a61c8d42d",
      "parents": [
        "62d84fb8793fdf21c5267688de231cc1a111e070"
      ],
      "author": {
        "name": "Thorsten Glaser",
        "email": "tg@mirbsd.org",
        "time": "Sat Sep 29 21:05:09 2012 +0000"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 14:56:20 2012 +0200"
      },
      "message": "[klibc] arm: remove unused variable \n\nMCONFIG containing a no longer recognised gcc flag.\n\nSigned-off-by: Thorsten Glaser \u003ctg@mirbsd.org\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "62d84fb8793fdf21c5267688de231cc1a111e070",
      "tree": "d06c95ca860c66a8696bd90d4778d1442995d47b",
      "parents": [
        "9bdffde924573bf1c2f795a4b57a302d9485d248"
      ],
      "author": {
        "name": "Thorsten Glaser",
        "email": "tg@mirbsd.org",
        "time": "Sat Sep 29 20:18:48 2012 +0000"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 14:55:24 2012 +0200"
      },
      "message": "[klibc] arm: unbreak armhf shared binaries (those with thumb)\n\nThe linker command was wrong.\n\nSigned-off-by: Thorsten Glaser \u003ctg@mirbsd.org\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "9bdffde924573bf1c2f795a4b57a302d9485d248",
      "tree": "c17518f1c08fd33142f51d8a48c9cb72629416ca",
      "parents": [
        "5c04671880a88a706fdbf6218c74737a40ff1f87"
      ],
      "author": {
        "name": "Thorsten Glaser",
        "email": "tg@mirbsd.org",
        "time": "Sat Sep 29 19:20:37 2012 +0000"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Oct 01 14:54:10 2012 +0200"
      },
      "message": "[klibc] arm: fix trashing of callee-saved registers in thumb setjmp()\n\nfixes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug\u003d634890\n(although dynamically-linked binaries seem to have another bug)\n\nSigned-off-by: Thorsten Glaser \u003ctg@mirbsd.org\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "5c04671880a88a706fdbf6218c74737a40ff1f87",
      "tree": "dd0e924a65ea83031ddeb25f6b84f8547ce1ea5f",
      "parents": [
        "1ece5af4d7dccc7d8af3c358303fafdb52dbfe6d"
      ],
      "author": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 11:43:17 2012 +0200"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Tue Jul 03 12:46:57 2012 +0200"
      },
      "message": "[klibc] kbuild: Fix permissions of headers\n\nSmall build fix carried in Debian, triggered by paranoid umask.\n\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "1ece5af4d7dccc7d8af3c358303fafdb52dbfe6d",
      "tree": "631b31969e10dad334a404af143de2800a37d851",
      "parents": [
        "61d300672e0c1877482deed0f745b52ef306c7d3"
      ],
      "author": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:51:46 2012 +0200"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 11:03:33 2012 +0200"
      },
      "message": "[klibc] dash: sync with latest git\n\nGains us compile and runtime fixes including newer dash \u003e\u003d 0.5.7.\n\nFor now disable faccessat() as we yet miss AT_EACCESS definition.\n\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "61d300672e0c1877482deed0f745b52ef306c7d3",
      "tree": "ad4680c123ec1e485006418e8d4cc8eacbebbc32",
      "parents": [
        "4a84d61a24296b8253b3f8f7c86ee28df53e2f3b"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Feb 25 15:35:18 2012 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:47:34 2012 +0200"
      },
      "message": "[klibc] [VAR] Sanitise environment variable names on entry\n\nOn Tue, Feb 14, 2012 at 10:48:48AM +0000, harald@redhat.com wrote:\n\u003e\n\u003e \"export -p\" prints all environment variables, without checking if the\n\u003e environment variable is a valid dash variable name.\n\u003e\n\u003e IMHO, the only valid usecase for \"export -p\" is to eval the output.\n\u003e\n\u003e $ eval $(export -p); echo OK\n\u003e OK\n\u003e\n\u003e Without this patch the following test does error out with:\n\u003e\n\u003e test.py:\n\u003e import os\n\u003e os.environ[\"test-test\"]\u003d\"test\"\n\u003e os.environ[\"test_test\"]\u003d\"test\"\n\u003e os.execv(\"./dash\", [ \u0027./dash\u0027, \u0027-c\u0027, \u0027eval $(export -p); echo OK\u0027 ])\n\u003e\n\u003e $ python test.py\n\u003e ./dash: 1: export: test-test: bad variable name\n\u003e\n\u003e Of course the results can be more evil, if the environment variable\n\u003e name is crafted, that it injects valid shell code.\n\nThis patch fixes the issue by sanitising all environment variable names\nupon entry into the shell.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "4a84d61a24296b8253b3f8f7c86ee28df53e2f3b",
      "tree": "4d220f395f7d2c5f2ea0097476b5943969ed918b",
      "parents": [
        "4a12ba8937fbc47ee82ab76bd4fceddf6338dced"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 17 09:31:17 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:46:37 2012 +0200"
      },
      "message": "[klibc] [SHELL] Allow building without LINEO support\n\nSimply specify --disable-lineno to configure.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "4a12ba8937fbc47ee82ab76bd4fceddf6338dced",
      "tree": "5b4146d84f60f92a293f09ebef50bdad0766001d",
      "parents": [
        "cebb8fc25475486605d12e25a3040ccacceede74"
      ],
      "author": {
        "name": "Harald van Dijk",
        "email": "harald@gigawatt.nl",
        "time": "Wed Aug 17 09:28:24 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:46:06 2012 +0200"
      },
      "message": "[klibc] [ARITH] Avoid imaxdiv when only one of the results is wanted\n\ndash rather pointlessly calls imaxdiv, only to discard one of its\nresults. The call was already made conditional a while back because some\nsystems don\u0027t have imaxdiv, but the generated code for the version with\nimaxdiv and the one with / and % is identical (with GCC 4.6.1 or ICC\n12.0.2, with -O0, -O2 or -Os), so it could just as well go entirely to\nclean up the code a little bit.\n\nSigned-off-by: Harald van Dijk \u003charald@gigawatt.nl\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "cebb8fc25475486605d12e25a3040ccacceede74",
      "tree": "30e7e818a6082491b97a99ebb86132a2b3dd930d",
      "parents": [
        "21b878467fc1d46f8155e0f5ada315d741869262"
      ],
      "author": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Fri Jul 15 11:18:13 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:45:52 2012 +0200"
      },
      "message": "[klibc] [SHELL] Fix klibc DEBUG compilation\n\ndash didn\u0027t compile in DEBUG mode against klibc for all long time.\nNow it only fails at link stage for not having setlinebuf(3) and\nfreopen(3).\n\nFixes:\n\nusr/dash/show.o: In function `opentrace\u0027:\nshow.c:(.text+0x36): undefined reference to `freopen\u0027\nshow.c:(.text+0x86): undefined reference to `setlinebuf\u0027\n\nSkip setlinebuf and use fclose/fopen inside __KLIBC__\nCompile tested with debug in klibc and against glibc in dash repo.\n\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "21b878467fc1d46f8155e0f5ada315d741869262",
      "tree": "ad5b6b703f7c09bd21c92c05311fa23d334698b0",
      "parents": [
        "973826c37ec8492514a8dae5b507d0873ee5afb2"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Jul 09 22:05:22 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:45:36 2012 +0200"
      },
      "message": "[klibc] [BUILTIN] Merge SKIPFUNC/SKIPFILE and only clear SKIPFUNC when leaving dotcmd\n\nCurrently upon leaving a dotcmd the evalskip state is reset so\nif a continue/break statement is used within a dot script it would\nhave no effect outside of the dot script.\n\nThis is inconsistent with other shells.\n\nThis patch is based on one by Jilles Tjoelker and only clears\nSKIPFUNC when leaving a dot script.  As a result continue/break\nwill remain in effect.\n\nIt also merges SKIPFUNC/SKIPFILE as they have no practical difference.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "973826c37ec8492514a8dae5b507d0873ee5afb2",
      "tree": "11c00eefd8ddda5a9750d1e730ef9a8b5ed01f3f",
      "parents": [
        "d182c7440dd5cd9290f2fb8dd7bc0f9dc2c4cb83"
      ],
      "author": {
        "name": "Jim Meyering",
        "email": "meyering@redhat.com",
        "time": "Fri Jul 08 16:41:24 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:44:58 2012 +0200"
      },
      "message": "[klibc] [EVAL] Avoid using undefined handler\n\n* src/eval.c (evalbltin, evalfun): Set savehandler before calling\nsetjmp with the possible \"goto *done\", where savehandler is used.\nOtherwise, clang warns that \"Assigned value is garbage or undefined\"\nat the point where \"savehandler\" is used on the RHS.\n\nSigned-off-by: Jim Meyering \u003cmeyering@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "d182c7440dd5cd9290f2fb8dd7bc0f9dc2c4cb83",
      "tree": "a66f9e0a2caf3a8abefd4b8d6267fc58af6ce969",
      "parents": [
        "cf9ea962f1fb310a92efd184f14df2c04b30f75a"
      ],
      "author": {
        "name": "Jim Meyering",
        "email": "meyering@redhat.com",
        "time": "Fri Jul 08 16:16:11 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:44:45 2012 +0200"
      },
      "message": "[klibc] [MEMALLOC] Avoid clang warning about dead store to \"size\"\n\n* src/memalloc.c (makestrspace): Remove dead store.\n\nSigned-off-by: Jim Meyering \u003cmeyering@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "cf9ea962f1fb310a92efd184f14df2c04b30f75a",
      "tree": "7ca45300ec0f248ca6f94150be91ea305b519587",
      "parents": [
        "6f235a75b71121b368976b2d931472cc918e9499"
      ],
      "author": {
        "name": "Jim Meyering",
        "email": "meyering@redhat.com",
        "time": "Fri Jul 08 16:12:20 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:44:23 2012 +0200"
      },
      "message": "[klibc] [MEMALLOC] Avoid gcc warning: variable \u0027oldstackp\u0027 set but not used\n\n* src/memalloc.c (growstackblock): Remove declaration and set of\nset-but-not-used variable.  Also remove a stray space-before-TAB.\n\nSigned-off-by: Jim Meyering \u003cmeyering@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    },
    {
      "commit": "6f235a75b71121b368976b2d931472cc918e9499",
      "tree": "ec03cbb9fe5fc410a0f43c9d75ab4b884f547f00",
      "parents": [
        "8ce54e2a6adb82cbbb988e1f335fa5ebf370f6c5"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jul 07 15:22:03 2011 +0800"
      },
      "committer": {
        "name": "maximilian attems",
        "email": "max@stro.at",
        "time": "Mon Jul 02 10:44:00 2012 +0200"
      },
      "message": "[klibc] [BUILTIN] Eliminate unnecessary promotion in echocmd\n\nThe patch to make outc into an inline function created an unnecessary\npromotion in echocmd due to its use of char vs. the int used by outc.\nThis patch changes echocmd to use int instead.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\n"
    }
  ],
  "next": "8ce54e2a6adb82cbbb988e1f335fa5ebf370f6c5"
}
