{"push_id":660379186,"size":15,"distinct_size":15,"ref":"refs/heads/working2","head":"1b8dec6b1e3ce45fc7ecdea7218b0d98a6506cba","before":"bb66a396bbc3b78b9dc14844f10391acbe1b967f","commits":[{"sha":"3d71f88ad9dd436cf2cfdcd840702b81b45ccf36","author":{"email":"50cb9bee76fd6567c3233b8a89e4a594c545792f@gmail.com","name":"flar2"},"message":"Revert \"dm crypt: Make crypto work queue single-threaded\"\n\nThis reverts commit 1f6706007f6de860dcd582526831e7e9c9f8d502.","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/3d71f88ad9dd436cf2cfdcd840702b81b45ccf36"},{"sha":"4937379268fef7b83bd8d5af5881b19a1a5e6331","author":{"email":"50cb9bee76fd6567c3233b8a89e4a594c545792f@gmail.com","name":"flar2"},"message":"Revert \"Revert \"dm crypt: add loop aes iv generator\"\"\n\nThis reverts commit 0c1917ac99407a024f055008ae55afa334c256a2.","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/4937379268fef7b83bd8d5af5881b19a1a5e6331"},{"sha":"4df3f950e420eb3e5b4e41ce795abe3f1e31c49e","author":{"email":"50cb9bee76fd6567c3233b8a89e4a594c545792f@gmail.com","name":"flar2"},"message":"Revert \"Revert \"dm crypt: wipe keys string immediately after key is set\"\"\n\nThis reverts commit ca0b08bd6d222955ea8f4e69aec8e18f18a02402.","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/4df3f950e420eb3e5b4e41ce795abe3f1e31c49e"},{"sha":"a8e554d5893c6064f48466b09f865c83c09ae94e","author":{"email":"52f8f9962b7f38d8269c63c0859d68147c8d10f0@redhat.com","name":"Mikulas Patocka"},"message":"dm-crypt: remove per-cpu structure\n\nDm-crypt used per-cpu structures to hold pointers to ablkcipher_request.\nThe code assumed that the work item keeps executing on a single CPU, so it\nused no synchronization when accessing this structure.\n\nWhen we disable a CPU by writing zero to\n/sys/devices/system/cpu/cpu*/online, the work item could be moved to\nanother CPU. This causes crashes in dm-crypt because the code starts using\na wrong ablkcipher_request.\n\nThis patch fixes this bug by removing the percpu definition. The structure\nablkcipher_request is accessed via a pointer from convert_context.\nConsequently, if the work item is rescheduled to a different CPU, the\nthread still uses the same ablkcipher_request.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/a8e554d5893c6064f48466b09f865c83c09ae94e"},{"sha":"0996660372a3500a655d4f3555f97666223d07b9","author":{"email":"52f8f9962b7f38d8269c63c0859d68147c8d10f0@redhat.com","name":"Mikulas Patocka"},"message":"bio: use kmalloc alignment for bio slab\n\nVarious subsystems can ask the bio subsystem to create a bio slab cache\nwith some free space before the bio. This free space can be used for any\npurpose. Device mapper uses this feature to place some target-specific and\ndevice-mapper specific data before the bio, so that the target-specific\ndata doesn't have to be allocated separatedly.\n\nThis mechanism is used in place of kmalloc, so we need that the allocated\nslab have the same memory alignment as memory allocated with kmalloc.\n\nThis patch changes the function bio_find_or_create_slab so that it uses\nARCH_KMALLOC_MINALIGN alignment when creating the slab cache. This patch\nis needed so that dm-crypt can use per-bio data for encryption - the\ncrypto subsystem assumes that these data have the same alignment as\nkmallocated memory.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/0996660372a3500a655d4f3555f97666223d07b9"},{"sha":"e73d3c4c1bf6f82d6cde5d48c57f9f44e808b35f","author":{"email":"c208d1ecece4e5ef2e4fb72f0546c69cdce89063@gmail.com","name":"Paul Reioux"},"message":"dm-crypt: use per-bio data\n\nThis patch changes dm-crypt so that it uses auxiliary data allocated with\nthe bio.\n\nDm-crypt requires two allocations per request - struct dm_crypt_io and\nstruct ablkcipher_request (with other data appended to it). It used\nmempool for the allocation.\n\nSome requests may require more dm_crypt_ios and ablkcipher_requests,\nhowever most requests need just one of each of these two structures to\ncomplete.\n\nThis patch changes it so that the first dm_crypt_io and ablkcipher_request\nand allocated with the bio (using target per_bio_data_size option). If the\nrequest needs additional values, they are allocated from the mempool.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nbackported for Linux 3.10\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/e73d3c4c1bf6f82d6cde5d48c57f9f44e808b35f"},{"sha":"13ded21a3c32e5a4030f7c6b90101e7e9927de4f","author":{"email":"546b05909706652891a87f7bfe385ae147f61f91@kernel.org","name":"Tejun Heo"},"message":"dm: stop using WQ_NON_REENTRANT\n\ndbf2576e37 (\"workqueue: make all workqueues non-reentrant\") made\nWQ_NON_REENTRANT no-op and the flag is going away.  Remove its usages.\n\nThis patch doesn't introduce any behavior changes.\n\nSigned-off-by: Tejun Heo <tj@kernel.org>\nSigned-off-by: Mike Snitzer <snitzer@redhat.com>\nSigned-off-by: Alasdair G Kergon <agk@redhat.com>\nAcked-by: Joe Thornber <ejt@redhat.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/13ded21a3c32e5a4030f7c6b90101e7e9927de4f"},{"sha":"c9c8d222dafbbc70353316fd4010d3f8055d6bef","author":{"email":"52f8f9962b7f38d8269c63c0859d68147c8d10f0@redhat.com","name":"Mikulas Patocka"},"message":"dm-crypt: use unbound workqueue for request processing\n\nUse unbound workqueue so that work is automatically ballanced between\navailable CPUs.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/c9c8d222dafbbc70353316fd4010d3f8055d6bef"},{"sha":"3f073ba5dd29aafc96783b81cf5a79ad80bc1088","author":{"email":"c208d1ecece4e5ef2e4fb72f0546c69cdce89063@gmail.com","name":"Paul Reioux"},"message":"dm-crypt: don't allocate pages for a partial request.\n\nThis patch changes crypt_alloc_buffer so that it always allocates pages for\na full request.\n\nThis change enables further simplification and removing of one refcounts\nin the next patches.\n\nNote: the next patch is needed to fix a theoretical deadlock\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nbackported for Linux 3.10\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/3f073ba5dd29aafc96783b81cf5a79ad80bc1088"},{"sha":"1c801bf53755026fcb192fe19362e50746bae20d","author":{"email":"c208d1ecece4e5ef2e4fb72f0546c69cdce89063@gmail.com","name":"Paul Reioux"},"message":"dm-crypt: avoid deadlock in mempools\n\nThis patch fixes a theoretical deadlock introduced in the previous patch.\n\nThe function crypt_alloc_buffer may be called concurrently. If we allocate\nfrom the mempool concurrently, there is a possibility of deadlock.\nFor example, if we have mempool of 256 pages, two processes, each wanting 256,\npages allocate from the mempool concurrently, it may deadlock in a situation\nwhere both processes have allocated 128 pages and the mempool is exhausted.\n\nIn order to avoid this scenarios, we allocate the pages under a mutex.\n\nIn order to not degrade performance with excessive locking, we try\nnon-blocking allocations without a mutex first and if it fails, we fallback\nto a blocking allocation with a mutex.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nbackported for Linux 3.10\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/1c801bf53755026fcb192fe19362e50746bae20d"},{"sha":"7cf7d3663bb897090d578acb060f7d920db49b46","author":{"email":"52f8f9962b7f38d8269c63c0859d68147c8d10f0@redhat.com","name":"Mikulas Patocka"},"message":"dm-crypt: remove io_pool\n\nRemove io_pool and _crypt_io_pool because they are unused.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/7cf7d3663bb897090d578acb060f7d920db49b46"},{"sha":"3a39e74de0d70db44e36c69f54005903e395960d","author":{"email":"52f8f9962b7f38d8269c63c0859d68147c8d10f0@redhat.com","name":"Mikulas Patocka"},"message":"dm-crypt: offload writes to thread\n\nSubmitting write bios directly in the encryption thread caused serious\nperformance degradation. On multiprocessor machine encryption requests\nfinish in a different order than they were submitted in. Consequently, write\nrequests would be submitted in a different order and it could cause severe\nperformance degradation.\n\nThis patch moves submitting write requests to a separate thread so that\nthe requests can be sorted before submitting.\n\nSorting is implemented in the next patch.\n\nNote: it is required that a previous patch \"dm-crypt: don't allocate pages\nfor a partial request.\" is applied before applying this patch. Without\nthat, this patch could introduce a crash.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/3a39e74de0d70db44e36c69f54005903e395960d"},{"sha":"4893bcc8a0672c140f4110599e423cf9aad49ee7","author":{"email":"52f8f9962b7f38d8269c63c0859d68147c8d10f0@redhat.com","name":"Mikulas Patocka"},"message":"dm-crypt: sort writes\n\nWrite requests are sorted in a red-black tree structure and are submitted\nin the sorted order.\n\nIn theory the sorting should be performed by the underlying disk scheduler,\nhowever, in practice the disk scheduler accepts and sorts only 128 requests.\nIn order to sort more requests, we need to implement our own sorting.\n\nSigned-off-by: Mikulas Patocka <mpatocka@redhat.com>\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/4893bcc8a0672c140f4110599e423cf9aad49ee7"},{"sha":"53927d4b553ea958cbd0e2ff26d3fa8e9175a41c","author":{"email":"c208d1ecece4e5ef2e4fb72f0546c69cdce89063@gmail.com","name":"Paul Reioux"},"message":"dm-crypt.c: fix merge derp\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/53927d4b553ea958cbd0e2ff26d3fa8e9175a41c"},{"sha":"1b8dec6b1e3ce45fc7ecdea7218b0d98a6506cba","author":{"email":"c208d1ecece4e5ef2e4fb72f0546c69cdce89063@gmail.com","name":"Paul Reioux"},"message":"dm-crypt: use 2x number of write threads to saturate each cpus pipeline\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\n\nConflicts:\n\tdrivers/md/dm-crypt.c\nSigned-off-by: flar2 <asegaert@gmail.com>","distinct":true,"url":"https://api.github.com/repos/USBhost/FIRE-ICE/commits/1b8dec6b1e3ce45fc7ecdea7218b0d98a6506cba"}]}