)]}'
{
  "log": [
    {
      "commit": "48476df99894492a0f7239f2f3c9a2dde4ff38e2",
      "tree": "5a1b80f20449968f0de6e5bfbcda5e360e31ba1f",
      "parents": [
        "37cae6ad4c484030fa972241533c32730ec79b7d",
        "24dea0c9feccf699749f860fa2f4ccd84d30390d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 16:33:54 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 16:33:54 2013 -0800"
      },
      "message": "Merge tag \u0027for-linus-20130301\u0027 of git://git.infradead.org/linux-mtd\n\nPull MTD update from David Woodhouse:\n \"Fairly unexciting MTD merge for 3.9:\n\n   - misc clean-ups in the MTD command-line partitioning parser\n     (cmdlinepart)\n   - add flash locking support for STmicro chips serial flash chips, as\n     well as for CFI command set 2 chips.\n   - new driver for the ELM error correction HW module found in various\n     TI chips, enable the OMAP NAND driver to use the ELM HW error\n     correction\n   - added number of new serial flash IDs\n   - various fixes and improvements in the gpmi NAND driver\n   - bcm47xx NAND driver improvements\n   - make the mtdpart module actually removable\"\n\n* tag \u0027for-linus-20130301\u0027 of git://git.infradead.org/linux-mtd: (45 commits)\n  mtd: map: BUG() in non handled cases\n  mtd: bcm47xxnflash: use pr_fmt for module prefix in messages\n  mtd: davinci_nand: Use managed resources\n  mtd: mtd_torturetest can cause stack overflows\n  mtd: physmap_of: Convert device allocation to managed devm_kzalloc()\n  mtd: at91: atmel_nand: for PMECC, add code to check the ONFI parameter ECC requirement.\n  mtd: atmel_nand: make pmecc-cap, pmecc-sector-size in dts is optional.\n  mtd: atmel_nand: avoid to report an error when lookup table offset is 0.\n  mtd: bcm47xxsflash: adjust names of bus-specific functions\n  mtd: bcm47xxpart: improve probing of nvram partition\n  mtd: bcm47xxpart: add support for other erase sizes\n  mtd: bcm47xxnflash: register this as normal driver\n  mtd: bcm47xxnflash: fix message\n  mtd: bcm47xxsflash: register this as normal driver\n  mtd: bcm47xxsflash: write number of written bytes\n  mtd: gpmi: add sanity check for the ECC\n  mtd: gpmi: set the Golois Field bit for mx6q\u0027s BCH\n  mtd: devices: elm: Removes \u003cxx\u003e literals in elm DT node\n  mtd: gpmi: fix a dereferencing freed memory error\n  mtd: fix the wrong timeo for panic_nand_wait()\n  ...\n"
    },
    {
      "commit": "496ad9aa8ef448058e36ca7a787c61f2e63f0f54",
      "tree": "8f4abde793cd7db5bb8fde6d27ebcacd0e54379a",
      "parents": [
        "57eccb830f1cc93d4b506ba306d8dfa685e0c88f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jan 23 17:07:38 2013 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 22 23:31:31 2013 -0500"
      },
      "message": "new helper: file_inode(file)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "aca662a3b1c9b178536267da9fb2f0faa798cb7f",
      "tree": "e75eea8674411ec01fd03d689d59f0727a487fca",
      "parents": [
        "bd6ce5ef913a7b4dfe5cd5028309346d32a8c404"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu Jan 03 21:19:13 2013 +0900"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Feb 04 09:26:28 2013 +0200"
      },
      "message": "mtd: rename random32() to prandom_u32()\n\nUse more preferable function name which implies using a pseudo-random\nnumber generator.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "85d5b70d8a0681a362d075bf0d19b4ee8c6767ee",
      "tree": "e5f7586fe75821040078766347f6caa635037e69",
      "parents": [
        "43260ade2ae649e9ec7655630fd58dce7d8ed6ae",
        "eab737722ed6a5638f6251e83f0d293c2ffe549f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 07:39:03 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 07:39:03 2012 -0800"
      },
      "message": "Merge tag \u0027upstream-3.8-rc1\u0027 of git://git.infradead.org/linux-ubi\n\nPull UBI update from Artem Bityutskiy:\n \"Nothing exciting, just clean-ups and nicification.  Oh, and one small\n  optimization which makes UBI to use less RAM.\"\n\n* tag \u0027upstream-3.8-rc1\u0027 of git://git.infradead.org/linux-ubi:\n  UBI: embed ubi_debug_info field in ubi_device struct\n  UBI: introduce helpers dbg_chk_{io, gen}\n  UBI: replace memcpy with struct assignment\n  UBI: remove spurious comment\n  UBI: gluebi: rename misleading variables\n  UBI: do not allocate the memory unnecessarily\n  UBI: use list_move_tail instead of list_del/list_add_tail\n"
    },
    {
      "commit": "eab737722ed6a5638f6251e83f0d293c2ffe549f",
      "tree": "ccac47deaa15cf48608352e73ded2dcf387c2737",
      "parents": [
        "64575574f26d7969713ede9bde750c979da4037e"
      ],
      "author": {
        "name": "Ezequiel Garcia",
        "email": "elezegarcia@gmail.com",
        "time": "Wed Nov 28 09:18:30 2012 -0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Dec 10 13:38:59 2012 +0200"
      },
      "message": "UBI: embed ubi_debug_info field in ubi_device struct\n\nubi_debug_info struct was dynamically allocated which\nis always suboptimal, for it tends to fragment memory\nand make the code error-prone.\nFix this by embedding it in ubi_device struct.\n\nSigned-off-by: Ezequiel Garcia \u003celezegarcia@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "64575574f26d7969713ede9bde750c979da4037e",
      "tree": "37877fedba9902b5717f030682f76b9367ba92c6",
      "parents": [
        "d856c13c11d81dfa545f927db8d31663d45bbc94"
      ],
      "author": {
        "name": "Ezequiel Garcia",
        "email": "elezegarcia@gmail.com",
        "time": "Wed Nov 28 09:18:29 2012 -0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Dec 10 13:38:59 2012 +0200"
      },
      "message": "UBI: introduce helpers dbg_chk_{io, gen}\n\nWith this patch code is a bit more readable and there\u0027s no\ngenerated code or functionality impact.\nFurthermore, this abstracts implementation details and\nwill allow to change ubi_debug_info in a less invasive way.\n\nSigned-off-by: Ezequiel Garcia \u003celezegarcia@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "894aef215775b56b725e9dde856b7a8b091ddfcc",
      "tree": "1268cbe06004ae4d8b7f35d193310624fe36e824",
      "parents": [
        "ed4b7021cb51fe5a0f260df03298709347a26967"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Dec 03 20:57:47 2012 +0100"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Dec 04 16:04:31 2012 +0200"
      },
      "message": "UBI: dont call ubi_self_check_all_ff() in __wl_get_peb()\n\nAs ubi_self_check_all_ff() might sleep we are not allowed\nto call it from atomic context.\nFor now we call it only from ubi_wl_get_peb().\nThere are some code paths where it would also make sense,\nbut these paths are currently atomic and only enabled\nwhen fastmap is used.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "ed4b7021cb51fe5a0f260df03298709347a26967",
      "tree": "483eee94b6c30566e1b7694169e83e9014567b4b",
      "parents": [
        "9489e9dcae718d5fde988e4a684a0f55b5f94d17"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Dec 03 20:57:46 2012 +0100"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Dec 04 16:04:16 2012 +0200"
      },
      "message": "UBI: remove PEB from free tree in get_peb_for_wl()\n\nIf UBI is built without fastmap, get_peb_for_wl() has to\nremove the PEB manially from the free tree.\nOtherwise the requested PEB lives in two trees.\n\nReported-by: Zach Sadecki \u003czsadecki@itwatchdogs.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "d856c13c11d81dfa545f927db8d31663d45bbc94",
      "tree": "7253bc3605cbfb66a502ea54f62927a14e041d2c",
      "parents": [
        "38f92cca8aae5b2e4ff2700c47eee0b807e22980"
      ],
      "author": {
        "name": "Ezequiel Garcia",
        "email": "elezegarcia@gmail.com",
        "time": "Fri Nov 23 08:58:05 2012 -0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Dec 03 13:54:14 2012 +0200"
      },
      "message": "UBI: replace memcpy with struct assignment\n\nThis kind of memcpy() is error-prone. Its replacement with a struct\nassignment is prefered because it\u0027s type-safe and much easier to read.\n\nFound by coccinelle. Hand patched and reviewed.\nTested by compilation only.\n\nA simplified version of the semantic match that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nidentifier struct_name;\nstruct struct_name to;\nstruct struct_name from;\nexpression E;\n@@\n-memcpy(\u0026(to), \u0026(from), E);\n+to \u003d from;\n// \u003c/smpl\u003e\n\nSigned-off-by: Peter Senna Tschudin \u003cpeter.senna@gmail.com\u003e\nSigned-off-by: Ezequiel Garcia \u003celezegarcia@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "38f92cca8aae5b2e4ff2700c47eee0b807e22980",
      "tree": "b0b52806b0086e8a2459e56fc55f431aeb97c588",
      "parents": [
        "41c043842f047af682daf4940a1fc6dfc807bdbb"
      ],
      "author": {
        "name": "Ezequiel Garcia",
        "email": "elezegarcia@gmail.com",
        "time": "Wed Nov 21 12:46:12 2012 -0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Nov 30 13:54:41 2012 +0200"
      },
      "message": "UBI: remove spurious comment\n\nThis line of comment looks completely bogus.\n\nIt was introduced in:\ncommit d99383b00eba9c6ac3dea462d718b2849012ee03\nAuthor: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nDate:   Wed May 18 14:47:34 2011 +0300\n\n    UBI: change the interface of a debugging check function\n\nRemove it.\n\nSigned-off-by: Ezequiel Garcia \u003celezegarcia@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "41c043842f047af682daf4940a1fc6dfc807bdbb",
      "tree": "5d55a880bd34c6ca934e7b4fe21eb7b53cf53060",
      "parents": [
        "d125a753425b9de3c251df519e521024c79c663d"
      ],
      "author": {
        "name": "Ezequiel Garcia",
        "email": "elezegarcia@gmail.com",
        "time": "Mon Nov 19 20:35:20 2012 -0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Nov 30 13:54:41 2012 +0200"
      },
      "message": "UBI: gluebi: rename misleading variables\n\nBoth names \u0027total_read\u0027 and \u0027total_written\u0027 are actually used\nas the number of bytes left to read and write.\nFix this confusion by renaming both to \u0027bytes_left\u0027.\n\nSigned-off-by: Ezequiel Garcia \u003celezegarcia@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "d125a753425b9de3c251df519e521024c79c663d",
      "tree": "546946ccc49f6ca8ddb6af51a35d1bf205d09267",
      "parents": [
        "6a059abdbae7b6b35ddc69f6336f7afc1ce79bac"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Oct 26 16:11:26 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Oct 26 16:29:46 2012 +0300"
      },
      "message": "UBI: do not allocate the memory unnecessarily\n\nUBI reserves an LEB sized buffer for various needs. We can use this buffer\nwhile scanning, instead of allocating another one. This patch was originally\ncreated by Jan Luebbe \u003cjlu@pengutronix.de\u003e, but then he dropped it and I picked\nup and tweaked a little bit.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "6a059abdbae7b6b35ddc69f6336f7afc1ce79bac",
      "tree": "b965393418d015266dd5fca75e1415c172920a6b",
      "parents": [
        "6f0c0580b70c89094b3422ba81118c7b959c7556"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yongjun_wei@trendmicro.com.cn",
        "time": "Tue Oct 09 14:14:21 2012 +0800"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Oct 26 16:04:21 2012 +0300"
      },
      "message": "UBI: use list_move_tail instead of list_del/list_add_tail\n\nUsing list_move_tail() instead of list_del() + list_add_tail().\n\ndpatch engine is used to auto generate this patch.\n(https://github.com/weiyj/dpatch)\n\nSigned-off-by: Wei Yongjun \u003cyongjun_wei@trendmicro.com.cn\u003e\nAcked-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "e9eca4de957ac33744fb994ccacd4a5102e445a8",
      "tree": "fc1cf7c808d3daa365a56856321834d030fcf10d",
      "parents": [
        "1929041bd8afeb3995b7c68d6f16e03422848a4c",
        "76ac66e469f084d41742ba08923de76fbdc7dce3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 08 20:40:45 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 08 20:40:45 2012 +0900"
      },
      "message": "Merge tag \u0027upstream-3.7-rc1-fastmap\u0027 of git://git.infradead.org/linux-ubi\n\nPull UBI fastmap changes from Artem Bityutskiy:\n \"This pull request contains the UBI fastmap support implemented by\n  Richard Weinberger from Linutronix.  Fastmap is designed to address\n  UBI\u0027s slow scanning issues.  Namely, it introduces a new on-flash\n  data-structure called \"fastmap\", which stores the information about\n  logical\u003c-\u003ephysical eraseblocks mappings.  So now to get this\n  information just read the fastmap, instead of doing full scan.  More\n  information here can be found in Richard\u0027s announcement in LKML\n  (Subject: UBI: Fastmap request for inclusion (v19)):\n\n     http://thread.gmane.org/gmane.linux.kernel/1364922/focus\u003d1369109\n\n  One thing I want to explicitly say is that fastmap did not have large\n  enough linux-next exposure.  It is partially my fault - I did not\n  respond quickly enough.  I _really_ apologize for this.  But it had\n  good testing and disabled by default, so I do not expect that we\u0027ll\n  break anything.\n\n  Fastmap is declared as experimental so far, and it is off by default.\n  We did declare that the on-flash format may be changed.  The reason\n  for this is that no one used it in real production so far, so there is\n  a high risk that something is missing.  Besides, we do not have\n  user-space tools supporting fastmap so far.\n\n  Nevertheless, I suggest we merge this feature.  Many people want UBI\u0027s\n  scanning bottleneck to be fixed and merging fastmap now should\n  accelerate its production use.  The plan is to make it bullet-prove,\n  somewhat clean-up, and make it the default for UBI.  I do not know how\n  many kernel releases will it take.\n\n  Basically, I what I want to do for fastmap is something like Linus did\n  for btrfs few years ago.\"\n\n* tag \u0027upstream-3.7-rc1-fastmap\u0027 of git://git.infradead.org/linux-ubi:\n  UBI: Wire-up fastmap\n  UBI: Add fastmap core\n  UBI: Add fastmap support to the WL sub-system\n  UBI: Add fastmap stuff to attach.c\n  UBI: Wire-up -\u003efm_sem\n  UBI: Add fastmap bits to build.c\n  UBI: Add self_check_eba()\n  UBI: Export next_sqnum()\n  UBI: Add fastmap stuff to ubi.h\n  UBI: Add fastmap on-flash data structures\n"
    },
    {
      "commit": "76ac66e469f084d41742ba08923de76fbdc7dce3",
      "tree": "f56c894f1315f477895617b9075e2df7fa0108c6",
      "parents": [
        "dbb7d2a88d2a7bd3624e090bee42cdee048d9290"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:50 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 16:39:37 2012 +0300"
      },
      "message": "UBI: Wire-up fastmap\n\nMake fastmap known to Kconfig, UBI Makefile and MAINTAINERS.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "dbb7d2a88d2a7bd3624e090bee42cdee048d9290",
      "tree": "4f02089365bc6d8c0b44f18658f57383f233979c",
      "parents": [
        "8199b901a31b6e89b63842643f644fc05b403b20"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:49 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 16:39:27 2012 +0300"
      },
      "message": "UBI: Add fastmap core\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "8199b901a31b6e89b63842643f644fc05b403b20",
      "tree": "39970cc3c3cf43be0b1d28e558b736fad2592ad2",
      "parents": [
        "dac6e2087a4143cfc3fc1017bf24b9d4be3055b7"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:48 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:38 2012 +0300"
      },
      "message": "UBI: Add fastmap support to the WL sub-system\n\nTo make fastmap possible the WL sub-system needs some\nchanges.\nMostly to support fastmaps pools.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "dac6e2087a4143cfc3fc1017bf24b9d4be3055b7",
      "tree": "8df8b04fb233e2558b16f8ead80e2e2338c8df64",
      "parents": [
        "8974b15c6e84e686201d382c7d459aa9c8c96572"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:47 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:38 2012 +0300"
      },
      "message": "UBI: Add fastmap stuff to attach.c\n\n- Export compare_lebs() as fastmap needs this function.\n- Implement fastmap scan logic.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "8974b15c6e84e686201d382c7d459aa9c8c96572",
      "tree": "64bfa3b4636c23ae9221043cec58e4fc7bbbc6a6",
      "parents": [
        "77e6c2f04da6b26445e671458a3677f248c67c43"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:46 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:37 2012 +0300"
      },
      "message": "UBI: Wire-up -\u003efm_sem\n\nFastmap uses -\u003efm_sem to stop EBA changes while writing\na new fastmap.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "77e6c2f04da6b26445e671458a3677f248c67c43",
      "tree": "ca24d87b6c5a2516bcff7a058b4668a5d3b12819",
      "parents": [
        "00abf3041590da6ad7533bf592e8dd452820109f"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:45 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:37 2012 +0300"
      },
      "message": "UBI: Add fastmap bits to build.c\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "00abf3041590da6ad7533bf592e8dd452820109f",
      "tree": "0fb880d525990bf34ecb029f9a70f05f8a3eb48c",
      "parents": [
        "a7306653705e456c8affeb4efe9542b9f6b757ad"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:44 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:37 2012 +0300"
      },
      "message": "UBI: Add self_check_eba()\n\nself_check_eba() compares two ubi_attach_info objects.\nFastmap uses this function for self checks.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "a7306653705e456c8affeb4efe9542b9f6b757ad",
      "tree": "6e04a569891a86d068f736283268934b553c2f20",
      "parents": [
        "5638b33abffd967dda4f984a247925b7af38b23d"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:43 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:37 2012 +0300"
      },
      "message": "UBI: Export next_sqnum()\n\nFastmap needs next_sqnum(), rename it to ubi_next_sqnum()\nand make it non-static.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "5638b33abffd967dda4f984a247925b7af38b23d",
      "tree": "1df7dfde3faec82ce76e169c425c936625cfe017",
      "parents": [
        "1c865749999efdae63ddfb73b911ee04e1d4e1c8"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:42 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:37 2012 +0300"
      },
      "message": "UBI: Add fastmap stuff to ubi.h\n\nThis patch adds fastmap specific data structures to ubi.h.\nIt moves also struct ubi_work to ubi.h as it is now needed\nfor more than one c file.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "1c865749999efdae63ddfb73b911ee04e1d4e1c8",
      "tree": "6f0e3bde0277518ea231a60b6d7e3e712195a9fe",
      "parents": [
        "55393ba1bdedc5ded79b34b4cc08898a7776cddb"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Wed Sep 26 17:51:41 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Oct 03 12:29:37 2012 +0300"
      },
      "message": "UBI: Add fastmap on-flash data structures\n\nAdd the on-flash data structures neeed by fastmap\nto ubi-media.h\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "65b99c74fdd325d1ffa2e5663295888704712604",
      "tree": "6ccec0803316bbefc1ea82add70245a9586c5fff",
      "parents": [
        "782c3fb22baa103abbcd30dfc99cad24bb09f1df",
        "55393ba1bdedc5ded79b34b4cc08898a7776cddb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 20:49:15 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 20:49:15 2012 -0700"
      },
      "message": "Merge tag \u0027upstream-3.7-rc1\u0027 of git://git.infradead.org/linux-ubi\n\nPull UBI changes from Artem Bityutskiy:\n \"The main change is the way we reserve eraseblocks for bad blocks\n  handling.  We used to reserve 2% of the partition, but now we are more\n  aggressive and we reserve 2% of the entire chip, which is what\n  actually manufacturers specify in data sheets.  We introduced an\n  option to users to override the default, though.\n\n  There are a couple of fixes as well, and a number of cleanups.\"\n\n* tag \u0027upstream-3.7-rc1\u0027 of git://git.infradead.org/linux-ubi: (24 commits)\n  UBI: fix trivial typo \u0027it\u0027 \u003d\u003e \u0027is\u0027\n  UBI: load after mtd device drivers\n  UBI: print less\n  UBI: use pr_ helper instead of printk\n  UBI: comply with coding style\n  UBI: erase free PEB with bitflip in EC header\n  UBI: fix autoresize handling in R/O mode\n  UBI: add max_beb_per1024 to attach ioctl\n  UBI: allow specifying bad PEBs limit using module parameter\n  UBI: check max_beb_per1024 value in ubi_attach_mtd_dev\n  UBI: prepare for max_beb_per1024 module parameter addition\n  UBI: introduce MTD_PARAM_MAX_COUNT\n  UBI: separate bad_peb_limit in a function\n  arm: sam9_l9260_defconfig: correct CONFIG_MTD_UBI_BEB_LIMIT\n  UBI: use the whole MTD device size to get bad_peb_limit\n  mtd: mtdparts: introduce mtd_get_device_size\n  mtd: mark mtd_is_partition argument as constant\n  arm: sam9_l9260_defconfig: remove non-existing config option\n  UBI: kill CONFIG_MTD_UBI_BEB_RESERVE\n  UBI: limit amount of reserved eraseblocks for bad PEB handling\n  ...\n"
    },
    {
      "commit": "55393ba1bdedc5ded79b34b4cc08898a7776cddb",
      "tree": "73ce25d5505e1be2a2df1531c94333c3745e3c14",
      "parents": [
        "cf38aca520741ccdc1365efbef5a4cab33b0a4ac"
      ],
      "author": {
        "name": "Brian Norris",
        "email": "computersforpeace@gmail.com",
        "time": "Fri Aug 31 14:43:41 2012 -0700"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Sep 26 13:22:50 2012 +0300"
      },
      "message": "UBI: fix trivial typo \u0027it\u0027 \u003d\u003e \u0027is\u0027\n\nSigned-off-by: Brian Norris \u003ccomputersforpeace@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "cf38aca520741ccdc1365efbef5a4cab33b0a4ac",
      "tree": "69695690819d326dee7af66bc92a9e67ad0c5019",
      "parents": [
        "719bb84017fcfc949a77e150dd5b045e90a4ebc9"
      ],
      "author": {
        "name": "Jiang Lu",
        "email": "lu.jiang@windriver.com",
        "time": "Wed Aug 08 10:31:01 2012 +0800"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Sep 26 13:22:44 2012 +0300"
      },
      "message": "UBI: load after mtd device drivers\n\nUse \u0027late_initcall()\u0027 in UBI to make sure it initializes after MTD drivers.\n\nSigned-off-by: Jiang Lu \u003clu.jiang@windriver.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "78b495c39add820ab66ab897af9bd77a5f2e91f6",
      "tree": "1117d2f1694290265c3420b3c3c93499091e1b71",
      "parents": [
        "4cbe5a555fa58a79b6ecbb6c531b8bab0650778d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Sep 03 17:12:29 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:40:26 2012 +0300"
      },
      "message": "UBI: fix a horrible memory deallocation bug\n\nUBI was mistakingly using \u0027kfree()\u0027 instead of \u0027kmem_cache_free()\u0027 when\nfreeing \"attach eraseblock\" structures in vtbl.c. Thankfully, this happened\nonly when we were doing auto-format, so many systems were unaffected. However,\nthere are still many users affected.\n\nIt is strange, but the system did not crash and nothing bad happened when\nthe SLUB memory allocator was used. However, in case of SLOB we observed an\ncrash right away.\n\nThis problem was introduced in 2.6.39 by commit\n\"6c1e875 UBI: add slab cache for ubi_scan_leb objects\"\n\nA note for stable trees:\n  Because variable were renamed, this won\u0027t cleanly apply to older kernels.\n  Changing names like this should help:\n\t1. ai -\u003e si\n\t2. aeb_slab_cache -\u003e seb_slab_cache\n\t3. new_aeb -\u003e new_seb\n\nReported-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nTested-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nTested-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nCc: stable@vger.kernel.org [v2.6.39+]\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "719bb84017fcfc949a77e150dd5b045e90a4ebc9",
      "tree": "4092867a0fdbe2d82f69ce1a60402a36042175cc",
      "parents": [
        "e28453bbb76c290d67eb28b3ff6875a6519c3998"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Aug 27 17:14:58 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:02 2012 +0300"
      },
      "message": "UBI: print less\n\nUBI currently prints a lot of information when it mounts a volume, which\nbothers some people. Make it less chatty - print only important information\nby default.\n\nGet rid of \u0027dbg_msg()\u0027 macro completely.\n\nReported-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "e28453bbb76c290d67eb28b3ff6875a6519c3998",
      "tree": "71ca0633ec0bd8723af61c2e57922dda7394ebe5",
      "parents": [
        "049333cecbde11988c49ad4d7861eefbc3534422"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Aug 27 15:13:05 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:02 2012 +0300"
      },
      "message": "UBI: use pr_ helper instead of printk\n\nUse \u0027pr_err()\u0027 instead of \u0027printk(KERN_ERR\u0027, etc.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "049333cecbde11988c49ad4d7861eefbc3534422",
      "tree": "75ad7eb414574bedf7438accbe9de2c9a70e0014",
      "parents": [
        "193819cf2e6e395b1e1be2d36785dc5563a6edca"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon Aug 27 14:43:54 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: comply with coding style\n\nJoin all the split printk lines in order to stop checkpatch complaining.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "193819cf2e6e395b1e1be2d36785dc5563a6edca",
      "tree": "51a3cc303a5f34c8fc63ef102da0bde66edfc89c",
      "parents": [
        "abb3e01103eb4e2ea5c15e6fedbc74e08bd4cc2b"
      ],
      "author": {
        "name": "Matthieu CASTET",
        "email": "matthieu.castet@parrot.com",
        "time": "Wed Aug 22 16:03:46 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: erase free PEB with bitflip in EC header\n\nWithout this patch, these PEB are not scrubbed until we put data in them.\nBitflip can accumulate latter and we can loose the EC header (but VID header\nshould be intact and allow to recover data).\n\nSigned-off-by: Matthieu Castet \u003cmatthieu.castet@parrot.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "abb3e01103eb4e2ea5c15e6fedbc74e08bd4cc2b",
      "tree": "a83d9e615df93b083d6018b0bf5dea3f7f25bdf0",
      "parents": [
        "db7e21c21f293d52f5363fe8d9ee91d6bd0a503a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sat Aug 18 14:11:42 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: fix autoresize handling in R/O mode\n\nCurrently UBI fails in autoresize when it is in R/O mode (e.g., because the\nunderlying MTD device is R/O). This patch fixes the issue - we just skip\nautoresize and print a warning.\n\nReported-by: Pali Rohár \u003cpali.rohar@gmail.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "db7e21c21f293d52f5363fe8d9ee91d6bd0a503a",
      "tree": "8d2ac3f6988dabc4cd418f3ff08385972204a753",
      "parents": [
        "edac493dfb48fe46d43fe6afabb8cfb2d1d4c048"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Mon Aug 20 18:00:15 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: add max_beb_per1024 to attach ioctl\n\nThis patch provides a possibility to set the \"maximum expected number of\nbad blocks per 1024 blocks\" (max_beb_per1024) for each mtd device using\nthe UBI_IOCATT ioctl.\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "edac493dfb48fe46d43fe6afabb8cfb2d1d4c048",
      "tree": "6652e8b2f92504fbe69566e59df982099507de4c",
      "parents": [
        "d2f588f9340ed23dfb6cda08b8a1917ef3e8527c"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Mon Aug 20 18:00:14 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: allow specifying bad PEBs limit using module parameter\n\nThis patch provides the possibility to adjust the \"maximum expected number of\nbad blocks per 1024 blocks\" (max_beb_per1024) for each mtd device.\n\nThe majority of NAND devices have their max_beb_per1024 equal to 20, but\nsometimes it\u0027s more.\nNow, we can adjust that via a kernel parameter:\nubi.mtd\u003d\u003cname|num|path\u003e[,\u003cvid_hdr_offs\u003e[,max_beb_per1024]]\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "d2f588f9340ed23dfb6cda08b8a1917ef3e8527c",
      "tree": "162ea3e7fb652a79cf439f65b791a6287a9e4ce5",
      "parents": [
        "256334c3191af9d9e520082db9beb75ff801d86c"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Mon Aug 20 18:00:13 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: check max_beb_per1024 value in ubi_attach_mtd_dev\n\nmax_beb_per1024 shouldn\u0027t be negative, and a 0 value will be treated as\nthe default value. For the upper bound, 768/1024 should be enough.\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "256334c3191af9d9e520082db9beb75ff801d86c",
      "tree": "55e209de188658b9b23022ee1d0493f62424c738",
      "parents": [
        "5993f9b7380d77fd23f5402dcfb701aedb327ffe"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Mon Aug 20 18:00:11 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: prepare for max_beb_per1024 module parameter addition\n\nThis patch prepare the way for the addition of max_beb_per1024 module\nparameter.  There\u0027s no functional change.\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nReviewed-by: Shmulik Ladkani \u003cshmulik.ladkani@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "5993f9b7380d77fd23f5402dcfb701aedb327ffe",
      "tree": "875f00f889eb3fffac980916efe7cc895ee9be4e",
      "parents": [
        "95e6fb027e041641baed441fcbd27c2f082c760e"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Fri Aug 17 16:35:19 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:01 2012 +0300"
      },
      "message": "UBI: introduce MTD_PARAM_MAX_COUNT\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "95e6fb027e041641baed441fcbd27c2f082c760e",
      "tree": "07eefbd49358c59e76efbf685b0abc993dd47a27",
      "parents": [
        "60a387dc5ed7cf7e5fe68a9078d71f4819f3a697"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Fri Aug 17 16:35:18 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:00 2012 +0300"
      },
      "message": "UBI: separate bad_peb_limit in a function\n\nNo functional changes here, just to prepare for next patch.\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "ba4087e956d336488c6df9dfca65d1e70cf480f1",
      "tree": "25faa54edbfd08685e7b12e2715cda470159bd92",
      "parents": [
        "62082e56cbb807cb325a8968f35dbd922432eb48"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Tue Jul 10 18:23:41 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:39:00 2012 +0300"
      },
      "message": "UBI: use the whole MTD device size to get bad_peb_limit\n\nOn NAND flash devices, UBI reserves some physical erase blocks (PEB) for\nbad block handling. Today, the number of reserved PEB can only be set as a\npercentage of the total number of PEB in each MTD partition. For example, for a\nNAND flash with 128KiB PEB, 2 MTD partition of 20MiB (mtd0) and 100MiB (mtd1)\nand 2% reserved PEB:\n - the UBI device on mtd0 will have 2 PEB reserved\n - the UBI device on mtd1 will have 16 PEB reserved\n\nThe problem with this behaviour is that NAND flash manufacturers give a\nminimum number of valid block (NVB) during the endurance life of the\ndevice, e.g.:\n\nParameter             Symbol    Min    Max    Unit      Notes\n--------------------------------------------------------------\nValid block number     NVB     1004    1024   Blocks     1\n\nFrom this number we can deduce the maximum number of bad PEB that a device will\ncontain during its endurance life: a 128MiB NAND flash (1024 PEB) will not have\nless than 20 bad blocks during the flash endurance life.\n\nBut the manufacturer doesn\u0027t tell where those bad block will appear. He doesn\u0027t\nsay either if they will be equally disposed on the whole device (and I\u0027m pretty\nsure they won\u0027t). So, according to the datasheets, we should reserve the\nmaximum number of bad PEB for each UBI device (worst case scenario: 20 bad\nblocks appears on the smallest MTD partition).\n\nSo this patch make UBI use the whole MTD device size to calculate the maximum\nbad expected eraseblocks.\n\nThe Kconfig option is in per1024 blocks, thus it can have a default value of 20\nwhich is *very* common for NAND devices.\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "1b2a5790613756d54fdf58d0b3965e43735f153b",
      "tree": "4f3b1753db19017d5b5a7be527406eef3e5c61f1",
      "parents": [
        "37f758a036da56c7cff81b68d1d872752079eb6c"
      ],
      "author": {
        "name": "Shmulik Ladkani",
        "email": "shmulik.ladkani@gmail.com",
        "time": "Wed Jul 04 11:06:02 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:38:58 2012 +0300"
      },
      "message": "UBI: kill CONFIG_MTD_UBI_BEB_RESERVE\n\nCONFIG_MTD_UBI_BEB_RESERVE and MIN_RESEVED_PEBS are no longer used,\nsince the amount of reserved eraseblocks for bad PEB handling is now\nderived from \u0027ubi-\u003ebad_peb_limit\u0027 (ubi\u0027s maximum expected bad\neraseblocks).\n\nSigned-off-by: Shmulik Ladkani \u003cshmulik.ladkani@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "37f758a036da56c7cff81b68d1d872752079eb6c",
      "tree": "490edbbde943a709f79b68d217f39e74ba238e13",
      "parents": [
        "8beeb3bb9df8caba36ad3e4f226255dff9c92556"
      ],
      "author": {
        "name": "Shmulik Ladkani",
        "email": "shmulik.ladkani@gmail.com",
        "time": "Wed Jul 04 11:06:01 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:38:58 2012 +0300"
      },
      "message": "UBI: limit amount of reserved eraseblocks for bad PEB handling\n\nThe existing mechanism of reserving PEBs for bad PEB handling has two\nflaws:\n- It is calculated as a percentage of good PEBs instead of total PEBs.\n- There\u0027s no limit on the amount of PEBs UBI reserves for future bad\n  eraseblock handling.\n\nThis patch changes the mechanism to overcome these flaws.\n\nThe desired level of PEBs reserved for bad PEB handling (beb_rsvd_level)\nis set to the maximum expected bad eraseblocks (bad_peb_limit) minus the\nexisting number of bad eraseblocks (bad_peb_count).\n\nThe actual amount of PEBs reserved for bad PEB handling is usually set\nto the desired level (but in some circumstances may be lower than the\ndesired level, e.g. when attaching to a device that has too few\navailable PEBs to satisfy the desired level).\n\nIn the case where the device has too many bad PEBs (above the expected\nlimit), then the desired level, and the actual amount of PEBs reserved\nare set to zero. No PEBs will be set aside for future bad eraseblock\nhandling - even if some PEBs are made available (e.g. by shrinking a\nvolume).\nIf another PEB goes bad, and there are available PEBs, then the\neraseblock will be marked bad (consuming one available PEB). But if\nthere are no available PEBs, ubi will go into readonly mode.\n\nSigned-off-by: Shmulik Ladkani \u003cshmulik.ladkani@gmail.com\u003e\n"
    },
    {
      "commit": "8beeb3bb9df8caba36ad3e4f226255dff9c92556",
      "tree": "4758809d39183d7aaccaa8178c5d5150c2bf1a9d",
      "parents": [
        "afe7d12b6d997ff8ceff02e405eae9ba54aa8350"
      ],
      "author": {
        "name": "Shmulik Ladkani",
        "email": "shmulik.ladkani@gmail.com",
        "time": "Wed Jul 04 11:06:00 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:38:58 2012 +0300"
      },
      "message": "UBI: introduce new bad PEB limit\n\nIntroduce \u0027ubi-\u003ebad_peb_limit\u0027, which specifies an upper limit of PEBs\nUBI expects to go bad.  Currently, it is initialized to a fixed percentage\nof total PEBs in the UBI device (configurable via CONFIG_MTD_UBI_BEB_LIMIT).\n\nThe \u0027bad_peb_limit\u0027 is intended to be used for calculating the amount of PEBs\nUBI needs to reserve for bad eraseblock handling.\n\nArtem: minor amendments.\n\nSigned-off-by: Shmulik Ladkani \u003cshmulik.ladkani@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "183ae6cf8b903129eea05c596b057372818c2074",
      "tree": "07012ec611d4fbc8a366b91a77c2c32cb2c93d43",
      "parents": [
        "5739dd72139a8aa079288d245dcd5726dd248e6b"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Aug 22 16:40:05 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:38:57 2012 +0300"
      },
      "message": "UBI: print PID in debug messages\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "5739dd72139a8aa079288d245dcd5726dd248e6b",
      "tree": "5620e51f825882e0aca616b737aa89df4f55264e",
      "parents": [
        "4cbe5a555fa58a79b6ecbb6c531b8bab0650778d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Aug 22 16:28:18 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Tue Sep 04 09:38:57 2012 +0300"
      },
      "message": "UBI: print image sequence number as unsigned integer\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "87e773c95eb0b363f2efcc7aff8a347dc18925d0",
      "tree": "76e802802a29567559f4d12d9c4d0ac8cdd63cfb",
      "parents": [
        "5c669a5bd8c0f0567127128990d01f9ae320a9ef"
      ],
      "author": {
        "name": "Shmulik Ladkani",
        "email": "shmulik.ladkani@gmail.com",
        "time": "Wed Jul 04 11:06:04 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Wed Jul 18 14:30:34 2012 +0300"
      },
      "message": "UBI: harmonize the update of ubi-\u003ebeb_rsvd_pebs\n\nCurrently, there are several locations where an attempt to reserve more\nPEBs for bad PEB handling is made, with the same code being duplicated.\n\nHarmonize it by introducing \u0027ubi_update_reserved()\u0027.\n\nAlso, improve the debug message issued, making it more descriptive.\n\nArtem: amended the patch a little.\n\nSigned-off-by: Shmulik Ladkani \u003cshmulik.ladkani@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "5c669a5bd8c0f0567127128990d01f9ae320a9ef",
      "tree": "7fabe09062722a94f403e8ce0b848dbebde56897",
      "parents": [
        "2ce7be1b777d4f06c5b28a397cf85d9beb1bca0e"
      ],
      "author": {
        "name": "Shmulik Ladkani",
        "email": "shmulik.ladkani@gmail.com",
        "time": "Wed Jul 04 11:06:03 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Wed Jul 18 13:33:03 2012 +0300"
      },
      "message": "UBI: trivial: fix comment of ubi_calculate_reserved function\n\nThe function name within the comment was not aligned with the actual\nfunction name.\n\nSigned-off-by: Shmulik Ladkani \u003cshmulik.ladkani@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "2ce7be1b777d4f06c5b28a397cf85d9beb1bca0e",
      "tree": "3380cde7b61e6ac23332af503212cc873b2c7a2f",
      "parents": [
        "54de1f1c44c3522dbdc2201be1f65e733526de51"
      ],
      "author": {
        "name": "Peter Meerwald",
        "email": "pmeerw@pmeerw.net",
        "time": "Mon Jul 02 23:38:17 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Wed Jul 18 10:13:41 2012 +0300"
      },
      "message": "UBI: fix spelling of detach in debug output\n\nSigned-off-by: Peter Meerwald \u003cpmeerw@pmeerw.net\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "54de1f1c44c3522dbdc2201be1f65e733526de51",
      "tree": "2a27f8e22220070ae217e32ac3addf96e221177a",
      "parents": [
        "84a1caf1453c3d44050bd22db958af4a7f99315c"
      ],
      "author": {
        "name": "Richard Genoud",
        "email": "richard.genoud@gmail.com",
        "time": "Fri Jun 29 08:57:41 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Wed Jul 18 10:13:41 2012 +0300"
      },
      "message": "UBI: Change the default percentage of reserved PEB\n\nThe actual value (1%) is too low for actual NAND devices, a huge\nmajority of device has 2% maximum bad blocks (SLC or MLC).\n(Actually it\u0027s 20 blocks on a 1024 blocks device, 40/2048...)\n\nSigned-off-by: Richard Genoud \u003crichard.genoud@gmail.com\u003e\n"
    },
    {
      "commit": "903e0e4ef9120c3d7693599acb95e76e8263fb35",
      "tree": "8814f97bbbcfd2a0cd221cac2ed5a3b08cd21fd5",
      "parents": [
        "2d4cf5ae123e4a7bd26a88e600581aa809bcad7f"
      ],
      "author": {
        "name": "Brian Norris",
        "email": "computersforpeace@gmail.com",
        "time": "Mon Jun 18 16:31:23 2012 -0700"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Jun 27 14:22:15 2012 +0300"
      },
      "message": "UBI: correct usage of IS_ENABLED()\n\nCommit \"e9b4cf2 UBI: fix debugfs-less systems support\" fixed one\nregression but introduced a different regression - the debugfs is now always\ncompiled out. Root cause: IS_ENABLED() arguments should be used with the\nCONFIG_* prefix.\n\nSigned-off-by: Brian Norris \u003ccomputersforpeace@gmail.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "12027f1b3fd69a4e9017e6b13c72547a99c6cf54",
      "tree": "19b7b41b12f4c1eb0a0efdbd494c58e2381e1dd9",
      "parents": [
        "818039c7d597db3b1d30964a8f9489ac42c0642d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu Jun 07 15:15:30 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu Jun 07 15:22:21 2012 +0300"
      },
      "message": "UBI: correct ubi_wl_flush locking\n\nCommit \"62f38455 UBI: modify ubi_wl_flush function to clear work queue for a lnum\"\ntakes the \u0027work_sem\u0027 semaphore in write mode for the entire loop, which is not\nvery good because it will block other workers for potentially long time. We do\nnot need to have it in write mode - read mode is enough, and we do not need to\nhole it over the entire loop. So this patch turns changes the locking: takes\n\u0027work_sem\u0027 in read mode and pushes it down to the loop.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "e9b4cf2094a65a05a831f070e46c554260632330",
      "tree": "51a8a420ba19dfe1a9abfaa4d3cf109a8c4e199f",
      "parents": [
        "f8f5701bdaf9134b1f90e5044a82c66324d2073f"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Jun 06 15:22:41 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu Jun 07 10:43:54 2012 +0300"
      },
      "message": "UBI: fix debugfs-less systems support\n\nCommit \"aa44d1d UBI: remove Kconfig debugging option\" broke UBI and it\nrefuses to initialize if debugfs (CONFIG_DEBUG_FS) is disabled. I incorrectly\nassumed that debugfs files creation function will return success if debugfs\nis disabled, but they actually return -ENODEV. This patch fixes the issue.\n\nReported-by: Paul Parsons \u003clost.distance@yahoo.com\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nTested-by: Paul Parsons \u003clost.distance@yahoo.com\u003e\n"
    },
    {
      "commit": "62f384552b6756cf1ea71f8762d1e97dc77dbd90",
      "tree": "6ebd89f4f18eca1724e8a50b8fc6cdefc29de18a",
      "parents": [
        "05a3cb7dcec5a15ed9b18a5317ba2075355c7547"
      ],
      "author": {
        "name": "Joel Reardon",
        "email": "joel@clambassador.com",
        "time": "Sun May 20 21:27:11 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon May 21 11:34:41 2012 +0300"
      },
      "message": "UBI: modify ubi_wl_flush function to clear work queue for a lnum\n\nThis patch modifies ubi_wl_flush to force the erasure of\nparticular volume id / logical eraseblock number pairs. Previous functionality\nis preserved when passing UBI_ALL for both values. The locations where ubi_wl_flush\nwere called are appropriately changed: ubi_leb_erase only flushes for the\nerased LEB, and ubi_create_volume forces only flushing for its volume id.\nExternal code can call this new feature via the new function ubi_flush() added\nto kapi.c, which simply passes through to ubi_wl_flush().\n\nThis was tested by disabling the call to do_work in ubi thread, which results\nin the work queue remaining unless explicitly called to remove. UBIFS was\nchanged to call ubifs_leb_change 50 times for four different LEBs. Then the\nnew function was called to clear the queue: passing wrong volume ids / lnum,\ncorrect ones, and finally UBI_ALL for both to ensure it was finally all\ncleard. The work queue was dumped each time and the selective removal\nof the particular LEB numbers was observed. Extra checks were enabled and\nubifs\u0027s integck was also run. Finally, the drive was repeatedly filled and\nemptied to ensure that the queue was cleared normally.\n\nArtem: amended the patch.\n\nSigned-off-by: Joel Reardon \u003creardonj@inf.ethz.ch\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "05a3cb7dcec5a15ed9b18a5317ba2075355c7547",
      "tree": "2bdcd3fb8271a193027c551baa5ff971fade02d4",
      "parents": [
        "d36e59e69b8be536c55d6118630f0221cee5ccee"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 21:14:22 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon May 21 11:34:41 2012 +0300"
      },
      "message": "UBI: introduce UBI_ALL constant\n\nJoel will use it in his \u0027ubi_flush()\u0027 extention to specify all eraseblocks.\nAlso amend the comment for UBI_UNKNOWN - it is used beyond attaching info\nstructure now.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "d36e59e69b8be536c55d6118630f0221cee5ccee",
      "tree": "8ffa8feec4ddbfeca391278c449c5ba1b3e78d2e",
      "parents": [
        "6dd3bc7e6032ffb392477fadca77172c1c9e346b"
      ],
      "author": {
        "name": "Joel Reardon",
        "email": "joel@clambassador.com",
        "time": "Fri May 18 15:40:24 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon May 21 11:34:41 2012 +0300"
      },
      "message": "UBI: add lnum and vol_id to struct ubi_work\n\nThis is part of a multipart patch to allow UBI to force the erasure of\nparticular logical eraseblock numbers. In this patch, the volume id and LEB\nnumber are added to ubi_work data structure, and both are also passed as a\nparameter to schedule erase to set it appropriately. Whenever ubi_wl_put_peb\nis called, the lnum is also passed to be forwarded to schedule erase. Later,\na new ubi_sync_lnum will be added to execute immediately all work related to\nthat lnum.\n\nThis was tested by outputting the vol_id and lnum during the schedule of\nerasure. The ubi thread was disabled and two ubifs drives on separate\npartitions repeated changed a small number of LEBs. The ubi module was readded,\nand all the erased LEBs, corresponding to the volumes, were added to the\nschedule erase queue.\n\nArtem: minor tweaks\n\nSigned-off-by: Joel Reardon \u003creardonj@inf.ethz.ch\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "6dd3bc7e6032ffb392477fadca77172c1c9e346b",
      "tree": "7578223021e61398f46f84c5f4fb42300ce44d10",
      "parents": [
        "5cc09420e2bcd75d6a8f701c60a179ebb564cb3c"
      ],
      "author": {
        "name": "Joel Reardon",
        "email": "joel@clambassador.com",
        "time": "Wed May 16 14:20:56 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon May 21 11:34:41 2012 +0300"
      },
      "message": "UBI: add volume id struct ubi_ainf_peb\n\nThis patch adds the volume id to struct ubi_ainf_peb when scanning the LEBs at\nstartup. PEBs now added to the erase queue will know their original LEB number\nand volume id, if available, and will be -1 otherwise (for instance, if the VID\nheader is unreadable).\n\nThis was tested by creating an ubi device with 3 volumes and disabiling the\nubi_thread\u0027s do_work functionality. The different ubi volumes were formatted\nto ubifs and had files created and erased.  The ubi modules was reloaded and\nthe list of LEB\u0027s added to the erased list was outputted, confirming the\nvolume ids and LEB numbers were appropriate.\n\nSigned-off-by: Joel Reardon \u003creardonj@inf.ethz.ch\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "5cc09420e2bcd75d6a8f701c60a179ebb564cb3c",
      "tree": "778be687c872b983747656bc80e1ea24c8419413",
      "parents": [
        "ae4a8104e3d913d75ad72b43ea112968c14bd5de"
      ],
      "author": {
        "name": "Joel Reardon",
        "email": "joel@clambassador.com",
        "time": "Sun May 20 13:42:29 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 21:30:45 2012 +0300"
      },
      "message": "UBI: add in hex the value for UBI_INTERNAL_VOL_START to comment\n\nExplicitly provide the first internal volume ID value in the comment for\nUBI_INTERNAL_VOL_START. This allows developers who, when adding features\nrelated to volume ids and observe unexpected very large volume ids, to grep\nfor the observed value in the source code and find out immediately that it is\nexpected behaviour.\n\nSigned-off-by: Joel Reardon \u003creardonj@inf.ethz.ch\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "ae4a8104e3d913d75ad72b43ea112968c14bd5de",
      "tree": "fe5e34d9f68da1c08116d0fba66d0895082a6194",
      "parents": [
        "0479ab48bb30019820c296a081ebd70a9cc6872a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri May 18 13:09:20 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 21:01:28 2012 +0300"
      },
      "message": "UBI: rename scan.c to attach.c\n\nFinally, rename the scan.c file. Now adding fastmap support won\u0027t look that\nhacky anymore.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "0479ab48bb30019820c296a081ebd70a9cc6872a",
      "tree": "9cf3d6ed8ecfd6977570a9851d3671a027f5b914",
      "parents": [
        "9c47fb2fbe585698e9e6dac3ec033ea94765f38c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri May 18 13:00:10 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 21:01:28 2012 +0300"
      },
      "message": "UBI: remove scan.h\n\nThis file is small and it does not make sense to have it separate from where\neverything else lives, so merge it with ubi.h.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "9c47fb2fbe585698e9e6dac3ec033ea94765f38c",
      "tree": "327baaa9b48e190a03a829039cac21714a0d02b9",
      "parents": [
        "47e1ec70b2c57f39752ae3210d89a625768f3e12"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri May 18 12:54:58 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 21:01:28 2012 +0300"
      },
      "message": "UBI: rename UBI_SCAN_UNKNOWN_EC\n\nRename the constant to UBI_UNKNOWN, for the same reason that we are going\nto add nother attaching method and re-use the same data structures, so the\n\"SCAN\" in the name becomes incorrect. I\u0027ve also removed the \"_EC\" part because\nJoel is going to use this constant for other fields in the attaching info data\nstructures.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "47e1ec70b2c57f39752ae3210d89a625768f3e12",
      "tree": "6416115fb9753c5e44c6fd8d5eb15b8e55339af3",
      "parents": [
        "41e0cd9d4eeff0895e66cad5c70a90ba41023ea3"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri May 18 12:41:17 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:04 2012 +0300"
      },
      "message": "UBI: move and rename attach_by_scanning\n\nRename the \u0027attach_by_scanning()\u0027 function to \u0027ubi_attach()\u0027 and move it to\nscan.c. Richard will plug his fastmap stuff there.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "41e0cd9d4eeff0895e66cad5c70a90ba41023ea3",
      "tree": "bee7cddd137ebe70ff58d2ac3c36135a4be61587",
      "parents": [
        "fbd0107f4d33be01c9fb2c630036bd66b7e3d4dc"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 21:05:33 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:04 2012 +0300"
      },
      "message": "UBI: rename _init_scan functions\n\nWe have a couple of initialization funcntionsn left which have \"_scan\" suffic -\nrename them:\n\nubi_eba_init_scan() -\u003e ubi_eba_init()\nubi_wl_init_scan() -\u003e ubi_wl_init()\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "fbd0107f4d33be01c9fb2c630036bd66b7e3d4dc",
      "tree": "d8ebd19a5cba548daea0c33f774ff7847b9cc523",
      "parents": [
        "1fc2e3e59d78999fc4be7349af769cf6621b9e61"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 16:12:26 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:04 2012 +0300"
      },
      "message": "UBI: amend comments after all the renamings\n\nThis patch amends commentaries in scan.[ch] to match the new logic. Reminder -\nwe did the restructuring to prepare the code for adding the fastmap. This patch\nalso renames a couple of functions - it was too difficult to separate out that\nchange and I decided that it is not too bad to have it in the same patch with\ncommentaries changes.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "1fc2e3e59d78999fc4be7349af769cf6621b9e61",
      "tree": "98f923f53587d71bbc35cbbb21e4c21e7db4cadd",
      "parents": [
        "0bae2887a725767bf00434fae18387818f8cc931"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:56:03 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:03 2012 +0300"
      },
      "message": "UBI: rename ubi_scan_leb_slab\n\nThe old name is not logical anymore - rename it to \u0027aeb_slab_cache\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "0bae2887a725767bf00434fae18387818f8cc931",
      "tree": "600a788b2e75ad74c3dec0c650d249fe3a90c929",
      "parents": [
        "66a2af3824d856684b9865f140998a134eb4c6d8"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:53:10 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:03 2012 +0300"
      },
      "message": "UBI: rename ubi_scan_move_to_list\n\nThe old name is not logical anymore - rename it to \u0027ubi_move_aeb_to_list()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "66a2af3824d856684b9865f140998a134eb4c6d8",
      "tree": "9cc410f80a9921a94222a0925da090794f6f7a53",
      "parents": [
        "c87fbd7deb08315314654de5360c102acc8716ee"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:41:12 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:03 2012 +0300"
      },
      "message": "UBI: rename ubi_scan_destroy_ai\n\nThe old name is not logical anymore - rename it to \u0027ubi_destroy_ai()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "c87fbd7deb08315314654de5360c102acc8716ee",
      "tree": "f1f541353b11b5ccadbab8ec2c59db7e03398c61",
      "parents": [
        "d717dc2f85f07f68d313ac4f8f9f460f1e17dee0"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:38:56 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:03 2012 +0300"
      },
      "message": "UBI: rename ubi_scan_get_free_peb\n\nThe old name is not logical anymore - rename it to \u0027ubi_early_get_peb()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "d717dc2f85f07f68d313ac4f8f9f460f1e17dee0",
      "tree": "c9797a46c3800b79a00106b7a4a3cad720c49452",
      "parents": [
        "dcd85fdd1040259f0053137f252321faec0a259f"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:36:39 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:03 2012 +0300"
      },
      "message": "UBI: rename ubi_scan_rm_volume\n\nThe old name is not logical anymore - rename it to \u0027ubi_remove_av()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "dcd85fdd1040259f0053137f252321faec0a259f",
      "tree": "31409c118426f741bf2681a0223b7f5336ff1bd1",
      "parents": [
        "3561188ac29580bdc0e8db3cf3c029b87cf2c6cd"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:33:20 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:03 2012 +0300"
      },
      "message": "UBI: rename ubi_scan_find_av\n\nThe old name is not logical anymore - rename it to \u0027ubi_find_av()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "3561188ac29580bdc0e8db3cf3c029b87cf2c6cd",
      "tree": "56bcd55d7cf3a07e7d334b2266a436f9641d66f5",
      "parents": [
        "ee663d929213c9f7e55c45229e9a01eeb8335b50"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:31:31 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:02 2012 +0300"
      },
      "message": "UBI: rename ubi_scan_add_used\n\nThe old name is not logical anymore - rename it to \u0027ubi_add_to_av()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "ee663d929213c9f7e55c45229e9a01eeb8335b50",
      "tree": "28608d9523b37b649dbce1e4e8b24649f2b1c1ba",
      "parents": [
        "13d33dad35c2a168d17cc993ea496b8eb9dd9624"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:24:58 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:02 2012 +0300"
      },
      "message": "UBI: remove unused function\n\nThe \u0027ubi_scan_find_aeb()\u0027 function is unused and thus can be removed.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "13d33dad35c2a168d17cc993ea496b8eb9dd9624",
      "tree": "b8d39f8539cb125ccea4b0f5244d9c00735a2b57",
      "parents": [
        "517af48c0540e61bbe0ebbb5f463afe937b73894"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 15:20:28 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:02 2012 +0300"
      },
      "message": "UBI: make ubi_scan_erase_peb static and rename\n\nThe \u0027ubi_scan_erase_peb()\u0027 is used only in scan.c so can be static. Also\nre-name it to \u0027early_erase_peb()\u0027 because we tend to use \"ubi_\" prefix only for\nnon-static fuction and also because the new name is better.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "517af48c0540e61bbe0ebbb5f463afe937b73894",
      "tree": "e97c38c582bf92682a254d6f5bc823c86d0572d5",
      "parents": [
        "a4e6042f1d073073f88e0ad6d2a7450da9a3937d"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Thu May 17 14:38:34 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:02 2012 +0300"
      },
      "message": "UBI: rename sv to av\n\nAfter re-naming the \u0027struct ubi_scan_volume\u0027 we should adjust all variables\nnamed \u0027sv\u0027 to something else, because \u0027sv\u0027 stands for \"scanning volume\".\nLet\u0027s rename it to \u0027av\u0027 which stands for \"attaching volume\" which is\na bit more consistent and has the same length, which makes re-naming easy.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "a4e6042f1d073073f88e0ad6d2a7450da9a3937d",
      "tree": "c9849fa560e49308275254ce65603c909566131b",
      "parents": [
        "2c5ec5ce66c0170829c5c128b9235429936442ac"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Thu May 17 13:09:08 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:02 2012 +0300"
      },
      "message": "UBI: rename si to ai\n\nAfter re-naming the \u0027struct ubi_scan_info\u0027 we should adjust all variables\nnamed \u0027si\u0027 to something else, because \u0027si\u0027 stands for \"scanning info\".\nLet\u0027s rename it to \u0027ai\u0027 which stands for \"attaching info\" which is\na bit more consistent and has the same length, which makes re-naming easy.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "2c5ec5ce66c0170829c5c128b9235429936442ac",
      "tree": "7010d8c62bcad3ce725096971cebdcd0289cd648",
      "parents": [
        "55e93e55aaa9c38e45767bf3c963d03082f28978"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Thu May 17 08:26:24 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:02 2012 +0300"
      },
      "message": "UBI: rename seb to aeb\n\nAfter re-naming the \u0027struct ubi_scan_leb\u0027 we should adjust all variables\nnamed \u0027seb\u0027 to something else, because \u0027seb\u0027 stands for \"scanning eraseblock\".\nLet\u0027s rename it to \u0027aeb\u0027 which stands for \"attaching eraseblock\" which is\na bit more consistend and has the same length.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "55e93e55aaa9c38e45767bf3c963d03082f28978",
      "tree": "6879414dae9b793ba5ed954ff0827174d440997c",
      "parents": [
        "afc15a814b9b5879ec361b76d45f68dc3b2cd4c1"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Thu May 17 08:06:01 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:01 2012 +0300"
      },
      "message": "UBI: amend comments after renaming in scan.c\n\nNow some commentaries are out-of-date, after we re-named the data\nstructures - amend them.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "afc15a814b9b5879ec361b76d45f68dc3b2cd4c1",
      "tree": "29b95910f86e0234f675d147e3f2aae2eb69831e",
      "parents": [
        "cb28a9322dd26cb6c29b7dda9a42626daca1024a"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Thu May 17 07:46:17 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:01 2012 +0300"
      },
      "message": "UBI: rename struct ubi_scan_info\n\nRename \u0027struct ubi_scan_info\u0027 to \u0027struct ubi_attach_info\u0027. This is part\nof the code re-structuring I am trying to do in order to add fastmap\nin a more logical way. Fastmap can share a lot with scanning, including\nthe attach-time data structures, which all now have \"scan\" word in the\nname. Let\u0027s get rid of this word.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "cb28a9322dd26cb6c29b7dda9a42626daca1024a",
      "tree": "b9c3bacd8573f4eabe5257feed32d250a9feaee1",
      "parents": [
        "227423d2416651abeafb5fd0c88c50eb0b99cb97"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Thu May 17 06:59:30 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:01 2012 +0300"
      },
      "message": "UBI: rename struct ubi_scan_volume\n\nRename \u0027struct ubi_scan_volume\u0027 to \u0027struct ubi_ainf_volume\u0027. This is part\nof the code re-structuring I am trying to do in order to add fastmap\nin a more logical way. Fastmap can share a lot with scanning, including\nthe attach-time data structures, which all now have \"scan\" word in the\nname. Let\u0027s get rid of this word and use \"ainf\" instead which stands\nfor \"attach information\". It has the same length as \"scan\" so re-naming\nis trivial.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "227423d2416651abeafb5fd0c88c50eb0b99cb97",
      "tree": "dd8ea55d4582573cfb3995b08f73e70f1adb8b19",
      "parents": [
        "97d6104bac24c30258748e200065559cd53b4b02"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Thu May 17 06:23:22 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:01 2012 +0300"
      },
      "message": "UBI: rename struct ubi_scan_leb\n\nRename \u0027struct ubi_scan_leb\u0027 to \u0027struct ubi_ainf_leb\u0027. This is part\nof the code re-structuring I am trying to do in order to add fastmap\nin a more logical way. Fastmap can share a lot with scanning, including\nthe attach-time data structures, which all now have \"scan\" word in the\nname. Let\u0027s get rid of this word and use \"ainf\" instead which stands\nfor \"attach information\". It has the same length as \"scan\" so re-naming\nis trivial.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "97d6104bac24c30258748e200065559cd53b4b02",
      "tree": "f9c9c4772f33bc469a040e2a034964dd580c5d10",
      "parents": [
        "e2986827d5d0759788d00f3759bcd46fc28f96c5"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 19:29:04 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:01 2012 +0300"
      },
      "message": "UBI: rename few functions for consistency\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "e2986827d5d0759788d00f3759bcd46fc28f96c5",
      "tree": "f1272cf940e80a0f3ee3e307341a2df0bbad6dbe",
      "parents": [
        "7bf523ae252d654f1fa85c5e8759f221afe1c593"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 18:39:56 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:00 2012 +0300"
      },
      "message": "UBI: get rid of dbg_err\n\nThis patch removes the \u0027dbg_err()\u0027 macro and we now use \u0027ubi_err\u0027 instead.\nThe idea of \u0027dbg_err()\u0027 was to compile out some error message to make the\nbinary a bit smaller - but I think it was a bad idea.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "7bf523ae252d654f1fa85c5e8759f221afe1c593",
      "tree": "a3e9f207d18d2f3295896fd8b89baff4f07511fe",
      "parents": [
        "8056eb4ac451cdf4723ba22471899d3d18a7dcbb"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 18:29:54 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:00 2012 +0300"
      },
      "message": "UBI: more of clean-up terminology for self-checks\n\nWe have the \"sefl-check\" feature in UBI, but for historical reasons many\ncorresponding functions and commentaries in the code use term \"paranoid check\"\ninstead. Let\u0027s clean this up and use \"self-check\" everywhere.\n\nThis patch renames functions, amends messages and kills several redundant\ndebugging messages.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "8056eb4ac451cdf4723ba22471899d3d18a7dcbb",
      "tree": "58f7b5ce5058b605e6e758efc8dfbbd1b6034aa3",
      "parents": [
        "aa44d1d35f3485e0acea0f22e41cb472d2c99858"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 18:24:09 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:00 2012 +0300"
      },
      "message": "UBI: clean-up terminology for self-checks in io.c\n\nWe have the \"sefl-check\" feature in UBI, but for historical reasons many\ncorresponding functions and commentaries in the code use term \"paranoid check\"\ninstead. Let\u0027s clean this up and use \"self-check\" everywhere.\n\nThis patch renames functions, amends comments and messages. It touches only the\nio.c file.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "aa44d1d35f3485e0acea0f22e41cb472d2c99858",
      "tree": "b066ebf877a3eba5cb154b4d78f8bad6c86c1cfd",
      "parents": [
        "718c00bb8fb00c68977f1076619cdfb050f92ba5"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 18:09:08 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:00 2012 +0300"
      },
      "message": "UBI: remove Kconfig debugging option\n\nThis patch kills the UBI debugging Kconfig option completely and makes all the\ndebugging stuff to be always compiled-in. It was pain in the neck to maintain\nthis useless option because all users I am aware of have debugging enabled\nanyway - how else will you diagnose errors otherwise?\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "718c00bb8fb00c68977f1076619cdfb050f92ba5",
      "tree": "347ce4cc78a94ba97367b1804422ebaf95718285",
      "parents": [
        "b989bd4c572ab700e8c67842c37abc7738641310"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 18:03:32 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:00 2012 +0300"
      },
      "message": "UBI: rename ubi_dbg_dump_mkvol_req\n\nI am going to remove the \"UBI debugging\" compilation option and make the\ndebugging stuff to be always compiled it. This patch is a preparation\nwhich renames \u0027ubi_dbg_dump_mkvol_req()\u0027 to \u0027ubi_dump_mkvol_req()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "b989bd4c572ab700e8c67842c37abc7738641310",
      "tree": "506a33d78b77a31ed7c37fabd19676fdef0ae092",
      "parents": [
        "614c74a75c60602f2a524c86650b576b14883fd5"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 18:01:58 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:26:00 2012 +0300"
      },
      "message": "UBI: rename ubi_dbg_dump_seb\n\nI am going to remove the \"UBI debugging\" compilation option and make the\ndebugging stuff to be always compiled it. This patch is a preparation\nwhich renames \u0027ubi_dbg_dump_seb()\u0027 to \u0027ubi_dump_seb()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "614c74a75c60602f2a524c86650b576b14883fd5",
      "tree": "2215482eb50c79816b181c0aba42884f754f401f",
      "parents": [
        "1f021e1de56f79cb4575b14f9ebf1ffb9dc9db0b"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 17:59:36 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:59 2012 +0300"
      },
      "message": "UBI: rename ubi_dbg_dump_sv\n\nI am going to remove the \"UBI debugging\" compilation option and make the\ndebugging stuff to be always compiled it. This patch is a preparation\nwhich renames \u0027ubi_dbg_dump_sv()\u0027 to \u0027ubi_dump_sv()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "1f021e1de56f79cb4575b14f9ebf1ffb9dc9db0b",
      "tree": "4a98c3c13c62a5705ae00058c9b50d6f749af98f",
      "parents": [
        "766381f049100db0763e1a930a7b9d16632aa49c"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 17:56:50 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:59 2012 +0300"
      },
      "message": "UBI: rename ubi_dbg_dump_vtbl_record\n\nI am going to remove the \"UBI debugging\" compilation option and make the\ndebugging stuff to be always compiled it. This patch is a preparation\nwhich renames \u0027ubi_dbg_dump_vtbl_record()\u0027 to \u0027ubi_dump_vtbl_record()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "766381f049100db0763e1a930a7b9d16632aa49c",
      "tree": "a60afdf37d931d7ed4d9d10fe376a8e3a0567722",
      "parents": [
        "4415626732defb5a4567a0a757c7c5baae7ca846"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed May 16 17:53:17 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:59 2012 +0300"
      },
      "message": "UBI: rename ubi_dbg_dump_vol_info\n\nI am going to remove the \"UBI debugging\" compilation option and make the\ndebugging stuff to be always compiled it. This patch is a preparation\nwhich renames \u0027ubi_dbg_dump_vol_info()\u0027 to \u0027ubi_dump_vol_info()\u0027.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "4415626732defb5a4567a0a757c7c5baae7ca846",
      "tree": "31b02e4a1882d243f5fbc8599dae8fac66d917fb",
      "parents": [
        "a65a0eb6d198e058687a9214683bd1c418f20d39"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Mon May 14 19:49:35 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:59 2012 +0300"
      },
      "message": "UBI: amend commentaries WRT dtype\n\nRichard removed the \"dtype\" hint, but few commentaries were left and this patch\nremoves them. I\u0027ve also added a better description about the \"dtype\" field in\nthe ubi-user.h for people who may ever wonder what was that dtype thing about.\n\nThis patch also adds an important note that it is better to use value \"3\" for\nthe \"dtype\" field.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "b36a261e8c0ab323d04db9cdd1f6bb4c273c4b32",
      "tree": "00c90c5fa556f335338f4f61c808d4dfe502bb74",
      "parents": [
        "0964f6a27b3574d9210c59ec883cbb3fff78a78d"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon May 14 17:55:51 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:59 2012 +0300"
      },
      "message": "UBI: Kill data type hint\n\nWe do not need this feature and to our shame it even was not working\nand there was a bug found very recently.\n\t-- Artem Bityutskiy\n\nWithout the data type hint UBI2 (fastmap) will be easier to implement.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "0964f6a27b3574d9210c59ec883cbb3fff78a78d",
      "tree": "9969060647aeb8c1c954700d690a8997ec10737c",
      "parents": [
        "f01e2d1654dc65792674b3fe5403dbfcce43f9d2"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Tue May 08 00:47:20 2012 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:58 2012 +0300"
      },
      "message": "UBI: remove superfluous \"!!\" operation\n\n!!(x \u003c y) and (x \u003c y) are identical expressions.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "f01e2d1654dc65792674b3fe5403dbfcce43f9d2",
      "tree": "6aa4a3bef6973f8c404992beb1a242bf7dc300e6",
      "parents": [
        "a904e3f1deb21b986b7789a830fa8f132ff3d406"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Apr 25 09:15:38 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:58 2012 +0300"
      },
      "message": "UBI: always warn if case of I/O errors\n\nCurrently UBI silently retries I/O operation in case of errors. This patch\nmakes it emit a warning before retrying. This should allow users notice issues\nearlier.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "a904e3f1deb21b986b7789a830fa8f132ff3d406",
      "tree": "6850b21416600cab1c28a9b531035e70a1132aca",
      "parents": [
        "ef7088e7f84ba550b276bc4a74f2732ee5618fb8"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Wed Apr 25 09:02:44 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:58 2012 +0300"
      },
      "message": "UBI: always dump VID and EC headers in case of errors\n\nUBI (and UBIFS) are a bit over-engineered WRT debugging. The idea was to\nlink as few as possible when debugging is disabled, but the downside is\nthat most people produce bug reports which are difficult to understand.\n\nAlways dump the VID and EC headers\u0027 contents in case of errors when it\nis helpful.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "ef7088e7f84ba550b276bc4a74f2732ee5618fb8",
      "tree": "d78e5c018a29241b05e14b946b9f29e008fa6042",
      "parents": [
        "25886a368d58edd9bb0f63d4417d2f73592b9dba"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Tue Apr 24 07:10:33 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:58 2012 +0300"
      },
      "message": "UBI: always dump flash contents in case of errors\n\nUBI (and UBIFS) are a bit over-engineered WRT debugging. The idea was to\nlink as few as possible when debugging is disabled, but the downside is\nthat most people produce bug reports which are difficult to understand.\n\nAlways dump the flash contents in case of errors, not only when debugging is\nenabled.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "25886a368d58edd9bb0f63d4417d2f73592b9dba",
      "tree": "1d520825e52db0ca220738ca0704f5318b3814c7",
      "parents": [
        "56b04e3e8b5cbf71c23a739f34f9a9437afa41fb"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@linux.intel.com",
        "time": "Tue Apr 24 06:59:49 2012 +0300"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Sun May 20 20:25:58 2012 +0300"
      },
      "message": "UBI: always dump the stack on error\n\nUBI (and UBIFS) are a bit over-engineered WRT debugging. The idea was to\nlink as few as possible when debugging is disabled, but the downside is\nthat most people produce bug reports which are difficult to understand.\n\nThis patch weeds out the \u0027ubi_dbg_dump_stack()\u0027 function and turns it\ninto \u0027dump_stack()\u0027 - it is always useful to have stack dump in case of\nan error.\n\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@linux.intel.com\u003e\n"
    },
    {
      "commit": "5d32c88f0b94061b3af2e3ade92422407282eb12",
      "tree": "2e1f81aa47b2cf59625c8fba17199617e33802e6",
      "parents": [
        "43f63c8711ce02226b7bbdafeba7b8031faf3fb4",
        "dac23b0d0513916498d40412818bd2c581b365f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:30:34 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge batch of fixes from Andrew Morton:\n \"The simple_open() cleanup was held back while I wanted for laggards to\n  merge things.\n\n  I still need to send a few checkpoint/restore patches.  I\u0027ve been\n  wobbly about merging them because I\u0027m wobbly about the overall\n  prospects for success of the project.  But after speaking with Pavel\n  at the LSF conference, it sounds like they\u0027re further toward\n  completion than I feared - apparently davem is at the \"has stopped\n  complaining\" stage regarding the net changes.  So I need to go back\n  and re-review those patchs and their (lengthy) discussion.\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (16 patches)\n  memcg swap: use mem_cgroup_uncharge_swap fix\n  backlight: add driver for DA9052/53 PMIC v1\n  C6X: use set_current_blocked() and block_sigmask()\n  MAINTAINERS: add entry for sparse checker\n  MAINTAINERS: fix REMOTEPROC F: typo\n  alpha: use set_current_blocked() and block_sigmask()\n  simple_open: automatically convert to simple_open()\n  scripts/coccinelle/api/simple_open.cocci: semantic patch for simple_open()\n  libfs: add simple_open()\n  hugetlbfs: remove unregister_filesystem() when initializing module\n  drivers/rtc/rtc-88pm860x.c: fix rtc irq enable callback\n  fs/xattr.c:setxattr(): improve handling of allocation failures\n  fs/xattr.c:listxattr(): fall back to vmalloc() if kmalloc() failed\n  fs/xattr.c: suppress page allocation failure warnings from sys_listxattr()\n  sysrq: use SEND_SIG_FORCED instead of force_sig()\n  proc: fix mount -t proc -o AAA\n"
    },
    {
      "commit": "234e340582901211f40d8c732afc49f0630ecf05",
      "tree": "753076500dfd883b3db56d4f5410af31d8945623",
      "parents": [
        "9b3ae64be658a573b33d05a8dc73b08d3345fa44"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Thu Apr 05 14:25:11 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 05 15:25:50 2012 -0700"
      },
      "message": "simple_open: automatically convert to simple_open()\n\nMany users of debugfs copy the implementation of default_open() when\nthey want to support a custom read/write function op.  This leads to a\nproliferation of the default_open() implementation across the entire\ntree.\n\nNow that the common implementation has been consolidated into libfs we\ncan replace all the users of this function with simple_open().\n\nThis replacement was done with the following semantic patch:\n\n\u003csmpl\u003e\n@ open @\nidentifier open_f !\u003d simple_open;\nidentifier i, f;\n@@\n-int open_f(struct inode *i, struct file *f)\n-{\n(\n-if (i-\u003ei_private)\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n|\n-f-\u003eprivate_data \u003d i-\u003ei_private;\n)\n-return 0;\n-}\n\n@ has_open depends on open @\nidentifier fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...\n-.open \u003d open_f,\n+.open \u003d simple_open,\n...\n};\n\u003c/smpl\u003e\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Julia Lawall \u003cJulia.Lawall@lip6.fr\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "623ff7739e7c00fa3d55dbfd42a492a68298fd7a",
      "tree": "0b7461753a1b13b27ea2958a7d48c6efb47bba54",
      "parents": [
        "c39e8ede284f469971589f2e04af78216e1a771d",
        "7b0e67f604e1829e5292e1ad7743eb18dc42ea7c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 17:31:56 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 30 17:31:56 2012 -0700"
      },
      "message": "Merge tag \u0027for-linus-3.4\u0027 of git://git.infradead.org/mtd-2.6\n\nPull MTD changes from David Woodhouse:\n - Artem\u0027s cleanup of the MTD API continues apace.\n - Fixes and improvements for ST FSMC and SuperH FLCTL NAND, amongst\n   others.\n - More work on DiskOnChip G3, new driver for DiskOnChip G4.\n - Clean up debug/warning printks in JFFS2 to use pr_\u003clevel\u003e.\n\nFix up various trivial conflicts, largely due to changes in calling\nconventions for things like dmaengine_prep_slave_sg() (new inline\nwrapper to hide new parameter, clashing with rewrite of previously last\nparameter that used to be an \u0027append\u0027 flag, and is now a bitmap of\n\u0027unsigned long flags\u0027).\n\n(Also some header file fallout - like so many merges this merge window -\nand silly conflicts with sparse fixes)\n\n* tag \u0027for-linus-3.4\u0027 of git://git.infradead.org/mtd-2.6: (120 commits)\n  mtd: docg3 add protection against concurrency\n  mtd: docg3 refactor cascade floors structure\n  mtd: docg3 increase write/erase timeout\n  mtd: docg3 fix inbound calculations\n  mtd: nand: gpmi: fix function annotations\n  mtd: phram: fix section mismatch for phram_setup\n  mtd: unify initialization of erase_info-\u003efail_addr\n  mtd: support ONFI multi lun NAND\n  mtd: sm_ftl: fix typo in major number.\n  mtd: add device-tree support to spear_smi\n  mtd: spear_smi: Remove default partition information from driver\n  mtd: Add device-tree support to fsmc_nand\n  mtd: fix section mismatch for doc_probe_device\n  mtd: nand/fsmc: Remove sparse warnings and errors\n  mtd: nand/fsmc: Add DMA support\n  mtd: nand/fsmc: Access the NAND device word by word whenever possible\n  mtd: nand/fsmc: Use dev_err to report error scenario\n  mtd: nand/fsmc: Use devm routines\n  mtd: nand/fsmc: Modify fsmc driver to accept nand timing parameters via platform\n  mtd: fsmc_nand: add pm callbacks to support hibernation\n  ...\n"
    },
    {
      "commit": "664addc248d2fed68d013d26ff2fc796d7134259",
      "tree": "197681f173c14068a8d634c9ab1c889fd02316cf",
      "parents": [
        "5def48982b778aaebe201f85af7170b7d0a6619f"
      ],
      "author": {
        "name": "Artem Bityutskiy",
        "email": "artem.bityutskiy@linux.intel.com",
        "time": "Fri Feb 03 18:13:23 2012 +0200"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Mar 27 00:29:11 2012 +0100"
      },
      "message": "mtd: remove R/O checking duplication\n\nMany drivers check whether the partition is R/O and return -EROFS if yes.\nLet\u0027s stop having duplicated checks and move them to the API functions\ninstead.\n\nAnd again a bit of noise - deleted few too sparse newlines, sorry.\n\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    }
  ],
  "next": "5def48982b778aaebe201f85af7170b7d0a6619f"
}
