)]}'
{
  "log": [
    {
      "commit": "dd6f3c6d5a26a282521f15a183fdc2d6f35cfa0f",
      "tree": "bf10e23743f9399c7c36c0137356df1b14affc3e",
      "parents": [
        "c516610cfec5c50f84ff8cc315628548481f4990"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jan 26 16:01:43 2009 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Mar 26 02:18:35 2009 +0100"
      },
      "message": "quota: Remove NODQUOT macro\n\nRemove this macro which is just a definition of NULL. Fix a few coding style\nissues along the way.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "740d9dcd949a986c88886a591054a0cdb89ef669",
      "tree": "3a422d30c838c80d35b8d52a05a4c55d3c806e4e",
      "parents": [
        "f18df228997fb716990590d248663981a15f17d4"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Tue Jan 13 16:43:14 2009 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Mar 26 02:18:24 2009 +0100"
      },
      "message": "quota: Add quota reservation claim and released operations\n\nReserved quota will be claimed at the block allocation time. Over-booked\nquota could be returned back with the release callback function.\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "f18df228997fb716990590d248663981a15f17d4",
      "tree": "f5fc935b09cddde325235c265fd3a553ee40af51",
      "parents": [
        "8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Tue Jan 13 16:43:09 2009 +0100"
      },
      "committer": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Mar 26 02:15:50 2009 +0100"
      },
      "message": "quota: Add quota reservation support\n\nDelayed allocation defers the block allocation at the dirty pages\nflush-out time, doing quota charge/check at that time is too late.\nBut we can\u0027t charge the quota blocks until blocks are really allocated,\notherwise users could get overcharged after reboot from system crash.\n\nThis patch adds quota reservation for delayed allocation. Quota blocks\nare reserved in memory, inode and quota won\u0027t gets dirtied until later\nblock allocation time.\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "5cd9d5bb86daf632a40f90e2321ea9379e42f073",
      "tree": "dd8baa659c18e61b94c1c366b93f161611cec8bd",
      "parents": [
        "9a2f3866c825c67c3a5806799cdc93fb7517f0c4"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Nov 25 15:31:31 2008 +0100"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:25 2009 -0800"
      },
      "message": "quota: Unexport dqblk_v1.h and dqblk_v2.h\n\nUnexport header files dqblk_v[12].h since except for quota format ID they\ndon\u0027t contain information userspace should be interested in. Move ID\ndefinitions to quota.h.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "571b46e40bebb0d57130ca24c4a84dfd553adb91",
      "tree": "8597a9f4ee7c0b00a7c62abe3bb6157d5d60ea7a",
      "parents": [
        "4d59bce4f9eaf26d6d9046b56a2f1c0c7f20981d"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Oct 30 09:17:52 2008 +0100"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:22 2009 -0800"
      },
      "message": "quota: Update version number\n\nIncrease reported version number of quota support since quota core has changed\nsignificantly. Also remove __DQUOT_NUM_VERSION__ since nobody uses it.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "4d59bce4f9eaf26d6d9046b56a2f1c0c7f20981d",
      "tree": "8acb07cd2bf0ab360e6397dfa816feb009fc49af",
      "parents": [
        "db49d2df489f727096438706a5428115e84a3f0d"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Oct 02 16:48:10 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:22 2009 -0800"
      },
      "message": "quota: Keep which entries were set by SETQUOTA quotactl\n\nQuota in a clustered environment needs to synchronize quota information\namong cluster nodes. This means we have to occasionally update some\ninformation in dquot from disk / network. On the other hand we have to\nbe careful not to overwrite changes administrator did via SETQUOTA.\nSo indicate in dquot-\u003edq_flags which entries have been set by SETQUOTA\nand quota format can clear these flags when it properly propagated\nthe changes.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "db49d2df489f727096438706a5428115e84a3f0d",
      "tree": "4ba9837a5371bb4a84dc27614eaeb4e4772e3eb8",
      "parents": [
        "e3d4d56b9715e40ded2a84d0d4fa7f3b6c58983c"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Oct 01 18:21:39 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:21 2009 -0800"
      },
      "message": "quota: Allow negative usage of space and inodes\n\nFor clustered filesystems, it can happen that space / inode usage goes\nnegative temporarily (because some node is allocating another node\nis freeing and they are not completely in sync). So let quota code\nallow this and change qsize_t so a signed type so that we don\u0027t\nunderflow the variables.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "e3d4d56b9715e40ded2a84d0d4fa7f3b6c58983c",
      "tree": "67648a89b3c9056d77caa6ef42776cf1053c5e70",
      "parents": [
        "1ccd14b9c271c1ac6eec5c5ec5def433100e7248"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Oct 02 18:44:14 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:21 2009 -0800"
      },
      "message": "quota: Convert union in mem_dqinfo to a pointer\n\nComing quota support for OCFS2 is going to need quite a bit\nof additional per-sb quota information. Moreover having fs.h\ninclude all the types needed for this structure would be a\npain in the a**. So remove the union from mem_dqinfo and add\na private pointer for filesystem\u0027s use.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "ca785ec66b991e9ca74dd9840fc014487ad095e1",
      "tree": "271c7b36123e9c16f455ecd96352d24ecd20423c",
      "parents": [
        "dcb30695f2cac86b71417629a6fe8042b4fe2ab2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Sep 30 17:53:37 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:36:57 2009 -0800"
      },
      "message": "quota: Introduce DQUOT_QUOTA_SYS_FILE flag\n\nIf filesystem can handle quota files as system files hidden from users, we can\nskip a lot of cache invalidation, syncing, inode flags setting etc. when\nturning quotas on, off and quota_sync. Allow filesystem to indicate that it is\nhiding quota files from users by DQUOT_QUOTA_SYS_FILE flag.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "f55abc0fb9c3189de3da829adf3220322c0da43e",
      "tree": "0db4b838b0b90f27401783e8e7e45842ec91f90a",
      "parents": [
        "e4bc7b4b7ff783779b6928d55a9308910bf180a3"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Aug 20 17:50:32 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:36:56 2009 -0800"
      },
      "message": "quota: Allow to separately enable quota accounting and enforcing limits\n\nSplit DQUOT_USR_ENABLED (and DQUOT_GRP_ENABLED) into DQUOT_USR_USAGE_ENABLED\nand DQUOT_USR_LIMITS_ENABLED. This way we are able to separately enable /\ndisable whether we should:\n1) ignore quotas completely\n2) just keep uptodate information about usage\n3) actually enforce quota limits\n\nThis is going to be useful when quota is treated as filesystem metadata - we\nthen want to keep quota information uptodate all the time and just enable /\ndisable limits enforcement.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "12095460f7f315f8ef67a55b2194195d325d48d7",
      "tree": "4e878139ccd29a2adeb2a9fa6fcd9c279e8ce6f4",
      "parents": [
        "74f783af95c982aef6d3a1415275650dcf511666"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Aug 20 14:45:12 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:36:55 2009 -0800"
      },
      "message": "quota: Increase size of variables for limits and inode usage\n\nSo far quota was fine with quota block limits and inode limits/numbers in\na 32-bit type. Now with rapid increase in storage sizes there are coming\nrequests to be able to handle quota limits above 4TB / more that 2^32 inodes.\nSo bump up sizes of types in mem_dqblk structure to 64-bits to be able to\nhandle this. Also update inode allocation / checking functions to use qsize_t\nand make global structure keep quota limits in bytes so that things are\nconsistent.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "74f783af95c982aef6d3a1415275650dcf511666",
      "tree": "594e978641d31e05e170a56ec68f8c65b37bb649",
      "parents": [
        "9f868f16e40e9ad8e39aebff94a4be0d96520734"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Aug 19 14:51:22 2008 +0200"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:36:55 2009 -0800"
      },
      "message": "quota: Add callbacks for allocating and destroying dquot structures\n\nSome filesystems would like to keep private information together with each\ndquot. Add callbacks alloc_dquot and destroy_dquot allowing filesystem to\nallocate larger dquots from their private slab in a similar fashion we\ncurrently allocate inodes.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "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"
    }
  ]
}
