)]}'
{
  "log": [
    {
      "commit": "abf5d08acaca942b49daf0ed87a9deddc94b183a",
      "tree": "5786fc14e4de0c7058f07aa2338594f522a8d4f9",
      "parents": [
        "85640bd9d47f6ad0290558009e9313632a45861b"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Thu Mar 04 17:32:21 2010 +0300"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 21 18:31:26 2010 -0400"
      },
      "message": "ubifs: replace inode uid,gid,mode initialization with helper function\n\nAcked-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2fde99cb55fb9d9b88180512a5e8a5d939d27fec",
      "tree": "52113a2ea0c08f5beb496a6a9c00da618c07c67d",
      "parents": [
        "01bf0b64579ead8a82e7cfc32ae44bc667e7ad0f"
      ],
      "author": {
        "name": "ZhangJieJing",
        "email": "kzjeef@gmail.com",
        "time": "Fri Apr 16 11:36:50 2010 +0800"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Apr 29 15:12:18 2010 +0300"
      },
      "message": "UBIFS: mark VFS SB RO too\n\nIf some read/write error happens (eg.CRC error), UBIFS swotches to\nread-only mode, but the VFS infomation still not update.\nThis patch add this also make /proc/mounts update.\n\nSigned-off-by: Zhang Jiejing \u003ckzjeef@gmail.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "b8fa05719ba4349be80ce929237249b57886a203",
      "tree": "eb2a58ce09dc699e29e15b812f06196587aa64a3",
      "parents": [
        "4da0b66c6e9ea7ba78a19f9f186779826d89f8b0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 07 09:54:44 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 07 09:54:44 2010 -0800"
      },
      "message": "Revert \"lib: build list_sort() only if needed\"\n\nThis reverts commit a069c266ae5fdfbf5b4aecf2c672413aa33b2504.\n\nIt turns ou that not only was it missing a case (XFS) that needed it,\nbut perhaps more importantly, people sometimes want to enable new\nmodules that they hadn\u0027t had enabled before, and if such a module uses\nlist_sort(), it can\u0027t easily be inserted any more.\n\nSo rather than add a \"select LIST_SORT\" to the XFS case, just leave it\ncompiled in.  It\u0027s not all _that_ big, after all, and the inconvenience\nisn\u0027t worth it.\n\nRequested-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Don Mullis \u003cdon.mullis@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a069c266ae5fdfbf5b4aecf2c672413aa33b2504",
      "tree": "2f9731d8475fc5b2d942cac004904db8e49d5428",
      "parents": [
        "02b12b7a28faa2e9ed5a361cd08ea576ab1f1509"
      ],
      "author": {
        "name": "Don Mullis",
        "email": "don.mullis@gmail.com",
        "time": "Fri Mar 05 13:43:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:35 2010 -0800"
      },
      "message": "lib: build list_sort() only if needed\n\nBuild list_sort() only for configs that need it -- those that don\u0027t save\n~581 bytes (i386).\n\nSigned-off-by: Don Mullis \u003cdon.mullis@gmail.com\u003e\nCc: Dave Airlie \u003cairlied@redhat.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Artem Bityutskiy \u003cdedekind@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": "a9185b41a4f84971b930c519f0c63bd450c4810d",
      "tree": "268cf4e206cca12fb9e1dd68984e7c190e465b46",
      "parents": [
        "26821ed40b4230259e770c9911180f38fcaa6f59"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Fri Mar 05 09:21:37 2010 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 05 13:25:52 2010 -0500"
      },
      "message": "pass writeback_control to -\u003ewrite_inode\n\nThis gives the filesystem more information about the writeback that\nis happening.  Trond requested this for the NFS unstable write handling,\nand other filesystems might benefit from this too by beeing able to\ndistinguish between the different callers in more detail.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2c761270d5520dd84ab0b4e47c24d99ff8503c38",
      "tree": "c23a51fdcc96641661b632d3b3c2c46ad7e53a91",
      "parents": [
        "dbf004d7883b3adb058c0c1a5635bc4ec27651c0"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 12 17:39:16 2010 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:02:00 2010 -0800"
      },
      "message": "lib: Introduce generic list_sort function\n\nThere are two copies of list_sort() in the tree already, one in the DRM\ncode, another in ubifs.  Now XFS needs this as well.  Create a generic\nlist_sort() function from the ubifs version and convert existing users\nto it so we don\u0027t end up with yet another copy in the tree.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nAcked-by: Dave Airlie \u003cairlied@redhat.com\u003e\nAcked-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eaff8079d4f1016a12e34ab323737314f24127dd",
      "tree": "a3d9e00320c6195e55811d5247a521f99341a411",
      "parents": [
        "7a0ad10c367ab57c899d340372f37880cbe6ab52"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Dec 17 14:25:01 2009 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 17 11:03:25 2009 -0500"
      },
      "message": "kill I_LOCK\n\nAfter I_SYNC was split from I_LOCK the leftover is always used together with\nI_NEW and thus superflous.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7f2f4e72d3423977cc62152ecf29afe701553a67",
      "tree": "2eb0c3e5bd86d188aa46aa04774f0becd3d61a85",
      "parents": [
        "f0b34ae63488fecf0ec4ab42024d607917f90c45"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Dec 14 18:01:13 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:33 2009 -0800"
      },
      "message": "fs/ubifs: use %pUB to print UUIDs\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nCc: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc1495bf99de6f65066b3234813180301ff8b693",
      "tree": "4858db540f3c57f6f998383056ad4714b969660c",
      "parents": [
        "5476ffd2b78f06cce31a57f8611162918fe1ae3a",
        "b38882f5c066dc681679e90f1903eda323e605b1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:31:45 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:31:45 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/ubifs-2.6\n\n* git://git.infradead.org/ubifs-2.6:\n  UBIFS: fix return code in check_leaf\n  UBI: flush wl before clearing update marker\n  MAINTAINERS: change e-mail of Artem Bityutskiy\n  UBIFS: remove manual O_SYNC handling\n  UBIFS: support mounting of UBI volume character devices\n  UBI: Add ubi_open_volume_path\n"
    },
    {
      "commit": "b38882f5c066dc681679e90f1903eda323e605b1",
      "tree": "da9f693c414415c416e69e45bd9379bb27003640",
      "parents": [
        "6afaf8a484cbbfd2ccf58a4e5396d1f280469789"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Dec 07 14:21:45 2009 +0100"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Dec 08 14:24:00 2009 +0200"
      },
      "message": "UBIFS: fix return code in check_leaf\n\nReturn the PTR_ERR of the correct pointer. This fixes the debugging code.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "774888bcd646c7055ac69ad4fd0c0fff0827ee39",
      "tree": "7651125c8ba02bc64ba7507d0599c2e37bb159eb",
      "parents": [
        "9722324e65a017ea0ce39236a2f87c649bb7c39d"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Sep 30 22:17:16 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Nov 24 08:18:55 2009 +0200"
      },
      "message": "UBIFS: remove manual O_SYNC handling\n\ngeneric_file_aio_write already calls into -\u003efsync to handle O_SYNC/O_DSYNC.\nRemove the duplicate call to ubifs_sync_wbufs_by_inode which is already\ncovered by ubifs_fsync.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "9722324e65a017ea0ce39236a2f87c649bb7c39d",
      "tree": "83450a50e35f5d1be14d7a74da57b45d3f138a79",
      "parents": [
        "b57102841846d9840dcb1b8b308f6d7369b8e5c5"
      ],
      "author": {
        "name": "Corentin Chary",
        "email": "corentincj@iksaif.net",
        "time": "Mon Sep 28 21:10:12 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Nov 24 08:18:54 2009 +0200"
      },
      "message": "UBIFS: support mounting of UBI volume character devices\n\nThis patch makes it possible to mount UBI character device\nnodes, and use something like:\n\n$ mount -t ubifs /dev/ubi_volume_name /mnt/ubifs\n\ninstead of the old restrictive \u0027nodev\u0027 semantics:\n\n$ mount -t ubifs ubi0_0 /mnt/ubifs\n\n[Comments and the patch were amended a bit by Artem]\n\nSigned-off-by: Corentin Chary \u003ccorentincj@iksaif.net\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "f0f37e2f77731b3473fa6bd5ee53255d9a9cdb40",
      "tree": "3c26d3ed1a453156e9c208ccb5567a8954dba064",
      "parents": [
        "6f5071020d5ec89b5d095aa488db604adb921aec"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sun Sep 27 22:29:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Sep 27 11:39:25 2009 -0700"
      },
      "message": "const: mark struct vm_struct_operations\n\n* mark struct vm_area_struct::vm_ops as const\n* mark vm_ops in AGP code\n\nBut leave TTM code alone, something is fishy there with global vm_ops\nbeing used.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f09410bbc4306f592cfb43812389ea1c7905a20",
      "tree": "18f179435f70c4ec9231883501062d5ea0357af5",
      "parents": [
        "ac4cfdd6d141c319a7af8655f750ed504c187a74"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:24 2009 -0700"
      },
      "message": "const: mark remaining address_space_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "7cce2f4cb7f5f641f78c8e3eea4e7b1b96cb71c0",
      "tree": "b064d077928cf224660ab1e1841cdab2c9fd8b08",
      "parents": [
        "e055f7e873d900925c222cf2d1ec955af4a9ca90",
        "ebc79c4f8da0f92efa968e0328f32334a2ce80cf"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Sep 21 12:09:22 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Sep 21 12:09:22 2009 +0300"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into linux-next\n\nConflicts:\n\tfs/ubifs/super.c\n\nMerge the upstream tree in order to resolve a conflict with the\nper-bdi writeback changes from the linux-2.6-block tree.\n"
    },
    {
      "commit": "e055f7e873d900925c222cf2d1ec955af4a9ca90",
      "tree": "9696d7bcf60f35140b10a2c0ecf421991623c430",
      "parents": [
        "be9e62a7307583594d88f6ccf57a4e30308e7b21"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 17 15:08:31 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 17 15:08:31 2009 +0300"
      },
      "message": "UBIFS: fix debugging dump\n\nIn \u0027dbg_check_space_info()\u0027 we want to dump current lprops statistics,\nbut actually dump old statistics. Fix this.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "b6e51316daede0633e9274e1e30391cfa4747877",
      "tree": "664476bb4e7c05dcce3ad908363b482134c68429",
      "parents": [
        "bcddc3f01c9122882c8b9f12ab94a934e55aef97"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:13:54 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:52 2009 +0200"
      },
      "message": "writeback: separate starting of sync vs opportunistic writeback\n\nbdi_start_writeback() is currently split into two paths, one for\nWB_SYNC_NONE and one for WB_SYNC_ALL. Add bdi_sync_writeback()\nfor WB_SYNC_ALL writeback and let bdi_start_writeback() handle\nonly WB_SYNC_NONE.\n\nPush down the writeback_control allocation and only accept the\nparameters that make sense for each function. This cleans up\nthe API considerably.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "32a88aa1b6dfb901cec64e1898cac78d0f25028a",
      "tree": "51aa6f56ccfca53f495d015645373317bdee3647",
      "parents": [
        "c4a77a6c7dcff04a2abc7fe4b6b2ae605be41c5b"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:02:33 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 16 15:18:51 2009 +0200"
      },
      "message": "fs: Assign bdi in super_block\n\nWe do this automatically in get_sb_bdev() from the set_bdev_super()\ncallback. Filesystems that have their own private backing_dev_info\nmust assign that in -\u003efill_super().\n\nNote that -\u003es_bdi assignment is required for proper writeback!\n\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "be9e62a7307583594d88f6ccf57a4e30308e7b21",
      "tree": "b30b5ccb97f583c4bbc2095923f6f5f9fd18890a",
      "parents": [
        "055da1b704e95fea39597bd84d64cea7d4f7d2aa"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Dec 28 10:17:23 2008 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:09:48 2009 +0300"
      },
      "message": "UBIFS: improve lprops dump\n\nImprove \u0027dbg_dump_lprop()\u0027 and print dark and dead space there,\ndecode flags, and journal heads.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "055da1b704e95fea39597bd84d64cea7d4f7d2aa",
      "tree": "296a357e17a1deb3f36ae363ae723efde5d34c1f",
      "parents": [
        "77a7ae580c6cc8a0f0d5d7a7d61eb7e9fe8d99dc"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:09:24 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:09:24 2009 +0300"
      },
      "message": "UBIFS: various minor commentary fixes\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "77a7ae580c6cc8a0f0d5d7a7d61eb7e9fe8d99dc",
      "tree": "299adfb136ca146d9bbfd7e171351ab971c1b93d",
      "parents": [
        "d6d140097beb554daa967d3fb576e94ad2f82dcd"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 15:03:51 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 17:05:06 2009 +0300"
      },
      "message": "UBIFS: improve journal head debugging prints\n\nConvert the journal head integer into the head name when printing\ndebugging information.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "d6d140097beb554daa967d3fb576e94ad2f82dcd",
      "tree": "b29f202923cd194f92cf896c3431509dddd26fee",
      "parents": [
        "873a64c762f0c52cdf95dcee59bd416bbf9688e6"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 14:44:06 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 15 14:45:35 2009 +0300"
      },
      "message": "UBIFS: define journal head numbers in ubifs-media.h\n\nThe journal head names and numbers are part of the UBIFS format, so\nthey should be in the ubifs-media.h.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "d993831fa7ffeb89e994f046f93eeb09ec91df08",
      "tree": "da4f94bbf022c83988bda71adf1f1b3a88cb4592",
      "parents": [
        "f09b00d3e789a88fa6c7c03cedc62cb65c1de0cb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 12 14:45:52 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Sep 11 09:20:26 2009 +0200"
      },
      "message": "writeback: add name to backing_dev_info\n\nThis enables us to track who does what and print info. Its main use\nis catching dirty inodes on the default_backing_dev_info, so we can\nfix that up.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d8a8559cd7a9ccac98d5f6f13297a2ff68a43627",
      "tree": "165e02117205e9790c21b2facc130b23addf3775",
      "parents": [
        "0d03d59d9b31cd1e33b7e46a80b6fef66244b1f2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 02 12:34:32 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Sep 11 09:20:25 2009 +0200"
      },
      "message": "writeback: get rid of generic_sync_sb_inodes() export\n\nThis adds two new exported functions:\n\n- writeback_inodes_sb(), which only attempts to writeback dirty inodes on\n  this super_block, for WB_SYNC_NONE writeout.\n- sync_inodes_sb(), which writes out all dirty inodes on this super_block\n  and also waits for the IO to complete.\n\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "873a64c762f0c52cdf95dcee59bd416bbf9688e6",
      "tree": "02b0bde3595eb9f7f5b83d961e41504748a4e325",
      "parents": [
        "0dcd18e4073454daf591e7127247e32ec942b4f3"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Sep 01 17:06:43 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 10 12:06:47 2009 +0300"
      },
      "message": "UBIFS: amend commentaries\n\nThis patch amends and nicifies commentaries in file.c, as well as\nfixes some spelling problems.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "0dcd18e4073454daf591e7127247e32ec942b4f3",
      "tree": "2f9e0175bc1af2e841269c19f0a5f65cc22088d7",
      "parents": [
        "348709bad348d2fd013e1529b4cf5f220717c328"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Aug 25 16:22:53 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 10 12:06:47 2009 +0300"
      },
      "message": "UBIFS: check ubifs_scan error codes better\n\nThe \u0027ubifs_scan()\u0027 function returns -EUCLEAN if something is corrupted\nand recovery is needed, otherwise it returns other error codes. However,\nin few places UBIFS does not check the error codes and runs recovery.\nThis patch changes this behavior and makes UBIFS start recovery only\non -EUCLEAN errors.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nReviewed-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "348709bad348d2fd013e1529b4cf5f220717c328",
      "tree": "e5ba0fb86c1c41d078c38f6ca67bda957241ef53",
      "parents": [
        "e3c3efc243462d67ba9fa7f67620dcbc4597bf0a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Aug 25 15:00:55 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 10 12:06:47 2009 +0300"
      },
      "message": "UBIFS: do not print scary error messages needlessly\n\nAt the moment UBIFS print large and scary error messages and\nflash dumps in case of nearly any corruption, even if it is\na recoverable corruption. For example, if the master node is\ncorrupted, ubifs_scan() prints error dumps, then UBIFS recovers\njust fine and goes on.\n\nThis patch makes UBIFS print scary error messages only in\nreal cases, which are not recoverable. It adds \u0027quiet\u0027 argument\nto the \u0027ubifs_scan()\u0027 function, so the caller may ask \u0027ubi_scan()\u0027\nnot to print error messages if the caller is able to do recovery.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nReviewed-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "e3c3efc243462d67ba9fa7f67620dcbc4597bf0a",
      "tree": "ae29cf8fade7c9bfac77f7ceff0381e775d80c0d",
      "parents": [
        "8c6866b071cb242584df287dbd342e5815e8407f"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Aug 27 16:34:19 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Sep 10 09:58:11 2009 +0300"
      },
      "message": "UBIFS: add inode size debugging check\n\nAdd one more check to UBIFS - a check that makes sure that there\nare no data nodes beyond inode size. And few commantaries fixes\nalong the line.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nReviewed-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "8c6866b071cb242584df287dbd342e5815e8407f",
      "tree": "ee4f90f15c1e0472f0d0873595f130d580fb296e",
      "parents": [
        "887ee17117fd23e962332b353d250ac9e090b20f"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sat Aug 15 13:57:48 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sat Aug 22 11:54:51 2009 +0300"
      },
      "message": "UBIFS: constify file and inode operations\n\nThis patch adds \u0027const\u0027 qualifier to UBIFS xattr inode and file\noperations.\n\nPointed-out-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "887ee17117fd23e962332b353d250ac9e090b20f",
      "tree": "b871a984fe5ed99b9181846d3f89b67b92239023",
      "parents": [
        "e9d6bbc428bdf0c08bbd0b3f28db2b7317cfff21"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jul 20 17:56:19 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 24 15:14:55 2009 +0300"
      },
      "message": "UBIFS: remove unneeded call from ubifs_sync_fs\n\nNowadays VFS always synchronizes all dirty inodes and pages before\ncalling \u0027-\u003esync_fs()\u0027, so remove unneeded \u0027generic_sync_sb_inodes()\u0027\nfrom \u0027ubifs_sync_fs()\u0027. It used to be needed, but not any longer.\n\nPointed-out-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "e9d6bbc428bdf0c08bbd0b3f28db2b7317cfff21",
      "tree": "ec306cfd64f3ae1926b5a92379d072791458b710",
      "parents": [
        "b5148da40cb77ca84c4b0281e7049bb26d786592"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 19 13:51:04 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 24 15:14:54 2009 +0300"
      },
      "message": "UBIFS: kill BKL\n\nThe BKL was pushed down from VFS to the file-systems. It used\nto serialize mount/unmount/remount and prevented more than one\ninstance of the same file-system from doing\nmount/umount/remount at the same time. But it is OK for UBIFS\nand it does not need any additional locking for these cases.\nThus, kick the BKL out of UBIFS.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "b5148da40cb77ca84c4b0281e7049bb26d786592",
      "tree": "89352814eb44df3e7ff37a1100c5870f2011b8da",
      "parents": [
        "83ef2ecdbbd49cb0fbbfc7012b111b71664e386d"
      ],
      "author": {
        "name": "Subrata Modak",
        "email": "subrata@linux.vnet.ibm.com",
        "time": "Fri Jul 17 18:28:12 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 24 15:14:54 2009 +0300"
      },
      "message": "UBIFS: remove unused functions\n\nRemove \u0027xent_key_init_hash()\u0027 and \u0027data_key_init_flash()\u0027 functions,\nas they are unot used anywhere.\n\nSigned-off-by: Subrata Modak \u003csubrata@linux.vnet.ibm.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "83ef2ecdbbd49cb0fbbfc7012b111b71664e386d",
      "tree": "a45f4b7f106f36f766494126aea2b74fd4ddc32e",
      "parents": [
        "4be3bd7849165e7efa6b0b35a23d6a3598d97465"
      ],
      "author": {
        "name": "Subrata Modak",
        "email": "subrata@linux.vnet.ibm.com",
        "time": "Wed Jul 15 07:49:03 2009 +0530"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jul 24 15:14:54 2009 +0300"
      },
      "message": "UBIFS: suppress compilation warning\n\nFix \"using uninitialized variable\" compilation warning by using\nthe \"unititialized_var()\" helper.\n\nSigned-off-by: Subrata Modak\u003csubrata@linux.vnet.ibm.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "405f55712dfe464b3240d7816cc4fe4174831be2",
      "tree": "96c425ea7fa8b31058b8f83a433c5e5265c8ebc7",
      "parents": [
        "f9fabcb58a6d26d6efde842d1703ac7cfa9427b6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Jul 11 22:08:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 12 12:22:34 2009 -0700"
      },
      "message": "headers: smp_lock.h redux\n\n* Remove smp_lock.h from files which don\u0027t need it (including some headers!)\n* Add smp_lock.h to files which do need it\n* Make smp_lock.h include conditional in hardirq.h\n  It\u0027s needed only for one kernel_locked() usage which is under CONFIG_PREEMPT\n\n  This will make hardirq.h inclusion cheaper for every PREEMPT\u003dn config\n  (which includes allmodconfig/allyesconfig, BTW)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "061125476039a9a998878468a6abe235b1cee347",
      "tree": "5acf6d6bc38cfd96c3d0ba4dc101d7e6a2606d16",
      "parents": [
        "431102fed3effe4e4e19678830ddab7f05c34bf9"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jun 29 19:27:14 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jul 09 09:19:39 2009 +0300"
      },
      "message": "UBIFS: fix corruption dump\n\nIn the \u0027ubifs_recover_leb()\u0027 function, when we find corrupted\nempty space, we dump 8K starting from the offset where the last\nnode ends. This is OK if the corrupted empty space is somewhere\nnear that offset. But if the corruption is far at the end of the\nLEB, we will dump all 0xFF bytes and complitely ignore the\ninteresting data. This is observed on a PPC (\"kilauea\") with\nNOR flash.\n\nThis patch changes the behavior and teaches UBIFS to print only\ninteresting data. I.e., now we find where corruption starts and\nstart dumping from that offset.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nReviewed-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "431102fed3effe4e4e19678830ddab7f05c34bf9",
      "tree": "cc3a9046a6abbbc026320449ee59b07bb70f6109",
      "parents": [
        "ed43f2f06cc1cec7ec2dc235c908530bc8c796eb"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jun 29 18:58:34 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jul 09 09:19:38 2009 +0300"
      },
      "message": "UBIFS: clean up free space checking\n\nrecovery.c has \u0027is_empty()\u0027 helper and it is better to use\nthis helper instead of re-implementing it in several places.\nThis patch does this and removes some amount of unneeded code.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nReviewed-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "ed43f2f06cc1cec7ec2dc235c908530bc8c796eb",
      "tree": "7d178c64dc5a758487cc0fca834c4ab42e62febc",
      "parents": [
        "086b3640c10ab448a6993c4bae1508f496f530c4"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jun 29 17:59:23 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jul 09 09:19:38 2009 +0300"
      },
      "message": "UBIFS: small amendments in the LEB scanning code\n\nThis patch fixes few minor things I\u0027ve spotted while going through\ncode:\n\n1. Better document return codes\n2. If \u0027ubifs_scan_a_node()\u0027 returns some thing we do not expect,\n   treat this as an error.\n3. Try to do recovery only when \u0027ubifs_scan()\u0027 returns %-EUCLEAN,\n   not on any error.\n4. If empty space starts at a non-aligned address, print a message.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nReviewed-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "086b3640c10ab448a6993c4bae1508f496f530c4",
      "tree": "ed484277d53df234c9828065bdb241e53a352bf0",
      "parents": [
        "8f6035732a0484a84a1c9cd85312de234ddaa309"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jun 29 16:25:33 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jul 09 09:19:38 2009 +0300"
      },
      "message": "UBIFS: dump a little more in case of corruptions\n\nIn case of corruptions, dump 8192 bytes instead of 4096. The\nlargest node is 4096+ bytes, so it is better to see a node\nboundary, which is not always possible when only 4096 bytes\nare printed.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nReviewed-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "7fcd9c3ecbf09c0a77db7ba01aac75b32fb79a93",
      "tree": "de3fc29704e9f6301f6c67ffd352f9eb524538fd",
      "parents": [
        "1fb8bd01ed0af0d0577e010e8c6b4234de583fa6"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Thu Jul 02 17:15:47 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:19 2009 +0300"
      },
      "message": "UBIFS: allow more than one volume to be mounted\n\nUBIFS uses a bdi device per volume, but does not care to hand out unique\nnames to each of them. This causes an error when trying to mount more\nthan one volumes. Append the UBI volume and device ID to avoid that.\n\n[Amended a bit by Artem Bityutskiy]\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nCc: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nCc: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nCc: linux-mtd@lists.infradead.org\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "1fb8bd01ed0af0d0577e010e8c6b4234de583fa6",
      "tree": "ca8c24c96145a0ae45aa0ec6365e88aa8c5a9be3",
      "parents": [
        "681947d2fa1a00629de33c4df3ca72c39f06a14c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jun 28 18:31:58 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:19 2009 +0300"
      },
      "message": "UBIFS: fix assertion warning\n\nWhen debugging is enabled and an unclean file-system is mounter,\nthe following assertion is triggered:\n\nUBIFS assert failed in ubifs_tnc_start_commit at 805 (pid 1081)\nCall Trace:\n[cfaffbd0] [c0006cf8] show_stack+0x44/0x16c (unreliable)\n[cfaffc10] [c011b738] ubifs_tnc_start_commit+0xbb8/0xd18\n[cfaffc90] [c0112670] do_commit+0x150/0xa44\n[cfaffd10] [c0125234] ubifs_rcvry_gc_commit+0xd8/0x544\n[cfaffd60] [c0100e9c] ubifs_fill_super+0xe78/0x15f8\n[cfaffdf0] [c0102118] ubifs_get_sb+0x20c/0x320\n[cfaffe70] [c007f764] vfs_kern_mount+0x58/0xe0\n[cfaffe90] [c007f83c] do_kern_mount+0x40/0xf8\n[cfaffeb0] [c0095c24] do_mount+0x550/0x758\n[cfafff10] [c0095ebc] sys_mount+0x90/0xe0\n[cfafff40] [c000ed4c] ret_from_syscall+0x0/0x3c\n\nThe reason is that we initialize \u0027c-\u003emin_leb_idx\u0027 early, and do\nnot re-calculate it after journal replay.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "681947d2fa1a00629de33c4df3ca72c39f06a14c",
      "tree": "3a732a727fa35799fe7413ccff00d9bdacccedf6",
      "parents": [
        "44737589442bf69d811e003d9d0064b8fc1541d6"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Wed Jun 24 09:59:38 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:18 2009 +0300"
      },
      "message": "UBIFS: minor spelling and grammar fixes\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "44737589442bf69d811e003d9d0064b8fc1541d6",
      "tree": "8b75c1cb6fe22e95ac6235535e25960c47231ea9",
      "parents": [
        "cb54ef8b1304fe25f3d57031e0f85558a043239f"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Wed Jun 24 10:15:12 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:18 2009 +0300"
      },
      "message": "UBIFS: fix 64-bit divisions in debug print\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "cb54ef8b1304fe25f3d57031e0f85558a043239f",
      "tree": "47a6ed1628a6f7028b5f1befe0c67d84c6f4c5bc",
      "parents": [
        "2a35a3a8ab3e94afd631ed4b45878ceb98f7ab28"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jun 23 20:30:32 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:18 2009 +0300"
      },
      "message": "UBIFS: few spelling fixes\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "2a35a3a8ab3e94afd631ed4b45878ceb98f7ab28",
      "tree": "ff0c5dc8b420bfa4e4cf160b11e7d2902b7aed76",
      "parents": [
        "0b335b9d7d5f0b832e90ac469480789c07be80ad"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jun 23 20:26:33 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:17 2009 +0300"
      },
      "message": "UBIFS: set write-buffer timout to 3-5 seconds\n\nThis patch cleans up write-buffer timeout initialization and\nsets it to 3-5 interval.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "0b335b9d7d5f0b832e90ac469480789c07be80ad",
      "tree": "5001522f18092e1cafb538a74eedae3087c17145",
      "parents": [
        "70aee2f153972f70fad5f7025134fec063f9efbe"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jun 23 12:30:43 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:16 2009 +0300"
      },
      "message": "UBIFS: slightly optimize write-buffer timer usage\n\nThis patch adds the following minor optimization:\n\n1. If write-buffer does not use the timer, indicate it with the\n   wbuf-\u003eno_timer variable, instead of using the wbuf-\u003esoftlimit\n   variable. This is better because wbuf-\u003esoftlimit is of ktime_t\n   type, and the ktime_to_ns function contains 64-bit multiplication.\n\n2. Do not call the \u0027hrtimer_cancel()\u0027 function for write-buffers\n   which do not use timers.\n\n3. Do not cancel the timer in \u0027ubifs_put_super()\u0027 because the\n   synchronization function does this.\n\nThis patch also removes a confusing comment.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "70aee2f153972f70fad5f7025134fec063f9efbe",
      "tree": "d6a00fe0a8c900935c360abf7a622078f8d22afa",
      "parents": [
        "e3dc5a665d39112e98cfd5bbc7fda2963c00c12c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jun 18 13:37:15 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:16 2009 +0300"
      },
      "message": "UBIFS: improve debugging messaged\n\n1. Make the I/O debugging message print the journal head number.\n2. Add prints to timer functions.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "e3dc5a665d39112e98cfd5bbc7fda2963c00c12c",
      "tree": "b4f4c2ecec85bfb029f4ec31c56bb7477a86aba1",
      "parents": [
        "8e4a718ff38d8539938ec3421935904c27e00c39"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Mon Jun 22 17:31:09 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jul 05 18:45:15 2009 +0300"
      },
      "message": "UBIFS: fix integer overflow warning\n\nFix the following warning:\n\nfs/ubifs/io.c: In function \u0027ubifs_wbuf_init\u0027:\nfs/ubifs/io.c:860: warning: integer overflow in expression\n\nAnd limit maximum hrtimer delta to ULONG_MAX because the\nargument is \u0027unsigned long\u0027.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "073aaa1b142461d91f83da66db1184d7c1b1edea",
      "tree": "2b54d185d78f1229418fca521a93e6b55c57248b",
      "parents": [
        "06b16e9f68edaa1e71aee943d3c030bcf7380af1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 09 12:11:54 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 08:17:07 2009 -0400"
      },
      "message": "helpers for acl caching + switch to those\n\nhelpers: get_cached_acl(inode, type), set_cached_acl(inode, type, acl),\nforget_cached_acl(inode, type).\n\nubifs/xattr.c needed includes reordered, the rest is a plain switchover.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b7c142dbf1e7422d0be7f7faa3f1163ad9da9788",
      "tree": "6e62c8654bb9c329f89246235062ac2a289960df",
      "parents": [
        "0bd8df908de2aefe312d05bd25cd3abc21a6d1da",
        "f2c5dbd7b7396457efc114f825acfdd4db4608f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 17 09:46:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 17 09:46:33 2009 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.infradead.org/ubifs-2.6\n\n* \u0027linux-next\u0027 of git://git.infradead.org/ubifs-2.6:\n  UBIFS: start using hrtimers\n  hrtimer: export ktime_add_safe\n  UBIFS: do not forget to register BDI device\n  UBIFS: allow sync option in rootflags\n  UBIFS: remove dead code\n  UBIFS: use anonymous device\n  UBIFS: return proper error code if the compr is not present\n  UBIFS: return error if link and unlink race\n  UBIFS: reset no_space flag after inode deletion\n"
    },
    {
      "commit": "a979eff1811a07f5fd331c5f6f727370747b42ad",
      "tree": "0d01a02a3ad0ca590570feefc0e9be834b330b74",
      "parents": [
        "ad081f1430515d0b727eba99ec435a526c61a599"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 29 09:19:23 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jun 16 08:21:04 2009 +0200"
      },
      "message": "ubifs: register backing_dev_info\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "337eb00a2c3a421999c39c94ce7e33545ee8baa7",
      "tree": "d9b780d095b638b1d8fa23841ff70347cf5daa08",
      "parents": [
        "4195f73d1329e49727bcceb028e58cb38376c2b0"
      ],
      "author": {
        "name": "Alessio Igor Bogani",
        "email": "abogani@texware.it",
        "time": "Tue May 12 15:10:54 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:11 2009 -0400"
      },
      "message": "Push BKL down into -\u003eremount_fs()\n\n[xfs, btrfs, capifs, shmem don\u0027t need BKL, exempt]\n\nSigned-off-by: Alessio Igor Bogani \u003cabogani@texware.it\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6cfd0148425e528b859b26e436b01f23f6926224",
      "tree": "60e3257053554ff198fe5825e6f12a00c3b4422a",
      "parents": [
        "a9e220f8322e2b0e0b8903fe00265461cffad3f0"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 15:40:36 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:07 2009 -0400"
      },
      "message": "push BKL down into -\u003eput_super\n\nMove BKL into -\u003eput_super from the only caller.  A couple of\nfilesystems had trivial enough -\u003eput_super (only kfree and NULLing of\ns_fs_info + stuff in there) to not get any locking: coda, cramfs, efs,\nhugetlbfs, omfs, qnx4, shmem, all others got the full treatment.  Most\nof them probably don\u0027t need it, but I\u0027d rather sort that out individually.\nPreferably after all the other BKL pushdowns in that area.\n\n[AV: original used to move lock_super() down as well; these changes are\nremoved since we don\u0027t do lock_super() at all in generic_shutdown_super()\nnow]\n[AV: fuse, btrfs and xfs are known to need no damn BKL, exempt]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5af7926ff33b68b3ba46531471c6e0564b285efc",
      "tree": "a25266f9db482ce9dd8e663148ffb0f1a524bd83",
      "parents": [
        "e5004753388dcf5e1b8a52ac0ab807d232340fbb"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue May 05 15:41:25 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Jun 11 21:36:06 2009 -0400"
      },
      "message": "enforce -\u003esync_fs is only called for rw superblock\n\nMake sure a superblock really is writeable by checking MS_RDONLY\nunder s_umount.  sync_filesystems needed some re-arragement for\nthat, but all but one sync_filesystem caller had the correct locking\nalready so that we could add that check there.  cachefiles grew\ns_umount locking.\n\nI\u0027ve also added a WARN_ON to sync_filesystem to assert this for\nfuture callers.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f2c5dbd7b7396457efc114f825acfdd4db4608f8",
      "tree": "9c65570230dfc05b8580c86db0154b6b2a98515c",
      "parents": [
        "8daa21e61be47a5b136c4ee1be82e391a5788696"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu May 28 16:24:15 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jun 08 11:14:58 2009 +0300"
      },
      "message": "UBIFS: start using hrtimers\n\nUBIFS uses timers for write-buffer write-back. It is not\ncrucial for us to write-back exactly on time. We are fine\nto write-back a little earlier or later. And this means\nwe may optimize UBIFS timer so that it could be groped\nwith a close timer event, so that the CPU would not be\nwaken up just to do the write back. This is optimization\nto lessen power consumption, which is important in\nembedded devices UBIFS is used for.\n\nhrtimers have a nice feature: they are effectively range\ntimers, and we may defind the soft and hard limits for\nit. Standard timers do not have these feature. They may\nonly be made deferrable, but this means there is effectively\nno hard limit. So, we will better use hrtimers.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "3f36406f26437afae9f43cc6dcfc264143e21ed0",
      "tree": "358eccc333476a45d9071f0c63a90f936a325119",
      "parents": [
        "8379ea31e991ed2098660954d25f64386adee65c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri May 29 20:16:27 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jun 08 11:14:21 2009 +0300"
      },
      "message": "UBIFS: do not forget to register BDI device\n\nReviewed-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "8379ea31e991ed2098660954d25f64386adee65c",
      "tree": "1232942ea268f7d6a4231f841a819564050e4c66",
      "parents": [
        "428ff9d2e37d3a82af0f56b476f70c244cf550d1"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri May 29 12:34:52 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jun 02 11:08:07 2009 +0300"
      },
      "message": "UBIFS: allow sync option in rootflags\n\nWhen passing UBIFS parameters via kernel command line, the\nsync option will be passed to UBIFS as a string, not as an\nMS_SYNCHRONOUS flag. Teach UBIFS interpreting this flag.\n\nReported-by: Aurélien GÉRÔME \u003cag@debian.org\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "428ff9d2e37d3a82af0f56b476f70c244cf550d1",
      "tree": "9274401523df72cfe02ffafc57bbea7f2a9b7a87",
      "parents": [
        "7c83f5cb551b2e5c4934933fda006636f7424123"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon May 25 16:59:28 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri May 29 14:38:37 2009 +0300"
      },
      "message": "UBIFS: remove dead code\n\nUBIFS assumes that @c-\u003emin_io_size is 8 in case of NOR flash. This\nis because UBIFS alignes all nodes to 8-byte boundary, and maintaining\n@c-\u003emin_io_size introduced unnecessary complications.\n\nThis patch removes senseless constructs like:\n\nif (c-\u003emin_io_size \u003d\u003d 1)\n\tNOR-specific code\n\nAlso, few commentaries amendments.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "7c83f5cb551b2e5c4934933fda006636f7424123",
      "tree": "6b4393743ee63ffdbfb734d3f2daf059e8874508",
      "parents": [
        "8eec2f36fb869f1e6d81d834bbbd487941222fc8"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon May 25 19:23:04 2009 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue May 26 12:37:11 2009 +0300"
      },
      "message": "UBIFS: use anonymous device\n\nUBIFS has erroneuosly set \u0027sb-\u003es_dev\u0027 to the UBI volume\ncharacter device major/minor. This may lead to clashes\nif there is another FS mounted to a block device with\nthe same major/minor numbers. User-space programs which\nuse \u0027stat-\u003est_dev\u0027 may get confused because of this.\n\nThis problem was found by Al Viro. He also pointed the\nway to fix the problem - use \u0027set_anon_super()\u0027 and\n\u0027kill_anon_super()\u0027 VFS helpers.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "8eec2f36fb869f1e6d81d834bbbd487941222fc8",
      "tree": "166dd7244dc187cd59e51af5541b1b1ca854b111",
      "parents": [
        "8b3884a841f398f6e0a0411d6929d8d9381bb265"
      ],
      "author": {
        "name": "Corentin Chary",
        "email": "corentincj@iksaif.net",
        "time": "Mon May 25 08:49:10 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon May 25 12:28:27 2009 +0300"
      },
      "message": "UBIFS: return proper error code if the compr is not present\n\nIf the compressor is not present, mount_ubifs need\nto return an error code. This way ubifs_fill_super\nwill stop and handle the error.\n\nSigned-off-by: Corentin Chary \u003ccorentincj@iksaif.net\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "8b3884a841f398f6e0a0411d6929d8d9381bb265",
      "tree": "01bbbaad779c43b14ea3e809c5fc9271eca257d4",
      "parents": [
        "6d6cb0d688d0f262cb4fd5771648b0ac01d4f82c"
      ],
      "author": {
        "name": "Hunter Adrian",
        "email": "adrian.hunter@nokia.com",
        "time": "Thu May 14 06:32:30 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue May 19 11:01:31 2009 +0300"
      },
      "message": "UBIFS: return error if link and unlink race\n\nConsider a scenario when \u0027vfs_link(dirA/fileA)\u0027 and\n\u0027vfs_unlink(dirA/fileA, dirB/fileB)\u0027 race. \u0027vfs_link()\u0027 does not\nlock \u0027dirA-\u003ei_mutex\u0027, so this is possible. Both of the functions\nlock \u0027fileA-\u003ei_mutex\u0027 though. Suppose \u0027vfs_unlink()\u0027 wins, and takes\n\u0027fileA-\u003ei_mutex\u0027 mutex first. Suppose \u0027fileA-\u003ei_nlink\u0027 is 1. In this\ncase \u0027ubifs_unlink()\u0027 will drop the last reference, and put \u0027inodeA\u0027\nto the list of orphans. After this, \u0027vfs_link()\u0027 will link\n\u0027dirB/fileB\u0027 to \u0027inodeA\u0027. Thir is a problem because, for example,\nthe subsequent \u0027vfs_unlink(dirB/fileB)\u0027 will add the same inode\nto the list of orphans.\n\nThis problem was reported by J. R. Okajima \u003chooanon05@yahoo.co.jp\u003e\n\n[Artem: add more comments, amended commit message]\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "6f5bbff9a1b7d6864a495763448a363bbfa96324",
      "tree": "0067dca46f40def1c55541c34c262e06aeb8c4c8",
      "parents": [
        "74dbbdd7fdc11763f4698d2f3e684cf4446951e6"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 06 01:34:22 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:49:40 2009 -0400"
      },
      "message": "Convert obvious places to deactivate_locked_super()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6d6cb0d688d0f262cb4fd5771648b0ac01d4f82c",
      "tree": "b4e0f50358029650f0047ffe1f9c48e24c420584",
      "parents": [
        "091438dd5668396328a3419abcbc6591159eb8d1"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Wed Apr 08 14:07:57 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed May 06 10:37:56 2009 +0300"
      },
      "message": "UBIFS: reset no_space flag after inode deletion\n\nWhen UBIFS runs out of space it spends a lot of time trying to\nfind more space before returning ENOSPC.  As there is no point\nrepeating that unless something has changed, UBIFS has an\noptimization to record that the file system is 100% full and not\ntry to find space.  That flag was not being reset when a pending\ndeletion was finally done.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nReviewed-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "e0724bf6e4a1f2e678d2b2aab01cae22e17862f0",
      "tree": "559a8fa8e7a92f8ae0e0a27d4e71f408fa7cec62",
      "parents": [
        "38d9aefb5ce8f26358b0d5cd933cfa9e267105b1",
        "de0975781a1a8bc92e07eb7681d10ef9bb5e6df9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 15:00:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 06 15:00:19 2009 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.infradead.org/ubifs-2.6\n\n* \u0027linux-next\u0027 of git://git.infradead.org/ubifs-2.6:\n  UBIFS: fix recovery bug\n  UBIFS: add R/O compatibility\n  UBIFS: fix compiler warnings\n  UBIFS: fully sort GCed nodes\n  UBIFS: fix commentaries\n  UBIFS: introduce a helpful variable\n  UBIFS: use KERN_CONT\n  UBIFS: fix lprops committing bug\n  UBIFS: fix bogus assertion\n  UBIFS: fix bug where page is marked uptodate when out of space\n  UBIFS: amend key_hash return value\n  UBIFS: improve find function interface\n  UBIFS: list usage cleanup\n  UBIFS: fix dbg_chk_lpt_sz()\n"
    },
    {
      "commit": "811158b147a503fbdf9773224004ffd32002d1fe",
      "tree": "0a11dcfefe721bfc38ea9f1f4a238822dbae0dda",
      "parents": [
        "4e76c5ccd5ac9bd003467d3bb0f49b18572dd4cd",
        "b26e0ed4936b743b693a4cc1413561fa3e4eaf65"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 03 15:24:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 03 15:24:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (28 commits)\n  trivial: Update my email address\n  trivial: NULL noise: drivers/mtd/tests/mtd_*test.c\n  trivial: NULL noise: drivers/media/dvb/frontends/drx397xD_fw.h\n  trivial: Fix misspelling of \"Celsius\".\n  trivial: remove unused variable \u0027path\u0027 in alloc_file()\n  trivial: fix a pdlfush -\u003e pdflush typo in comment\n  trivial: jbd header comment typo fix for JBD_PARANOID_IOFAIL\n  trivial: wusb: Storage class should be before const qualifier\n  trivial: drivers/char/bsr.c: Storage class should be before const qualifier\n  trivial: h8300: Storage class should be before const qualifier\n  trivial: fix where cgroup documentation is not correctly referred to\n  trivial: Give the right path in Documentation example\n  trivial: MTD: remove EOL from MODULE_DESCRIPTION\n  trivial: Fix typo in bio_split()\u0027s documentation\n  trivial: PWM: fix of #endif comment\n  trivial: fix typos/grammar errors in Kconfig texts\n  trivial: Fix misspelling of firmware\n  trivial: cgroups: documentation typo and spelling corrections\n  trivial: Update contact info for Jochen Hein\n  trivial: fix typo \"resgister\" -\u003e \"register\"\n  ...\n"
    },
    {
      "commit": "c2ec175c39f62949438354f603f4aa170846aabb",
      "tree": "f2c9bf1bec2deabe2d3a5092405b027637b6ead3",
      "parents": [
        "c2fdf3a9b2d52842808a8e551b53b55dd9b45030"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Mar 31 15:23:21 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:14 2009 -0700"
      },
      "message": "mm: page_mkwrite change prototype to match fault\n\nChange the page_mkwrite prototype to take a struct vm_fault, and return\nVM_FAULT_xxx flags.  There should be no functional change.\n\nThis makes it possible to return much more detailed error information to\nthe VM (and also can provide more information eg.  virtual_address to the\ndriver, which might be important in some special cases).\n\nThis is required for a subsequent fix.  And will also make it easier to\nmerge page_mkwrite() with fault() in future.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Mark Fasheh \u003cmfasheh@suse.com\u003e\nCc: Joel Becker \u003cjoel.becker@oracle.com\u003e\nCc: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nCc: Felix Blyakher \u003cfelixb@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de0975781a1a8bc92e07eb7681d10ef9bb5e6df9",
      "tree": "0612ff6bcb230a317013ae0796606640dc862bb7",
      "parents": [
        "963f0cf6d116d83c558a8efe9045c1c5ad7aed34"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Fri Mar 20 11:09:04 2009 +0100"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Mar 31 14:58:40 2009 +0300"
      },
      "message": "UBIFS: fix recovery bug\n\nUBIFS did not recovery in a situation in which it could\nhave. The relevant function assumed there could not be\nmore nodes in an eraseblock after a corrupted node, but\nin fact the last (NAND) page written might contain anything.\nThe correct approach is to check for empty space (0xFF bytes)\nfrom then on.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "692105b8ac5bcd75dc65f6a8f10bdbd0f0f34dcf",
      "tree": "e079cea0948d250e5411befe0c5cca7c97bcf860",
      "parents": [
        "877d03105d04b2c13e241130277fa69c8d2564f0"
      ],
      "author": {
        "name": "Matt LaPlante",
        "email": "kernel1@cyberdogtech.com",
        "time": "Mon Jan 26 11:12:25 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 30 15:22:01 2009 +0200"
      },
      "message": "trivial: fix typos/grammar errors in Kconfig texts\n\nSigned-off-by: Matt LaPlante \u003ckernel1@cyberdogtech.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "a3ec947c85ec339884b30ef6a08133e9311fdae1",
      "tree": "c3cc5859a6b6d8986547405b6c5bd11bc8916114",
      "parents": [
        "585d3bc06f4ca57f975a5a1f698f65a45ea66225"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.vnet.ibm.com",
        "time": "Wed Mar 04 12:06:34 2009 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 27 14:44:03 2009 -0400"
      },
      "message": "vfs: simple_set_mnt() should return void\n\nsimple_set_mnt() is defined as returning \u0027int\u0027 but always returns 0.\nCallers assume simple_set_mnt() never fails and don\u0027t properly cleanup if\nit were to _ever_ fail.  For instance, get_sb_single() and get_sb_nodev()\nshould:\n\n        up_write(sb-\u003es_unmount);\n        deactivate_super(sb);\n\nif simple_set_mnt() fails.\n\nSince simple_set_mnt() never fails, would be cleaner if it did not\nreturn anything.\n\n[akpm@linux-foundation.org: fix build]\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.vnet.ibm.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.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: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "963f0cf6d116d83c558a8efe9045c1c5ad7aed34",
      "tree": "43937f0d742bfac7dfc1a00bae8f72e98dc87425",
      "parents": [
        "fcabb3479e2b15abfd2d2ef5363295f16e98b2d7"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Mar 26 12:51:21 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Mar 26 16:36:20 2009 +0200"
      },
      "message": "UBIFS: add R/O compatibility\n\nNow UBIFS is supported by u-boot. If we ever decide to change the\nmedia format, then people will have to upgrade their u-boots to\nmount new format images. However, very often it is possible to\npreserve R/O forward-compatibility, even though the write\nforward-compatibility is not preserved.\n\nThis patch introduces a new super-block field which stores the\nR/O compatibility version.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nAcked-by: Adrian Hunter \u003cAdrian.Hunter@nokia.com\u003e\n"
    },
    {
      "commit": "fcabb3479e2b15abfd2d2ef5363295f16e98b2d7",
      "tree": "52b8a3e6cd23af90ffaaed110f05cfd61741b764",
      "parents": [
        "f10770f5e56b4297701fd7c3e551b206f98d7ac2"
      ],
      "author": {
        "name": "Hunter Adrian",
        "email": "adrian.hunter@nokia.com",
        "time": "Wed Mar 18 12:29:39 2009 +0100"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 20 19:13:21 2009 +0200"
      },
      "message": "UBIFS: fix compiler warnings\n\nfs/ubifs/super.c: In function ‘ubifs_show_options’:\nfs/ubifs/super.c:425: warning: format not a string literal and no format arguments\nfs/ubifs/super.c: In function ‘mount_ubifs’:\nfs/ubifs/super.c:1204: warning: format not a string literal and no format arguments\nfs/ubifs/super.c: In function ‘ubifs_remount_rw’:\nfs/ubifs/super.c:1557: warning: format not a string literal and no format arguments\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "f10770f5e56b4297701fd7c3e551b206f98d7ac2",
      "tree": "5fad34defa002857fca21dfde03e3813d68cfb4b",
      "parents": [
        "7d4e9ccb435e51e013e63abd340b4f496428139c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Mar 08 15:13:00 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 20 19:12:00 2009 +0200"
      },
      "message": "UBIFS: fully sort GCed nodes\n\nThe \u0027joinup()\u0027 function cannot deal with situations when nodes\ngo in reverse order - it just leaves them in this order. This\npatch implement full nodes sorting using n*log(n) algorithm.\nIt sorts data nodes for bulk-read, and direntry nodes for\nreaddir().\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "7d4e9ccb435e51e013e63abd340b4f496428139c",
      "tree": "c61d7f4b984cf67de137f8a8f821e1dc4da3fa50",
      "parents": [
        "fb1cd01a33ecb8a49d590c034ba146dff80c5597"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 20 19:11:12 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Mar 20 19:11:12 2009 +0200"
      },
      "message": "UBIFS: fix commentaries\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "fb1cd01a33ecb8a49d590c034ba146dff80c5597",
      "tree": "d963edf8512c6979fd7c8a34b6550a81e9828128",
      "parents": [
        "c9927c3ee2d3d14893efd793a2a9ea772ddb4289"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Mar 16 09:56:57 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Mar 16 10:52:02 2009 +0200"
      },
      "message": "UBIFS: introduce a helpful variable\n\nThis patch introduces a helpful @c-\u003eidx_leb_size variable.\nThe patch also fixes some spelling issues and makes comments\nuse \"LEB\" instead of \"eraseblock\", which is more correct.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "c9927c3ee2d3d14893efd793a2a9ea772ddb4289",
      "tree": "f1ed930413d6dd2f81c46c226d288310622c02c6",
      "parents": [
        "0a6fb8d9c435c612171b453449f98da28e9969a5"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Mar 16 09:42:03 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Mar 16 10:52:02 2009 +0200"
      },
      "message": "UBIFS: use KERN_CONT\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "0a6fb8d9c435c612171b453449f98da28e9969a5",
      "tree": "e7a10938b7af3d59f452d9116adb9004fa63655c",
      "parents": [
        "b221337ae4ef9baff84d6d5ecb806e79a5597329"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sat Mar 14 16:35:27 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Mar 16 10:51:51 2009 +0200"
      },
      "message": "UBIFS: fix lprops committing bug\n\nWhen writing lprop nodes, do not forget to set @from to 0 when\nswitching the LEB. This fixes the following bug:\n\nUBIFS error (pid 27768): ubifs_leb_write: writing -15456 bytes at 16:15880, error -22\nUBIFS error (pid 27768): do_commit: commit failed, error -22\nUBIFS warning (pid 27768): ubifs_ro_mode: switched to read-only mode, error -22\nPid: 27768, comm: freespace Not tainted 2.6.29-rc4-ubifs-2.6 #43\nCall Trace:\n [\u003cffffffffa00c46d6\u003e] ubifs_ro_mode+0x54/0x56 [ubifs]\n [\u003cffffffffa00cfa16\u003e] do_commit+0x4f5/0x50a [ubifs]\n [\u003cffffffffa00cfae7\u003e] ubifs_run_commit+0xbc/0xdb [ubifs]\n [\u003cffffffffa00d42b9\u003e] ubifs_budget_space+0x742/0x9ed [ubifs]\n [\u003cffffffff812daf45\u003e] ? __mutex_lock_common+0x361/0x3ae\n [\u003cffffffffa00bc437\u003e] ? ubifs_write_begin+0x18d/0x44c [ubifs]\n [\u003cffffffffa00bc5cb\u003e] ubifs_write_begin+0x321/0x44c [ubifs]\n [\u003cffffffff8106222b\u003e] ? trace_hardirqs_on_caller+0x1f/0x14d\n [\u003cffffffff81097ce2\u003e] generic_file_buffered_write+0x12f/0x2d9\n [\u003cffffffff8109828d\u003e] __generic_file_aio_write_nolock+0x261/0x295\n [\u003cffffffff81098aff\u003e] generic_file_aio_write+0x69/0xc5\n [\u003cffffffffa00bb914\u003e] ubifs_aio_write+0x14c/0x19e [ubifs]\n [\u003cffffffff810c8f42\u003e] do_sync_write+0xe7/0x12d\n [\u003cffffffff81055378\u003e] ? autoremove_wake_function+0x0/0x38\n [\u003cffffffff81149edc\u003e] ? security_file_permission+0x11/0x13\n [\u003cffffffff810c9827\u003e] vfs_write+0xab/0x105\n [\u003cffffffff810c9945\u003e] sys_write+0x47/0x6f\n [\u003cffffffff8100c35b\u003e] system_call_fastpath+0x16/0x1b\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "b221337ae4ef9baff84d6d5ecb806e79a5597329",
      "tree": "5dafb3b31751fee5c50656be2157bc9865732f7d",
      "parents": [
        "f55aa59106b66cd547c8f296e0b3430ad76554c5"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Mar 15 17:20:22 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Mar 15 17:20:22 2009 +0200"
      },
      "message": "UBIFS: fix bogus assertion\n\nEmpty journal head LEBs are accounted as taken empty as well, so\nthe GC LEB does not have to be the only taken empty LEB when\nnounting/remounting.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "f55aa59106b66cd547c8f296e0b3430ad76554c5",
      "tree": "bcfbbf27c804ea19d10283d341602a0ef8c35c29",
      "parents": [
        "cb4f952db3a01a2d56eb17e0eb00ce99ae5f0f50"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Mon Feb 23 12:47:25 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sat Mar 14 16:46:33 2009 +0200"
      },
      "message": "UBIFS: fix bug where page is marked uptodate when out of space\n\nUBIFS fast path in write_begin may mark a page up to date\nand then discover that there may not be enough space to do\nthe write, and so fall back to a slow path.  The slow path\ntries harder, but may still find no space - leaving the page\nmarked up to date, when it is not.  This patch ensures that\nthe page is marked not up to date in that case.\n\nThe bug that this patch fixes becomes evident when the write\nis into a hole (sparse file) or is at the end of the file\nand a subsequent read is off the end of the file.  In both\ncases, the file system should return zeros but was instead\nreturning the page that had not been written because the\nfile system was out of space.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "cb4f952db3a01a2d56eb17e0eb00ce99ae5f0f50",
      "tree": "e89f82054ff0bfcb143a24ab621ac6d3a7261cb7",
      "parents": [
        "3edaae7c5bda085b7dc704fe379f35b85e6f493e"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sat Mar 07 20:53:41 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Mar 08 13:29:41 2009 +0200"
      },
      "message": "UBIFS: amend key_hash return value\n\n... which should be uint32_t, not int.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "3edaae7c5bda085b7dc704fe379f35b85e6f493e",
      "tree": "40c8434ceff13de1c450a362b3f36dcb31c0e604",
      "parents": [
        "ec32816f94a0baf90f5e73033dcdbc8679c7f91d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Mar 03 19:22:53 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Mar 08 13:29:09 2009 +0200"
      },
      "message": "UBIFS: improve find function interface\n\nMake \u0027ubifs_find_free_space()\u0027 return offset where free space starts,\nrather than the amount of free space. This is just more appropriat\nfor its caller.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "ec32816f94a0baf90f5e73033dcdbc8679c7f91d",
      "tree": "c8b1c9b3d4f782e131c621ae27a7cf74de041995",
      "parents": [
        "2bc275e9b04f23708c495a8bfe92a5f4b65345c8"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Fri Feb 13 09:13:11 2009 +0100"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Feb 17 12:45:22 2009 +0200"
      },
      "message": "UBIFS: list usage cleanup\n\nTrivial cleanup, list_del(); list_add{,_tail}() is equivalent\nto list_move{,_tail}(). Semantic patch for coccinelle can be\nfound at www.cccmz.de/~snakebyte/list_move_tail.spatch\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "2bc275e9b04f23708c495a8bfe92a5f4b65345c8",
      "tree": "a93befc5ebc2e655e87167283f9e10a4eabf5161",
      "parents": [
        "d5b562330ec766292a3ac54ae5e0673610bd5b3d"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Thu Feb 05 13:08:11 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Feb 09 13:52:49 2009 +0200"
      },
      "message": "UBIFS: fix dbg_chk_lpt_sz()\n\nThe debugging function dbg_chk_lpt_sz() was not working\ncorrectly for small min_io_unit size e.g. NOR flash.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "27ad27993313312a4ad0047d0a944c425cd511a5",
      "tree": "e80043a796d012e60ba7ed17c38cc13e5a56f888",
      "parents": [
        "a2b9df3ff691db8e5e521dccd231a8098bbf7416"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 29 16:34:30 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 29 16:34:30 2009 +0200"
      },
      "message": "UBIFS: remove fast unmounting\n\nThis UBIFS feature has never worked properly, and it was a mistake\nto add it because we simply have no use-cases. So, lets still accept\nthe fast_unmount mount option, but ignore it. This does not change\nmuch, because UBIFS commit in sync_fs anyway, and sync_fs is called\nwhile unmounting.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "a2b9df3ff691db8e5e521dccd231a8098bbf7416",
      "tree": "50a12bd4d40a27d7a605aa55e3d770b4af3c8576",
      "parents": [
        "b466f17d780c5b72427f36aef22ecdec9f1d0689"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 29 16:22:54 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 29 16:22:54 2009 +0200"
      },
      "message": "UBIFS: return sensible error codes\n\nWhen mounting/re-mounting, UBIFS returns EINVAL even if the ENOSPC\nor EROFS codes are are much better, just because we have not found\nreferences to ENOSPC/EROFS in mount (2) man pages. This patch\nchanges this behaviour and makes UBIFS return real error code,\nbecause:\n\n1. It is just less confusing and more logical\n2. mount is not described in SuSv3, so it seems to be not really\n   well-standartized\n3. we do not cover all cases, and any random undocumented in man\n   pages error code may be returned anyway\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "b466f17d780c5b72427f36aef22ecdec9f1d0689",
      "tree": "09346513db7a7563f9a79ec0e6ec56b8536fabe9",
      "parents": [
        "227c75c91dbfa037d109ab7ef45b7f5ba9cab6d0"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Thu Jan 29 12:59:33 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 29 16:19:36 2009 +0200"
      },
      "message": "UBIFS: remount ro fixes\n\n- preserve the idx_gc list - it will be needed in the same\nstate, should UBIFS be remounted rw again\n- prevent remounting ro if we have switched to read only\nmode (due to a fatal error)\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "227c75c91dbfa037d109ab7ef45b7f5ba9cab6d0",
      "tree": "605bf9ec3f49a5209d9efac23ef6ba47baf44072",
      "parents": [
        "3eb14297c4b85af0c5e6605e18d93b6031330d71"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Thu Jan 29 11:53:51 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 29 16:15:51 2009 +0200"
      },
      "message": "UBIFS: spelling fix \u0027date\u0027 -\u003e \u0027data\u0027\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "3eb14297c4b85af0c5e6605e18d93b6031330d71",
      "tree": "a029c57515d69fafeddbe60f43b6eb1f6f29c7f0",
      "parents": [
        "4a29d2005b0f28d018d36d209c47f3973a725df5"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Thu Jan 29 11:17:24 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 29 16:15:39 2009 +0200"
      },
      "message": "UBIFS: sync wbufs after syncing inodes and pages\n\nAll writes go through wbufs so they must be sync\u0027d\nafter syncing inodes and pages.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "4a29d2005b0f28d018d36d209c47f3973a725df5",
      "tree": "4247a356d08e79fb72367f9b13f861da466315f4",
      "parents": [
        "6f7ab6d458bbfc2f55d295fa3e6b9e69cdb1d517"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Tue Jan 27 15:22:54 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Wed Jan 28 16:02:07 2009 +0200"
      },
      "message": "UBIFS: fix LPT out-of-space bug (again)\n\nThe function to traverse and dirty the LPT was still not\ndirtying all nodes, with the result that the LPT could\nrun out of space.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "6f7ab6d458bbfc2f55d295fa3e6b9e69cdb1d517",
      "tree": "7d07f5ff88d205a652998c2fd281e7123ba9a112",
      "parents": [
        "6ba87c9b920bea8c2703308d31eb7de925242c30"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jan 27 16:12:31 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jan 27 16:25:10 2009 +0200"
      },
      "message": "UBIFS: fix no_chk_data_crc\n\nWhen data CRC checking is disabled, UBIFS returns incorrect return\ncode from the \u0027try_read_node()\u0027 function (0 instead of 1, which means\nCRC error), which make the caller re-read the data node again, but using\na different code patch, so the second read is fine. Thus, we read the\nsame node twice. And the result of this is that UBIFS is slower\nwith no_chk_data_crc option than it is with chk_data_crc option.\nThis patches fixes the problem.\n\nReported-by: Reuben Dowle \u003cReuben.Dowle@navico.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "6ba87c9b920bea8c2703308d31eb7de925242c30",
      "tree": "a83b51da6884e483f78ff85c81f37e9e4e66f064",
      "parents": [
        "49d128aa60751a010640f4763d11577e2f508853"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 26 16:12:20 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 26 18:22:47 2009 +0200"
      },
      "message": "UBIFS: fix assertions\n\nI introduce wrong assertions in one of the previous commits, this\npatch fixes them.\n\nAlso, initialize debugfs after the debugging check. This is a little\nnicer because we want the FS data to be accessible to external users\nafter everything has been initialized.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "49d128aa60751a010640f4763d11577e2f508853",
      "tree": "e74af898443112bf1e323e019b6c1a74f7e5d415",
      "parents": [
        "b4978e949104844224ecf786170c9263efa601f3"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Mon Jan 26 10:55:40 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 26 12:54:11 2009 +0200"
      },
      "message": "UBIFS: ensure orphan area head is initialized\n\nWhen mounting read-only the orphan area head is\nnot initialized.  It must be initialized when\nremounting read/write, but it was not.  This patch\nfixes that.\n\n[Artem: sorry, added comment tweaking noise]\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "b4978e949104844224ecf786170c9263efa601f3",
      "tree": "a8002df0e1f8feace090a6dcd5ea294ab55f2060",
      "parents": [
        "84abf972ccff5c13d10b672972949eba431a6e0e"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jan 23 18:23:03 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 26 12:54:11 2009 +0200"
      },
      "message": "UBIFS: always clean up GC LEB space\n\nWhen we mount UBIFS, GC LEB may contain out-of-date information,\nand UBIFS should update lprops and set free space for thei LEB.\nCurrently UBIFS does this only if mounted R/W. But for R/O mount\nwe have to do the same, because otherwise we will have incorrect\nFS free space reported to user-space.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "84abf972ccff5c13d10b672972949eba431a6e0e",
      "tree": "378ebf8a77fbc1f906fa8eee2472f8bd6d935772",
      "parents": [
        "e4d9b6cbfc98d696a28d2c24a3d49768695811ee"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jan 23 14:54:59 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 26 12:54:11 2009 +0200"
      },
      "message": "UBIFS: add re-mount debugging checks\n\nWe observe space corrupted accounting when re-mounting. So add some\ndebbugging checks to catch problems like this.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "e4d9b6cbfc98d696a28d2c24a3d49768695811ee",
      "tree": "5d76848d68add2830efa29b16425e2f07b4f1967",
      "parents": [
        "82c1593cad3dfc97661764c8bc62aa1a416e9ea8"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jan 23 14:17:36 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 26 12:54:11 2009 +0200"
      },
      "message": "UBIFS: fix LEB list freeing\n\nWhen freeing the c-\u003eidx_lebs list, we have to release the LEBs as well,\nbecause we might be called from mount to read-only mode code. Otherwise\nthe LEBs stay taken forever, which may cause problems when we re-mount\nback ro RW mode.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "82c1593cad3dfc97661764c8bc62aa1a416e9ea8",
      "tree": "7c4b6e31f620f289d6cdb74ec316f2fc76fdd137",
      "parents": [
        "7078202e55b565582fcbd831a8dd3069bdc72610"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jan 20 16:46:02 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 26 12:54:11 2009 +0200"
      },
      "message": "UBIFS: simplify locking\n\nThis patch simplifies lock_[23]_inodes functions. We do not have\nto care about locking order, because UBIFS does this for @i_mutex\nand this is enough. Thanks to Al Viro for suggesting this.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "7078202e55b565582fcbd831a8dd3069bdc72610",
      "tree": "0f8cabaa23a05210cc1b95a97d7cab490f38ebca",
      "parents": [
        "a50412e3f8ce95d7ed558370d7dde5171fd04283"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jan 19 19:57:27 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jan 20 10:10:47 2009 +0200"
      },
      "message": "UBIFS: document dark_wm and dead_wm better\n\nJust add more commentaries. Also some commentary fixes for\nlprops flags.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "a50412e3f8ce95d7ed558370d7dde5171fd04283",
      "tree": "be46a9482e613f77f2154b085292ba3dcdabe8d6",
      "parents": [
        "e8b815663b1bfd9c255af5176604ec0eafdf6ed7"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jan 06 19:54:02 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Tue Jan 20 10:10:31 2009 +0200"
      },
      "message": "UBIFS: do not treat all data as short term\n\nUBIFS wrongly tells UBI that all data is short term. Use proper\nhints instead. Thanks to Xiaochuan-Xu for noticing this.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "e8b815663b1bfd9c255af5176604ec0eafdf6ed7",
      "tree": "63eea164bed606905200177f18391238102bda40",
      "parents": [
        "dedb0d48a9d4d57086526b94a4b64da789a646e4"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Thu Jan 15 17:43:23 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jan 18 14:05:08 2009 +0200"
      },
      "message": "UBIFS: constify operations\n\nMark super, file, and inode operation structcutes with \u0027const\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    },
    {
      "commit": "dedb0d48a9d4d57086526b94a4b64da789a646e4",
      "tree": "4771fbc7593b606bc9e88941590a7b4f0b480d82",
      "parents": [
        "1de9e8e70f5acc441550ca75433563d91b269bbe"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Fri Jan 09 21:02:37 2009 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Sun Jan 18 14:04:57 2009 +0200"
      },
      "message": "UBIFS: do not commit twice\n\nVFS calls \u0027-\u003esync_fs()\u0027 twice - first time with @wait \u003d 0, second\ntime with @wait \u003d 1. As a result, we may commit and synchronize\nwrite-buffers twice. Avoid doing this by returning immediatelly if\n@wait \u003d 0.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\n"
    }
  ],
  "next": "57c44c5f6fb0a8002feb258c1af58e1a744b1fcb"
}
