)]}'
{
  "log": [
    {
      "commit": "b73c29f6b0ddbcf07b43c5c5e6354e5839b5e68d",
      "tree": "6aa4b36d5c90a5d82b7995329fd329d4111c762f",
      "parents": [
        "67b172c097177835fbf5b0666885c4059a4f67ff"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Oct 15 22:04:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:46 2008 -0700"
      },
      "message": "quota: remove CVS keywords\n\nRemove CVS keywords that weren\u0027t updated for a long time from comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "657d3bfa98e542271b449f8cd84c7501ae2b2255",
      "tree": "1e618dfbb055f2508aca8f0e503e0b525f2b4d0b",
      "parents": [
        "03b063436ca1076301de58d9d628f610ab5404ad"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: implement sending information via netlink about user below quota\n\nSometimes it may be useful for userspace to know (e.g.  for some hosting\nguys) that some user stopped exceeding his hardlimit or softlimit in\nquotas.  Implement sending of such events to userspace via quota netlink\nprotocol so that they don\u0027t have to poll for such events.  Based on idea\nand initial implementation by Vladislav Bogdanov.\n\nCc: Vladislav Bogdanov \u003cslava@nsys.by\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "03b063436ca1076301de58d9d628f610ab5404ad",
      "tree": "c0c21837706d6c462cef3183f5e514405d1af993",
      "parents": [
        "74abb9890dafb12a50dc140de215ed477beb1b88"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: convert macros to inline functions\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74abb9890dafb12a50dc140de215ed477beb1b88",
      "tree": "30188b5932e54bc67fb88c0d05e5ba631fe9b698",
      "parents": [
        "02a55ca87185e114e5d298a8d00608501dbabf67"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: move function-macros from quota.h to quotaops.h\n\nMove declarations of some macros, which should be in fact functions to\nquotaops.h.  This way they can be later converted to inline functions\nbecause we can now use declarations from quota.h.  Also add necessary\nincludes of quotaops.h to a few files.\n\n[akpm@linux-foundation.org: fix JFS build]\n[akpm@linux-foundation.org: fix UFS build]\n[vegard.nossum@gmail.com: fix QUOTA\u003dn build]\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nCc: Arjen Pool \u003carjenpool@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02a55ca87185e114e5d298a8d00608501dbabf67",
      "tree": "958b60f8fb2936d7207146ff99be431c2c17edc5",
      "parents": [
        "b85f4b87a511bea86dac68c4f0fabaee2cac6c4c"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Fri Jul 25 01:46:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:35 2008 -0700"
      },
      "message": "quota: cleanup loop in sync_dquots()\n\nMake loop in sync_dquots() checking whether there\u0027s something to write\nmore readable, remove useless variable and macro info_any_dirty() which\nis used only in this place.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: \"Vegard Nossum\" \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c32e026efc1e1a4f9e36babebf123f2b88205b0b",
      "tree": "4ac178e87d8ab8b21c157f63a6452fa3f978a20a",
      "parents": [
        "0d34aa4d5a3e5d141bb4d07ed5d4bf02d4d4998a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu May 01 04:35:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 08:04:01 2008 -0700"
      },
      "message": "quota: add a convenience macro for filesystems\n\nNote that it cannot be an inline function because we don\u0027t have struct\nsuper_block prototype...\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ff5af8340aa6be44220d7237ef4a654314cf795",
      "tree": "a9536ea573725931cd4eb3139f4885887e3f8bf8",
      "parents": [
        "03f6e92bdd467aed9d7571a571868563ae6ad288"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Apr 28 02:14:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:33 2008 -0700"
      },
      "message": "quota: quota core changes for quotaon on remount\n\nCurrently, we just turn quotas off on remount of filesystem to read-only\nstate.  The patch below adds necessary framework so that we can turn quotas\noff on remount RO but we are able to automatically reenable them again when\nfilesystem is remounted to RW state.  All we need to do is to keep references\nto inodes of quota files when remounting RO and using these references to\nreenable quotas when remounting RW.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "03f6e92bdd467aed9d7571a571868563ae6ad288",
      "tree": "b10ba6373ffeb0d929ec9004faafcc0ac64103c0",
      "parents": [
        "8794b5b246cf6f67baf57bd9db386e79ca5cac33"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Apr 28 02:14:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:33 2008 -0700"
      },
      "message": "quota: various style cleanups\n\nCleanups in quota code:\n  Change __inline__ to inline.\n  Change some macros to inline functions.\n  Remove vfs_quota_off_mount() macro.\n  DQUOT_OFF() should be (0) is CONFIG_QUOTA is disabled.\n  Move declaration of mark_dquot_dirty and dirty_dquot from quota.h to dquot.c\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "338bf9afda91ec005a1e9a0de4af0271cc167d56",
      "tree": "e60edf0441efbe8215cdeb08bf05c1b6afff58a1",
      "parents": [
        "3b0cb4caefeca6fe6b05c6c5a76e9c633b44c58f"
      ],
      "author": {
        "name": "Andrew Perepechko",
        "email": "andrew.perepechko@sun.com",
        "time": "Mon Apr 28 02:14:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:32 2008 -0700"
      },
      "message": "quota: do not allow setting of quota limits to too high values\n\nWe should check whether quota limits set via Q_SETQUOTA are not exceeding\nlimits which quota format is able to handle.\n\nSigned-off-by: Andrew Perepechko \u003candrew.perepechko@sun.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8b91de2e58318d1168bc13d164478c1a7217a63a",
      "tree": "e5f7a9714c6061d54a7a321b7113cd4db7e2ce59",
      "parents": [
        "4b119e21d0c66c22e8ca03df05d9de623d0eb50f"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Feb 26 09:53:20 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Apr 17 10:42:14 2008 -0400"
      },
      "message": "Fix quota.h includes\n\nquota.h currently relies on asm/semaphore.h (through some chain; it\ndoesn\u0027t actually include semaphore.h itself) to include wait.h.  As\nwell as being bad practice to rely on an implicit include, subsequent\npatches will break this.  While I\u0027m in this file, add atomic.h and\nlist.h, and sort the list of includes.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "8e8934695dfd1d5013555a74a9da706a2e301cb0",
      "tree": "edef65302982cbd3e18cf4ef3c88040939886e3a",
      "parents": [
        "fac8b209b1084bc85748bd54e13d00c1262b220f"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Oct 16 23:29:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:56 2007 -0700"
      },
      "message": "quota: send messages via netlink\n\nImplement sending of quota messages via netlink interface.  The advantage\nis that in userspace we can better decide what to do with the message - for\nexample display a dialogue in your X session or just write the message to\nthe console.  As a bonus, we can get rid of problems with console locking\ndeep inside filesystem code once we remove the old printing mechanism.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "acd64b737567d88a907bb09d7e982ac5e6ad6a7b",
      "tree": "773da21eeebf6cf2c5c19e9498addd9cc9da8802",
      "parents": [
        "6d4d8c0aa255c7b4bdf0fb693ec015b56204bbb3"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue May 08 00:31:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:15 2007 -0700"
      },
      "message": "hide spinlock in linux/quota.h behind __KERNEL__\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nAcked-by: Jan Kara \u003cjack@ucw.cz\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae4472aa03d38b11f334dc0030b82e0c9f249af9",
      "tree": "dbcaa9f2d45ee0fdd306b0f5b602c86606e4b109",
      "parents": [
        "5be02f1d8af4c7baf3a5a31ab9c0cba9fdc52680"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Feb 12 00:51:52 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] QUOTA: Have \u003clinux/quota.h\u003e include \u003clinux/rwsem.h\u003e explicitly\n\nSince quota.h declares a R/W semaphore, it should include rwsem.h\nexplicitly.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0409d3a332fc4347efba535a5003943f2a4aa1ca",
      "tree": "40452f9514818eb255923cc1e3055078085d1991",
      "parents": [
        "997b7af2fe0810ca82a2f801a295218b51426e5a"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 25 14:52:13 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Apr 25 14:52:13 2006 +0100"
      },
      "message": "Don\u0027t include private headers from user-visible parts of linux/quota.h\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "ca5734db60630f7c5564a61a5b9034c1bb369c3d",
      "tree": "7adf89d902aa102ba441eab4481e82750eb33503",
      "parents": [
        "4af4c52f34606bdaab6930a845550c6fb02078a4"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Sat Mar 25 03:06:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:51 2006 -0800"
      },
      "message": "[PATCH] Small cleanup in quota.h\n\nRemove unused quota flag.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d3be915fc5e7d19a2283ad9b0fe0782a74675d0a",
      "tree": "e03647affdee4e72dbff4a5da55bcf32bfa65901",
      "parents": [
        "c039e3134ae62863bbc8e8429b29e3c43cf21b2a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 23 03:00:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:11 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: quota\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b7b1ace2d9d06d76bce7481a045c22ed75e35dd",
      "tree": "458f9f16b855ed0347013048c13d3a29031f00ee",
      "parents": [
        "254ce8dc882f8d69e5d49ed4807c94a61976fb15"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 07 17:13:39 2005 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 18:18:09 2005 -0800"
      },
      "message": "[PATCH] saner handling of auto_acct_off() and DQUOT_OFF() in umount\n\nThe way we currently deal with quota and process accounting that might\nkeep vfsmount busy at umount time is inherently broken; we try to turn\nthem off just in case (not quite correctly, at that) and\n\n  a) pray umount doesn\u0027t fail (otherwise they\u0027ll stay turned off)\n  b) pray nobody doesn anything funny just as we turn quota off\n\nMoreover, LSM provides hooks for doing the same sort of broken logics.\n\nThe proper way to deal with that is to introduce the second kind of\nreference to vfsmount.  Semantics:\n\n - when the last normal reference is dropped, all special ones are\n   converted to normal ones and if there had been any, cleanup is done.\n - normal reference can be cloned into a special one\n - special reference can be converted to normal one; that\u0027s a no-op if\n   we\u0027d already passed the point of no return (i.e.  mntput() had\n   converted special references to normal and started cleanup).\n\nThe way it works: e.g. starting process accounting converts the vfsmount\nreference pinned by the opened file into special one and turns it back\nto normal when it gets shut down; acct_auto_close() is done when no\nnormal references are left.  That way it does *not* obstruct umount(2)\nand it silently gets turned off when the last normal reference to\nvfsmount is gone.  Which is exactly what we want...\n\nThe same should be done by LSM module that holds some internal\nreferences to vfsmount and wants to shut them down on umount - it should\nmake them special and security_sb_umount_close() will be called exactly\nwhen the last normal reference to vfsmount is gone.\n\nquota handling is even simpler - we don\u0027t use normal file IO anymore, so\nthere\u0027s no need to hold vfsmounts at all.  DQUOT_OFF() is done from\ndeactivate_super(), where it really belongs.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e5117ba0af4582b6ec9164874f719d7f3f1eb2b",
      "tree": "d667e418571366ecea1188cb113e786a4a1d7f5c",
      "parents": [
        "bd6a1f16fffdfe010fdc2979fd01f12357816762"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jun 23 22:01:03 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 00:05:19 2005 -0700"
      },
      "message": "[PATCH] quota: improve credits estimates\n\nImprove estimates on the number of needed credits for quota transaction.\nNow we distinguish blocks that might need to be allocated and blocks that\nonly need to be rewritten.  Also we distinguish deleting of a quota\nstructure and creating of a new one.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
