)]}'
{
  "log": [
    {
      "commit": "76b7e0058d09f8104387980a690001681c04cc0a",
      "tree": "98ed096b9f5f7e25651a7d10750706026c543250",
      "parents": [
        "1b8ab8159ef8f818f870a1d2e3b6953d80eefd3f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Dec 17 14:24:20 2009 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 17 11:03:24 2009 -0500"
      },
      "message": "fix up O_SYNC comments\n\nProper Posix O_SYNC handling only made it into 2.6.33, not 2.6.32.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6b2f3d1f769be5779b479c37800229d9a4809fc3",
      "tree": "046ef6736ec6c25ab1c68741ba715d13645af336",
      "parents": [
        "59bc055211b8d266ab6089158058bf8268e02006"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Oct 27 11:05:28 2009 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Dec 10 15:02:50 2009 +0100"
      },
      "message": "vfs: Implement proper O_SYNC semantics\n\nWhile Linux provided an O_SYNC flag basically since day 1, it took until\nLinux 2.4.0-test12pre2 to actually get it implemented for filesystems,\nsince that day we had generic_osync_around with only minor changes and the\ngreat \"For now, when the user asks for O_SYNC, we\u0027ll actually give\nO_DSYNC\" comment.  This patch intends to actually give us real O_SYNC\nsemantics in addition to the O_DSYNC semantics.  After Jan\u0027s O_SYNC\npatches which are required before this patch it\u0027s actually surprisingly\nsimple, we just need to figure out when to set the datasync flag to\nvfs_fsync_range and when not.\n\nThis patch renames the existing O_SYNC flag to O_DSYNC while keeping it\u0027s\nnumerical value to keep binary compatibility, and adds a new real O_SYNC\nflag.  To guarantee backwards compatiblity it is defined as expanding to\nboth the O_DSYNC and the new additional binary flag (__O_SYNC) to make\nsure we are backwards-compatible when compiled against the new headers.\n\nThis also means that all places that don\u0027t care about the differences can\njust check O_DSYNC and get the right behaviour for O_SYNC, too - only\nplaces that actuall care need to check __O_SYNC in addition.  Drivers and\nnetwork filesystems have been updated in a fail safe way to always do the\nfull sync magic if O_DSYNC is set.  The few places setting O_SYNC for\nlower layers are kept that way for now to stay failsafe.\n\nWe enforce that O_DSYNC is set when __O_SYNC is set early in the open path\nto make sure we always get these sane options.\n\nNote that parisc really screwed up their headers as they already define a\nO_DSYNC that has always been a no-op.  We try to repair it by using it for\nthe new O_DSYNC and redefinining O_SYNC to send both the traditional\nO_SYNC numerical value _and_ the O_DSYNC one.\n\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Andreas Dilger \u003cadilger@sun.com\u003e\nAcked-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nAcked-by: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "978b4053aefd422713f289f2a315ce2acba62018",
      "tree": "3cd4ce678526885c81264568220549f1d659875e",
      "parents": [
        "9ebd4eba761b624a6a6c9189335adeddcb1fa0e0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Nov 17 14:06:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 17 17:40:33 2009 -0800"
      },
      "message": "fcntl: rename F_OWNER_GID to F_OWNER_PGRP\n\nThis is for consistency with various ioctl() operations that include the\nsuffix \"PGRP\" in their names, and also for consistency with PRIO_PGRP,\nused with setpriority() and getpriority().  Also, using PGRP instead of\nGID avoids confusion with the common abbreviation of \"group ID\".\n\nI\u0027m fine with anything that makes it more consistent, and if PGRP is what\nis the predominant abbreviation then I see no need to further confuse\nmatters by adding a third one.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "71ccb83cfc487354d2647e315c8196e5872198ab",
      "tree": "412436ad5744718820e4907d9fb6dbc9497309bb",
      "parents": [
        "e00e431612c3a6e437a01f2129fd3843da0c982a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 11 14:26:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 12 07:25:56 2009 -0800"
      },
      "message": "alpha: fix F_SETOWN_EX and F_GETLK64 conflict\n\nFix a bug in\n\n    commit ba0a6c9f6fceed11c6a99e8326f0477fe383e6b5\n    Author:     Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n    AuthorDate: Wed Sep 23 15:57:03 2009 -0700\n    Commit:     Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n    CommitDate: Thu Sep 24 07:21:01 2009 -0700\n\n        fcntl: add F_[SG]ETOWN_EX\n\nIn asm-generic/fcntl.h, F_SETOWN_EX and F_GETLK64 both have value 12, and\nF_GETOWN_EX and F_SETLK64 both have value 13.\n\nReported-by: \"Joseph S. Myers\" \u003cjoseph@codesourcery.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Andreas Schwab \u003cschwab@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba0a6c9f6fceed11c6a99e8326f0477fe383e6b5",
      "tree": "5c9967735f19b7b3332de90cae2cdd6c4457d30c",
      "parents": [
        "06f1631a1671bce2d59d58cb1debdf23e1803ebf"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Sep 23 15:57:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 07:21:01 2009 -0700"
      },
      "message": "fcntl: add F_[SG]ETOWN_EX\n\nIn order to direct the SIGIO signal to a particular thread of a\nmulti-threaded application we cannot, like suggested by the manpage, put a\nTID into the regular fcntl(F_SETOWN) call.  It will still be send to the\nwhole process of which that thread is part.\n\nSince people do want to properly direct SIGIO we introduce F_SETOWN_EX.\n\nThe need to direct SIGIO comes from self-monitoring profiling such as with\nperf-counters.  Perf-counters uses SIGIO to notify that new sample data is\navailable.  If the signal is delivered to the same task that generated the\nnew sample it can augment that data by inspecting the task\u0027s user-space\nstate right after it returns from the kernel.  This is esp.  convenient\nfor interpreted or virtual machine driven environments.\n\nBoth F_SETOWN_EX and F_GETOWN_EX take a pointer to a struct f_owner_ex\nas argument:\n\nstruct f_owner_ex {\n\tint   type;\n\tpid_t pid;\n};\n\nWhere type is one of F_OWNER_TID, F_OWNER_PID or F_OWNER_GID.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nReviewed-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nTested-by: stephane eranian \u003ceranian@googlemail.com\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "85efde6f4e0de9577256c5f0030088d3fd4347c1",
      "tree": "28d3f28213e3da05ab3d38ce3ec01f778b713c5e",
      "parents": [
        "9d50638bae05ab7f62d700c9e4a83a1845cf9ef4"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Feb 26 00:51:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 18:14:14 2009 +0100"
      },
      "message": "make exported headers use strict posix types\n\nA number of standard posix types are used in exported headers, which\nis not allowed if __STRICT_KERNEL_NAMES is defined. In order to\nget rid of the non-__STRICT_KERNEL_NAMES part and to make sane headers\nthe default, we have to change them all to safe types.\n\nThere are also still some leftovers in reiserfs_fs.h, elfcore.h\nand coda.h, but these files have not compiled in user space for\na long time.\n\nThis leaves out the various integer types ({u_,u,}int{8,16,32,64}_t),\nwhich we take care of separately.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nCc: David Airlie \u003cairlied@linux.ie\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nCc: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nCc: netdev@vger.kernel.org\nCc: linux-ppp@vger.kernel.org\nCc: Jaroslav Kysela \u003cperex@perex.cz\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f23513e8d96cf5e6cf8d2ff0cb5dd6bbc33995e4",
      "tree": "6efce8fb88308ae4f4a65cc35a3669f32ff55248",
      "parents": [
        "4a2d44590a603be292addce9c263982043416666"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Sun Jul 15 23:40:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:45 2007 -0700"
      },
      "message": "Introduce O_CLOEXEC\n\nThe problem is as follows: in multi-threaded code (or more correctly: all\ncode using clone() with CLONE_FILES) we have a race when exec\u0027ing.\n\n   thread #1                       thread #2\n\n   fd\u003dopen()\n\n                                   fork + exec\n\n  fcntl(fd,F_SETFD,FD_CLOEXEC)\n\nIn some applications this can happen frequently.  Take a web browser.  One\nthread opens a file and another thread starts, say, an external PDF viewer.\n The result can even be a security issue if that open file descriptor\nrefers to a sensitive file and the external program can somehow be tricked\ninto using that descriptor.\n\nJust adding O_CLOEXEC support to open() doesn\u0027t solve the whole set of\nproblems.  There are other ways to create file descriptors (socket,\nepoll_create, Unix domain socket transfer, etc).  These can and should be\naddressed separately though.  open() is such an easy case that it makes not\nmuch sense putting the fix off.\n\nThe test program:\n\n#include \u003cerrno.h\u003e\n#include \u003cfcntl.h\u003e\n#include \u003cstdio.h\u003e\n#include \u003cunistd.h\u003e\n\n#ifndef O_CLOEXEC\n# define O_CLOEXEC 02000000\n#endif\n\nint\nmain (int argc, char *argv[])\n{\n  int fd;\n  if (argc \u003e 1)\n    {\n      fd \u003d atol (argv[1]);\n      printf (\"child: fd \u003d %d\\n\", fd);\n      if (fcntl (fd, F_GETFD) \u003d\u003d 0 || errno !\u003d EBADF)\n        {\n          puts (\"file descriptor valid in child\");\n          return 1;\n        }\n      return 0;\n    }\n\n  fd \u003d open (\"/proc/self/exe\", O_RDONLY | O_CLOEXEC);\n  printf (\"in parent: new fd \u003d %d\\n\", fd);\n  char buf[20];\n  snprintf (buf, sizeof (buf), \"%d\", fd);\n  execl (\"/proc/self/exe\", argv[0], buf, NULL);\n  puts (\"execl failed\");\n  return 1;\n}\n\n[kyle@parisc-linux.org: parisc fix]\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nSigned-off-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nAcked-by: 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": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "8d286aa5eaf951bf53d4a0f64576d4b377c435ba",
      "tree": "c2304e6fc3af25b6a09f974fa09db753f6bd8cea",
      "parents": [
        "5ac353f9baf7169298ebb7de86b2d697b25bca44"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:18:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up struct flock64 definitions\n\nThis patch gathers all the struct flock64 definitions (and the operations),\nputs them under !CONFIG_64BIT and cleans up the arch files.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5ac353f9baf7169298ebb7de86b2d697b25bca44",
      "tree": "2591e241e07c96d19db85d418ff6623ec394f984",
      "parents": [
        "1abf62afb6e9cdc1b2618b69067a186b94281587"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:18:00 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up struct flock definitions\n\nThis patch just gathers together all the struct flock definitions except\nxtensa into asm-generic/fcntl.h.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1abf62afb6e9cdc1b2618b69067a186b94281587",
      "tree": "a3e3266a23d8d75bf6c302763327b60b7372a41c",
      "parents": [
        "e64ca97fd80a129e538ca42d0b12c379746b83db"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:17:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up the fcntl operations\n\nThis patch puts the most popular of each fcntl operation/flag into\nasm-generic/fcntl.h and cleans up the arch files.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e64ca97fd80a129e538ca42d0b12c379746b83db",
      "tree": "196c445874941ffbcca785be713338f647b42d5b",
      "parents": [
        "2b2fa38e5f3f17a5e1ef3fe29a9869d93197ebfd"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:17:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up the open flags\n\nThis patch puts the most popular of each open flag into asm-generic/fcntl.h\nand cleans up the arch files.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9317259ead88fe6c05120ae1e3ace99738e2c698",
      "tree": "b899748ca57a96d59003945f97ceae01b5fdc48c",
      "parents": [
        "5ba4d46dc44c5399bc4e7a39239de5a1690848a4"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:17:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:37 2005 -0700"
      },
      "message": "[PATCH] Create asm-generic/fcntl.h\n\nThis set of patches creates asm-generic/fcntl.h and consolidates as much as\npossible from the asm-*/fcntl.h files into it.\n\nThis patch just gathers all the identical bits of the asm-*/fcntl.h files into\nasm-generic/fcntl.h.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Yoichi Yuasa \u003cyuasa@hh.iij4u.or.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ]
}
