)]}'
{
  "log": [
    {
      "commit": "0a14842f5a3c0e88a1e59fac5c3025db39721f74",
      "tree": "4d0832c4c9ced2503e2d899eb56952f87511d4ab",
      "parents": [
        "b678027cb77b079bc8e5b94172995d173bdb494b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Apr 20 09:27:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 27 23:05:08 2011 -0700"
      },
      "message": "net: filter: Just In Time compiler for x86-64\n\nIn order to speedup packet filtering, here is an implementation of a\nJIT compiler for x86_64\n\nIt is disabled by default, and must be enabled by the admin.\n\necho 1 \u003e/proc/sys/net/core/bpf_jit_enable\n\nIt uses module_alloc() and module_free() to get memory in the 2GB text\nkernel range since we call helpers functions from the generated code.\n\nEAX : BPF A accumulator\nEBX : BPF X accumulator\nRDI : pointer to skb   (first argument given to JIT function)\nRBP : frame pointer (even if CONFIG_FRAME_POINTER\u003dn)\nr9d : skb-\u003elen - skb-\u003edata_len (headlen)\nr8  : skb-\u003edata\n\nTo get a trace of generated code, use :\n\necho 2 \u003e/proc/sys/net/core/bpf_jit_enable\n\nExample of generated code :\n\n# tcpdump -p -n -s 0 -i eth1 host 192.168.20.0/24\n\nflen\u003d18 proglen\u003d147 pass\u003d3 image\u003dffffffffa00b5000\nJIT code: ffffffffa00b5000: 55 48 89 e5 48 83 ec 60 48 89 5d f8 44 8b 4f 60\nJIT code: ffffffffa00b5010: 44 2b 4f 64 4c 8b 87 b8 00 00 00 be 0c 00 00 00\nJIT code: ffffffffa00b5020: e8 24 7b f7 e0 3d 00 08 00 00 75 28 be 1a 00 00\nJIT code: ffffffffa00b5030: 00 e8 fe 7a f7 e0 24 00 3d 00 14 a8 c0 74 49 be\nJIT code: ffffffffa00b5040: 1e 00 00 00 e8 eb 7a f7 e0 24 00 3d 00 14 a8 c0\nJIT code: ffffffffa00b5050: 74 36 eb 3b 3d 06 08 00 00 74 07 3d 35 80 00 00\nJIT code: ffffffffa00b5060: 75 2d be 1c 00 00 00 e8 c8 7a f7 e0 24 00 3d 00\nJIT code: ffffffffa00b5070: 14 a8 c0 74 13 be 26 00 00 00 e8 b5 7a f7 e0 24\nJIT code: ffffffffa00b5080: 00 3d 00 14 a8 c0 75 07 b8 ff ff 00 00 eb 02 31\nJIT code: ffffffffa00b5090: c0 c9 c3\n\nBPF program is 144 bytes long, so native program is almost same size ;)\n\n(000) ldh      [12]\n(001) jeq      #0x800           jt 2    jf 8\n(002) ld       [26]\n(003) and      #0xffffff00\n(004) jeq      #0xc0a81400      jt 16   jf 5\n(005) ld       [30]\n(006) and      #0xffffff00\n(007) jeq      #0xc0a81400      jt 16   jf 17\n(008) jeq      #0x806           jt 10   jf 9\n(009) jeq      #0x8035          jt 10   jf 17\n(010) ld       [28]\n(011) and      #0xffffff00\n(012) jeq      #0xc0a81400      jt 16   jf 13\n(013) ld       [38]\n(014) and      #0xffffff00\n(015) jeq      #0xc0a81400      jt 16   jf 17\n(016) ret      #65535\n(017) ret      #0\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nCc: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b098e2d7c693796cc4dffb07caa249fc0f70771",
      "tree": "586c4f5dc57988ade175ffc7e4b6d0261b12e166",
      "parents": [
        "a1aa3483041bd3691c7f029272ccef4ce70bd957"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat May 15 23:57:10 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 15 23:57:10 2010 -0700"
      },
      "message": "net: Consistent skb timestamping\n\nWith RPS inclusion, skb timestamping is not consistent in RX path.\n\nIf netif_receive_skb() is used, its deferred after RPS dispatch.\n\nIf netif_rx() is used, its done before RPS dispatch.\n\nThis can give strange tcpdump timestamps results.\n\nI think timestamping should be done as soon as possible in the receive\npath, to get meaningful values (ie timestamps taken at the time packet\nwas delivered by NIC driver to our stack), even if NAPI already can\ndefer timestamping a bit (RPS can help to reduce the gap)\n\nTom Herbert prefer to sample timestamps after RPS dispatch. In case\nsampling is expensive (HPET/acpi_pm on x86), this makes sense.\n\nLet admins switch from one mode to another, using a new\nsysctl, /proc/sys/net/core/netdev_tstamp_prequeue\n\nIts default value (1), means timestamps are taken as soon as possible,\nbefore backlog queueing, giving accurate timestamps.\n\nSetting a 0 value permits to sample timestamps when processing backlog,\nafter RPS dispatch, to lower the load of the pre-RPS cpu.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ca8b9950298c84ca528a5943409a727c04ec88f8",
      "tree": "e2539aeb7a0e358c5c1502c84ebae0be57116e21",
      "parents": [
        "f403bb802f634d5727e4d48a987ce02ef8dd8ce0"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Apr 13 14:39:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 15:04:28 2009 -0700"
      },
      "message": "Documentation/sysctl/net.txt: fix a typo\n\ns/spicified/specified\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45dad7bd9d9b65a30d6e790b111f6f2d8f746d22",
      "tree": "ab00afe099eb226d5f365124ee591b2518ebe0f0",
      "parents": [
        "760df93ecdd59fc1c213a491b5adee79f53606da"
      ],
      "author": {
        "name": "Li Xiaodong",
        "email": "lixd@cn.fujitsu.com",
        "time": "Thu Apr 02 16:57:21 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:04:53 2009 -0700"
      },
      "message": "documentation: fix unix_dgram_qlen description\n\nPrevious description about system parameter in /proc/sys/net/unix/ is\nwrong (or missed).  Simply add a new description about unix_dgram_qlen\naccording to latest kernel.\n\nSigned-off-by: Li Xiaodong \u003clixd@cn.fujitsu.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "760df93ecdd59fc1c213a491b5adee79f53606da",
      "tree": "305a4e0fae43549eb24a3ebcf9bcc15a16ef2138",
      "parents": [
        "70eed8d06601ca3810a0e56035eae6496d57856b"
      ],
      "author": {
        "name": "Shen Feng",
        "email": "shen@cn.fujitsu.com",
        "time": "Thu Apr 02 16:57:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:04:53 2009 -0700"
      },
      "message": "documentation: update Documentation/filesystem/proc.txt and Documentation/sysctls\n\nNow /proc/sys is described in many places and much information is\nredundant.  This patch updates the proc.txt and move the /proc/sys\ndesciption out to the files in Documentation/sysctls.\n\nDetails are:\n\nmerge\n-  2.1  /proc/sys/fs - File system data\n-  2.11 /proc/sys/fs/mqueue - POSIX message queues filesystem\n-  2.17 /proc/sys/fs/epoll - Configuration options for the epoll interface\nwith Documentation/sysctls/fs.txt.\n\nremove\n-  2.2  /proc/sys/fs/binfmt_misc - Miscellaneous binary formats\nsince it\u0027s not better then the Documentation/binfmt_misc.txt.\n\nmerge\n-  2.3  /proc/sys/kernel - general kernel parameters\nwith Documentation/sysctls/kernel.txt\n\nremove\n-  2.5  /proc/sys/dev - Device specific parameters\nsince it\u0027s obsolete the sysfs is used now.\n\nremove\n-  2.6  /proc/sys/sunrpc - Remote procedure calls\nsince it\u0027s not better then the Documentation/sysctls/sunrpc.txt\n\nmove\n-  2.7  /proc/sys/net - Networking stuff\n-  2.9  Appletalk\n-  2.10 IPX\nto newly created Documentation/sysctls/net.txt.\n\nremove\n-  2.8  /proc/sys/net/ipv4 - IPV4 settings\nsince it\u0027s not better then the Documentation/networking/ip-sysctl.txt.\n\nadd\n- Chapter 3 Per-Process Parameters\nto descibe /proc/\u003cpid\u003e/xxx parameters.\n\nSigned-off-by: Shen Feng \u003cshen@cn.fujitsu.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ]
}
